Pisanie G-code pod LinuxCNC

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

Bolo0401
Czytelnik forum poziom 2 (min. 20)
Czytelnik forum poziom 2 (min. 20)
Posty w temacie: 2
Posty: 20
Rejestracja: 28 lut 2016, 11:48
Lokalizacja: Polska

#111

Post napisał: Bolo0401 » 24 sty 2017, 19:49

Dzięki za szybką odpowiedź, Gedit już zainstalowany :wink: Dla nowicjuszy takich jak ja dodam że jak zapisujecie coś to trzeba wpisać nazwę pliku i rozszerzenie. Np: Zapisz jako: test.ngc

Co prawda mam jeszcze problem z bazowaniem, ale to już chyba nie miejsce na to :wink: nie chce zaśmiecać forum.

jeszcze raz dzięki :wink:



Tagi:


krismos2
Czytelnik forum poziom 1 (min. 10)
Czytelnik forum poziom 1 (min. 10)
Posty w temacie: 1
Posty: 11
Rejestracja: 15 lut 2012, 18:27
Lokalizacja: Tryńcza

#112

Post napisał: krismos2 » 29 paź 2017, 16:08

Chcę przyłączyć się do podziękowań dla załżyciela tematu jak i wszystkim innym którzy dzielą sie swoją wiedzą z nami nowicjuszami. Dzisiaj w ciągu trzech godzin zainstalowałem LinuxCNC i sprawdziłem kilka przykładowych kodów podanych w tym temacie. Nie jest ten Linux taki straszny. Posiadam dwie chineczki w garażu na stanie i manualne kręcenie korbkami tokarki i frezarki juz mnie zmęczyło. Była to głowna motywacja do zapoznania się z G-codami i jak na piewszy raz jestem mile zaskoczony. Raz jeszcze wielkie dzięki za wszelkie wskazówki. Pozdrawiam!


achcnc
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 2
Posty: 2
Rejestracja: 22 lis 2014, 17:24
Lokalizacja: Warszawa

Re: Pisanie G-code pod LinuxCNC

#113

Post napisał: achcnc » 23 gru 2017, 00:03

Zakładając, że w końcu zmienię moją tokarkę DIY0820 (zwaną hobby 500 itp.) na CNC, to mam wcześniej pytanie. Jak ustawiać położenie czubka narzędzia? W osi X, gdyby nie ten przeszkadzacz w postaci konika, to bym na końcu łoża dojechał do czujnika w osi wrzeciona i miałbym pozycję X. Potem odrobinę w lewo (albo w prawo) i mam pozycję Z z prostopadłego czujnika (podłączone do sygnałów zwrotnych płyty sterującej). Z tego dostaję 0 czubka noża. I bym to wrzucił w program? Offsetem?
Ale mam konika.
Wracam do pozycji bazowej i toczę od wybranego offsetu (czy tak?). Toczę w stali nożem do toczenia zgrubnego. Dochodzę do "zmień narzędzie na nóż do toczenia wykańczającego". I co teraz z punktu widzenia G-code?
a) wykazując nadprzyrodzone zdolności umieszczam nowy nóż dokładnie tak samo, jak poprzednika
b) wrzucam procedurę wykrywania położenia (demontuję przy tym konika przez anihilację - żeby nie uszkodzić czujnika)
c) korzystam z czujnika laserowego zamocowanego na sztywno w przestrzeni i o dziwo działa
d) robię jak zwykle - dosuwam ręcznie do czegoś walcowatego, aż nie zacznie dotykać, zapamiętuję pozycję, odjeżdżam ręcznie, mierzę średnicę i odległość "czymś tam" i wprowadzam do programu jako parametry, punkt odniesienia się przesuwa (offset?) i jedziemy.
e) kończę stary program i zaczynam nowy program "wykańczak", starając się wcześniej wyzerować nóż identycznie jak poprzedni

Pytanie, jak to zrobić? A dokładniej jak to zrobić systemowo, standardowo, bo przez wklejenie wartości do przeliczenia jako zmienne w programie pewnie się da. Ewentualnie czy zmieniacie narzędzia w tokarce w programie G-code? Czy z uwagi na wskazany problem mam pod CNC wszystko od początku do końca toczyć jednym nożem, np. płytką VCMT?

