584.829 aktive Mitglieder*
4.798 Besucher online*
Kostenfrei registrieren
Anmelden Registrieren
FANUC Forum

Helix Makro Bohrfräsen, Makroprogramm Helix Fräsen Oi-MB

Beitrag 08.01.2018, 20:50 Uhr
Jan-B
Jan-B
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 08.01.2018
Beiträge: 4

Hallo zusammen ;-) bräuchte mal eure Hilfe. Ich soll ein Makroprogramm für ein Helixfräsen erstellen. Bisher habe ich das unten stehende Programm aber es kommt immer wieder der Fehler "114 Format Fehler" ich komm einfach nicht mehr weiter. Wer kann mir da helfen?

N10 T10 M150

N20 G0 G90 G54 X0 Y0 S2000 M3

N30 G200 X100 Y100 Z-5 D30 R10 H10 Q1 F1000 A0 (G200 ist in den Parametern bereits hinterlegt [Ersatz für G65 P9010])

N40 M00

X=#24 (X ABSOLUT)
Y=#25 (Y ABSOLUT)
Z=#26 (TIEFE INKREMENTAL)
D=#7 (DURCHMESSER)
R=#18 (RADIUS FRÄSER)
H=#11 (WERKZEUGKORR. Z)
Q=#17 (ZUSTELLUNG Z)
F=#9 (VORSCHUB FRÄSEN)
A=#1 (KORREKTUR. OBERFL.)

%9010

N10 #27=[-1*[#26/#17]]

N20 #28=FUP[#27]

N30 #29=[[[#28+#17]-#26]+#1]

N40 #30=[[#7/2]-#18]

N50 #31=#29

