Browse Source

Change PID dummy value to NAN

Fixes #17078
Scott Lahteine 5 years ago
parent
commit
913de024a9
2 changed files with 8 additions and 10 deletions
  1. 5
    5
      Marlin/src/module/configuration_store.cpp
  2. 3
    5
      Marlin/src/module/temperature.h

+ 5
- 5
Marlin/src/module/configuration_store.cpp View File

851
       HOTEND_LOOP() {
851
       HOTEND_LOOP() {
852
         PIDCF_t pidcf = {
852
         PIDCF_t pidcf = {
853
           #if DISABLED(PIDTEMP)
853
           #if DISABLED(PIDTEMP)
854
-            DUMMY_PID_VALUE, DUMMY_PID_VALUE, DUMMY_PID_VALUE,
855
-            DUMMY_PID_VALUE, DUMMY_PID_VALUE
854
+            NAN, NAN, NAN,
855
+            NAN, NAN
856
           #else
856
           #else
857
                          PID_PARAM(Kp, e),
857
                          PID_PARAM(Kp, e),
858
             unscalePID_i(PID_PARAM(Ki, e)),
858
             unscalePID_i(PID_PARAM(Ki, e)),
881
 
881
 
882
       const PID_t bed_pid = {
882
       const PID_t bed_pid = {
883
         #if DISABLED(PIDTEMPBED)
883
         #if DISABLED(PIDTEMPBED)
884
-          DUMMY_PID_VALUE, DUMMY_PID_VALUE, DUMMY_PID_VALUE
884
+          NAN, NAN, NAN
885
         #else
885
         #else
886
           // Store the unscaled PID values
886
           // Store the unscaled PID values
887
           thermalManager.temp_bed.pid.Kp,
887
           thermalManager.temp_bed.pid.Kp,
1725
           PIDCF_t pidcf;
1725
           PIDCF_t pidcf;
1726
           EEPROM_READ(pidcf);
1726
           EEPROM_READ(pidcf);
1727
           #if ENABLED(PIDTEMP)
1727
           #if ENABLED(PIDTEMP)
1728
-            if (!validating && pidcf.Kp != DUMMY_PID_VALUE) {
1728
+            if (!validating && !isnan(pidcf.Kp)) {
1729
               // Scale PID values since EEPROM values are unscaled
1729
               // Scale PID values since EEPROM values are unscaled
1730
               PID_PARAM(Kp, e) = pidcf.Kp;
1730
               PID_PARAM(Kp, e) = pidcf.Kp;
1731
               PID_PARAM(Ki, e) = scalePID_i(pidcf.Ki);
1731
               PID_PARAM(Ki, e) = scalePID_i(pidcf.Ki);
1761
         PID_t pid;
1761
         PID_t pid;
1762
         EEPROM_READ(pid);
1762
         EEPROM_READ(pid);
1763
         #if ENABLED(PIDTEMPBED)
1763
         #if ENABLED(PIDTEMPBED)
1764
-          if (!validating && pid.Kp != DUMMY_PID_VALUE) {
1764
+          if (!validating && !isnan(pid.Kp)) {
1765
             // Scale PID values since EEPROM values are unscaled
1765
             // Scale PID values since EEPROM values are unscaled
1766
             thermalManager.temp_bed.pid.Kp = pid.Kp;
1766
             thermalManager.temp_bed.pid.Kp = pid.Kp;
1767
             thermalManager.temp_bed.pid.Ki = scalePID_i(pid.Ki);
1767
             thermalManager.temp_bed.pid.Ki = scalePID_i(pid.Ki);

+ 3
- 5
Marlin/src/module/temperature.h View File

74
   typedef IF<(LPQ_MAX_LEN > 255), uint16_t, uint8_t>::type lpq_ptr_t;
74
   typedef IF<(LPQ_MAX_LEN > 255), uint16_t, uint8_t>::type lpq_ptr_t;
75
 #endif
75
 #endif
76
 
76
 
77
-#define DUMMY_PID_VALUE 3000.0f
78
-
79
 #if ENABLED(PIDTEMP)
77
 #if ENABLED(PIDTEMP)
80
   #define _PID_Kp(H) Temperature::temp_hotend[H].pid.Kp
78
   #define _PID_Kp(H) Temperature::temp_hotend[H].pid.Kp
81
   #define _PID_Ki(H) Temperature::temp_hotend[H].pid.Ki
79
   #define _PID_Ki(H) Temperature::temp_hotend[H].pid.Ki
92
     #define _PID_Kf(H) 0
90
     #define _PID_Kf(H) 0
93
   #endif
91
   #endif
94
 #else
92
 #else
95
-  #define _PID_Kp(H) DUMMY_PID_VALUE
96
-  #define _PID_Ki(H) DUMMY_PID_VALUE
97
-  #define _PID_Kd(H) DUMMY_PID_VALUE
93
+  #define _PID_Kp(H) NAN
94
+  #define _PID_Ki(H) NAN
95
+  #define _PID_Kd(H) NAN
98
   #define _PID_Kc(H) 1
96
   #define _PID_Kc(H) 1
99
 #endif
97
 #endif
100
 
98
 

Loading…
Cancel
Save