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 Olvasó, vagy NC programmemória NC interpreter (dekódolás) M T S F G Z I K Közbenso tárolók Kapcsolási információk Útinformációk M T S F G Z I K 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. Szerszámgép állapot (végállások, kapcsolási pontok) Input PLC Output engedélyezés óra kész (ready) x helyzet méroegység (x irány) INTERPOLÁTOR x (t) a x r Szabályozó telj. erosíto szervómotor (x irány) z (t) a z r Szabályozó telj. erosíto z helyzet 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. Az ábrán kéttengelyes CNC vezérlés látható SZERSZÁMGÉP szervómotor (z irány) méroegység (z irány)
NCalapjel Helyzetszabályozó 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ó: 120 Helyzetszabályozó Ellenorzo jel = névleges célpozíció tényleges pozíció Sebességszabályozó Tényleges sebesség Golyósorsó tengely tényleges pozíciója Ú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: 1.Mondatszám (N) 2.Elokészíto funkció (G) 3.Koordináták (,,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: Mondatszám Elokészíto funkciók Célpont koordináták N10 G90 G01-15 30 F100 M03 1.szó 2.szó 3.szó 4.szó 5.szó 6.szó 7.szó %O1001 N1 T1 M6 N2 G90 G0 G54 S1200 M3 N3 120 135 N4 G43 Z150 H1 N5 Z102 N6 G1 Z70 F240 N7 G0 Z150 N8 M5 N9 M2 % Cím: Jel:- Érték:15 4. szó 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 (,, 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,, 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 + +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,,z a másodlagosokat U, V, W és a harmadlagosokat P, Q, R címmel kell programozni. A forgó tengelyek értelmezése: körül A, körül B Z körül C. Ha pozitív, 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 (,, Z ). A szerszámtengely iránya a koordinátarendszer Z tengelyirányával egyezik meg, és távolodva a munkadarabtól, növekszik.
F Z Z Szerszámgép koordináta rendszere M W Z Munkadarab R M W R F 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, a hosszabb, 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 M Z Z W 0 0 Z 0 Munkadarab A gépi koordináta rendszerben a munkadarab koordináta rendszer origójának helyét a nullponteltolással jelölhetjük ki. 0 : nullponteltolás irányban 0 : nullponteltolás irányban Z 0 : 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,, 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: 0 számításához: x=-td/2 0 számításához: y= -TD/2 Z 0 számításához: aktív szerszámhossz korrekció esetén: Z=r z Nem aktív szerszámhossz korrekció esetén: Z=r z +TL Nullpont bemérés érintofogással (Forgó szerszám) Beírandó érték: koordináta x=-d/2 Ha a munkadarab másik szélét érinti meg az éltapintó: x=l+d/2 L 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 r z, r x, r y é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 F Z Szerszámhossz korrekció 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. Szerszám - átméro Gyorsmenet korrekció 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. F TD/2 TD/2 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=- L 1 Z T02 szerszám: TL=- L 2 T03 szerszám: TL=0 T04 szerszám: TL=- L 4 Hosszkorrekció meghatározása alapszerszámmal Elmozdulások programozása Marás: 60 20 P3 P4 20 Pont G90 G91 P 1 0 30 0 30 P 2 20 30 20 0 P 3 20 50 0 20 P 4 60 50 40 0 P 5 80 30 20-20 P 6 80 0 0-30 P 7 50 20-30 20 30 P1 P2 P7 P5 50 G90: abszolút méretmegadás a munkadarab koordináta rendszerében 20 P0 50 80 P6 G91: Növekményes adatmegadás, a szerszám pillanatnyi helyzetéhez képest, elojelhelyesen
Abszolút P1 P2 Növekményes 20 z 30 y 40 x P1 P2 20 z 30 y 40 x P2 x y x=10 y=15 z=20 z P1 G90 40 30 Z20 G91-10 -15 Z-20 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 (-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ó Fúrás Esztergálás Marás Pozícionálás gyorsmenettel: G0 x y 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 0-100 Z10 Lineáris interpoláció, körinterpoláció : Lineáris interpoláció G01 x y Zz 40 P1 Körinterpoláció ( síkban) P2 10 10 50 N... G01 G90 50 10 F... N... G01 G91 40-30 F... 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ó: G02/G03 x y Ii Jj G02/G03 x y Rr P0 I P0=kezdopont P1=célpont(végpont) M=középpont J M P1 Irány:G02 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 irányban I, 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. G02 G03 G02 G03 Z Z G02 G03 Irány: P 0 P 1, az óramutató járásával ellentétes (G03) Abszolút adatmegadás: G90 G03 10 70 I-50 J-20 Növekményes adatmegadás: G91 G03-70 30 I-50 J-20 Ha P 1 =P 0, teljes kör: G90 G03 80 40 I-50 J-20 G91 G03 0 0 I-50 J-20 70 40 20 végpont P1 F Fy középpont Fx P0 M I kezdopont J 10 30 80 Sugárkorrekció, kontúrkövetés G40, G41, G42 G41 BAL OLDAL Z G42 JOBB OLDAL 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 5 10 Z15 G01 5 10 Z20 helyett elég az, hogy G01 5 10 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: F6AJ2000DL30 KC625M (Kennametal) d 2 = 20 l 1 =10 l 2 =38 l 3 =50 z=6 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 Szerszámhely: Hosszkorrekció: Sugárkorrekció: T1 H1 D1 Z 8 20 R60 10 30 50 70 20 80 110 120
%O1009 N5 G91 G28 Z0 T1 N15 G90 G54 G40 G17 N20 S1910 M3 N25 G0-30 -30 Z50 N30 G43 Z12 H1 N35 G1 G42 10 D1 F917 N40 80 N45 110 20 N50 50 N55 80 60 N60 20 N65 G3 20 10 R60 N70 G1 35 10 N75-2 N80 G0 G40-30 Program azonosító N5:Szerszámcsere a cserélési Z koordinátán N15:Abszolút adatmegadás (G90), unkadarab nullpont kijelölés (G54), kikapcsolt pályagenerálás (G40), sík kijelölés (G17) N20:Fordulatszám bekapcsolása (M3) 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) N35:Ráállás a munkadarab kontúrra, szerszám a jobb oldalon (G42), elotolás: 917 mm/p N40-N65:Marási kontúr leírása N70:Túlfutás (átfedés) a kontúron N75-N80: Eltávolodás a kontúrtól. Eloször munkaelotolással, majd gyorsmenettel N85:Z irányú eltávolodás N90:Program vége N85 Z100 M5 N90 M2 %
BUDAPESTI MUSZAKI EGETEM Gépgyártástehnológia Tanszék J E G Z O K Ö N V 13 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 0: 0: Z0: Készítette : NEPTUN kód: Dátum: Neve: 2004. Gyakorlatvezeto: Aláírás: Tanulókör: Aláírása: