mgeerts
Computer
- Nov 10, 2009
- 34
I have a DC motor attached to the throttle of a continuously variable transmission fed by an engine that always runs at the same speed.
I measure the output speed and compare to the set speed. I use the difference as the error in a PID system that has an output of the PWM duty cycle going to the motor.
I have the system running fairly well but I find that I'm always below my setpoint because the throttle has a very light return-to-zero springiness to it.
How can I adjust my PID controller to account for this spring return? I would suspect that an increase "I" should do it.
Second question:
There is a bad hysteresis in this system. It seems that the amount of throttle required to get the machine to begin moving is high enough to get it to overshoot my setpoint horribly. This often causes wild fluctuations where this overshoot starts causing oscillation.
A high "I" value (the possible solution to the above problem) is going to make this problem even worse. As i ramp up the PID to get the machine to start it will be building up a large "I" and will continue to increase the throttle even as it is passing the setpoint!
Thanks,
Matt
I measure the output speed and compare to the set speed. I use the difference as the error in a PID system that has an output of the PWM duty cycle going to the motor.
I have the system running fairly well but I find that I'm always below my setpoint because the throttle has a very light return-to-zero springiness to it.
How can I adjust my PID controller to account for this spring return? I would suspect that an increase "I" should do it.
Second question:
There is a bad hysteresis in this system. It seems that the amount of throttle required to get the machine to begin moving is high enough to get it to overshoot my setpoint horribly. This often causes wild fluctuations where this overshoot starts causing oscillation.
A high "I" value (the possible solution to the above problem) is going to make this problem even worse. As i ramp up the PID to get the machine to start it will be building up a large "I" and will continue to increase the throttle even as it is passing the setpoint!
Thanks,
Matt