LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

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: 5
Posty: 242
Rejestracja: 20 lis 2015, 18:40
Lokalizacja: Tajpej

LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#1

Post napisał: lukasz89 » 31 gru 2022, 19:02

Witam. Nie mogę odświeżyć projektu, bo LinuxCNC sygnalizuje błąd o nazwie "w pobliżu linii 72 dwa kody G z tej samej grupy modalnej". Dzieje się to w sytuacji kiedy w oprogramowaniu SheetCAM zaznaczam pewne pole. Jest to opcja definiowania czasu (w sekundach) postoju załączonego palnika plazmowego po zakończeniu cięcia konturu danego detalu (Pauza w końcu cięcia). Bez względu na to jakie wycinam detale i w jakich ilościach nie chce to pójść z załączoną wyżej wymienioną funkcję. Szukam rozwiązania tego problemu. Proszę o jakiekolwiek sugestie. Pozdrawiam i życzę wszystkiego dobrego w Nowym Roku.



Awatar użytkownika

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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#2

Post napisał: tuxcnc » 31 gru 2022, 19:13

lukasz89 pisze:
31 gru 2022, 19:02
LinuxCNC sygnalizuje błąd o nazwie "w pobliżu linii 72 dwa kody G z tej samej grupy modalnej"
Jaja sobie robisz?
Na co liczysz? Że ktoś się domyśli co jest w twoim programie na twojej maszynie?
Sprawdź co masz "w pobliżu linii 72".
"dwa kody G z tej samej grupy modalnej" to przykładowo G0G1 w jednej linii, czyli coś czego wykonać się po prostu nie da, bo albo rybka albo pipka.
Jak już będziesz wiedział jaką bzdurę masz w g-kodzie, to będzie można poszukać przyczyny w postprocesorze, ale znowu w twoim postprocesorze na twoim komputerze i nikt tego z fusów nie wywróży.


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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#3

Post napisał: lukasz89 » 05 sty 2023, 10:46

Post miałbym już dzisiaj, ale kod przygotuję jak będę przy maszynie. Czy na Debianie 7 można wgrać najnowsze Wine 8.0 bez dostępu do internetu ? Czy jakąkolwiek inną wersję.

Awatar użytkownika

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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#4

Post napisał: tuxcnc » 05 sty 2023, 10:53

lukasz89 pisze:
05 sty 2023, 10:46
Czy na Debianie 7 można wgrać najnowsze
Zasadniczo nie.
Można używać tak jak jest dopóki komputer nie zdechnie ze starości, ale jak się chce mieć najnowsze oprogramowanie, to się trzeba przesiąść na najnowszy system i zapewne nowszy sprzęt.


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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#5

Post napisał: lukasz89 » 10 sty 2023, 08:54

W jakiej formie mogę wysłać postprocesor i kod programu ?

Awatar użytkownika

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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#6

Post napisał: tuxcnc » 10 sty 2023, 13:45

lukasz89 pisze:
10 sty 2023, 08:54
W jakiej formie mogę wysłać postprocesor i kod programu ?
Najpierw zobacz co jest "w pobliżu linii 72".
G-kod to jest zwykły plik tekstowy i daje się otworzyć w dowolnym edytorze tekstu, choć niektóre mogą strajkować z uwagi na nieznane rozszerzenie.
Z tą linią 72 też nie musi być dokładnie, ale nawet jeśli chodzi o inną, to faktycznie będzie "w pobliżu", czyli ewentualnie trzeba obejrzeć kilka linii wstecz i do przodu.
Jeżeli "dwa kody G ", to znaczy że w interesującej nas linii dwa razy wystąpi litera "g" lub "G" z jakimiś cyframi.
Jak znajdziesz tę linię, to po prostu wklej ją do posta.
Natomiast co do załączników do postów, to skrypt forum ogranicza je do plików z określonymi rozszerzeniami. Najprościej będzie jak je spakujesz w archiwum zip lub tar.


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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#7

Post napisał: lukasz89 » 14 sty 2023, 21:04

