Hi, I am competing in the Formula Hybrid competition. We are building a hybrid, so we would like electronic control over our engine. The stock electronic throttle we purchased has a DC motor that turns the throttle body through a couple of gears. A potentiometer gives the error feedback signal to the JRK. The system was originally used with an ECU but we can’t use it,so we’re using the JRK. I have the system connected and working to a degree, but I have two issues. Both of which I believe are related to PID control. At this point I am testing everything with the USB interface connected, no real world signal has been fed to it.
First, I have tuned the system to work at a specific commanded position. The overshoot is low, settling time low, and it’s stabile. However, when i change to a different position, i lose stability. I played with the PID values for three hours, getting better results, but still ending up with regions of instability. I ended last night with values of 35/2^4 , 967/2^14 and 16/2^5. I don’t have access to the program right now, so i don’t remember if the second and third numbers are I or D.
Second, if I set position to 20%, and then set it to 60%, sometimes the motor position will change to maybe 30% even though the plots show desired position changing to 60%. It doesn’t even make an attempt to go higher. There is no overshoot while going to 30%, it just drives a small arbitrary amount above the previous command and stops. If I instead command 20%, press stop motor, and then command 60% everything will work as expected. I haven’t been able to pin down exactly when this occurs. Lets say I start with 10% first and then drive to 70%; those values may not cause the same problem, it may drive perfectly from 10 to 70. It’s more common for it to mess up than it is to drive properly though. I can try to get a screenshot of the plots when this occurs if that would be helpful. Essentially, sometimes when changing from one position to another, the motor will only drive a small amount and then stop despite the plot still showing a large error.
Hopefully some of that made sense. Any help on either issue would be greatly appreciated!
Thanks!