diff options
author | kliment <kliment.yanev@gmail.com> | 2011-07-26 14:16:20 -0700 |
---|---|---|
committer | kliment <kliment.yanev@gmail.com> | 2011-07-26 14:16:20 -0700 |
commit | b3280f5adcb0c968f5f2b1bf5a15d2d1dcc88f44 (patch) | |
tree | aad487f4d52ad0ea29cee92daac5916a899e74cb /Sprinter/Sprinter.pde | |
parent | 15c76d51bbb4fcd2f501670730f62721aaffc108 (diff) | |
parent | 0ca62c559670c0d9878b1ede081267d7142506a5 (diff) |
Merge pull request #62 from alexrj/heater-current-limit
Heater current limit
Diffstat (limited to 'Sprinter/Sprinter.pde')
-rw-r--r-- | Sprinter/Sprinter.pde | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/Sprinter/Sprinter.pde b/Sprinter/Sprinter.pde index 4b93c0e..c6932cf 100644 --- a/Sprinter/Sprinter.pde +++ b/Sprinter/Sprinter.pde @@ -126,6 +126,9 @@ int tt = 0, bt = 0; int temp_iState_min = 100 * -PID_INTEGRAL_DRIVE_MAX / PID_IGAIN; int temp_iState_max = 100 * PID_INTEGRAL_DRIVE_MAX / PID_IGAIN; #endif +#ifndef HEATER_CURRENT + #define HEATER_CURRENT 255 +#endif #ifdef SMOOTHING uint32_t nma = 0; #endif @@ -1444,7 +1447,7 @@ void manage_heater() iTerm = (PID_IGAIN * temp_iState) / 100; dTerm = (PID_DGAIN * (current_raw - temp_dState)) / 100; temp_dState = current_raw; - analogWrite(HEATER_0_PIN, constrain(pTerm + iTerm - dTerm, 0, PID_MAX)); + analogWrite(HEATER_0_PIN, constrain(pTerm + iTerm - dTerm, 0, HEATER_CURRENT)); #else if(current_raw >= target_raw) { @@ -1456,6 +1459,7 @@ void manage_heater() else { WRITE(HEATER_0_PIN,HIGH); + analogWrite(HEATER_0_PIN, HEATER_CURRENT); #if LED_PIN > -1 WRITE(LED_PIN,HIGH); #endif |