8) Tabela G kody

Pod spodem przedstawiam najczęściej używane G  kody.

Są one podstawowe i nie powinny się różnić w większości maszyn ze sterowaniem Fanuc. W następnych wpisach będę starał się załączyć podobne tabele, z tą różnicą, że dla każdego oprogramowania z osobna, sam Fanuc ma 3 wersje kodów.
Te podane tutaj są dla Fanuc OT. Systematycznie będę dodawał przykłady ich zastosowania. Po dodaniu wstawię linki dla każdej funkcji z osobna.

G kody dla tokarek

G kodOpis
G00Szybki przesów
G01Interpolacja liniowa
G02Interpolacja kołowa zgodna z ruchem wskazówek zegara CW
G03Interpolacja kołowa przeciwna do ruchu wskazówek zegara CCW
G04Zwłoka czasowa
G09Dokładne zatrzymanie
G10Programowalne wprowadzanie danych
G20Wprowadzanie w calach
G21Wprowadzanie w milimetrach
G22Zabroniona strefa aktywna
G23Zabroniona strefa wyłączona
G27Kontrola powrotu do punktu referencyjnego
G28Powrót na punkt referencyjny maszyny
G32Nacinanie gwintu o stałym skoku
G40Anulowanie kompensacji promienia narzędzia
G41Włączenie kompensacji promienia narzędzia lewostronny
G42Włączenie kompensacji promienia narzędzia prawostronny
G70Cykl wykańczający
G71Cykl toczenia po średnicy
G72Cykl planowania
G73Cykl powtarzania wzoru
G74Cykl wiercenia
G75Cykl kanałkowania
G76Cykl gwintowania
G92Ustawienie współrzędnych, ograniczenie obrotów wrzeciona
G94Posuw mm na minutę
G95Posuw mm na obrót
G96Stała prędkość skrawania
G97Odwołanie stałej prędkości skrawania

G kody dla frezarek

G kodOpis
G00Szybki przejazd
G01Ruch roboczy
G02Interpolacja kołowa zgodna z ruchem wskazówek zegara CWI
G03 Interpolacja kołowa przeciwna ruchowi wskazówek zegara CCW
G04Zwłoka czasowa
G05.1 Q1. Precyzyjna kontrola konturu
G07.1 Interpolacja cylindryczna
G09Dokładne zatrzymanie niemodalny
G10Wprowadzanie danych programowalnych
G11Odwołanie funkcji G10
G17Płaszczyzna główna X/Y i oś podłużna Z
G18Płaszczyzna główna Z/X oś podłużna Y
G19 Płaszczyzna główna Y/Z oś podłużna X
G20Wprowadzanie danych w calach
G21Wprowadzanie danych w milimetrach
G28Powrót do punktów referencyjnych maszyny
G30Powrót do drugiego trzeciego i czwartego punktu referencyjnego
G33Frezowanie gwintu, skok stały
G34Frezowanie gwintu, skok zmienny
G40Anulowanie kompensacji promienia narzędzia
G41Włączenie kompensacji promienia narzędzia lewostronny
G42Włączenie kompensacji promienia narzędzia prawostronny
G43 Włączenie kompensacji długości narzędzia +
G44Włączenie kompensacji długości narzędzia -
G49Anulowanie kompensacji długości narzędzia
G52Lokalny układ współrzędnych
G53Baza maszynowa (punkt zerowy maszyny)
G54Przesunięcie punktu zerowego maszyny 1
G55Przesunięcie punktu zerowego maszyny 2
G56Przesunięcie punktu zerowego maszyny 3
G57Przesunięcie punktu zerowego maszyny 4
G58Przesunięcie punktu zerowego maszyny 5
G59Przesunięcie punktu zerowego maszyny 6
G54.1 od P1 do P48Przesunięcie punktu zerowego maszyny
G65 Wywołanie Makra niemodalne
G66 Wywołanie Makra Modalne
G66.1Wywołanie Makra Modalne wersja 2
G67Odwołanie funkcji G66, G66.1
G68Rotacja współrzędnych
G69Odwołanie rotacji współrzędnych
G73Wiercenie z łamaniem wióra
G74 Cykl gwintowania. Gwint lewy
G76 Wytaczanie wykańczające
G80Wykasowanie cyklu
G81Wiercenie/ Nawiercanie
G82Wiercenie z przerwą czasową na dnie
G83Wiercenie z od-wiórowaniem
G84Cykl gwintowania. Gwint prawy
G85Rozwiercanie
G86Wytaczanie z zatrzymaniem wrzeciona przy wycofaniu
G87Wytaczanie w ruchu powrotnym
G88Wytaczanie z ręcznym wycofaniem narzędzia z otworu
G89Wytaczanie z przerwą czasową na dnie
G90Programowanie absolutne
G91Programowanie przyrostowe
G92Ustawienie współrzędnych, ograniczenie obrotów wrzeciona
G98Wycofanie narzędzia na płaszczyznę początkową
G99Wycofanie narzędzia na płaszczyznę retrakową

To by było dzisiaj na tyle. Zapraszam ponownie.

Pozdrawiam Przemocnc

 

7) Przedstawiam wam M kody

Zapewne przeczytałeś już moje poprzednie wpisy o G kodach. Odpowiadają one za tory ruchu, prędkości z jakimi narzędzie ma się poruszać, jakie obroty mają być załączone.

Innym bardzo ważnymi kodami, bez których maszyna nie będzie w stanie wykonać prawidłowo poleceń są M kody. Można powiedzieć, że kody te kontrolują  sprzęt komputerowy odpowiedzialny za prawidłowe działanie maszyny i programu.

M kody odpowiedzialne za prawidłowe działanie progamu

Dzięki M kodom możemy zatrzymać program :

warunkowo (M1-program  zatrzyma się, jeśli na pulpicie będzie wciśnięty przycisk  „Option Stop”), bezwarunkowo ( M0- program zatrzyma się w miejscu umieszczenia tego M kodu, aż operator nie naciśnie  Cycle Start)

Można określić koniec programu (M2), a nawet zakończyć program i przewinąć go do początku (M30- najczęściej używany M kod na koniec programu)

M kody odpowiedzialne za prawidłowe działanie maszyny

Jak już wyżej pisałem M kody odpowiedzialne są za prawidłowe działanie programu i maszyny, a w sumie to większość M kodów jest odpowiedzialna za działanie maszyny.

Zacznę od obrotów. Pewnie pomyślisz jak to od obrotów, przecież pisał że obroty włącza się G kodem „G97” i podaje wartość obrotów „S300”. W sumie tak, ale musimy powiedzieć maszynie w którą stronę wrzeciono ma się kręcić. Za to odpowiadają dwie funkcje M.

M3-włącza obroty zgodne z ruchem wskazówek zegara

M4- włącza obroty przeciwne do ruchu wskazówek zegara

Tak więc prawidłowy blok do włączenia obrotów wygląda tak

G97 S300 M3 –zostały załączone obroty 300obr/min zgodne z ruchem wskazówek zegara

M5- wyłącza całkowicie obroty

Większość tokarek posiada przekładnię, dzięki której możemy określić przełożenie, podobnie jak w samochodzie.

M40- bieg jałowy (Neutralny)

M41- Najniższy bieg

M42,M43, M44- Wyższe biegi

Ile maszyna ma biegów i jakie obroty ona osiągnie na danym biegu, jest zapisane w książce obsługi maszyny.

Napisałem że maszyna ma biegi jak samochód, ale nie do końca działają one w ten sam sposób.
Samochód rozpędzamy od najniższego do najwyższego biegu.W maszynie na początku programu musimy wiedzieć na jakim zakresie obrotów chcemy pracować. Zakresy obrotów powinny być podane w książce obsługi dołączonej do maszyny.

M kodami włącza sięchłodziwo (M8) , lub go wyłączyć (M9).

Pod spodem przedstawiam tabelę z najczęściej używanymi M kodami na tokarkach.

M kodOpis
M00Program stop
M01Program stop opcjonalnie
M02Koniec programu
M03Włączenie obrotów wrzeciona zgodnie z ruchem wskazówek CW
M04Włączenie obrotów wrzeciona przeciwnie do ruchu wskazówek CCW
M05Obroty stop
M08Chłodziwo włącz
M09Chłodziwo wyłącz
M29Tryb sztywnego gwintowania
M30Koniec programu (reset)
M40Neutralne przełożenie w skrzyni biegów
M41Niski bieg w skrzyni biegów
M42Wysoki bieg w skrzyni biegow
M68Hydrauliczne szczęki zamknięcie
M69Hydrauliczne szczęki otwarcie
M78Konik do przodu
M79Konik do tyłu
M94Anulowanie odbicia lustrzanego
M95Lustrzane odbicie w osi x
M98Wezwanie podprogramu
M99Koniec podprogramu

6) G kody niemodalne

G kody niemodalne

W poprzednim wpisie mówiłem o G kodach modalnych, czyli takich, które raz wpisane będą aktywne dopóki nie zostaną odwołane prze inny G kod z danej grupy. Jest jeszcze grupa G kodów. Są to kody nie modalne,  po angielsku One-Shot G-Codes , co można przetłumaczyć jako G kody jednostrzałowe:).

Po wpisaniu G kodu z tej grupy, będzie on aktywny tyko w tym bloku, w którym został zapisany. W następnym bloku będzie aktywny G kod z bloku poprzedzającego wpisanie G kodu niemoralnego.

Najlepszym przykładem One-Shot G-Code jest G4.

G4 to kod, który mówi maszynie, że narzędzie ma stanąć w miejscu przy włączonych obrotach przez określony czas

Np.:

N10 G0 X200 Z0    (Szybki najazd przed materiał G0 aktywne)

N20 G1 Z-10 F0,3  (Ruch roboczy G1 aktywne G0 wyłączone)

N30 G4 X3         (Postój w miejscu przez 3 sek. G4 aktywne)

N40 X210          (Ruch roboczy, G1 aktywne, włączone w bloku N20)

N50 G0 Z1         (Szybki odjazd, G0 aktywne)
GIF

Jak widzisz G4 było aktywne tylko w bloku N30, w N40 G1 było kontynuowane z bloku N20.

Pod spodem przedstawiam tabelę G kodów z podziałem na grupy:

G kody niemodalne

GRUPYG KODY
GRUPA 0G04G09G10G28
GRUPA 1G31G32

Dziękuję za twój czas. Mam nadzieję, że przyda Ci się ten wpis.

Pozdrawiam PrzemoCNC

5) G kody modalne

Są to G kody które pozostają aktywne w programie, dopóki nie zostanie zaprogramowany inny G kod z tej samej grupy.

Tylko jeden G kod  z danej grupy może być aktywny w danym czasie, podczas pracy.

G0, G1, G2, G3 są z tej samej grupy i nie da się wpisać G1 G2 X50 Z50, To tak jakbyśmy jechali samochodem i chcieli w jednym czasie skręcić w lewo i w prawo, nie da się i już .

G54,G55 G56, G58 … to jest grupa pracy układu współrzędnych, za ich pomocą wczytuje się punkty zerowe detalu zapisane w offsecie. Nie da się ich połączyć  ze sobą, ale możemy ich połączyć z inną grupą.

Np.: G54 G0 X50 Z1 (wczytałem punkt zerowy detalu i kazałem pojechać ruchem szybkim na fi 50, 1mm przed materiałem)

G kody będą aktywne dopóki nie zostaną odwołane przez inny G kod z danej grupy.

N10 G0 X200 Z1              (Najazd szybki G0 aktywne)

N20 G1 Z- 10  F200       (Ruch roboczy G1 aktywne, G0 wyłączone)

N30 X210 Z-15                (Narzędzie ciągle porusza się ruchem roboczym G1  z posuwem F zaprogramowanym w bloku N20)

N40 G0 Z100     Szybki odjazd w osi Z  ( G0 aktywne, G1 wyłączone)

Jak widzisz w bloku N20 G1 zostało włączone i było kontynuowane w bloku N30 podobnie jak posuw F, dopiero w bloku G1 zostało zastąpione przez G0. Było by identycznie gdybyśmy zamiast G1 użyli G2 lub G3, a to dla tego, że wszystkie te kody są z jednej grupy.

Pod spodem tabela G kodów modalnych z podziałem na grupy

G kody modalne

GRUPY G KODY
GRUPA 1 G00 G01 G02 G03 G12 G13
GRUPA 2 G17 G18 G19
GRUPA 3 G90 G91
GRUPA 4 G40 G41 G42
GRUPA 5 G94 G95
GRUPA 6 G20 G21
GRUPA 7G70G71G72
GRUPA 8 G43 G44 G49
GRUPA 9 G53 G54G55G56G57G58G59
GRUPA 10G96G97
GRUPA 11G15G16

Mam nadzieję, że przydał Ci się ten wpis. Pamiętaj  jeśli byłem choć trochę pomocny daj mi znać w komentarzu. Do zobaczenia w następnym wpisie.

Pozdrawiam PRZEMOCNC.

4) Przedstawiam wam G kody

A więc witam w kolejnym wpisie, chciałbym Ci przedstawić króla programów. mowa o kodach. To one  są najważniejszymi cząstkami każdego programu. W państwie król rozkazuje podwładnym co mają robić, podobnie jak w programach, tyle że rolę  króla zajmują  kody

Jeszcze nie urodził się taki programista co by stworzył program  bez użycia G  i M  kodów.

W tym wpisie przybliżę Ci co to są  G  kody i dlaczego są one takie ważne.

G kody, w szerszym znaczeniu są instrukcjami dla maszyny, nie tyle co ma robić, ale jak ma to robić.

Czy narzędzie ma jechać po linii prostej G1

Po okręgu G2, G3

Po stożku G1

Jak będzie określany posuw G94, G95

Może ruchem szybkim G0

A jeśli ruch narzędzia będzie zatrzymany, można określić jak długo ma być nieruchomo, G4 (dwell time/czas oczekiwania)

G kody umożliwiają nam również wykonanie bardzo ważnych czynności, takich jak wczytanie bazy przedmiotu:  G54, G55… , lub nawet wczytać długości narzędzi do tabeli w offsecie G10.

Jak widzisz napisanie programu bez G kodów jest niemożliwe. Są one niezbędne i praktycznie w każdym oprogramowaniu są one takie same( przynajmniej te podstawowe) .

Bez nich maszyna nie będzie wiedziała czy ma jechać  prosto G1 , czy po okręgu G2,G3. Ruchem szybkim G0, a może roboczym G1. Z określonym posuwem G94,G95, z określoną prędkością skrawania G96.

Dziękuję ci że poświęciłeś kilka minut na przeczytanie tego wpisu. Nie był zbyt długi, ale traktuj go jako wstęp do następnych lekcji o kodach.

Pozdrawiam PrzemoCNC

 

3) Jak zacząć pisać program CNC


Jak napisać program CNC?
To pytanie zadaje sobie większość początkujących operatorów.
Najlepiej będzie zacząć naukę na sterowaniu Fanuc. Mógłbym pisać na przykładzie maszyn z oprogramowaniem takim jak   Sinumerik, Haas lub Heidenhain ale Fanuc  jest  na tyle łatwy do zrozumienia i przejrzysty, że bez problemów każdy powinien zrozumieć .

Sam zresztą zaczynałem naukę od Fanuca .

” Jak napisać program CNC” jest pierwszym wpisem z serii Podstawy programowania.

Będę starł się  wprowadzić cię w świat CNC, krok po kroku. Będzie sporo przykładowych rysunków i programów.

Pamiętaj dwie podstawowe zasady to cierpliwość i chęci. Sam zresztą często powtarzam początkującym operatorom, że chęci to już 80% sukcesu. Możecie nie mieć wiedzy, ani obycia, ale jak będą chęci  to wszystko idzie się nauczyć. Popatrz, jeśli niedźwiedź nauczył się jeździć na rowerze, to dlaczego ty miałbyś się nie nauczyć programowania CNC.

 

GIF

 

Jak już pisałem wyżej cierpliwość. Zapewne każdy ma przed oczami sumy jakie programiści zarabiają. Nie osiągnęli oni tego z dnia na dzień.

Podstawy programowania

Programowanie wcale nie jest jakieś super trudne  do nauczenia.                              Najlepiej zacząć naukę od tokarek ponieważ mają one tylko 2 osie X i Z.

X określa średnicę obrabianego przedmiotu

Z określa jego długość

Na początek pokażę łatwe do zrozumienia rysunki.

Opiszę schemat który ja używam, wydaje mi się najbardziej przystępny, a może z przyzwyczajenia go używam :).

Na samym początku wpisuje numer  programu  poprzedzony literą O (Tylko Fanuc) np. O0001
Następnie w nawiasie (Fanuc nie czyta tego co jest w nawiasie, to tylko dla twojej informacji, w sinumeriku w miejsce nawiasu wstawiamy ;  )   nazwa programu  (nazwij program tak żebyś nie musiał za miesiąc, albo za rok spędzić  godziny na przeszukiwaniu pamięci maszyny, aby znaleźć właściwy program)

