On Thu, 1 Nov 2012, sam sokolik wrote:

> Date: Thu, 01 Nov 2012 11:15:34 -0500
> From: sam sokolik <sa...@empirescreen.com>
> Reply-To: EMC developers <emc-developers@lists.sourceforge.net>
> To: EMC developers <emc-developers@lists.sourceforge.net>
> Subject: Re: [Emc-developers] ferror calculation incorrect in motion
> 
> so - is the work around - tuning by pid error - then set the F-error
> accordingly? or better yet - monitor the pid error instead of the
> f-error (set it high) and have the pid error trigger the estop? (that
> would be hal doable I think)
>
> sam

Thats what I would do.

On a velocity mode servo and without much integral term the difference in 
tuning for minimum PID error vs the (bogus) ferror will not be much different
(in a pure P + FF1 loop you would probably never notice anything wrong as the 
ferror is nullable with FF1)

if you have tuning perfect relative to ferror your trajectory will be 
one sample (servo thread period) behind a system tuned perfectly to minimize 
the PID error.

Where this bug really causes problems is when you have a decent sized integral 
term so the integral part of the PID loop can track motion and null any PID 
error when slewing, therefore causing a large indicated ferror (that is 
basically impossible to tune out)




>
> On 11/1/2012 9:09 AM, Peter C. Wallace wrote:
>> On Thu, 1 Nov 2012, EBo wrote:
>>
>>> Date: Thu, 01 Nov 2012 09:47:30 -0400
>>> From: EBo <e...@sandien.com>
>>> Reply-To: EMC developers <emc-developers@lists.sourceforge.net>
>>> To: emc-developers@lists.sourceforge.net
>>> Subject: Re: [Emc-developers] ferror calculation incorrect in motion
>>>
>>> This is exactly why I asked for references so we could look at the
>>> mathematical definitions and either experiment with working machines or
>>> at least develop a simulation model which stress tests the various
>>> aspects of the two approaches.  I would rather a fully principled
>>> approach to this (including reviewing the math) than the current list
>>> thread direction.
>> This is really simple
>>
>> http://en.wikipedia.org/wiki/PID_controller
>>
>> Note that the first paragraph says:
>>
>> 'A PID controller calculates an "error" value as the difference between a
>> measured process variable and a desired setpoint. The controller attempts to
>> minimize the error by adjusting the process control inputs.'
>>
>> This is certainly my understanding (that the task of the PID controller
>> is to minimize its input error)
>>
>> The current situation is that the PID loop and ferror have different 
>> setpoints
>> but the same "process variable" so if you tune to minimize ferror you need to
>> force the PID loop to minimize something different than its input error. This
>> makes the integral term mostly unuseable (since the intergral term will force
>> the input error to 0 and generate a ferror proportional to
>> velocity*sampletime)
>>
>> 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
>> Emc-developers@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/emc-developers
>>
>>
>
>
> ------------------------------------------------------------------------------
> 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
> Emc-developers@lists.sourceforge.net
> 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
Emc-developers@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/emc-developers

Reply via email to