Heater files
Dependents: LEX-Demo-Firmware-Logging LEX-Demo-Firmware-Logging
Diff: Heater.cpp
- Revision:
- 9:405e86b02d63
- Parent:
- 8:5da71ae16115
--- a/Heater.cpp Fri Jul 19 10:31:38 2019 +0000 +++ b/Heater.cpp Fri Jul 19 14:27:26 2019 +0000 @@ -17,7 +17,7 @@ -Heater::Heater(int i_port, int v_port, DigitalOut drive, float corr_grad, float corr_int, float R_ref) +Heater::Heater(int i_port, int v_port, PwmOut drive, float corr_grad, float corr_int, float R_ref) :R_ref(R_ref),i_port(i_port),v_port(v_port),drive(drive),corr_grad(corr_grad),corr_int(corr_int) {} float Heater::R_to_T(float R) {return R*corr_grad + corr_int;} @@ -63,12 +63,10 @@ while (timer.read_ms() < end_time) { read(); - if (R > R_ref) - { - drive = 0; - wait_ms(10); //Minimum duty cycle of 10% - } - + + drive.write(0.000000176*(R_ref - R)); + wait_ms(2); + } } @@ -102,6 +100,6 @@ float Heater::Get_R() {return R;} float Heater::Get_T() {return R_to_T(R);} -void Heater::turn_on () {drive = 1;} +void Heater::turn_on () {drive.write(0.1f);} void Heater::turn_off () {drive = 0;} \ No newline at end of file