Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Programm für Nullpunktmessung, Automatisierung Werkstück-Einmessung

Beitrag 10.12.2011, 11:11 Uhr
Jack82
Level 1 = Community-Lehrling
*
Hallo,
ich bin neu im CNC bereich und habe ein paar, hoffentlich nicht allzu dumme, Fragen.
Ich beschäftige mich mit der Werkstückeinmessung an einer Fräsmaschine (Steuerung Sinunerik 840D) im cad/cam Verbund. Mein Ziel ist es das Einmessen eines Werkstücks zu automatisieren. Ich habe nun versucht diesen Messvorgang mit Hilfe von CYCLE978 zu realisieren. Dazu habe ich erstmal ein „Testprogramm“ auf dem PC geschrieben.Bein Testlauf auf der Maschine wurden die für den Zyklus benötigten Parameter von der Steuerung nicht erkannt.
Diese habe ich nach Beispiel des „Messzyklen Programmierhandbuch, 01/2008, 6FC5398-4BP20-1AA0“ in eigene Sätze vor den Zyklus programmiert.
Wo im Programm muss ich die Zyklusparameter angeben?
Als ich beim Testlauf die Parameter hinter den Zyklusaufruf schrieb wurden zumindest einige erkannt?!
Für Tipps und Anregungen wäre ich sehr dankbar.

Gruß
Jack
   
Beitrag 10.12.2011, 11:38 Uhr
Hexogen
Level 7 = Community-Professor
*******
QUOTE (Jack82 @ 10.12.2011, 12:12 Uhr) *
Hallo,
ich bin neu im CNC bereich und habe ein paar, hoffentlich nicht allzu dumme, Fragen.
Ich beschäftige mich mit der Werkstückeinmessung an einer Fräsmaschine (Steuerung Sinunerik 840D) im cad/cam Verbund. Mein Ziel ist es das Einmessen eines Werkstücks zu automatisieren. Ich habe nun versucht diesen Messvorgang mit Hilfe von CYCLE978 zu realisieren. Dazu habe ich erstmal ein „Testprogramm“ auf dem PC geschrieben.Bein Testlauf auf der Maschine wurden die für den Zyklus benötigten Parameter von der Steuerung nicht erkannt.
Diese habe ich nach Beispiel des „Messzyklen Programmierhandbuch, 01/2008, 6FC5398-4BP20-1AA0“ in eigene Sätze vor den Zyklus programmiert.
Wo im Programm muss ich die Zyklusparameter angeben?
Als ich beim Testlauf die Parameter hinter den Zyklusaufruf schrieb wurden zumindest einige erkannt?!
Für Tipps und Anregungen wäre ich sehr dankbar.

Gruß
Jack


Hallo und welcome Jack.

Erstmal im allgemeinen solltest die Parameter vor dem Zyklen Aufruf beschreiben.
Wenn Du die Parameter danach beschreibst, werden diese erst im nächsten Aufruf aktiv.

Was genau hast denn vor ein zu messen? Und was verstehst Du unter Automatisiert ?

Du kannst es selbst schreiben in dem du MEAS Befehle verwendest....

G1 X-100 MEAS=1 ... bedeutet das die Maschine automatisch Restweglöschen ausgibt wenn du eine Tastberührung hast.
Die aktuelle Position im MKS kannst dann unter $AA_IM[X] auslesen und weiter verarbeiten.


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 10.12.2011, 23:35 Uhr
Guest_guest_*
Themenstarter
QUOTE (Jack82 @ 10.12.2011, 11:11 Uhr) *
Hallo,
ich bin neu im CNC bereich und habe ein paar, hoffentlich nicht allzu dumme, Fragen.
Ich beschäftige mich mit der Werkstückeinmessung an einer Fräsmaschine (Steuerung Sinunerik 840D) im cad/cam Verbund. Mein Ziel ist es das Einmessen eines Werkstücks zu automatisieren. Ich habe nun versucht diesen Messvorgang mit Hilfe von CYCLE978 zu realisieren. Dazu habe ich erstmal ein „Testprogramm“ auf dem PC geschrieben.Bein Testlauf auf der Maschine wurden die für den Zyklus benötigten Parameter von der Steuerung nicht erkannt.
Diese habe ich nach Beispiel des „Messzyklen Programmierhandbuch, 01/2008, 6FC5398-4BP20-1AA0“ in eigene Sätze vor den Zyklus programmiert.
Wo im Programm muss ich die Zyklusparameter angeben?
Als ich beim Testlauf die Parameter hinter den Zyklusaufruf schrieb wurden zumindest einige erkannt?!
Für Tipps und Anregungen wäre ich sehr dankbar.

