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

Reply via email to