Przykład:
Jeszcze bazowanie i offset. Mam pole robocze symulatora tokarki -100, 5 (x) i -200, 5 (z) (aczkolwiek powinno chyba być trochę inaczej, bo jak przejadę na drugą stronę osi X?) . Ustawiam offset X na 100 i mam parametry osi X od osi obrotu. "g0 x5" odsunie nóż o 5 mm od osi w stronę tokarza i na podglądzie mam parametr "Dia" 10, co jest tym, o co walczyliśmy. Teraz zmieniam nóż na taki 2mm dłuższy. Zmieniam offset na 98, czy tak? Wtedy rozjadą mi się wskazania na ekranie, ale toczyć będzie poprawnie. Tyle, że offsetu w czasie działania programu w trybie krokowym nie mogę zmienić ... Jeśli w stosunku do aktualnej pozycji poprzedniego noża, to zmieniam offset o -2. A jak od bazy, to 98 (baza na 0,0). Czy to jest zgodne ze sztuką?

Przykład 2

Wrzucam wirtualną stalkę do toczenia walca. Wirtualnie wystaje mi na 10mm od punktu "0" osi X w stronę osi obrotu wrzeciona. Tokarka ma pole robocze -110,5 i -200, 5 . Ładuję symulator tokarki.
I teraz co jakimi parametrami mam ustawić, żeby było dobrze i wygodnie. Jak zbazuję na 0,0 i dam offset X 100, gdzie oś obrotu wrzeciona mam na -10, to jest to ustawienie do "0" noża wzorcowego. Mogę dać offset "100 - wystawanie_noża" i będzie dobrze, ale czy tak właśnie się powinno robić?

Jak wygląda sekwencja przygotowania do uruchomienia G-code?
1. mocuję wałek
2. nawiercam nawiertakiem
3. podpieram kłem
4. Wałek zaczyna się mniej więcej na Z-37
5. Zakładam nóż.

Jeśli wałek ma 40 mm średnicy, a chcę przetoczyć na 38mm na długości 150mm, to sam G-code to trywiał, ale jak zadaję parametry startowe noża w tym wypadku? Musiałem go obmierzyć wcześniej? Toczę płytko, mierzę i wprowadzam poprawkę dla noża, licząc na palcach? Jako Offset X? Początek wałka na Z też jako offset? Kamar wspominał o przycisku. Jak w tym wypadku można go użyć? Tylko do offsetu osi Z?


Czy też trzeba polubić parametryzowanie całego kodu aktualnie zmierzonym przesunięciem geometrii narzędzia?

Awatar użytkownika

adam Fx
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5562
Rejestracja: 04 lip 2004, 16:03
Lokalizacja: Gliwice

Re: Pisanie G-code pod LinuxCNC

#114

Post napisał: adam Fx » 23 gru 2017, 14:30

Tylko rzuciłem okiem wiec jak coś źle rozumie to sory ...
achcnc pisze:oczę w stali nożem do toczenia zgrubnego. Dochodzę do "zmień narzędzie na nóż do toczenia wykańczającego". I co teraz z punktu widzenia G-code?
a) wykazując nadprzyrodzone zdolności umieszczam nowy nóż dokładnie tak samo, jak poprzednika


wnioskuje że nie planujesz korzystać nawet z najprostszego magazynu narzędzi np.

więc pozostaje faktycznie albo ustawiać każdy nowy nóż albo użyć imaka szybko zmiennego lub dorobić sobie precyzyjnie mocowanie imaki z innymi nożami np. https://youtu.be/qjzwLRgInuM?t=25m57s

potem korzystasz z tabeli narzędzi wiec jak wymienisz nóż z 1 na 2 to przywołujesz jego korektory z tabeli a maszyna sam przelicza pozycje względem offsetu.
achcnc pisze:Jeśli wałek ma 40 mm średnicy, a chcę przetoczyć na 38mm na długości 150mm, to sam G-code to trywiał, ale jak zadaję parametry startowe noża w tym wypadku? Musiałem go obmierzyć wcześniej? Toczę płytko, mierzę i wprowadzam poprawkę dla noża, licząc na palcach? Jako Offset X? Początek wałka na Z też jako offset? Kamar wspominał o przycisku. Jak w tym wypadku można go użyć? Tylko do offsetu osi Z?


jak maż nóż już zmierzony i wprowadzony w tabeli to tylko zakładasz i toczysz. Jak masz nie zmierzony to faktycznie
achcnc pisze:Toczę płytko, mierzę i wprowadzam poprawkę dla noża, licząc na palcach? Jako Offset X?
ale nie jako offset tylko korektę robisz w tablicy narzędzi (tzn. na upartego dla jednego narzędzi można zmienić na offsecie ale prawidłowo to jednak w tabeli)

Dodane 3 minuty 27 sekundy:
aha masz też problem z umiejscowieniem sądy narzędziowej .... fabrycznie robi się to tak
sorki za wszystkie błędy ... (dyslektyk) :?
Zobacz moje filmy http://www.youtube.com/user/pokachontass/videos


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

Re: Pisanie G-code pod LinuxCNC

#115

Post napisał: kamar » 23 gru 2017, 17:02

achcnc pisze:
23 gru 2017, 00:03
Toczę płytko, mierzę i wprowadzam poprawkę dla noża, licząc na palcach? Jako Offset X? Początek wałka na Z też jako offset? Kamar wspominał o przycisku. Jak w tym wypadku można go użyć? Tylko do offsetu osi Z?
Czy też trzeba polubić parametryzowanie całego kodu aktualnie zmierzonym przesunięciem geometrii narzędzia?
Jedyna nadzieja, ze jak zrobisz tokarkę to będzie prościej :)
Na symulatorze ciężko jest zmierzyć zatoczone :)
A to wszystko jest banalnie proste. Oś X ma "0" w osi obrotu zataczasz dowolnym nożem odrobinę, mierzysz średnicę i wpisujesz zmierzoną bez przeliczania na palcach (dwa w pamięci :) ) Oś "Z" zerujesz na początku wałka i toczysz te swoje 150.
Jak już masz 38.2 zmiana noża, kontakt, wpisujesz 38.2 i toczysz na 38. Wypełnianie tabeli narzędzi ma sens jak masz precyzyjne mocowanie lub automatyczną zmianę.


achcnc
Nowy użytkownik, używaj wyszukiwarki
Nowy użytkownik, używaj wyszukiwarki
Posty w temacie: 2
Posty: 2
Rejestracja: 22 lis 2014, 17:24
Lokalizacja: Warszawa

Re: Pisanie G-code pod LinuxCNC

#116

Post napisał: achcnc » 25 gru 2017, 20:31

Nie mogę się opanować ;-)
Toczę na kle. Program dochodzi do zmiany narzędzia. Odsuwam kieł , zdejmuję wałek, mocuję czujnik, mocuję ręcznie nóż, zeruję, odsuwam czujnik, zakładam wałek, dosuwam kieł ... Tylko o co chodziło temu gościowi, który coś wspominał o jakimś jednym uchwycie, chyba majaczył ... I kto by tam się tą osią Z przejmował ...

Czyli podsumowując, jak nie mam precyzyjnego imaka szybkozmiennego, to każde wkręcenie noża jest zasadniczo nowym nożem, który muszę skalibrować. Generanie nie bardzo mam na czym ani jak, bo program mi stoi na zmianie narzędzia i jak na razie to w czasie działania G-codu ręczne sterowanie w celu wyzerowania nie bardzo widzę. Ale może się mylę. Stąd było moje pytanie, czy w takim wypadku dzielić program na dwa, a "pomiędzy" pobawić się w kalibrowanie nowego noża, czy też da się to zrobic "pośrodku"?

Zszedłem do tokarki i widzę, że nóż dochodzi do 1/3 uchwytu (od skrzyni przekładniowej patrząc).
Mając jakieś tam sterowanie osią obrotu wrzeciona (encoder + falownik/inverter/pwm - aczkolwiek zakładam na razie tylko encoder i obrót ręką) mogę ustawić wrzeciono tak, że nóż ma do dyspozycji boczną powierzchnię do zerowania X i czołową powierzchnię do zerowania Z.

LinuxCNC z G-code umożliwia automatyczne zerowanie (akurat widziałem dla zerowania frezu we frezarce na pinach zwrotnych sterownika poprzez zwieranie, aczkolwiek na czujniku wychyłu będzie dokładniej), ale pewnie musiałbym podłożyć przed pomiarem płytki stykowe, izolowane od uchwytu, które po dotknięciu narzędziem zamykają obwód. Albo opuszczane ramię z czujnikiem odchylenia dwukierunkowym, jak na filmie "adam Fx". Nie wiem, jak przepuszczają prąd spieki ceramiczne, stąd czujnik wychyłowy. Nie wiem czy czujnik "Czujnik wysokości/długości narzędzia Mach3 CNC" się nada, ale płytka pomiarowa na magnesie neodymowym, przykładana na czas pomiaru bardziej mi się podoba. ALE jak nie styk nie styknie, to coś się musi ugiąć, i chciałbym zdobyć czujnik z czujnikiem właściwym i awaryjnym wyłącznikiem - po zbyt głębokim wjechaniu w czujnik. Jeden dopasowany do krzywizny walca uchwytu, a drugi płaski. Chyba muszę sobie zrobić ...
Obrazek Obrazek

Problem jest jeden - jest to poza zakresem bezpiecznym ruchu (bezkolizyjnym z wrzecionem), definiowanym jako prostokąt. Jest na to jakieś rozwiązanie w LinuxCNC? Specjalny zakres do zerowania? Już to widzę: Jedna definicja tokarki do zerowania, druga do toczenia i taki hip-hop. W sumie jest to nawet jakieś rozwiązanie dla amatorskiego wytoczenia czegoś raz na miesiąc ... o ile działa.

A jeśli chodzi o kod typu "G38.2 Xcoś F25", to nie mam jak sprawdzić na symulatorze ... Po ustawieniu w pozycji max od osi i jak najbliżej skrzyni, nóż ma się posuwać do czujnika i ustawić aktualną odległość końca narzędzia od osi obrotu. Analogicznie Z. Zgodnie z dokumentacją LinuxCNC działa, przykład trochę innego użycia w katalogu examples/smartprobe.ngc ("skaner 3D"). Jeszce nie wiem, co znaczą te "506x" ...

Kod: Zaznacz cały

G38.2Z#8
(LOG,G1 X#5061 Y#5062 Z#5063) 
ale się dowiem.
Czy ktoś tak robi, czy wydziwiam? Gdybe te zmienne (wartości) dało się wpisywać dynamicznie we właściwości narzedzia, to nie trzeba parametryzować kodu różnicą w długości narzędzi.

I jeszcze te wredne noże do toczenia z lewa na prawo, albo z czubkiem gdzieś w centrum. Zeruję na kwadrat i poprawka zmierzona ręcznie, wbita w definicję noża (np. płytka okrągła - połowa średnicy to przesunięcie zera na stałe wbite)?


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

Re: Pisanie G-code pod LinuxCNC

#117

Post napisał: kamar » 25 gru 2017, 20:53

achcnc pisze:
25 gru 2017, 20:31
Program dochodzi do zmiany narzędzia. Odsuwam kieł , zdejmuję wałek, mocuję czujnik, mocuję ręcznie nóż, zeruję, odsuwam czujnik, zakładam wałek, dosuwam kieł ...
Poddaje się :) Jedyne co jeszcze mogę to zasugerować - jak nie masz fizycznie zmiany narzędzia to i w programie masz jej nie mieć. Dla każdego noża masz inny program.


mareq_bb
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 3
Posty: 246
Rejestracja: 26 wrz 2016, 14:10
Lokalizacja: Bielsko-Biała

Re: Pisanie G-code pod LinuxCNC

#118

Post napisał: mareq_bb » 22 mar 2018, 22:23