Gruß
Jack


Dann solltest du erstmal das, was du programmiert hast, hier einstellen, sonst weiß Niemand wovon du sprichst.
Sicher wäre auch interessant, was du messen willst und wie du dir das Ergebnis vorstellst.
   
Beitrag 11.12.2011, 16:55 Uhr
Jack82
Level 1 = Community-Lehrling
*
Hallo,
erst mal Danke an alle die geantwortet haben. Ich habe meine Fragestellung wohl noch etwas unklar Formuliert .
Ich habe das Einmessen von Werkstücken (tasten von Werkstücknullpunkt)in einer Portalfräse in CATIA simuliert. Danach habe ich den Postprozessor verändert., der aus der 3D Zeichnung ein NC Programm schreibt.
Mein CAD-Programm sollte nun(theoretisch) in der Lage sein einen NC Code zu schreiben, der vor einer Spannenden Bearbeitung selbst die Werkstücknullpunktmessung vornimmt (wird im Moment manuell gemacht). Ich brauche also einen Nc Code der eine Nullpunktverschiebung vornimmt und danach weitere Bearbeitungen, von diesem neuen WS- Nullpunkt vornimmt.
Ich wollte diese Nullpunktmessung nun erst mal auf dem Pc- programmieren und in der Maschine ablaufen lassen, damit ich überhaupt nachvollziehen kann was mein NC Programm ausspucken soll.
Ich habe dieses Programm mit Hilfe diverser Simunerik- Handbücher geschrieben, bin aber eben nicht vom Fach. Deswegen hoffe ich auf die Hilfe der Profis!
Gruß Jack
   
Beitrag 11.12.2011, 16:57 Uhr
Jack82
Level 1 = Community-Lehrling
*
Hier noch mein Programm

;%_N_MESSEN3_MPF

;%_N_MESSEN3_MPF

;$PATH=/_N_MPF_DIR

N100 G54 M51 ;NULLPKT AUSWAEHLEN G54,G55,G56,G57

NULLPKT=$P_UIFRNUM
$P_UIFR[NULLPKT]=CTRANS(X,0,Y,0,Z,0):CFINE(X,321.750,Y,239.25,Z,-120);Messtaster Laenge pruefen DB10.DBX107.0 = 1.Messeingang
;Messtaster Laenge pruefen DB10.DBX107.1 = 2.Messeingang

N103 $P_CHBFR[0]=CTRANS() ;BASISFRAME NULLEN
N104 $P_UIFR[0]=CTRANS() ;G500 NULLEN
N105 $P_UIFR[4,Z,RT]=0 ;NULLPUNKT Z-ACHSE ROT SCHREIBEN

