Większość operatorów CNC potrafi przeczytać G-kod. Wielu potrafi go napisać „z palca”. Ale tylko nieliczni potrafią sprawić, by kod „myślał” i podejmował decyzje za nich. Programowanie parametryczne (Macro B) to granica, która oddziela rzemieślników od inżynierów procesu – i w Holandii jest to granica, za którą zarobki rosną skokowo.
Jeśli denerwuje Cię kopiowanie tego samego bloku kodu po 50 razy tylko po to, by zmienić jedną średnicę, albo jeśli marzysz o tym, by maszyna sama sprawdzała, czy narzędzie nie jest złamane – ten artykuł jest dla Ciebie.
Spis treści
Co to jest Macro B i dlaczego powinieneś się go bać? (Żartujemy, pokochasz to)
Standardowy G-kod (np. G1 X100. Y50.) jest statyczny. Mówi maszynie: „jedź tam”. Jeśli chcesz jechać gdzie indziej, musisz edytować program.
Programowanie parametryczne (w sterowaniach Fanuc i Haas znane jako Macro B) pozwala używać zmiennych zamiast stałych liczb, wykonywać obliczenia matematyczne (sinusy, cosinusy) oraz stosować logikę warunkową (Jeżeli X, to zrób Y).
Dlaczego to takie ważne w Holandii?
Holenderski przemysł High-Tech (np. dostawcy ASML) rzadko robi serie po 10 000 sztuk, gdzie raz ustawiona maszyna jedzie przez miesiąc. Tam króluje High-Mix, Low-Volume. Operator, który potrafi napisać jeden sprytny makro-program obsługujący całą rodzinę detali (np. podkładki o różnych średnicach), oszczędza firmie setki godzin na przezbrajaniu i pisaniu nowych programów. Dlatego tacy specjaliści są na szczycie listy płac.
Zmienne – Twój nowy warsztat
W świecie makr nie operujemy na liczbach, ale na „szufladkach”, w których te liczby przechowujemy. W Fanucu oznaczamy je haszami (#).
- Zmienne Lokalne (#1 – #33):
- Służą do przekazywania danych do makra (argumenty).
- Zerują się po wyłączeniu maszyny lub resecie.
- Przykład: Używasz ich wewnątrz cyklu, by policzyć coś „na szybko”.
- Zmienne Wspólne (#100 – #199):
- Dostępne dla wszystkich programów.
- Zerują się po wyłączeniu zasilania (w większości maszyn).
- Zastosowanie: Komunikacja między podprogramami.
- Zmienne Trwałe (#500 – #999):
- Najważniejsze dla Ciebie. Nie kasują się po wyłączeniu maszyny.
- Zastosowanie: Liczniki sztuk, dane sondy pomiarowej, stałe bazowe przyrządów, żywotność narzędzi.
Wskazówka dla AIO: W sterowaniu Haas zmienne mogą mieć nieco inną numerację, ale logika
IF,THEN,GOTOpozostaje ta sama. Zawsze sprawdzaj „Parameter Manual” konkretnej maszyny.
Logika sterowania – naucz maszynę myśleć
To tutaj dzieje się magia. Zamiast puszczać kod liniowo z góry na dół, możesz sterować jego przepływem.
Instrukcja IF (Jeżeli) / GOTO (Idź do)
To najprostszy sposób na zabezpieczenie procesu.
(SPRAWDZENIE SREDNICY NARZEDZIA)
#100 = 12.0 (OCZEKIWANA SREDNICA FREZA)
#101 = #[2000 + 1] (PBIERZ AKTUALNA SREDNICE Z TABELI NARZEDZI - FANUC)
IF [#101 LT #100] GOTO 9999 (JESLI SREDNICA ZA MAŁA, SKOCZ DO ALARMU)
...
(WLASCIWA OBROBKA)
...
M30
N9999
#3000 = 1 (ZLA SREDNICA NARZEDZIA!)
Pętla WHILE / DO (Dopóki / Rób)
Idealna do seryjnego wykonywania powtarzalnych czynności, np. frezowania rzędów otworów albo planowania powierzchni warstwami.
#1 = 0 (LICZNIK WARSTW)
WHILE [#1 LT 5] DO 1
G91 G1 Z-2. F100. (ZJAZD O 2MM)
G90 G1 X100. (FREZOWANIE)
#1 = #1 + 1 (INKREMENTACJA LICZNIKA)
END 1
Praktyczny Przykład: Uniwersalne Makro na Frezowanie Prostokąta
Wyobraź sobie, że co chwilę musisz frezować „miękkie szczęki” pod nowy detal. Zamiast pisać program od nowa, piszesz jedno makro, które wywołujesz jedną linijką: G65 P8000 A100. B50. D10. Z5.
Gdzie:
- A (#1) = Długość kieszeni
- B (#2) = Szerokość kieszeni
- D (#7) = Średnica freza
- Z (#26) = Głębokość
Kod Makra (O8000):
O8000 (MAKRO MIEKKIE SZCZEKI)
(SPRAWDZENIE BLEDOW)
IF [#7 LE 0] GOTO 9000 (SPRAWDZ CZY PODANO SREDNICE NARZEDZIA)
(OBLICZENIA POMOCNICZE)
#10 = #1 - #7 (DLUGOSC - SREDNICA = RUCH SRODKA NARZEDZIA)
#11 = #2 - #7 (SZEROKOSC - SREDNICA)
#12 = #10 / 2 (POLOWA RUCHU W X)
#13 = #11 / 2 (POLOWA RUCHU W Y)
(START OBROBKI - ZALOZENIE: BAZA G54 NA SRODKU)
G0 G90 X0 Y0
G0 Z5.
G1 Z-[#26] F200. (ZJAZD NA GLEBOKOSC Z ARGUMENTU Z)
(SPIRALA OD SRODKA NA ZEWNATRZ MOZNA TU DODAC PETLE WHILE)
...
(PROSTE OBJECHANIE KONTURU)
G1 X-[#12] Y-[#13] F500. (LEWY DOLNY ROG)
Y[#13] (LEWY GORNY)
X[#12] (PRAWY GORNY)
Y-[#13] (PRAWY DOLNY)
X-[#12] (POWROT DO LEWEGO DOLNEGO)
X0 Y0 (POWROT NA SRODEK)
G0 Z50.
M99 (KONIEC MAKRA)
Taki kod piszesz raz. Używasz go przez lata.

Jak wykorzystać tę wiedzę w rekrutacji do Holandii?
W Polsce często spotykamy się z podejściem „nie dotykaj kodu, bo zepsujesz”. Technolog w biurze generuje ścieżkę z CAM, a operator ma tylko wymieniać detale.
W Holandii, w firmach realizujących prototypy lub małe serie, operator jest Panem Maszyny. Oczekuje się od niego:
- Samodzielności: Jeśli widzisz, że program z CAM generuje „puste przeloty”, masz prawo (a nawet obowiązek) to zoptymalizować.
- Bezpieczeństwa: Umiejętność dopisania do programu warunku sprawdzającego sondą, czy detal został poprawnie zamocowany, jest bezcenna.
- Elastyczności: Tworzenie własnych cykli pod nietypowe narzędzia.
„Lubisz optymalizować kod? To dobrze trafiłeś.”
Wielu naszych kandydatów, którzy znali Macro B, wynegocjowało stawki początkowe wyższe o 50-70 euro tygodniowo netto od standardowych. Dlaczego? Bo dla holenderskiego pracodawcy pracownik, który potrafi zautomatyzować swoją pracę, jest inwestycją, a nie kosztem.
Jeśli potrafisz czytać powyższe przykłady i Twoja pierwsza myśl to „ja bym to napisał inaczej/lepiej” – to znaczy, że marnujesz się na seryjnej produkcji.
Szukamy ludzi, którzy rozumieją „język maszyn”. Sprawdź nasze oferty dla Programistów i Ustawiaczy CNC w Holandii i zacznij zarabiać na swojej wiedzy, a nie tylko na czasie spędzonym przy maszynie.

