Program się nie wykonuje z powodu ustalenia wjazdu po łuku

Dyskusje dotyczące działania obsługi programu LinuxCNC

Autor tematu
lukasz89
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 245
Rejestracja: 20 lis 2015, 18:40
Lokalizacja: Tajpej

Program się nie wykonuje z powodu ustalenia wjazdu po łuku

#1

Post napisał: lukasz89 » 25 kwie 2024, 08:59

Dzień dobry. Temat dotyczy przecinarki plazmowej. Kiedy ustalam wjazdy na detal po łuku (arc), program się nie wykonuje tylko zwraca błąd i nie ma znaczenia ile elementów jest zamieszczonych w projekcie (jeden się wykona bez pojawienia się błędu). Wydaje mi się, że było podobnie jak nie zdefiniowałem typu wjazdu w ogóle - brak, program zwracał również błąd. Ścieżkę generuję w SheetCam.







drzasiek90
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1862
Rejestracja: 25 kwie 2016, 11:58
Lokalizacja: Jodlowa
Kontakt:

Re: Program się nie wykonuje z powodu ustalenia wjazdu po łuku

#2

Post napisał: drzasiek90 » 25 kwie 2024, 09:43

No ale przecież linuxCNC wyświetlił elegancko na czym polega błąd.
Cam ci generuje błędny kod, coś masz skopane w ustawieniach Cama lub sam program CAM ma jakiś błąd i błędnie generuje kod łuku, którego nie da się wykonać.

Awatar użytkownika

robal43
Specjalista poziom 3 (min. 600)
Specjalista poziom 3 (min. 600)
Posty w temacie: 1
Posty: 815
Rejestracja: 05 cze 2007, 11:49
Lokalizacja: Rzeszów
Kontakt:

Re: Program się nie wykonuje z powodu ustalenia wjazdu po łuku

#3

Post napisał: robal43 » 26 kwie 2024, 08:26

Dokładnie coś jest nie tak z postprocesorem !
Ewentualnie problem z kompensacją .. i błednie przelicza
Plotery plazmowe..
---CR Electronic
---Tormec (burny2.5)
---Stigal Dynamic
--- ajan plazma
Programy CAD/CAM :
-Lantek Expert
-Plazma 2 Vers. 2.40
-Wrykrys


Autor tematu
lukasz89
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 2
Posty: 245
Rejestracja: 20 lis 2015, 18:40
Lokalizacja: Tajpej

Re: Program się nie wykonuje z powodu ustalenia wjazdu po łuku

#4

Post napisał: lukasz89 » 27 kwie 2024, 23:12

Czy chodzi o szerokość szczeliny po cięciu ? W cam mam takie pole opisane jako rozmiar dyszy palnika, gdzie mogę wpisać szerokość ofsetu. Oczywiście sprawdzę też na innym postprocesorze.


drzasiek90
ELITA FORUM (min. 1000)
ELITA FORUM (min. 1000)
Posty w temacie: 2
Posty: 1862
Rejestracja: 25 kwie 2016, 11:58
Lokalizacja: Jodlowa
Kontakt:

Re: Program się nie wykonuje z powodu ustalenia wjazdu po łuku

#5

Post napisał: drzasiek90 » 28 kwie 2024, 07:09

Skoro bierzesz się za obsługę maszyny CNC, to podstawowe szczegóły o g-kodach wypadałoby przyswoić, bo nie bedziesz umiał sobie poradzić z prostymi błędami.

Wjeżdżasz po łuku, a łuk wykonywany jest kodem G2 lub G3.
Masz w opisie błędu dokładnie napisane co się nie zgadza.

Twój program cam błędnie wygenerował kod wjazdu po łuku i pozycja końcowa luku ma inną odległość od środka łuku niż pozyska początkowa, dlatego trgo luku wykonać się nie da.

Awatar użytkownika

tuxcnc
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 1
Posty: 8100
Rejestracja: 26 lut 2011, 23:24
Lokalizacja: mazowieckie

Re: Program się nie wykonuje z powodu ustalenia wjazdu po łuku

#6

Post napisał: tuxcnc » 28 kwie 2024, 08:26

To trzeba wytłumaczyć zupełnie inaczej.
Po pierwsze, są dwa sposoby zapisu G2/G3, z długością promienia (R) lub punktem zaczepienia promienia (IJK).
Matematycznie te zapisy są to równorzędne, ale w praktyce używa się tego, który w danej sytuacji jest łatwiejszy do zastosowania.
Tutaj mamy zapis z IJK więc dalej będziemy mówić tylko o tej wersji.
Linia kodu zawiera współrzędne punktu zaczepienia promienia i współrzędne końca łuku. Nie zawiera natomiast ani długości promienia, ani współrzędnych początku łuku. Promień da się obliczyć, a za punkt początku łuku przyjmuje się współrzędne końca poprzedniego ruchu.
Na przykład:

Kod: Zaznacz cały

G1 X0 Y0
G2 Y2 J1

Czyli z punktu X0,Y0 jedziemy do punktu X0,Y2 promieniem o długości 1 zaczepionym w punkcie X0,Y1.
Jak można zauważyć, niektóre parametry nie są podawane jawnie, bo w g-kodzie obowiązuje zasada, że wartości która w danej linii się nie zmienia nie trzeba podawać.
Teraz wróćmy do przedmiotowego błędu.
Podany wyżej kod wykona się bez problemu, bo wszystkie podane współrzędne zgadzają się ze sobą.
Teraz napiszmy kod z błędem:

Kod: Zaznacz cały

G1 X0 Y0
G2 Y3 J1

Czyli z punktu X0,Y0 jedziemy do punktu X0,Y3 promieniem o długości 1 zaczepionym w punkcie X0,Y1, co jest oczywiście niemożliwe, więc LinuxCNC wywali błąd:
Obrazek
I dokładnie z taką sytuacją spotkał się autor wątku.
Przyczyny mogą być różne, ale ponieważ program jest generowany przez CAM, oczywiste błędy rachunkowe bym odrzucił, jako mało prawdopodobne.
Raczej stawiam na to, że kod jest poprawny, ale zapisany w innym dialekcie niż używany przez LinuxCNC.
Zwykle takie cuda dzieją się kiedy współrzędne przyrostowe są interpretowane jako absolutne, albo na odwrót.
https://linuxcnc.org/docs/2.6/html/gcod ... 90_1-G91_1

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”