Peter Nachtwey
Member
This is NOT right.
I doubt what you have will work for you.
If they only need to work for a year I would make sure they were worn out at the end of that time and get the loop update time short
That distorts the integrator and differentiator gains .
You can see the SLC5 PID does NOT function. One can see the output saturates in the wrong direction. I think there are overflow issues. It looks to me like the three PID terms added up to a number greater than 32767 so the PID treats the output as a negative number which it limits at 0. Clearly this is NOT right.
See the attached image. I used the HotRod.RSS simulation of the HotRod system with the loop update at 10 seconds with the RG bit off. The PID executes every tenth interrupt, but the simulator still executes every second. The simulator just uses the same CV for 10 seconds in a row which is what the real system would see. The gains are those I have posted before, Kc=10.09 Ti=2.65 and Td =.66. I have rounded those to 10.1 and 2.7 because the RG bit is off.
Kash, I would use my PID, but not as it is. I have not scaled it to work for 20 seconds. I need to make my PID more flexible to handle different loop update times. My PID has the advantage of using floating point so overflow, round off and other dynamic range issues are not a problem. Even so, 20 seconds is too coarse. Even with my PID, I still doubt it will work very well if at all.
kash75 said:As for SSR versus contactors, I realize SSR does a much better job, however I will not be able to change it until next year. For now I have to make what I have to work for me.
I doubt what you have will work for you.
kash75 said:
It has been recommended in order to prolong the life of the magnetic relays, the loop could be running at 10-20 Sec.
If they only need to work for a year I would make sure they were worn out at the end of that time and get the loop update time short
kash75 said:
I understand the max loop update is 10.23, here what I did to make a 20 seconds.
That distorts the integrator and differentiator gains .
You can see the SLC5 PID does NOT function. One can see the output saturates in the wrong direction. I think there are overflow issues. It looks to me like the three PID terms added up to a number greater than 32767 so the PID treats the output as a negative number which it limits at 0. Clearly this is NOT right.
See the attached image. I used the HotRod.RSS simulation of the HotRod system with the loop update at 10 seconds with the RG bit off. The PID executes every tenth interrupt, but the simulator still executes every second. The simulator just uses the same CV for 10 seconds in a row which is what the real system would see. The gains are those I have posted before, Kc=10.09 Ti=2.65 and Td =.66. I have rounded those to 10.1 and 2.7 because the RG bit is off.
Kash, I would use my PID, but not as it is. I have not scaled it to work for 20 seconds. I need to make my PID more flexible to handle different loop update times. My PID has the advantage of using floating point so overflow, round off and other dynamic range issues are not a problem. Even so, 20 seconds is too coarse. Even with my PID, I still doubt it will work very well if at all.