Cura - modyfikacja G-code

Programy do przygotowywania modeli do druku – cięcia
Awatar użytkownika
maniolx
Postów w temacie: 9
Posty: 144
Rejestracja: 08 maja 2021, 11:06
Drukarka: Bambu Lab X1 Carbon
x 11

Cura - modyfikacja G-code

Post autor: maniolx »

Witam . Potrzebuję porady jak zmodyfikować G-code w silcerze Cura .
Obecnie mój końcowy G-code wygląda tak :
M400 ;
M220 S100 ;
M221 S100 ;
G91 ;
G1 F2400 E-3 ;
G0 F5000 Z20 ;
G90 ;
G0 X0 Y235 F5000 ;
M84 ;

Potrzebuję zrobić aby po wykonaniu ostatniej komendy z tej listy drukarka oczekiwała określony czas aby wykonać ostatnią komendę :
;@gpio vb on|off|toggle ( wyłączenie drukarki)
Próbowałem już różnych komend , lecz nie wychodzi .
Próbowałem dać komendę :
M1 S200
;@gpio vb on|off|toggle
Lecz wyłącza drukarkę przed końcem wydruku .
Awatar użytkownika
dragonn
Zasłużony
Postów w temacie: 2
Posty: 6384
Rejestracja: 12 gru 2016, 21:50
Lokalizacja: Opole
Drukarka: LUME
x 1455

Re: Cura - modyfikacja G-code

Post autor: dragonn »

czymkolwiek jest `;@gpio vb on|off|toggle` nie jest to g-code i nie jest wykonywane przez drukarkę.
Co Ty tam masz co ładuje g-code do drukarki?
Awatar użytkownika
maniolx
Postów w temacie: 9
Posty: 144
Rejestracja: 08 maja 2021, 11:06
Drukarka: Bambu Lab X1 Carbon
x 11

Re: Cura - modyfikacja G-code

Post autor: maniolx »

dragonn pisze:czymkolwiek jest `;@gpio vb on|off|toggle` nie jest to g-code i nie jest wykonywane przez drukarkę.
Co Ty tam masz co ładuje g-code do drukarki?
No tak przypuszczałem że będzie zainteresowanie `;@gpio vb on|off|toggle` a nie poleceniem wstrzymującym drukarkę :D
`;@gpio vb on|off|toggle` jest poleceniem Repetier-Server które siedzi zainstalowane w malince i która to za pomocą tego polecenia umieszczonego w g-codzie silcera przesła do malinki sygnał i zmienia stan określonego pinu który z kolei uruchamia przekaznik , który wyłącza drukarkę . Mógłbym umieścić te polecenie w silcerze bez zwłoki , lecz chcę aby hotend się schłodził zanim drukarka zostanie wyłączona .
Awatar użytkownika
dragonn
Zasłużony
Postów w temacie: 2
Posty: 6384
Rejestracja: 12 gru 2016, 21:50
Lokalizacja: Opole
Drukarka: LUME
x 1455

Re: Cura - modyfikacja G-code

Post autor: dragonn »

No i dlatego to nie zadziała, bo zwłoka jest wykonywana przez drukarkę a to polecenie przez repiter który po prostu nie czeka na to aż drukarka zakończony M1 S200, bo dla drukarki komendy zaczynające się od ; są ignorowane.
Awatar użytkownika
majek
Drukarz
Postów w temacie: 1
Posty: 783
Rejestracja: 28 gru 2020, 18:17
Drukarka: EZT-3D T1, vn-corexy
x 450

Re: Cura - modyfikacja G-code

Post autor: majek »

To może spróbuj dać przed końcem:

Kod: Zaznacz cały

M109 R60
M104 S0
Nie testowałem, ale M109 powinien poczekać aż hotend ochłodzi się do 60 stopni, M104 wyłączy grzałkę, a później już możesz wyłączać maszynę.
Awatar użytkownika
maniolx
Postów w temacie: 9
Posty: 144
Rejestracja: 08 maja 2021, 11:06
Drukarka: Bambu Lab X1 Carbon
x 11

Re: Cura - modyfikacja G-code

Post autor: maniolx »

majek pisze:To może spróbuj dać przed końcem:

Kod: Zaznacz cały

