Peter Nachtwey said:
Are you varying the update time as a function of line speed?
If so how? QUOTE]
I'm using a CPT to send (1/LineSpeedFPM)*60 to the PID.UPD
Does the PID.UPD change the interval at which the PID is running or just the value the PID uses to compute the true gains? Are you executing the PID at constant time periods or as a function of distance. You have not been clear about this and I don't like playing 20 questions. Is there any reason why you can't trigger the PID for every foot of travel?
The integrator term is
COi=Kc*T/Ti*(SP-PV) substituting 1/LineSpeedFPM*60 for T.
COi=Kc*(LineSpeedFPM*60*Ti)*(SP-PV)
As the speed gets slower you say you changing the update time. Is that the time T in the equation above? If so what you are doing IS NOT RIGHT. As the line speed slows down your equation shows that PID.UPD gets larger. This would cause T to get larger if I interpret what you are saying right. This would make the control output due to the integrator higher, not lower.
The PID should be executed as a function of distance and how fast that distance is changing.