Programowanie maszyn sterowanych numerycznie CNC, podstawy programowania parametrycznego dla sterowników FANUC i Sinumerik, porady, wskazówki, przydatne wzory i tabele, podstawy obsługi aplikacji CAD/CAM oraz symulatorów CNC.

G02, G03 - interpolacja kołowa

G02, G03 – interpolacja koÅ‚owa

Wykonywanie łuków za pomocą interpolacji kołowej G02/G03, jest jedną z podstawowych czynności programistycznych dla obrabiarek CNC. Kluczem do prawidłowego zaprogramowania takiej obróbki jest znajomość kilku elementów :
Tabela otworów pod gwint

Tabela otworów pod gwint

Otwory pod gwinty – tabela doboru wierteÅ‚ pod gwinty
Alfabet CNC

Alfabet CNC

Znajomość alfabetu CNC, czyli gkodu (g code) , jest czymÅ›, bez czego nie można myÅ›leć o profesjonalnym programowaniu maszyn CNC. OczywiÅ›cie bycie dobrym programistÄ… to również posiadanie wiedzy z zakresu materiaÅ‚oznawstwa, czy matematyki, ale gkod jest swego rodzaju ‚spoiwem’, które łączy wszystkie te elementy w jednÄ…, funkcjonalnÄ… caÅ‚ość – program....


Bardzo prosty program pokazujący możliwości drzemiące w programowaniu parametrycznym. Program pisany dla sterownika Fanuc, w wersji bardzo uproszczonej, nie uwzględniający korekcji promienia G41/G42. W naszym przykładzie wykonamy piramidke 3-piętrową, o krawędzi a =10mm.

Bedziemy potrzebowali opracowac prosty algorytm, wyliczający długość krawędzi dla danego piętra piramidki. W naszym programie oznaczymy tą wartość parametrem #4. Wygląda to tak :

    #1 – dÅ‚ugość krawÄ™dzi a,
    #2 – ilość piÄ™ter piramidki,
    #4 – szukana dÅ‚ugość krawÄ™dzi dla danego piÄ™tra piramidki.

Po prostych działaniach otrzymujemy #4= #1 (1+2(#2-1)).
Dla sprawdzenia wyliczamy z powyższego równania wartość dÅ‚ugoÅ›ci krawÄ™dzi dla każdego z piÄ™ter piramidki, dziÄ™ki czemu widzimy, że krawÄ™dź… :

    3-ego, najniższego piÄ™tra bÄ™dzie miaÅ‚a dÅ‚ugość 50 – 5a
    2-ego piętra będzie miała długość 30 -3a
    1-ego, najwyższego piÄ™tra bÄ™dzie miaÅ‚a dÅ‚ugość 10 – to oczywiÅ›cie jest nasza wartość ‚a’ deklarowana na poczÄ…tku programu

Wszystko siÄ™ zgadza.

Możemy więc przystąpić do pisania programu :

N10 #1=10 (dlugosc krawedzi 'a')
N15 #2=3 (ilosc pieter piramidki)
N20 #3=0.5 (ap)
N25 #4=#1[1+2[#2-1]] (długość krawędzi dla danego piętra piramidki)
N30 #5=#1*#2-#1/2 (punkt startowy obróbki danego piętra piramidki)
N35 #6=0 
N40 G90 G0 Z5
N45 G90 G0 X[#5] Y[#5]
N50 G90 G1 Z[-#6]
N55 G91 G1 X[-#4]
N60 G91 G1 Y[-#4]
M65 G91 G1 X[#4]
N70 G91 G1 Y[#4]
N75 #6=#6+#5
N80 IF[#6LE#2]GOTO50
N85 #2=#2-1
N90 IF[#2GE0]GOTO25
N95 G90 G0 Z5
N100 M30

Może się zdarzyć, że wyrażenia typu #4=#1(1+2(#2-1)) okażą się dla maszyny zbyt złożone, będziemy więc musieli je ‚porozbijać’ na elementy pierwsze.
Nasze makro wykorzystujemy podajÄ…c trzy wartoÅ›ci – dÅ‚ugość boku ‚a’, ilość piÄ™ter piramidki i ap obróbki.

Poprzedni wpisInterpolacja helikalna / spiralna Nastepny wpisKompensacja promienia G41, G42

4 comments

  1. widget says:

    Wrz 24, 2012

    Wydaje mi siÄ™, że wyrażenie ” #4=#1(1+2(#2-1))” na części sterowaÅ„ (fanuc, mazak), nie wykona nic wiÄ™cej niż #4=#1, gdyż nawiasy „()” zawierajÄ… komentarze, a w nawiasach „[]” wpisuje siÄ™ różne wyrażenia matematyczne, czy też warunki przy polecaniach warunkowych.

  2. Marcin Dudek says:

    Wrz 24, 2012

    SÅ‚uszna uwaga – już poprawione. Pozdrawiam.

  3. widget says:

    Wrz 28, 2012

    Jeszcze komentarze daj w nawiasy „( )”, żeby ktoÅ› nie miaÅ‚ problemu jak to wrzuci na maszynÄ™ . Pozdrawiam.

  4. stel says:

    Maj 19, 2013

    #4= #1 (1+2(#2-1)).
    skąd się wzięło takie wyliczenie?
    Mógłby ktoś to wytłumaczyć?

Skomentuj

Musisz byæ zalogowany by moc komentowaæ..