On Thu, 1 Nov 2012, andy pugh wrote:

> Date: Thu, 1 Nov 2012 11:23:09 +0000
> From: andy pugh <[email protected]>
> Reply-To: EMC developers <[email protected]>
> To: EMC developers <[email protected]>
> Subject: Re: [Emc-developers] ferror calculation incorrect in motion
> 
> On 1 November 2012 06:51, EBo <[email protected]> wrote:
>
>>
>> OK Now the question is should the ferror be calculated based on the
>> current encoder position, or the PID on the previous position?
>>
>
> The PID error has a well-defined meaning, and is the difference between the
> current command position and the current feedback position.
> This will, of necessity, be non zero during any active control. (Because if
> PID error is zero, PID output is zero).

Not quite true, imagine a well tuned velocity servo running at a high speed 
(with FF1 supplying most of the PID output and the integral term making up the 
rest) this PID loop will have a nearly 0 error between the command and 
feedback (thats its job! and consider that any integral term will force the 
error to 0 eventually during a long slew)

So here we have a well tuned PID loop doing what its asked (minimising the 
error it sees) but ferror is not calculated using the same command and 
feedback so will show a error proportional to velocity (its calculated from 
the current feedback but the previous commanded position)

This makes accurate tuning difficult as now the PID loop has to be tuned 
to minimize command-feedback-velocity*sampletime rather than just 
command - feedback. So now if you have any integral term so the PID error gets 
forced to zero: you now have a large ferror

>
> I am not sure that the current f-error calculation is wrong. There was a
> new command position. The system moved for a servo period. The f-error is
> how closely the new position matched the commanded position.
>
> PID-error looks forward, f-error looks backwards.

Thats fine but they both should look at

>
> I think the aim is to reduce F-error rather than PID error, because PID
> error is what makes PID output.
>
> -- 
> atp
> If you can't fix it, you don't own it.
> http://www.ifixit.com/Manifesto
> ------------------------------------------------------------------------------
> Everyone hates slow websites. So do we.
> Make your web apps faster with AppDynamics
> Download AppDynamics Lite for free today:
> http://p.sf.net/sfu/appdyn_sfd2d_oct
> _______________________________________________
> Emc-developers mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/emc-developers
>

Peter Wallace
Mesa Electronics

(\__/)
(='.'=) This is Bunny. Copy and paste bunny into your
(")_(") signature to help him gain world domination.


------------------------------------------------------------------------------
Everyone hates slow websites. So do we.
Make your web apps faster with AppDynamics
Download AppDynamics Lite for free today:
http://p.sf.net/sfu/appdyn_sfd2d_oct
_______________________________________________
Emc-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to