Siemens
Siemens

Digital Industries, Motion Control, Machine Tool Systems

Werkzeugkorrektur, Automatische Radiuskorrektur

Beitrag 19.01.2020, 12:35 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
Hallo , habe ein Problem und zwar verschließt der Schaftfräser nach 3 Bauteilen. Im Moment wird die Korrektur von Hand im Wz- Speicher geändert.
Gibt es eine Möglichkeit das Automatisch über das Programm zu machen ? Das heißt nach jedem 3 Teil den Radius um 0,1 mm zu reduzieren. Für eine Lösung wäre ich euch Dankbar.
   
Beitrag 19.01.2020, 13:57 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
Du hast verschieden Möglichkeiten:
1.
Du kannst den wirksamen Radius bei der Werkezugradiuskorrektur verändern, indem du die Korrektur mit dem Programmbefehl OFFN setzt,
also z.B. OFFN=-0.2 verringert den Radius um 0,2 mm.
Die Werkzeugparameter im Werkzeugspeicher werden dadurch nicht verändert. Die Änderung wird sofort wirksam.
2.
Du kannst den veränderten Radius direkt in den Werkzeugspeicher schreiben. Mit der aktiven Werkzeugnummer T und der aktiven Schneidennummer D (ist meistens 1) sieht das so aus: $TC_DP6[T, D] = <neuer Radius>
3.
Du kannst die Korrektur in den Verschleißwert des Radius in den Werkzeugspeicher schreiben: $TC_DP15[T, D] = <Korrektur>. Dieser Wert wird dann zum Werkzeugradius addiert. Der Basiswert in $TC_DP6[T, D] bleibt unverändert.

Die Änderungen im Werkzeugspeicher (also bei den Varianten 2 und 3) werden erst nach einer erneuten Werkzeug- oder Schneidenanwahl wirksam.
   
Beitrag 20.01.2020, 19:51 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
QUOTE (CNCFr @ 19.01.2020, 14:57 Uhr) *
Du hast verschieden Möglichkeiten:
1.
Du kannst den wirksamen Radius bei der Werkezugradiuskorrektur verändern, indem du die Korrektur mit dem Programmbefehl OFFN setzt,
also z.B. OFFN=-0.2 verringert den Radius um 0,2 mm.
Die Werkzeugparameter im Werkzeugspeicher werden dadurch nicht verändert. Die Änderung wird sofort wirksam.
2.
Du kannst den veränderten Radius direkt in den Werkzeugspeicher schreiben. Mit der aktiven Werkzeugnummer T und der aktiven Schneidennummer D (ist meistens 1) sieht das so aus: $TC_DP6[T, D] = <neuer Radius>
3.
Du kannst die Korrektur in den Verschleißwert des Radius in den Werkzeugspeicher schreiben: $TC_DP15[T, D] = <Korrektur>. Dieser Wert wird dann zum Werkzeugradius addiert. Der Basiswert in $TC_DP6[T, D] bleibt unverändert.

Die Änderungen im Werkzeugspeicher (also bei den Varianten 2 und 3) werden erst nach einer erneuten Werkzeug- oder Schneidenanwahl wirksam.
   
Beitrag 20.01.2020, 19:52 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
QUOTE (CNCFr @ 19.01.2020, 14:57 Uhr) *
Du hast verschieden Möglichkeiten:
1.
Du kannst den wirksamen Radius bei der Werkezugradiuskorrektur verändern, indem du die Korrektur mit dem Programmbefehl OFFN setzt,
also z.B. OFFN=-0.2 verringert den Radius um 0,2 mm.
Die Werkzeugparameter im Werkzeugspeicher werden dadurch nicht verändert. Die Änderung wird sofort wirksam.
2.
Du kannst den veränderten Radius direkt in den Werkzeugspeicher schreiben. Mit der aktiven Werkzeugnummer T und der aktiven Schneidennummer D (ist meistens 1) sieht das so aus: $TC_DP6[T, D] = <neuer Radius>
3.
Du kannst die Korrektur in den Verschleißwert des Radius in den Werkzeugspeicher schreiben: $TC_DP15[T, D] = <Korrektur>. Dieser Wert wird dann zum Werkzeugradius addiert. Der Basiswert in $TC_DP6[T, D] bleibt unverändert.

