add define for force values

master
Eggert Jung 4 years ago
parent 001d8da421
commit 08f9838b19

@ -8,6 +8,9 @@
taenzer_state_t taenzer_state; taenzer_state_t taenzer_state;
#define TAENZER KRAFT_SETPOINT 12000
#define TAENZER_KRAFT_HYST 2000
void do_taenzer(){ void do_taenzer(){
/* Homing */ /* Homing */
@ -23,7 +26,7 @@ void do_taenzer(){
/* Force regualtion */ /* Force regualtion */
if(kraftsensor_valid && taenzer_state.homed){ if(kraftsensor_valid && taenzer_state.homed){
int16_t err = abs(kraftsensor_value - 10000); int16_t err = abs(kraftsensor_value - TAENZER KRAFT_SETPOINT);
if(err > 8000) if(err > 8000)
err=8000; err=8000;
@ -31,11 +34,11 @@ void do_taenzer(){
ICR4 = 400000/err; ICR4 = 400000/err;
OCR4A = ICR4/2; OCR4A = ICR4/2;
if(kraftsensor_value < 19000){ if(kraftsensor_value < TAENZER KRAFT_SETPOINT - (TAENZER_KRAFT_HYST/2)){
set_Output(MOTOR_TAENZER_DIR, 0); // direction: down set_Output(MOTOR_TAENZER_DIR, 0); // direction: down
TCCR4B |= _BV(CS41); //TURN ON TCCR4B |= _BV(CS41); //TURN ON
} }
else if(kraftsensor_value > 20000){ else if(kraftsensor_value > TAENZER KRAFT_SETPOINT + (TAENZER_KRAFT_HYST/2)){
set_Output(MOTOR_TAENZER_DIR, 1); // direction: up set_Output(MOTOR_TAENZER_DIR, 1); // direction: up
TCCR4B |= _BV(CS41); //TURN ON TCCR4B |= _BV(CS41); //TURN ON
} }