Np.:  O0001 (NAUKA PISANIA PROGRAMU)  ten tytuł będzie miał twój program w pamięci maszyny.

Pod spodem piszę numer rysunku wersję itd.. (wszystko w nawiasie)

Poniżej podpisuję  program np.  (PRZEMO CNC)

Teraz dopiero zaczynam właściwe pisanie

Na sam początek wybieramy numer narzędzia, którego będą używał do danej

operacji:

T0101

 

(T01 to nr pozycji w głowicy narzędziowej, 01 do nr korektora, możemy wpisać dowolny korektor, jednak najlepiej wpisać ten sam korektor co narzędzie.)

Teraz trzeba wybrać punkt zerowy detalu

G54

 

(w offsecie określam w którym miejscu na detalu będzie mój punkt odniesienia do pisania programu, można wybrać dowolny punkt  detalu, ale w toczeniu zazwyczaj tym punktem jest czoło detalu.)

Następnie trzeba określić obroty

G97 S800

 

Ale samo wpisanie obrotów nie sprawi  że wrzeciono zacznie się obrać, trzeba powiedzieć maszynie w którą stronę ma się obracać uchwyt

M3 (zgodnie z ruchem wskazówek zegara CW)

M4 (odwrotnie do ruchu wskazówek zegara CCW)

 

Przy obróbce wydziela się mnóstwo ciepła, aby zapobiec przegrzaniu narzędzia należy włączyć chłodziwo:

M8 (Włącz chłodziwo)

 

Tyle się opisałem a nawet nie ruszyło z miejsca. Chcę żeby nóż zatrzymał się na średnicy 45mm i na czole detalu.  I do tej wartości niech przejedzie ruchem szybkim

G0 X45 Z0

(można pisać bez spacji, maszyna sama sobie je doda)

Teraz pasowało by puścić wióro . Ale nie zrobimy tego na G0

GIF

Narzędzie musi pójść ruchem roboczym G01, do tego maszyna musi wiedzieć jak szybko nóż ma się zagłębiać w materiał:

F (posuw w toczeniu używa się G95 mm/obr)

Zaczniemy od planowania

G1 X0 F0,3

(narzędzie zjedzie do osi detalu z posuwem 0,3 mm na obrót)

G0 Z0,5

(odjazd 0,5 mm od czoła)

G0 X40

 

(ruchem szybkim najazd na średnicę 40mm)

Linia żółta ruch na G0, linia biała ruch G1

GIF

Teraz zrobimy kształt zewnętrzny po promieniach

G1 Z-10 F0,25

(nóż idzie ruchem roboczym na -10mm, po średnicy 40  posuwem 0.25mm/Obr)

G2 X50 Z-15 R5

(nóż robi promień R zgodnie z ruchem wskazówek zegara i zatrzymuje się na fi 50 i 15 mm za zerem detalu)

G3 X60 Z-20 R5

(nóż robi promień R przeciwnie do ruchu wskazówek zegara i zatrzymuje się na fi 60 i 20 mm za zerem detalu)

G1 U1

(nóż przesuwa się o 1mm w górę od średnicy na której był poprzednio, w tym przypadku pojedzie na fi 61mm)

G0  Z1
GIF
G28 U0 W0

(wpisując tą komendę nóż pojedzie najkrótszą drogą z dowolnego miejsca maszyny, do punktu wymiany narzędzia, zazwyczaj jest to punkt zerowy maszyny)

M30 (koniec programu przewijany jest program do początku)

 

O0001 (NAUKA PISANIA PROGRAMU) 
(PRZEMO CNC)
T0101
G54
G97 S800 M03
M08
G0 X45 Z0
G1 X0 F0,3 
Z0,5
G0X40
G1 Z-10 F0.2 
G2 X50 Z-15 R5
G3 X60 Z-20 R5
G1 U1
G0  Z1
G28 U0 W0
M30

 

GIF

Jak widzicie trzeba się trochę naklepać żeby napisać program na prosty detal, a co dopiero jak przyjdzie coś skomplikowanego. Niektóre programy mają po kilkadziesiąt tysięcy bloków. Aby trochę zredukować pisanie stosuje się cykle, lub oprogramowanie CAD /CAM, ale o tym w innym wpisie.

Mam nadzieję, że przyda Ci się ten wpis i wrócisz tu za niedługo.

Pozdrawiam PRZEMOCNC 🙂