fix bug where regulator locks on overflown integer
This commit is contained in:
@@ -81,7 +81,7 @@ void do_taenzer(){
|
|||||||
|
|
||||||
/* Force regualtion */
|
/* Force regualtion */
|
||||||
if(kraftsensor_valid && taenzer_state.active && taenzer_state.homed && taenzer_state.pos >= 0){
|
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);
|
double pid_out = pid(®ler, err);
|
||||||
int16_t out = (int16_t)pid_out;
|
int16_t out = (int16_t)pid_out;
|
||||||
|
|||||||
Reference in New Issue
Block a user