584.841 aktive Mitglieder*
4.329 Besucher online*
Kostenfrei registrieren
Einloggen Registrieren

online Bahnanpassung im Fräsprozess, Stratege für online Bahnanpassung im Fräsprozess Finden und entwickeln

Beitrag 13.10.2020, 14:34 Uhr
Star11
Star11
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 13.10.2020
Beiträge: 7

Hallo ihr liebe,

ich habe angefangen mit dem Thema online Bahnanpassung im Fräsprozess zu arbeiten.
Kann vielleicht Jemand mir ein Paar Tipps über das Thema geben(Linke oder Literatur) ?.
Welche Methode oder Möglichkeiten gibt ,um Bahnen oline anzupassen in der Fräsmaschine?.

Ich danke euch im voraus für eure Antwort und verbleibe

Der Beitrag wurde von Star11 bearbeitet: 13.10.2020, 14:36 Uhr
TOP    
Beitrag 13.10.2020, 16:16 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

Also Online Anpassung, was genau willst machen.
Eine Bahn online im Internet anpassen?
Oder Bahn während des Programm laufs "live" anzupassen.

Also ich möchte Eine Bahnanpassen ist recht Vage. Auch wenn es Online sein soll.


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 16.10.2020, 07:45 Uhr
Star11
Star11
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 13.10.2020
Beiträge: 7

QUOTE (Hexogen @ 13.10.2020, 15:16 Uhr) *
Also Online Anpassung, was genau willst machen.
Eine Bahn online im Internet anpassen?
Oder Bahn während des Programm laufs "live" anzupassen.

Also ich möchte Eine Bahnanpassen ist recht Vage. Auch wenn es Online sein soll.

Hallo,
Also ich möchte gerne wissen die unterschiede zwischen Bahnbewegung Methode z.B
Übertragunsbewegung mit $AA_OFF
Bewegung der Bahnachsen bei G0
überlagerte Bewegungen Bei Orientierungstransformationen
was gibt es noch als Möglichkeiten von Methoden und was sind die Unterschiede zwischen den Methoden und welche Vor-und Nachteile gibt ?
ich danke dir im voraus für deine Antwort
TOP    
Beitrag 17.10.2020, 17:17 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

Hey.
Also $AA_OFF fährt eine Bewegung überlagernd in eine Achse aus.
Was bei einer Kompensation sinn machen würde. Z.B. Temperatur.
Aber das geschieht in einem Satz und zwar nicht Live.
Aus einer Synchronaktion wird das auch nicht beschreibbar sein. Bzw. kann ich es mir nicht vorstellen.
Daher meine Frage, was genau willst Du machen.
Also einen Wert in der Orientierung rechnen und diese automatisch verschieben, aufaddieren...


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 18.10.2020, 07:51 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922

Star11: Weshalb stellst du deine Anfrage im Form "ifm electronic" ein?
Weshalb schreibst du nicht, welche Steuerung du hast? Soll man das aus der Glaskugel lesen?
Erst aus deiner ersten Antwort auf Hexogens Nachfrage kann man indirekt schließen, dass du eine Steuerung aus der 840D-Familie hast.
Literatur ist reichlich vorhanden: Die Siemens-Handbücher. Suche nach den Begriffen "überlagerte Bewegungen", "Synchronaktionen".

Deine Frage zu G0 in diesem Zusammenhang verstehe ich nicht: G0 ist normalerweise G1 mit maximal zulässiger Geschwindigkeit, d.h. man muss kein F-Wort programmieren (ein zweifelhafter Vorteil, für den man das Konzept durchbricht, dass ein G-Code nur eine Eigenschaft der Bewegung verändern soll).
Daneben gibt es eine G0-Variante, bei der die Achsen als Positionierachsen und nicht mehr im Bahnverbund verfahren, d.h. jede Achse fährt ihren Endpunkt mit ihrer jeweiligen Maximalgeschwindigkeit an, so dass die beteiligten Achsen ihre Endpunkte in der Regel nicht gleichzeitig erreichen.


Hexogen:
Mit $AA_OFF kann man in Echtzeit überlagerte Bewegungen ausführen, z.B. über Synchronaktionen. Das ganze ist nicht satzgebunden, sondern kann völlig asynchron zum Programmablauf erfolgen.
Daneben gibt es noch weitere überlagerte Bewegungen:
AA_TOFF ((De-)Aktiviert mit TOFFON / TOFFOF) zur Veränderung der wirksamen Werkzeuglänge in Echtzeit. Verwendet vor allem bei aktiver 5-Achstransformation z.B. zur Abstandsregelung beim Laserschneiden.
FTOC speziell beim Schleifen zur Echtzeitkorrektur des Schleifscheibenradius durch den Abrichtprozess.
Überlagerung mit dem Handrad (DRF).
Externe Nullpunktverschiebung über den PLC.
Was in diesem Zusammenhang sicher auch wichtig ist: Beeinflussung des Overrides in Echtzeit ($AC_OVR).
Überlagerte Bewegungen bei Achskopplungen.

Die überlagerten Bewegungen wirken alle in Echtzeit, d.h. diese Bewegungen können im Vorlauf nicht berücksichtigt werden. Das bedeutet, dass man für diese Bewegungen Dynamikreserven (Geschwindigkeit, Beschleunigung) bereitstellen muss, die dann bei der "normalen" Interpolation fehlen, was bei Bearbeitungsgeschwindigkeiten normalerweise unproblematisch sein sollte.
Aus dem gleichen Grund werden auch die Achsgrenzen in Echtzeit überwacht und nicht wie üblich im Vorlauf.
TOP    
Beitrag 18.10.2020, 15:49 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (CNCFr @ 18.10.2020, 09:51 Uhr) *
Hexogen:
Mit $AA_OFF kann man in Echtzeit überlagerte Bewegungen ausführen, z.B. über Synchronaktionen. Das ganze ist nicht satzgebunden, sondern kann völlig asynchron zum Programmablauf erfolgen.
Daneben gibt es noch weitere überlagerte Bewegungen:
AA_TOFF ((De-)Aktiviert mit TOFFON / TOFFOF) zur Veränderung der wirksamen Werkzeuglänge in Echtzeit. Verwendet vor allem bei aktiver 5-Achstransformation z.B. zur Abstandsregelung beim Laserschneiden.


Ok das ist soweit klar.
Jetzt ist ist die Frage, was willst kompensieren. Ich mein einen bestimmten Wert. In seinem Fall. Das ist mir nicht ganz ersichtlich.

Meine Fragestellung, vielleicht hast Du da eine Idee...
Kann ich nun anhand einer Achsposition z.B. A Achse im Bereich von 10 -20 Grad eine Eine Kompensation auf Geoachsen Y und Z erfährt.
Natürlich muss die Kompensation Anhand der A Achs Position in Y und Z per Formel errechnet werden.

Noch eine Frage, wie wirkt die Überlagerung direkt im Verfahren oder zum Verfahrsatz ende.
Wann addiert er die Bewegung auf, im Ipotakt?

Ich such auch nach einer "Live" Manipulation wie oben beschrieben.
Sowas wie VCS Lite machen.


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 18.10.2020, 19:11 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922

Man kann sich das grob so vorstellen:
Es gibt einen Interpolator, der die normale Bahnbewegung interpoliert (im Ipotakt).
Parallel dazu werden die die überlagerten Bewegungen, die ja aus mehreren Quellen gleichzeitig kommen können, aufaddiert. Damit hat man dann einen neuen Zielpunkt für die gesamte überlagerte Bewegung.
Für diesen Zielpunkt gibt es nun einen eigenen Interpolator, der den nächsten Punkt (im Ipotakt) ermittelt, d.h. die Distanz zwischen Soll und Ist wird so aufgeteilt, dass die Bewegung im Rahmen der Maschinendynamik bleibt. Daraus folgt, dass es je nach Änderungsgeschwindigkeit der Zielpunktvorgabe viele Ipotakte lang dauern kann, bis der Zielpunkt erreicht ist (mal abgesehen von der Tatsache, dass sich der Zielpunkt ja auch ständig ändern kann). Diese so interpolierte Komponente wird in jedem Ipotakt zu der Position addiert, die sich aus der Bahninterpolation ergibt, und die Summe ist dann der aktuelle Sollwert.
Dieser Sollwert wirkt vor einer eventuell aktiven Transformation.
Danach kommen dann. evtl noch Korrekturen, die im Maschinenkoordinatensystem wirken (z.B. Temperaturkompensation, Spindelsteigungsfehlerkompensation, Losekompensation).
TOP    
Beitrag 18.10.2020, 19:36 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (CNCFr @ 18.10.2020, 21:11 Uhr) *
Man kann sich das grob so vorstellen:
Es gibt einen Interpolator, der die normale Bahnbewegung interpoliert (im Ipotakt).
Parallel dazu werden die die überlagerten Bewegungen, die ja aus mehreren Quellen gleichzeitig kommen können, aufaddiert. Damit hat man dann einen neuen Zielpunkt für die gesamte überlagerte Bewegung.
Für diesen Zielpunkt gibt es nun einen eigenen Interpolator, der den nächsten Punkt (im Ipotakt) ermittelt, d.h. die Distanz zwischen Soll und Ist wird so aufgeteilt, dass die Bewegung im Rahmen der Maschinendynamik bleibt. Daraus folgt, dass es je nach Änderungsgeschwindigkeit der Zielpunktvorgabe viele Ipotakte lang dauern kann, bis der Zielpunkt erreicht ist (mal abgesehen von der Tatsache, dass sich der Zielpunkt ja auch ständig ändern kann). Diese so interpolierte Komponente wird in jedem Ipotakt zu der Position addiert, die sich aus der Bahninterpolation ergibt, und die Summe ist dann der aktuelle Sollwert.
Dieser Sollwert wirkt vor einer eventuell aktiven Transformation.
Danach kommen dann. evtl noch Korrekturen, die im Maschinenkoordinatensystem wirken (z.B. Temperaturkompensation, Spindelsteigungsfehlerkompensation, Losekompensation).



ja genau ... du addierst direkt die achse und kannst damit die aktive transformation steuern.
und das ist mein problem... wo ich befürchte es wird nicht funktionieren.

QUOTE
bis der Zielpunkt erreicht ist (mal abgesehen von der Tatsache, dass sich der Zielpunkt ja auch ständig ändern kann).


also angenommen ich will die schwenkmitte in bereich A0 bis A+50 dynamisch verändern. so muss ich die ist position per synchronaktion abfragen mit einer formel die korrektur errechnen und den zu kompensierten wert schreiben.
bzw würde es eh eher sinn machen das ganze in zonen aufzuteilen um den interpolator nicht zu überfüllen bzw überlasten. Unserer rennt schon bei fast am anschlag.
VCS würde bei Mehrspindler keinen sinn machen.
Aber eine Dynamische Korrektur die Genauigkeit der Maschine steigern.
Erster schritt wäre ja Cycle800 und feste anstellung.
Zweiter schritt Traori also Dynamisch.

Denkst es ist damit realisierbar?
Die andere sache wäre das rechnen in einer synchronaktion mit einer komplexen formel.


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 19.10.2020, 07:42 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922

Wenn man die Rundachspostionen verändert, ist das Verhalten bei konstanter Orientierung (Cycle800, ToolCarrier) anders als bei aktiver Transformation (TRAORI).
ToolCarrier:
Die Geometrie wird im Vorlauf berechnet, d.h. die Schrägstellung des Werkzeugs wird mit den dort gültigen Werten berechnet, und eventuelle Drehungen des Koordinatensystems stehen in einem Frame.
Wenn man nun im Hauptlauf durch überlagerte Bewegungen die Rundachspositionen verändert, wird das Werkzeug (oder je nach Kinematik auch der Tisch) geschwenkt, d.h. die Orientierung des Werkzeugs relativ zum Werkstück verändert sich. Weiter passiert nichts, d.h. die Position des TCP verändert sich, die Positionen der Linearachsen bleiben unverändert. Angenommen, man hat eine Rundachsposition von 45 Grad programmiert, die Achse steht aber tatsächlich bei 44 Grad und man korrigiert das jetzt, so ist das - wenn ich das richtig sehe - genau das, was man braucht, weil man vor der Korrektur ja einen Orientierungsfehler und einen Positionsfehler hatte.
TRAORI:
Macht man das gleiche bei TROARI, verändert sich die Orientierung genauso wie beim ToolCarrier, die geänderten Rundachspositionen gehen jetzt aber in die Transformation ein, was zu veränderten Positionen der Linearachsen führt, d.h. die Linearachsen kompensieren die Verschiebung des TCP so, dass der TCP relativ zum Werkstück konstant bleibt. Das bedeutet aber, dass man damit Orientierungsfehler aber keine Positionsfehler kompensieren kann.

Wenn ich deine Anwendung richtig verstehe, möchtest du die Korrekturwerte ja von den aktuellen Achspositionen ableiten. Oder gehen da noch andere Faktoren ein, die sich dynamisch und nicht vorhersehbar (= in Echtzeit) ändern können? Wenn das Ganze statisch von den Positionen der Rundachsen abhängt, wäre eine Spindelsteigungsfehlerkompensation wahrscheinlich eher geeignet.

Zur Bildung der Korrekturwerte: Ich kann schlecht beurteilen, wie schwierig es in deinem Fall ist, aus den aktuellen Positionswerte Korrekturwerte abzuleiten. Das hängt sicher von deinem Fehlermodell ab. Mit Polynomen sollte man da aber schon einiges erreichen können. Es geht ja wahrscheinlich nicht um Abweichungen in der Größenordnung von einigen Grad.
TOP    
Beitrag 19.10.2020, 14:02 Uhr
Hexogen
Hexogen
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 29.09.2004
Beiträge: 1.813

QUOTE (CNCFr @ 19.10.2020, 09:42 Uhr) *
Oder gehen da noch andere Faktoren ein, die sich dynamisch und nicht vorhersehbar (= in Echtzeit) ändern können? Wenn das Ganze statisch von den Positionen der Rundachsen abhängt, wäre eine Spindelsteigungsfehlerkompensation wahrscheinlich eher geeignet.

Zur Bildung der Korrekturwerte: Ich kann schlecht beurteilen, wie schwierig es in deinem Fall ist, aus den aktuellen Positionswerte Korrekturwerte abzuleiten. Das hängt sicher von deinem Fehlermodell ab. Mit Polynomen sollte man da aber schon einiges erreichen können. Es geht ja wahrscheinlich nicht um Abweichungen in der Größenordnung von einigen Grad.


Hey CNCFr again...

Ich ermittle anhand eines Bauteils, Absolut im Raumliegende Kugel. Unabhängig der Kinematik gefräst, als Ursprung. Die Abweichung der gespindelten Bohrungen und angespiegelten Flächen.
Nach einer 5er Runde hab ich die Abweichungen der Positionen in der Jeweiligen Achsstellung. A / C.
Was was ich jetzt hab. 30er Runde, ist die Tatsache dass bei Warmer oder Kalter Maschine die Abweichung eigentlich gleich sind. Die Geo aber nicht mehr her gibt. (Runterhängen der Brücke etc pp)
Bei Mehrspindler ist auch noch so, das ich Mittelwerte bilden muss für Korrekturen.

Jetzt kenn ich die Fehler in der Y/Z Achse (X Achse lässt sich über Geo richten) die Position muss ich aber Relativ zur Drehmitte und A/C Stellung individuell rechnen. Das wären ja dann Winkelfunktionen. Es wird davor sichergestellt das es weder einen Positionierfehler noch einen Teilungsfehler in den Rundachsen gibt. Rundachsen müssen dafür einwandfrei sein. Somit kompensiere ich nur die Y und Z Geo Achse. aber auch nur bei max. 0.1mm drüber hinaus = Fehler in der Geo.
Ok muss es mal in Polygleichung nehmen. Funktionieren Polynome in Synchronaktionen?
Ah ja, Korrekturen sind im Cycle800 nicht zulässig. Und würden ja für TRAORI nichts bringen.

Hab auch gedacht mittels SSFK. Allerdings geht das ja nur für die Achse... Also bsp. Y im Bereich 100 -300 10 schritte und die aufgeteilten schritte kann ich einzeln kompensieren.
Da hab ich keinen Zusammenhang zu A/C. Und die werte sind Statisch. ich kann sie nur mittels NEWCONF scharfschalten.

Hab aber auch schon an Kurventabelle gedacht. Wobei ich mir nicht ganz sicher bin obs gehen wird.


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


Anwendungen, Zyklen, CAD/CAM





-----------------------------------------------------------------------------------------------------------------------------
TOP    
Beitrag 19.10.2020, 15:39 Uhr
CNCFr
CNCFr
Level 7 = Community-Professor
*******
Gruppe: Mitglied
Mitglied seit: 15.09.2002
Beiträge: 1.922

Polynome in Synchronaktionen sind in der Siemens-Doku "Synchronaktionen" beschrieben, in meiner Ausgabe von 2018 in den Kapiteln
3.3.16 Polynomkoeffizienten, -parameter ($AC_FCT...)
3.7.3 Polynomauswertung (SYNFCT)
Vielleicht findest du da etwas, was du für dein Problem nutzen kannst.
TOP    
Beitrag 20.10.2020, 16:44 Uhr
Star11
Star11
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 13.10.2020
Beiträge: 7

QUOTE (Hexogen @ 17.10.2020, 17:17 Uhr) *
Hey.
Also $AA_OFF fährt eine Bewegung überlagernd in eine Achse aus.
Was bei einer Kompensation sinn machen würde. Z.B. Temperatur.
Aber das geschieht in einem Satz und zwar nicht Live.
Aus einer Synchronaktion wird das auch nicht beschreibbar sein. Bzw. kann ich es mir nicht vorstellen.
Daher meine Frage, was genau willst Du machen.
Also einen Wert in der Orientierung rechnen und diese automatisch verschieben, aufaddieren...

ich möchte genau einfach ein Programm schreiben,einmal mit G1
und einmal gleiches Programm aber mit $AA_OFF und dann vergleiche zwischen beide programme bzw.Vor-und Nachteil.Genauso wollte auch so machen zwischen Werkzeugkorrektur mit
G41 und G42 und gleiches Programm mit online Werkzeugkorrektur mit FTOC.
danke dir für deine Hilfe
TOP    
Beitrag 20.10.2020, 17:02 Uhr
Star11
Star11
Level 1 = Community-Lehrling
*
Gruppe: Mitglied
Mitglied seit: 13.10.2020
Beiträge: 7

QUOTE (CNCFr @ 18.10.2020, 07:51 Uhr) *
Star11: Weshalb stellst du deine Anfrage im Form "ifm electronic" ein?
Weshalb schreibst du nicht, welche Steuerung du hast? Soll man das aus der Glaskugel lesen?
Erst aus deiner ersten Antwort auf Hexogens Nachfrage kann man indirekt schließen, dass du eine Steuerung aus der 840D-Familie hast.
Literatur ist reichlich vorhanden: Die Siemens-Handbücher. Suche nach den Begriffen "überlagerte Bewegungen", "Synchronaktionen".

Deine Frage zu G0 in diesem Zusammenhang verstehe ich nicht: G0 ist normalerweise G1 mit maximal zulässiger Geschwindigkeit, d.h. man muss kein F-Wort programmieren (ein zweifelhafter Vorteil, für den man das Konzept durchbricht, dass ein G-Code nur eine Eigenschaft der Bewegung verändern soll).
Daneben gibt es eine G0-Variante, bei der die Achsen als Positionierachsen und nicht mehr im Bahnverbund verfahren, d.h. jede Achse fährt ihren Endpunkt mit ihrer jeweiligen Maximalgeschwindigkeit an, so dass die beteiligten Achsen ihre Endpunkte in der Regel nicht gleichzeitig erreichen.


Hexogen:
Mit $AA_OFF kann man in Echtzeit überlagerte Bewegungen ausführen, z.B. über Synchronaktionen. Das ganze ist nicht satzgebunden, sondern kann völlig asynchron zum Programmablauf erfolgen.
Daneben gibt es noch weitere überlagerte Bewegungen:
AA_TOFF ((De-)Aktiviert mit TOFFON / TOFFOF) zur Veränderung der wirksamen Werkzeuglänge in Echtzeit. Verwendet vor allem bei aktiver 5-Achstransformation z.B. zur Abstandsregelung beim Laserschneiden.
FTOC speziell beim Schleifen zur Echtzeitkorrektur des Schleifscheibenradius durch den Abrichtprozess.
Überlagerung mit dem Handrad (DRF).
Externe Nullpunktverschiebung über den PLC.
Was in diesem Zusammenhang sicher auch wichtig ist: Beeinflussung des Overrides in Echtzeit ($AC_OVR).
Überlagerte Bewegungen bei Achskopplungen.

Die überlagerten Bewegungen wirken alle in Echtzeit, d.h. diese Bewegungen können im Vorlauf nicht berücksichtigt werden. Das bedeutet, dass man für diese Bewegungen Dynamikreserven (Geschwindigkeit, Beschleunigung) bereitstellen muss, die dann bei der "normalen" Interpolation fehlen, was bei Bearbeitungsgeschwindigkeiten normalerweise unproblematisch sein sollte.
Aus dem gleichen Grund werden auch die Achsgrenzen in Echtzeit überwacht und nicht wie üblich im Vorlauf.

hey.
kannst du bitte mir sagen wie kann ich das Forum ändern.
ja, die Steuerung aus der 840D-Familie .Die "überlagerte Bewegungen"
und "Synchronaktionen"habe schon voher geschaut,trotzdem kannst du bitte vielleich mir sagen wie schreibt man $AA_OFF ,FTOC in Programm.
Ich danke dir im voraus für deine Antwort
TOP    



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