Re: Druckbetttemperatur wird nicht erreicht
Verfasst: Mi 19. Jul 2017, 01:59
Tadaaaa
Das hatte mich nicht mehr losgelassen.
Um die Verwirrung hier nicht länger stehen zu lassen:
Bug 1:
https://github.com/repetier/Repetier-Fi ... 911e40R503
Die original Repetier hat das vor ca. 3 Jahren gepatcht.
In unserer Firmware ist das nicht drin. Darum kann es sein, dass beim RF2000 beim rechten Extruder, wenn der T1 noch nie ausgewählt wurde komplett ohne I-Anteil geregelt wird. Erst das Kommando T1 berechnet die Limits aus dem "Drive Max" und "Drive Min". Dann hat der zumindest etwas Einfluss.
Bisher: Wählt man entweder den jeweiligen Extruder irgendwann aus oder verändert man beliebig einen Wert im EEPROM wird das korrigiert. Aber wenn man den Drucker nur startet und eine Temperatur setzt klappts nicht.
Bug 2:
https://github.com/repetier/Repetier-Fi ... r.cpp#L674
Ich bin mir ziemlich sicher, dass man hier schreiben müsste:
Mit einem Minus. Denn bisher ist das Limit für den Einfluss des Integrators immer im positiven. Eine positives Temperatur-Offset kann soweit ich das mit meinen müden Augen nun verstehe nie abgebaut werden. Nur ein negatives. Überschwingen bedeutet also unter Umständen ein dauerhaftes Temperaturoffset und der Autotune ist darauf ausgelegt, mit leichtem Überschwingen zu arbeiten. (Ändert man Autotune auf eine konservative Variante ab, blieb die Temperatur wegen Bug 1 teilweise unterhalb der Zieltemperatur - völlig verwirrend.)
Mit dieser Änderung macht auch
- PID drive min: 40
- PID drive max: 40
absolut sinn, denn verrechnet wird es wörtlich gesprochen dann mit "Der Integrator-Anteil darf von -40 bis +40" einfließen, nur nicht mehr oder weniger.
Bisher hieß das: Der Integrator-Anteil darf nur 40 sein. Das macht aus dem Regler einen PD-Regler, aber eigentlich wurde der vom Auto-Tune auf einen PID ausgelegt.
Mal sehen ob ich mich irre. Ich habe bei Repetier ein Ticket aufgemacht. Meine Test hier sind äußerst vielversprechend LG
Das hatte mich nicht mehr losgelassen.
Um die Verwirrung hier nicht länger stehen zu lassen:
Bug 1:
https://github.com/repetier/Repetier-Fi ... 911e40R503
Die original Repetier hat das vor ca. 3 Jahren gepatcht.
In unserer Firmware ist das nicht drin. Darum kann es sein, dass beim RF2000 beim rechten Extruder, wenn der T1 noch nie ausgewählt wurde komplett ohne I-Anteil geregelt wird. Erst das Kommando T1 berechnet die Limits aus dem "Drive Max" und "Drive Min". Dann hat der zumindest etwas Einfluss.
Bisher: Wählt man entweder den jeweiligen Extruder irgendwann aus oder verändert man beliebig einen Wert im EEPROM wird das korrigiert. Aber wenn man den Drucker nur startet und eine Temperatur setzt klappts nicht.
Bug 2:
https://github.com/repetier/Repetier-Fi ... r.cpp#L674
Ich bin mir ziemlich sicher, dass man hier schreiben müsste:
Code: Alles auswählen
tempIStateLimitMin = (float)pidDriveMin * -10.0f / pidIGain;
Mit dieser Änderung macht auch
- PID drive min: 40
- PID drive max: 40
absolut sinn, denn verrechnet wird es wörtlich gesprochen dann mit "Der Integrator-Anteil darf von -40 bis +40" einfließen, nur nicht mehr oder weniger.
Bisher hieß das: Der Integrator-Anteil darf nur 40 sein. Das macht aus dem Regler einen PD-Regler, aber eigentlich wurde der vom Auto-Tune auf einen PID ausgelegt.
Mal sehen ob ich mich irre. Ich habe bei Repetier ein Ticket aufgemacht. Meine Test hier sind äußerst vielversprechend LG