Theorie deel 1 voor het thema Spuitgieten: NCprogrammeren Reprocode: 023-102
m.b.v. DIN/ISO-codes voor een 3-assige MAHO- freesmachine, type MH400T met Heidenhain-besturing, type TNC 155q.
Heerlen, 15 november 2005. Ir. G. S. J. A. Xhonneux
2
Wijzigingen: 21-09-2004
Oefenopdrachten, bijlage VI
15 november 2005
Bepaling eindcijfer
1
Eindcijferbepaling voor het theoriegedeelte productietechniek voor het thema “spuitgieten”: Het eindcijfer wordt bepaald door het rekenkundig gemiddelde van de twee toetsen. Voor de toetsen geldt als minimale eis: een cijfer > 6.0 en een cijfer > 4,0.
Inhoudsopgave: 1. Inleiding
2
2. Het schrijven van een machineprogramma
3
3. Definitie van werkstukmaten
5
4. Definitie van het te gebruiken coördinatenstelsels
6
5. Coördinatensystemen. 5.1 Het Cartesisch coördinatensysteem 5.2 Het polair coördinatensysteem
7 7 7
6. Invoer van maten 6.1 Incrementele maatinvoer 6.2 Absolute maatinvoer 6.3 Invoer van maten in inches 6.4 Metrische maatinvoer
8 8 8 8 8
7. Invoer van bewerkingsprogramma’s 7.1 Definitie van gereedschappen in een hoofdprogramma 7.2 In het programma oproepen van een gereedschap 7.3 Syntax voor de opbouw van positioneer-/bewerkingsregels 7.4 Richtwaarden voor freessnelheden 7.5 Mee-/tegenlopend frezen
8 8 9 9 10 11
8. Toelichting bij de belangrijkste G-funkties
11
9. Invoering van programma’s volgens DIN/IS)-parameterprogrammering
30
10. Onderprogramma’s, programmaherhaling en labels
31
11. Nesting van onderprogramma’s/programmaherhaling
32
12. Programmasprong naar een ander hoofdprogramma
32
13. Voorbeeldprogramma;s
33
Bijlage I: Overzicht van G-codes Bijlage II: Additionele en hulpfunkties Bijlage III: Adresletters/karakters volgens DIN/ISO Bijlage IV: Oproepbare freestoerentallen Bijlage V: Toelichting bij enige belangrijke M-funkties Bilage VI: Oefenopdrachten
41 42 43 44 45 46
2
1. Inleiding. Deze programmeerhandleiding is geschreven, toegespitst op de bij de Hogeschool Zuyd aanwezige NC-freesmachine. Het betreft hier een machine met o.a. als mogelijkheden: - Dialoog-programmering; - DIN/ISO-programmering; - Grafische simulatie met een vijftal presentatiemogelijkheden; - Ingebouwde microprocessor met 32 kByte voor max. 32 programma's met max. 24 kByte; - Seriële aansluiting volgens CCITT - aanbeveling resp. RS232C voor in- en uitlezen van programma's via een aangesloten computer; - Mogelijkheid van programma's als onderprogramma's of programma(deel) herhaling en parametrische onderprogramma's (macro's); - 5 Boor- en freescycli voor ronde of vierkante kamers; - Cycli voor het voorboren, ruimend frezen en nabewerken van kamers met vrij-programmeerbare contouren; - Mogelijkheid van gereedschapscorrectie; - Metrische/inch-programmering,verschalen,spiegelenerotatieaschroeflijninterpollatie(Helix); - Absolute/ incrementele besturing. Technische gegevens: - X-verplaatsing - Y-verplaatsing - Z-verplastsing - Opspanvlak - Tafelbelasting - Aandrijving - Voedingsaandrijving - Meetsysteem - Freesvoeding - Ijlgang - Freestoerentallen - 90 graden zwenkbare freesas; - Freesspindelopname
: 400 mm; : 375 mm; : 250 mm; : 700 X 270 mm; : 200 kg; : 2.2 kW (draaistroommotor, geremd); : gelijkstroom, toerental-geregeld via kogelomloopspillen : foto-elektrisch met digitale weergave en afleesnauwkeurigheid van 0.001 mm; : 1-1500 mm/min (X-,Y- en Z-as), geen decimale voedingen. : 2.5 m/min ( X-, Y- en Z-as); : getrapte keuze 63-3150 1/min, links- en rechtsdraaiend, 18 trappen, schakelsprong van 1.25, zie bijlage IV; : ISO 40 DIN 69871, deel 1 met aantrekbout volgens ISO/DIS 7388 II type B.
Numerieke besturingen nemen hoe langer hoe meer in betekenis toe bij de industriële productie. Daarom heeft men in de loop van de tijd geprobeerd de programmering van deze machines te vereenvoudigen. De programmering van deze machines is tegenwoordig mogelijk in: A. Dialoog-programmering. Hierbij wordt na de invoer van een opdracht door de machines gevraagd naar de in volgorde daarbij behorende parameters etc. Indien een foutieve invoer plaats vindt wordt dit door de machine gemeld. Deze dialoog-programmering is sterk machine-gebonden.
3
B. Programmeren met behulp van DIN/ISO-codes. Wegens de grote variatie aan dialoog- programmeermethoden werd door de normwezens DIN en ISO een "gemeenschappelijke " norm opgesteld voor de programmering van alle mogelijke CNC-machines. Voor machinale bewerkingen, mogelijke coördinatensystemen, hulpfuncties, maatsystemen, etc. werden codes ontwikkeld. Omdat de meeste op de markt leverbare machines uitgevoerd zijn met omstelbare dialoog en DIN/ISO-programmering en omdat, zoals we reeds zagen, DIN/ISO-programmering nagenoeg voor alle machines eender is, beperken we ons in deze beschrijving tot de DIN/ISO-programmeermethode voor een MAHO-freesmachine. De programmering van de MAHO- freesmachine wordt soms door dialoog-vragen, ook bij DIN/ISO programmering, ondersteund. C. CAD/CAM. In een ontwerptekening, die met een CAD-systeem is aangemaakt, zit veel informatie opgesloten die bij de werkvoorbereiding ook gebruikt kan worden. Met een CAM-softwarepakket kunnen aan een CAM-ontwerpschets gereedschappen, gereedschapsbanen en verspaningsparameters gekoppeld worden. Het resultaat is, na bewerking van de aangemaakte file door een postprocessor, een NC-file die aan een verspaningsmachine kan worden aangeboden. Op school is dit mogelijk met behulp van het CAD/CAM-softwarepakket AlphaCAM.
2. Het schrijven van een machineprogramma. Dit programma wordt geschreven met regels. Een regel wordt ook wel een blok (van een bewerkingsopdracht) genoemd. In de eerste regel (N0) wordt eerst de naam ( maximaal 8 cijfers) van het programma genoemd achter het %-teken gevolgd door de functiecode G71 (metrische maten worden ingevoerd) of G70 (inch maten worden ingevoerd) . De eerste regel wordt afgesloten met "end of block" of “carriage return” : *. Het programmanummer "0" is het programma dat de gegevens bevat van alle gereedschappen. In dit programma worden alle gereedschappen gedefinieerd ten opzichte van het nulgereedschap T0. Dit is een gereedschap met diameter 0 en lengte 0. Hier aanrefereren alle overige gereedschappen. Daarom mogen programma- en gereedschapsnummer "0" niet gebruikt worden. Wanneer dit is gebeurd kan de invoer van het programma plaatsvinden. Dit gebeurt in regels of ook wel blokken genoemd. Iedere regel wordt in het programma genummerd met aan het begin de letter N gevolgd door max. 4 cijfers. Regelnummer "0" is niet toegestaan. Dit regelnummer wordt door het programma automatisch toegekend na de dialoogvraag over het te hanteren maatsysteem en programmanummer. Regelnummer N9999 is het hoogst toelaatbare regelnummer. In verband met eventuele latere aanvullingen is het zinvol de regels niet door te nummeren, nummer bijvoorbeeld als volgt: N10, N20, N30 etc. In een regel/positioneerstap mogen maximaal voorkomen: - 3 G-codes, doch geen contraversiële G-codes uit een en dezelfde groep b.v. G02 en G03;; - 3 coördinaten (X,Y,Z) en additioneel 2 cirkelmiddelpunten (I,K). Circulaire bewegingen gebeuren bij de 2 1/2-D-machine in het platte vlak, daarom geen J/Y-coördinaten-invoer mogelijk bij circulaire interpolatie polair/Cartesisch; - 1 aanzetsnelheid (F, geen decimaal getal); - 1 additionele functie (M); - 1 spiltoerental (S, maximaal 4 cijfers, keuze volgens bijlage IV); - 1 gereedschapsnummer (T, max. 3 cijfers, nummer "0" is niet toegestaan); - maximale regellengte: vier beeldschermregels(DIN/ISO).
4
De functiecodes zijn ingedeeld in groepen, zie Bijlage I. Het kenmerk van een groep is dat alle in een groep voorkomende functies onderling een tegenspraak met elkaar vormen. Daarom mogen 2 functies uit een en dezelfde groep niet in een en dezelfde regel/blok voorkomen. In een volgende regel mag wel een andere functie uit de groep voorkomen: de functie uit de vorige regel wordt dan opgeheven. In het functie-overzicht van bijlage I komen functies voor met een *) geplaatst voor de betreffende code. Dit zijn functies die alleen gedurende de uitvoering van de betreffende regel actief zijn (lokaal actief). De functiecodes zonder *) voor de functiecode blijven actief, zo lang de functie niet opgeheven wordt (globaal actief) door: - een andere functie uit dezelfde groep. - een functie die het doel heeft de functie te beëindigen.
Als eerste regels in een programma zijn gebruikelijk: 1. Eerste regel : vastlegging van het programmanummer en keuze van het maatsysteem, bijvoorbeeld %15112000 G71* met: - %1511200 : programmanummer; - G71 : millimeter maten worden toegepast; - * : carriage return. 2. Definitie van het bewerkingsvlak. In onderhevig geval is dit G18 bij een verticaal geplaatste freesas (Y-richting). Het Z-X-vlak is hierbij het bewerkingsvlak; 3. Opgave van het minimumpunt van het onbewerkte werkstuk, bijvoorbeeld: G30 G18 X+0 Y-5 Z –50. Met deze regel wordt het minimumpunt van het onbewerkte werkstuk gedefinieerd (hoekpunt in het voorvlak, rechtsonder); 4. Het maximumpunt wordt gedefiniëerd bijvoorbeeld: G90 G31 X+100 Y+0 Z+50 Dit is een punt van het werkstuk in het achtervlak, linksboven. In deze regel is G90 toegevoegd om aan te geven dat de maten absoluut vanuit het 0-punt en niet incrementeel ten opzichte van het minimum punt van het werkstuk door de machine gelezen dient te worden. In de voorgaande regel was dit nog niet nodig omdat niet eerder maten ingevoerd werden.
1 Tot en met 4 vormen de eerste 3 regels van een programma. Deze zijn voor de machinale uitvoering van het programma niet strikt noodzakelijk. De regels zorgen enkel voor de grafische simulatie van het programma op het beeldscherm om te beoordelen of het programma naar wens verloopt. De regels worden bij de daadwerkelijke uitvoering van de geprogrammeerde freesbewerking overgeslagen. 5. Opstarten van de machinale-bewerking: Na voorgaande regels dienen de codes G18 en G90 of G91 opgenomen te worden omdat de machine weten moet hoe de freesas geplaatst is en volgens welk systeem maten ingevoerd worden. De codes van voornoemde 4 regels worden bij de machinale bewerking immers niet gebruikt;
5
6. Eerste positioneerstap, b.v.: G18 G90 G00 T1 S800 M3 met: - G18 : bekendstelling van de stand van de freesas; - G90 : maatinvoer met behulp van absolute maten; - G00 : freesas rechtlijnig in ijlgang verplaatsen; - T1 : keuze van gereedschap nummer.1 uit het toolprogramma (programma %0); - S800 : freesas maakt 800 omwentelingen per minuut; - M03 : freesas draait rechtsom, zonder koeling. 7. Positioneerstappen; 8. Voorlaatste blok, b.v.: G00 Y+100 M30 met: - G00 : frees in ijlgang naar Y +100; - M30 : programma, draaien freesas en koeling stoppen en regelteller op regel drie plaatsen voor de bewerking van een nieuw product.productie ;
3. Definitie van de werkstukmaten. Ten behoeve van de optische simulatie en vastlegging van het werkstuk nulpunt door de Machinebediener dienen de werkstukmaten vastgelegd te worden ten opzichte van een vrij te kiezen werkstuknulpunt. Het werkstuknulpunt kan o.a. vastgelegd worden: - door slede- en freesbeweging naar het werkstuknulpunt; - door middel van een kantenzoeker; - met behulp van een optische contourzoeker; - met behulp van een centreerapparaat; - met een te gebruiken "norm" of nulgereedschap. Na iedere beweging van een as wordt de betreffende coördinaat ten opzichte van het nulpunt geset" Het verdient de voorkeur om het werkstuknulpunt (coördinatenoorsprong) volgens onderstaande schets vast te leggen,namelijk het minimumpunt in het voorvlak van het werkstuk rechtsonder en het maximumpunt in het achtervlak linksboven, zie figuur.1
Figuur 1: Werkstuknulpunten. Het werkstuknulpunt kan vrij gekozen worden
6
Minimum werkstukpunt Maximum werkstukpunt
: X +0 Y -40 Z+0 : X +100 Y +0 Z +100
Voor positieve of negatieve waarden van de coördinaten zie de volgende pagina.
4. Definitie van te gebruiken coördinatenstelsels. I.v.m. de geplaatste stand van de freeskop (-Y-as) is het bewerkingsvlak het X-Z-vlak. Dit wordt gedefinieerd door de funktiecode G18. Het in nevenstaande figuur weergegeven assenstelsel geeft aan hoe de freeskop (Y-as) zich t.o.v. het werkstuk beweegt.
Figuur 2: Stand van het assenstelsel voor de MAHO-freesmachine.
5. Coordinatensytemen. 5.1. Het Cartesisch coordinatensysteem. Bijvoorbeeld : P1 : X+0 Y+30 P2 : X+0 Y-20 P3 : X+60 Y+30
Z+0 Z+40 Z+40
Functie G00 : Drie coördinaatwaarden mogen tijdens dezelfde positioneerstap veranderen (Ijlgang). Figuur 3: Cartesisch coördinatensysteem
G-functies: G01.G02, G03, G05, G06 en G07: Slechts twee coördinaatwaarden mogen tijdens een positioneerstap veranderen (met voedingssnelheid).
7
5.2. Het polair coöordinatensysteem.
Figuur 4: Poolcoördinaten.
Dit systeem wordt gebruikt voor definities in het platte vlak, zie figuur 4. Opgeven worden van een punt: - de hoek H t.o.v. positieve Z-as (linksom is +); - de straal R Voor de opgave van deze waarden dient de pool bekend te zijn: - de huidige plaats van de frees is de pool, dan dient dit benoemt te worden met de funktie G29; - exclusieve opgave van de pool met I (^X) en K (^Z). Dit kan absoluut of incrementeel gebeuren. Mogelijke funkties: G10, G11, Gl2, G13, G15 en G16. Bijvoorbeeld: P1 : I+50 K+O P2 : P3 : I+50 K+O P3 : I+50 K+O
H+30° R+30 H-30° R+30 H-150° R+30 H+210o R+30
6. Invoer van maten. 6.1. Incrementele maatinvoer. Dit is mogelijk na programmering van de functie G91. De functie blijft zo lang actief tot de functie G90 in een regel verschijnt (globaal werkzaam). In een regel behoeft slechts de relatieve maatverandering van het nieuwe contourpunt t.o.v. het in de vorige regel opgegeven contourpunt opgegeven te worden. Verandert slechts een maat, dan behoeft enkel deze maatverandering gemeld te worden.
6.2. Absolute maatinvoer. Dit is mogelijk na programmering van de functie G90. De functie is globaal werkzaam en wordt opgeheven door de contradictionele functie G91. De invoer van maten gebeurt ten opzichte van het werkstuknulpunt.
6.3. Invoer van maten in inches. Dit is mogelijk na eerdere globale functieoproep G70.
8
6.4. Metrische maatinvoer. Dit is mogelijk na een voorafgaande globale functieoproep G71. De functies G70 en G71 zijn contradictioneel, evenals G90 en G91, dat wil zeggen G70 heft G71 op en omgekeerd. Het incrementele en absolute maatsysteem kan zowel in het Cartesische als in het polaire coördinatensysteem toegepast worden en wel in combinatie met metrische of maatvoering in inches.
7. Invoer van bewerkingsprogramma' s. 7.1. Definitie van gereedschappen in een hoofdprogramma. Voorbeeld: G99 T1 L +0 R +20 met: - R+20 : gereedschapsdiameter - L+0 : correctie van de gereedschapslengte t.o.v. het nulgereedschap. - T1 : gereedschapsnummer 1 (maximaalnummer 254); - G99 : functie definitie gereedschap.
De machine bezit een eigen gereedschapsprogramma met nummer "0". Hierin is T0 het nulgereedschap. Ten opzichte van dit gereedschap worden alle overige gereedschappen gedefinieerd worden door opgave van: - de straal; - meer-/minderlengte t.o.v. het nulgereedschap T0. Het gereedschapsnummer T0 mag daarom dus niet in een programma gebruikt worden.
7.2. In het programma oproepen van een gereedschap. Voorbeeld: T1G18 S1000 M03 met : - T1 : gereedschapsoproep voor gereedschap met nummer 1(gedefiniëerd in gereedschappen-programma); - G18 : X-Z-vlak is het freesvlak en de Y-as is de freesas; - S1000: frees starten met 1000 omwentelingen/minuut; - M03: frees draait rechtsom zonder koeling. Indien een gereedschap met de hand gewisseld wordt, dient in de voorafgaande regel de functie M06 geprogrammeerd te worden. Voor dat dit geprogrammeerd wordt is het zinvol de frees eerst naar een gereedschapswisselpositie te sturen! Indien voor een nieuwe bewerking een andere draairichting van de frees vereist is: de functie M03 (clockwise) c.q. M04 (anti-clockwise) toevoegen. In een volgende regel kan het koelmiddel ingeschakeld worden met behulp van de machinecode M8. Indien dit gelijktijdig dient te geschieden met het inschakelen van de frees: M13 c.q. M14 gebruiken. Indien in een regel voor de gereedschapsoproep een gereedschap specifiek gedefinieerd werd, dan verwacht de machine zo'n gereedschap. Wordt echter een gereedschap uit het gereedschaps-magazijn gewenst, dan dient voor de gereedschapsoproep de functie G51 opgenomen te worden. Na het wisselen van de frees op de machine kan de bewerking voortgezet worden door middel van de startknop.
9
7.3. Syntax voor de opbouw van positioneer-/bewerkingsregel. Voor de zinsopbouw van een blok/regel , zie hoofdstuk 2: Het maken van een machineprogramma. Voor een totaaloverzicht van de mogelijk bruikbare functies, adresletters, spiltoerentallen, etcetera wordt verwezen naar de bijlagen I, II,III en IV. -
G-functies dienen voor de invoer van “geometrie”-informatie zoals freescycli, maat-, coördinatensysteem, definitie van freesvlakken, maatvoering, assenstelsels, werkstuknulpunten, etcetera. Zie bijlage I voor een overzicht van functies die globaal of lokaal werkzaam zijn.
-
M-funkties dienen voor de invoer van machinegegevens zoals draairichting, frees, koeling aan/uit, stoppen van de spil, wisselen van het gereedschap etcetera. Voor een overzicht van mogelijke M-functies wordt verwezen naar bijlage II.
-
Adresletters worden gebruikt voor de invoer van polaire/Cartesische coordinaten, parameters, voeding, toerental etc. Zie bijlage III voor een overzicht van mogelijke adresletters en het invoerbereik in getallen.
7.4. Richtwaarden voor freessnelheden vC = [m/min] en fZ = voeding/tand.
Met behulp van deze tabel kunnen de vereiste toerentallen berekend worden. De MAHO-freesmachine kent geen toerentalregeling. De toerentallen worden ingesteld met behulp van een getrapte tandwielkast en een draaistroommotor. Daarom dient het berekende toerental met overleg gewijzigd te worden in een toerental dat de machine kent. Bijlage IV geeft een overzicht van de toerentallen welke geprogrammeerd kunnen worden voor de MAHO-freesmachine.
10
7.5. Mee-/tegenlopend frezen. Welke freesmode verkregen wordt is afhankelijk van de draairichting van de frees en of deze een contour aan de rechter of linkerzijde volgt. Beide freesmethoden kennen zowel voor- als nadelen. Welke dat zijn volgt uit onderstaand overzicht. Afhankelijk van de gebruikte machine, gewenste kwaliteit, bewerkingssoort, enzovoort wordt door het afwegen van de voor- en nadelen gekozen voor een van beide freesmethoden.
7. Toelichting bij de belangrijkste G-funkties. Voor een overzicht van de mogelijke G-functies zie bijlage I. De G-functies zijn opgedeeld in groepen, gescheiden door horizontale strepen. De in een groep voorkomende G-functies heffen elkaar onderling op/zijn contradictioneel. Verder zijn ze globaal actief, dat wil zeggen men hoeft ze in een volgende regel niet te programmeren indien een zelfde stap wordt uitgevoerd. De functie wordt opgeheven door het gebruik van een contradictionele G-code. In de bijlage zijn sommige G- functies voorzien van een voorgeplaatst *). Dit betekent dat de betreffende functie lokaal aktief is, dus alleen in de regel waarin de functie voorkomt.De overige functies zijn globaal actief met andere woorden, zolang tot er in een regel een functie uit dezelfde groep verschijnt. G00.
Rechtlijnige beweging, Cartesisch in ijlgang. Opgeven: 1, 2 of 3 gewijzigde coördinaten ten opzichte van voorgaande regel/blok. In combinatie met G90/G91 is absolute/incrementele maatinvoer mogelijk. Voorbeeld: G00 G90 X+80 Y+50 Z-5* :
11
G01.
Als G00 doch met te specificeren voedingesnelheid F (mm/min), afgerond tot een heel getal. (mm/min).
Deze en alle volgende G-codes zijn alleen in het platte vlak werkzaam. Dus er kunnen in een positioneerstap maar 2 nieuwe coördinaten t.o.v. een vorig punt ingevoerd worden. Welke coördinaten dit zijn is afhankelijk van het vlak van bewerking. Coördinaten die t.o.v. het vorige punt niet veranderen behoeven in een volgende stap niet genoemd te worden. Alle volgende G-codes betreffen freesacties. Hierbij kan in iedere regel/blok de freessnelheid opgegeven worden. Dit behoeft echter niet indien de freessnelheid dezelfde is van de voorgaande regel.
G02.
Circulaire interpolatie, Cartesisch, met de klok mee, gezien op het werkstuk. Vastgelegd dienen te worden: het middelpunt (I en K) ,het eindpunt (X en Z) en de voedinq F (het programma berekent zelf de uit te voeren straal)
of
`
het eindpunt (X en Z), de te maken straal R (-R bij cirkel segment groter dan 180 graden) en eventueel de voeding F(voor laatstgenoemde mogelijheid: zie uitgewerkt voorbeeld bij G03).
Voorbeeld :G90 I+30 K+30 G02 X+69 Z+23 F+150* met: - G90 absolute maataanduiding; - I ^ X-coördinaat van het cirkelmiddelpunt; - K ^ Z-coördinaat van het cirkelmiddelpunt; - G02 circulaire interpolatie, Cartesisch met de klok mee; - X, Z coördinaten van het eindpunt; - * einde regel, end of block.
G03
Circulaire interpolatie tegen de klok in, gezien op het werkstuk. De functie is gelijk aan de functie G02, doch met andere draairichting.Vastgelegd dienen te worden: het cirkelmiddelpunt (I.K), het eindpunt (X en Z) en eventueel de voeding F. Het programma berekent zelf de uit te voeren straal.
of het eindpunt(X en Z ), de uit te voeren straal R en eventueel de voeding F. Bij een cirkelsegment groter dan 180o : -R. Voor een uitgewerkt voorbeeld van de eerste mogelijkheid zie bij functie G02.
12
Voorbeeld: G03 G90 X+12 Z+32 R+20 F+150* met: - G03 circulaire interpolatie Cartesisch, tegen de klok in; - G90 absolute maataanduiding; - X, Z coördinaten van het eindpunt; - R+20 cirkelradius, centreer, ingesloten hoek < 180 graden; - F aanzet; - * einde regel, end of block.
G04 Wachttijd bijvoorbeeld voor het inschakelen en richten van de straal van de koelvloeistof Deze functie is lokaal actief. Voorbeeld: N30 G04 F1 met: - N30 regel- od bloknummer; - G04 functie wachttijd; - F1 wachttijd bedraagt 100 seconden. . G05.
Circulaire-interpolatie zonder opgave van de draairichting. Door het programma wordt de draairichting gekozen van de laatst in het programma gebruikte functie voor circulaire interpolatie:G02/G03. Vastlegging mogelijk via: - middelpunt en eindpunt van de cirkelbaan; - straal en eindpunt van de cirkelbaan.
G06
Tangentiële contouraansluiting, cartesisch. Vanuit een door de frees bereikt startpunt gaat de frees naar het opgegeven eindpunt met een cirkelboog, waarbij: - de frees de contour tangentiëel verlaat; - de frees niet tangentiëel in het eindpunt benadert. Door het programma wordt zelf een straal bepaald voor de uitvoering van de beweging. Deze functie wordt met name gebruikt om de frees uit het materiaal te laten draaien na de bewerking van een contour.
Voorbeeld: G06 G90 X+50 Z+10* met: - G06 cirkulaire interpolatie, Cartesisch, tangentiale contouraansluiting; - G90 X-coöordinaat van het eindpunt; - X, Z coödinaten van het eindpunt.
G07
Asparallelle positioneerstap. Bij deze functie wordt de frees asparallel verplaatst. In een regel mag maar één coördinaat (X of Z) opgegeven worden. Een radiuscorrectie wordt niet uitgevoerd, gereedschapscorrectie (lengte) daarentegen wel. Indien het freesprogramma in voorgaande blokken werkte met radiuscorrectie G41/G42 is het zinvol deze correctie, alvorens de functie G07 te programmeren, uit te schakelen middels de functie G40.
13
Daarbij wordt de door de frees bereikte plaats, die links of rechts van de geprogrammeerde contour is, aangegehouden. Van daar uit wordt dan asparallel verder gewerkt. Zou de G40-functie niet geprogrammeerd zijn, dan wordt "asparrallel" vertrokken met het freesmiddelpunt links/rechts van de geprogrammeerde contour naar dan eindpunt van de geprogrammeerde CONTOUR. De positioneerstap is in combinatie met de functies *G43/*G44 met de halve freesdiameter te verlengen/verkorten. N.B.: G07 is een globale functie.
G10
Lineaire interpolatie, met polaire benoeming van de punt coördinaten. De verplaatsing wordt in ijlgang uitgevoerd. Opgegeven dienen te worden de polaire eind coördinaten, absoluut of incrementeel.
Voorbeeld: N60 I+20 K+20 G10 R+15 H-135* met: - I X-coördinaat van de pool; - K Z-coördinaat van de pool; - R+15 afstand van het eindpunt tot de pool; - G10 functie lineaire interpolatie met ijlgang; - H-135 hoek rechtsom(-) ten opzichte van de +Z-as; - N60 regelnummer;
G11
Rechtlijnige beweging met opgaven van het eindpunt met polaire coördinaten. De beweging wordt met te specificeren (of reeds gespecificeerde) voedingssnelheid uitgevoerd.
Voorbeeld: G91 I+10 K-30 G11 G90 R+30 H+45 F150* met: - F150 voeding/aanzet; - H+45 hoek van het eindpunt ten opzichte van de +Z-as; - R+30 afstand van het eindpunt tot de pool; - G90 polaire maten worden absoluut ingevoerd voor het eindpunt; - G11 lineaire interpolatie; - I+10 X-coördinaat van de pool; - K-30 Z-coördinaat van de pool; - G91 incrementele maatinvoer voor de pool;
G12
Circulaire interpolatie, met de klok mee, punten worden met poolcoördinaten ingevoerd. De functie is ongeveer als de functie G02. Het verschil is, dat bij de functie G12 het eindpunt in polaire coördinaten opgegeven wordt, terwijl dit bij de G02-functie met carthesische coördinaten gebeurt. De mogelijkheid om een cirkelbaan te definiëren met behulp van het eindpunt en de straal, zoals bij de functies G02 en G03, is bij de functies G12/G13 niet mogelijk.
14
Voorbeeld: G90 I+50 K+40 G12 H-45 F+150* met: - G90 absolute maataanduiding; - I X-coördinaat van de pool; - K Z-coördinaat van de pool; - G12 circulaire interpolatie, polair,met de klok mee; - H-45 polaire coördinatenhoek(rechtsom) van het eindpunt; - F150 150 mm/min bedraagt de voedingssnelheid; - * end of block.
G13
Circulaire interpolatie, polair, tegen de klok in. Deze functie is identiek aan de functie G12, doch wordt anti clockwise/linksom uitgevoerd .
Voorbeeld: I+30 K+25 G13 G91 H+160 F+150* met - G90 absolute maataanduiding; - I X-coördinaat van de pool; - K Z-coördinaat van de pool; - G13 circulaire interpolatie, polair, tegen de klok in.; - G91 incrementele maatinvoer; - H+160 polaire coördinatenhoek van het eindpunt; - F voedingsnelheid [mm/min].
G12Y/G13Y De schroeflijnvormige beweging die hierdoor ontstaat is het resultaat van een lineaire beweging met een gesuperponeerde circulaire verplaatsing interpolatie met de klok mee/tegen de klok in. Voorbeeld:: G90 I+15 K+45 G12Y G91 H+1080 Y-5* met: - G90 absolute maataanduiding; - I X-coördinaat van de pool; - K Z- coördinaat van de pool; - G12Y circulaire interpolatie polair, met de klok mee; - Y-5 verticale verplaatsing per omwenteling ^ spoed; - G91 incrementele maatinvoer; - H+1080 polaire coördinatenhoek ^ 3 omwentelingen. De straal wordt bepaald door de afstand tussen het vertrekpunt en de pool/middelpunt.
G15
Circulaire interpolatie zonder opgave van de draairichting. De functie is gelijk aan G05 waarbij gerefereerd wordt aan de laatste in het programma gebruikte functies G02 /G03. Hier betreft het de functies het de functies G12(Y) en G13(Y). Evenals bij de functies G12 en G13 wordt het eindpunt met polaire coördinaten ingevoerd.
15
Voorbeeld: I+50 K+40 G15 H+120 F+150* met: - I X-coördinaat van de pool; - K Z-coördinaat van de pool; - G15 circulaire interpolatie, polair, zonder opgave van de rotatierichting; - H+120 polaire coördinatenhoek van het eindpunt; - F+150 voedingssnelheid.
G16
Circulaire interpolatie met polaire opgave van het eindpunt met tangentiële contouraansluiting in het startpunt. Vanuit het huidige punt wordt een cirkelsegment beschreven dat tangentiëel het vertrekpunt verlaat doch niet noodzakelijkerwijs tangentiëel op de bestemming aankomt. De functie komt overeen met de functie G06, met dien verstande dat het eindpunt in polaire coördinaten wordt opgegeven. Deze functie wordt met name gebruikt om de frees uit het werkstuk te laten draaien.
Voorbeeld: G90 I+50 K+30 G16 R+15 H-60* met: - G90 absolute maataanduiding; - I X-coördinaat van de pool; - K Z-coördinaat van de pool; - G16 circulaire interpolatie, polair met tangentiële contouraansluiting; - R+15 afstand van het eindpunt tot de pool; - H-60 polaire coördinatenhoek van het eindpunt ten opzichte van de +Z-as (rechtsom); - * end of block.
G17
Bepaling/definitie van het X-Y-vlak als bewerkingsvlak en de Z-as als freesas (niet van toepassing in verband met de verticaal geplaatste freesas in het laboratorium).
G18
Bepaling/definitie van het X-Z-vlak als bewerkingsvlak en de Y-as als freesas. Door de verticale stand van de freesas op de freesmachine in het laboratorium is deze functie voor het practikum de in aanmerking komende definitie-code voor de freesas en het bewerkingsvlak.
Gl9
Bepaling/definitie van het Y-Z-vlak als bewerkingsvlak en de X-as als freesas. Dit is nu niet van toepassing in verband met het voren gestelde.
16
G24
Afkanting. Door de invoer van een lengte bij deze functie worden vanuit een te programmeren hoekpunt twee nieuwe punten berekend die op gelijke afstand van het genoemde hoekpunt liggen, zie nevenstaande figuur. Voor en na de afkanting dient een positioneerstap geprogrammeerd te worden. De functie is lokaal werkzaam en kan niet gebruikt worden bij een vrijprogrammeerbare cyclus met behulp van de functie G37.
Voorbeeldregels
Regel N24 Regel N25 Regel N26 Regel N27
G25
Afronding van hoeken. In de programmeerregel dient de afrondingsstraal opgegeven te worden. Voor en na het afronden dient een positioneerstap geprogrammeerd te worden. De functie is lokaal werkzaam en is niet te gebruiken in combinatie met een vrij-programmeerbare cyclus m.b.v. G37.
Voorbeeldregels
G26
: N24 G01 X... Z... * : N25 Z... *. : N26 G24 R+... * : N27 X... Z... * met: : vertrekpunt; : fictieve hoekpunt (P1); : definitie afkanting; : punt na de afkanting ( P2).
: N14 : N15 : N16 : N17
G01 X... Z... * (vertrekpunt) Z... * (punt P1) G25 R... * (afronding) X... * (punt P2).
Met behulp van deze functie wordt een contour tangentieel benaderd met een op te geven straal R Deze functie wordt onder andere toegepast bij het in het materiaal laten indraaien van een frees. De invoer gebeurt met dialoog-ondersteuning door de machine. De functie is lokaal actief en dient aan het begin van de contour opgegeven te worden. De functie kan niet in een vrije-contourcyclus met behulp van G37 opgenomen worden.
Voorbeeldregels:
: N25 G40 G01 X... : N26 G41 X... Z... * : N27 G26 R *
Z... * (punt PS) (punt P1) (cirkelbaan)
Vertrekpunt
17
G27
Het verlaten van de contour met een cirkelbaan die tangentaal op het laatst gemaakte contour-element aansluit. Opgegeven dient te worden de "uitdraai"straal R. Programmering van deze functie wordt met dialoog ondersteund. De functie is lokaal actief. In de voorgaande regel dient het vertrekpunt geprogrammeerd te zijn met de radiuscorrectie en in de erop volgende regel dient het aankomstpunt geprogrammeerd te zijn met opheffing van de radiuscorrectie. Deze functie wordt vooral toegepast op het einde van een contour-cyclus bij het, uit het materiaal laten draaien van de frees. Niet toepasbaar bij vrij-programmeer bare cycli met behulp van de functie G37.
Voorbeeldregels:
: N30 G41 G01 X... Z ... * : N40 G27 R ... * : N50 G40 X ... Z... *
(vertrekpunt) (straal v. baan) (eindpunt)
G28
Spiegelen van een, in een label/onderprogramma gedefiniëerde contouren opzichte van een of twee assen. Opgegeven dient te worden als spiegelas die as, waarvan de coördinaten veranderen. Biivoorbeeld bij spiegeling om de X-as veranderen de Z-waarden. Dus de Z-as wordt opgeven achter de functiecode G28! Voorbeeldregels : N60 G28 X* (Z-as is de spiegelas). : N61 G28 X Z * (spiegelen om de X- en Z-as).
G29
Overname van het in de vorige positioneerstap door de frees bereikte punt als pool. De functie is lokaal werkzaam.
G30
Invoer van het minimumpunt van het werkstuk voor de grafische simulatie/ presentatie op het beeldscherm. Zie ook paragraaf 3: Definitie werkstukmaten etc.
G31
Invoer van het maximumpunt van het werkstuk voor de grafische presentatie van het eindresultaat van de bewerking c.q. simulatie van de freesbewerking op het beeldscherm. Zie ook paragraaf 3: Definitie werkstukmaten etc.
G37
Definitie van contouren in combinatie met bewerkingen van de functies G56, G57, G58 en G59. Voor uitgebreide beschrijving van deze functie, zie na functie G59 en het uitgewerkte voorbeeld 5.
G38
STOP van het programma voor een gereedschapswissel. Voortzetting van het programma volgt na het wisselen van het gereedschap en gebruik van de toetsen "tool unclamp"- en "tooi clamp"-toets.
G39
Oproepen van een ander hoofdprogramma als onderprogramma voor het onderhavige programma. Zie voor een voorbeeld het uitgewerkte voorbeeld 6 achter in deze handleiding.
18
G40
Geen radiuscorrectie c.q. opheffing van radiusof baancorrectie. Het middelpunt van de frees volgt exact de geprogrammeerde baan. De functie wordt ook toegepast voor beëindiging van baancorrecties met G41 en G42.
G41
Radiuscorrectie links van de contour. Het freesmiddelpunt verplaatst zich links langs de geprogrammeerde baan.
G42
Radiuscorrectie rechts van de contour. Het middelpunt van de frees verplaatst zich rechts langs de geprogrammeerde baan.
G43
Ver lening van de met G07 geprogrammeerde as-parallelle positioneerstap met de halve freesdiameter. De functie is lokaal werkzaam.
G44
Verkorting van de met G07 geprogrammeerde as-parallelle positioneerstap met de halve freesdiameter. De functie is lokaal werkzaam.
G51
Gereedschapsoproep. Na programmering van deze functie kiest de besturing weer voor gereedschappen die in het gereedschappenmagazijn (programmanummer %0) zijn gedefiniëerd. De functie wordt gebruikt indien voorheen in het programma specifiek met behulp van de functie G99 beschreven gereedschap(pen) werd(en) toegepast.
Voorbeeldregel
G54
:N10 G51 T1 *
Verplaatsing van het nulpunt. Deze functie Wordt door de functie M30 herroepen of kan gereset worden in een volgende programmaregel.
Voorbeeldregels: G54 G90 X+50 Z+15 * met: G54 nulpuntverplaatsing; G90 absolute maatinvoer X+50 verplaatsing van de Y-as Z+15 verplaatsing van de Z-as.
19
G56
Voorboren van gaten van met G37 vrij-geprogrammeerde contouren. De functie wordt door de machine met dialoog ondersteund. Hierbij wordt gevraagd naar de parameters P01 tot en met P05. De opdracht wordt afgesloten met de cyclusoproep: G79. De gaten worden geboord op het beginpunt = eindpunt van de contour. De functie is alleen toepasbaar in combinatie met maximaal 12 vrij geprogrammeerde contouren die in een voorgaande regel verzameld zijn met behulp van de functie G37.
Voorbeeldregels: G56 P01-2 P02-18 P03-10 P04+40 P05+1.5 G79* met: - G56: voorboren van de contour; - P01: veiligheidsafstand. Deze afstand komt overeen met de grootte en de richting die de frees vanuit zijn huidige positie moet afleggen tot de bovenkant van het te boren gat; - P02: totale boordiepte; - P03: diepte-instelling/keer, max. 0.25 X freesdia; - P04: voedingssnelheid voor de boor; - P05: nabewerkingsopmaat, zie ook de 2de figuur geplaatst bij de functie G57; - G79: oproep van de boorcyclus. N.B.: De parameters P01, P02 en P03 dienen een gelijk(-) voorteken te hebben!
G57
Ruimen van een kamer. De programmering wordt met dialoogvragen door de machine ondersteund. De programmaregel wordt afgesloten met de cyclus-oproep G79! Deze functie is enkel toepasbaar in combinatie met vrij geprogrammeerde contouren die in de voorgaande regel verzameld werden met behulp van de functie G37.
Voorbeeldregels: G57 P01-2 P02-18 P03-10 P04+40 P05+2 P06+45 P07+120 G79* met: - P01: veiligheidsafstand, zie ook G56-P01; - P02: totale freesdiepte; - P03: freesdiepte per keer, max. ¼xfreesdiameter; - P04: voedingssnelheid axiaal; - P05: nabewerkingsmaat; - P06: hoek voor het ruimen t.o.v. +Z-as; - P07: aanzetsnelheid, tangentiaal; - G79: oproep van de cyclus. N.B.: - De parameters P01, P02 en P03 dienen hetzelfde (-)voorteken te bezitten ! - Overlapping van de banen: ½ x freesdiameter.
20
G58
Contourfrezen(nabewerken) van de met G37 verzamelde contouren. De frees loopt daarbij vanuit het vertrekpunt de contour rechtsom na.
G59
Contourfrezen(nabewerken) van de met G37 verzamelde contouren. De frees loopt daarbij vanuit het vertrekpunt de contour linksom na.
Beide functies worden uitgevoerd na de functieoproep met behulp van de functiecode G79. Beide functies worden bij de programmering op de machine ondersteund met dialoog-vragen voor de invoer van de waarden voor de parameters P01 tot en met P05. Beide functies zijn alleen toepasbaar in combinatie met vrij geprogrammeerde contouren en de verzameloproep met behulp van de functie G37. Voorbeeldregel: G58 P01-2 P02-18 P03-10 P04+80 P05+20 G79* met: - G58: contourfrezen/nabewerken met de klok mee; - P01: veiligheidsafatand, zie ook G56: P01; - P02: totale freesdiepte; - P03: diepte-instelling per keer, max. ¼x freesdiameter; - P04: axiale voedingssnelheid; - P05: radiale voedingssnelheid; - G79: oproep van de cyclus. N.B.: De parameters P01, P02 en P03 dienen hetzelfde voorteken(-) te bezitten.
G37
Deze functie dient voor het verzamelen van vrij geprogrammeerde kamer- en eilandcontouren. Deze contouren staan in het programma na het einde van het hoofdprogramma. Het hoofdprogramma wordt beëindigd met een regel die de machinecode M30 bevat. In de regel na de G37-oproep kan dan aan deze verzameling een bewerking, zoals voorboren(G56), ruimen(G57) of nabewerken (G58/G59) gekoppeld worden. Voor iedere regel met een van voornoemde bewerkingen dient een regel met de G37functie vooraf te gaan. Bij de definitie van contouren krijgt iedere deelcontour een nummer, dat overeenkomt met het nummer van het overeenkomstige label/onder programma. Met dialoog-ondersteuning door de machine kunnen maximaal 12 deelcontouren onder de codes P01 tot en met P012 verzameld worden. De eerste op te geven contour dient het contournummer van een kamer te zijn. Bij deze complete bewerkingscyclus worden de contour(en) van de te frezen kamer of eiland geprogrammeerd in een of meerdere onderprogramma's. De onderprogramma's, ook wel labels genoemd, worden op het einde van het hoofdprogramma geschreven en dienen allen met dezelfde radius-correctie aangemaakt te worden. De deelcontouren (verzameling van rechte liijnen, cirkels, cirkelsegmenten etc.) worden via de functie G37 opgeroepen/ verzameld. Ieder onderprogramma bevat een contourdeel, dat gekenmerkt wordt door het feit dat het begin- en eindpunt van de vrij geprogrammeerde curve
21
overeenstemmen.
Niet toegestaan in een label of onderprogramma voor een contourelement zijn: - Afronding/ afkanting(functies G24 en G25); - Circulaire interpolatie met opgave van straal en eindpunt(G02/G03); - Circulaire interpolatie met opgave van middelpunt en eindpunt mag wel; - Het elkaar raken van middelpuntsbanen van de frees, b.v. van een binnen- en een Buitencontourelement; - Meer dan 72 contourelementen(G-functies) in een deelcontour; - De navolgendede G-functies zijn enkel toogestaan in een contourelement:G01, G02, G03, G05, G10, G11,G12,G13, G15, G40, G41, G42, G43 en G44.
22
Iedere contour dient in een apart label beschreven te worden. Voor kamers gebeurt deze beschrijving het beste met de wijzers van de klok mee. In dat geval dient radiuscorrectie links van de lijn aangehouden te worden. De uitwendige contour van een eiland dient bij voorkeur beschreven te worden tegen de wijzers van de klok in. In dat geval wordt radiuscorrectie rechts van de lijn gekozen. Bij de superpositie van kamers c.q. eilanden met kamers c.q. eilanden ontstaan daarbij de volgende mogelijkheden, afhankelijk van het startpunt bij de beschrijving van de verschillende contouren:
In nevenstaande schets ligt het startpunt van contour 1 binnen contour 2. Het overlappend gedeelte wordt slechts uitgefreesd.
Het startpunt van contour 1 ligt buiten contour 2. Beide contouren worden uitgefreesd
Het startpuntpunt van eiland met nummer1 ligt buiten het eiland met nummer 2. Het startpunt van kamer met nummer 1 ligt buiten de contouren van de eilanden 1 en 2. Beide eilanden blijven staan.
23
Het startpunt van het eiland met nummer 1 ligt binnen de contour van het eiland met nummer 2. Het startpunt van de kamer met nummer 1 ligt buiten de eilandcontouren met de nummers 1 en 2. Alleen het gemeenschappelijke deel van de eilandcontouren blijft staan.
Het startpunt van de kamer(contournummer 1) ligt buiten de eilandcontour. De kamer wordt slechts gedeeltelijk uitgefreesd.
Het startpunt van de kamer met nummer 2 ligt binnen eiland met nummer 1 en het startpunt van kamer met nummer 1 ligt buiten de kamer met nummer 2 en het eiland met nummer 1. Alleen het specifieke deel van eiland 1 blijft staan.
G72
Schaalfactor. Deze functie wordt gebruikt indien een, in een label beschreven contour, of een separaat programma op een andere plaats vergroot/verkleind nog eens herhaald dient te worden. Voor de oproep van het onderprogramma/label of programma dient deze schaalfactor gedefiniëerd te zijn. Invoerbereik voor de schaalfactor F: 0 - 99.9999 Resetten van de verschaling gebeurt middels een regel met G72 F1”
24
Voorbeeldregels N120 G72 F0.5* ) 121 L3* Onderprogramma L3 wordt uitgevoerd met de afmetingen zoals in het label gedefiniëerd maal 0.5. De snedediepte/Y-coördinaat wordt niet verschaald. G73
Rotatie van het assenstelsel. b.v. G90 G73 H-90* Resetten van de draaiing van het assenstelsel: G90 G73 H+O* Voor hoekdefinitie zie 5.2: : Het polaire coördinatensysteem.
De navolgend beschreven functies: G74, G74, G 75, G76, G77, G78, G83 en G84 zijn allen functies die een hoeveelheid materiaal: ronde, vierkante kamer, spiegleuf, boor-/tapgat verwijderen waarvan de afmetingen met behulp van parameters in de functie gedefinieerd wordt. Voor dat de functie geprogrammeerd wordt verdient het aanbeveling om de frees op het referentiepunt van het volume te plaatsen op een hoogte die overeenkomt met de gewenste veiligheidsafstand. Deze referentiepunten zijn voor: - de vierkante kamer: het snijpunt van de diagonalen; - de ronde kamer, boor- of tapgat: het middelpunt; - de spiegleuf: het middelpunt van een afronding (twee referentiepunten zijn mogelijk). Na de definitie van een cyclus dient in dezelfde c.q. de volgende regel de functie G79 geprogrammeerd te worden. Deze zorgt voor de daadwerkelijke uitvoering van de in de cyclus omschreven werkzaamheden.
G74
Het frezen van b.v. spiegleuven welke parallel met de X-as of de Z-as verlopen, zie ook voorbeeld 2 van de uitgewerkte voorbeelden. N.B. Diameter frees: - kleiner dan spiegleufbreedte; - groter dan 0.5 X spieqleufbreedte
25
Voorbeeldregel: G74 P01-2 P02-20 P03-10 P04+80 P05 X+50 P06 Z+100 P07+150 G79* met: - G74 cyclus spiegleuffrezen; - P01 veiligheidsafstand; - P02 freesdiepte; - P03 diepte-instelling; - P04 aanzet diepte-instelling; - P05 benoemen van de lengte-as met bijbehorende lengte; N.B.: - deze lengte is positief wanneeer de spiegleuf vanuit het gekozen referentiepunt in de richting van de positieve X- of Z-as verloopt; - deze lengte is negatief wanneer de spiegleuf vanuit het gekozen referentiepunt in de richting van de negatieve X- of Z-as verloopt; -
P06 benoemen van de dwarsas met bijbehorende breedte; P07 aanzetsnelheid; G79 oproep van de freescyclus.
N.B.: - De parameters P01, P02 en P03 behoren hetzelfde voorteken(-) te bezitten; - Indien een frees onder een hoek ten opzichte van bijvoorbeeld de X-as gefreesd dient te worden dient eerst het assenstel verdraaid te worden. Zie ook voorbeeld 2 van de uitgewerkte voorbeelden.
G75
Het frezen van vierkante kamers met de klok mee. Het resultaat is tegenlopend frezen indien gebruik gemaakt wordt van een rechts-draaiende frees
G76
Het frezen van vier kante kamers tegen de klok in. Dit levert meelopend frezen indien gebruik gemaakt wordt van een rechtsdraaiende frees.
Met deze functies kunnen vierkante kamers gefreesd worden waarvan een stel zijden parallel met de X-as en het andere stel zijden parallel met de Z-as verlopen Deze kamers bezitten vanzelfsprekend in de hoeken een afronding die overeenstemt met de straal van de frees. De programmering wordt in dialoogvorm door de machine ondersteund. Voor een uitvoerig uitgewerkt voorbeeld wordt verwezen naar voorbeeld 2, achter in deze handleiding. Bij kamers waarvan de zijden niet parallel met het assenstelsel verlopen dient voor de programmering van de cyclus het assenstelsel gedraaid te worden. Na definitie van de grondvorm “vierkante kamer” wordt, voor de daadwerkelijke freesbewerking, de kamer opgeroepen met behulp van de code G79. Voor deze opdracht gegeven wordt dient de frees geplaatst te zijn op het kruispunt van de diagonalen en weliswaar op de - veiligheidshoogte, zoals vastgelegd met behulp van de parameter P01.
26
Het programma berekent onder andere zelf aan de hand van 6 de parameters: - Het aantal lagen dat verwijderd moet worden; - De “spiraalsgewijze” baan, vanuit het hart naar de buitenkant toe van de ronde kamer; - De freesbeweging eindigt bij het hart van de kamer op dezelfde hoogt waar de freesbeweging ook startte.
Voorbeeldregel: N440 G76 P01-2 P02-20 P03-10 P04+80 P05 X+90 P06 Z+50 P07+105 G79 met: - N440 : regelnummer; - G76 : frezen van een vierkante kamer, linksom; - P01 : veiligheidsafstand (frees staat 2 mm boven het werkstuk); - P02 : kamerdiepte; - P03 : freesdiepte per laag; - P04 : axiale voedingssnelheid; - P05 : keuze van de 1e asrichting met lengte van de zijde; - P06 : keuze van de 2e asrichting met bijbehorende lengte van de zijde; - P07 : tangentiële voedingssnelheid; - G79 : oproep van de freescyclus. N.B.: - De parameters P01, P02 en P03 dienen hetzelfde(-) voorteken te bezitten; - De parameters P05 en P06 dienen met positief voorteken ingevoerd te worden.
G77
Het frezen van ronde kamers met de klok mee. Dit is een vast cyclus. Het resultaat is tegenlopend frezen indien gebruik gemaakt wordt van een rechtsdraaiende frees.
G78
Het frezen van ronde kamers, tegen de klok in. Dit is een vast cyclus. Dit levert meelopend frezen indien gebruik gemaakt wordt van een rechtsdraaiende frees.
Het programma berekent onder andere zelf aan de hand van 6 parameters: - Het aantal lagen dat verwijderd moet worden; - De spiraalsgewijze baan, vanuit het hart naar de buitenkant toe van de ronde kamer; - De freesbeweging eindigt bij het hart van de kamer op dezelfde hoogt waar de freesbeweging ook startte.
27
Voor de definitie van de cyclus, in ieder geval voor de oproep tot uitvoering van de freescyclus met behulp van de functie G79, dient de frees boven het hart van de te frezen kamer geplaatst te worden en wel op de (negatief) veiligheidsafstand (P01). Onderstaande voorbeelden betreffen alle sets van programmaregels met hetzelfde resultaat voor het frezen van een kamer met diameter 180 mm waarvan het middelpunt ligt op de coördinaten (0,0,0) terwijl een veiligheidsafstand van 2 mm wordt gehanteerd (Y = +2 komt overeen met P01= - 2).
A) N10 G00 X+0 Z+0* N15 Y+2* N20 G78 P01-2 P02-20 P03-10 P04+80 P05+90 P06+150* N25 G79* B) N10 G00 X+0 Z+0* N20 G78 P01-2 P02-20 P03-10 P04+80 P05+90 P06+150* N25 Y+2 G79* C) N10 G78 P01-2 P02-20 P03-10 P04+80 P05+90 P06+150* N15 G00 X+0 Y+2 Z+0 G79* met: - G78 - P01 - P02 - P03 - P04 - P05 - P6 - G79
: cyclus voor het frezen van ronde kamers; : veiligheidsafstand; : totale freesdiepte; : diepte-instelling per laag; : axiale voedingsnelheid: : straal van de kamer; : tangentiële voedingssnelheid; : opdracht tot uitvoering van de freescyclus.
N.B.: De parameters P01, P02 en P03 dienen hetzelfde voorteken (-) te bezitten.
28
G79
Met de functies G56, G57, G58, G59, G74, G75, G76, G77, G78, G83 en G84 wordt met behulp van een beperkt aantal parameters de vorm beschreven van een hoeveelheid te verwijderen materiaal. De opdracht tot daadwerkelijke uitvoering wordt verstrekt met behulp van de functie G79.
G83
Diepboren met dialoogondersteuninq door de machine.
Voorbeeldregel: N210 G83 P01-2 P02-20 P03-10 P04+0 P05+150 G79* met: - G83 : boorcyclus. - P01 : veiligheidsafstand; - P02 : totale boordiepte; - P03 : diepte-instelling waarna stilstandtijd P04; - P04 : stilstandtijd(geen voeding); - P05 : axiale voedingssnelheid/aanzetsnelheid. - G79 : voer beschreven opdracht uit op de huidige plaats van de frees; N.B.: De parameters P01, P02 en P03 dienen hetzelfde voorteken (-) te bezitten!
Schroefdraadtappen met dialoogondersteuning door de machine. Voorbeeldregel: N220 G84 P01-2 P02-20 P03+0 P04+80 G79* met: - G84 : boorcyclus; - P01 : veiligheidsafstand; - P02 : tapdiepte/lengte van de schroefdraad; - P03 : stilstandtijd.voor de ommekeer van de tap op het einde van de draad; - P04 : axiale voedingsnelheid = freestoerental x spoed van de draad; - G79 : voer beschreven opdracht uit op de huidige plaats van de frees; G84
N.B.: De parameters P01 en P02 dienen hetzelfde voorteken (-) te bezitten.
G98
Benoemen van een label/ onderprogramma dat later in een programma meermaals oproepbaar is. Een label/onderprogramma wordt afgesloten met de regel G98 L0. Na deze regel heeft het programma de beschreven handelingen eenmaal uitgevoerd Het hierna meermaals uitvoeren van het programma, bijvoorbeeld indien het programma een incrementele hoekverdraaiing of verplaatsing van het assenstelsel bevat, gebeurt door een regel met de labeloproep gevolgd door een getal dat de gewenste herhalingen bevat. Voorbeeldregel: N230 L1.8*
29
Indien de frees of assenstelsel verplaatst is en nieuwe uitvoering van het onder-programma wordt gewenst gebeurt dit door een regel met de labeloproep. Voorbeeldregel: N240 L1* Voor een uitgebreid voorbeeld zie voorbeeld CAE/031188.doc op het einde van deze handleiding.
G99
Definiëren van een gereedschap indien geen gebruik gemaakt wordt van het gereedschapsmagazijn met programmanummer %0. Opgegeven dient te worden: - Gereedschapsnummer (nummer 0 niet gebruiken i.v.m. T0); - De radius R van het gereedschap; - Meer-/minderlengte L ten opzichte van het nulgereedschap T0. Voorbeeldregel: N100 G99 T1 L+50 R+20* met: - G99 gereedschapsdefinitie; - T1 gereedschapsnummer; - L+50 correctiewaarde voor de gereedschapslengte; - R+20 correctiewaarde voor de gereedschapsdiameter.
N.B.: - Bovenstaande regel bevat alles wat in een regel voor gereedschapsdefinitie mag en moet voorkomen; - Indien later in het programma een gereedschap uit het gereedschapsprogramma gewenst wordt, dient de functie G51 aan de gereedschapsoproep vooraf te gaan; - Voor een gereedschapsoproep uit het gereedschapsmagazijn (%0) behoeft niet extra dit hoofdprogramma opgeroepen te worden
9. Invoering van programma’s volgens DIN/ ISO-PARAMETER-PROGRANMERING. Parameters zijn variabelen voor getalwaarden, die betrekking hebben op maateenheden (coördinaten, aanzet etc.). Deze variabele parameters zijn "plaatsbezetters" die later door in te geven of door de besturing te berekenen getalwaarden worden vervangen. Bij het afwerken van het programma gebruikt de besturing dan de getalwaarde, die een gevolg is van de zogenaamde parameterdefinitie. Parameters worden door de letter Q en een cijfer tussen 0 en 99 gekenmerkt. Parameters kunnen ook met negatief voorteken worden ingegeven. Positieve voortekens hoeven niet te worden geprogrammeerd. De toekenning van bepaalde getalwaarden is ofwel direct dan wel via wiskundige of logische functies mogelijk. Dit toekennen noemt men Parameterdefinitie. De parameterdefinitie bestaat uit het adres D en een codegetal. De invoer van parameters wordt door de machine met dialoog begeleid. Voor de toekenning c.q. wiskundige/logische berekening kent het programma de volgende codegetallen: - D00: toekenning van een waarde; - D01: optellen ;
30
-
D02: aftrekken; D03: vermenigvuldigen; D04: delen; D05: worteltrekken; D06: sinus; D07: cosinus; D08: worteltrekken uit de som van 2 kwadraten; D09: indien gelijk, spring naar labelnummer; D10: indien ongelijk, spring naar labelnummer; D11: indien groter dan, spring naar labelnummer; D12: indien kleiner dan, spring naar labelnummer; D13: hoek; D14: fout-nummer.
Stapopbouw: Voor een parameterdefinitie is een programmastap nodig. De separate onderdelen van een stap bij parameterdefinitie zijn met de letter P en een nummer vastgelegd. De betekenis van deze onderdelen is afhankelijk van de volgorde in de stap, die bepaald wordt door de, in de machine, ingegeven dialoog. Parameter-programmering wordt veelal toegepast in separate programma's voor veel voorkomende contouren, kamers etc. Deze hoeven dan niet telkens in specifieke bewerkingsprogramma's ingevoerd te worden. Men kan dan vanuit een hoofdprogramma zo'n parameter "onderprogramma" oproepen onder gelijktijdige benoeming van de waarden/ afmeting/gegevens die men in opgeroepen programma aan de contour/kamer wenst toe te kennen.
2: Voorbeeld 1: Q98 = N10 D05 Q98 P01 +2*
Voorbeeld 2: Formule:Q12 = product van 62 maal Q2: N20 D03 Q12 P01 +Q2 P02 +62* met: - N20: bloknummer; - D03: vermenigvuldigen; - Q12: Parameter, waaraan het resultaat toegekend wordt; - P01: Eerste factor = parameter Q2; - P02: Tweede factor = constant getal (62). Voorbeeld 3: Indien Q6 kleiner dan Q5 spring dan naar labelnummer 3: N30 D12 P01 +Q6 P02 +Q5 P03 +3* met: - N30: blok-/regenummer; - D12: indien kleiner dan, spring naar...; - P01: eerste vergelijkingswaarde of parameter; - P02: tweede vergelijkingswaarde of parameter; - P03 nummer van het label weer naar toe gesprongen moet worden. Zie ook uitgewerkt voorbeeld 6.
31
10. Onderprogramma's, programmaherhaling en labels. Bij het programmeren kunnen labels/onderprogramma's met de functie G98 geprogrammeerd worden. Dit programmakenmerk kan binnen een willekeurige programmastap, waarin geen labeloproep geprogrammeerd is, opgenomen worden b.v. N35 G98 L15 G01........ In deze programmeerstap is G98 de labelfunctie en L15 het labelnummer. Labelnummers mogen variëren van 1 tot 254. N.B.: L0 is voorbehouden voor het kenmerken van het einde van een label. Indien een label gebruikt wordt als herhaling van het programma, dan dient het label afgesloten worden met achter het labelkenmerk L. het labelnummer en decimaalpunt de herhalingsfactor. Voorbeeld: N45 L15.8* N B.: Omdat het programma het label al eenmaal "uitgevoerd" heeft op het ogenblik dat labelkenmerk "einde = L0" met repetitiefactor verschijnt, wordt het label 1 keer meer afgehandeld dan de repetitiefactor aangeeft. Indien later in het programma het onderprogramma nog eens uitgevoerd moet worden, dan dient dit te gebeuren in een programmaregel met achtereenvolgens: labelkenmerk L direct gevolgd door het labelnummer ( label-oproep) . N.B.: Een onderprogramma wordt door een onderprogramma-oproep slechts 1X uitgevoerd. Wordt een meervoudige uitvoering gewenst dan dient dit met even zoveel programmaregels te gebeuren met de labeloproep. Een andere mogelijkheid is, indien mogelijk, de herhalingsfactor in het onderprogramma zelf onder te brengen. Voor uitgewerkte voorbeelden zie de voorbeelden 2 en 5.
11. Nesting van onderprogramma's /programmaherhaling. Binnen een onderprogramma of programmaherhaling kan een volgend onderprogramma/ programmaherhaling worden uitgevoerd. Men spreekt in dit geval van nesting. Programmadelen en onderprogramma's kunnen maximaal 8-diep genest worden. Indien van een label naar een ander label gesprongen wordt, dan wordt eerst het laatste label compleet afgewerkt en op het einde van dit label gaat het programma verder op de plaats van het eerste label, en wel een regel verder dan van waar uit het label verlaten werd.
12. Programmasprong naar een ander hoofdprogramma. De programmering van een sprong van een programma naar een ander hoofdprogramma is mogelijk met de toets: PGM CALL c.q. de functieoproep G39. Op het beeldscherm verschijnt dan een overzicht van de ingevoerde programma's. Met behulp van de pijltoetsen omhoog/ omlaag kan in dit overzicht gebladerd worden. Met behulp van de pijltoetsen links/rechts kan een programma gekozen worden door het heldere balkdeel op het gewenste nummer te brengen.Ook is het mogelijk het helder balkdeel direct op het gewenste programmanummer te brengen indien dit bekend is. Dit kan door gebruikmaking van de toets Go TO gevolgd door de invoer van het gewenste programmanummer. Acceptatie van de keuze gebeurt door het drukken van de toets ENT(er).
32
13. Voorbeeldprogramma’s Voorbeeld 1. Programmeerstappen bestaande uit rechtlijnige bewegingen. Nevenstaand getekende plaat met de afmetingen 100 X 100 X l0 mm dient zodanig gefreesd te worden dat het gearceerde gedeelte van de rest "vrij" gefreesd wordt. Gebruikt wordt een frees me een diameter van 16 mm. Het werkstuknulpunt: bevindt zich bij de zwarte stip.
************************************ programma %10001 ************************************ %10001 G71* N10 G30 G18 X+0 Y-10 Z+0* N20 G31 G90 X+100 Y+0 Z+100* N30 T1 G18 S1000 M13* N40 G00 G90 X-10 Z-10* N50 G00 Y-10.5* N60 G01 G42 X+0 Z+0 F100*
(maatinvoer in mm.) (minimumpunt,Y-as is de freesas) (maximumpunt, absolute maatinvoer) (keuze gereedschap T1, 1000 omw/min, frees rechtsdraaiend inclusief koeling) (ijlgang naar punt x,y ,naast het werkstuk) (ijlgang zakken met de frees tot onder onderkant van het werkstuk). (met voedingssnelheid en radiuscorrectie rechts naar het WerkstukNulPunt).
N70 Z+20* N80 X+50* N90 Z+50* N100 X+0* N110 Z+80* N120 X+40* N130 Z+100* N140 X+100* N150 Z+0* N160 X+0* Regels N70 t/m N160: opgave van de diverse hoekpunten. N170 Z+5* Bij het aanlopen van het WNP gebeurt dit in verband met de radiuscorrectie niet geheel correct: daarom wordt om de hoek gefreesd. N180 G00 G40 Y+100 M30* Frees in ijlgang uit het werkstuk, programma, koeling etc. stoppen en programma op programmaregel (N30), voor herhaling van het programma, zetten. N9999 %10001 G71% ************************************einde programma %10001 ************************************
33
Voorbeeld 2. In dit voorbeeld wordt materiaal geruimd dat door cycli beschreven kan worden. Uit een plaat met de afmetingen 130 X 130 X 20 mm dienen kamers gefreesd te worden met behulp van een frees met een diameter van 12 mm volgens nevenstaande schets. Het werkstuknulpunt:is gekozen bij de zwarte stip aan de bovenkant van het werkstuk( ze doorsnede).
************************************ programma %10002 ************************************
%10002 G71* N10 G30 G18 X+0 Y-20 Z+0* minimumpunt, X-/Z-vlak is het freesvlak N20 G31 G90 X+130 Y+0 Z+130* maximumpunt, absolute maatinvoer N30 G98 L1* onderprogramma gereedschapswissel N40 G00 G90 Y+100 G18* frees in ijlgang uit het materiaal N50 M06* rees en koeling stoppen N60 G98 L0* einde onderprogramma N70 T1 S1000 M03* gereedschap T1, 1000 omw/min, rechtsdraaiend N80 G75 P01-2 P02-10 P03-33 definitie vierkante kamer linksonder, ClockWise P04 +50 P05 X+30 P06 Z+40 P07+100* N90 G90 X+105 Y+2 Z+40 M03 G79* oproep en plaatsing cyclus G75 N100 G76 P01 Ä2 P02-10 P03-3 P04 definitie vierkante kamer linksboven, AntiClockWise +50 P05 X+30 P06 Z+40 P07+100* N110 Z +90 G79* oproep en plaatsing van de cyclus G76 N120 G74 P01-2 P02-5 P03-3 P04 definitie van de cyclus spiegleuf +50 P05 Z+110 P06 X+12 P07+100* N130 X+65 Y+2 Z+114 G79* oproep en plaatsing van de cyclus G74 N140 G77 P01-2 P02-10 P03-3 P04 definitie van een ronde kamercyclus, ClockWise) +50 P05+20 P06+100* N150 X+30 Y+2 Z+90 G79* oproep en plaatsing van de cyclus G77 N160 L1* oproep onderprogramma L1: gereedschapswissel N170 T2 G18 S1250 M04* gereedschap T2: 1000 omw/min, linksdraaiend N180 G78 P01-2 P02-5 P03-3 P04+50 definitie ronde kamercyclus, AntiClockWise P05+20 P06 +100* N190 Z +40 G79* oproep en plaatsing van de cyclus G78 N200 G00 Y+100 M30* frees snel uit het materiaal, frees stopt met draaien, geen koeling meer, stoppenprogramma, regelwijzer op eerste programmaregel zetten voor programma-herhaling. N9999 %10002 G71* ************************************ einde programma %10002 ************************************
34
Voorbeeld 3, CAE /021188.doc In een stalen plaat met de afmetingen 100 X 70 X 30 mm. dient een doorgaande kamer met een vrij programmeerbare contour volgens onderstaande schets "gefreesd" te worden. De minimale breedte van deze contour bedraagt 53.5 mm. De maximale breedte bedraagt 80 mm. Verder dienen om dit gat vier draadgaten M8 X 15 mm symmetrisch verdeeld aangebracht te worden met een onderlinge afstand van 80 X 54 mm. Gewerkt dient te worden met een minimaal aantal gereedschapswisselingen.
************************************ programma %021188 ************************************ %021188 G71* N10 G30 G18 X-50 Y-30 Z-35* N20 G31 G90 X+50 Y+0 Z+35* Definitie van min. punt en max. punt van het ruwe werkstuk (blok) N30 T1 G18 S1000 M03* Keuze van gereedschap, toerental, draairichting en bewerkingsvlak: hier 2-/3-snijder c.q. spiebaanfrees met diameter 6 mm N40 G90 G00 X+15 Z+10* Opgave van (absoluut) maatsysteem en eerste punt in ijlgang en aanlopen in horizontale vlak (geen problemen met opspanmiddelen) N50 Y+2 M08* Frees in ijlgang tot 2 mm boven het werkstak en koeling aan N60 G01 F40 Y-1.5* frees met voedingssnelheid 40 mm/min 1.5 mm in het werkstuk N70 G42 X+25 Z+20 F100* punt aanlopen met een voedingssnelheid van 100 mm/min en radiuscorrectie rechts
35
N80 G98 L1 * definitie van het eerste onderprogramma (tot en met regel N350 wordt de uit te frezen contour beschreven met lineaire en circulaire positioneerstappen. Radiuscorrectie rechts van de contour, voedingssnelheid 100 mm/min N90 G90 G03 X+20 Z+25 R+5* Circulaire beweging tegen de klok in met opgave van het eindpunt en de straal N100 G02 X-20 Z+25 R+33 F100* Circulaire beweging met de klok mee en opgave van het eindpunt en de straal. N110 G03 X-25 Z+20 R +5* Circulaire beweging tegen de klok in met opgave van het eindpunt en de straal. N120 G01 X-30 Z+20* Lineaire beweging, G01 wordt herhaald in verband met G03 in regel N110. N125 X-40 Z-20* N130 G25 R+8* Afronding 8 mm in het punt met de coördinaten van regel N130. N140 G01 X-40 Z-20* N150 G25 R+8* Afronding 8 mm in het punt met de coördinaten van regel N150. N200 G01 X-25 Z-20* N210 G03 X-20 Z-25 R+5* Circulaire beweging tegen de klok in met opgave van het eindpunt en de straal N220 G02 X+20 Z-25 R+33* Circulaire beweging met de klok mee met opgave van het eindpunt en de straal. N230 G03 X+25 Z-20 R+5* Circulaire beweging tegen de klok in met opgave van het eindpunt en de staal N240 G01 X+30 Z-20* N245 X+40 Z-20* N250 G25 R+8* N280 G01 X+40 Z+10* N290 G25 R+8* N300 G01 X+30 Z+25* N340 G91 Y-1.5 F40* Na het doorlopen van het programma wordt hier de diepte van de frees incrementeel (G91) verhoogd met 1.5 mm N350 G98 L0* Einde van het onderprogramma N360 L1. 20* Onderprogramma 20 maal herhalen. Bij een herhaling stuit het programma in regel N80 op de code G90 zodat de bewegingen in het horizontale vlak verder met absolute maten worden uitgevoerd. N370 G90 G00 Y+100 M06* Wegens de vereiste gereedschapswisseling wordt hier de frees in ijlgang tot 100 mm boven het werkstuk gebracht en de rotatie van de frees en tevens de koeling gestopt N380 T2 G18 S800 M03* Keuze van gereedschap,bewerkingsvlak, toerental en draairichting. In verband met te tappen gat betreft het hier een boor met een diameter van 6.8 mm N390 Y+2 M08* Frees in ijlgang tot 2 mm boven het werkstuk met de koeling aan N400 X+40 Z+27* Eerste plaats waar geboord wordt N410 G98 L2* Definitie van het onderprogramma met nummer 2 voor de booroperaties N420 G83 P01-2 P02-20 P03-3 P04 0.5 P05 64* Beschrijving van een booroperatie door middel van parameters
36
N430 G79*
Ä
De in regel N420 beschreven booroperatie uitvoeren N440 G98 L0* Einde definitie en uitvoering van de eerste booroperatie N450 G00 X-40 Z+27* N460 L2* Booroperatie uitvoeren op de in regel N450 opgegeven coördinaten N470 G00 X-40 Z-27* N480 L2* Booroperatie uitvoeren op de in regel N470 opgegeven coördinaten N490 G00 X +40 Z-27* N500 L2* Booroperatie uitvoeren op de in regel N490 opgegeven coördinaten N510 G00 Y+100 M06* Boor snel 100 mm boven het werkstuk brengen en rotatie van de boor en koeling stoppen N520 T3 G18 S500 M03* Keuze van gereedschap, bewerkingsvlak, toerental en draairichting, hier.machinetap M8 N530 G00 Y+2 M08* Frees in ijlgang tot 2 mm boven het werkstuk brengen en koelmiddel inschakelen N540 G98 L3* Definitie van de tapcyclus in onderprogrammanummer 3 N550 G84 P01-2 P02-15 P03 +1 P04 +80* Definitie van de tapcyclus aan de hand van de parameters P01 tot en met P04 N560 G79* Opdracht om het eerste draadgat te tappen op de plaats waar het laatste gat geboord werd (zie regel N490) N570 G98 L0* Einde van het onderprogramma draadtappen N580 G00 X-40 Z-27* N590 L3* Tapoperatie uitvoeren op de in regel N580 opgegeven coördinaten N600 G00 X-40 Z+27* N610 L3* Tapoperatie uitvoeren op de in regel N600 opgegeven coördinaten N620 G00 X+40 Z+27* N630 L3* Tapoperatie uitvoeren op de in regel N620 opgegeven coördinaten N640 G00 Y+100 M30* Frees in ijlgang uit het materiaal tot 100 mm boven het werkstuk. Uitvoering van de freeswerkzaamheden beëindigen (freesrotatie, koeling. Programma op regelnummer N30 plaatsen voor een nieuwe uitvoering van het programma. N9999 %021188 G71* ************************************einde programma %021188 ************************************
37
Voorbeeld 4, CAE/031188.doc Uit een stalen plaat met de afmetingen 160 X 160 X 20 mm dienen 8 kamers.met een vrij programmeerbare contour volgens onderstaande detailschets gefreesd te worden. De diepte van de kamers bedraagt 6 mm. De raaklijn "vanuit" de cirkels met een straal van 7 mm naar de cirkels met een straal van 8 mm maakt met de symmetrielijn van de betreffende contour een hoek van 36o39'. De lengte van deze raaklijn bedraagt 15 mm. Vanwege de vereiste maat- en plaatsnauwkeurigheid dient bij de bewerking gebruik gemaakt te worden van respectievelijk een boor, een "ruimfrees" en een nabewerkingsfrees c.q. kotterbaar. Verder dient erop gelet te worden dat het aantal gereedschapswisselingen minimaal is.
************************************ programma %031188 ************************************ %031188 G71* Naamgeving van het programma en werken met mm-maten N10 G30 G18 X-80 Y-20 Z-80* N20 G31 G90 X+80 Y+0 Z+80* Definitie van het min.- en max.-punt van het werkstuk t.o.v. een werkstuknulpunt dat centraal in het bovenvlak van het product ligt N30 T1 G18 S1000 M03* Keuze ven: eerste gereedschap,bewerkingsvlak.toerental van de frees en draairichting. In verband met de vereiste maatnauwkeurigheid is dit een 2- of 3-snijder c.q. een spiebaanfrees met een diameter van 6 mm N40 G90 G00 X+0 Z+0* Frees absoluut in ijlgang en horizontaal naar het punt met de coördinaten X = +0 en Z = 0 N50 Y +2 M08*k Frees in ijlgang tot 2 mm boven het werkstuk N60 G98 L1* Definitie van het eerste onderprogramma voor het voorboren van iedere later te ruimen contour
38
N70 G37 P01 4* Definitie van de eerste (en enige) vrije geprogrammeerde contour. Deze staat in onderprogramma met nummer L4, zie vanaf regel N420. Deze dient te staan op het einde van het programma dat o.a. gekenmerkt wordt door de code M30 (zie regel N410) N80 G56 P01-2 P02-6 P03-1.5 P04+40 P05+0.5* Definitie van de voorboorcyclus met behulp van de parameters P01 tot en met P05 N90 G79* Voer de in regel N80 gedefiniëerde voorboorcyclus uit op de plaast waar in het onder-programma begonnen en geëindigd werd met de beschrijving van de vrij geprogram-meerde contour N100 G91 G73 H+45* Verdraai het assenstelsel incrementeel met 45o N110 G90* Verder werken met absolute maten N120 G98 L0* Einde van de definitie en uitvoering 1 maal van het eerste onderprogramma N130 L1 . 7* Herhaal dit onderprogramma 7 maal N140 G90 G73 H +0* Resetten van de hoekverdraaiing N150 G00 Y+100 M06* Frees in ijlgang uit het materiaal en stoppen met draaien van de frees en de koeling N160 T2 G18 S1000 M03* Bekendstellen van de geometrie van gereedschap met nummer 2, draairichting en toerental en bewerkingsvlak ten behoeve van de ruimbewerkingen N170 G00 Y+2 M08* Frees in ijlgang tot 2 mm boven het materiaal en koeling aan N190 G98 L2* Opening van onderprogramma met nummer 2 voor het ruimen van 8 kamers N200 G37 P01 4* Bekendstellen van de te ruimen, vrij geprogrammeerde contour welke in onderprogramma L4 is vastgelegd N210 G57 P01-2 P02-6 P03-1.5 P04+40 P05+0.5 P06-45 P07+100* Beschrijving van de ruimcyclus met de parameters P01 tot en met P07 N220 G79* Opdracht tot uitvoering van de in regel N210 beschreven ruimcyclus (1ste maal) N230 G91 G73 H+45* Incrementele hoekverdraaiing ten behoeve van de herhaling van de ruimcyclus, zie Ook de opdracht va regel N260 N240 G90* Er wordt verder gewerkt met absolute maten voor de verplaatsingen in het horizontale vlak N250 G98 L0* Einde van het onderprogramma L2 N260 L2 .7* Onderprogramma L2 wordt 7 maal herhaald N280 G90 G73 H +0* Resetten, absoluut, van de hoekverdraaiing, uitgevoerd in onderprogramma L2 N290 G00 Y+100 M06* Frees snel uit materiaal. rotatie van frees en koeling stoppen N300 T3 G18 S1000 M03* Bekendstellen van de afmetingen van het nabewerkingsgereedschap (staat in programma %0000), het .bewerkingsvlak.toerental en de draairichting van de frees N310 G00 Y +2 M08*
39
Frees in ijlgang tot 2 mm boven het werkstuk en koeling aan N320 G98 L3* Begin van onderprogramma L3 voor de nabewerking van de 8 kamers N330 G37 P01 4* Bekendstellen waar het onderprogramma de geometrische gegevens voor de nabewerking kan vinden N340 G59 P01-2 P02-6 P03-1.5 P04+40 P05+100* Definitie van de nabewerkingscyclus aan de hand van de parameters P02 tot en met P05 N350 G79* Opdracht tot 1 maal uitvoeren van de nabewerkingscyclus N360 G91 G73 H+45* Incrementele hoekverdraaiing met 45o tegen de klok in N370 G90* Verder werken met absolute maten voor gereedschapsbewegingen in het horizontale vlak voor herhaling van dit onderprogramma door middel van herhaalopdracht uit regel N390 N380 G98 L0* Einde van onderprogramma L3 N390 L3.7* Onderprogramma L3 7 maal herhalen N400 G90 G73 H+0* Resetten van de hoekverdraaiingen uit onderprogramma L3 N410 G00 Y+100 M06 M30* Einde van het hoofdprogramma, frees snel tot 100 mm boven het materiaal, rotatie frees en koeling stoppen en programma op regel N30 plaatsen voor herhaling van de bewerkingen Beschrijving van de vrij programmeerbare contour door middel van een onderprogramma N420 G98 L4* Opening van het onderprogramma. N430 G01 G42 X-30 Z+7* Beginpunt van de vrije contour met radiuscorrectie rechts van de contour. Onderprogramma's van vrij geprogrammeerde contouren bevatten enkel informatie over bewegingen in het horizontale vlak; geen diepte-informatie. Deze wordt bekend gesteld in de onderprogramma's L1 tot en met L3 door middel van de cyclusbeschrijvingen N435 X-35* Rechtlijnige beweging N440 X-47.03 Z+15.946* Rechtlijnige beweging N450 G90 I-51 K+9 G12 H-90* Circulaire interpolatie, polair, met de klok mee N460 G90 I-59 K+0 G12 H-180* Circulaire interpolatie, polair, met de klok mee N470 G90 I-51 K-9 G02 X-47.03 Z-15.946* Circulaire interpolatie, Carthesisch, met de klok mee N480 G01 X-35 Z-7* Rechtlijnige beweging nN490 X-25 Z-7* Rechtlijnige beweging N500 G90 I-25 K+0 G02 X-25 Z +7* Circulaire interpolatie, Carthesisch, met de klok mee N510 G01 X-30 Z+7* Rechtlijnige beweging N520 G98 L0* Einde van onderprogramma L4 dat de vrij programmeerbare contour beschrijft N9999 %031188 G71* ************************************einde programma %031188 ************************************
40
BIJLAGE I: Overzicht van G-codes. *) = per stap actief; G-codes binnen twee horizontale lijnen heffen elkaar onderling op G00 lineaire interpolatie, Cartesische-coöordinaten, in ijlgang; G01 lineaire interpolatie, Cartesische-coöordinaten; G02 cirkulaire interpolatie, Cartesische-coöordinaten met de klok mee; G03 cirkulaire interpolatie,.Cartesische-coöordinaten, tegen de klok in; G05 cirkulaire interpolatie,.Cartesiscne-coöordinaten, zonder opgave van de draairichiting; G06 cirkulaire interpolatie, Cartesische-coöordinaten met tanqentiële contouraansluiting; G07 as-parallelle positioneerstap; G10 lineaire interpolatie, polaire-coöordinaten, in ijlgang; G11 lineaire interpolatie, polaire-coöordinaten; G12 cirkulaire interpolatie, polaire-coöordinaten, met de klok mee; G13 cirkulaire interpolatie, polaire-coöordinaten, tegen de klok in; G15 cirkulaire interpolatie, polaire-coöordinaten zonder opgave draairichting; *G16 tangentiele contouraansluiting, cirkulaire interpolatie polaire-coöordinaten; *G04 stilstandtijd; G28 spiegelen om een of twee assen; G36 oriëntatie (met S-woord);*G37 definitie van contouren met behulp van labels; *G38 gereedschapswissel;G39 oproep van een ander programma; G51 gereedschappen uit gereedschappenmagazijn toepassen; G54 nulpuntsverplaatsing; *G56 cyclus: voorboren van vrij-geprogrammeerde kamers; *G57 cyclus: ruimen van vrij-geprogrammeerde kamers; *G58 cyclus: contourfrezen tegen de klok in van vrij-geprogrammeerde kamers; *G59 cyclus: contourfrezen met de klok mee van vrij-geprogrammeerde kamers; G72 schaalfactor; G73 verdraaïng van het assenstelsel (X- en Z-as); *G74 frezen van sleufgaten; *G75 frezen van vierkante kamers, met de klok mee; *G76 frezen van vierkante kamers, tegen de klok in; *G77 frezen van ronde kamers, met de klok mee; *G78 frezen van ronde kamers, tegen de klok in; *G83 diepboren; *G84 tappen van schroefdraad; G17 keuze van het X-/Y-vlak als bewerkingsvlak, Y-as is de freesas; G18 keuze Z-X-vlak als bewerkingsvlak, Y-as is de freesas; Gl9 keuze Y-Z-vlak als bewerkingsvlak, X-as is de freesas; *G24 afkanting van hoeken; *G25 afronding van hoeken; *G26 tangentieel een contour met de straal R benaderen(frees werkstuk laten indraaien); *G27 tangentieel een contour met de straal R verlaten(frees uit werkstuk draaien); G40 geen gereedschapscorrectie; G41 gereedschapsbaaancorrectie, links van de contour; G42 gereedschapsbaancorrectie, rechts van de contour;G43 gereedschapsbaancorrectie, baanverlenging met freesstraal; G44 gereedschapsbaancorrectie, baanverkorting met freesstraal; G50 wis- en editeerbescherminq (bij programmabegin) *G79 bij beëindiginq van een cyclus of oproep van onderprogramma; G90 absolute maatinvoer;G91 incrementele maatinvoer; *G29 overname van laatste positie van de frees als pool; G30 vastlegging van ruwe werkstukmaten, minimumpunt G31 vastlegging van ruwe werkstukmaten, maximumpunt; G70 maatinvoer in inches; G71 metrische maatinvoer; *G98 definiëren van een labelnummer; *G99 definiëren van gereedschappen buiten gereedschapsprogramma; *G55 tastfunctie: "werkstukoppervlak als nulvlak"
.
.
.
.
.
. . . .
41
BIJLAGE II: Additionele of hulpfuncties.
Werkzaamheid aan het
M00
M02
M03 M04 Mo M06
M08 M09 M13 M14 M30 M89 M90 M91 M92
M95 M96 M97 M98 M99
begin blok
- stoppen van programma-afloop; - stoppen van spil; - uitschakelen van het koelmiddel; - stoppen van programma-afloop; - stoppen van de spil; - terugspringen naar regel 1; - spil inschakelen met de klok mee; - spil inschakelen tegen de klok in; - stoppen van de spil; - gereedschapswisseling; - stoppen van de programma-afloop(afhankelijk van de ingegeven machine parameters); - stoppen van de spil; - uitschakelen van het koelmiddel; - inschakelen van het koelmiddel; - uitschakelen van het koelmiddel; - spil inschakelen met de wijzers van de klok mee en koelmiddel inschakelen; - spil inschakelen tegen de wijzers van de klok in en inschakelen van het koelmiddel; - conform M02; - vrije additionele functie; - cyclus oproep, (modaal actief); - constante baansnelheid bij hoeken; - in positioneerstap, werkstuknulpunt; wordt door het referentiepunt vervangen; - in positioneerstap vastgelegd werkstuknulpunt wordt door een door de machinefabrikant middels machineparameter gedefiniëerde positie vervangen; - wijziging manier van baanbenadering. - wijziging manier van baanbenadering; - baansnijpuntscorrectie; - einde van baancorrectie; - oproep van cyclus;
einde blok.
*
*
* * * *
* * * * * * * * *
* * * * *
42
BIJLAGE III: Adresletters/karakters volgens DIN/ISO. Adres karakter
functie
< ------ ingave bereik --------> getallen parameter
% A B C
Programmabegin respectievelijk oproep Rotatiebeweging om X-as Rotatiebeweging om Y-as Rotatiebeweging om Z-as
D
Parameterdefinitie 0 –12 (programmaparameter Q) Aanzet 0 – 15 999 Q0 - Q99 Stilstandstijd met G04 0 – 19 999,999 Q0 - Q99 Schaalfactor met G72 0 – 99,999 Wegvoorwaarde 0 – 99 Poolhoek +/- 5 400,000 Q0 - Q99 Rotatiehoek met G 73 0+/- 360,000 Q0 - Q99 X-coördinaat van cirkelmiddelpunt/pool +/- 3 000,000 Q0 - Q99 Y-coördinaat van cirkelmiddelpunt/pool +/- 3 000,000 Q0 - Q99 Z-coördinaat van cirkelmiddelpunt/pool +/- 3 000,000 Q0 - Q99 Vastleggen van een labelnummer met G98 0 – 234 Sprong naar een labelnummer 1 – 254.6535 Q0 - Q99 Gereedschapslengte met G 99 +//- 30 000.000 Q0 - Q99 Additionele functie 0 – 99 Stapnummer 1 – 9999 In de werkstand “blokwijze data-overdracht” 1 – 6534 Cyclusparameter in bewerkingscycli 01 – 07 Parameter in parameterdefinities 01 – 03 Programmaparameter Q 0–9 Polaire coördinatenradius +/- 30 000,000 Q0 - Q99 Afrondingsradius met G 25/G26/G27 0 – 19 999,999 Q0 - Q99 Afkanting met G24 0 – 19 999,999 Q0 - Q99 Gereedschapsradius met G 99 +/- 30 000,000 Q0 - Q99 Spiltoerental 0 – 9 000,000 Gereedschapsdefinitie met G 99 0 – 254 Gereedschapsoproep 0 –254 Lineaire beweging parallel aan de X- as +/- 30 000,000 Q0 - Q99 Lineaire beweging parallel aan de Y- as +/- 30 000,000 Q0 - Q99 Lineaire beweging parallel aan de Z- as +/- 30 000,000 Q0 - Q99 X-as +/- 30 000,000 Q0 - Q9 Y-as +/- 30 000,000 Q0 - Q9 X-as +/- 30 000,000 Q0 - Q9 Einde regel -
F F F G H H I J K L L L M N P P Q R R R R S T T U V W X Y Z *
0 - 999 999 99 +/- 30 000,000 +/- 30 000,000 +/- 30 000,000
Q0 - Q99 Q0 - Q99 Q0 - Q99
43
BIJLAGE IV: Oproepbare freestoerentallen. De toerentallen moeten bij gecodeerde uitgave van spiltoeren in het bereik van de genormeerde waarde liggen. De potentiometer "spil-override" overlapt het geprogrammeerde toerental met de ingestelde %-factor. In verband met: netfrequentie soort (spil)aandrijfmotor getrapte tandwielkast zijn enkel onderstaande spiltoerentallen S(omwentelingen per minuut) mogelijk: 80 100 125 160 200 250 315 400 500 630 800 1000 1250 1600 2500 3150 4000
44
BIJLAGE V: Toelichting bij enige belangrijke M-functies. M67 M90 *)
M91 *) M92 *) M95 *)
M96 *) M97
M98
Tussentijdse wijziging van correctiewaarden voor een gereedschap. Bij hoekbewerkingen "buitenom" (middelpuntsbaan van de frees beschrijft dan een cirkelsegment afhankelijk van de freesdiameter) wordt een constante hoeksnelheid aangehouden. Wordt in een regel/stap deze code opgenomen dan is het mogelijk een maat aan te lopen waarvan de oorsprong in het referentiepunt van de machine ligt. Als M91 met het verschil dat de aan te lopen maat niet in het referentiepunt van de machine ligt maar deze is gerekend met de machine parameters (MP186-MP188). Bij het aanlopen van een hoekpunt met radiuscorrectie loopt frees rakend naar het punt. Wordt deze code niet gebruikt dan verloopt de middelpuntsbacn van de frees op een afstand van de lijn: vertrekpunt – geprogrammeerd hoekpunt. De code M95 is toe te passen bij een aanloophoek kleiner dan 180 graden. Als *M95 doch voor een aanloophoek groter dan 180 graden. Een trap in een contour met een gereedschapsradius groter dan de trap kan uitgevoerd worden met: - M97; - met geprogrammeerde circulaire overgang. Gebeurt dit niet, dan zakt de frees aan de voet van de trap even dieper in het materiaal vanwege de middelpuntsbaan van de frees bij de haakse bocht. Een geprogrammeerd eind-hoekpunt wordt bij frezen met radiuscorrectie exact aangelopen.
Zonder M95
Zonder M97
*) M-code die lokaal actief is.
Met M95
Met M97
Zonder M98
Met M98
45
Bijlage VI. Oefenopdrachten voor het schrijven van een NC-programma. Opdracht 1. Gereedschapswisselpunt: (-200,200,200); Frezen: dia 40 (vlakken), dia 12(kamers);
Vlakken: 2 lagen van elk 1 mm; Plaatdikte: 17 mm.
46
Opdracht 2. Gereedschapswisselpunt: (-150,150,150); Frezen: dia 60 (vlakken), dia 40 (contour);
Vlakken: 2 lagen van elk 1 mm; Gatdiameter: 20 mm; Plaatdikte: 12 mm.
47
Opdracht 3. Gereedschapswisselpunt: (-345,210,150); Frezen: dia 40 (vlakken), dia 12(curve);
Vlakken: 2 lagen van elk 1 mm; Plaatdikte: 20 mm.