Super wątek. Jestem świeżo po instalacji LinuxCNC i pracuję nad spięciem tego ze swoją tokarką. Próbuję przebrnąć przez przykłady z wątku. Niestety listingi są u mnie tak wyświetlane, że są naszpikowane ciągami typu &# i jakaś liczba. Wszystko wskazuje, że jest jakiś problem z kodowaniem znaków. Jak to ogarnąć?

System mam postawiony na płycie Intela D945GSEJT. Taki wynalazek na Atomie w formacie ITX. Czy to jest efektem pracy na kernelu czasu rzeczywistego, że LinuxCNC pracuje poprawnie a np. przeglądanie internetu jest w tempie zmęczonego ślimaka? Nie jest to kwestia prędkości łącza.

Jeszcze jedna sprawa: robię teraz enkoder aby móc gwintować. Mam zamiar zrobić podwójny (indeks i kąt obrotu). Mam tylko pytanie, jaką minimalną ilość impulsów na obrót wystarczy zrobić?

Awatar użytkownika

adam Fx
Lider FORUM (min. 2000)
Lider FORUM (min. 2000)
Posty w temacie: 7
Posty: 5562
Rejestracja: 04 lip 2004, 16:03
Lokalizacja: Gliwice

Re: Pisanie G-code pod LinuxCNC

#119

Post napisał: adam Fx » 23 mar 2018, 07:10

mareq_bb pisze:ciągami typu &# i jakaś liczba. Wszystko wskazuje, że jest jakiś problem z kodowaniem znaków. Jak to ogarnąć?
dziwnie -- zainstalowałeś pobierając ze strony czy zainstalowałeś osobno linux i do niego Linuxcnc?
mi tam zawsze wszystko działało

Mi chodzi internet normalnie

im mniej tym gorzej(za dużo też nie zdrowo)bo gdy wrzeciono dostaje opór i zwalnia to linuxcnc się o tym dowiaduje dość późno
tu moja sprawdzona w bojach tarcza tokarka-cnc-mtp-tytan-750-diy-z-auto-uc ... 06-10.html a tu zasada rozmieszczenia transoptorów

odstępy=średnicy otworów
sorki za wszystkie błędy ... (dyslektyk) :?
Zobacz moje filmy http://www.youtube.com/user/pokachontass/videos


mareq_bb
Specjalista poziom 1 (min. 100)
Specjalista poziom 1 (min. 100)
Posty w temacie: 3
Posty: 246
Rejestracja: 26 wrz 2016, 14:10
Lokalizacja: Bielsko-Biała

Re: Pisanie G-code pod LinuxCNC

#120

Post napisał: mareq_bb » 23 mar 2018, 09:35

Z tymi krzakami to mi chodzi o widok w przeglądarce na wszelkich komputerach jakie mam jak i na telefonie/tablecie.
Pierwszy lepszy kod z pierwszej strony wątku wygląda tak:

Kod: Zaznacz cały

( ------------------------------ )
( start )
( ------------------------------ ) 
( Miki )

( Time-stamp: <2012-01-06 20:39> )

(odpalamy LinuxCNC, startuje ze znanym nam logiem, grawerowanym przez tokarkę) 
(możemy na nim zbazować nasze osie, albo wczytać ten plik i dopiero bazować) 
(obserwując jak osie się bazują, i nóż zjeżdża w pozycję oczekiwania) 

G0 z-200 f2000 (start posuwu szybkiego, odjazd w osi Z do połowy) 
x-100 (odjazd w osi X do osi toczenia) 
z0 x0 (szybki przejazd po skosie do bazy)
x-100 (i droga do tego samego miejsca z powrotem) 
z-200 (ale w innej kolejności osi)

M30 (zatrzymanie maszyny) 
Odnośnie enkodera chciałem wiedzieć czy wystarczy takie 30 otworów czy bawić się w zrobienie np. 100. Ja akurat chciałem zastosować pojedynczy gotowy czujnik szczelinowy z wyjściem kwadraturowym a nie 2 fotokomórki z przesunięciem.

ODPOWIEDZ Poprzedni tematNastępny temat

Wróć do „LinuxCNC (dawniej EMC2)”