M109 R60
M104 S0
Nie testowałem, ale M109 powinien poczekać aż hotend ochłodzi się do 60 stopni, M104 wyłączy grzałkę, a później już możesz wyłączać maszynę.
Nie tak nie działa . Myślę że odpowiedz ostatnia Dragonna jest bliska prawdy . Ale może ktoś ma jakiś pomysł jak to obejść programowo . Bo można by dać jakiś przekaznik ze zwłoką , ale to nie to .
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 5
Posty: 8940
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5872
Kontakt:

Re: Cura - modyfikacja G-code

Post autor: dziobu »

Jeśli serwer czeka na wykonanie komend to spróbuj tak - w konfigu dodaj komendę

Kod: Zaznacz cały

<execute name="delay" allowParams="false">sleep 10s</execute>
a potem w skrypcie dorzuć

Kod: Zaznacz cały

;@execute delay

edit.
Ewentualnie możesz spróbować dodać na końcu:

Kod: Zaznacz cały

M400 ; tu marlin zrobi wszystko co miał dotychczas
G4 S10 ; właściwe czekanie
; a teraz zapychasz bufor żeby repetier-server też poczekał:
G4 P1
G4 P1
G4 P1
... (powtórzone np 10 czy 20 razy)
Awatar użytkownika
maniolx
Postów w temacie: 9
Posty: 144
Rejestracja: 08 maja 2021, 11:06
Drukarka: Bambu Lab X1 Carbon
x 11

Re: Cura - modyfikacja G-code

Post autor: maniolx »

dziobu pisze:Jeśli serwer czeka na wykonanie komend to spróbuj tak - w konfigu dodaj komendę

Kod: Zaznacz cały

<execute name="delay" allowParams="false">sleep 10s</execute>
a potem w skrypcie dorzuć

Kod: Zaznacz cały

;@execute delay

edit.
Ewentualnie możesz spróbować dodać na końcu:

Kod: Zaznacz cały

M400 ; tu marlin zrobi wszystko co miał dotychczas
G4 S10 ; właściwe czekanie
; a teraz zapychasz bufor żeby repetier-server też poczekał:
G4 P1
G4 P1
G4 P1
... (powtórzone np 10 czy 20 razy)
Za bardzo nie wiem gdzie w konfigu dodać tą komendę . W malince przez ssh ? Tu poniżej daję screny jak w Repetier-Server ustawia się te komendy , bo chyba nikt tu tego Repetier-Servera nie używa . Tylko tak dla orientacji jak to wygląda .
Załączniki
gpio1.jpg
gpio2.jpg
Awatar użytkownika
dziobu
Zasłużony
Postów w temacie: 5
Posty: 8940
Rejestracja: 28 gru 2016, 16:38
Drukarka: ZMorph 2.0(S)
x 5872
Kontakt:

Re: Cura - modyfikacja G-code

Post autor: dziobu »

Zgodnie z dokumentacją te polecenia dodajesz w pliku "extcommands.xml" i są niedostępne z interfejsu sieciowego.
Awatar użytkownika
maniolx
Postów w temacie: 9
Posty: 144
Rejestracja: 08 maja 2021, 11:06
Drukarka: Bambu Lab X1 Carbon
x 11

Re: Cura - modyfikacja G-code

Post autor: maniolx »

dziobu pisze:
edit.
Ewentualnie możesz spróbować dodać na końcu:

Kod: Zaznacz cały

M400 ; tu marlin zrobi wszystko co miał dotychczas
G4 S10 ; właściwe czekanie
; a teraz zapychasz bufor żeby repetier-server też poczekał:
G4 P1
G4 P1
G4 P1
... (powtórzone np 10 czy 20 razy)
Wypróbowałem ten twój łatwiejszy drugi sposób .
Jest o tyle lepiej że przy odpowiedniej ilości "G4 P1" drukarka kończy drukowanie i głowica parkuje .
Tzn . jeżeli umieściłem 3 po sobie komendy "G4 P1" to drukarka nie kończy drukowania i wyłącza się nad wydrukiem . Jak powtórzę 10 razy komendę " G4 P1 " to drukarka kończy drukowanie wysuwa stół , głowica parkuje i po ok 10 sekundach następuje wyłączenie drukarki . Powtarzanie tej komendy więcej razy nic już nie daje . Dałem ją max 100 razy i wyłączenie zawsze występowało w podobnym czasie .
ODPOWIEDZ

Wróć do „Slicery”