N106 G64 G451 CFIN CUT2DF
N107 G153 G90 G0 D0 Z=1000
N108 B0 C0
N200 WECHSEL(01)
N119 REPEAT ;RENISHAW EINSCHALTEN UND PRÜFEN OB ER FUNKTIONIERT
N120 MSG("TASTER GEHT NOCH NICHT")
N121 M77 ;RENISHAW EINSCHALTEN
N122 MSG()
N123 UNTIL $A_PROBE[1]==0
;Werkzeugplatz anpassen
D1
N300 G0 G90 X=17 Y=60
N400 Z=120
N500 _TSA=6_VMS=0_NMSP=1_FA=4
N600 _NVAR=100_SETVAL=0_MA=1_KNUM=1_EVNUM=10
N700 CYCLE 978
N800 G0 X=5
N900 Y=45
N1000 X=25
N1100 _EVNUM=11_MA=2
N1200 CYCLE 978
N1300 G0 Y=-2
N1400 Z=134
N1400 X=25 Y=65
N1500 _EVNUM=12_MA=3
N1600 CYCLE 978
N1400 G54
N1500 G0 Z=300
N1510 M76
N1600 M30

(Renishaw ist der Messtaster)

Gruss
Jack

Der Beitrag wurde von Jack82 bearbeitet: 11.12.2011, 17:01 Uhr
   
Beitrag 12.12.2011, 04:43 Uhr
Hexogen
Level 7 = Community-Professor
*******
Morgen Jack,

Du solltest zwischen den Übergabeparametern _TSA=6 _VMS=0 _NMSP=1 _FA=4
immer ein Leerzeichen lassen.

Ist das Programm bei dir so durchgelaufen????

_MVAR ... das ist die Messvariante > 1100 / 100 solltest du auch noch einfügen.

Warum verwendest du _EVNUM ? Das ist der Speicher für Erfahrungswerte. _EVNUM=0 ist da ausreichend.

Und so wie ich das verstehe, setzt du deinen G54 über Feinverschiebung. Danach willst du über Punktmessung eine Ecke ermitteln und diese in Nullpunkt G54 eintragen.

Dabei ist der Nullpunkt zunähst in der Drehmitte deiner Schwenkachse ???

Hab ich das soweit richtig verstanden?

