584.817 aktive Mitglieder*
4.673 Besucher online*
Kostenfrei registrieren
Anmelden Registrieren
FANUC Forum

Hilfe für Fanuc 18i M Programmierung, Inkrementale NPV, Rotieren, Spiegeln

Beitrag 24.10.2017, 07:14 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

Guude!

Ich bräuchte bitte mal, wenn es geht, rasche Hilfe beim Programmieren einer Fanuc 18i M.
In der Regel arbeite ich mit Heidenhain, DIN-ISO ist normal auch kein Problem, jedoch arbeite ich mit der Fanuc relativ selten.
Wir müßen auf ein Teil die Teilenummer gravieren. Dafür habe ich ein Gravierprogramm geschrieben.
Nach jedem gravierten Zeichen wird inkremental der Nullpunkt verschoben, dann beginnt das nächste Zeichen.
Nach beendigung der Gravur muß für das Folgewerkzeug der Nullpunkt G55 wieder auf original gesetzt werden.
Die Programmieranleitung ist auf Englisch und es stehen nicht immer Beispielsätze darin und mein Englisch ist auch nicht das allerbeste.
Könnte sich mal einer das Programm anschauen und mir sagen, ob das so stimmt?
Vor allem halt die NPV, Rotieren, Spiegeln und deren Rücksetzung (Fett geschrieben)

122 T20 S10000 M6
123 ;[VHM-Stichel 6x60Grad]
124 ;[18MM AUS WELDON]
125 ;[ENPRO NINE 99619-V060-06]
126 ;[Platte NINE NC2071]
128 ;[G55 LINKER SCHRAUBSTOCK]
129 ;[GRAVIEREN 92-36-71/Z]
131 ;
;
;G55 G90
;
133 ;[EVENTUELLE INKREMENTELLE NPV FUER GRAVIERANFANG]
134 G10L20P2X50Y-50

