Strona 1 z 1

Klipper i czujnik filamentu

: 11 kwie 2024, 15:24
autor: gwidon777
Witam.
Postawiłem Klippera Octoprint na przerobionym Sunlu S8 z płytką SKR V1.4 Turbo i RPi 3B+.
Działa całkiem nieźle ale mam niestety trochę problemów.
Podłączyłem czujnik końca filamentu - taki zwykły switch. Wpisałem konfigurację z dokumentacji:
https://www.klipper3d.org/Config_Refere ... tch_sensor

System poprawnie widzi czujnik i poprawnie raportuje kiedy użyję komendy:
QUERY_FILAMENT_SENSOR SENSOR=runout.

Dla testu ograniczyłem działanie czujnika do wysyłania komend tekstowych:

[filament_switch_sensor runout]

pause_on_runout: TRUE
runout_gcode:
{action_respond_info("RUNOUT: Filament runout")}
insert_gcode:
{action_respond_info("RUNOUT: Filament inserted")}
event_delay: 3.0
pause_delay: 1.0
switch_pin: ^!P1.26

Niestety system nie widzi kiedy zabraknie filamentu. Zupełny brak reakcji.
System widzi i reaguje kiedy włożę filament. W terminalu pojawia się:
Recv: // RUNOUT: Filament inserted
Ma ktoś jakiś pomysł dla czego nie działa wykrywanie końca filamentu?

Re: Klipper i czujnik filamentu

: 11 kwie 2024, 15:53
autor: arek
runout_gcode się wykona dopiero po zakończeniu "pauzy". Daj pause_on_runout: False

Re: Klipper i czujnik filamentu

: 11 kwie 2024, 16:27
autor: gwidon777
arek pisze: 11 kwie 2024, 15:53 runout_gcode się wykona dopiero po zakończeniu "pauzy". Daj pause_on_runout: False
Tego też próbowałem. Nie działa :(

Re: Klipper i czujnik filamentu

: 11 kwie 2024, 16:41
autor: arek
Dla pewności. Gdy filament się skończy wydruk leci dalej ale komenda QUERY_FILAMENT_SENSOR SENSOR=runout wtedy wykonana mówi, że filamentu brak wg sensora, zgadza się?

SET_FILAMENT_SENSOR SENSOR=runout ENABLE=1 nie wiem czy domyślnie jest on na starcie.

Re: Klipper i czujnik filamentu

: 11 kwie 2024, 18:30
autor: gwidon777
arek pisze: 11 kwie 2024, 16:41 Dla pewności. Gdy filament się skończy wydruk leci dalej ale komenda QUERY_FILAMENT_SENSOR SENSOR=runout wtedy wykonana mówi, że filamentu brak wg sensora, zgadza się?

SET_FILAMENT_SENSOR SENSOR=runout ENABLE=1 nie wiem czy domyślnie jest on na starcie.
Kiedy wyjąłem filament z czujnika w trakcie wydruku drukarka zaczynała wariować. Zacząłem więc testy "na sucho".

Wydaje mi się, że czujnik cały czas jest "włączony", ponieważ raportuje w terminalu pojawienie się filamentu. To czego nie widzę to momentu kiedy filamentu brakuje.
Czy powinienem testować ten czujnik wyłącznie podczas trwającego wydruku?

Re: Klipper i czujnik filamentu

: 11 kwie 2024, 23:29
autor: Rozarh
Podstawą działania czujnika filamentu w Klipper są makra PAUSE i RESUME.
"runout_gcode" i "insert_gcode" są opcjonalne i z reguły nie trzeba ich używać.

Po wykryciu braku filamentu Klipper odpala makro PAUSE (o ile masz ustawione pause_on_runout: True) - jeśli masz w nim jakąś kaszanę to "drukarka zaczynała wariować"
Po włożeniu filamentu do czujnika należy ręcznie odpalić makro RESUME.

Jeśli ustawisz pause_on_runout na False i nie zdefiniujesz runout_gcode to detekcja braku filamentu będzie zablokowana.

Definiując runout_gcode i insert_gcode podaje się komendy GCODE w kolejnych linijkach umieszczając na początku z nich tabulator (wcięcie). Można wpisać kilka linijek ale każda z nich musi się zaczynać od wcięcia. Pierwsza linijka bez wcięcia nie będzie już procesowana.
np:

Kod: Zaznacz cały

[filament_switch_sensor my_sensor]
pause_on_runout: False
runout_gcode:
  G91 ; relative coordinates
  G0 Z+20 F3000 ; lift up head 20mm
  G90 ; absolute coordinates
G0 X0 Y0 F5000 ; go to wait position
W tym makro głowica się tylko podniesie (o ile Klipper nie zgłosi błędu konfiguracji) ale już nie pojedzie do punktu (0,0). Dodatkowo makro PAUSE nie zostanie wykonane.

Re: Klipper i czujnik filamentu

: 15 kwie 2024, 17:09
autor: gwidon777
Dzięki za wyjaśnienie.
Teraz już działa.

Re: Klipper i czujnik filamentu

: 15 kwie 2024, 19:59
autor: arek
To może napisz co było nie tak, brak wcięć?

Re: Klipper i czujnik filamentu

: 15 kwie 2024, 23:23
autor: gwidon777
Dzięki wyjaśnieniu kolegi Rozarh zrozumiałem jak działa ta funkcja i wiedziałem na co zwrócić uwagę (powiązanie z Pause i Resume). To mi dużo dało.
Wcześniej pisałem, że testuję działanie "na sucho" to znaczyło że bez puszczania wydruku i tu był mój pierwszy błąd. U mnie wyciągnięcie filamentu z czujnika nie powoduje żadnej reakcji ze strony drukarki jeśli ta nie drukuje. Zacząłem więc puszczać wydruki i testować zachowanie co oczywiście zabrało dużo więcej czasu.
Dodatkowo trafiłem na stronę: https://ellis3dp.com/Print-Tuning-Guide ... ament.html
I ściągnąłem z niej gotowe makra Pause/Resume. Dostosowałem je do moich potrzeb i wszystko działa jak trzeba.

Re: Klipper i czujnik filamentu

: 15 kwie 2024, 23:38
autor: gwidon777
Teraz mam kłopot z tym, że czujnik filamentu załącza się bez potrzeby. FIlament jest a drukarka przestaje drukować. Nie wiem z czego to wynika. Może jakiś problem z kablem a może czujnik jest wadliwy. Czujnik zamocowany całkiem solidnie i nie rusza się.
Czy zwiększenie "event_delay: 3.0" może tu pomóc?
Chodzi o to, żeby program ignorował chwilowe sygnały czujnika i zareagował na sygnał z czujnika filamentu, który trwa powyżej zadanej wartości.

Re: Klipper i czujnik filamentu

: 15 kwie 2024, 23:54
autor: arek
Strzelam nieco na ślepo.

P1.26 to jeszcze może kolidować z diag (do sensorless homing). Nie mam SKR ale na Octopus tak jest - albo się konfiguruje pod diag albo pod inne potrzeby (zworką). Czy w SKR jest analogicznie...

Na szybko z googla: https://github.com/Klipper3d/klipper/issues/3555

Re: Klipper i czujnik filamentu

: 16 kwie 2024, 09:59
autor: gwidon777
arek pisze: 15 kwie 2024, 23:54 Strzelam nieco na ślepo.

P1.26 to jeszcze może kolidować z diag (do sensorless homing). Nie mam SKR ale na Octopus tak jest - albo się konfiguruje pod diag albo pod inne potrzeby (zworką). Czy w SKR jest analogicznie...

Na szybko z googla: https://github.com/Klipper3d/klipper/issues/3555
Teraz mam puszczony wydruk ale jestem prawie pewien, że poprawnie zamontowałem drivery. Mam TMC2209 i zgodnie z instrukcją pozaginałem piny DIAG. Nie powinny powodować zakłóceń. Z tego co pamiętam podczas konfiguracji Marlina na tej drukarce nie było problemu z tym czujnikiem. Podczas trwania obecnego wydruku często sprawdzam stan czujnika filamentu i zawsze jest "filament detected". Wygląda to jakby zakłócenia pojawiały się w losowych momentach ale raczej trwają bardzo krótko.

Re: Klipper i czujnik filamentu

: 16 kwie 2024, 10:38
autor: gwidon777
Myślę, że to wadliwy kabel albo jakiś problem z czujnikiem. Powymieniam i napiszę czy pomogło.

Re: Klipper i czujnik filamentu

: 17 kwie 2024, 22:29
autor: gwidon777
Wymieniłem kabel na nowy. Ciągle pojawia się problem ale dużo rzadziej (raz na kilka godzin drukowania). W kolejnym kroku wymienię czujnik.