4
CNC-Technik-Kurs Teil 5 Programmieren nach DIN 66025 Unterprogrammtechnik und Parameteranwendung E s gab in den zurückliegenden CNC-Beispielprogrammen dieses Kurses einige Möglichkeiten, Pro- gramme kürzer zu schreiben. Der Leitgedanke jeden CNC-Program- mierers sollte sein, den Programm- code möglichst kompakt zu halten. Dies ist beim Anwenden der Makro- Programmierung leicht möglich. Mit dieser Technik wird zudem verhin- dert, identischen Code mehrmals im Hauptprogramm zu verwenden. Dass Programme bei Verwendung der Makro-Technik in kürzerer Zeit erstellt werden können, ist noch nicht der wichtigste Vorteil. Viel entschei- dender ist es, dass diese Programme selbst nach längerem Nichtgebrauch leicht lesbar sind. Ein weiterer großer Vorteil in der Verwendung von Mak- ros besteht in der Möglichkeit, aus verschiedenen Hauptprogrammen auf ein- und dasselbe Makro zuzugreifen. Man erspart sich damit ein ständiges Neuprogrammieren einer Kontur, was die Fehleranfälligkeit ganz ent- scheidend reduziert, da auf getesteten CNC-Code zurückgegriffen wird. Das Spiegel-CNC-Programm vom letzten Kursteil soll als Grundlage zum Einstieg in die Makro-Program- mierung dienen. Zunächst werden alle Speicher mit [Strg] + [N] gelöscht. Anschließend werden die Werkzeugdaten in den Werkzeugspeicher eingegeben: T1 L: 95.7 R: 5 Natürlich darf auch die Nullpunkt- verschiebung nicht vergessen wer- den: G54 X250 Y110 Z150 Das Makro: %MM N121212 N10 G18 T1 M6 N20 S2895 F160 M3 G54 N30 G99 X-150 Y0 Z100 I300 K-200 N40 G0 X0 Z0 Y10 N50 X105 Z-55 N60 G1 Y-5 N70 G43 X115 N80 G41 Z-85 N90 G3 X105 Z-95 R10 N100 G1 X95 N110 G3 X85 Z-85 R10 Flexible CNC-Programme mit cleverer Programmiertechnik Es ist nicht schwer, CNC-Programme zu erstellen. Problematisch wird es, wenn die Programmlänge ansteigt, da es dadurch schwerer wird, die Übersicht über die Funktionsweise des CNC-Programms zu bewahren. Insbesondere, wenn nach längerer Zeit des Nichtgebrauchs diese Programme wieder genutzt werden, ist oft eine längere Zeit nötig, um das Programm umfassend zu verstehen. Die- sem Dilemma kann begegnet werden, wenn zum einen Programme kommentiert werden sowie darüber hinaus die Unterprogrammtechnik verwendet wird und die Parameterprogrammierung intelligente Berücksichtigung findet. 1 Makros sind eine wichtige Strukturierungsmöglichkeit, um CNC-Programme übersichtlich zu schreiben, sodass auch noch nach langer Zeit das Programm leicht lesbar ist. Zudem wird durch die Makro-Technik auf getesteten CNC-Code zurückgegriffen, was die Programmsicherheit steigert. 1

Programmieren nach DIN 66025 Unterprogrammtechnik ECNC ... · Kontur nach Wunsch zu gestalten. Es lohnt sich wirklich, mit der Parameter-programmierung vertraut zu werden, da große

  • Upload
    others

  • View
    1

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Programmieren nach DIN 66025 Unterprogrammtechnik ECNC ... · Kontur nach Wunsch zu gestalten. Es lohnt sich wirklich, mit der Parameter-programmierung vertraut zu werden, da große

CNC-Technik-Kurs Teil 5 Programmieren nach DIN 66025

Unterprogrammtechnikund Parameteranwendung

Es gab in den zurückliegendenCNC-Beispielprogrammen dieses