;
138 G0 X+0 Y+0 M3
138 G43 Z50 H20 M8
139 ;
140 ;[#1= MASSSTAB 1 = ZEICHENGROESSE 10x6MM]
141 #1 =0.25
142 ;
143 ;[#2= MASSSTAB 1 = ABSTAND ZEICHEN = 2MM
144 #2 =0.25
145 ;
146 ;[#3= GRAVIERTIEFE]
147 #3 =0.1
148 ;
149 ;[#30= EINTAUCHVORSCHUB]
150 #30 =60
151 ;
152 ;[#31= GRAVIERVORSCHUB]
153 #31 =400
154 ;
155 ;[EVENTUELLE DREHUNG DER SCHRIFT]
156 G68 R0

158 ;
159 ;[SPIEGELN IN Y-- OHNE SPIEGELUNG SIND DIE ZEICHEN SPIEGELVERKEHRT]
160 G51.1 Y

161 ;
162 ;[ZAHL 9]
1 #4 =7
2 #5 =3
3 #6 =2.423
4 #7 =5.598
5 #8 =5.5
6 #10 =8
7 #4 =[#4 * #1]
8 #5 =[#5 * #1]
9 #6 =[#6 * #1]
10 #7 =[#7 * #1]
11 #8 =[#8 * #1]
12 #10 =[#10 * #2]
13 G0 G90 X#6 Y0 M3
14 Z1 M8
15 G1 Z-#3 F#30
16 X#7 Y-#8 F#31
18 G2 X#7 Y-#8 I#5 J-#4
19 G0 Z2
G10L20P2X#10
;
;
164 ;[ZAHL 2]
1 #4 =7
2 #5 =6
3 #6 =3
4 #7 =5.121
5 #8 =4.879
6 #10 =8
7 #4 =[#4 * #1]
8 #5 =[#5 * #1]
9 #6 =[#6 * #1]
10 #7 =[#7 * #1]
11 #8 =[#8 * #1]
12 #10 =[#10 * #2]
13 G0 G90 X0 Y-#4 M3
14 Z1 M8
15 G1 Z-#3 F#30
17 G3 X+#7 Y-#8 I#6 J-#4 F#31
18 G1 X0 Y0
19 X#5
20 G0 Z1
G10L20P2X#10
;
;
166 ;[ZEICHEN -MINUS- - BINDESTRICH]
2 #4 =5
3 #5 =1.8
4 #6 =4.2
5 #8 =8
6 #4 =[#4 * #1]
7 #5 =[#5 * #1]
8 #6 =[#6 * #1]
9 #8 =[#8 * #2]
10 G0 G90 X#5 Y-#4 M3
11 Z1 M8
12 G1 Z-#3 F#30
13 X#6 F#31
14 G0 Z2
G10L20P2X#8
;
168 ;[ZAHL 3]
1 #4 =10
2 #5 =1
3 #6 =6
4 #7 =2
5 #8 =6
6 #9 =3
7 #11 =8
8 #4 =[#4 * #1]
9 #5 =[#5 * #1]
10 #6 =[#6 * #1]
11 #7 =[#7 * #1]
12 #8 =[#8 * #1]
13 #9 =[#9 * #1]
14 #11 =[#11 * #2]
15 G0 G90 X#5 Y-#4 M3
16 Z1 M8
17 G1 Z-#3 F#30
18 X#6 F#31
19 X#7 Y-#8
20 X#9
22 G3 X+#9 Y+0 I#9 J-#9
23 G1 X+0
24 G0 Z+2
G10L20P2X#11
;
;
170 ;[ZAHL 6]
1 #4 =10
2 #5 =3
3 #6 =3.577
4 #7 =0.402
5 #8 =4.5
6 #10 =8
7 #4 =[#4 * #1]
8 #5 =[#5 * #1]
9 #6 =[#6 * #1]
10 #7 =[#7 * #1]
11 #8 =[#8 * #1]
12 #10 =[#10 * #2]
13 G0 G90 X#6 Y-#4 M3
14 Z1 M8
15 G1 Z-#3 F#30
16 X#7 Y-#8 F#31
18 G2 X#7 Y-#8 I#5 J-#5
19 G0 Z2
G10L20P2X#10
;
;
166 ;[ZEICHEN -MINUS- - BINDESTRICH]
2 #4 =5
3 #5 =1.8
4 #6 =4.2
5 #8 =8
6 #4 =[#4 * #1]
7 #5 =[#5 * #1]
8 #6 =[#6 * #1]
9 #8 =[#8 * #2]
10 G0 G90 X#5 Y-#4 M3
11 Z1 M8
12 G1 Z-#3 F#30
13 X#6 F#31
14 G0 Z2
G10L20P2X#8


174 ;[ZAHL 7]
1 #4 =10
2 #5 =6
3 #6 =5
4 #7 =2
5 #8 =4
6 #9 =3
7 #11 =8
8 #4 =[#4 * #1]
9 #5 =[#5 * #1]
10 #6 =[#6 * #1]
11 #7 =[#7 * #1]
12 #8 =[#8 * #1]
13 #9 =[#9 * #1]
14 #11 =[#11 * #2]
15 G0 G90 X0 Y-#4 M3
16 Z1 M8
17 G1 Z-#3 F#30
18 X#5 F#31
19 X0 Y+0
20 X#9 Y-#6
21 X#8
22 X#7
23 G0 Z2
G10L20P2X#11
;
;
176 ;[ZAHL 1]
1 #4 =10
2 #5 =4
3 #6 =6
4 #8 =8
5 #4 =[#4 * #1]
6 #5 =[#5 * #1]
7 #6 =[#6 * #1]
8 #8 =[#8 * #2]
9 G0 G90 X0 Y-#6 M3
10 Z1 M8
11 G1 Z-#3 F#30
12 X#5 Y-#4 F#31
13 Y0
14 G0 Z2
G10L20P2X#8
;
;
178 ;[ZEICHEN SLASH / SCHRAEGSTRICH]
2 #4 =10
3 #6 =6
4 #4 =[#4 * #1]
5 #6 =[#6 * #1]
6 #8 =[#8 * #2]
7 G0 G90 X0 Y0 M3
8 Z1 M8
9 G1 Z-#3 F#30
10 X#6 Y-#4 F#31
11 G0 Z2
G10L20P2X#8
;
;
180 ;[LEERZEICHEN / SPACE]
2 Q4 =8
3 Q4 =[Q4 * Q2]
G10L20P2X#4
;
;
182 ;[BUCHSTABE Z]
2 #4 =10
3 #6 =6
4 #4 =[#4 * #1]
5 #6 =[#6 * #1]
6 #8 =[#8 * #2]
7 G0 G90 X#6 Y0 M3
8 Z+1 M8
9 G1 Z-#3 F#30
10 X+0 F#31
11 X+#6 Y-#4
12 X+0
13 G0 Z+2
G10L20P2X#8
;
184 ;
185 ;[ROTATION-- SPIEGELUNG-- NPV AUFHEBEN]
186 G69

187 ;
188 G51.1 Y
189 ;
190 G55
194 ;
195 G0 G40 G80 Z150 M9
G52 X200 Y0 Z0
196 M30


Gruß aus Middlhesssn,

Holgi


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 24.10.2017, 07:34 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

Hey Holgi,

erstmal, Kommentare bitte mit ( xxx ) ... ";" entfernen

N123 (VHM-Stichel 6x60Grad)

Satznummern bekommen eine N davor.

dein Leerzeichen????

CODE
180;[LEERZEICHEN / SPACE]
2 Q4 =8
3 Q4 =[Q4 * Q2]
G10L20P2X#4


ist auch noch etwas HDH lastig wink.gif

und wieso Willst ständig den NP neu schreiben?
G68.3 > Koordinaten Transformation im Aktiver Tranformation macht da wesentlich mehr sinn.


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 24.10.2017, 08:14 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

QUOTE (Hexogen @ 24.10.2017, 08:34 Uhr) *
Hey Holgi,

erstmal, Kommentare bitte mit ( xxx ) ... ";" entfernen

Ja stimmt, hast recht, runde Klammer und ohne Semikolon davor. Da kannst Du sehen, wie oft ich Fanuc programmiere. Manches vergisst man halt mit der Zeit.





QUOTE (Hexogen @ 24.10.2017, 08:34 Uhr) *
N123 (VHM-Stichel 6x60Grad)

Satznummern bekommen eine N davor.

Ja, das weiß ich, wird wenn alles stimmt natürlich berichtigt, ist ja jetzt sozusagen der Rohentwurf.




QUOTE (Hexogen @ 24.10.2017, 08:34 Uhr) *
dein Leerzeichen????

CODE
180;[LEERZEICHEN / SPACE]
2 Q4 =8
3 Q4 =[Q4 * Q2]
G10L20P2X#4


ist auch noch etwas HDH lastig wink.gif

Ja sorry. Danke für den Hinweis. Ich hatte diese Gravierprogramme ursprünglich mal für Heidenhain geschrieben und jetzt aktuell schnell mal für Fanuc umgeschrieben. Das habe ich vergessen zu ändern.





QUOTE (Hexogen @ 24.10.2017, 08:34 Uhr) *
und wieso Willst ständig den NP neu schreiben?
G68.3 > Koordinaten Transformation im Aktiver Tranformation macht da wesentlich mehr sinn.


Im Heidenhain Programm ( da sieht das alles ein bißchen anders aus, weil die mehr "kann" als die Fanuc) wird halt nach jedem Zeichen inkremental der Nullpunkt für das nächste Zeichen verschoben, weil ja das eigentliche Zeichenprogramm immer absolut von X0Y0 ausgeht. Funktioniert seit Jahrzehnten gut. Also müßte das doch auch mit Fanuc funktionieren.
G68.3 finde ich nicht in der Programmieranleitung.
Könntest Du mir ein Beispiel geben anhand des Leerzeichens?

(LEERZEICHEN / SPACE)
#4 =8
#4 =[#4 * #2]
G10L20P2X#4 (Stattdessen mit #4 eine andere inkrementale NPV Funktion?)

Stimmt den das mit der Rotation und dem Spiegeln?
Und wie wird die inkrementale NPV in X wieder Resetet für das Folgewerkzeug?

Ich muß das alles leider "mal schnell nebenbei" machen, deshalb habe ich nicht soviel Zeit, um mich eingehend damit zu beschäftigen.
Der Kollege, der normalerweise mit der Maschine arbeitet, bekommt das überhaupt nicht auf die Reihe.


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 24.10.2017, 09:49 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

CODE
N155 (EVENTUELLE DREHUNG DER SCHRIFT)
N156 G68 R0

N159 (SPIEGELN IN Y-- OHNE SPIEGELUNG SIND DIE ZEICHEN SPIEGELVERKEHRT)
N160 G51.1 Y0
....
Nxxx G50.1 (spiegeln aus)
Nxxx G69 (rotation aus)
G10L20P2X#10


Rotation und Spiegelung musst noch abwählen.

Du kannst dir die werte aus G55 lesen
#5241
:
#5248
und zwischenspeichern.
danach wieder in G55 schreiben.


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 24.10.2017, 10:39 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

QUOTE (Hexogen @ 24.10.2017, 10:49 Uhr) *
CODE
N155 (EVENTUELLE DREHUNG DER SCHRIFT)
N156 G68 R0

N159 (SPIEGELN IN Y-- OHNE SPIEGELUNG SIND DIE ZEICHEN SPIEGELVERKEHRT)
N160 G51.1 Y0
....
Nxxx G50.1 (spiegeln aus)
Nxxx G69 (rotation aus)
G10L20P2X#10


Rotation und Spiegelung musst noch abwählen.

Du kannst dir die werte aus G55 lesen
#5241
:
#5248
und zwischenspeichern.
danach wieder in G55 schreiben.


Verstehe ich das richtig, daß ich nach jedem Zeichen Spiegeln und Rotieren aufheben muß, dann NPV und dann wieder vor dem nächsten Zeichen rotieren und spiegeln?
Im Heidenhainprogramm wird einmal rotiert und gespiegelt, danach ein paarmal inkrementale NPV bei jedem Zeichen und ganz zum Schluß Rotieren und Spiegeln Reseten.

Ist #5241 = X, #5242 = Y, #5243 = Z, #5244 = A, #5245 = B, #5246 = C? Was ist dann #5248?

Bedeutet das, ich schreibe zB. #50 = #5241, dann #51= #50, rechne die Nullpunktverschiebungen mit zb #8 = [#8 + #51] und am Schluß, vor dem Werkzeugwechsel, schreibe ich dann wieder #5241 = #50?


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 24.10.2017, 12:47 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (HolgiT @ 24.10.2017, 11:39 Uhr) *
Verstehe ich das richtig, daß ich nach jedem Zeichen Spiegeln und Rotieren aufheben muß, dann NPV und dann wieder vor dem nächsten Zeichen rotieren und spiegeln?
Im Heidenhainprogramm wird einmal rotiert und gespiegelt, danach ein paarmal inkrementale NPV bei jedem Zeichen und ganz zum Schluß Rotieren und Spiegeln Reseten.

Ist #5241 = X, #5242 = Y, #5243 = Z, #5244 = A, #5245 = B, #5246 = C? Was ist dann #5248?

Bedeutet das, ich schreibe zB. #50 = #5241, dann #51= #50, rechne die Nullpunktverschiebungen mit zb #8 = [#8 + #51] und am Schluß, vor dem Werkzeugwechsel, schreibe ich dann wieder #5241 = #50?


Probiere es mal.
Ich meinte bei Fanuc bleibt Spiegeln und Rotieren erhalten.
Also am Anfang Spiegeln und Rotieren, zum Schluss abwählen.


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 24.10.2017, 14:22 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

QUOTE (Hexogen @ 24.10.2017, 13:47 Uhr) *
Probiere es mal.
Ich meinte bei Fanuc bleibt Spiegeln und Rotieren erhalten.
Also am Anfang Spiegeln und Rotieren, zum Schluss abwählen.


So, mal ein Zwischenstand.
Die Steuerung kann nix. wacko.gif

G68 rotieren geht.
Spiegeln G51.1 soll laut Programmieranleitung G51.1 IPY geschrieben werden. Egal wie ich es schreibe, G51.1 Y, G51.1 Y0, G51.1 PY, G51.1 IY oder sonstige Kombinationen, geht nicht. Jedesmal "Falsche Adresse".

G10L20P2X50Y-50 geht so auch nicht wie in Programmieranleitung. Statt L20 muß es heißen L2.

#5241 ist irgendwas.
G54 ist hinter #1221 hinterlegt.
G55 hinter #1222 usw.
Aber jeweils alle 4 Achsen.

Wenn ich jetzt schreibe #50 = #1222, dann sagt die Steuerung falscher Parameter, weil da alle 4 Achsen hinterlegt sind. #1222.1 oder #1222.2 usw geht auch nicht.

Die Steuerung kann noch nicht mal Eckenrunden oder Eckenfase.
Habe auch mal eine Mail an Fanuc geschrieben und zweimal mit Servicetechnikern gesprochen, die mir aber sagten, daß sie eigentlich keine Ahnung vom Programmieren haben. Das was sie mir gesagt haben, habe ich schon selber gewußt. Kann mir bei Fanuc also auch keiner helfen. wacko.gif

Ich habe ja schon mit einigen Steuerungen gearbeitet, aber so wenig wie unsere 18i M konnte bisher noch keine, selbst Haas konnte da mehr.
Für heute habe ich keinen Bock mehr, Feierabend.

Erstmal schönen Dank für´s mitdenken. prost.gif


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 24.10.2017, 17:54 Uhr
eckitsch
eckitsch
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 09.08.2007
Beiträge: 382

Hallo,

du verwechselst da etwas. Steuerungsparameter 1221 hat nichts mit der Systemvariable #5241 zu tun. Und #50 ist auch nicht richtig. Gültige Parameter Bereiche sind Locale Variablen #1-#33; freie Variablen #100-#199, #500-#599… -#999; Systemvariablen ab #1000.

Gruß eckitsch.
TOP    
Beitrag 25.10.2017, 05:29 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

Moin!

QUOTE (eckitsch @ 24.10.2017, 18:54 Uhr) *
Hallo,

du verwechselst da etwas. Steuerungsparameter 1221 hat nichts mit der Systemvariable #5241 zu tun. Und #50 ist auch nicht richtig. Gültige Parameter Bereiche sind Locale Variablen #1-#33; freie Variablen #100-#199, #500-#599… -#999; Systemvariablen ab #1000.

Gruß eckitsch.



Gut, Dankeschön. smile.gif

Könntest Du mir dann eventuell die Parameter sagen für G54 und G55 jeweils für X, Y, Z und A? A-Achse haben wir zwar nicht, aber was man hat, das hat man. Parameterliste haben wir leider nicht.





QUOTE (Hexogen @ 24.10.2017, 10:49 Uhr) *
[code]
Du kannst dir die werte aus G55 lesen
#5241
:
#5248
und zwischenspeichern.
danach wieder in G55 schreiben.


Wie gehe ich da richtig vor? Auslesen und wieder einlesen? So wie ich das schon schrieb?
Also so: Bedeutet das, ich schreibe zB. #50 = #5241, dann #51= #50, rechne die Nullpunktverschiebungen mit zb #8 = [#8 + #51] und am Schluß, vor dem Werkzeugwechsel, schreibe ich dann wieder #5241 = #50?
Aber natürlich mit den richtigen Parametern.
Bei Heidenhain geht das ja etwas anders.

Der Beitrag wurde von HolgiT bearbeitet: 25.10.2017, 05:35 Uhr


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 25.10.2017, 08:13 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (HolgiT @ 25.10.2017, 06:29 Uhr) *
Wie gehe ich da richtig vor? Auslesen und wieder einlesen? So wie ich das schon schrieb?
Also so: Bedeutet das, ich schreibe zB. #50 = #5241, dann #51= #50, rechne die Nullpunktverschiebungen mit zb #8 = [#8 + #51] und am Schluß, vor dem Werkzeugwechsel, schreibe ich dann wieder #5241 = #50?
Aber natürlich mit den richtigen Parametern.
Bei Heidenhain geht das ja etwas anders.


Beispiel ...
#141=#5241
#142=#5242
#143=#5243
...
#148=#5248

Systemvariablen darfst nicht einfach so schreiben. Wenn dann über Macro

jedoch kannst sie ja über G10 wieder setzen
G10 G90 L2 P2 X#141 Y#142 Z#143

NP Verschiebung rechnen, kannst dann mit
G10 G90 L2 P2 X[#8+#141] Y#142 Z#143


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 25.10.2017, 09:46 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

Vielen Dank, da kann ich schon eher etwas mit anfangen. danke.gif

Das hier:
Beispiel ...
#141=#5241 für X?
#142=#5242 für Y?
#143=#5243 für Z?
...
#148=#5248 für ??
sind ja die Parameter für G55 wie Du schriebst, richtig?

Könntest Du mir bitte für G54 auch die Nummern geben? Dann wäre ich glücklich. smile.gif


Für G54 wäre das dann G10 G90 L2 P1 X[#8+#141] Y#142 Z#143. Richtig?

Der Beitrag wurde von HolgiT bearbeitet: 25.10.2017, 09:48 Uhr


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 25.10.2017, 16:40 Uhr
eckitsch
eckitsch
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 09.08.2007
Beiträge: 382

Hallo,

G54 beginnt bei #5221.
Für Parameterprogramme bietet sich dann folgende Rechnung an
#...=#[5200 + 20 × n + m]

n = 54-53 … 59-53 -> 1...6
m = 1...8 (X Y Z A B C ? ?)

Bei G10 kann ich nicht helfen. Den Befehl benutze ich nicht.

Gruß eckitsch.
TOP    
Beitrag 25.10.2017, 17:14 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

QUOTE (eckitsch @ 25.10.2017, 17:40 Uhr) *
G54 beginnt bei #5221.

Super, dankeschön. smile.gif



QUOTE (eckitsch @ 25.10.2017, 17:40 Uhr) *
Für Parameterprogramme bietet sich dann folgende Rechnung an
#...=#[5200 + 20 × n + m]

n = 54-53 … 59-53 -> 1...6
m = 1...8 (X Y Z A B C ? ?)

Bei der Rechnung blicke ich nicht so ganz durch. Was bedeutet "n" und "m" ? Welche Werte werden da gerechnet. wacko.gif




QUOTE (eckitsch @ 25.10.2017, 17:40 Uhr) *
Bei G10 kann ich nicht helfen.

Macht nichts, das funktioniert schon mal.


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 25.10.2017, 18:37 Uhr
eckitsch
eckitsch
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 09.08.2007
Beiträge: 382

Beispiel: Du willst bei G56 den Wert der 4. Achse auslesen.
Dann ist das #5264 oder #[5200+20×[56-53]+4]

Auszug aus einem Makro für einer Fanuc ähnlichen Steuerung (HAAS)
Ich hoffe, das verwirrt dich nicht noch mehr.
G65 P9000 XYZ A UVW
...
IF [ [ #23 GE 54 ] AND [ #23 LE 59 ] ] GOTO231
IF [ [ #23 GE 110 ] AND [ #23 LE 129 ] ] GOTO232
GOTO299
N231 (G54 AB #5220)
#16= 5200
#17= 53
GOTO11
N232 (G110 AB #7000)
#16= 6980
#17= 109
GOTO11
N299 #3000= 1 (FALSCHER WERTEBEREICH)
...
N11
#23= #16 + [ #23 - #17 ] * 20
...
TOP    
Beitrag 26.10.2017, 05:41 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

QUOTE (eckitsch @ 25.10.2017, 19:37 Uhr) *
Beispiel: Du willst bei G56 den Wert der 4. Achse auslesen.
Dann ist das #5264 oder #[5200+20×[56-53]+4]


Ich verstehe diese Rechnung zwar immer noch nicht, aber macht im Moment nichts.
Das Ergebnis der Rechnung verstehe ich natürlich und den Rechengang auch, aber die Werte 5200, 20, 56, 53 und 4 nicht.

Das verwirrt mich auch nicht. Mit Haas habe ich auch schon gearbeitet, auch mit Parameterrechnung, Sprünge usw., ist aber auch schon über 10Jahre her und nur etwa 3 Monate lang. G-Funktionen usw. weiß ich auch nicht mehr alles.

Trotzdem erstmal Dankeschön.

Der Beitrag wurde von HolgiT bearbeitet: 26.10.2017, 05:42 Uhr


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 26.10.2017, 08:13 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (eckitsch @ 25.10.2017, 17:40 Uhr) *
G54 beginnt bei #5221.
Für Parameterprogramme bietet sich dann folgende Rechnung an
#...=#[5200 + 20 × n + m]

n = 54-53 … 59-53 -> 1...6
m = 1...8 (X Y Z A B C ? ?)


Hey Holgi ...

also n entspricht Nullverschiebung ... bps G54 hat den Wert 1. G55 den Wert 2 usw.
du brauchst jetzt nur XYZ zu beschreiben dann ist m 1 bis 3
#5241 wäre G55 X Wert
#5242 G55 Y Wert
#5243 G55 Z Wert

#[5200+20×[56-53]+1]
hier wird der wert für X des Nullpunktes G56 gebildet

also wird der # Parameter #5261 gelesen ...

Statt 56-53 hättest jetzt 3 schreiben können.

Der Beitrag wurde von Hexogen bearbeitet: 26.10.2017, 08:15 Uhr


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 26.10.2017, 08:18 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (HolgiT @ 25.10.2017, 10:46 Uhr) *
#141=#5241 für X?
#142=#5242 für Y?
#143=#5243 für Z?

Könntest Du mir bitte für G54 auch die Nummern geben? Dann wäre ich glücklich. smile.gif

Für G54 wäre das dann G10 G90 L2 P1 X[#8+#141] Y#142 Z#143. Richtig?


G54 Werte:

#141=#5221 für X!
#142=#5222 für Y!
#143=#5223 für Z!

Du kannst jetzt #121 ... #123 für G54 nutzen / #141 ... #143 für G55 nutzen

smile.gif

im G10 änderst das P um ... um den NP zu beschreiben...

P1 = G54
P2 = G55
P3 = G56
usw

Der Beitrag wurde von Hexogen bearbeitet: 26.10.2017, 08:20 Uhr


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 26.10.2017, 10:29 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

Aha, diese Erkärung verstehe ich besser. smile.gif
Die Vermutung mit n=Nullpunkt hatte ich ja, und 56-53=3 ist G56 minus G53, aber warum Du das rechnest, statt 3 einzugeben konnte ich nicht nachvollziehen. Und m als Nr. zur jeweiligen Achse kapiere ich jetzt natürlich auch besser.

Vielen Dank nochmal. danke.gif

Werde testen unmd berichten. Kann aber ein paar Tage dauern.


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 30.10.2017, 09:42 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

Guude!

So, da die Fanuc kein Spiegeln kann, habe ich die Zahlenunterprogramme umgeschrieben auf ungespiegelt.
Funktioniert, auch die inkrementale NPV zur nächsten Ziffer.
Was auch funktioniert, das einlesen der G54 Nullpunktwerte aus dem Offset in das Programm.
Wenn die Zahlen graviert werden mit inkrementaler NPV, ändert sich auch jedesmal der Wert im Offset.
Das Rücksetzen auf den Originalwert im Offset geht aber nicht.
Ich werde das im Programm fett geschrieben kommentieren zum besseren Verständnis.
Wegen der Übersichtlichkeit habe ich hier nur mal zwei Zahlen gravieren reingestellt, sonst würde das zu lang werden.



O0003 (BRIDGE-GRAV-TEST)
;
(TESTPROGRAMM GRAVIEREN BRIDGEPORT)
(ENTSPRECHENDE PROGRAMMTEILE IN -->)
(FERTIGUNGSPROGRAMM UEBERNEHMEN)
;
;
T8 M6
S8000 F600 M3
(VHM-STICHEL 6X60GRAD)
(18MM AUS WELDON)
(ENPRO NINE 99619-V060-06)
(PLATTE NINE NC2071)
(G54 RECHTER SCHRAUBSTOCK)
(NP X=LINKS Y=VORNE Z=TEIL OBEN)
(GRAVIEREN 92-36-71/Z)
;
;
Das hier funktioniert, die Werte werden aus dem Offset gelesen
(ORIGINALWERT G54 X)
#121=#5221
(ORIGINALWERT G54 Y)
#122=#5222
(ORIGINALWERT G54 Z)
#123=#5223

;
;
;
Hier will die Maschine in 3 Achsen verfahren um die Werte aus dem Offset.
Verfahrweg reicht nicht, deshalb Alarm Achsen Endlage.
Warum will die Maschine verfahren?
Oder muß das anders geschrieben werden?
(AUFRUF G54 ORIGINAL)
G54 X#121 Y#122 Z#123

;

Die inkrementelle NPV funktioniert, Werte in X und Y ändern sich im Offset
(EVENTUELLE INKREMENTELLE NPV FUER GRAVIERANFANG)
G10G91L2P1X56Y10

;
;
Ab hier bis N1000 funktioniert auch
G0G90 X+0 Y+0 M3
G43 Z50 H8 M8
;
(#1= MASSSTAB 1 = ZEICHENGROESSE 10x6MM)
#1 =0.3
;
(#2= MASSSTAB 1 = ABSTAND ZEICHEN = 2MM)
#2 =0.3
;
(#3= GRAVIERTIEFE)
#3 =0.1
;
(#30= EINTAUCHVORSCHUB)
#30 =60
;
(#31= GRAVIERVORSCHUB)
#31 =600
;
(EVENTUELLE DREHUNG DER SCHRIFT)
G68 R0
;
;
(ZAHL 9)
#4 =7
#5 =3
#6 =2.423
#7 =5.598
#8 =5.5
#10 =8
#4 =[#4 * #1]
#5 =[#5 * #1]
#6 =[#6 * #1]
#7 =[#7 * #1]
#8 =[#8 * #1]
#10 =[#10 * #2]
G0 G90 X#6 Y0 M3
Z1 M8
G1 Z-#3 F#30
X#7 Y#8 F#31
G2 X#7 Y#8 I#5 J#4
G0 Z2
G10G91L2P1X#10
;
;
(ZAHL 2)
#4 =7
#5 =6
#6 =3
#7 =5.121
#8 =4.879
#10 =8
#4 =[#4 * #1]
#5 =[#5 * #1]
#6 =[#6 * #1]
#7 =[#7 * #1]
#8 =[#8 * #1]
#10 =[#10 * #2]
G0 G90 X0 Y#4 M3
Z1 M8
G1 Z-#3 F#30
G3 X#7 Y#8 I#6 J#4 F#31
G1 X0 Y0
X#5
G0 Z1
G10G91L2P1X#10
;
;
(ROTATION AUFHEBEN)
G69
N1000;
;


Hier will sie auch wieder verfahren um die Werte aus dem Offset.
Warum werden die Originalwerte, die in #121, #122 und #123 hinterlegt sind, nicht wieder ins Offset geschrieben?
Muß das wie oben anders geschrieben werden?
(NPV RÜCKSETZEN AUF ORIGINALWERT)
G54 X#121 Y#122 Z#123

;
M9
G0 G40 G80 G90 Z150
;
G53 X200 Y0 Z0
M30



Gruß aus Middlhesssn,

Holgi


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 30.10.2017, 10:04 Uhr
eckitsch
eckitsch
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 09.08.2007
Beiträge: 382

Hi,
wenn #121=#5221 zum Auslesen ist, muß logischerweise #5221=#121 zum zurückschreiben sein.
Oder halt G90 G10 ... X#121 Y... Habe jetzt kein Handbuch zur Hand für den genauen Kontext.
Warum benutzt du eigentlich nicht G52 zum Verschieben? Dann brauchst nicht den Nullpunkt verschieben.
TOP    
Beitrag 30.10.2017, 11:50 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

QUOTE (eckitsch @ 30.10.2017, 11:04 Uhr) *
Hi,
wenn #121=#5221 zum Auslesen ist, muß logischerweise #5221=#121 zum zurückschreiben sein.

Ja, danke, hast recht, eigentlich mehr oder weniger logisch.




QUOTE (eckitsch @ 30.10.2017, 11:04 Uhr) *
Warum benutzt du eigentlich nicht G52 zum Verschieben? Dann brauchst nicht den Nullpunkt verschieben.

Was war G52 nochmal?
Wie schreibe ich das dann?




N10 Gravieren erste Zahl
;
;
(Inkrementale NPV zum nächsten Buchstaben)
G52 Was dazu?
;
;
N20 Gravieren zweite Zahl
;
;
(Inkrementale NPV zum nächsten Buchstaben)
G52 Was dazu?
;
;
N20 Gravieren dritte Zahl
;
;
(Inkrementale NPV zum nächsten Buchstaben)
G52 Was dazu?

usw.


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    
Beitrag 30.10.2017, 15:12 Uhr
eckitsch
eckitsch
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 09.08.2007
Beiträge: 382

G52 ist eine Nullpunkt Verschiebung vom aktiven Nullpunkt. Muß aber am Ende wieder auf Null gesetzt werden. Es wird sonst jeder aktive Nullpunkt verschoben.
G54
G52 Xnn Xnn

G52 X0 Y0

Du brauchst dafür einen Parameter, der die Länge der Zeichen aufnimmt. Und die Länge für jedes Zeichen. Ein Freizeichen ist 0.5 lang, ein Prozentzeichen ist 1.22 lang, die Null ist 0.66 lang, die Eins 0.44…, von ISO-CODE ausgehend und Standardhöhe 1.
Am Ende jedes Zeichen kommt dann die Berechnung für die Verschiebung für das nächste Zeichen.

#33=0
...
#33=#33+0.5×Zeichenbreite (Freizeichen)
G52 X#33
...
#33=#33+1.22×Zeichenbreite (Prozentzeichen)
G52 X#33
...
TOP    
Beitrag 31.10.2017, 20:22 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (eckitsch @ 30.10.2017, 11:04 Uhr) *
wenn #121=#5221 zum Auslesen ist, muß logischerweise #5221=#121 zum zurückschreiben sein.


Ne ... sind die nicht.
Systemparameter kannst Du nicht einfach so beschreiben...


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 31.10.2017, 20:26 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE
Hier will sie auch wieder verfahren um die Werte aus dem Offset.
Warum werden die Originalwerte, die in #121, #122 und #123 hinterlegt sind, nicht wieder ins Offset geschrieben?
Muß das wie oben anders geschrieben werden?
(NPV RÜCKSETZEN AUF ORIGINALWERT)
G54 X#121 Y#122 Z#123


Du gibst hier die der Maschine ein Kommando auf werte #121 ... usw in X Y Z zu fahren, die Maschine fährt dann mit dem letzen programmierten Befehl / G1 bzw G0.
So setzt du die NPV verschiebung nicht auf Original zurück.


--------------------
Schaut doch mal rein:
Mein Youtube Kanal


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 01.11.2017, 10:55 Uhr
HolgiT
HolgiT
Level 4 = Community-Meister
****
Gruppe: Mitglied
Mitglied seit: 21.06.2007
Beiträge: 480

Guude!

ZITAT(eckitsch @ 30.10.2017, 11:04 Uhr) *
wenn #121=#5221 zum Auslesen ist, muß logischerweise #5221=#121 zum zurückschreiben sein.


QUOTE (Hexogen @ 31.10.2017, 21:22 Uhr) *
Ne ... sind die nicht.
Systemparameter kannst Du nicht einfach so beschreiben...

Doch, geht. Wenn mit G10G91L2P1X...Y... im Offset die Werte sich verändern, kann man die so wieder zurücklesen, es stehen dann wieder die Originalwerte im Offset.




QUOTE (Hexogen @ 31.10.2017, 21:26 Uhr) *
Du gibst hier die der Maschine ein Kommando auf werte #121 ... usw in X Y Z zu fahren, die Maschine fährt dann mit dem letzen programmierten Befehl / G1 bzw G0.
So setzt du die NPV verschiebung nicht auf Original zurück.

ZITAT: G54 X#121 Y#122 Z#123
Stimmt, das ist falsch. G54 darf nur alleine stehen. G54 ist aber eigentlich kein Fahrbefehl. Zurückschreiben geht wie eckitsch beschrieben hat, siehe oben.
Ist jetzt aber sowieso egal, da das für den Bediener eigentlich zu gefährlich ist, für mich wäre das kein Problem.
Deshalb mache ich es jetzt so wie eckitsch vorgeschlagen hat mit G52. Da bleibt der Offset unverändert.


@eckitsch: Dankeschön, das habe ich gesucht, G52, additive NPV nur im Programm. Das kenne ich noch von früher von den alten Siemenssteuerungen. Da war das, wenn ich mich noch richtig erinnere, G59. Funktion aber wie bei Fanuc G52.


Jetzt habe ich aber noch ein Problem. Ich habe die Unterprogramme für die Zahlen usw. von Spiegelschrift auf Normalschrift umgeschrieben, da unsere Fanuc ja nicht spiegeln kann. Habe ich extra nochmal mit Heidenhain getestet, ob auch alle I und J Werte und G2/G3 stimmt. Mit Heidenhain geht das prima, auch das skalieren usw.
Die Fanuc fährt aber bei den Zahlen mit Kreisbogen seltsam, siehe das Foto. Zahlen von 0 bis 9, -, / und Z.
Alles 10x überprüft, eigentlich stimmt das. Im moment weiß ich nicht weiter.

Ich stelle das Programm mal hier rein.
Könnte das vielleicht jemand mal testen und schauen, ob auf seiner Steuerung auch so seltsame Kreisbewegungen herauskommen? Wenn ja, dann weiß ich wenigstens, das unsere Steuerung alles richtig macht.

Programm einfach mit Editor öffnen.

Der Beitrag wurde von HolgiT bearbeitet: 01.11.2017, 10:56 Uhr
Angehängte Datei(en)
Angehängte Datei  gravur.jpg ( 134.81KB ) Anzahl der Downloads: 36
Angehängte Datei  O0004__BRIDGE_GRAV_TEST3_.nc ( 4.14KB ) Anzahl der Downloads: 20
 


--------------------
Nur mal so nebenbei: alle meine Texte werden ohne Computer Rechtschreibprüfung geschrieben.
Das geschieht bei mir ganz altmodisch, nämlich durch mich persönlich. :-)
TOP    



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