Soweit sieht es nicht schlecht aus. Hast du den Zyklus selbst geschrieben oder über die HMI eingegeben? Dazu gibt es im Editor Masken, das hilft Fehler zu vermeiden.


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 12.12.2011, 10:17 Uhr
Jack82
Level 1 = Community-Lehrling
*
Hallo Hexogen,
erst mal DANKE für die Mithilfe!!!
Nein das Programm läuft so nicht, habe eben noch einen Testlauf auf der Maschine gemacht.
Habe das Programm selbst geschrieben. Ich kann leider nur am PC Programmieren da die Maschine laufend belegt ist. Einen Teil habe ich vom vorhandenen Meßprogramm übernommen (hat damals ein Siemens- Techniker geschrieben- kann den aber nicht hinzuziehen weil mein Budget nicht reicht) .
Ich bekomme die Fehlermeldung das PRUN nicht definiert ist. Hab`s aus dem Programm rausgelöscht da es die Fehlermeldung undefinierte Variable auslöst.
Außerdem wird _MVAR 100 als „Falsche Messvariante“ ausgegeben!?! Was ich echt nicht verstehe.
Wo und wozu _MVAR ... > 1100 / 100 einfügen, was bewirkt das?
Gruß
Jack
   
Beitrag 12.12.2011, 10:38 Uhr
Jack82
Level 1 = Community-Lehrling
*
Guten Morgen,
ich habe mein Meßprogramm am WE nochmal überarbeitet. Es läuft aber immer noch nicht.
Ich lade es mal hoch, vielleicht hat jemand von euch eine Idee?

% MP Messen
N100 G54 M51 ;NULLPKT=$P_UIFRNUM;$P_UIFR[NULLPKT]=CTRANS(X,0,Y,0,Z,0):CFINE(X,321.750,Y,239.25,Z,-120)N103 $P_CHBFR[0]=CTRANS() ;BASISFRAME NULLEN
N104 $P_UIFR[0]=CTRANS() ;G500 NULLEN
N106 G64 G451 CFIN CUT2DF
N107 G153 G90 G0 D0 Z=1000
N121 M77 ;RENISHAW EINSCHALTEN
N200 WECHSEL(01)
N201 D1
N203 G54 G17 G90 T1 D1 ; Werkzeug aufrufen
N300 G0 G90 X=17 Y=60 ; positionieren vor Y Achse um x=0 anzutasten
N400 Z=130 ; positionieren in Höhe
N401 _TSA=6_PRNUN=1_VMS=0_NMSP=1_FA=4 ; Parameter bekanntgeben
N402 _NVAR=100_SETVAL=0_MA=1_KNUM=1
N700 CYCLE978 ; ;Zyklusaufruf
N710 ;_NVAR=100_SETVAL=0_MA=1_KNUM=1_FA=4
N800 G0 X=5 ; zurückfahren
N900 Y=45 ; positionieren vor x Achse um y=0 anzutasten
N1000 X=25
N1100 MA=2 ; Parameter bekanntgeben;
N1200 CYCLE978 ;Zyklusaufruf
N1300 G0 Y=-2 ; zurückfahren
N1400 Z=134 ; positionieren über Werkstück um z=0anzutasten
N1450 X=25 Y=65
N1500 _MA=3 ; Parameter bekanntgeben;
N1600 CYCLE978 ;Zyklusaufruf
N1400 G54 ; Nullpunktverschiebungen aktivieren
N1500 G0 Z=300
N1510 M76
N1600 M30

Wie ihr seht bin ich tapfer am Kämpfen, aber mir gehen echt die Ideen aus.
Ich bin für jede Hilfe, Anregung, Tip, dankbar.

Gruß
Jack
   
Beitrag 12.12.2011, 13:37 Uhr
Hexogen
Level 7 = Community-Professor
*******
Hey,
wie gesagt ...

Füg erstmal bei
N401 _TSA=6_PRNUN=1_VMS=0_NMSP=1_FA=4 ; Parameter bekanntgeben
N402 _NVAR=100_SETVAL=0_MA=1_KNUM=1

leerzeichen ein...

N401 _TSA=6 _PRNUN=1 _VMS=0 _NMSP=1 _FA=4 ; Parameter bekanntgeben
N402 _NVAR=100 _SETVAL=0 _MA=1 _KNUM=1

sonst geht das nicht

_MVAR=100 bzw _MVAR=1100 > 100= einfache Messung ... 1100 Messnung mit Messtaster auf Umschlag... Also es wird 2x gemessen (0/180grad)

Du kannst auch an die Steuerung während die Maschine läuft. Dazu muss diese nicht stehen.

N1100 sollte auch _MA=2 sein.


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 14.12.2011, 09:55 Uhr
Jack82
Level 1 = Community-Lehrling
*
Hallo Hexogen,

danke für deine Hilfe! Habe die änderungen vorgenommen, gebracht hat`s leider nichts.

Gruss Jack
   
Beitrag 15.12.2011, 06:23 Uhr
Hexogen
Level 7 = Community-Professor
*******
was genau geht nicht? bzw welcher fehler wird denn angezeigt ?


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 15.12.2011, 07:27 Uhr
Hexogen
Level 7 = Community-Professor
*******
ich sowas sollte man net machen wink.gif

ich würds so programmieren

;%_N_MESSEN3_MPF
;$PATH=/_N_MPF_DIR
DEF INT NULLPKT

G54 M51 ;NULLPKT AUSWAEHLEN G54,G55,G56,G57

NULLPKT = $P_UIFRNUM ;nullpunkt sichern

;Nullpunktverschiebung setzen
$P_UIFR[NULLPKT]=CTRANS(X,0,Y,0,Z,0):CFINE(X,321.750,Y,239.25,Z,-120)

;Messtaster Laenge pruefen DB10.DBX107.0 = 1.Messeingang
;Messtaster Laenge pruefen DB10.DBX107.1 = 2.Messeingang

CYCLE800()
$P_CHBFR[0]=CTRANS() ;BASISFRAME NULLEN
$P_UIFR[0]=CTRANS() ;G500 NULLEN
$P_UIFR[NULLPKT,Z,RT]=0 ;NULLPUNKT Z-ACHSE ROT SCHREIBEN

G60 G451 CFIN CUT2DF

G153 G90 G0 D0 Z=1000
B0 C0

WECHSEL(01)

;RENISHAW EINSCHALTEN UND PRÜFEN OB ER FUNKTIONIERT
WHILE $A_PROBE[1]==0
MSG("TASTER GEHT NOCH NICHT")
M77 ;RENISHAW EINSCHALTEN
MSG()
ENDWIHLE

;Werkzeugplatz anpassen
D1

;Vorpos. 1. Z messen, grob
G0 G90 X=... Y=...
G0 Z=...
;1. Z Tasten GROB
_MVAR=100 ;MESSVARIANTE MIT PUNKTMESSUNG
_SETVAL=0 ;ABSTAND DES PUNKT IN Z VOM NP GESEHEN
_MA=3 ;MESSACHSE (ABHAENGIG VON _MVAR)
_MD=0 ;MESSRICHTUNG (ABHAENGIG VON _MVAR BEI EICHEN AN EINER FLAECHE)
_KNUM=NULLPKT ;WELCHER NULLPUNKT
_PRNUM=001 ;MESSTASTER TYP UND NUMMER
_TSA=0.5 ;VERTRAUENSBEREICH (TOLERANZ )
_CORA=0 ;KORREKTURWINKEL (NUR BEI MONOTASTER)
_VMS=0 ;MESSGESCHWINDIGKEIT BEI 0 STANDARDWERT F150
_NMSP=1 ;ANZAHL DER MESSUNGEN AM GLEICHEN ORT
_EVNUM=0 ;ERFAHRUNGSWERTESPEICHER WENN 0 DANN OHNE
_FA=3 ;FAKTOR FUER VERVIELFACHUNG DES MESSWEGES 1=2MM MESSWEG 2=4MM 3=6MM
CYCLE978 ;MESSZYKLUS
;Rueckzug
G0 Z=...

;Vorpos. 2. X messen, grob
G0 G90 X=... Y=...
G0 Z=...
;2. X Tasten GROB
_MA=1 ;MESSACHSE (ABHAENGIG VON _MVAR)
CYCLE978 ;MESSZYKLUS
;Rueckzug
G0 Z=...

;Vorpos. 3. Y messen, fein
G0 G90 X=... Y=...
G0 Z=...
;2. Y Tasten fein
_MA=2 ;MESSACHSE (ABHAENGIG VON _MVAR)
CYCLE978 ;MESSZYKLUS
;Rueckzug
G0 Z=...

;Vorpos. 4. Z messen, fein
G0 G90 X=... Y=...
G0 Z=...
;2. Z Tasten fein
_MA=3 ;MESSACHSE (ABHAENGIG VON _MVAR)
CYCLE978 ;MESSZYKLUS
;Rueckzug
G0 Z=...

;Vorpos. 5. X messen, fein
G0 G90 X=... Y=...
G0 Z=...
;2. X Tasten fein
_MA=1 ;MESSACHSE (ABHAENGIG VON _MVAR)
CYCLE978 ;MESSZYKLUS
;Rueckzug
G0 Z=...

G0 Z=300
G64
M76
M30


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
   
Beitrag 15.12.2011, 13:53 Uhr
Jack82
Level 1 = Community-Lehrling
*
Hallo Hexogen,
erst mal DANKE für die Mithilfe!!!
Respekt und Anerkennung, mache mich jetzt mal ans Nachvollziehen.

Gruss

Jack
   
Beitrag 15.12.2011, 14:41 Uhr
Jack82
Level 1 = Community-Lehrling
*
Hallo zusammen,

ich habe heute Morgen noch ein Programm getestet.
Sah schon ganz gut aus, jedoch ist es nach dem ersten Antasten (NV von x=0) stehengeblieben, da der Messtaster eine Fehlermeldung ausgelöst hat. Ich muss mich jetzt mal mit der Kalibrierung auseinandersetzen….
Ich lade das auskommentierte Programm mal hoch und warte das Urteil der Profils ab.

;%MPMessen
; in diesem Beispiel liegt der zu tastende Werkstuecknullpunkt bei (x=20,y=47,z=136)
N100 G54 M51

NULLPKT=$P_UIFRNUM
$P_UIFR[NULLPKT]=CTRANS(X,0,Y,0,Z,0):CFINE(X,321.750,Y,239.25,Z,-120)

N103 $P_CHBFR[0]=CTRANS() ;BASISFRAME NULLEN
N104 $P_UIFR[0]=CTRANS() ;G500 NULLEN
N106 G64 G451 CFIN CUT2DF
N107 G153 G90 G0 D0 Z=1000
N121 M77 ;RENISHAW EINSCHALTEN
N200 ;WECHSEL(01)
N201 D1
N203 G54 G17 G90 T1 D1 ;ich weiß hier rufe ich das Werkzeug zum zweiten mal auf, dachte sicher ist sicher und die Steuerung frisst`s
N300 G0 G90 X=17 Y=60 ;Messtaster in X/Y-Ebene vor der Messfläche positionieren
N400 Z=130 ;Messtaster auf Messhöhe positionieren
N401 _TSA=6 _PRNUM=1 _VMS=0 _NMSP=1 _FA=14 ;Parameter für Messzyklusaufruf setzen _FA=14= Messweg 14mm
N402 _MVAR=100 _SETVAL=20 _MA=1 _KNUM=1 ;Parameter für Messzyklusaufruf setzen _SETVAL=20 -> erwachteter antastpunkt bei x=20
N700 CYCLE978 ;Messzyklus zur NV-Ermittlung in X-Achse
N800 G0 X=5 ;Rückzug in X-Achse
N900 Y=45 ;Positionieren vor zweitem Messpunkt in Y-Achse
N1000 X=25 ;Positionieren vor zweitem Messpunkt in X-Achse
N1100 _MA=2 _SETVAL=47 ;Parameter für den Messzyklusaufruf setzen _SETVAL=47 -> erwachteter antastpunkt bei y=47
N1200 CYCLE978 ;NV-Ermittlung in Y-Achse
N1300 G0 Y=-2 ;Rückzug in Y-Achse
N1400 Z=145 ;Messtaster auf Messhöhe positionieren
N1450 X=25 Y=65 ;Messtaster über Werkstück positionieren
N1500 _MA=3 _SETVAL=136 ;Parameter für den Messzyklusaufruf setzen _SETVAL=136 -> erwachteter antastpunkt bei z= 136
N1600 CYCLE978 ;NV-Ermittlung in Z-Achse
N1700 G54 ;Erneuter Aufruf der NV G54 damit werden die Änderungen wirksam!
N1800 G0 Z=300 ;Rückzug in Z-Achse
N1810 M76 ;RENISHAW AUSSCHALTEN
N1900 M30 ;Programmende

Und was meind ihr? Sollte gehn oder? Ich bin dankbar für jede Rückmeldung!!!

Gruss

Jack
   
Beitrag 16.12.2011, 04:05 Uhr
Hexogen
Level 7 = Community-Professor
*******
Hey Jack,

der Messtaster sollte geeicht sein. Die Variablen kannst Du dir jederzeit unter GUD6 ansehen.

Ansonsten zum Eichen, erst Kugel in X Y Eichen (Durchmesser). Danach den Schaltpunkt in Z ermitteln.
Da wird der Kugelradius mit verrechnet.
Daher die Länger deines Messtaster ist immer Kugelmitte.


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


Anwendungen, Zyklen, CAD/CAM





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