Kurses einige Möglichkeiten, Pro-gramme kürzer zu schreiben. DerLeitgedanke jeden CNC-Program-mierers sollte sein, den Programm-code möglichst kompakt zu halten.Dies ist beim Anwenden der Makro-Programmierung leicht möglich. Mitdieser Technik wird zudem verhin-dert, identischen Code mehrmals imHauptprogramm zu verwenden.

Dass Programme bei Verwendungder Makro-Technik in kürzerer Zeiterstellt werden können, ist noch nichtder wichtigste Vorteil. Viel entschei-dender ist es, dass diese Programmeselbst nach längerem Nichtgebrauchleicht lesbar sind. Ein weiterer großerVorteil in der Verwendung von Mak-ros besteht in der Möglichkeit, ausverschiedenen Hauptprogrammen aufein- und dasselbe Makro zuzugreifen.Man erspart sich damit ein ständigesNeuprogrammieren einer Kontur,was die Fehleranfälligkeit ganz ent-scheidend reduziert, da auf getestetenCNC-Code zurückgegriffen wird.

Das Spiegel-CNC-Programm vomletzten Kursteil soll als Grundlagezum Einstieg in die Makro-Program-mierung dienen.

Zunächst werden alle Speicher mit[Strg] + [N] gelöscht. Anschließendwerden die Werkzeugdaten in denWerkzeugspeicher eingegeben:

T1 L: 95.7 R: 5

Natürlich darf auch die Nullpunkt-verschiebung nicht vergessen wer-den:

G54 X250 Y110 Z150

Das Makro:

%MMN121212N10 G18 T1 M6N20 S2895 F160 M3 G54N30 G99 X-150 Y0 Z100 I300 K-200N40 G0 X0 Z0 Y10N50 X105 Z-55N60 G1 Y-5N70 G43 X115N80 G41 Z-85N90 G3 X105 Z-95 R10N100 G1 X95N110 G3 X85 Z-85 R10

Flexible CNC-Programme mit cleverer ProgrammiertechnikEs ist nicht schwer, CNC-Programme zu erstellen. Problematisch wird es, wenndie Programmlänge ansteigt, da es dadurch schwerer wird, die Übersicht überdie Funktionsweise des CNC-Programms zu bewahren. Insbesondere, wennnach längerer Zeit des Nichtgebrauchs diese Programme wieder genutzt werden,ist oft eine längere Zeit nötig, um das Programm umfassend zu verstehen. Die-sem Dilemma kann begegnet werden, wenn zum einen Programme kommentiertwerden sowie darüber hinaus die Unterprogrammtechnik verwendet wird unddie Parameterprogrammierung intelligente Berücksichtigung findet.

1 Makros sind eine wichtige Strukturierungsmöglichkeit, um CNC-Programme übersichtlich zuschreiben, sodass auch noch nach langer Zeit das Programm leicht lesbar ist. Zudem wird durch dieMakro-Technik auf getesteten CNC-Code zurückgegriffen, was die Programmsicherheit steigert.

1

Page 2: Programmieren nach DIN 66025 Unterprogrammtechnik ECNC ... · Kontur nach Wunsch zu gestalten. Es lohnt sich wirklich, mit der Parameter-programmierung vertraut zu werden, da große

N120 G1 Z-60N130 X80 Z-55N140 X35N150 G3 X35 Z-35 R10N160 G1 X65N180 Z-25N190 G3 X75 Z-15 R10N200 G1 X100N210 G3 X115 Z-30 R15N220 G1 Z-55N230 G0 Y10N240 G40

Makro aus dem Hauptprogramm auf-rufen:

%PMN121518N10 G22 N=121212

Wichtig! Der Befehl %PM teilt derSteuerung mit, dass alle nachfolgen-den Befehle im Hauptprogrammspei-cher und nicht mehr im Makrospei-cher abgelegt werden. Der Programm-befehl N=121518 ist die „Erken-nungsnummer“ des Hauptprogramms.Reale CNC-Steuerungen brauchendiese, da sonst der Zugriff auf dasCNC-Programm nicht möglich ist.

Mit dem Befehl G22 wird ein Makroaufgerufen. Nach G22 wird lediglichdie Nummer des Makros angeben.Das Makro hat nur einen Schönheits-fehler: Wenn es mehrmals aufgerufenwird, werden verschiedene Befehlewie etwa G54 oder G99 ebenfallsmehrmals aufgerufen.

Dies ist völlig nutzlos und zuweilenauch für Fehlfunktionen beim Pro-grammablauf verantwortlich. Daherwird das Makro in zwei unabhängigeMakros aufgeteilt, um diesen Proble-men aus dem Weg zu gehen. Es wirdje ein Makro für den Startkopf und ei-nes für die Werkstückkontur erstellt.

%MMN121212N10 G18 T1 M6N20 S2895 F160 M3 G54N30 G99 X-150 Y0 Z100 I300 K-200N40 G0 X0 Z0 Y10(LEERZEILE EINFUEGEN!)N141414N10 X105 Z-55N20 G1 Y-5N30 G43 X115N40 G41 Z-85N50 G3 X105 Z-95 R10N60 G1 X95N70 G3 X85 Z-85 R10N80 G1 Z-60N90 X80 Z-55N100 X35N110 G3 X35 Z-35 R10

N120 G1 X65N130 Z-25N140 G3 X75 Z-15 R10N150 G1 X100N160 G3 X115 Z-30 R15N170 G1 Z-55N180 G0 Y10N190 G40

Nun sind aus einem Makro nunmehrzwei erstellt worden. Nämlich dasMakro N121212 sowie das MakroN141414.

Wichtig! Die Leerzeile zwischen demletzten Befehl des Makros N121212und der ersten Zeile des neuen MakrosN141414 darf nicht vergessen werden,da sonst SIM_WORK die beidenMakros als ein einziges Makro defi-niert. Dadurch würde beim Aufruf desMakros N121212 auch das MakroN141414 abgearbeitet.

%PMN121518N10 G22 N=121212N20 G22 N=141414

Nun soll die Kontur noch dreimal ge-spiegelt werden:

N30 G73 X-1N40 G22 N=141414N50 G73 X-1 Z-1N60 G22 N=141414N70 G73 X+1N80 G22 N=141414N90 G72N100 G0 Y100 M30

Wie aus der Befehlsfolge ersichtlichist, wurden alle Wiederholbefehle(G14) aus dem letzten Beispiel durchMakroaufrufbefehle (G22) ersetzt.Das Ergebnis ist identisch, nur mitdem Unterschied, dass das Hauptpro-gramm jetzt wesentlich übersichtlicherund kompakter ist.

Die Parameterprogrammierung

Das Programmieren mit Parameternwird häufig als kompliziert undschwierig dargestellt. Dabei ist eswirklich nur eine Übungssache, umdiesen etwas ungewohnten Program-mierstil anzuwenden.

„Parameter“ sind nichts anderes, als„Variablen“, die jedem aus dem Ma-thematikunterricht bekannt sind, denndiese zieren Gleichungen und For-meln. Gleichungen oder Formeln wer-den mit verschiedenen Zeichen und

Buchstaben dargestellt. Eben dieseBuchstaben bezeichnet man als Vari-ablen.

Wer programmierbare Taschenrech-ner besitzt oder mit Tabellenkalkulati-onsprogrammen umgehen kann, weiß,was für eine ungeheure Arbeitsentlas-tung möglich ist, wenn die immergleichen Rechenvorgänge nur einmalprogrammiert werden müssen und esdann genügt, nur mehr die verschiede-nen Zahlenwerte in die entsprechen-den Variablen einzugeben.

