Quellcode durchsuchen

Fix a bug where the PID controllers D action kicks in hard as soon as the PID controller starts.

daid vor 11 Jahren
Ursprung
Commit
a504c88346
1 geänderte Dateien mit 1 neuen und 2 gelöschten Zeilen
  1. 1
    2
      Marlin/temperature.cpp

+ 1
- 2
Marlin/temperature.cpp Datei anzeigen

@@ -436,10 +436,9 @@ void manage_heater()
436 436
           //K1 defined in Configuration.h in the PID settings
437 437
           #define K2 (1.0-K1)
438 438
           dTerm[e] = (Kd * (pid_input - temp_dState[e]))*K2 + (K1 * dTerm[e]);
439
-          temp_dState[e] = pid_input;
440
-
441 439
           pid_output = constrain(pTerm[e] + iTerm[e] - dTerm[e], 0, PID_MAX);
442 440
         }
441
+        temp_dState[e] = pid_input;
443 442
     #else 
444 443
           pid_output = constrain(target_temperature[e], 0, PID_MAX);
445 444
     #endif //PID_OPENLOOP

Laden…
Abbrechen
Speichern