Klipper: Konfiguration¶
Diese Seite beschreibt die Installation von Konfigurationsdateien und die Einrichtung von iDryer Unit in der Klipper-Umgebung. Die Controller-Firmware muss vorher installiert werden – siehe Abschnitt „Firmware".
Konfiguration: mcu oder second_mcu¶
iDryer Unit verbindet sich mit Klipper auf zwei Arten:
iDryer Unit funktioniert als primäres MCU auf einem separaten Host (z. B. Raspberry Pi nur für den Trockner). Konfigurationsabschnitt:
Installation von Konfigurationsdateien¶
1. Mit SSH zum Host verbinden¶
2. Zum Konfigurationsverzeichnis navigieren¶
Der Pfad kann unterschiedlich sein: ~/klipper_config/ oder ~/printer_data/config/ je nach Installationsversion. Überprüfen Sie, dass sich die Datei printer.cfg im Verzeichnis befindet.
3. Installationsskript laden und ausführen¶
Das Skript erstellt ein Verzeichnis mit den erforderlichen Konfigurationsdateien.
Manuelle Installation von Konfigurationsdateien¶
Wenn die Installation über das Skript nicht möglich ist, laden Sie das Projektarchiv von GitHub herunter und übertragen Sie die erforderlichen Konfigurationsdateien über die Fluidd- oder Mainsail-Oberfläche.
Projektarchiv von GitHub herunterladen
4. Konfiguration in printer.cfg einbinden¶
Fügen Sie eine Zeile am Anfang der Datei printer.cfg hinzu:
5. Serielle ID in iDryer.cfg angeben¶
Rufen Sie die Controller-ID ab:
Ersetzen Sie in der Datei iDryer.cfg in der Sektion [mcu iDryer] den Platzhalter durch die abgerufene ID:
6. Verbindung zusätzlicher Module (U2–U4)¶
Standardmäßig ist Modul U1 verbunden. Heben Sie die Kommentierung erforderlicher Zeilen in iDryer.cfg auf:
Hardware-Einrichtung¶
Heizelement¶
[heater_generic iDryer_U1_Heater]
heater_pin: H_U1
max_power: 1
sensor_type: NTC 100K MGB18-104F39050L32
sensor_pin: T_U1
control: pid
pwm_cycle_time: 0.3
min_temp: 0
max_temp: 120
pid_Kp: 32.923
pid_Ki: 5.628
pid_Kd: 48.150
Lüfter¶
[heater_fan Fan_U1]
fan_speed: 1
pin: FAN_U1
# bei Verwendung von second_mcu: pin: iDryer:FAN_U1
heater: iDryer_U1_Heater
heater_temp: 55
Temperatur- und Feuchtigkeitssensor¶
Das Beispiel verwendet SHT3X auf dem I2C-Bus:
[temperature_sensor iDryer_U1_Air]
i2c_mcu: iDryer
sensor_type: SHT3X
i2c_bus: i2c0f
i2c_address: 68 # 68 oder 69
Sensoren U1 und U2 sind an einem I2C-Bus angeschlossen, Sensoren U3 und U4 an einem anderen. Sensoradressen auf einem Bus müssen unterschiedlich sein: eine auf 68, die andere auf 69. Überprüfen Sie beim Verwenden eines anderen Sensors die Klipper-Dokumentation.
PID-Kalibrierung¶
Führen Sie die Kalibrierung bei geschlossenem Trocknerbauch durch:
- Öffnen Sie die Klipper-Konsole.
- Führen Sie den Befehl aus:
- Warten Sie auf Abschluss.
- Notieren Sie die erhaltenen Koeffizienten in
iDryer.cfg.
Konfiguration des Servoantriebs für die Klappe¶
1. Bestimmung der Extrempositionen¶
Der Servoanrieb wird durch ein PWM-Signal gesteuert. Verschiedene Servomodelle reagieren unterschiedlich auf die gleichen Werte – die Kalibrierung ist immer individuell.
Befestigen Sie die Klappe nicht am Gehäuse in dieser Phase – bestimmen Sie erst den Betriebsbereich.
Überprüfen Sie die Extrempositionen mit Befehlen in der Klipper-Konsole:
Wenn der Servoanrieb gegen das Gehäuse stößt – passen Sie den Bereich an.
2. Winkel in der Konfiguration speichern¶
Überprüfen Sie den Servoabschnitt in iDryer.cfg:
[servo srv_U1]
pin: SRV_U1
maximum_servo_angle: 180
minimum_pulse_width: 0.00055
maximum_pulse_width: 0.002
In der Datei iDryer.cfg im Makro DRY_U1 legen Sie die Winkel fest:
variable_servo_open_angle: 40 # Grad der offenen Position
variable_servo_closed_angle: 94 # Grad der geschlossenen Position
3. Stromversorgungskorrektur des Servoantriebs¶
Bei Verwendung mehrerer Servoanriebe sind Ausfälle möglich, da die USB-Port-Last des Hosts überschritten wird.
Option 1 – Widerstand in der Stromversorgung des Servos:
Installieren Sie einen Widerstand von 4–10 Ohm in der Stromversorgung des Servoantriebs. Auf Revision-3-Platinen sind Widerstände bereits gelötet, jedoch wird der genaue Widerstandswert individuell ausgewählt.
Option 2 – Aktiver USB-Hub:
Verbinden Sie den Controller über einen USB-Hub mit separater Stromversorgung – dies verhindert eine Überbelastung des Host-Ports.
Kommunikationsstabilitätsprobleme (Ausfälle, MCU-Neustarts) können durch elektromagnetische Störungen von Stromkabeln oder Lüfter verursacht werden. Lösungen – Ferritkern auf dem USB-Kabel und RC-Snubber parallel zum Lüfter. Siehe Abschnitt „Fehlerbehebung".
Konfiguration von delta_high¶
variable_delta_high verwaltet die Differenz zwischen der Heiztemperatur und der angestrebten Lufttemperatur.
Kalibrierverfahren:
- Stellen Sie den Startwert
variable_delta_high: 15ein. - Starten Sie das Heizen mit dem Makro
PA_U1. - Warten Sie, bis ein Plateau erreicht wird.
- Überprüfen Sie die Temperatur in der Kammer:
- Wenn in der Kammer 90 °C – der Wert ist geeignet.
- Wenn niedriger – erhöhen Sie
variable_delta_high. - Laufen lassen 30 Minuten, dann alle 30–60 Minuten überprüfen.
Wenn das Heizelement am Kunststoffgehäuse klebt – der Kunststoff hält die Temperatur nicht aus. Senken Sie variable_delta_high, drucken Sie das Gehäuse aus ABS oder ABS-CF neu, oder ändern Sie die Befestigungsmethode des Heizelements.
G-Code-Makros¶
Verwenden Sie vorkonfigurierte Makros, um die Trocknung nach Materialtyp zu steuern:
| Makro | Temperatur | Zeit |
|---|---|---|
PLA_U1 |
55 °C | 180 min |
PETG_U1 |
65 °C | 240 min |
ABS_U1 |
80 °C | 240 min |
PA_U1 |
90 °C | 240 min |
TPU_U1 |
60 °C | 300 min |
OFF_U1 |
aus | — |
Benutzerdefinierten Modus starten:
Klappe manuell öffnen/schließen:
Alternativer Steuerbetriebsalgorithmus – PyUnit¶
Projekt von einem Community-Mitglied @Xatang. Automatische Wartung von Trocknungs- und Lagerbedingungen mit konfigurierbaren Koeffizienten und aussagekräftigen Diagrammen.