Die Änderungen im Werkzeugspeicher (also bei den Varianten 2 und 3) werden erst nach einer erneuten Werkzeug- oder Schneidenanwahl wirksam.
   
Beitrag 20.01.2020, 19:57 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
Danke für sie Antwort. Den Befehl OFFN kenne ic h. Der wirkt aber be i jedem Teil soviel ic h dss in Erinnerung habe. Wie oben beschrieben soll der Radius nach den 3- Ten Programmstart geändert werden. Di e Punkte 2 un d 3 kenne och nicht , werde di e aber mal testen.
   
Beitrag 20.01.2020, 20:00 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
Danke für sie Antwort. Den Befehl OFFN kenne ic h. Der wirkt aber be i jedem Teil soviel ic h dss in Erinnerung habe. Wie oben beschrieben soll der Radius nach den 3- Ten Programmstart geändert werden. Di e Punkte 2 un d 3 kenne och nicht , werde di e aber mal testen.
   
Beitrag 20.01.2020, 20:09 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
Es war schon so gedacht, dass du den Wert für OFFN immer dann veränderst, wenn du es für richtig hältst.
Du brauchst dann eben z.B. eine Variable (z.B. einen R-Parameter) in der der jeweils aktuelle Wert steht, und eine weitere Variable in der steht, ob du gerade im 1., 2. oder dritten Durchlauf bist.
Die zweite Variable wirst du auch brauchen, wenn du die Korrektur im Werkzeugspeicher änderst.

Weshalb willst du eigentlich die Korrektur nur in jedem dritten Durchlauf um 0,1mm ändern? Wäre es nicht sinnvoller (und einfacher), den Korrekturwert in jedem Durchlauf um 0.033mm zu ändern?
   
Beitrag 21.01.2020, 19:58 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
QUOTE (CNCFr @ 20.01.2020, 21:09 Uhr) *
Es war schon so gedacht, dass du den Wert für OFFN immer dann veränderst, wenn du es für richtig hältst.
Du brauchst dann eben z.B. eine Variable (z.B. einen R-Parameter) in der der jeweils aktuelle Wert steht, und eine weitere Variable in der steht, ob du gerade im 1., 2. oder dritten Durchlauf bist.
Die zweite Variable wirst du auch brauchen, wenn du die Korrektur im Werkzeugspeicher änderst.

Weshalb willst du eigentlich die Korrektur nur in jedem dritten Durchlauf um 0,1mm ändern? Wäre es nicht sinnvoller (und einfacher), den Korrekturwert in jedem Durchlauf um 0.033mm zu ändern?

Da wir in einer Serienproduktion arbeiten ,ist es sinnvoll ohne das eingreifen des Bedieners zu arbeiten, Um immer die Differenz von -0.1 mm Verschleiß zu haben wollte ich das Programm so gestalten.Würde das mit Z.B R1=$P_TOOLR R2=-0,1 R1=R1-R2 funktionieren?
   
Beitrag 21.01.2020, 21:24 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
Du willst also R1=$P_TOOLR - 0,1 berechnen. Das geht selbstverständlich. Und was genau soll dann mit R1 geschehen?
Und nochmals die Frage: Weshalb nur beim dritten Teil? Das Werkzeug wird ja nicht bei den jeweils ersten beiden Teilen verschleißfrei arbeiten und dann beim dritten Teil plötzlich um 0,1mm kleiner werden. Da scheint es doch sinnvoller zu sein, den Werkzeugradius bei jedem Teil 0,033 zu verringern.
   
Beitrag 22.01.2020, 16:19 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
QUOTE (CNCFr @ 21.01.2020, 22:24 Uhr) *
Du willst also R1=$P_TOOLR - 0,1 berechnen. Das geht selbstverständlich. Und was genau soll dann mit R1 geschehen?
Und nochmals die Frage: Weshalb nur beim dritten Teil? Das Werkzeug wird ja nicht bei den jeweils ersten beiden Teilen verschleißfrei arbeiten und dann beim dritten Teil plötzlich um 0,1mm kleiner werden. Da scheint es doch sinnvoller zu sein, den Werkzeugradius bei jedem Teil 0,033 zu verringern.

Es ist ja natürlich richtig das der Fräser nach jedem Teil verschleißt. Kann man auch so machen ,Wir müsste trotzdem den Radius des Werkzeugs im Speicher verrechnen lassen . Da liegt ja mein Problem. Soll ja automatisch verändert werden bis zu einem maximal Verschleiß von -0,5 mm.
   
Beitrag 22.01.2020, 18:05 Uhr
Sophie89
Sophie89
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 16.07.2017
Beiträge: 131
QUOTE (spibo36 @ 22.01.2020, 16:19 Uhr) *
Es ist ja natürlich richtig das der Fräser nach jedem Teil verschleißt. Kann man auch so machen ,Wir müsste trotzdem den Radius des Werkzeugs im Speicher verrechnen lassen . Da liegt ja mein Problem. Soll ja automatisch verändert werden bis zu einem maximal Verschleiß von -0,5 mm.


Dann bastel dir doch viel einfacher sowas in der Art
$P_TOOLR=$P_TOOLR-0,033

IF $P_TOOLR<20 GOTOF EXIT
ENDIF

oder so ählich tounge.gif

Der Fräser verschleißt ja gleichmäßig, und nicht nach exakt jedem dritten Teil um 0,1.
   
Beitrag 22.01.2020, 18:39 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
QUOTE (Sophie89 @ 22.01.2020, 19:05 Uhr) *
Dann bastel dir doch viel einfacher sowas in der Art
$P_TOOLR=$P_TOOLR-0,033

IF $P_TOOLR<20 GOTOF EXIT
ENDIF

oder so ählich tounge.gif

Der Fräser verschleißt ja gleichmäßig, und nicht nach exakt jedem dritten Teil um 0,1.

So geht es leider nicht, da die Systemvariable $P_TOOLR nur lesbar, aber nicht schreibbar ist. Das muss auch so sein, da sich der Radius, den man mit der Variablen liest, aus mehreren Komponenten additiv zusammensetzen kann. Wohin sollte man dann einen neuen Summenwert schreiben?
Wie man in den Wert im Werkzeugspeicher beschreiben kann, habe ich in meinem Beitrag #4 unter den Punkten 2. und 3. bereits geschrieben.
Da kann man dann auch so schreiben:
$TC_DP6[T, D] = $TC_DP6[T, D] - 0.033
was deinem Vorschlag mit $P_TOOLR entspricht.
Was die Frage betrifft, ob man nun nach jeder Bearbeitung oder erst nach jeder dritten Bearbeitung korrigiert, verstehe ich spibo36 Beharren auf einer Korrektur nur nach jedem 3. Durchlauf nicht. Das hat schließlich mit dem eigentlichen Problem überhaupt nichts zu tun, und macht die ganze Sache - wenn auch nur unwesentlich - komplizierter.
   