Übertragen auf ein NC-Programmbedeutet dies: Konturen werden nichtstarr mit absoluten Werten festgelegt,sondern flexibel mit Parametern pro-grammiert. Dadurch wird es möglich,ähnliche Konturen nur einmal zu pro-grammieren und anschließend durchÄndern der Parameterwerte geomet-risch und größenmäßig unterschied-lich auszuführen.

Ein Verfahrbefehl könnte zum Bei-spiel lauten:

G1 X=E1 Z-=E2

Es sei noch erwähnt, dass die Buchs-tabenbezeichnung für die Parameter jenach Steuerungshersteller unter-schiedlich sein kann und den jeweili-gen Steuerungshandbüchern entnom-men werden muss. Die Philips 432-Steuerung verwendet für Variablenden Buchstaben E.

Zur Einführung in das interessanteFeld der Variablenprogrammierung

Wichtig!Es ist zu beachten, dass die ersten beidenZeilen eines Makros äußerst wichtig sind!Der Befehl %MM gibt der Steuerung be-kannt, dass nun ein Makro (Unterpro-gramm) folgt. Die nachfolgende Zeile, dieetwa N121212 lauten kann, ist die "Erken-nungsnummer" des Makros. Nach dieserNummer sucht die Steuerung, wenn diesesMakro vom Hauptprogramm aus aufgeru-fen wird.

Der Wert der Makro ID-Nummer muss imFall der Philips 432-Steuerung zwischen9001 und 9999999 liegen!

Während der Eingabe eines Makros er-folgt keine Simulation. Die Simulationstartet erst, wenn das Makro aus einemHauptprogramm aufgerufen wird.

Page 3: Programmieren nach DIN 66025 Unterprogrammtechnik ECNC ... · Kontur nach Wunsch zu gestalten. Es lohnt sich wirklich, mit der Parameter-programmierung vertraut zu werden, da große

keiten. Eine gute Möglichkeit wärezum Beispiel, alle benötigten Dreh-zahlen und Vorschübe in einem Mak-ro zusammenzufassen und dort zukommentieren.

Dazu ein Beispiel: In einem Werks-tück soll ein Gewinde eingebrachtwerden. Die dazu notwendigen Ar-beitsschritte: Zentrieren, Kernlochbohren, senken, Gewinde bohren.

Bevor das Programm eingegebenwird, müssen zunächst alle Speichergelöscht und die Nullpunktverschie-bewerte sowie die Werkzeugabmes-sungen in die entsprechenden Spei-cher eingegeben werden:

G54 X250 Y110 Z150

T1 L95.1 R2T2 L97.6 R2.5T3 L103.4 R3

%MMN111111N10 E1=850 ( Drehzahl Zentrierbohrer T1 )N20 E2=750 ( Drehzahl Spiralbohrer T2 )N30 E3=550 ( Drehzahl Gewindebohrer T3 )N40 E5=50 ( Vorschub Zentrierbohrer T1 )N50 E6=75 ( Vorschub Spiralbohrer T2 )

N121212N10 G18 ( Startkopf )N20 G54N30 G99 X-150 Y0 Z100 I300 K-200N40 G0 X0 Z0 Y10N50 G78 X0 Y0 Z0 P1

N131313N10 T1 M6 ( Zentrieren )N20 G81 X1 Y2 Z-5.72 B10 F=E5 S=E1 M3N30 G79 P1

N141414N10 T2 M6 ( Kernloch bohren )N20 G81 X1 Y2 Z-15 B10 F=E6 S=E2 M3N30 G79 P1

wird das zuletzt erarbeitete Übungs-beispiel abgeändert und in ein Para-meterprogramm umgewandelt. Es istanzuraten, vor dem Umschreiben fest-zulegen, welche Werte im Programmüberhaupt vorkommen. Anschließendbesteht die Möglichkeit, anhand dererstellten Tabelle die nötigen Parame-ternummern zuzuordnen.

Wichtig ist, dass jede Koordinateeine eigene, nur einmal vorkommendeVariable erhält. Anhand dieser Tabelle,wie sie in Bild 2 exemplarisch darge-stellt wird, kann das CNC-Programmeinfach umgestellt werden.

%MMN121212N10 G18 T1 M6N20 S2895 F160 M3 G54N30 G99 X-150 Y0 Z100 I300 K-200N40 G0 X0 Z0 Y10

N141414N10 X=E3 Z-=E13N20 G1 Y-=E11N30 G43 X=E2N40 G41 Z-=E14N50 G3 X=E3 Z-=E15 R=E21N60 G1 X=E4N70 G3 X=E5 Z-=E14 R=E21N80 G1 Z-=E16N90 X=E6 Z-=E13N100 X=E7N110 G3 X=E7 Z-=E17 R=E21N120 G1 X=E8N130 Z-=E18N140 G3 X=E9 Z-=E19 R=E21N150 G1 X=E10N160 G3 X=E2 Z-=E20 R=E22N170 G1 Z-=E13N180 G0 Y=E12N190 G40

Würde nun dieses Makros ablaufen,käme noch nicht das gewünschte Er-gebnis heraus, denn in allen Variablenstehen ja nur Nullen. Es müssen alsovor dem ersten Aufruf sämtliche Vari-ablen mit den gewünschten Wertengeladen werden, was über das Haupt-programm geschehen kann.

%PMN121518N10 E1=105 E2=115 E3=105 E4=95 E5=85E6=80N20 E7=35 E8=65 E9=75 E10=100 E11=5E12=10N30 E13=55 E14=85 E15=95 E16=60 E17=35E18=25N40 E19=15 E20=30 E21=10 E22=15N50 G22 N=121212N60 G22 N=141414N70 G0 Y100 M30

Das Makro funktioniert nun und bietetsich zur Manipulation der Werkstück-kontur an. Natürlich können auch beimNC-Programmieren per Parameter wiegehabt alle Möglichkeiten der Steue-rung genutzt werden.

So ist es beispielsweise problemlosmöglich, die Kontur zu spiegeln unddiese gleichzeitig leicht zu verändern.Dazu müssen vor dem Spiegeln nur dieentsprechenden Parameter abgeändertwerden. Zu diesem Zweck kann bei-spielsweise das Programm direkt imEditor, der mit [Strg] + [K] aufgerufenwird, verändert werden.

N70 E7=15N80 G73 X-1N90 G22 N=141414

Als Ergebnis entsteht ein Spiegelbildder Ausgangskontur, nur eben mit einerlängeren Nase. Wenn die Kontur zu-sätzlich um die Z-Achse gespiegeltwerden soll, dabei jedoch diese Nasezu verkürzen ist, muss folgender Pro-grammcode hinzugefügt werden:

N100 E7=55N110 G73 Z-1 X-1N120 G22 N=141414

Es ist durch die Parameterprogrammie-rung nun schon fast eine Spielerei, dieKontur nach Wunsch zu gestalten. Eslohnt sich wirklich, mit der Parameter-programmierung vertraut zu werden,da große Programmiervorteile warten.Soll die Kontur um die Z-Achse ge-spiegelt werden, die Nase jedoch wie-der ihre Ursprungslänge erhalten undzusätzlich der Radius R15 in einen Ra-dius R25 geändert werden, müssenmehrere Parameterwerte verändertwerden:

N130 E7=35 E10=90 E20=40 E22=25N140 G73 Z-1 X+1N150 G22 N=141414N160 G0 Y100 M30

Mit der Parameterprogrammierung istaber noch viel mehr möglich. AuchDrehzahlen, Vorschübe, Drehrichtung,Verweilzeiten, Werkzeugaufrufe, Null-punktverschiebungen et cetera lassensich mit Parametern programmieren.Damit öffnen sich ungeahnte Möglich-

Parameter ermitteln

X E Y E Z E R E------------------------------------------------X105 1 Y-5 11 Z-55 13 R10 21X115 2 Y10 12 Z-85 14 R15 22X105 3 Z-95 15X95 4 Z-60 16X85 5 Z-35 17X80 6 Z-25 18X35 7 Z-15 19X65 8 Z-30 20X75 9X100 10 2

Page 4: Programmieren nach DIN 66025 Unterprogrammtechnik ECNC ... · Kontur nach Wunsch zu gestalten. Es lohnt sich wirklich, mit der Parameter-programmierung vertraut zu werden, da große

N50 G14 J=E3 N1=30 N=40 (Schleife)N60 G0 Y100 M30

Hinweis: Es ist in SIM_WORK nichtmöglich, aus einem Makro ein weite-res Makro aufzurufen. Diese Eigen-schaft besitzen jedoch viele moderneSteuerungen, sodass verschachtelteProgramme kein Problem sind.

Wer zu einem Meister der CNC-Tech-nik aufsteigen will, sollte sich nun ei-gene, anspruchsvolle Übungsbeispieleausdenken und in SIM_WORK simu-lieren, damit die echte CNC-Maschinesicher beherrscht wird.

2 Durch eine Kombi-nation von Spiegeln,Makro und Parame-terprogrammierunglassen sich leicht geo-metrische Abwand-lungen einer Origi-nalkontur erzeugen.

3 Um im Editor je-weils ein Hauptpro-gramm oder ein Mak-ro eingeben zu kön-nen, muss der jeweili-ge Eingabebereichmittels [Strg] + [ ]beziegungsweise[Strg] + [ ] gewech-selt werden.

N151515N10 T3 M6 ( Gewinde bohren )N20 G84 X1 Y2 Z-12 B15 I5 J1 S=E3 M3N30 G79 P1

%PMN121314N10 G22 N=111111 (Parameter laden)N20 G22 N=121212 (Startkopf)N30 G22 N=131313 (Zentrieren)N40 G22 N=141414 (Kernloch bohren)N50 G22 N=151515 (Gewinde bohren)

Sollte sich während der realen Bear-beitung herausstellen, dass eine Dreh-zahl oder ein Vorschub noch nicht op-timal eingestellt ist, so genügt es, dasMakro N111111 entsprechend zu än-dern. Dadurch entfällt die umständli-che und fehlerbehaftete Suche der ent-sprechenden Werte im Hauptpro-gramm oder in unterschiedlichenMakros.

Rechnen mit Parametern

Es kommt aber noch toller! Mit Mak-ros ist es sogar möglich, mit den vierGrundrechenarten zu rechnen, wennParameter im Programm verwendetwerden. Dies ermöglicht es, mit weni-gen Programmsätzen auch etwas kom-

pliziertere Konturen zu erstellen oderDrehzahlen und Vorschübe zu ändern,ohne dass extra ein Befehl dafür pro-grammiert wird. Es genügt, in den ent-sprechenden Parameter einen neuenWert zu schreiben, der aus einer For-mel berechnet wurde. Im nächsten Bei-spiel wird stufenlos die Drehzahl derFrässpindel mithilfe einer Schleife undder Parametertechnik verändert.%MMN111111N10 E1=100 ( Drehzahl Startwert )N20 E2=100 ( Drehzahl Inkrementwert )N30 E3=30 ( Schleifenzahl )N40 E4=2 ( Verweilzeit in Sekunden )

N121212N10 G18 T1 M67 ( Startkopf )N20 G54 S=E1 M3N30 G99 X-150 Y0 Z100 I300 K-200N40 G0 X0 Z0 Y10

N131313N10 E1=E1+E2 ( Drehzahl ändern)N20 S=E1

%PMN121314N10 G22 N=111111 (Parameter laden)N20 G22 N=121212 (Startkopf )N30 G22 N=131313 (Drehzahl ändern)N40 G4 X=E4 (Verweilzeit)

2

www.weltderfertigung.de

Anzeige

www.hsk.com3