From e938862cde3c4fcec0de5dad6cef8a44725ab36b Mon Sep 17 00:00:00 2001 From: Eggert Jung Date: Thu, 28 Jul 2022 18:31:55 +0200 Subject: [PATCH] fix bug where regulator locks on overflown integer --- taenzer.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/taenzer.c b/taenzer.c index c21d964..5c36adb 100644 --- a/taenzer.c +++ b/taenzer.c @@ -81,7 +81,7 @@ void do_taenzer(){ /* Force regualtion */ if(kraftsensor_valid && taenzer_state.active && taenzer_state.homed && taenzer_state.pos >= 0){ - int16_t err = (kraftsensor_value - taenzer_state.force_setpoint); + int32_t err = (kraftsensor_value - taenzer_state.force_setpoint); double pid_out = pid(®ler, err); int16_t out = (int16_t)pid_out;