Siemens
Digital Industries, Motion Control, Machine Tool Systems
8843
Follower:innenAusrichten über 2Bohrungen? 840D
25.06.2014, 00:03 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Hallo
Ich brauch mal eure hilfe!
Wir haben jetzt ein neues Spannsystem bekommen! Super Sache aber ich muss auch noch Alte Platten drauf nehmen und da Bohrung drin einbringen!
In unser Platten sind immer mindestens 2 Bohrungen in einer Flucht! Wie kann ich jetzt an besten den die C Achse ausmessen bzw. Verrechnen? Dann die C Achse anstellen! Die Maschine hat keine AntastZyklen
Das Rechteck ist die Platte mit in dem Fall 4 Bohrungen(schwarze Kreise)
Maß ist
POS.1 X-312Y-237
POS.2 X-312Y237
POS.3 X312Y237
POS.4 X312Y-237
Der hell Graue Punkt ist der Drehpunkt in um C Achse!
Meine Idee ist die POS.1 anfahren alles In R Parameter eintragen!
Dann die POS.2 anfahren alles In R Parameter eintragen!
Dann Verrechnen und in C Achse eintragen und dann die C Achse Anfahren!
Oder Liege ich da Falsch?
Leider kenne ich mich in den Thema NULL aus
Danke im Voraus
Ich brauch mal eure hilfe!
Wir haben jetzt ein neues Spannsystem bekommen! Super Sache aber ich muss auch noch Alte Platten drauf nehmen und da Bohrung drin einbringen!
In unser Platten sind immer mindestens 2 Bohrungen in einer Flucht! Wie kann ich jetzt an besten den die C Achse ausmessen bzw. Verrechnen? Dann die C Achse anstellen! Die Maschine hat keine AntastZyklen
Das Rechteck ist die Platte mit in dem Fall 4 Bohrungen(schwarze Kreise)
Maß ist
POS.1 X-312Y-237
POS.2 X-312Y237
POS.3 X312Y237
POS.4 X312Y-237
Der hell Graue Punkt ist der Drehpunkt in um C Achse!
Meine Idee ist die POS.1 anfahren alles In R Parameter eintragen!
Dann die POS.2 anfahren alles In R Parameter eintragen!
Dann Verrechnen und in C Achse eintragen und dann die C Achse Anfahren!
Oder Liege ich da Falsch?
Leider kenne ich mich in den Thema NULL aus
Danke im Voraus
Angehängte Datei(en)
25.06.2014, 05:38 Uhr
Hallo,
kannst du auch einfach die Platte der Länge nach mit einer Messuhr abfahren?
Dann wäre das ganze um ein vielfaches Leichter....
Gruß Boern
kannst du auch einfach die Platte der Länge nach mit einer Messuhr abfahren?
Dann wäre das ganze um ein vielfaches Leichter....
Gruß Boern
--------------------
Das dringendste Problem der Technologie von heute ist nicht mehr die Befriedigung von Grundbedürfnissen und uralten Wünschen der Menschen, sondern die Beseitigung von Übeln und Schäden, welche uns die Technologie von gestern hinterlassen hat.
Dennis Gabor (1900-79), ungar.-brit. Physiker, Entwickler der Holographie, 1971 Nobelpr.
25.06.2014, 07:04 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Hallo,
kannst du auch einfach die Platte der Länge nach mit einer Messuhr abfahren?
Dann wäre das ganze um ein vielfaches Leichter....
Gruß Boern
kannst du auch einfach die Platte der Länge nach mit einer Messuhr abfahren?
Dann wäre das ganze um ein vielfaches Leichter....
Gruß Boern
So hab ich das Früher gemacht und dann einfach die platte verschoben!
jetzt kann ich die Platte nicht mehr verschieben und jedes mal los schrauben und da testen mit Hundertsfloie ist zu viel Arbeit! das ist der Nachteil!
25.06.2014, 09:48 Uhr
*Winkelfunktionen nutzen.
*Versatz ausmessen
*Verdrehung in C eintragen
*Versatz ausmessen
*Verdrehung in C eintragen
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
25.06.2014, 10:09 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Ja Sowas habe ich gemeint aber hast du da auch ein ansatz für mich!
Bin leider noch nicht so lange an einer Siemens Steuerung!
Bin leider noch nicht so lange an einer Siemens Steuerung!
25.06.2014, 11:45 Uhr
Wenn du den Winkelversatz ausgerechnet hast, dann gibst du den Wert unter Nullpunktverschiebung C-Achse ein.
Mehr ist das nicht.
Mehr ist das nicht.
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
25.06.2014, 14:57 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Wie lese ich die Aktuelle X und Y Postion aus?
Dann ,muss das Programm Anhalt so das ich die 2 Bohrung Anfahren kann und mitte holen!
Dann wieder Die Aktuelle X und y Postion auslesen das dann Verrechnen und in ein R Paramter übergeben!
Ich weis wie es Theorissch geht aber Praktisch weis ich das nicht wie ich die Achsen auslese z.b.
MFG
Dann ,muss das Programm Anhalt so das ich die 2 Bohrung Anfahren kann und mitte holen!
Dann wieder Die Aktuelle X und y Postion auslesen das dann Verrechnen und in ein R Paramter übergeben!
Ich weis wie es Theorissch geht aber Praktisch weis ich das nicht wie ich die Achsen auslese z.b.
MFG
26.06.2014, 09:53 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
IF R90==1 GOTOF N100
R30=$AA_IM[x] ; aktuelle X Postion
R31=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R90=1
M0 ; Neu Postion Anfahren
STOPRE
N100
R32=$AA_IM[x] ; aktuelle X Postion
R33=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R30=R30+R32 ; Die Gesamt Länge Ausrechnen
R31=R31+R33 ; Die Gesamt Länge Ausrechnen
Da Muss jetzt die Winkel berechnung Kommen so das ich C Achse Passend Anstellen kann!
Da stehe ich jetzt ein wenig auf Schlauch
STOPRE
R90=0
M17
Der Beitrag wurde von orange1987_07 bearbeitet: 26.06.2014, 09:54 Uhr
R30=$AA_IM[x] ; aktuelle X Postion
R31=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R90=1
M0 ; Neu Postion Anfahren
STOPRE
N100
R32=$AA_IM[x] ; aktuelle X Postion
R33=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R30=R30+R32 ; Die Gesamt Länge Ausrechnen
R31=R31+R33 ; Die Gesamt Länge Ausrechnen
Da Muss jetzt die Winkel berechnung Kommen so das ich C Achse Passend Anstellen kann!
Da stehe ich jetzt ein wenig auf Schlauch
STOPRE
R90=0
M17
Der Beitrag wurde von orange1987_07 bearbeitet: 26.06.2014, 09:54 Uhr
26.06.2014, 11:45 Uhr
Versuch's mal mit
R57 = atan2(R31, R30) ; Winkel
R57 = atan2(R31, R30) ; Winkel
27.06.2014, 12:24 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Danke ich werde es montag probieren
28.06.2014, 20:17 Uhr
Du kannst doch mit einem Magnetständer eine Uhr an die Soindel spannen
jetzt die Platte abfahren und mit der C-Achse solange drücken bis deine Platte gerade ist.
Nun diesen Wert in die Nullpunkt Tabelle eintragen
Ist viel einfacher wie esrt jedes Loch anzufahren und dann irgendwie über Winkelfunktionen rum zu rechnen.....
Hier ein Beispiel Bild:
http://s1051.photobucket.com/user/uhrenbau...kante2.jpg.html
jetzt die Platte abfahren und mit der C-Achse solange drücken bis deine Platte gerade ist.
Nun diesen Wert in die Nullpunkt Tabelle eintragen
Ist viel einfacher wie esrt jedes Loch anzufahren und dann irgendwie über Winkelfunktionen rum zu rechnen.....
Hier ein Beispiel Bild:
http://s1051.photobucket.com/user/uhrenbau...kante2.jpg.html
--------------------
Das dringendste Problem der Technologie von heute ist nicht mehr die Befriedigung von Grundbedürfnissen und uralten Wünschen der Menschen, sondern die Beseitigung von Übeln und Schäden, welche uns die Technologie von gestern hinterlassen hat.
Dennis Gabor (1900-79), ungar.-brit. Physiker, Entwickler der Holographie, 1971 Nobelpr.
28.06.2014, 22:25 Uhr
Ob das so klug ist? Ich denke eher dass es ihm darum geht die Platte anhand der bereits fertigen Bohrungen auszurichten und aufzunehmen. Wenn man in dem Fall nach der Plattenausssenkante ausrichtet, soltle man schon sicher sein dass dessen Winkellage auch zu den Bohrungen stimmt.
29.06.2014, 15:34 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Genau es sind schon 4 Passbohrungen drin in der Platte! Die nicht unbedingt zu Aussenkannte Passen müssen!
29.06.2014, 17:15 Uhr
Ich hätte da noch einen kleine Einwand.
Da du den Abstand der beiden Bohrungen für die Winkelberechung brauchst
müsste die Berechnung lauten:
R30 = R32 - R30
R31 = R33 - R31
der Rest ist schon sehr gut, denke ich.
Wenn jetzt noch der Werkstücknullpunkt in einem geometrischen Zusammenhang
mit den Bohrungen steht könnte man alles mit
G10 L2 P1 X=... Y=... C=...
in die erste Nullpunktverschiebung (G54) schreiben.
bis die Tage
Da du den Abstand der beiden Bohrungen für die Winkelberechung brauchst
müsste die Berechnung lauten:
R30 = R32 - R30
R31 = R33 - R31
der Rest ist schon sehr gut, denke ich.
Wenn jetzt noch der Werkstücknullpunkt in einem geometrischen Zusammenhang
mit den Bohrungen steht könnte man alles mit
G10 L2 P1 X=... Y=... C=...
in die erste Nullpunktverschiebung (G54) schreiben.
bis die Tage
29.06.2014, 20:09 Uhr
Ich hätte da noch einen kleine Einwand.
Da du den Abstand der beiden Bohrungen für die Winkelberechung brauchst
müsste die Berechnung lauten:
R30 = R32 - R30
R31 = R33 - R31
der Rest ist schon sehr gut, denke ich.
Wenn jetzt noch der Werkstücknullpunkt in einem geometrischen Zusammenhang
mit den Bohrungen steht könnte man alles mit
G10 L2 P1 X=... Y=... C=...
in die erste Nullpunktverschiebung (G54) schreiben.
bis die Tage
Da du den Abstand der beiden Bohrungen für die Winkelberechung brauchst
müsste die Berechnung lauten:
R30 = R32 - R30
R31 = R33 - R31
der Rest ist schon sehr gut, denke ich.
Wenn jetzt noch der Werkstücknullpunkt in einem geometrischen Zusammenhang
mit den Bohrungen steht könnte man alles mit
G10 L2 P1 X=... Y=... C=...
in die erste Nullpunktverschiebung (G54) schreiben.
bis die Tage
Es dreht sich hier um eine Siemens Steuerung, keine FANUC.
Also unsere Nullpunktplatten stimmen auf < 0,005mm Aussenkanten
--------------------
Das dringendste Problem der Technologie von heute ist nicht mehr die Befriedigung von Grundbedürfnissen und uralten Wünschen der Menschen, sondern die Beseitigung von Übeln und Schäden, welche uns die Technologie von gestern hinterlassen hat.
Dennis Gabor (1900-79), ungar.-brit. Physiker, Entwickler der Holographie, 1971 Nobelpr.
29.06.2014, 21:31 Uhr
Hallo,
Ich hatte vor nem halben Jahr das gleiche Problem. Habe damals ein etwas veraltetes Pragramierbuch der Messzyklen in die Hände bekommen.
Dieses konnte ich leider nur bedingt anwenden, Da meine Software einen neueren Stand hatte, bzw. durch den Hersteller diverse Funktionen unterbunden wurden.
Ich habe es dann doch irgendwie gemeistert bekommen. Im groben ist es so das du mit dem Taster die erste Bohrung anfährst, diese Positionen dann automatisch in die Parameter Tabelle überspielst. Anschließend rufst du den zweiten Np auf. und speicherst diese Positionen ebenfalls in Parametern. Dann werden die Parameter intern verrechnet und ebenfall als Parameter wert gespeichert. Diesen kannst dann ebenfalls automatisch in die Np Tabelle eintragen lassen. Ich hatte da das große Problem das mir der Wert immer in der C Achse übertragen wurde. Da ich allerdings zuvo meine Bearbeitungsebene Ausrichten musste, musste ich diesen Wert in die Verschiebung mit rein nehmen. Ich hab es dann irgendwie hinbekommen. Könnte dir das Programm morgen irgendwie zukommen lassen....
Gruß Ralf
Ich hatte vor nem halben Jahr das gleiche Problem. Habe damals ein etwas veraltetes Pragramierbuch der Messzyklen in die Hände bekommen.
Dieses konnte ich leider nur bedingt anwenden, Da meine Software einen neueren Stand hatte, bzw. durch den Hersteller diverse Funktionen unterbunden wurden.
Ich habe es dann doch irgendwie gemeistert bekommen. Im groben ist es so das du mit dem Taster die erste Bohrung anfährst, diese Positionen dann automatisch in die Parameter Tabelle überspielst. Anschließend rufst du den zweiten Np auf. und speicherst diese Positionen ebenfalls in Parametern. Dann werden die Parameter intern verrechnet und ebenfall als Parameter wert gespeichert. Diesen kannst dann ebenfalls automatisch in die Np Tabelle eintragen lassen. Ich hatte da das große Problem das mir der Wert immer in der C Achse übertragen wurde. Da ich allerdings zuvo meine Bearbeitungsebene Ausrichten musste, musste ich diesen Wert in die Verschiebung mit rein nehmen. Ich hab es dann irgendwie hinbekommen. Könnte dir das Programm morgen irgendwie zukommen lassen....
Gruß Ralf
29.06.2014, 21:32 Uhr
Weiß hier überhaupt noch einer was los ist? Mal wurde früher nach der Aussenkante ausgelehrt, nun mal wieder nicht, da die Bohrungen nicht unbedingt zur Aussenkante parallel sind.
Dann entstehen hier Steuerungsmix, aus denen kein Mensch schlau wird.
Auch Bohrungen kann man mit der Messuhr ausrichten, so wie Boern das beschreibt.
Und wenn man mit den Winkelfunktionen nicht klar kommt, dann kann man sich immer noch eine Aufspannplatte mit vier Passstiften machen.
Vorrausgesetzt das Bohrbild ist überall identisch.
Dann entstehen hier Steuerungsmix, aus denen kein Mensch schlau wird.
Auch Bohrungen kann man mit der Messuhr ausrichten, so wie Boern das beschreibt.
Und wenn man mit den Winkelfunktionen nicht klar kommt, dann kann man sich immer noch eine Aufspannplatte mit vier Passstiften machen.
Vorrausgesetzt das Bohrbild ist überall identisch.
--------------------
Eine Schraube ohne Gewinde ist ein Nagel
Grüsse aus dem Harz - InTex
Grüsse aus dem Harz - InTex
30.06.2014, 08:38 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Also noch mal die Bohrung sind nicht zwingend zur Aussenkante Passent!
Ich habe jetzt noch ein Problem und zwar wenn ich mein Anderes Antast PGM benutze! Mitte in X holen Funktioniert das!
Wenn ich jetzt das neu Programm Teste in MDA Modus Will der der wieder zurück Fahren auf Punkt 1(Repos)!
Wie Unterbinde ich das!
Mitte In X PGM
IF R90==1 GOTOF N100
R30=$AA_IM[x]
STOPRE
R90=1
M0
STOPRE
N100 R31=$AA_IM[x]
STOPRE
R32=R30+R31
R32=R32/2
$P_UIFR[1,x,TR]=R32
STOPRE
R90=0
M17
Ist das nicht!
2 Bohrungen PGM
IF R90==1 GOTOF N100
R30=$AA_IM[x] ; aktuelle X Postion
R31=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R90=1
M0 ; Neu Postion Anfahren
STOPRE
N100 R32=$AA_IM[x] ; aktuelle X Postion
STOPRE
R33=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R30=R30+R32 ; Die Gesamt Länge Ausrechnen
R31=R31+R33 ; Die Gesamt Länge Ausrechnen
R33=R31/R30 ; Gegenkathete durch Ankathete
R34=atan2(R31,R30) ; Winkel
STOPRE
R90=0
M17
Steuerung ist eine Siemens 840D BJ 2001 meine ich
Danke
Ich habe jetzt noch ein Problem und zwar wenn ich mein Anderes Antast PGM benutze! Mitte in X holen Funktioniert das!
Wenn ich jetzt das neu Programm Teste in MDA Modus Will der der wieder zurück Fahren auf Punkt 1(Repos)!
Wie Unterbinde ich das!
Mitte In X PGM
IF R90==1 GOTOF N100
R30=$AA_IM[x]
STOPRE
R90=1
M0
STOPRE
N100 R31=$AA_IM[x]
STOPRE
R32=R30+R31
R32=R32/2
$P_UIFR[1,x,TR]=R32
STOPRE
R90=0
M17
Ist das nicht!
2 Bohrungen PGM
IF R90==1 GOTOF N100
R30=$AA_IM[x] ; aktuelle X Postion
R31=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R90=1
M0 ; Neu Postion Anfahren
STOPRE
N100 R32=$AA_IM[x] ; aktuelle X Postion
STOPRE
R33=$AA_IM[Y] ; aktuelle Y Postion
STOPRE
R30=R30+R32 ; Die Gesamt Länge Ausrechnen
R31=R31+R33 ; Die Gesamt Länge Ausrechnen
R33=R31/R30 ; Gegenkathete durch Ankathete
R34=atan2(R31,R30) ; Winkel
STOPRE
R90=0
M17
Steuerung ist eine Siemens 840D BJ 2001 meine ich
Danke
02.07.2014, 08:02 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Wieso fährt der zurück auf Punkt 1 wie kann ich das unterbinden in MDA Modus?
15.07.2014, 08:08 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Keiner eine Idee
22.07.2014, 20:32 Uhr
Huhu, hatte dir ja gesagt das ich vor dem gleichen Problem stand. Hier hab ich dir mal Bilder von meinem Programm gemacht....
nochmal das es nun doch länger gedauert hat...
Hoffentlich hilft es dir...
Grüßle Ralf
nochmal das es nun doch länger gedauert hat...
Hoffentlich hilft es dir...
Grüßle Ralf
Angehängte Datei(en)
20140702_111953.jpg ( 521.17KB )
Anzahl der Downloads: 85
20140702_112018.jpg ( 359.94KB ) Anzahl der Downloads: 63
20140702_112311.jpg ( 493.1KB ) Anzahl der Downloads: 54
20140702_112018.jpg ( 359.94KB ) Anzahl der Downloads: 63
20140702_112311.jpg ( 493.1KB ) Anzahl der Downloads: 54
07.08.2014, 17:09 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
Kannst du das PGM evtl auch online Stehen!
ich habe da noch ein paar fragen ist leicher zu Zitieren und dann sind da keine ab tip fheler drin!
p.s. jetzt ist er der Urlaub auch fast um wäre super für Montag
MFG
ich habe da noch ein paar fragen ist leicher zu Zitieren und dann sind da keine ab tip fheler drin!
p.s. jetzt ist er der Urlaub auch fast um wäre super für Montag
MFG
08.08.2014, 06:26 Uhr
Hallo
Das CNC-Forum ist nicht der einzige Ort wo sich Leute Gedanken machen. Bei Sinupedia findet man zu diesem Thema folgendes:
www.sinupedia.de/index.php/de/
Dort hat sich jemand die Mühe gemacht und einen Zyklus für Dein Problem geschrieben. Vielleicht ist Dir damit ja geholfen.
Gruß
Michael
Das CNC-Forum ist nicht der einzige Ort wo sich Leute Gedanken machen. Bei Sinupedia findet man zu diesem Thema folgendes:
www.sinupedia.de/index.php/de/
Dort hat sich jemand die Mühe gemacht und einen Zyklus für Dein Problem geschrieben. Vielleicht ist Dir damit ja geholfen.
Gruß
Michael
19.08.2014, 08:11 Uhr
orange1987_07
Level 2 = Community-Facharbeiter
Gruppe: Mitglied
Mitglied seit: 17.02.2009
Beiträge: 79
Mitglied seit: 17.02.2009
Beiträge: 79
So wie ich das sehe sind da aber mess zyklen mit ein gearbeiten ich habe leider nur ein 3D Taster Manuell ohne verbindung zu Maschine( 20 jahre altes teil! bin froh das ich nicht noch ein Uralt Kanten Taster benutzen muss)
So mit muss ich alles Slber anfahren und Verrechnen sprich mitte der Bohrung holen dann werte Nullen 2 Bohrung ran fahren den Versatz in Excel eintragen der mit die C verdrehung angibt! aber das leider auch immer nur in Positive nie Negative (z.b. 360-0,050=359,950)!!
Danke
So mit muss ich alles Slber anfahren und Verrechnen sprich mitte der Bohrung holen dann werte Nullen 2 Bohrung ran fahren den Versatz in Excel eintragen der mit die C verdrehung angibt! aber das leider auch immer nur in Positive nie Negative (z.b. 360-0,050=359,950)!!
Danke
19.08.2014, 19:39 Uhr
Wie man das REPOS ausschaltet kann ich dir nicht sagen. Doch so wie Ralf das gelöst hat ist das ziemlich komfortabel anwendbar. Ich würde es noch Variabel lösen.
Somit kannst du die Punkte in 2 beliebigen freien Nullpunkten speichern und danach das Programm mit den Angaben aufrufen. So wie das Beispiel ausgefüllt ist, muss der 1. Punkt in G54 gespeichert sein und der 2. Punkt in G55. Geschrieben wird hier in G54.
Der Satz zum Speichern ist entweder oder, je nachdem ob du den Wert in der Rotation um Z oder der Achsverschiebung in C haben willst.
Edit: Achtung die Sätze DELTA_X= und DELTA_Y= sind jeweils eine Zeile, je nachdem wird es hier auf zwei Zeilen gezeigt, wenn du es in einen Editor kopierts sollte es jedoch stimmen.
Der Beitrag wurde von DMC635V bearbeitet: 19.08.2014, 19:40 Uhr
CODE
;*******************************************************
; Programm zum setzten der Verdrehung um Z
; durch zwei einstellbare Nullpunktverschiebungen
;
; Variablen zum einstellen:
; NP_READ_1 = Nummer des 1. NP
; NP_READ_2 = Nummer des 2. NP
; NP_WRITE = Nummer des zu beschreibenden NP
;
; NP-Nummern:
; 1=G54, 2=G55... 5=G505, 6=G506... 99=G599
;*******************************************************
;
DEF INT NP_READ_1, NP_READ_2, NP_WRITE
DEF REAL DELTA_X, DELTA_Y, ROTVAL
;
;*******************************************************
; Hier Nullpunkte einstellen:
NP_READ_1 = 1
NP_READ_2 = 2
NP_WRITE = 1
;*******************************************************
;
DELTA_X = ($P_UIFR[NP_READ_2, X, TR] + $P_UIFR[NP_READ_2, X, FI]) - ($P_UIFR[NP_READ_1, X, TR] + $P_UIFR[NP_READ_1, X, FI])
DELTA_Y = ($P_UIFR[NP_READ_2, Y, TR] + $P_UIFR[NP_READ_2, Y, FI]) - ($P_UIFR[NP_READ_1, Y, TR] + $P_UIFR[NP_READ_1, Y, FI])
ROTVAL = ATAN2(DELTA_Y, DELTA_X)
$P_UIFR[NP_WRITE, Z, RT] = ROTVAL; Speichern Rotation um Z
; $P_UIFR[NP_WRITE, C, TR] = ROTVAL; Speichern C-Achsverschiebung
M30
; Programm zum setzten der Verdrehung um Z
; durch zwei einstellbare Nullpunktverschiebungen
;
; Variablen zum einstellen:
; NP_READ_1 = Nummer des 1. NP
; NP_READ_2 = Nummer des 2. NP
; NP_WRITE = Nummer des zu beschreibenden NP
;
; NP-Nummern:
; 1=G54, 2=G55... 5=G505, 6=G506... 99=G599
;*******************************************************
;
DEF INT NP_READ_1, NP_READ_2, NP_WRITE
DEF REAL DELTA_X, DELTA_Y, ROTVAL
;
;*******************************************************
; Hier Nullpunkte einstellen:
NP_READ_1 = 1
NP_READ_2 = 2
NP_WRITE = 1
;*******************************************************
;
DELTA_X = ($P_UIFR[NP_READ_2, X, TR] + $P_UIFR[NP_READ_2, X, FI]) - ($P_UIFR[NP_READ_1, X, TR] + $P_UIFR[NP_READ_1, X, FI])
DELTA_Y = ($P_UIFR[NP_READ_2, Y, TR] + $P_UIFR[NP_READ_2, Y, FI]) - ($P_UIFR[NP_READ_1, Y, TR] + $P_UIFR[NP_READ_1, Y, FI])
ROTVAL = ATAN2(DELTA_Y, DELTA_X)
$P_UIFR[NP_WRITE, Z, RT] = ROTVAL; Speichern Rotation um Z
; $P_UIFR[NP_WRITE, C, TR] = ROTVAL; Speichern C-Achsverschiebung
M30
Somit kannst du die Punkte in 2 beliebigen freien Nullpunkten speichern und danach das Programm mit den Angaben aufrufen. So wie das Beispiel ausgefüllt ist, muss der 1. Punkt in G54 gespeichert sein und der 2. Punkt in G55. Geschrieben wird hier in G54.
Der Satz zum Speichern ist entweder oder, je nachdem ob du den Wert in der Rotation um Z oder der Achsverschiebung in C haben willst.
Edit: Achtung die Sätze DELTA_X= und DELTA_Y= sind jeweils eine Zeile, je nachdem wird es hier auf zwei Zeilen gezeigt, wenn du es in einen Editor kopierts sollte es jedoch stimmen.
Der Beitrag wurde von DMC635V bearbeitet: 19.08.2014, 19:40 Uhr
--------------------
Freundliche Grüsse
DMC635V
DMC635V
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: