A gyakorlat megnevezése: CNC PROGRAMOZÁS Száma: 13 Tananyag Jegyzetben: 142-192 oldal A gyakorlat célja és megszerzendo ismeretek: • Alapveto CNC programozási ismeretek megszerzése, programfuttatás CNC szerszámgépen • Rendszerelemek, számjegyvezérlési módok • Programnyelv szerkezete • Koordináta rendszerek, koordináta transzformációk, nullpontmérés • CNC nyel szerkezete, program összeállítás, program szimuláció • Vezérlési funkciók, forgácsolás CNC szerszámgépen Ez az összeállítás a gyakorlatra történo felkészülést segíti elo, nem helyettesíti az eloadásokat. Célja az, hogy a CNC szerszámgépek muködését, ISO szerinti programozását, kezelését alapszinten bemutassa. Nem foglalkozunk ebben a leírásban pl. lineráris hajtásokkal, abszolút mérorendszeres szerszámgépekkel, ún. muhelyszintu programozással, 5D-s megmunkálással, paraméteres programozással, stb. NC vezérlés, NC szerszámgép, CNC, (Computer) Numerical Control, számvezérlés NC szerszámgépen olyan elektronikus programvezérléssel ellátott szerszámgépet értünk, ahol a gyártandó alkatrésszel kapcsolatos minden a technológiai, geometria, kapcsolási információ alkatrészprogramban, valamilyen digitális adathordozón (lyukszalag, mágneslemez, mágnesszalag, RAM, flash memória stb.) van rögzítve.
Olvasó, vagy NC programmemória
NC interpreter (dekódolás) M T S
F
G X Z
I
K
Útinformációk G X Z
I
K
Közbenso tárolók Kapcsolási információk M T S
F
PLC Input
INTERPOLÁTOR
óra Output engedélyezés
Szerszámgép állapot (végállások, kapcsolási pontok)
x a(t)
z a (t)
xr
zr
kész (ready) x helyzet
Szabályozó telj. erosíto
z helyzet
Szabályozó telj. erosíto
Az ábrán kéttengelyes CNC vezérlés látható
méroegység (x irány) szervómotor (x irány)
SZERSZÁMGÉP
Ha a vezérlés rögzített logikájú elektronikával valósul meg, az eljárás neve NC, ha mikroprocesszorral, számítógéppel (szabadon programozható logikájú számvezérlés), akkor az eljárás neve CNC.
szervómotor (z irány)
méroegység (z irány)
NC-
Helyzetszabályozó
alapjel
Sebesség szabályozó
Erosíto
Motor
Mozgásátalakító
Szán
Tachométer
Útméro
Elotolási sebesség: F200 Célpozíció: X120
Helyzetszabályozó
X tengely tényleges pozíciója
Ellenorzo jel = névleges célpozíció – tényleges pozíció
Golyósorsó Sebességszabályozó
Tényleges sebesség
X
Útméro rendszer Tachogenerátor
Hajtómotor
NC program felépítése Az alkatrészprogram formája szövegfájl, melynek szintaxisa többé-kevésbé szabványos (ISO 6983). Az alkatrészprogram sorait NC mondatoknak nevezzük. Az NC mondatok elemi utasításokból: NC szavakból állnak. A szó címbol, jelbol és adatból álló karaktersorozat.
Fontosabb NC címek:
Mondatszám
1.Mondatszám (N) 2.Elokészíto funkció (G) 3.Koordináták (X,Y,Z,U,V,W,P,Q,R, A,B,C,D,E) 4. Interpolációs adatok (I,J,K) 5. Elotolás (F) 6. Fordulatszám (S) 7. Szerszámhely (T) 8. Vegyes (kiegészíto) funkciók (M)
Példa a programra: %O1001 N1 T1 M6 N2 G90 G0 G54 S1200 M3 N3 X120 Y135 N4 G43 Z150 H1 N5 Z102 N6 G1 Z70 F240 N7 G0 Z150 N8 M5 N9 M2 %
Elokészíto funkciók
Célpont koordináták
N10
G90
G01
X-15
Y30
F100
M03
1.szó
2.szó
3.szó
4.szó
5.szó
6.szó
7.szó
Cím:X
4. szó
Jel:-
Érték:15
Technológiai adatok Kapcsolási adatok
A program összeállításakor a munkadarab koordinátarendszerében kell leírni a szerszám programozott pontjának a pályáját, mégpedig minden esetben úgy, mintha a mozgásokat a szerszám végezné. Az alkatrészprogramnak tartalmaznia kell a szerszámpályák geometriai adatait, technológiai leírását és kapcsolási információkat is. A szavak sorrendje a mondaton belül tetszoleges, a mondatok végrehajtása a beírás sorrendjében történik.
NC vezérlo felépítése Mondatelokészíto, mondatfeldolgozó (NC interpreter) Ellenorzi az alkatrészprogram szintaxisát, kifejti az esetleges makró-kifejezéseket. A feldolgozott mondatok közbenso tárolóba (pufferbe) kerülnek, melybol az interpolátor és a PLC dolgozik. PLC (Programable Logic Controller) Az adott gépre, géptípusra írt PLC program, a kezeloi beavatkozások és az NC mondatfeldolgozó által küldött információk, valamint külso érzékelok, jeladók jelei alapján különbözo beavatkozó-szerveket kapcsol, pl. vezérli a szerszámcserét, munkadarab-cserét, elvégez különbözo biztonsági reteszeléseket (pl. letiltja a mozgást nyitott munkatér-ajtó, vagy nyitott vezérloszekrény-ajtó esetén) Interpolátor (digitális pályagenerátor, DPG) A szükséges gyorsítások, lassítások figyelembevételével pozíció alapjelet szolgáltat az egyes tengelyek (X, Y, Z) számára. Lehetséges interpolációs módok: lineáris interpoláció, körinterpoláció, spline interpoláció stb. Ez azt jelenti, hogy kimenetein néhány millisecundumonként megjelenik az adott pillanatban az adott tengelyen elérendo pozíció érték. Sebességszabályozó-kör. Hajtások A sebeségszabályozó-kör a mérorendszer által mért pillanatnyi pozíció, és az interpolátor által szolgáltatott pozíció alapjel alapján digitális vagy analóg sebesség alapjelet generál a hajtások számára. Lényegében ez az NC vezérlo kimenete. A hajtások valósítják meg a sebesség és áramszabályozást, illetve inverterek (ezek már erosáramú eszközök) felhasználásával vezérlik a szinkron szervomotorokat, melyek golyósorsókon keresztül mozgatják az egyes tengelyeket. Útmérorendszer Az NC szerszámgépgép útméro-rendszerét mérolécek vagy forgójeladók képezik, melyek a gép X, Y, Z stb. tengelyeinek pozícóját jelzik vissza. Ezek az érzékelok általában egy nagypontosságú osztással ellátott üveglapból és optikai érzékelokbol állnak, és relatív elmozdulások mérésére alkalmasak. Ahhoz, hogy abszolút pozíciót mérhessünk szükség van a gép bekapcsolása után ún. referenciapont-felvételre. Referenciapont-felvétel Ennek során a kiválasztott tengely rögzített, állandó sebességgel ráfut a refenciapontkapcsolóra, majd lassú sebességgel lejön a kapcsolóról és megkeresi az elso nullimpulzust. Ezt pontot jegyzi be referenciapontként, a gépi koordinátarendszer helyét kijelölo értékek automatikusan írodnak be a gépi helyzetregiszterekbe. (A nullimpulzus egy speciális jel a méroelemen.) Innentol kezdve állapíthat meg érvényes abszolút pozíciót a vezérlés.
2D/2.5D/3D
2D
3D 2? D
Amennyiben a megmunkálás során a gép mind a három tengelye egyidejüleg és egymással szinkronban mozog, 3D-s megmunkálásról beszélünk. (D=„Dimenzió” ) Ha egyszerre csak két tengely mozog, harmadik tengely pedig pozícionálást végez amikor az elso ketto áll – szakaszos mozgás -, a megmunkálás 2.5D-s (teraszos megmunkálás). Két koordináta tengely mentén az együttes mozgás 2D-s megmunkálást eredményez.
Koordináta-rendszerek
+Y +X +Z
Jobbkéz
Az egyes koordináta tengelyek programozásakor használt NC címeit a szabványok rögzítik (MSZ 7789, ISO/R 841 és a DIN 66217 alapján). Az elsodleges mozgásokat X,Y,Z a másodlagosokat U, V, W és a harmadlagosokat P, Q, R címmel kell programozni. A forgó tengelyek értelmezése: X körül A, Y körül B Z körül C. Ha pozitív X Y, Z, tengelyirányból az origó felé tekintünk, akkor az A,B,C szögek az óramutató járásával ellentétesen növekszenek. A gépi mozgásirányokat vesszovel jelöli a szabány (X’, Y’, Z’). A szerszámtengely iránya a koordinátarendszer Z tengelyirányával egyezik meg, és távolodva a munkadarabtól, növekszik.
X M
F Z
X
W
Z
Y Szerszámgép koordináta rendszere X Y W M
R R F
Z Munkadarab
Szerszámgép koordináta rendszere Géphez kötött, a Z tengely iránya a foorsó tengelyvonalával párhuzamos. Helyét a refenciaponttól a vezérlés illesztésekor jelölik ki. Jobbsodrású koordinátarendszer, X a hosszabb, Y a rövidebb tengely. Munkadarab koordináta-rendszer A munkadarab tetszoleges pontjához kötheto. A tengelyirányok értelme akkor egyezik meg a gépi elmozdulások értelmével, ha a kérdéses irányban a szerszám végzi a mozgást. Különben ellentétes értelmu. A tengelyek párhuzamosak a gépi irányokkal. Az alkatrészprogramban szereplo koordinátaértékeket mindig a munkadarab koordinátarendszerében kell megadni, mégpedig úgy, mintha a szerszám végezné a mozgást. Nullpont eltolás, munkadarab nullpont bemérés Z
Z
Munkadarab
Y X W
Y0
X0
Z0
M X Y
A gépi koordináta rendszerben a munkadarab koordináta rendszer origójának helyét a nullponteltolással jelölhetjük ki. X0 : nullponteltolás X irányban Y0 : nullponteltolás Y irányban Z0 : nullponteltolás Z irányban M: szerszámgép koordinátarendszer origója W: munkadarab koordinátarendszer origója
A munkadarab-koordinátarendszer meghatározása különbözo módon történhet: éltapintóval, méroórával vagy forgószerszámmal érintofogással, mérofejjel. Nullpont méréskor a vezérlés „BEÁLLÍTÁS” menupontjában a szerszám programozott pontjának a munkadarab (W) koordináta rendszerében érvényes értékeit kell beírni az X, Y, Z helyekre.
rz
Ha a munkadarab felületi minosége lehetové teszi, forgó szerszámmal érintofogást vehetünk. Megadandó értékek az ábrán látható esetre: X0 számításához: x=-TD/2 Y0 számításához: y= -TD/2 Z0 számításához: • aktív szerszámhossz korrekció esetén: Z=rz • Nem aktív szerszámhossz korrekció esetén: Z=rz+TL
Nullpont bemérés érintofogással (Forgó szerszám)
L
Beírandó érték: X koordináta x=-d/2 Ha a munkadarab másik szélét érinti meg az éltapintó: x=L+d/2
Az éltapintóval történo nullpont beállítás hasonló az érinto fogás alkalmazásához. Kézi üzemmódban, kis fordulatszámon (n≈500) megérintjük a munkadarabot. Addig mozdulunk el a kérdéses tengely mentén, ameddig az éltapintó alsó és felso része között nem szunik meg az excentritás. Beírandó értéknél az éltapintó d/2 méretét figyelembe kell venni. Nullpont bemérés éltapintóval
Ha kapcsoló típusú tapintóval érintjük meg a munkadarabot – megmérjük – akkor a méroalprogram hívásakor az ábrán bemutatott esetben az rz, rx, ry értékeket meg kell adni, azért, hogy a szükséges számításokat a vezérlés elvégezhesse. Nullpont bemérés mérotapintóval
Szerszámbemérés A szerszám koordináta rendszerében kell megállapítani a szerszámok hosszát és átmérojét. Ezen értékeket szerszám méret korrekcióként értelmezi a vezérlés. A mérés történhet külso szerszámbeméron, vagy etalon szerszámmal hitelesített szerszámbemérésre szolgáló tapintóval a gépen.
F Z X Szerszámhossz korrekció Szerszám átméro korrekció Gyorsmenet
TD/2
Ha nincsenek ilyen eszközeink, akkor a szerszámgép asztalára helyezett, adott méretu hasábot, vagy a munkadarabot kell megérintenünk egy alapszerszámmal. Ennek szabadon választott hosszméretéhez képest állapítjuk meg az egyes szerszámok méreteltérését, amelyek a hosszkorrekciót jelentik. Így azonban csak az adott gépen érvényes hosszméret korrekciókat kapunk.
TD/2
F
F TL
Szerszám korrekciós értékek
TL A méroberendezés lencserendszerét olyan helyzetbe kell mozgatni az (1)-es és (2)-es orsókkal, hogy a látómezoben (4) a szálkereszt a szerszámélet a jelölt módon érintse. Ekkor a szerszámhossz (TL) és a szerszám félátméro (R) a kijelzoen leolvasható. Külso szerszámbemérés (Megmunkáló központhoz)
Belso szerszámbemérés (Eszterga gép) Belso szerszámbemérés (Megmunkáló központ) Hosszkorrekció: T01 szerszám: TL=-∆L1 T02 szerszám: TL=-∆L2
Z
T03 szerszám: TL=0 T04 szerszám: TL=-∆L4
X
Hosszkorrekció meghatározása alapszerszámmal
Pont
Elmozdulások programozása
P1 P2 P3 P4 P5 P6 P7
Marás: 60 20
P4 20
P3
P2
P7
Y 30 30 50 50 30 0 20
G91 X Y 0 30 20 0 0 20 40 0 20 -20 0 -30 -30 20
G90: abszolút méretmegadás a munkadarab koordináta rendszerében
20
30
Y
P5
50
P1
G90 X 0 20 20 60 80 80 50
P0
P6
X 50 80
G91: Növekményes adatmegadás, a szerszám pillanatnyi helyzetéhez képest, elojelhelyesen
Abszolút
P1
P2
Növekményes P1
P1 z
P2
y
30
∆z z 30
20
∆x=10 ∆y=15 ∆z=20
20
40
40
x
G90 X40 Y30 Z20
∆y
P2 ∆x
y
x
G91 X-10 Y-15 Z-20 Fúrás
A szerszám programozott pontja: Programozott pont fúrószerszámoknál, furatmegmunkáló méretes szerszámoknál a szerszám csúcspontja (P). Esztergaszerszámoknál a lekerekítési sugár koordináta tengelyekkel (X-Z) párhuzamos érintoinek metszéspontja (P), vagy a lekerekítési sugár középpontja (S). Szerszámbeméro készüléken a „P” pont könnyen mérheto. Marószerszámoknál a szerszámtengely és a homlok felület érintosíkja (S), vagy a maró legnagyobb sugáron lévo pontja (P) a programozott pont. Gömbmaró esetén a talppont (P) vagy a gömbközéppont (S) programozható
Esztergálás
Marás
Pozícionálás gyorsmenettel: G0 Xx Yy Zz ahol x, y, z a végpont koordinátái. A mozgás egyenesvonalú a beállított korlátok melletti leggyorsabb sebességgel. Például: G0 X0 Y-100 Z10 Lineáris interpoláció, körinterpoláció : Lineáris interpoláció G01 Xx Yy Zz
Y 40
N... G01 G90 X50 Y10 F... N... G01 G91 X40 Y-30 F...
P1
Körinterpoláció (XY síkban)
P2
10 10
50
X
Lineáris interpoláció programozásakor a szerszám az érvényes elotolási sebességgel (F) egyenes pályán megy a programozott célpontba. Elmozdulás közben forgácsolhat.
Körinterpoláció programozásakor a szerszám a pillanatnyi és célhelyzet közötti utat körív mentén teszi meg. A kör középpontjának adatait X irányban I, Y irányban J, Z irányban K címmel kell megadni, és mindig úgy, hogy a kezdoponthoz képest elojeles növekményt programozzuk. A körív kezdopontjából a végpontba az óramutató járásával megegyezo (G02) irányba, illetve ellentétesen (G03) vezethetjük a szerszámot. A körbejárási irányt a harmadik tengely pozitív iránya felol kell nézni.
Körinterpoláció: G02/G03 Xx Yy Ii Jj G02/G03 Xx Yy Rr P0=kezdopont P1=célpont(végpont) M=középpont Irány:G02 J P0
X
Y
I M
P1
X
Z
G03
G03
G02
G03
G02 X
70
Sugárkorrekció, kontúrkövetés G40, G41, G42
G42 JOBB OLDAL
Z Y X
P1
F
Fy
G02 Z
Y
Irány: P0 c P1 , az óramutató járásával ellentétes (G03) Abszolút adatmegadás: G90 G03 X10 Y70 I-50 J-20 Növekményes adatmegadás: G91 G03 X-70 Y30 I-50 J-20 Ha P1 =P0 , teljes kör: G90 G03 X80 Y40 I-50 J-20 G91 G03 X0 Y0 I-50 J-20
G41 BAL OLDAL
végpont
Y
Fx kezdopont
P0
40
J
Y
20
középpont M
I 10
30
80
X
Programban leírhatjuk a szerszám programozott pontjának pályájátl (G40), vagy a sugárkorrekció alkalmazásával (G41, G42 ) a tényleges kontúrt. Az elso esetben a szerszámpálya megadásakor nekünk kell figyelembe venni a szerszámsugár méretét a program írásakor, így a szerszámsugár változása esetén az egész programot módosítani kell. A második esetben nem a szerszámközéppont pályáját kell megadni, hanem a munkadarab kontúrját. Ekkor a szerszám pályáját a vezérlés határozza meg a program futtatásakor a programban megadott kontúr és az éppen érvényes szerszámsugár alapján, így a szerszámkopás miatti a korrekció is egyszeru.
A vezérlés a kiválasztott koordinátasíkban (G17-G19), aktivizált korrekciós regiszter mellett (D) a kontúr adataiból, és a szerszám helyzetébol kiszámítja a szerszámsugárral eltolt ekvidisztáns (egyenközu) pályát. Jobb (G42) és baloldal (G41) megállapítása a kör irányának megállapításával megegyezo módon történik.
További parancsok M2, M30 Program vége M3 Foorsó bekapcsolása (forgásirány óramutató járásával megegyezik) M4 Foorsó bekapcsolása (forgásirány óramutató járásával ellentétes) M5 Foorsó állj M8 Hutofolyadék bekapcsolása Tt szerszámváltás, ahol t a beváltani kívánt szerszám száma Hh szerszám hosszkorrekciós regiszter száma Dd szerszám átméro korrekciós regiszter száma Öröklodés Pl.: G01 X5 Y10 Z15 G01 X5 Y10 Z20 helyett elég az, hogy G01 X5 Y10 Z15 Z20
Ha egy adott címen nem adunk meg új értéket, akkor a mondat megörökli az elozo mondatban érvényes értéket. (Vannak azonban olyan NC címek is, amelyek csak egy mondatra érvényesek) A G címen az öröklodés ún. G-kód-csoportokon belül muködik. Ilyen csoportok pl.: G1, G2, G3 G40, G41, G42 G90, G91 Tehát a G1 programozása pl. nem írja felül a G90-et.
DNC-renszer A korábban fejlesztett NC berendezések alkatrészprogramjaikat lyukszalagon kapták. A DNC berendezések dönto változást jelentettek ezzel szemben, mert ezeknél a számítógép megfelelo adatvonalakon töltötte be NC irányítórendszerbe a programokat. Ez muszakilag és szervezéstechnikailag is jelentos elorelépés volt, hiszen a központi irányító számítógép lehetové tette monitorizálási, diagnosztikai feladatok megoldását, megmunkálási folyamatok összehangolását, termelésirányítási feladatok megoldását intelligens muködési módok kialakítását. Ez a fajta irányítási mód, az NC vezérlok memóriájának méretkorlátai miatt a CNC vezérlok korában sem veszítette el a létjogosultságát. A nagyméretu programokat tehát nem töltjük be a vezérlés programtárába, hanem külso számítógéprol DNC-módban futtatjuk. A DNC lehetové teszi a többgépes vezérlést, az elektromechanikus információ bevitel (lyukszalag, floppy lemez) elmarad, és ez által a megbízhatóság no Az alkatrészprogramokat a folyamatirányító számítógép külso memóriájában tárolják, amelyeket szükség esetén a szerszámgépek hívnak le. A számítógép így átveszi az elosztóállomás és a puffer tároló feladatát. A számítógépet folyamatirányítási célokra is használhatják, és a munkadarab megmunkálásán kívül az anyagmozgást is irányíthatja. A központosított programellátás egyéb elonyei mellett folyamatos gép és rendszerállapot figyelés valósítható meg.
Példaprogram A következo ábrán látható munkadarab elkészítésekor a piros színnel jelölt kontúrt kell marni. Munkadarab adatai: Anyaga: C45. Elogyártmány: 120 mm x 70 mm x 20mm Szerszámgép adatai: Típus: KONDIA B640/NCT Max. fordulatszám: 12000 ford/p Fohajtás teljesítmény: 7.5 KW Maximális elotolás: 30000 mm/p Munkadarab befogása: Gépsatuba
Szerszám adatai:
Forg. sebesség: 120 m/perc Fordulatszám: n=1910 ford/perc Fogankénti elotolás: 0.08 mm/fog Elotolási sebesség: 917 mm/perc
F6AJ2000DL30 KC625M (Kennametal) d2 = 20 l1 =10 l2 =38 l3 =50 z=6
T1 H1 D1
8
Szerszámhely: Hosszkorrekció: Sugárkorrekció:
20
Z
10
Y X 20 80 110 120
70
50
30
R60
%O1009
Program azonosító
N5 G91 G28 Z0 T1
N5:Szerszámcsere a cserélési Z koordinátán
N15 G90 G54 G40 G17
N15:Abszolút adatmegadás (G90), unkadarab nullpont kijelölés (G54), kikapcsolt pályagenerálás (G40), XY sík kijelölés (G17) N20:Fordulatszám bekapcsolása (M3)
N20 S1910 M3 N25 G0 X-30 Y-30 Z50 N30 G43 Z12 H1 N35 G1 G42 Y10 D1 F917 N40 X80
N25:Pozícionálás gyorsmenettel biztosági távolságra, a munkadarabon kívülre és fölé N30:Pozícionálás a marási mélységre, pozitív elojelu (G43) hosszkorrekció (H1)
N45 X110 Y20 N50 Y50
N35:Ráállás a munkadarab kontúrra, szerszám a jobb oldalon (G42), elotolás: 917 mm/p
N55 X80 Y60
N40-N65:Marási kontúr leírása
N60 X20
N70:Túlfutás (átfedés) a kontúron
N65 G3 X20 Y10 R60
N75-N80: Eltávolodás a kontúrtól. Eloször munkaelotolással, majd gyorsmenettel
N70 G1 X35 Y10 N85:Z irányú eltávolodás N75 Y-2 N90:Program vége N80 G0 G40 Y-30 N85 Z100 M5 N90 M2 %
13
JEGYZOKÖNYV
BUDAPESTI MUSZAKI EGYETEM
Gépgyártástehnológia Tanszék
Programozandó alkatrészkontúr:
Forgácsolási sebesség: Fordulatszám: Elotolás: NC program: %
Szerszám rajza és méretei:
Szerszámhely: Szerszámkorrekció: TL szerszám hossz: TD szerszám átméro: Megállapított nullpont X0: Y0: Z0: Készítette :
NEPTUN kód:
Dátum:
2004. Aláírás:
Tanulókör:
Neve: Gyakorlatvezeto: Aláírása: