Quote:
Originally Posted by AustinSchuh
Physics dictates that this is true.
Here are the differential equations governing a motor, if you ignore the effect of the inductance in the motor (a pretty good assumption for most things.) I'll stick with differential equations to make it easier to follow rather than using the laplace transform.
Code:
V - Km * d/dt theta = R I
Kt I = torque
Lets connect that motor to a rotating mass, with a moment of inertia of J for simplicity.
Code:
torque = J * d^2/dt^2 theta
Lets then connect it up to a P controller.
Code:
V = P * (goal - d/dt theta)
Plug that into the system of equations above, and simplify a bunch.
Code:
P * goal - R / Kt * J * d^2/dt^2 theta = d/dt theta * (P + Km)
At steady state, d^2/dt^2 theta = 0, so this simplifies to
Code:
goal * P / (P + Km) = d/dt theta
This says that you will only get to the goal if you crank the P constant up to infinity, which isn't practical. When you break the assumption that you are working in continuous time with a perfect system, it goes unstable. So, the loop is behaving exactly like I would expect it to.
A similar analysis can be used to show that you absolutely need the I term in order to get 0 steady state error. I can go through that math if it isn't clear. Treat the I term when doing a velocity loop as if it were the P term when you tune a position loop, and the P term as though it were the D term when tuning a position loop.
|
This is correct in a strictly academic sense physics prevents perfectly achieving the set point with just the P. The P loop should not get exactly to the goal and should be offset usually below the goal short of disturbance with a motor.
However, why such a huge error?
I mean if you've got people with 50% error is the feedback that far off the actual measurements?
At least our system (one CIM, one Jaguar, one gear box, one tire, encoder on the output) is sitting at 10-15% error (when suspended in the air) at least on one version of the Jaguar as long as we keep the P gain low enough to avoid instability and that's with I and D set to 0.
I wonder if they are tuning for speed under load on the ground. That would do it because the noise and disruptions would increase.