On Thu, 2011-02-03 at 13:09 -0600, Igor Chudov wrote: ... snip > Anyhow, how hard do you think is it for a C++ programmer to add a friction > compensation to EMC? Ergo, look at Andy's post from a while ago: > > http://www.mail-archive.com/emc-users@lists.sourceforge.net/msg22729.html > > It would appear that friction compensation (let me call it FFF for now) is > just one more term, something like > > > ... + FFF*<direction of rotation> + ... > > where <direction of rotation> is sign( C-M ) > > Am I making sense? > > i
Well you are way ahead of me on this, so I don't know if I can bring anything to the table. >From the link above and your comment above, the essence of the problem is to model the predicted input due to friction, then let the PID loop fix the result. If I recall correctly, your system produces a torque command, the friction is fairly constant across the velocity range, so the command should be a fixed torque value in the proper direction. When a motion command is given, you will get an instant dose of torque to break the friction, then the max acceleration, max velocity and PID corrections kick in over time. The friction torque will still be in effect until you reach your destination where it will instantly be removed. I would be tempted to write a simple .comp with an enable bit input, direction bit input, float input, float parameter torque value float output, The float input would be .hal connected to your current PID output. The component would add the friction torque constant to the input (from the PID) and send it to the output. The constant would be added or subtracted based on how your current configuration handles direction. Your current PID would need to to be retuned to cater to your joint dynamics but without friction. Or, I could be totally wrong. -- Kirk Wallace http://www.wallacecompany.com/machine_shop/ http://www.wallacecompany.com/E45/index.html California, USA ------------------------------------------------------------------------------ The modern datacenter depends on network connectivity to access resources and provide services. The best practices for maximizing a physical server's connectivity to a physical network are well understood - see how these rules translate into the virtual world? http://p.sf.net/sfu/oracle-sfdevnlfb _______________________________________________ Emc-users mailing list Emc-users@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/emc-users