N55 IF[[#7/2]LE#18] GOTO 1000

N60 G0 G90 G54 X#24 Y#25 M3

N70 G0 G43 Z#29 H#11

N80 G1 G91 X#30 F#9

N90 WHILE[#31LT#26] DO1

N100 G3 I-#30 Z-#17

N110 #31=#31-#17

N120 END1

N130 G3 I-#30

N140 G1 X-#30

N150 G0 G90 Z#29

N160 G0 Z50

N170 M99

N1000 #3000 = 1 (DURCHMESSER ZU KLEIN)

N200 M99
TOP    
Beitrag 11.01.2018, 18:51 Uhr
Jan-B
Jan-B
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 08.01.2018
Beiträge: 4

Hat sich erledigt sobald ich die Zeit habe lade ich das Programm hier rein damit es alle nutzen können
TOP    
Beitrag 12.01.2018, 19:55 Uhr
Jan-B
Jan-B
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 08.01.2018
Beiträge: 4

Hier das fertige Programm G200 -> hinterlegter Aufruf in den Parametern der Maschine... ansonsten G65 P9010 ....

Definition:

X = Absolut Mitte Bohrung
Y = Absolut Mitte Bohrung
Z = Tiefe Tasche/Bohrung
D = Durchmesser Tasche/Bohrung
R = Fräserradius
H = Werkzeuglänge Speicher
Q = Zustellung in Z
F = Vorschub
A = Referenzoberfläche
B = Tasche = 1 Durchgangsbohrung =0 bzw entfällt


Hauptprogramm mit Aufruf


:0001

N10T10M150

N20G0G90G54X0Y0S2000M3

N30G200X100Y100Z-5R10D30H10Q1F1000A+15B1

N40M00


Makroprogramm


:9010

N10IF[#17LE#0]GOTO1005(ZUSTELLUNG PRUEFEN)

N20#27=[-1*[#26/#17]](BERECHNEN DER UMDREH.)

N30#28=FUP[#27](AUFRUNDEN DER UMDREH.)

N40#29=[[[#28+#17]+#26]+#1](STARPUNKT FESTLEGEN)

N50#30=#7/2(DURCHMESSER ZU RADIUS)

N60#31=#29(ANFANGSPUNKT NEU SETZEN)

N70#32=[#30-#18](SEITLICHE ZUSTELLUNG)

N80IF[#30LE#18]GOTO1000(DURCHM. U. RAD. PRUEFEN)

N90IF[#26GE#0]GOTO1001(TIEFE PRUEFEN)

N100IF[#7LE#0]GOTO1002(DURCHMESSER PRUEFEN)

N110IF[#18LE#0]GOTO1003(RADIUS PRUEFEN)

N120IF[#11LE#0]GOTO1004(WERKZEUGKORR. PRUEFEN)

N130IF[#9LE#0]GOTO1006(VORSCHUB PRUEFEN)

N140G0G90X#24Y#25M3

N150G0G43Z#29H#11

N160G1G91X#32F#9

N170WHILE[#31GT#26]DO1

N180G3I-#32Z-#17

N190#31=#31-#17

N200END1

N210IF[#2EQ#0]GOTO230

N220G3I-#32

N230G1X-#32

N240G0G90Z#29

N250M99

N1000#3000=1(DURCHMESSER ZU KLEIN)

N1001#3000=2(TIEFE PRUEFEN -Z-)

N1002#3000=3(DURCHMESSER PRUEFEN -D-)

N1003#3000=4(RADIUS PRUEFEN -R-)

N1004#3000=5(WERKZEUGKORR. PRUEFEN -H-)

N1005#3000=6(ZUSTELLUNG PRUEFEN -Q-)

N1006#3000=7(VORSCHUB PRUEFEN -F-)

N260M99



Wichtig!!! N10 Prüfen der Zustellung muss zu anfang stehen da sonst wenn Q=0 oder undefiniert kommt es zum Fehler Division durch Null! am besten eins zu eins kopieren bei uns auf der Maschine läuft das Programm aber wie immer besser erst in der Luft testen

MfG Jan

Sagt doch mal was ihr davon haltet ;-)


Der Beitrag wurde von Jan-B bearbeitet: 12.01.2018, 19:58 Uhr
TOP    
Beitrag 13.01.2018, 15:25 Uhr
eckitsch
eckitsch
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 09.08.2007
Beiträge: 382

Hallo,

getestet habe ich deinen Zyklus noch nicht. Ändern würde ich aber trotzdem ein paar Sachen.
Die Parameternamen würde ich an die bestehenden Bohr- und Fräszyklen (G81, G83… G12, G13) angleichen.
G200 (X.. Y..) Z.. R.. Q.. F.. I.. D.. Mehr braucht es nicht.

Also „D“ als Offsetnummer des Werkzeuges und daraus den Fräserradius auslesen.
#nn=#[2400+#7]+#[2600+#7]
Dann kann der Durchmesser der Tasche übers Werkzeug statt übers Programm korrigiert werden.

„I“ als Taschendurchmesser.

„R“ als Sicherheitsebene.

„H“ wird nicht benötigt. Die Länge sollte schon vor dem Zyklus aktiv sein.

„XY“ sind auch nicht unbedingt erforderlich.
N135 IF [#24 EQ #0] THEN #24=#5001
N136 IF [#25 EQ #0] THEN #25=#5002

Vielleicht ist die G98-Logik hilfreich.
aus
N140 G0 G90 X#24 Y#25 M3
N150 G0 G43 Z#29 H#11

N240 G0 G90 Z#29
N250 M99

wird
N140 G00 X#24 Y#25
N145 #33=#5003 (aktuelle Z-Position)
N150 G00 Z#29

N240 G0 G90 Z#33
N250 M99

Gruß eckitsch
TOP    
Beitrag 15.01.2018, 18:31 Uhr
Jan-B
Jan-B
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 08.01.2018
Beiträge: 4

Hallo Ecktisch,
Danke das du dich meldest ;-) Ich denke ich lasse das Programm lieber so, da unser Seniorchef vorwiegend an der Maschine arbeitet. Deshalb finde ich es besser es für ihn so zu machen ;-) Aber Danke für die Hinweise. Das Programm läuft wie gesagt bei uns auf der Maschine 1a.

Der Sicherheitsabstand beträgt immer mindestens 1x die Zustellung. Und bei einer Tiefe die nicht glatt durch die Zustellung teilbar ist den Restwert + 1x die Zustellung (N40 festlegen des Startpunktes)

Gruss Jan
TOP    



1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: