HEIDENHAIN

TNC 426 Unterprogramm wiederholen

Beitrag 07.06.2023, 20:12 Uhr
NiclasF
Level 1 = Community-Lehrling
*
Hallo zusammen,

vorab schonmal, ich bin kein gelernter Zerspaner. Wir sind ein Schweißfachbetrieb und gerade dabei uns mehr mit unserer Mikron UMS710/900 (TNC426) zu beschäftigen. Jetzt habe ich für ein Programm ein LBL erstellt, welches ich mehrfach wiederholen wollte. Z.B. mit dem Befehl "CALL LBL 1 REP 10/10". Wenn ich das Programmiere fährt die Maschine das Unterprogramm trotzdem nur 1 mal. Es funktioniert wenn, ich diesen Befehl in ein extra Unterprogramm packe und dann dieses ausführe.

Z.B.

LBL 2
CALL LBL 1 REP 10/10
LBL0

Dann fährt das Programm zwar mehrmals, allerdings kann ich danach Linear nicht mehr verfahren. Die Maschine beendet das LBL und bleibt dann einfach stehen.

Im Moment behelfe ich mir, in dem ich das LBL mehrmals hintereinander aufrufe also,

CALL LBL 1
CALL LBL 1
CALL LBL 1
CALL LBL 1
CALL LBL 1

Das kann allerdings nicht auf Dauer die Lösung sein, vor Allem wenn ich das Unterprogramm sehr oft hintereinander aufrufen will.

Ich würde mich freuen wenn mir jemand weiterhelfen könnte!

Danke im Voraus!
   
Beitrag 07.06.2023, 22:24 Uhr
klausc
Level 2 = Community-Facharbeiter
**
Hallo,
mal so aus dem blauen heraus

LBL 101
CALL LBL 1
CALL LBL101 REP 10/10
Nach der 10ten Wiederholung, geht es dann hier weiter.

Ohne weiteren Programmcode ist es ein wenig schwer.
Gruß
   
Beitrag 09.06.2023, 16:00 Uhr
NiclasF
Level 1 = Community-Lehrling
*
QUOTE (klausc @ 07.06.2023, 23:24 Uhr) *
Hallo,
mal so aus dem blauen heraus

LBL 101
CALL LBL 1
CALL LBL101 REP 10/10
Nach der 10ten Wiederholung, geht es dann hier weiter.

Ohne weiteren Programmcode ist es ein wenig schwer.
Gruß


Funktioniert! Besten Dank!
   
Beitrag 09.06.2023, 16:39 Uhr
drakefighter
Level 3 = Community-Techniker
***
Hi

Ich empfehle einen Blick in den Lotsen, sprich Programmieranleitung.

Call LBL Repeat ist eine Programmteilwiederholung

Wiederholt wird das zwischen dem LBL x und dem Call LBL Repeat.
Das LBL x steht vor dem Call LBL Repeat. LBL 0 gibt es hier normalerweise nicht.

Call LBL OHNE Repeat ist der Aufruf eines Unterprogrammes.
Das Unterprogramm steht zwischen LBL x und LBL 0 und hinter dem M2 bzw. M30

Gruß Rainer





QUOTE (NiclasF @ 07.06.2023, 21:12 Uhr) *
Hallo zusammen,

vorab schonmal, ich bin kein gelernter Zerspaner. Wir sind ein Schweißfachbetrieb und gerade dabei uns mehr mit unserer Mikron UMS710/900 (TNC426) zu beschäftigen. Jetzt habe ich für ein Programm ein LBL erstellt, welches ich mehrfach wiederholen wollte. Z.B. mit dem Befehl "CALL LBL 1 REP 10/10". Wenn ich das Programmiere fährt die Maschine das Unterprogramm trotzdem nur 1 mal. Es funktioniert wenn, ich diesen Befehl in ein extra Unterprogramm packe und dann dieses ausführe.

Z.B.

LBL 2
CALL LBL 1 REP 10/10
LBL0

Dann fährt das Programm zwar mehrmals, allerdings kann ich danach Linear nicht mehr verfahren. Die Maschine beendet das LBL und bleibt dann einfach stehen.

Im Moment behelfe ich mir, in dem ich das LBL mehrmals hintereinander aufrufe also,

CALL LBL 1
CALL LBL 1
CALL LBL 1
CALL LBL 1
CALL LBL 1

Das kann allerdings nicht auf Dauer die Lösung sein, vor Allem wenn ich das Unterprogramm sehr oft hintereinander aufrufen will.

Ich würde mich freuen wenn mir jemand weiterhelfen könnte!

Danke im Voraus!
   
Beitrag 09.06.2023, 17:08 Uhr
klausc
Level 2 = Community-Facharbeiter
**
@ drakefighter
thumbs-up.gif

Nur mit dem kleinen Snippet, kann man eben nicht viel anfangen. Was wir auch noch machen, immer eine NPV auf die fertige Fläche. Das hat dann den Vorteil, das man nur noch den Schlichter aufrufen muß und Q10=0 definiert.

Bsp.

TOOL CALL 1 ; Schrupper
Q10 = 10 ; Tiefe
LBL 101 ; kleine Eselsbrücke -> LBL 1 = LBL 101 / LBL 2 = LBL 102 usw.
Q10 = Q10 - 1 ; Zustellung
CALL LBL 1 REP 9/9 ; Anzahl Wiederholungen = Tiefe -1

Q10 = 5 ; Tiefe
LBL 102 ; kleine Eselsbrücke -> LBL 1 = LBL 101 / LBL 2 = LBL 102 usw.
Q10 = Q10 - 1 ; Zustellung
CALL LBL 2 REP 4/4 ; Anzahl Wiederholungen = Tiefe -1
L Z150

TOOL CALL 2 ; Schlichter
Q10 = 0 ; Tiefe
CALL LBL 1
CALL LBL 2
L Z150

M30

* - NUT 2
LBL 2
CYCL DEF 7 X0 Y0 Z-5
L X150 Y-10 Z50
L Z +Q10
L Y100
L Z50
LBL 0

* - NUT 1
LBL 1
CYCL DEF 7 X0 Y0 Z-10
L X50 Y-10 Z50
L Z +Q10
L Y100
L Z50
LBL 0

Anmerkung
Ich habe mir angewöhnt, die Bemerkung ( * - ) ÜBER das LBL zu schreiben. Damit kann ich rechts dann konfortabel nach unten oder oben springen und sehe das LBL.
* - NUT 1
LBL 1

Umgekehrt, passt dann die markierte Beschreibung nicht zum LBL. Ich kenne viele die es so programmieren, finde das erste aber Übersichtlicher. Ist einfach eine Gewohnheitssache.
LBL 1
* - NUT 1

Was ich auch mache, ist die LBL von unten nach oben. Das hat den Grund, da man ja über M30 im Hauptprogramm tippt und dann in das LBL runterspringt. Je länger das PGM wird, um so weiter muß man nach unten springen. In dieser Reihenfolge sind es immer nur ein paar klicks runter, dann Unterpgm geschrieben und wieder nach oben ins Hauptprogramm.

M30
LBL 3
LBL 2
LBL 1

Das ist nur mal kurz erklärt meine (ehemalige) Programmierweise. Vielleicht bringt es dir was. Viele machen auch statt CALL LBL 1 REP 10/10 ein "wenn größer dann". Ich mochte das nicht so.

Der Beitrag wurde von klausc bearbeitet: 09.06.2023, 17:10 Uhr
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: