Peter C. Wallace wrote: > , and I > believe Pico systems is adding this feature as well. > Yes, our UPC board (PWM servo controller) has had the firmware support for this for several years. I finally found some time to bang my head around the driver software to use the timestamp info to perform the velocity estimation. It works quite well. A MAJOR problem I had in tuning small, low inertia motors was that the apparent velocity jumps due to the quantizing of encoder position resulted in a LOT of velocity noise at half the sampling frequency (SERVO_PERIOD) . This came through the PID's D term to make tuning very hard. Add a little more D and the noise pulses in the velocity became dominant and made the servos audibly noisy as well as mechanically rough. Feeding the estimated velocity derived with the time stamp data greatly smoothed this roughness. I can do a demo with the old way and the estimated velocity way, and the difference can be heard from yards away!
So far, I only have this implemented on the UPC, I hope to eventually get it on the USC and the PPMC as well. Those interfaces have a less pressing need for the improved velocity computation. Also, adding the readout of 8 additional bytes of data per four axes does increase CPU load from the driver code, so I made it an option that can be enabled on the loadrt command line. Jon ------------------------------------------------------------------------------ The ultimate all-in-one performance toolkit: Intel(R) Parallel Studio XE: Pinpoint memory and threading errors before they happen. Find and fix more than 250 security defects in the development cycle. Locate bottlenecks in serial and parallel code that limit performance. http://p.sf.net/sfu/intel-dev2devfeb _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users