Beitrag 22.01.2020, 20:06 Uhr
spibo36
spibo36
Level 2 = Community-Facharbeiter
**
Gruppe: Mitglied
Mitglied seit: 29.08.2014
Beiträge: 97
QUOTE (CNCFr @ 22.01.2020, 19:39 Uhr) *
So geht es leider nicht, da die Systemvariable $P_TOOLR nur lesbar, aber nicht schreibbar ist. Das muss auch so sein, da sich der Radius, den man mit der Variablen liest, aus mehreren Komponenten additiv zusammensetzen kann. Wohin sollte man dann einen neuen Summenwert schreiben?
Wie man in den Wert im Werkzeugspeicher beschreiben kann, habe ich in meinem Beitrag #4 unter den Punkten 2. und 3. bereits geschrieben.
Da kann man dann auch so schreiben:
$TC_DP6[T, D] = $TC_DP6[T, D] - 0.033
was deinem Vorschlag mit $P_TOOLR entspricht.
Was die Frage betrifft, ob man nun nach jeder Bearbeitung oder erst nach jeder dritten Bearbeitung korrigiert, verstehe ich spibo36 Beharren auf einer Korrektur nur nach jedem 3. Durchlauf nicht. Das hat schließlich mit dem eigentlichen Problem überhaupt nichts zu tun, und macht die ganze Sache - wenn auch nur unwesentlich - komplizierter.

Hi, wollte keine Streit vom Zaun brechen. smile.gif Das mit der Korrektur nach dem 3-ten Durchlauf ist so entstanden da wir das jetzt so machen. Ob nach einem oder erst nach der 3-ten Bauteil der Verschleiß korrigiert wird ist ja egal. Hauptsache ist das man das überhaupt automatisieren kann. Werde das mit $TC_DP6[T, D] = $TC_DP6[T, D] - 0.033 morgen mal versuchen. Danke Euch
   
Beitrag 22.01.2020, 22:10 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922
Ich habe noch ein wenig in meinem Hinterkopf gekramt, weil ich mich dunkel erinnert habe, dass es für das, was du tun willst eine fertige Funktion gibt.
Nach einigem Suchen habe ich die dann auch gefunden und zwar im im Handbuch "Sinumerik 840D sl Grundfunktionen Funktionshandbuch"
https://support.industry.siemens.com/cs/doc...=0&lc=de-DE
Das ist die Funktion "SETTCOR" im Kapitel 19.4.6. Die Funktion ist ziemlich mächtig und eigentlich vorwiegend für die Modifikation der Werkzeuglängen in Verbindung mit Messzyklen gedacht. Man kann damit aber auch den Werkzeugradius verändern, was längst nicht so komplex ist wie die Veränderung des Werkzeuglängen.
Kannst du dir ja vielleicht mal durchlesen und damit ein bisschen experimentieren.
   
Beitrag 14.04.2020, 05:59 Uhr
M_Sternberg
M_Sternberg
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 24.01.2020
Beiträge: 5
QUOTE (CNCFr @ 21.01.2020, 22:24 Uhr) *
Du willst also R1=$P_TOOLR - 0,1 berechnen. Das geht selbstverständlich. Und was genau soll dann mit R1 geschehen?
Und nochmals die Frage: Weshalb nur beim dritten Teil? Das Werkzeug wird ja nicht bei den jeweils ersten beiden Teilen verschleißfrei arbeiten und dann beim dritten Teil plötzlich um 0,1mm kleiner werden. Da scheint es doch sinnvoller zu sein, den Werkzeugradius bei jedem Teil 0,033 zu verringern.


Ich denke, deine Ansicht ist nicht ganz richtig. Wenn das Werkzeug z.B. TiAlN-beschichtet ist verschleißt es weniger schnell. Sobald die Schicht an der Schneide verschwunden bzw unterbrochen ist, ist der Verschleiß stärker und steigt exponentiell. Wenn ich mal Serien am laufen habe hält der Fräser teilweise 50 oder 60 Teile seinen Durchmesser auf 0,005 mm und dann verschleißt er innerhalb der nächsten 3 Teile um 0,03 mm.
Ich glaube das ist kein unnatürliches phänomen.
   
1 Besucher lesen dieses Thema (Gäste: 1)
0 Mitglieder: