Pisanie programu CNC krok po kroku zaczyna się nie od wpisania kodu G, lecz od poprawnego odczytania rysunku, dobrania narzędzia i ustalenia punktu zerowego. W tym poradniku pokazuję cały proces na przykładzie frezarki 3-osiowej: od planu obróbki, przez strukturę programu i podstawowe kody, aż po symulację oraz bezpieczne uruchomienie na maszynie.
Od rysunku do bezpiecznego pierwszego przejazdu
- Najpierw przygotuj technologię, a dopiero później zapisuj ruchy narzędzia.
- G00, G01, G02 i G03 odpowiadają za podstawowe ruchy freza lub noża.
- G54 określa bazę detalu, a G90 i G91 wybierają sposób podawania współrzędnych.
- Prędkość obrotowa i posuw muszą wynikać z materiału, narzędzia i parametrów skrawania.
- Symulacja, przejazd na sucho i Single Block ograniczają ryzyko kolizji.
Zanim wpiszesz pierwszą linię kodu
Program CNC jest instrukcją dla konkretnej maszyny, sterownika i zestawu narzędzi. Ten sam zapis może działać na sterowaniu Fanuc, Siemens lub Haas, ale szczegóły składni, cykli i funkcji pomocniczych mogą się różnić. Dlatego zawsze zaczynam od sprawdzenia instrukcji sterownika, a nie od kopiowania przypadkowego przykładu z internetu.
Najpierw określam, czy program dotyczy frezarki, tokarki, wycinarki czy maszyny wieloosiowej. Dla początkującego najlepszym ćwiczeniem jest prosty kontur na frezarce 3-osiowej, ponieważ łatwo prześledzić ruchy w osiach X, Y i Z.
| Rodzaj maszyny | Najważniejsze osie | Typowe zadania |
|---|---|---|
| Frezarka CNC | X, Y, Z | Kontury, kieszenie, otwory, planowanie |
| Tokarka CNC | X, Z | Toczenie średnic, czołowanie, rowki, gwinty |
| Centrum 4- lub 5-osiowe | X, Y, Z oraz osie obrotowe | Obróbka powierzchni przestrzennych i detali złożonych |
Trzeba też ustalić, czy program będzie napisany ręcznie, czy wygenerowany w systemie CAM. Ręczny zapis dobrze sprawdza się przy prostych detalach, korektach i nauce. Przy wielu kieszeniach, krzywych oraz złożonych powierzchniach CAM zmniejsza liczbę ręcznych obliczeń, ale nie zwalnia z obowiązku sprawdzenia kodu.
Przygotuj rysunek, materiał i plan obróbki
Rysunek techniczny zamieniam na listę konkretnych informacji. Potrzebuję wymiarów detalu, tolerancji, rodzaju materiału, chropowatości oraz informacji o bazach. Bez tego można napisać program, który wykona ruchy poprawnie, ale stworzy detal o złych wymiarach.
Ustal punkt zerowy detalu
Najwygodniej przyjąć bazę w lewym dolnym narożniku górnej powierzchni materiału. Wtedy współrzędne są czytelne, a większość wymiarów z rysunku można przepisać bez dodatkowych przeliczeń. W praktyce punkt ten zapisuje się często jako G54, czyli jedno z przesunięć układu współrzędnych przedmiotu.
Na tokarce sytuacja wygląda inaczej. Oś Z zwykle biegnie wzdłuż osi obrabianego wałka, a X opisuje średnicę lub promień, zależnie od ustawień sterowania. Tego założenia nie wolno przenosić bez sprawdzenia na inną maszynę.
Dobierz narzędzie i parametry skrawania
Dla prostego konturu można przyjąć frez palcowy z węglika spiekanego, na przykład o średnicy 6 mm. Jeśli materiałem jest aluminium, parametry będą inne niż dla stali, a producent narzędzia może zalecać konkretną prędkość skrawania i posuw na ostrze.
Podstawowe zależności wyglądają tak:
- Prędkość obrotowa wrzeciona wynika z prędkości skrawania i średnicy narzędzia.
- Posuw roboczy zależy od liczby ostrzy, posuwu na ostrze i obrotów.
- Głębokość skrawania trzeba dopasować do sztywności maszyny, materiału i średnicy freza.
Przykładowo dla freza Ø6 mm nie przyjmuję automatycznie dużej głębokości tylko dlatego, że maszyna ma mocne wrzeciono. Na pierwszej próbie lepiej zastosować płytkie przejście kontrolne, a parametry zwiększać dopiero po ocenie dźwięku, wibracji i jakości powierzchni.
Jak zbudować program CNC krok po kroku
Program powinien mieć logiczny układ. Dzięki temu łatwiej znaleźć błąd, zmienić narzędzie albo wrócić do obróbki po zatrzymaniu maszyny. Typowy zapis składa się z nagłówka, ustawień bezpieczeństwa, wyboru narzędzia, ruchów roboczych i zakończenia.
Najważniejsze kody na początek
| Kod | Znaczenie | Praktyczne zastosowanie |
|---|---|---|
| G21 | Jednostki metryczne | Programowanie w milimetrach |
| G90 | Wymiarowanie absolutne | Współrzędne liczone od ustalonego zera |
| G91 | Wymiarowanie przyrostowe | Ruch względem aktualnej pozycji |
| G00 | Przejazd szybki | Pozycjonowanie poza materiałem |
| G01 | Interpolacja liniowa | Ruch roboczy z określonym posuwem |
| G02 | Interpolacja kołowa zgodna z ruchem wskazówek zegara | Łuki i zaokrąglenia |
| G03 | Interpolacja kołowa przeciwna do ruchu wskazówek zegara | Łuki w przeciwnym kierunku |
| G17 | Wybór płaszczyzny XY | Typowe frezowanie w poziomej płaszczyźnie |
| G40, G49, G80 | Anulowanie kompensacji i cykli | Bezpieczne wyzerowanie wcześniejszych ustawień |
| M03, M05 | Start i zatrzymanie wrzeciona | Sterowanie obrotami narzędzia |
| M06 | Wymiana narzędzia | Stosowane głównie we frezarkach |
| M30 | Koniec i reset programu | Zamknięcie obróbki |
Poszczególne sterowania mogą wymagać dodatkowych znaków, numerów bloków lub innego zapisu funkcji. W przykładzie poniżej używam składni zbliżonej do popularnych sterowników przemysłowych. To ćwiczenie edukacyjne, a nie gotowy program do uruchomienia bez sprawdzenia na konkretnej maszynie.
%
O1001 (KONTUR 40 X 25 MM)
G21 G17 G90 G40 G49 G80
G54
T1 M06
S3000 M03
G00 G43 H1 Z50
G00 X-3 Y-3
G00 Z5
G01 Z-2 F120
G01 X43 F300
Y28
X-3
Y-3
G00 Z50
M05
M30
%
W tym przykładzie frez ma średnicę 6 mm, dlatego środek narzędzia porusza się 3 mm poza nominalnym konturem. Punkty od X-3 do X43 oraz od Y-3 do Y28 dają zewnętrzny prostokąt 40 x 25 mm, zakładając poprawnie ustawioną bazę i brak zużycia narzędzia.
Co oznaczają kolejne fragmenty
Pierwsza linia ustawia milimetry, płaszczyznę XY, wymiarowanie absolutne oraz kasuje część aktywnych kompensacji i cykli. Następnie G54 wybiera bazę detalu, T1 M06 pobiera narzędzie, a S3000 M03 uruchamia wrzeciono z prędkością 3000 obr./min.
Blok G43 H1 Z50 aktywuje korekcję długości narzędzia numer 1 i odsuwa narzędzie na bezpieczną wysokość. Dopiero później następuje zjazd do Z5, czyli 5 mm nad powierzchnię, a G01 Z-2 wykonuje zagłębienie robocze.
Po pierwszym ruchu po osi X sterownik zachowuje aktywny tryb G01, dlatego linie zawierające samo Y lub X nadal są ruchami roboczymi. To wygodne, ale właśnie przez takie dziedziczenie trybów początkujący często przeocza, że narzędzie pozostaje w posuwie roboczym.
Wybierz właściwy sposób programowania
Nie każdy detal opłaca się pisać ręcznie. Ja traktuję ręczny G-code jako dobre narzędzie do prostych geometrii, diagnostyki i zrozumienia pracy maszyny. Przy bardziej złożonym modelu znacznie rozsądniejsze jest przygotowanie geometrii w CAD i ścieżki w CAM.
| Metoda | Kiedy ma sens | Ograniczenie |
|---|---|---|
| Ręczny G-code | Prosty kontur, kilka otworów, szybka korekta | Łatwo pomylić współrzędne lub parametry |
| Programowanie konwersacyjne | Warsztatowe detale i szybkie cykle na sterowniku | Zależność od możliwości konkretnej maszyny |
| CAD/CAM | Modele 3D, kieszenie, powierzchnie i produkcja seryjna | Konieczność konfiguracji postprocesora i weryfikacji kodu |
Postprocesor tłumaczy ścieżkę CAM na zapis zrozumiały dla wybranego sterownika. To ważny etap, bo plik wygenerowany dla jednej konfiguracji może mieć inne cykle, korekcje lub sposób powrotu osi niż plik przeznaczony dla innej maszyny.
Automatyczne generowanie kodu nie jest gwarancją bezpieczeństwa. Program może zawierać poprawną geometrię, ale błędną długość narzędzia, niewłaściwy punkt G54 albo zbyt agresywny najazd. Operator nadal odpowiada za sprawdzenie technologii i warunków pracy.
Sprawdź program przed pierwszym cięciem
Najpierw uruchamiam symulację i sprawdzam, czy narzędzie nie przechodzi przez imadło, uchwyt, materiał ani elementy stołu. W systemie CAM przydatne jest wykrywanie kolizji oraz porównanie modelu po obróbce z modelem nominalnym.
Przed uruchomieniem na materiale kontroluję szczególnie:
- zgodność układu osi z rysunkiem i maszyną,
- poprawność wartości G54 oraz korekcji długości i średnicy narzędzia,
- kierunek obrotów wrzeciona i zakres obrotów,
- wysokość bezpiecznego przejazdu w osi Z,
- posuwy przy zagłębianiu i wycofaniu,
- miejsce rozpoczęcia oraz zakończenia konturu.
Pierwszy przejazd wykonuję z włączonym Single Block, czyli trybem wykonywania programu blok po bloku. Pomaga też ustawienie niskiego override posuwu, przejazd na sucho nad materiałem i trzymanie ręki przy przycisku zatrzymania awaryjnego.
Jeśli maszyna wydaje nietypowy pisk, pojawiają się silne drgania albo narzędzie zaczyna zbierać zbyt gruby wiór, zatrzymuję cykl. Dźwięk i wygląd wióra często szybciej pokazują problem niż sam ekran sterownika, ale nie zastępują pomiaru i kontroli programu.
Błędy, które najczęściej psują pierwszy program
Pomylenie G90 z G91
W trybie G90 współrzędne odnoszą się do ustalonego zera. W G91 każdy ruch liczony jest od pozycji bieżącej. Pomylenie tych trybów może przesunąć narzędzie o wiele razy większą odległość, niż zakładano, dlatego ustawienie wymiarowania powinno znaleźć się w nagłówku.
Brak korekcji narzędzia
W programie frezowania trzeba rozróżnić tor środka narzędzia od nominalnego konturu detalu. Można obliczyć przesunięcie ręcznie, użyć kompensacji G41/G42 albo pozwolić, aby zrobił to system CAM. Samo wpisanie wymiarów z rysunku bez uwzględnienia średnicy freza zwykle kończy się detalem za małym lub za dużym.
Niepewny punkt zerowy
Nawet perfekcyjny kod wykona złą obróbkę, jeśli baza została ustawiona w innym miejscu niż zakładano. Przed startem sprawdzam, gdzie faktycznie znajduje się G54, jaka jest wysokość powierzchni materiału i czy korekcja długości odpowiada zamontowanemu narzędziu.
Przeczytaj również: Dobór dyszy do piaskowania - Jak nie stracić ciśnienia?
Zbyt agresywne parametry
Obroty i posuw przepisane z innego materiału nie są uniwersalne. Znaczenie ma także wysięg narzędzia, liczba ostrzy, chłodzenie oraz sztywność mocowania. Na pierwszej sztuce lepiej zostawić margines technologiczny i poprawiać parametry na podstawie pomiarów niż od razu walczyć o najkrótszy czas cyklu.
Co zrobić po wykonaniu pierwszego detalu
Po obróbce mierzę detal w tych miejscach, które najbardziej zależą od programu: długość konturu, szerokość, głębokość i położenie otworów. Jeśli wymiar odbiega od założenia, zapisuję przyczynę osobno, na przykład korekcja narzędzia, bazowanie, ugięcie freza albo błąd w geometrii.
Dobrą praktyką jest zachowanie programu wraz z numerem narzędzia, materiałem, parametrami i informacją o korektach. Taki opis oszczędza czas przy powtórnej produkcji, bo nie trzeba odtwarzać całego procesu z pamięci.
Największą różnicę w nauce robią proste ćwiczenia wykonywane w stałej kolejności: punkt, linia, prostokąt, kieszeń, otwory i dopiero łuki. Dzięki temu każdy nowy kod można sprawdzić na małym, przewidywalnym zadaniu, zanim trafi do bardziej kosztownego detalu.
Od pierwszego konturu do pewnej pracy na maszynie
Poprawne programowanie CNC łączy trzy rzeczy: czytelny kod, dobrą technologię i bezpieczną weryfikację. Sam zapis G-code jest tylko częścią procesu. Równie ważne są baza, narzędzie, parametry skrawania, mocowanie oraz sprawdzenie zachowania maszyny przed rozpoczęciem cięcia.Na początku warto pisać krótkie programy i komentować ich najważniejsze fragmenty. Gdy rozumiesz, co robi każda linia, łatwiej przejść do cykli, kompensacji, podprogramów i systemów CAM, a przede wszystkim szybciej zauważyć błąd, zanim zamieni się w kolizję lub zmarnowany materiał.