36
2.PODSTAWY PROGRAMOWANIA OBRABIAREK CNC 2.1. Komputerowe sterowanie numeryczne Układy sterujące dekodują program sterujący i przetwarzają wprowadzone instrukcje geometryczne i technologiczne na odpowiednie sygnały elektryczne. Po uzyskaniu zezwolenia na wykonanie ruchu impulsy sterujące przekazywane są do zespołów sterowanych obrabiarki, np. do silników napędu głównego czy napędów ruchu posuwowego. Systemy pomiarowe przekazują z kolei do układu sterowania dokładne informacje np. odnośnie aktualnej pozycji zespołu sterowanego. Przedstawiona zasada działania odnosi się zarówno do sterowania numerycznego starszego typu (NC), jak również do stosowanego obecnie komputerowego sterowania numerycznego CNC. Sterowanie CNC cechuje się dodatkowo wykorzystaniem układów mikroprocesorowych do przetwarzania informacji. Dzięki temu układy CNC dają możliwość większej, w porównaniu do układów NC, automatyzacji obróbki m.in. poprzez kompensację błędów, kodowanie narzędzi czy nadzorowanie ich zużycia. Na rys. 3.1 przedstawiono porównanie sterowań NC i CNC pod kątem możliwości realizacji określonych zadań. Choć układy CNC różnią się budową, można jednak w nich wyróżnić pewne charakterystyczne elementy: 1) mikroprocesor służący do obliczeń, 2) monitor umożliwiający programowanie, symulację programu sterującego i diagnozowanie stanu technicznego układu sterowania i obrabiarki, 3) pamięć RAM (umożliwiającą zapis i odczyt) do przechowywania wielu programów sterujących, programu PLC, wartości korekcji oraz innych parametrów, 4) interfejs umożliwiający komunikację z innymi urządzeniami (np. wprowadzanie programów sterujących, danych maszynowych), 5) programowalny sterownik logiczny PLC umożliwiający komunikacją z obrabiarką. Rys. 3.1. Porównanie sterowań NC i CNC [24] Budowa układu CNC obejmuje przede wszystkim funkcjonalną część komputera składającą się z mikroprocesora i pamięci powiązanych magistralą, natomiast pozostałe urządzenia i elementy podłączane są poprzez interfejs zewnętrzny i PLC (rys. 3.2). Bardzo istotną rolę w układach sterowania odgrywa również oprogramowanie systemowe. Podstawowymi zaletami układów CNC są szybkość obliczeń i duża elastyczność w zakresie programowania przemieszczeń oraz technologii obróbki. Niektóre układy CNC zapewniają również graficzne wspomaganie programowania.

2.PODSTAWY PROGRAMOWANIA OBRABIAREK CNC2.3. Metody programowania obrabiarek CNC Programowanie obrabiarek CNC polega na utworzeniu programu sterującego w odpowiednim języku i formacie

  • Upload
    others

  • View
    15

  • Download
    1

Embed Size (px)

Citation preview

  • 2.PODSTAWY PROGRAMOWANIA OBRABIAREK CNC

    2.1. Komputerowe sterowanie numeryczne

    Układy sterujące dekodują program sterujący i przetwarzają wprowadzone instrukcje geometryczne i technologiczne na odpowiednie sygnały elektryczne. Po uzyskaniu zezwolenia na wykonanie ruchu impulsy sterujące przekazywane są do zespołów sterowanych obrabiarki, np. do silników napędu głównego czy napędów ruchu posuwowego. Systemy pomiarowe przekazują z kolei do układu sterowania dokładne

    informacje np. odnośnie aktualnej pozycji zespołu sterowanego. Przedstawiona zasada działania odnosi się zarówno do sterowania numerycznego starszego typu (NC),

    jak również do stosowanego obecnie komputerowego sterowania numerycznego CNC. Sterowanie CNC cechuje się dodatkowo wykorzystaniem układów mikroprocesorowych do przetwarzania informacji. Dzięki temu układy CNC dają możliwość większej, w porównaniu do układów NC, automatyzacji obróbki m.in. poprzez kompensację błędów, kodowanie narzędzi czy nadzorowanie ich zużycia. Na rys. 3.1 przedstawiono

    porównanie sterowań NC i CNC pod kątem możliwości realizacji określonych zadań.

    Choć układy CNC różnią się budową, można jednak w nich wyróżnić pewne charakterystyczne elementy: 1) mikroprocesor służący do obliczeń, 2) monitor umożliwiający programowanie, symulację programu sterującego i diagnozowanie stanu

    technicznego układu sterowania i obrabiarki, 3) pamięć RAM (umożliwiającą zapis i odczyt) do przechowywania wielu programów sterujących,

    programu PLC, wartości korekcji oraz innych parametrów, 4) interfejs umożliwiający komunikację z innymi urządzeniami (np. wprowadzanie programów sterujących,

    danych maszynowych), 5) programowalny sterownik logiczny PLC umożliwiający komunikacją z obrabiarką.

    Rys. 3.1. Porównanie sterowań NC i CNC [24]

    Budowa układu CNC obejmuje przede wszystkim funkcjonalną część komputera składającą się z mikroprocesora i pamięci powiązanych magistralą, natomiast pozostałe urządzenia i elementy podłączane są poprzez interfejs zewnętrzny i PLC (rys. 3.2). Bardzo istotną rolę w układach sterowania odgrywa również

    oprogramowanie systemowe. Podstawowymi zaletami układów CNC są szybkość obliczeń i duża elastyczność w zakresie

    programowania przemieszczeń oraz technologii obróbki. Niektóre układy CNC zapewniają również graficzne wspomaganie programowania.

  • Rys. 3.2. Schemat budowy układu CNC [23]

    Sterowanie numeryczne DNC

    Sterowanie DNC (Distributed Numerical ControI) jest to tzw. rozłożone sterowanie numeryczne* i

    stanowi hierarchiczny system do rozdzielania danych między komputerem zarządzającym wytwarzaniem a

    układem sterowania numerycznego CNC (rys. 3.3).

    Łączność pomiędzy poszczególnymi składnikami systemu DNC realizowana jest najczęściej poprzez

    sieci komputerowe. W takim przypadku pomija się nośniki informacji, takie jak taśmy perforowane czy

    dyskietki. Sterowanie numeryczne DNC umożliwia określony dostęp technologa lub programisty poprzez

    komputer zarządzający do układu sterującego w obrabiarce.

    Dzięki zastosowaniu sterowania DNC można uzyskać poprawę organizacji pracy, łatwy dostęp do

    programów oraz pomija się

    Sterowanie DNC było wcześniej określane jako „bezpośrednie sterowanie numeryczne" (z ang. Direct Numerical Control). Obecne nazewnictwo zgodne jest z Polską Normą. konieczność bezpośredniego (przez operatora) wczytywania programów lub parametrów nastawnych

    do układu sterowania.

    Rys. 3.3. Przykładowa struktura sterowania DNC

  • Sterowanie adaptacyjne AC

    Pojęcie sterowania adaptacyjnego AC {Adaptive Control) określa rodzaj sterowania, w którym

    parametry procesu obróbki określone na etapie jego projektowania są modyfikowane ze względu na rzeczywiste warunki tego procesu oraz uzyskiwane wyniki obróbki (rys. 3.4).

    Rys. 3.4. Przepływ informacji w

    sterowaniu adaptacyjnym

    W sterowaniu adaptacyjnym następują automatyczne zmiany parametrów skrawania (posuw, prędkość

    obrotowa wrzeciona, dosuw) w zależności np. od sił skrawania, drgań, zużycia narzędzia, chropowatości powierzchni lub błędu kształtu (rys. 3.5).

    Rys. 3.5. Schemat przykładowego układu sterowania adaptacyjnego w procesie frezowania

    2.2. Czynności składające się na tworzenie programu sterującego

    Na proces programowania obróbki składa się szereg czynności poprzedzających:

    Zapoznanie się z rysunkiem wykonawczym

    Przed przystąpieniem do programowania programista powinien się zapoznać z rysunkiem wykonawczym danej części. Na rysunku tym zawarte są niezbędne informacje geometryczne i techno-logiczne dotyczące przedmiotu obrabianego.

    Utworzenie planu obróbki

    Kolejną czynnością poprzedzającą programowanie jest przygotowanie planu obróbki. Przygotowanie planu obróbki odbywa się na podstawie procesu technologicznego. Warto zauważyć, że niezbędna jest współpraca pomiędzy technologiem i programistą na poziomie przygotowania procesu technologicznego.

  • 2.3. Metody programowania obrabiarek CNC

    Programowanie obrabiarek CNC polega na utworzeniu programu sterującego w odpowiednim języku i formacie na wymaganym nośniku informacji. Program taki zawiera informacje niezbędne do wykonania operacji technologicznych, zabiegów lub pojedynczych przejść w procesie obróbki.

    Ponieważ samo programowanie obrabiarek CNC jest działaniem technicznym zmierzającym do utworzenia programu sterującego, stąd możemy wyróżnić odmienne metody programowania. Choć istnieje wiele kryteriów klasyfikacji metod programowania obrabiarek CNC, najwłaściwszym jednak wydaje się ich

    podział ze względu na sposób przetwarzania danych. Można tutaj wyodrębnić programowanie ręczne i programowanie automatyczne. Niekiedy mówi się również o programowaniu dialogowym, którego nie da się jednoznacznie przypisać do żadnej z wcześniej wspomnianych metod.

    2.3.1. Programowanie ręczne (bezpośrednie)

    Programowanie ręczne polega na bezpośrednim utworzeniu programu sterującego w języku i formacie dostosowanym do danej obrabiarki z określonym układem sterowania. Przy programowaniu ręcznym programista/technolog, realizując czynności składające się na tworzenie programu sterującego, korzysta bezpośrednio z informacji składających się na technologiczne bazy wiedzy (poradniki, tablice materiałowe,

    dokumentacje techniczno-ruchowe obrabiarek, katalogi narzędzi, elektroniczne bazy narzędziowe itp.) (rys. 3.6).

    2.3.2. Programowanie automatyczne

    Programowanie automatyczne charakteryzuje się dwuetapowym przetwarzaniem danych (rys. 3.7). W pierwszym etapie (procesor) tworzone są dane pośrednie, które stanowią wielkość wejściową do drugiego etapu (postprocesor). Dopiero na etapie postprocesora, poprzez adaptację danych pośrednich do konkretnej obrabiarki, tworzony jest program sterujący.

    Rys. 3.6. Schemat programowania ręcznego

  • Rys. 3.7. Schemat sterowania automatycznego

    W etapie procesora, na podstawie programu źródłowego lub modelu CAD przedmiotu obrabianego, dokonuje się obliczeń geometrycznych i technologicznych, często wykorzystując przy tym bazy danych oraz automatyczny dobór parametrów skrawania. Programy źródłowe tworzy się w określonym języku programowania (APT, EXAPT, GTJ, ...), w którym

    dokonuje się zapisu takiego programu za pomocą odpowiednich instrukcji geometrycznych i technologicznych (rys. 3.8). Przetworzenia programów źródłowych można dokonywać w aplikacjach przeznaczonych dla danego języka, umożliwiających również programowanie w trybie interaktywnym.

    Rys. 3.8. Fragment programu źródłowego w języku GTJ z zaznaczeniem opisu geometrii i technologii obróbki

    Programowanie automatyczne CAD/CAM wymaga utworzenia modelu przedmiotu obrabianego w odpowiednim systemie CAD (rys. 3.9). Tak utworzony model importuje się do systemu CAM (rys. 3.10). Kolejnym krokiem jest import lub automatyczne utworzenie modelu półfabrykatu i wyznaczenie geometrii,

    w postaci cech ob-róhki (np. kieszenie, stemple), profili i punktów, niezbędnej dla automatycznego utworzenia torów ruchu narzędzi.

    Tworzenie torów ruchu narzędzi sprowadza się do wyboru określonego narzędzia oraz definicji odpowiedniego cyklu obróbkowego. Na tym etapie, oprócz obliczeń geometrycznych dokonywanych przez system, możliwy jest również automatyczny dobór parametrów skrawania.

  • Rys. 3.9. Model przedmiotu do obróbki utworzony w systemie CAD

    Rys. 3.10. Przykład automatycznego programowania w systemie Edge-CAM

    Współczesne systemy komputerowego wspomagania wytwarzania CAM cechuje duża

    elastyczność w zakresie doboru cykli obróbkowych jak również ich definicji oraz możliwość symultanicznej (jednoczesnej) obróbki wieloosiowej. Ponadto weryfikacja obróbki na wirtualnej maszynie zapewnia większe bezpieczeństwo podczas pierwszego uruchomienia programu na rzeczywistej obrabiarce CNC (rys. 3.11).

    Współczesne systemy komputerowego wspomagania wytwarzania CAM cechuje duża elastyczność w zakresie doboru cykli obróbkowych jak również ich definicji oraz możliwość symultanicznej (jednoczesnej) obróbki wieloosiowej. Ponadto weryfikacja obróbki na wirtualnej

    maszynie zapewnia większe bezpieczeństwo podczas pierwszego uruchomienia programu na rzeczywistej obrabiarce CNC (rys. 3.11).

    Rys. 3.11. Przykład weryfikacji obróbki w systemie CAM

    ! «. eto, ttu

  • 2.3.3. Programowanie dialogowe

    Programowanie dialogowe polega na programowaniu pełnych cykli obróbkowych bezpośrednio na układzie sterowania poprzez określenie wymaganych parametrów opatrzonych najczęściej grafiką pomocniczą. Układ sterowania zapewnia najczęściej pełną kontrolę wpisu, sprawdzając jego dopuszczalność, zakres wartości parametrów oraz ich alternatywność (zależności logiczne) (rys. 3.12).

    Rys. 3.12. Przykład programowania dialogowego cyklu szlifowania wgłębnego (PCProCAM)

  • 3.3. Podstawy programowania ręcznego układów CNC Sinumerik na bazie kodu ISO W przypadku programowania ręcznego obrabiarek CNC język i format instrukcji stosowanych w programie

    sterującym zgodny jest najczęściej ze standardami określonymi w międzynarodowych normach ISO

    {International Standard Organizatioń) - można wtedy mówić o programowaniu na bazie kodu ISO.

    Ponieważ wspomniane normy definiują tylko pewien podstawowy zestaw poleceń i nie definiują szczegółowo

    wszystkich zasad programowania, stąd istnieją różnice pomiędzy programowaniem układów sterowania

    różnych producentów. W dalszej części niniejszego rozdziału zostaną przedstawione podstawy

    programowania ręcznego układów CNC Sinumerik na bazie kodu ISO. Zestawienie tych wiadomości z

    przedstawio nym w końcowej części rozdziału skróconym opisem funkcji programowania dla innych układów

    sterowania pozwoli czytelnikowi na wykorzystanie zdobytej wiedzy również do programowania układów CNC

    innych producentów.

    3.3.1. Struktura programu sterującego

    Polska Norma (PN) określa program sterujący nazwą program operacji technologicznej. Program operacji technologicznej stanowi uporządkowany zbiór instrukcji w języku i formacie

    wymaganym przez układ sterowania automatycznego, zapisany na odpowiednim nośniku i odpowiednio kompletny do wykonywania ustalonych działań przez układ sterowania automatycznego. Instrukcje w

    programie sterującym określają wielkości i prędkości przesunięć. Podprogram jest to fragment programu operacji technologicznej, który przez odpowiednie polecenie

    sterujące może być wywołany do realizacji. Programy podzielone są na bloki danych opisujące kolejne sekwencje procesu obróbki (rys. 3.13).

    Bloki z kolei składają się ze słów. Pierwszy blok danych nosi nazwę bloku nagłówkowego i zawiera informacje dotyczące nazwy programu lub podprogramu oraz etykietę identyfikującą rodzaj danych.

    Charakterystyczny jest również ostatni blok danych - blok końcowy - zawierający obowiązkowo funkcję pomocniczą określającą koniec programu (M2 lub M30) lub podprogramu (Ml7).

    Rys. 3.13. Struktura programu sterującego

  • Słowa składają się z litery określającej typ słowa, tzw. adres, po której następuje liczba określająca wartość

    wyrażoną przez słowo lub numer funkcji, podprogramu, narzędzia, parametru itp. Adres identyfikuje dane zawarte w słowie (rys. 3.14).

    Rys. 3.14. Struktura bloku danych

    Słowa określone adresem i wartością liczbową definiują w bloku danych określone funkcje (pomocnicze,

    przygotowawcze itd.). Należy przy tym pamiętać, że działanie tych funkcji może być zróżnicowane ze

    względu na aktywność i kolejność ich wykonania w bloku danych. Ze względu na aktywność słowa można

    podzielić na:

    • słowa modalne (międzyblokowe) - słowa te zachowują swoją aktywność do czasu zapisania pod adresem tego słowa innej wartości liczbowej, np. posuw określony słowem Fxx działa tak długo,

    aż zostanie wprowadzona jego nowa wartość.

    • słowa niemodalne (blokowe) - słowa te są aktywne tylko w danym bloku.

    Słowa niemodalne, ze względu na kolejność ich wykonania w bloku danych, można ponadto podzielić na:

    • słowa przedblokowe - np. funkcja M3 (włączenie obrotów w kierunku dodatnim) wykonywana jest

    przed wykonywaniem pozostałych słów w bloku,

    • słowa poblokowe - np. funkcja M30 (stop programu) wykonywana jest po wykonaniu wszystkich

    słów w bloku.

    Układy CNC Sinumerik umożliwiają również stosowanie adresów rozszerzonych składających się z

    rozszerzenia numerycznego danej osi lub wrzeciona lub z kilku liter alfabetu łacińskiego z zapisem w formie

    wyrażenia arytmetycznego (ze znakiem =).

    Przykład:

    X2=4 0; współrzędna ruchu w osi X2,

    SI=520; prędkość obrotowa dla wrzeciona nr 1,

    CR=10 . 6; promień łuku dla interpolacji kołowej,

    M2=5; zatrzymanie wrzeciona nr 2

    Każdy blok programu rozpoczyna się od litery adresowej N lub znaku :, po których następuje liczba

    określająca numer bloku. Numeracja bloków nie musi być uporządkowana według kolejności występowania

    w programie, w takim przypadku jednak mogą pojawić się problemy przy programowaniu z wykorzystaniem

    pętli programowych, jak również w przypadku operacji „szukania bloku".

    Przykład:

  • Blok oznaczany symbolem : nosi nazwę bloku głównego. Od tego bloku możliwe jest

    bezpieczne rozpoczęcie programu bez względu na wykonanie lub niewykonanie bloków

    poprzedzających.

    Możliwe jest również warunkowe wykonanie bloku. W takim przypadku blok rozpoczyna się

    od znaku /. Włączenie odpowiedniej opcji w układzie sterowania powoduje opuszczenie takiego bloku

    w trakcie wykonywania programu.

    Przykład:

    Programowanie komentarzy

    Program może zawierać również komentarze stanowiące określone opisy słowne nie analizowane

    przez układ sterowania w trakcie wykonywania programu, pozwalające jednak na znaczne zwiększenie

    czytelności tworzonego programu oraz umieszczenie w programie informacji identyfikujących określone

    elementy programu dla operatora. Komentarze umieszcza się w osobnej linii programu lub na końcu

    bloku danych po znaku ;.

    Program może ponadto zawierać polecenia specjalne, jak np. wyświetlanie komunikatu lub pomiar

    czasu.

  • Programowanie komunikatów

    Dla zapewnienia osobie obsługującej informacji w trakcie wykonywania programu sterującego

    istnieje możliwość zaprogramowania określonych komunikatów, które będą wyświetlane na ekranie

    układu sterowania CNC. Wyświetlenie komunikatu może nastąpić w trakcie wykonywania określonego

    bloku danych poprzez wprowadzenie słowa MSG, po którym w nawiasach i cudzysłowie wprowadza się

    tekst, który ma zostać wyświetlony (maksymalnie 124 znaki)

    - MSG („Tekst który ma zostać wyświetlony"). Komunikat może zostać skasowany przez MSG ().

  • Nazwa programu i podprogramu

    Nazwę programu określa się w bloku nagłówkowym. Format tego bloku zależy od rodzaju układu sterowania i może przybierać różną postać. Szczególnie istotne jest zachowanie określonego formatu bloku nagłówkowego przy transmisji programu sterującego z zewnętrznego nośnika danych. Należy wówczas oprócz nazwy programu lub podprogramu podać etykietę identyfikującą rodzaj danych (oprócz programu

    głównego lub podprogramu można przesyłać do układu sterowania wartości parametrów zmiennych, dane maszynowe, wartości rejestrów narzędziowych, przesunięcia punktów zerowych itp.).

    W przypadku układów CNC SINUMERIK blok nagłówkowy może przyjmować następującą postać:

    %_N_PROGRAM_MPF - dla programu głównego,

    %_N_PODPROG_SPF - dla podprogramu.

    Przed kodem określającym nazwę programu umieszcza się znak % oznaczający początek programu

    oraz zespół znaków _N_, od którego rozpoczyna się nazwa zapisywana w pamięci układu CNC. Nazwy

    programów lub podprogramów (np. PROGRAM, PODPROG) mogą zawierać znaki 0 ... 9, A. .. Z, a... z oraz _ i

    nie mogą przekraczać długości 24 znaków. Na końcu bloku nagłówkowego umieszcza się etykietę

    identyfikującą _MPF (Main Program File) programu głównego lub _SPF (Sub Program File) podprogramu. Przykład:

    Początek programu głównego o nazwie

    WAŁEK2

    Początek podprogramu o nazwie ROWEK 1

  • Symbole stosowane w programie sterującym

    Symbole literowe:

    v w x y z

    Symbole cyfrowe: 0 1 2 3 4 5 6 7 8 9

    Symbole specjalne: % ( ) [ ] < > : = / * + -"'$_?!.,;&

    Kolejność słów w bloku

    Chociaż obecnie produkowane układy sterowania mogą realizować programy z dowolnie ułożonymi

    słowami w bloku, jednak ze względu na przejrzystość i łatwość kontroli zaleca się stosowanie kolejności

    przedstawionej poniżej:

    N... G... X... Y... Z . . . I... J... K... F... S. . . T. . . D. . . M. . . H. . .

    Parametry

    Programowanie z wykorzystaniem parametrów umożliwia utworzenie programu sterującego, w którym wartości liczbowe występujące w słowie określone sąjako zmienne.

    R - adres parametru

    Można określić parametry od R0= do R99=.

    Parametry mogą być wprowadzane w programie lub wpisywane do rejestru w układzie sterowania.

    Programowanie parametryczne umożliwia napisanie programu sterującego np. w takiej formie, że

    będzie on służył do obróbki przedmiotów o tym samym kształcie, lecz o różnych wymiarach. Definiując

    parametr, przypisujemy mu wartość liczbową ze znakiem, po czym może on być wykorzystany zarówno w

    programie, jak i podprogramie. Przykładami podprogramów z wykorzystaniem parametrów są cykle stałe

    w układzie sterowania.

    Przykład:

  • Operacje arytmetyczne

    Przy programowaniu dostępne są operacje arytmetyczne, w których argumentami mogą być parametry lub liczby.

    + Dodawanie

    - Odejmowanie

    * Mnożenie

    / Dzielenie

    Ponadto możliwa jest zmiana znaku (np. R5=-R5) oraz podstawienie

    Przykład:

    ...

    N70 Rl=20

    . . .

    NI2 0 R3=Rl+4 R2=R1*2 Operacje arytmetyczne

    N150 GO X=(Rl+2) Z=(-R3) Operacje arytmetyczne

    . . .

    Funkcje

    Współczesne układy sterowania pozwalają również na wykorzystywanie przy programowaniu funkcji matematycznych. Daje to możliwość pomijania obliczeń przy programowaniu oraz tworzenia programów sterujących o dużej uniwersalności.

    SINO Sinus

    C O S ( ) Cosinus

    TAN() Tangens

    AS IN() Arcus sinus

    ACOS () Arcus cosinus

    ATAN() Arcus tangens

    SQRT() Pierwiastek kwadratowy

    ABS () Wartość bezwzględna

    POT () Podniesienie do kwadratu (x2)

    E X P ( ) Funkcja wykładnicza (ex)

    LN() Logarytm naturalny

    TRUNC () Wartość części całkowitej liczby ROUND () Zaokrąglenie do liczby całkowitej

    Przykład:

    . . .

    N110 Rl=20 R3=32 R7=35

    . . .

    N140 R2=SQRT(1+R1) R4=R7/COS(R3) Wykorzystanie

    funkcji

    . . .

    N190 Gl XR2 ZR4

  • 3.4.2. Podprogramy

    Podprogramy stanowią fragmenty programu sterującego, które poprzez odpowiednie polecenie

    mogą być wywołane do realizacji. Programowanie z wykorzystaniem podprogramów umożliwia

    opracowanie bardziej przejrzystych programów sterujących, zapewniając przy tym ograniczenie ich

    objętości poprzez wielokrotne wywołanie danego podprogramu (rys. 3.15). Unika się w ten sposób

    powtarzania pewnej grupy bloków danych w programie sterującym.

    Kolejność wykonania programu sterującego z wywołaniem podprogramów tworzy strukturę

    nieprzerwanego ciągu bloków danych zapisanych jednakże w różnych plikach, przez co łatwiejszych do

    edycji lub ewentualnego wykorzystania w innych programach. Wywołanie podprogramu możliwe jest

    również z poziomu innego podprogramu, tworząc w ten sposób zagnieżdżenia podprogramów.

    Struktura podprogramu jest podobna do struktury programu głównego. Różnice polegają na

    wprowadzeniu innego bloku nagłówkowego np. %_N__PODPROG_SPF i umieszczeniu w bloku końcowym

    funkcji końca podprogramu Ml 7.

    Przykład:

    %_N_PODPRl_SPF Nagłówkowy blok danych dla

    podprogramu o nazwie PODPR1

    N100 G91 Gl X55 Z17

    N110 Z34 N120 GO xlOO

    N130 M17 Blok końcowy podprogramu

    Rys. 3.15. Przykład wywołania podprogramów w programie głównym i podprogramie

    Wywołanie podprogramów może odbywać się poprzez wywołanie przez adres L lub bezpośrednio

    przez podanie nazwy podprogramu.

    Wywołanie podprogramu przez adres L umożliwia wywołanie tylko takich podprogramów, których

    nazwy są liczbami całkowitymi z przedziału 1-^9999. W przypadku tego rodzaju wywołania należy po

    adresie L podać wartość liczbową odpowiadającą nazwie programu. Możliwe jest wielokrotne wywołanie

    podprogramu poprzez podanie słowa o adresie P i wartości liczbowej odpowiadającej ilości powtórzeń.

    Przykład:

    % N PROGI MPF

    N10 . . .

    . . .

    N120 L20 P2 Dwukrotne wywołanie podpro-

    gramu o nazwie 20 (plik 20.spf)

    Wywołanie podprogramu bezpośrednio poprzez podanie jego nazwy możliwe jest w nowszych typach

    układów CNC Sinumerik. Przy tego rodzaju programowaniu nazwa może zawierać litery, liczby lub inne znaki

    alfanumeryczne.

  • Przykład:

    % N PROG2 MPF

    N10 ...

    . . .

    NI7 0 PODROG_l wywołanie podprogramu o nazwie

    PODPROG 1 (PODPROG l.spf)

    . . .

    3.4.3. Deklaracja sposobu wymiarowania

    Przez podstawowe dane wymiarowe należy rozumieć informacje dotyczące drogi (X, Y, Z), parametry

    interpolacji (I, J, K), wartości promieni okręgów (CR=), promienie biegunowe (RP=) oraz wartości przesunięcia

    punktu zerowego. W przypadku funkcji G700 i G710, oprócz podstawowych danych wymiarowych, można

    również zmieniać jednostki wymiarowania posuwu.

    Funkcja wymiarowania metrycznego G71 aktywna jest najczęściej bezpośrednio po włączeniu

    układu sterowania. Z kolei programowanie w jednostkach calowych wymaga zadeklarowania funkcji G7 0

    na początku programu lub w bloku, od którego chcemy taki sposób wymiarowania zmienić.

    Przykład:

  • Metryczny system miary

    %_N WYMIAR1_MPF

    N10 GO G90 G71 S2 0 00 M3 Deklaracja funkcji metrycznego systemu miary

    N20 Tl Dl Wprowadzenie narzędzia

    N30 X0 Y0 Z25.4 Ruch do PI (współrzędne w mm)

    N40 X76.2 Y25.4 Ruch do P2

    N50 Gl Y76.2 F500 Ruch do P3 posuw [mm/min]

    N60 X25.4 Ruch do P4

    N70 GO X0 YO M5 Ruch do P5

    N80 M30 Koniec programu

    Calowy system miary

    Deklaracja w programie sterującym płaszczyzny roboczej powoduje jednocześnie określenie płaszczyzny

    dla interpolacji kołowej i korekcji promieniowej oraz powoduje ustalenie kierunku dosuwu dla korekcji długości

    narzędzia (rys. 3.16).

  • Rys. 3.16. Orientacja płaszczyzn roboczych w układzie współrzędnych

    Określenia płaszczyzny roboczej powinno dokonywać się na początku programu sterującego. Dla

    tokarko wy eh układów CNC domyślnym ustawieniem jest funkcja G18 - płaszczyzna Z/X (rys. 3.17).

    Rys. 3.17. Domyślne usta-wienie płaszczyzny robo-czej w układach CNC przeznaczonych dla toka-rek

    Dla frezarkowych układów CNC po włączeniu domyślnie aktywna jest funkcja G17 - płaszczyzna

    X/Y (rys. 3.18).

    Rys. 3.18. Domyślne ustawienie płaszczy-zny roboczej w ukła-dach CNC przezna-czonych dla frezarek

  • DIAMON Podawanie wymiarów w osi X w średnicach; funkcja modalna

    DIAMOF Podawanie wymiarów w osi X w promieniach; funkcja mo-

    dalna

    DIAM90 Podawanie wymiarów przy programowaniu absolutnym

    (G90) w średnicach, a przy programowaniu przyrostowym

    (G91) w promieniach; funkcja modalna

    Możliwość wyboru sposobu podawania wymiarów w osi X związana jest ze sposobem wymiarowania przedmiotów do obróbki tokarskiej, dla których większość wymiarów w osi X podawana jest średnicowo. W przypadku zaprogramowania funkcji wymiarowania średnicowego (DIAMON) układ sterowania określa rzeczywiste współrzędne dla ruchu punktu charakterystycznego narzędzia w układzie współrzędnych przedmiotu obrabianego poprzez podzie-

    lenie wartości liczbowej podanej w programie sterującym przy adresie osi X (średnicy) przez 2 (promień = średnica/2). Dla aktywnej funkcji wymiarowania promieniowego (DIAMOF) już na etapie pisania programu podaje się rzeczywiste współrzędne ruchu punktów w układzie współrzędnych przedmiotu obrabianego (rys. 3.19). Rys. 3.19. Programowanie funkcji wymiarowania średnicowego i promieniowego

    Chociaż programowanie wymiarów promieniowo wymaga przeliczania wartości średnic

    podanych na rysunku, zaleca się jednak wykorzystywanie tego sposobu programowania ze

    względu na określanie w programie sterującym rzeczywistych współrzędnych punktów w

    układzie współrzędnych przedmiotu obrabianego. Wymiarowanie promieniowe wiąże się z

    wprowadzeniem na początku programu funkcji DIAMOF - dla układów tokarkowych domyślnie

    aktywne jest wymiarowanie średnicowe w osi X (DIAMON).

    Powyższe funkcje określają sposób wymiarowania współrzędnych punktu, odcinka lub

    łuku.

  • Programowanie absolutne G90

    W przypadku programowania absolutnego (bezwzględnego) kolejne punkty w programie sterującym określane są w stosunku do aktualnego układu współrzędnych przedmiotu

    obrabianego (zera programu). Jeżeli współrzędne nie zmieniają swoich wartości w odniesieniu do bloków poprzednich, można adres ruchu w danej osi pominąć.

    Przykład dla toczenia:

    Sposób określania punktów przy wymiarowaniu absolutnym dla aktywnej funkcji DI AMON (dla

    rysunku poniżej):

    PI-punktowsp. X60 ZO P2-punkt o wsp. X60 Z-15

    P3-punktowsp. X90 Z-30 P4 -punkt o wsp. X90 Z-50

    P5 -punkt o wsp. Xl30 Z-50 P6-punkt o wsp. Xl60 Z-70

    Sposób określania punktów przy wymiarowaniu absolutnym dla aktywnej funkcji DIAMOF (dla

    rysunku poniżej):

    PI -punkt o wsp. X30 ZO

    P2-punkt o wsp. X30 Z-15

    P3 - punkt o wsp. X45 Z-30 P4-punkt o wsp. X4 5 Z-50

    P5-punkto wsp.X65 Z-50 P6-punkt o wsp. X80 Z-70

    Wymiarowanie średnicowe

    % N ABSOLUTNE MPF

    ;WYMIAROWANIE ABS_SRED Komentarz

    N10 GO G90 S2000 M3 DIAMON Deklaracja funkcji wymiarowania absolutnego, X-średnice

    N20 Tl Dl Wprowadzenie narzędzia

    N30 X60 ZO Ruch ustawczy do PI

    N40 Gl Z-15 F500 Ruch roboczy do P2

    N50 X90 Z-30 Ruch roboczy do P3

  • N60 Z-50 Ruch roboczy do P4

    N70 X130 Ruch roboczy do P5

    N80 X160 Z-70 Ruch roboczy do P6

    N90 GO X170 Odjazd narzędzia o 5 mm

    NIOO M5 M30 Koniec programu

    Wymiarowanie promieniowe

    % N ABSOLUTNE MPF

    ;WYMIAROWANIE ABS_PROM Komentarz

    NIO GO G90 S2000 M3 DIAMOF Deklaracja funkcji wymiarowania absolutnego, X-promienie

    N20 Tl Dl Wprowadzenie narzędzia

    N30 X30 ZO Ruch ustawczy do PI

    N40 Gl Z-15 F500 Ruch roboczy do P2

    N50 X45 Z-30 Ruch roboczy do P3

    N60 Z-50 Ruch roboczy do P4

    N70 X65 Ruch roboczy do P5

    N80 X80 Z-70 Ruch roboczy do P6

    N90 GO X85 Odjazd narzędzia o 5 mm

    N100 M5 M30 Koniec programu

    Przykład dla frezowania:

    Sposób określania punktów przy wymiarowaniu absolutnym (dla rysunku poniżej): PI -punktowsp.

    X22 Y45 P2-punktowsp. X50 Y60 P3 - punkt o wsp. X7 5 Y25 W przypadku układu

    przestrzennego należy uwzględnić współrzędną Z.

    % N ABSOLUTNE MPF

    ;WYMIAROWANIE ABSOLUTNE Komentarz

    N10 GO G17 G90 S2000 M3 Deklaracja funkcji wymiarowania absolutnego

    N20 Tl Dl Wprowadzenie narzędzia

    . • .

  • N50 Gl X22 Y45 Ruch roboczy do PI

    N60 X50 Y60 Ruch roboczy do P2

    N70 X75 Y25 Ruch roboczy do P3

    ...

    N100 M30 Koniec programu

    Programowanie przyrostowe G91

    W przypadku programowania przyrostowego (inkrementalne-go) kolejne punkty w

    programie sterującym określane są w stosunku do punktu poprzedzającego (wprowadza się

    wartości określone względem układu współrzędnych umieszczonego w punkcie poprzedzającym).

    Jeżeli przyrosty w odniesieniu do bloków poprzednich są zerowe, można adres ruchu w danej osi

    pominąć.

    Przy programowaniu przyrostowym (G91) zaleca się pierwszy punkt docelowy ruchu

    określać we współrzędnych absolutnych (przy aktywnej G90). Zapewnia to właściwe określenie

    pozycji narzędzia względem zera programu.

    Przykład dla toczenia:

    Sposób wyrażania punktów przy wymiarowaniu przyrostowym (dla rysunku poniżej):

    PI - punkt o wsp. X30 ZO (w odniesieniu do początku układu współrzędnych)

    P2 - punkt o wsp. X0 Z-15 (w odniesieniu do PI)

    P3 - punkt o wsp. X15 Z-15 (w odniesieniu do P2)

    P4-punkt o wsp. X0 Z-20 (w odniesieniu do P3)

    P5 - punkt o wsp. X2 0 Z 0 (w odniesieniu do P4)

    P6-punkt o wsp. X15 Z-20 (w odniesieniu do P5)

    %_N PROG_MPF

    /WYMIAROWANIE PRZYROSTOWE Komentarz

    N10 GO G17 G90 S2000 M3

    DIAMOF

    Deklaracja funkcji wymiarowania absolutnego

    N20 Tl Dl Wprowadzenie narzędzia

    N30 X30 ZO Ruch ustawczy do PI

    N40 G91 Gl Z-15 F500 Deklaracja funkcji wymiarowania przyrostowego; ruch roboczy

    do P2 N50 X15 Z-15 Ruch roboczy do P3

    N60 Z-20 Ruch roboczy do P4

    N70 X20 Ruch roboczy do P5

    N80 X15 Z-20 Ruch roboczy do P6

    N90 GO X5 M5 Odjazd narzędzia o 5 mm

    NIOO M30 Koniec programu

  • Przykład dla frezowania:

    Sposób określania punktów przy wymiarowaniu absolutnym (dla rysunku poniżej):

    PI - punkt o wsp. X22 Y45 (w odniesieniu do początku układu współrzędnych - zera programu)

    P2 - punkt o wsp. X2 8 Yl 5 (w odniesieniu do PI)

    P3 -punkt o wsp. X2 5 Y-35 (w odniesieniu do P2)

    W przypadku układu przestrzennego należy uwzględnić współrzędną Z.

    Oprócz programowania ruchu we współrzędnych kartezjańskich istnieje również możliwość

    podawania położenia punktu docelowego ruchu we współrzędnych biegunowych. Ten rodzaj wymiarowania

    wymaga jednak określenia wcześniej bieguna (G110, Gili, G112), względem którego definiuje się

    % N PRÓG MPF

  • współrzędne biegunowe (kąt biegunowy AP i promień biegunowy RP). Współrzędne biegunowe obowiązują

    w płaszczyźnie roboczej określonej przy pomocy funkcji G17, G18, G19.

    Formaty bloku programu sterującego

    N. . G110(G111, G112) X... (Y...) Z...

    N. . G110(G111, G112) AP=. .. RP=...

    X, (Y) , Z — współrzędne bieguna określone we współrzędnych absolutnych (G90) lub

    przyrostowych (G91)

    AP= — kąt biegunowy w odniesieniu do poziomej osi płaszczyzny roboczej

    RP= — długość promienia biegunowego.

    Określenie polecenia ruchu do punktu wyznaczonego współrzędnymi biegunowymi ustala

    się w stosunku do zaprogramowanego wcześniej położenia bieguna. Programowanie takie polega

    na podaniu adresu polecenia ruchu (GO, Gl, G2, G3) oraz określeniu kąta biegunowego (AP=) i

    promienia biegunowego (RP=).

    Programowania położenia bieguna należy dokonywać w odrębnym bloku danych.

    Przykład dla toczenia:

    %_N_BIEGUNOWE_TOCZ_MPF

    NIO G90 S20 0 0 M3 DIAMOF Określenie wymiarowania absolutnego

    N20 Tl Dl Wprowadzenie narzędzia

  • Przykład dla frezowania:

  • Powyższe funkcje określają, w jakich jednostkach podawana będzie prędkość posuwu narzędzia

    przy toczeniu. Funkcje te najczęściej określa się już w pierwszym bloku. Prędkość posuwu wyrażona w mm/min (cal/min) nosi nazwę posuwu niezależnego, natomiast

    wyrażona w mm/obr. (cal/obr.) posuwu zależnego.

    Przykład:

    Posuw niezależny

    Posuw zależny

    Powyższe funkcje służą do programowania stałej prędkości skrawania. Uwzględnić jednak

    należy, że decydują one zarówno o prędkości skrawania (prędkości obrotowej wrzeciona), jak również o jednostkach, w jakich określana będzie wartość posuwu. Stała prędkość skrawania może być programowana tylko na tokarkach z bezstopniowym napędem głównym.

  • Bloki programu sterującego do programowania stałej prędkości skrawania

    Prędkość skrawania określona jest wzorem:

    gdzie: d = aktualna średnica toczenia [mm], n = obroty wrzeciona [obr./min].

    Układ utrzymuje stałą prędkość skrawania Vc poprzez zmianę prędkości obrotowej wrzeciona n w

    zależności od aktualnej średnicy toczenia (i (rys. 3.20).

    Rys. 3.20. Sposób określania prędkości skrawania w procesie toczenia powierzchni czołowej

    Przykład:

    N.

  • Funkcje G25/G2 6 w połączeniu z adresem S umożliwiają dolne i górne ograniczenie prędkości obrotowej

    wrzeciona. Funkcje te są szczególnie przydatne przy programowaniu stałej prędkości skrawania.

    Bloki programu sterującego

    N... G25 S...

    N... G2 6 S...

    S - Minimalna (G2 5) lub maksymalna (G2 6) wartość prędkości

    obrotowej wrzeciona.

    Przykład:

    prędkością posuwu (ruch szybki). Tego rodzaju przemieszczenie stosuje się najczęściej do pozycjonowania

    narzędzia (ruch ustawczy). Programowanie ruchu ustawczego może odbywać się we współrzędnych

    prostokątnych oraz współrzędnych biegunowych. Programowanie we współrzędnych prostokątnych może

    odbywać się zarówno przy aktywnej funkcji programowania absolutnego (G90), jak i funkcji

    programowania przyrostowego (G91).

    Bloki programu sterującego:

    N... GO X... Y... Z...

    N... GO AP=... RP=...

    X, Y, Z — współrzędne punktu docelowego ruchu określone we

    współrzędnych absolutnych (G90) lub przyrostowych (G91),

    AP= - kąt biegunowy mierzony na płaszczyźnie:

    X/Y - dla aktywnej funkcji Gl 7,

    Z/X - dla aktywnej funkcji G18 (toczenie),

    Y/Z - dla aktywnej funkcji Gl 9, RP= - promień biegunowy.

    Dodatkowo w bloku danych mogą być programowane adresy opcjonalne dotyczące wymiany

    narzędzia, posuwu itp.

    3.4.4. Programowanie funkcji ruchu

  • Przykład:

    Współrzędne absolutne

    % N PROGI MPF

    NIO G90 S2 0 0 0 M3 DIAMOF Określenie wymiarowania absolutnego

    N20 Tl Dl Wprowadzenie narzędzia

    N. . .

    N50 GO X30 ZO Ruch ustawczy do punktu docelowego

    N. . .

    N. . .

    Współrzędne przyrostowe

    % N PRÓG MPF

    NIO G91 S20 0 0 M3 DIAMOF Określenie wymiarowania przyrostowego

    N20 Tl Dl Wprowadzenie narzędzia

    N. . .

    N50 GO X-25 Z-50 Ruch ustawczy do punktu docelowego

    N. . .

    N. . .

  • % N PROGI MPF

    N10 G90 S2 00 0 M3 DIAMOF Określenie wymiarowania absolutnego

    N20 Tl Dl Wprowadzenie narzędzia

    N. . .

    N50 GO AP=210 RP=55.902 Ruch ustawczy do punktu docelowego

    N. . .

    N. . .

    Funkcja ruchu roboczego Gl określa przemieszczenie narzędzia po linii prostej do punktu

    docelowego z zaprogramowaną prędkością posuwu (funkcja F). Tego rodzaju przemieszczenie stosuje

    się najczęściej do realizacji procesu obróbki (ruch roboczy).

    Programowanie ruchu roboczego może odbywać się we współrzędnych prostokątnych oraz

    współrzędnych biegunowych. Programowanie we współrzędnych prostokątnych może odbywać się

    zarówno przy aktywnej funkcji programowania absolutnego (G90), jak i funkcji programowania

    przyrostowego (G91).

    Bloki programu sterującego:

    N. . . Gl X. . . Y. . . Z. . . F. . .

    N. . . Gl AP=. . . RP=. . . F. . .

    X, Y, Z — współrzędne punktu docelowego ruchu określone we

    współrzędnych absolutnych (G90) lub przyrostowych (G91),

    AP= — kąt biegunowy mierzony na płaszczyźnie:

    X/Y - dla aktywnej funkcji G17,

    Z/X - dla aktywnej funkcji G18 (toczenie),

    Y/Z - dla aktywnej funkcji Gl 9, RP= — promień biegunowy,

    F - prędkość posuwu wyrażona w [mm/min] (dla frezowania lub toczenia przy aktywnej G94) lub

    [mm/obr.] (dla toczenia przy aktywnej G95).

    Dodatkowo w bloku danych mogą być programowane adresy opcjonalne dotyczące wymiany

    narzędzia, posuwu itp.

    Przykład:

  • % N PRÓG MPF

    N10 G90 S2000 M3 DIAMOF Określenie wymiarowania absolutnego

    N20 Tl Dl Wprowadzenie narzędzia

    N. . .

    N50 GO X30 ZO Ruch ustawczy do punktu PI

    N60 Gl X35 Z-5 F500 Ruch roboczy do punktu P2

    N70 Z-25 Ruch roboczy do punktu P3

    N80 X60 Z-50 Ruch roboczy do punktu P4

    N. . .

    % N PRÓG MPF

    NIO G90 S2000 M3 DIAMOF Określenie wymiarowania absolutnego

    N20 Tl Dl Wprowadzenie narzędzia

    N. . .

    N50 GO AP=210 RP=55.902 Ruch ustawczy do punktu PI

    N60 Gl AP=135

    RP=(5*SQRT(2)) F500

    Ruch roboczy do punktu P2

    N70 AP=180 RP=15 Ruch roboczy do punktu P3

    N80 AP=135

    RP=(25*SQRT(2))

    Ruch roboczy do punktu P4

    N. . .

    % N PRÓG MPF

    NIO G91 S200 0 M3 DIAMOF Określenie wymiarowania przyrostowego

    N20 Tl Dl Wprowadzenie narzędzia

    N. . .

    N50 GO X-25 Z-50 Ruch ustawczy do punktu P1

    N60 Gl X5 Z-5 F500 Ruch roboczy do punktu P2

    N70 Z-20 Ruch roboczy do punktu P3

    N80 X25 Z-25 Ruch roboczy do punktu P4

    N. . .

  • Powyższe funkcje określają programowanie ruchu z zaprogramowaną prędkością posuwu (funkcja F) wzdłuż łuku

    okręgu - interpolacja kołowa. Kierunek ruchu po łuku okręgu określany jest w następujący sposób (rys. 3.21):

    • G2 — kierunek łuku jest zgodny z kierunkiem ruchu wskazówek zegara (CW),

    • G3 — kierunek łuku jest przeciwny do kierunku ruchu wskazówek zegara (CCW).

    Dla obliczenia kierunku ruchu po łuku okręgu wymagane jest określenie płaszczyzny roboczej (funkcje G17

    do G19) (rys. 3.21).

    Dla operacji toczenia kierunek ruchu po łuku okręgu określany jest jak dla aktywnej płaszczyzny

    roboczej G18. Uwzględniając możliwe przypadki obróbki „nad osią" i „pod osią", zasadę określania

    kierunku ruchu po łuku okręgu dla toczenia można przedstawić w następujący sposób (rys. 3.22):

    • dla G2 - kierunek łuku jest przeciwny do kierunku, w którym należy obrócić oś Z o kąt 90°, tak aby pokryła się z osiąX,

    • dla G3 — kierunek łuku zgodny jest z kierunkiem, w którym należy obrócić oś Z o kąt 90°, tak aby pokryła się z osiąX.

    b)

    Rys. 3.22. Określanie kierunku ruchu po łuku okręgu przy toczeniu:

    a) „ nad osią", b) ,,pod osią"

    Rys. 3.21. Określanie kierunku ruchu po łuku okręgu przy frezowaniu

  • Programowanie funkcji łuku okręgu G2/G3 za pomocą parametrów interpolacji

    Blok programu sterującego dla toczenia

    N... G2(G3) X... Z. . . I... K... F...

    Bloki programu sterującego dla frezowania

    N... G 2 ( G 3 ) G17 X... Y . . . I... J... F... N... G2(G3) G18 X... Z . . . I... K...

    F... N. . . G 2 ( G 3 ) G19 Y... Z . . . J... K... F...

    G17, G18, G19 — płaszczyzny obróbki,

    X, (Y) , Z — współrzędne końca łuku w odniesieniu do:

    • aktualnego układu współrzędnych (dla G 9 0)

    • początku łuku (dla G 91)

    I, (J) , K — parametry interpolacji określające współrzędne środka okręgu w odniesieniu do jego początku

    (interpretacja geometryczna została przedstawiona poniżej); parametry te określane są dla odpowiednich osi

    aktywnej płaszczyzny obróbki:

    • parametr I określany jest dla osi X,

    • parametr J określany jest dla osi Y,

    • parametr K określany jest dla osi Z,

    F — prędkość posuwu wyrażona w [mm/min] (dla frezowania lub dla toczenia przy aktywnej G94) lub

    [mm/obr.] (dla toczenia przy aktywnej G95).

    Przykład programowania na symbolicznych wartościach poszczególnych adresów:

  • Współrzędne absolutne

    Parametry interpolacji mogą przyjmować wartości ujemne.

    Przykład:

  • Przykład:

    % N PRZYKŁAD MPF

    N10 G17 G71 G90 Określenie płaszczyzny obróbki i wymiarowania absolutnego

    N20 T3 D8 Wprowadzenie narzędzia

    N30 S 2 0 0 0 M4 Określenie prędkości posuwu

    N40 GO XO YO Ruch do punktu zera przedmiotu obrabianego

    N50 X20 YIO Ruch do punktu PI

    N60 G3 X40 Y30 120 JO F500 Ruch do punktu P2

    N70 G2 X20 Y50 10 J20 Ruch do punktu P3

    N80 G3 X-20 Y50 1-20 JO Ruch do punktu P4

    N90 G2 X-40 Y30 1-20 JO Ruch do punktu P5

    N100 G3 X-20 YIO 10 J-20 Ruch do punktu P6

    N110 G2 X20 YIO 120 JO Ruch do punktu P7

    N120 GO X0 YO M5 Ruch do punktu zera przedmiotu obrabianego

    N140 M30

    Programowanie funkcji łuku okręgu G2/G3 za pomocą jego promienia

    Różnica pomiędzy programowaniem funkcji łuku okręgu za pomocą promienia a programowaniem za

    pomocą parametrów interpolacji polega na zastąpieniu tych parametrów I, J, K promieniem łuku CR=.

    Blok programu sterującego dla toczenia

    N... G 2 ( G 3 ) X... Z... CR=... F...

    Bloki programu sterującego dla frezowania

    N... G 2 ( G 3 ) G17 X... Y . . . CR=... F... N... G 2 ( G 3 ) G18 Z... X . . . CR=... F... N... G 2 ( G 3 ) G19 Y... Z . . . CR=... F...

    G17, G18, G19 — płaszczyzny obróbki,

    X, (Y) , Z - współrzędne końca łuku w odniesieniu do:

    • aktualnego układu współrzędnych (dla G90),

    • początku łuku (dla G91),

    CR= — promień łuku poprzedzony znakiem + lub - wg zasady:

    • + (lub bez znaku) — gdy kąt środkowy łuku jest nie większy od 180°,

    • - — gdy kąt środkowy łuku jest większy od 180°, a mniejszy od 360°,

    F — prędkość posuwu wyrażona w [mm/min] (dla frezowania lub toczenia przy aktywnej G94) lub [mm/obr.] (dla

    toczenia przy aktywnej G95).

  • Przykład programowania na symbolicznych wartościach poszczególnych adresów:

    % N PRZYKŁAD MPF

    N. . . G17 G90 . . . Określenie płaszczyzny obróbki i wymiarowania absolutnego

    N. . .

    N. . G3 X(XK) Y(YK)

    CR=(CR) F...

    Określenie współrzędnych

    i promienia dla wym. absolutnego

    N. . .

    N. . .

    % N PRZYKŁAD MPF

    N... G17 G91 ... Określenie płaszczyzny obróbki i wymiarowania przyrostowego

    N. . .

    N.. G3 X(XK-XP) Y(YK-YP)

    CR=(CR) F. . .

    Określenie współrzędnych i promienia dla wym. przyrostowego

    N. . .

    N. . .