Dokładna treść błędu w LinuxCNC brzmi - " W pobliżu linii 72 w /home/xxxx/Pulpit/xxxx.ngc: Dwa kody G z tej samej grupy modalnej ".

W załączniku pliki z dwoma postrocesorami, których używamy i jeden ten sam program. Postprocesory różnią się bardzo nieznacznie, w jednym funkcja thc jest aktywowana - w drugim wyłączona, ale dla każdego jest problem z inną linią. Nie wiem czy ma to jakieś znaczenie, bo te liczby są w pobliżu siebie więc pewnie nie.
Załączniki
błąd w pobliżu linii 60 i 72.rar
(53.16 KiB) Pobrany 31 razy

Awatar użytkownika

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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#8

Post napisał: tuxcnc » 14 sty 2023, 21:37

lukasz89 pisze:
14 sty 2023, 21:04
W załączniku pliki z dwoma postrocesorami, których używamy i jeden ten sam program.
Jaja jak berety:

Kod: Zaznacz cały

N0710G04 P0.2 G04 P2
Numer linii można pominąć, wtedy uprości się do:

Kod: Zaznacz cały

G04 P0.2 G04 P2
Chyba nie trzeba tłumaczyć, że to nie ma prawa zadziałać, bo to jest właśnie wywołanie w jednej linii dwukrotnie tego samego polecenia i to jeszcze z różnymi parametrami.

Kiedy już wiemy co g-kodowi dolega, czas pogrzebać w postprocesorze.
Trzeba otworzyć go w edytorze tekstu i wyszukać frazę "G04"
Jest tego więcej, ale pokażę Ci tylko jeden fragment:

Kod: Zaznacz cały

function OnPenUp()
   if(tool > 99) then
      post.Text(" M09\n G04 P0.2")
   else
      post.Text (" M05\nG04 P0.2")
   end
   if (endDelay > 0) then
      post.Text (" G04 P")
      post.Number (endDelay,"0.###")
      post.Eol()
   end
end
Jest dokładnie tak jak podejrzewałem.
Interesują nas dwie linie:

Kod: Zaznacz cały

post.Text (" M05\nG04 P0.2")
oraz

Kod: Zaznacz cały

post.Text (" G04 P")
Pierwsza jest prawidłowa, druga spieprzona przez autora.
Kluczowa jest fraza "\n" która oznacza znak końca linii.
Po prostu łańcuch znaków występujący po \n będzie wpisany do następnej linii, a bez \n dopisany do bieżącej.
I to jest całe wytłumaczenie.
Jeżeli dopiszesz brakujące \n to instrukcje G04 wystąpią w kolejnych liniach, a nie w tej samej.


kamar
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 2
Posty: 16223
Rejestracja: 18 wrz 2010, 06:17
Lokalizacja: Kozienice
Kontakt:

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#9

Post napisał: kamar » 14 sty 2023, 21:39

Najczęściej błąd jest w poprzedniej linii. I tak masz.
W jednym w linii 59 masz dwa razy G04 a w drugim to samo w linii 71. Skasuj po tej jednej przerwie i powinno biegać.

Obrazek

Awatar użytkownika

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

Re: LinuxCNC sygnalizuje błąd przy pewnych ustawieniach w CAM

#10

Post napisał: tuxcnc » 15 sty 2023, 11:05

kamar pisze:
14 sty 2023, 21:39
Skasuj po tej jednej przerwie i powinno biegać.
Po pierwsze, nie po to autor dodaje przerwę żeby ją kasować.
Rozwiązaniem byłoby nie usuwanie czegokolwiek, ale dodanie znaku końca linii (klawisz <Enter>), tak żeby następujące po sobie kody G04 występowały w osobnych liniach.
Po drugie, autor oczekuje rozwiązania problemu, a nie jego ominięcia, więc edytować należy nie g-kod, tylko postprocesor i dodać w kilku miejscach ciąg znaków \n , co opisałem powyżej. Wtedy g-kod będzie generowany poprawnie i nie będzie go trzeba poprawiać za każdym razem.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”