Node-red-contrib-pid delete I-contribution

Hi everyone,

I'm using the node-red-contrib-pid and that works quite well.

My heating system has long heat up times (20min to 2hr).
During the heating period, the I-contribution gets summed up and while reaching the setpoint the I-contribution is too high for the actual temperature and I get a large overshoot.

I worked with two pid controllers, one P-controller for the heating and one PI-controller for the stabilization period.
But as soon as the 2nd (PI) controller is switched on, the latest (random) I-contribution is still active and gets part of the control process and I get a large overshoot.

I tried different workarounds but it all comes down to the latest stored I-contribution in the pid-controller.
Is there a way to set and/or delete the active I-contribution?
Or is there another way of solving the problem?

Regards Jan

That should not happen if the loop is correctly tuned. There is a tuning guide linked from the node's page on the node red flows site. If you have not already worked through that then it is probably worth doing so.

Again, that should not be necessary if the loop is correctly tuned. Get rid of the second pid node, it will not be necessary.

If you believe that it is correctly tuned, but you still get the overshoot then show us a chart showing the output of the pid node and also the current temperature, during the startup and stabilisation. You may have to scale the power output so that it appears correctly on the chart.

If your heating system have long heat up time then I-time can be turned off by putting it to a very high value as you do not really need it for slow moving systems. So you only need your P controller pid and nothing else

node-red-contrib-pid has integral locking when the temperature is well away from the setpoint in order to prevent integral windup.

Without an appropriate I setting the process will take a very long time to settle exactly onto the setpoint.

If it is for room heating (which i assume) i think he is better off just using P-controller for simplicity. That is atleast what im doing, and that works very well.

P band around 3, and I-time to very high value. Initial integral at 0 of course.

Without tuning the loop correctly and seeing the result it is impossible to know what would be best in any particular case.

@ Colin, @ pandoras_node

Thanks for your advice. I tuned the PID controller already but at first, I try to do the PID tuning again and keep some records. It will take me a couple of days to do it.

Feel free to post the results as you go and I will offer advice.