You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Calculation order is not correct. In the below rules set #PIDoutput and #PIDoutput2 should have the same result but they don't. I'm running firmware Alpha-d05c827 on HeishaMon large.
on System#Boot then
#RoomTempDelta = 2;
#PIDKp = 3;
#PIDKi = 0;
#PIDKd = 0;
#PIDpreverror = 0;
#PIDintegral = 0;
#PIDoutput = 0;
setTimer(1,10);
end
on test then
#RoomTempD = #RoomTempDelta * -1;
#PIDintegral = #PIDintegral + #RoomTempD;
#PIDoutput = #PIDKp * #RoomTempD + (#PIDKi * #PIDintegral) + (#PIDKd * (#RoomTempD - #PIDpreverror));
#PIDoutput2 = #PIDKp * #RoomTempD + #PIDKi * #PIDintegral + #PIDKd * (#RoomTempD - #PIDpreverror);
#PIDpreverror = #RoomTempD;
#RoomTempControl = round(#PIDoutput);
end
on timer=1 then
test();
end
You are building a PID controller for OT?! Can you use it to further reduce the hysteresis of the thermostat and bring the controlled variable ?roomTemp as the difference to ?roomTempSet to zero?
Fantastic. I'm really looking forward to your results 👍
Maybe a bit related to issue #557:
Calculation order is not correct. In the below rules set #PIDoutput and #PIDoutput2 should have the same result but they don't. I'm running firmware Alpha-d05c827 on HeishaMon large.
the result is:
The text was updated successfully, but these errors were encountered: