184
SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise 1 Übersicht Bahninterpolation 2 Grundlagen Bahninterpolation 3 Bahnobjekt projektieren 4 Beispielprojekt für die Bahninterpolation 5 Bahninterpolation programmieren/Referenzen 6 Anhang A A

SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

  • Upload
    leliem

  • View
    251

  • Download
    0

Embed Size (px)

Citation preview

Page 1: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

SIMOTION

Motion ControlTO Bahninterpolation

Funktionshandbuch

Gültig ab Version 4.4

01/2015

Vorwort

Grundlegende Sicherheitshinweise 1

Übersicht Bahninterpolation 2Grundlagen Bahninterpolation 3

Bahnobjekt projektieren 4Beispielprojekt für die Bahninterpolation 5Bahninterpolation programmieren/Referenzen 6

Anhang A A

Page 2: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Rechtliche HinweiseWarnhinweiskonzept

Dieses Handbuch enthält Hinweise, die Sie zu Ihrer persönlichen Sicherheit sowie zur Vermeidung von Sachschäden beachten müssen. Die Hinweise zu Ihrer persönlichen Sicherheit sind durch ein Warndreieck hervorgehoben, Hinweise zu alleinigen Sachschäden stehen ohne Warndreieck. Je nach Gefährdungsstufe werden die Warnhinweise in abnehmender Reihenfolge wie folgt dargestellt.

GEFAHRbedeutet, dass Tod oder schwere Körperverletzung eintreten wird, wenn die entsprechenden Vorsichtsmaßnahmen nicht getroffen werden.

WARNUNGbedeutet, dass Tod oder schwere Körperverletzung eintreten kann, wenn die entsprechenden Vorsichtsmaßnahmen nicht getroffen werden.

VORSICHTbedeutet, dass eine leichte Körperverletzung eintreten kann, wenn die entsprechenden Vorsichtsmaßnahmen nicht getroffen werden.

ACHTUNGbedeutet, dass Sachschaden eintreten kann, wenn die entsprechenden Vorsichtsmaßnahmen nicht getroffen werden.Beim Auftreten mehrerer Gefährdungsstufen wird immer der Warnhinweis zur jeweils höchsten Stufe verwendet. Wenn in einem Warnhinweis mit dem Warndreieck vor Personenschäden gewarnt wird, dann kann im selben Warnhinweis zusätzlich eine Warnung vor Sachschäden angefügt sein.

Qualifiziertes PersonalDas zu dieser Dokumentation zugehörige Produkt/System darf nur von für die jeweilige Aufgabenstellung qualifiziertem Personal gehandhabt werden unter Beachtung der für die jeweilige Aufgabenstellung zugehörigen Dokumentation, insbesondere der darin enthaltenen Sicherheits- und Warnhinweise. Qualifiziertes Personal ist auf Grund seiner Ausbildung und Erfahrung befähigt, im Umgang mit diesen Produkten/Systemen Risiken zu erkennen und mögliche Gefährdungen zu vermeiden.

Bestimmungsgemäßer Gebrauch von Siemens-ProduktenBeachten Sie Folgendes:

WARNUNGSiemens-Produkte dürfen nur für die im Katalog und in der zugehörigen technischen Dokumentation vorgesehenen Einsatzfälle verwendet werden. Falls Fremdprodukte und -komponenten zum Einsatz kommen, müssen diese von Siemens empfohlen bzw. zugelassen sein. Der einwandfreie und sichere Betrieb der Produkte setzt sachgemäßen Transport, sachgemäße Lagerung, Aufstellung, Montage, Installation, Inbetriebnahme, Bedienung und Instandhaltung voraus. Die zulässigen Umgebungsbedingungen müssen eingehalten werden. Hinweise in den zugehörigen Dokumentationen müssen beachtet werden.

MarkenAlle mit dem Schutzrechtsvermerk ® gekennzeichneten Bezeichnungen sind eingetragene Marken der Siemens AG. Die übrigen Bezeichnungen in dieser Schrift können Marken sein, deren Benutzung durch Dritte für deren Zwecke die Rechte der Inhaber verletzen kann.

HaftungsausschlussWir haben den Inhalt der Druckschrift auf Übereinstimmung mit der beschriebenen Hard- und Software geprüft. Dennoch können Abweichungen nicht ausgeschlossen werden, so dass wir für die vollständige Übereinstimmung keine Gewähr übernehmen. Die Angaben in dieser Druckschrift werden regelmäßig überprüft, notwendige Korrekturen sind in den nachfolgenden Auflagen enthalten.

Siemens AGDivision Digital FactoryPostfach 48 4890026 NÜRNBERGDEUTSCHLAND

Ⓟ 01/2015 Änderungen vorbehalten

Copyright © Siemens AG 2015.Alle Rechte vorbehalten

Page 3: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Vorwort

InhaltDas vorliegende Dokument ist Bestandteil des Dokumentationspaketes System- und Funktionsbeschreibungen.

GültigkeitsbereichDieses Handbuch ist gültig für SIMOTION SCOUT in Verbindung mit dem Technologiepaket SIMOTION Cam, Path oder Cam_ext für die Produktstufe V4.4.

Informationsblöcke des HandbuchesNachstehende Informationsblöcke beschreiben den Zweck und den Nutzen des Handbuches.

Informationsblöcke des HandbuchesNachstehende Informationsblöcke beschreiben den Zweck und den Nutzen des Handbuchs.

● Übersicht BahninterpolationDieses Kapitel erhält eine Übersicht der Funktionalität des TOs und eine Definition der Begriffe.

● Grundlagen Bahninterpolation In diesem Kapitel werden die grundlegenden Einstellmöglichkeiten und Funktionen des Technologieobjektes Bahninterpolation erläutert.

● Bahnobjekt projektieren In diesem Kapitel wird das Vorgehen bei der Projektierung anhand verschiedener Aufgabenstellungen erläutert.

● Beispielprojekt für die BahninterpolationIn diesem Kapitel wird ein Beispielprojekt für die Bahninterpolation umgesetzt.

● Bahninterpolation programmieren / ReferenzenIn diesem Kapitel werden Befehle und Funktionen detaillierter erläutert.

● Anhang AIn diesem Kapitel wird die spezifische Kinematik mit TrafoID 1001 erläutert.

● IndexStichwortverzeichnis zum Finden der Informationen.

SIMOTION DokumentationEinen Überblick zur SIMOTION Dokumentation erhalten Sie im Dokument SIMOTION Dokumentations-Übersicht.

TO BahninterpolationFunktionshandbuch, 01/2015 3

Page 4: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Diese Dokumentation ist als elektronische Dokumentation im Lieferumfang von SIMOTION SCOUT enthalten und besteht aus 10 Dokumentationspaketen.

Zur SIMOTION Produktstufe V4.4 stehen folgende Dokumentationspakete zur Verfügung:

● SIMOTION Engineering System Handhabung

● SIMOTION System- und Funktionsbeschreibungen

● SIMOTION Service und Diagnose

● SIMOTION IT

● SIMOTION Programmieren

● SIMOTION Programmieren - Referenzen

● SIMOTION C

● SIMOTION P

● SIMOTION D

● SIMOTION Ergänzende Dokumentation

Hotline und Internetadressen

Weiterführende InformationenUnter folgendem Link finden Sie Informationen zu den Themen:

● Dokumentation bestellen / Druckschriftenübersicht

● Weiterführende Links für den Download von Dokumenten

● Dokumentation online nutzen (Handbücher/Informationen finden und durchsuchen)

http://www.siemens.com/motioncontrol/docu

My Documentation ManagerUnter folgendem Link finden Sie Informationen, wie Sie Dokumentation auf Basis der Siemens Inhalte individuell zusammenstellen und für die eigene Maschinendokumentation anpassen:

http://www.siemens.com/mdm

TrainingUnter folgendem Link finden Sie Informationen zu SITRAIN - dem Training von Siemens für Produkte, Systeme und Lösungen der Automatisierungstechnik:

http://www.siemens.com/sitrain

FAQsFrequently Asked Questions finden Sie in den SIMOTION Utilities & Applications, die im Lieferumfang von SIMOTION SCOUT enthalten sind, und in den Service&Support-Seiten unter Produkt Support:

Vorwort

TO Bahninterpolation4 Funktionshandbuch, 01/2015

Page 5: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

http://support.automation.siemens.com

Technical SupportLandesspezifische Telefonnummern für technische Beratung finden Sie im Internet unter Kontakt:

http://www.siemens.com/automation/service&support

Vorwort

TO BahninterpolationFunktionshandbuch, 01/2015 5

Page 6: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Vorwort

TO Bahninterpolation6 Funktionshandbuch, 01/2015

Page 7: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Inhaltsverzeichnis

Vorwort.........................................................................................................................................................3

1 Grundlegende Sicherheitshinweise............................................................................................................11

1.1 Allgemeine Sicherheitshinweise.............................................................................................11

1.2 Industrial Security...................................................................................................................12

2 Übersicht Bahninterpolation.......................................................................................................................13

2.1 Funktionsübersicht.................................................................................................................13

2.2 Begriffe...................................................................................................................................15

3 Grundlagen Bahninterpolation....................................................................................................................19

3.1 Bahninterpolation...................................................................................................................19

3.2 Koordinatensystem................................................................................................................21

3.3 Modulo-Eigenschaften...........................................................................................................22

3.4 Einheiten................................................................................................................................23

3.5 Bahninterpolationsarten.........................................................................................................243.5.1 Bahninterpolationsarten.........................................................................................................243.5.2 Aufbau der Befehle zur Bahninterpolation.............................................................................253.5.3 Linearbahnen.........................................................................................................................263.5.4 Kreisbahnen...........................................................................................................................273.5.4.1 Kreisbahnen...........................................................................................................................273.5.4.2 Kreisbahn in einer Hauptebene mit Radius, Endpunkt und Orientierung...............................283.5.4.3 Kreisbahn über Mittelpunkt und Winkel..................................................................................293.5.4.4 Kreisbahn über Zwischenpunkt und Endpunkt.......................................................................313.5.5 Polynombahnen.....................................................................................................................323.5.5.1 Polynombahnen.....................................................................................................................323.5.5.2 Polynombahn - direkte Vorgabe der Polynomkoeffizienten...................................................343.5.5.3 Polynombahnen - explizite Vorgabe der Startpunktdaten......................................................343.5.5.4 Polynombahnen - stetig anfügen...........................................................................................36

3.6 Bahndynamik.........................................................................................................................383.6.1 Bahndynamik.........................................................................................................................383.6.2 Vorgabe der Bahndynamik.....................................................................................................383.6.3 Begrenzungen der Bahndynamik...........................................................................................40

3.7 Bahnbewegung stoppen und fortsetzen.................................................................................43

3.8 Bahnverhalten am Bewegungsende......................................................................................443.8.1 Bahnverhalten am Bewegungsende......................................................................................443.8.2 Stoppen am Bewegungsende................................................................................................453.8.3 Überschleifen mit Dynamikadaption.......................................................................................453.8.4 Überschleifen ohne Dynamikadaption...................................................................................463.8.5 Überschleifen und Ablösen mit Einfügen von Zwischensegmenten......................................47

3.9 Anzeige und Überwachungen an der Achse..........................................................................52

TO BahninterpolationFunktionshandbuch, 01/2015 7

Page 8: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.10 Berücksichtigung der achsspezifischen Verfahrbereichsgrenzen..........................................53

3.11 Verhalten der Bahnbewegung bei Fehler an einer beteiligten Bahnachse oder Positionierachse.....................................................................................................................54

3.12 Funktionalität der bahnsynchronen Bewegung......................................................................553.12.1 Funktionalität der bahnsynchronen Bewegung......................................................................553.12.2 Spezifikation der bahnsynchronen Bewegung.......................................................................553.12.3 Dynamik der bahnsychronen Bewegung...............................................................................563.12.4 Bahnüberschleifen mit einer bahnsynchronen Bewegung.....................................................563.12.5 Ausgabe des Bahnweges an die Positionierachse................................................................573.12.6 Ausgabe der kartesischen Koordinaten über MotionOut-Interface........................................57

3.13 Kinematikanpassung..............................................................................................................583.13.1 Kinematikanpassung..............................................................................................................583.13.2 Kinematikanpassung – Grundlagen.......................................................................................583.13.2.1 Umfang der Transformationsfunktionalität.............................................................................583.13.2.2 Bezugspunkte........................................................................................................................583.13.2.3 Systemvariablen für Bahninterpolation und Transformation am Bahnobjekt.........................593.13.2.4 Transformation der Dynamikwerte.........................................................................................613.13.2.5 Unterscheidung der Gelenkstellungsräume...........................................................................613.13.2.6 Auskunftsbefehle zur Kinematiktransformation......................................................................613.13.2.7 Achsspezifische Nullpunktverschiebung in der Transformation.............................................623.13.2.8 Verschiebung des Kinematik-Nullpunkts zum kartesischen Nullpunkt...................................633.13.3 Unterstützte Kinematiken.......................................................................................................643.13.3.1 Unterstützte Kinematiken und deren Zuordnung...................................................................643.13.3.2 Konfigurationsmasken............................................................................................................653.13.3.3 Kartesische 2D/3D-Portale.....................................................................................................683.13.3.4 Rollen-Picker 2D....................................................................................................................693.13.3.5 Rollen-Picker 3D....................................................................................................................713.13.3.6 Delta-Picker 2D......................................................................................................................723.13.3.7 Delta-Picker 3D......................................................................................................................753.13.3.8 SCARA-Kinematik..................................................................................................................783.13.3.9 Gelenkarm-2D-Kinematik.......................................................................................................823.13.3.10 Gelenkarm-3D-Kinematik.......................................................................................................833.13.3.11 Schwenkarm-2D-Kinematik....................................................................................................863.13.3.12 Zylindrischer Roboter 3D.......................................................................................................883.13.3.13 2D/3D Anwenderfunktion.......................................................................................................903.13.3.14 Verwendung von virtuellen Achsen........................................................................................963.13.3.15 Spezifische Kinematiken........................................................................................................97

3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt.........................................983.14.1 Objektkoordinatensystem (OCS) am Bahnobjekt..................................................................983.14.2 Bewegungsfolge – Grundlagen..............................................................................................993.14.2.1 OCS-Bezugslage definieren...................................................................................................993.14.2.2 OCS einem Bewegungsfolgebezugswert zuordnen.............................................................1013.14.2.3 Verschiebung der Position des mitgeführten OCS definieren .............................................1013.14.2.4 Bewegung am Bahnobjekt auf das mitgeführte OCS synchronisieren................................1033.14.2.5 Bahnbewegungen im mitgeführten OCS durchführen.........................................................1053.14.2.6 Das Mitfahren des Kinematikendpunktes an einem mitgeführten OCS beenden

('Absynchronisieren')............................................................................................................1053.14.2.7 Anhalten im OCS.................................................................................................................1063.14.3 Bewegungsfolge – Beispielanwendung................................................................................1063.14.3.1 Beispielanwendung eines OCS............................................................................................106

Inhaltsverzeichnis

TO Bahninterpolation8 Funktionshandbuch, 01/2015

Page 9: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.14.3.2 Bezugslage des OCS definieren..........................................................................................1063.14.3.3 Bewegungsfolgebezugswert des OCS festlegen.................................................................1073.14.3.4 Position des OCS in Bezug zum Bewegungsfolgebezugswert definieren...........................1083.14.3.5 Bewegung am Bahnobjekt auf ein mitgeführtes OCS synchronisieren................................1083.14.3.6 Bahnbewegungen im mitgeführten OCS durchführen.........................................................109

3.15 Verschaltung, Verschaltungsregeln.....................................................................................111

3.16 Simulationsbetrieb................................................................................................................112

4 Bahnobjekt projektieren............................................................................................................................113

4.1 Technologiepaket Bahninterpolation auswählen..................................................................113

4.2 Achsen mit Bahninterpolation anlegen.................................................................................114

4.3 Bahnobjekt anlegen.............................................................................................................115

4.4 Darstellung im Projektnavigator...........................................................................................116

4.5 Bahnobjekt parametrieren/vorbelegen.................................................................................117

4.6 Bahnobjekt konfigurieren.....................................................................................................121

4.7 Begrenzungen festlegen......................................................................................................124

4.8 Bahnobjekt verschalten........................................................................................................125

4.9 Bahnsteuertafel....................................................................................................................127

4.10 Kinematikanpassung in der Expertenliste konfigurieren......................................................128

4.11 Bahnüberwachungen konfigurieren.....................................................................................129

4.12 Bahnobjekt einmessen.........................................................................................................130

4.13 Bahninterpolation - Kontextmenü.........................................................................................132

5 Beispielprojekt für die Bahninterpolation..................................................................................................133

5.1 Übersicht des Beispiels........................................................................................................133

5.2 Technologiepaket auswählen...............................................................................................135

5.3 Achsen anlegen...................................................................................................................136

5.4 Bahnobjekt anlegen.............................................................................................................138

5.5 Kinematik definieren.............................................................................................................139

5.6 Bahnobjekt verschalten........................................................................................................140

5.7 Vorbelegungen des Bahnobjekts setzen..............................................................................141

5.8 Bahninterpolation in MCC programmieren...........................................................................1435.8.1 Fahrbefehle in MCC programmieren....................................................................................1435.8.2 Programm anlegen...............................................................................................................1445.8.3 Verfahrprogramm programmieren........................................................................................1475.8.3.1 Verfahrprogramm programmieren........................................................................................1475.8.3.2 While-Schleife anlegen........................................................................................................1485.8.3.3 Linearbahn A-B programmieren...........................................................................................1485.8.3.4 Polynombahn B-C programmieren.......................................................................................1505.8.3.5 Linearbahn C-D programmieren..........................................................................................1535.8.3.6 Polynombahn D-E programmieren.......................................................................................1545.8.3.7 Linearbahn E-F programmieren...........................................................................................156

Inhaltsverzeichnis

TO BahninterpolationFunktionshandbuch, 01/2015 9

Page 10: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.3.8 Rückfahrt F-A programmieren..............................................................................................1565.8.4 Achs-Freigaben schalten und Achsen referenzieren...........................................................1585.8.5 MCC-Diagramm...................................................................................................................1595.8.6 MCC-Chart in Ablaufsystem zuordnen.................................................................................1595.8.7 Bewegung mit Trace überprüfen..........................................................................................161

5.9 Bahnsynchrone Achse anlegen...........................................................................................162

6 Bahninterpolation programmieren/Referenzen.........................................................................................167

6.1 Programmierung..................................................................................................................1676.1.1 Programmierung: Übersicht.................................................................................................1676.1.2 Befehlsübersicht...................................................................................................................1676.1.2.1 Auskunft und Konvertierung.................................................................................................1676.1.2.2 Umrechnungsbefehle...........................................................................................................1686.1.2.3 Befehlsverfolgung................................................................................................................1686.1.2.4 Bewegung............................................................................................................................1686.1.2.5 Objekt- und Alarmhandling...................................................................................................1696.1.2.6 Objektkoordinaten................................................................................................................1706.1.3 Befehlsverarbeitung.............................................................................................................1706.1.3.1 Befehlspuffer........................................................................................................................1706.1.3.2 Ablöseverhalten...................................................................................................................1726.1.4 Wechselwirkungen des Bahnobjekts mit der Achse............................................................1726.1.4.1 Ablöseverhalten...................................................................................................................1726.1.4.2 Reihenfolge der Wirksamkeit...............................................................................................1736.1.4.3 Wechselwirkung mit der Achse............................................................................................1736.1.4.4 Wechselwirkung mit anderen Bahnbewegungen.................................................................173

6.2 Lokale Alarmreaktion...........................................................................................................174

A Anhang A..................................................................................................................................................175

A.1 Spezifische Kinematik mit TrafoID 1001..............................................................................175

Index.........................................................................................................................................................181

Inhaltsverzeichnis

TO Bahninterpolation10 Funktionshandbuch, 01/2015

Page 11: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Grundlegende Sicherheitshinweise 11.1 Allgemeine Sicherheitshinweise

WARNUNG

Lebensgefahr durch Nichtbeachtung von Sicherheitshinweisen und Restrisiken

Durch Nichtbeachtung der Sicherheitshinweise und Restrisiken in der zugehörigen Hardware-Dokumentation können Unfälle mit schweren Verletzungen oder Tod auftreten.● Halten Sie die Sicherheitshinweise der Hardware-Dokumentation ein.● Berücksichtigen Sie bei der Risikobeurteilung die Restrisiken.

WARNUNG

Lebensgefahr durch Fehlfunktionen der Maschine infolge fehlerhafter oder veränderter Parametrierung

Durch fehlerhafte oder veränderte Parametrierung können Fehlfunktionen an Maschinen auftreten, die zu Körperverletzungen oder Tod führen können.● Schützen Sie die Parametrierungen vor unbefugtem Zugriff.● Beherrschen Sie mögliche Fehlfunktionen durch geeignete Maßnahmen (z. B. NOT-HALT

oder NOT-AUS).

TO BahninterpolationFunktionshandbuch, 01/2015 11

Page 12: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

1.2 Industrial Security

HinweisIndustrial Security

Siemens bietet Produkte und Lösungen mit Industrial Security-Funktionen an, die den sicheren Betrieb von Anlagen, Lösungen, Maschinen, Geräten und/oder Netzwerken unterstützen. Sie sind wichtige Komponenten in einem ganzheitlichen Industrial Security-Konzept. Die Produkte und Lösungen von Siemens werden unter diesem Gesichtspunkt ständig weiterentwickelt. Siemens empfiehlt, sich unbedingt regelmäßig über Produkt-Updates zu informieren.

Für den sicheren Betrieb von Produkten und Lösungen von Siemens ist es erforderlich, geeignete Schutzmaßnahmen (z. B. Zellenschutzkonzept) zu ergreifen und jede Komponente in ein ganzheitliches Industrial Security-Konzept zu integrieren, das dem aktuellen Stand der Technik entspricht. Dabei sind auch eingesetzte Produkte von anderen Herstellern zu berücksichtigen. Weitergehende Informationen über Industrial Security finden Sie unter http://www.siemens.com/industrialsecurity.

Um stets über Produkt-Updates informiert zu sein, melden Sie sich für unseren produktspezifischen Newsletter an. Weitere Informationen hierzu finden Sie unter http://support.automation.siemens.com

WARNUNG

Gefahr durch unsichere Betriebszustände wegen Manipulation der Software

Manipulationen der Software (z. B. Viren, Trojaner, Malware, Würmer) können unsichere Betriebszustände in Ihrer Anlage verursachen, die zu Tod, schwerer Körperverletzung und zu Sachschäden führen können.● Halten Sie die Software aktuell.

Informationen und Newsletter hierzu finden Sie unter: http://support.automation.siemens.com

● Integrieren Sie die Automatisierungs- und Antriebskomponenten in ein ganzheitliches Industrial Security-Konzept der Anlage oder Maschine nach dem aktuellen Stand der Technik.Weitergehende Informationen finden Sie unter: http://www.siemens.com/industrialsecurity

● Berücksichtigen Sie bei Ihrem ganzheitlichen Industrial Security-Konzept alle eingesetzten Produkte.

Grundlegende Sicherheitshinweise1.2 Industrial Security

TO Bahninterpolation12 Funktionshandbuch, 01/2015

Page 13: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Übersicht Bahninterpolation 22.1 Funktionsübersicht

SIMOTION stellt ab Version V4.1 die Funktionalität zur Bahninterpolation bereit. Dabei können bis zu 3 Bahnachsen entlang Bahnen verfahren werden. Zusätzlich kann eine Positionierachse synchron zur Bahn mitgeführt werden.

Die Bahnen können aus Segmenten mit Linear-, Kreis- und Polynom-Interpolation in 2D und 3D zusammengesetzt werden.

Die Technologie Bahninterpolation wird über das Bahnobjekt bereitgestellt, das eine eigenständige Funktionalität darstellt.

Das TO Bahnobjekt wird mit Bahnachsen und gegebenenfalls einer Positionierachse verschaltet.

Die Dynamikparameter werden an der Bahnbewegung vorgegeben.

Die Bahnbewegungen einzelner Bahnbefehle lassen sich durch Überschleifen zu einer Gesamtbahn ohne Zwischenstopp aneinanderreihen.

Die Anpassung der Maschinenkinematiken an die kartesischen Achsen des Bahnkoordinatensystems erfolgt über die Kinematiktransformation.

Ab V4.1.2 ist die Funktionalität zur Synchronisierung der Bahnbewegungen mit einem extern vorgebbaren Positionswert, z.B. mit der Bewegung eines Conveyors, verfügbar. Damit wird Handling am bewegten Band vom System unterstützt.

Die Technologie Bahninterpolation enthält Transformationen für die folgenden orthogonalen Kinematiken:

● kartesische Linearachsen

● SCARA

● Rollen-Picker 2D

● Rollen-Picker 3D

● Delta-Picker 2D

● Delta-Picker 3D

● Gelenkarm 2D

● Gelenkarm 3D

● Schwenkarm 2D

● Zylindrischer Roboter 3D

Zusätzlich ist es ab V4.4 möglich eigene Transformationen mit Hilfe der 2D- oder 3D-Anwenderfunktion zu erstellen.

Während einer Bahnbewegung kann eine Positionierachse bahnsynchron mitgeführt werden. Diese Achse kann wahlweise eine programmierte achsspezifische Zielposition synchron anfahren oder eine Bewegung entsprechend der Bahnlänge ausführen, so dass bahnlängenabhängige Nocken und Messtaster realisierbar sind.

TO BahninterpolationFunktionshandbuch, 01/2015 13

Page 14: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Die Bahninterpolationsfunktionen werden z. B. bei Anwendungen wie der Zuführung bzw. Entnahme von Materialien in bzw. aus einer Maschine benötigt.

Die Anwendung der Befehle für die Einzelbahnsegmente setzt dabei eine Gesamtbahnplanung im Anwenderprogramm, bzw. in der Applikation, voraus.

Die CNC-Programmierung nach DIN 66025 wird von SIMOTION nicht unterstützt.

Übersicht Bahninterpolation2.1 Funktionsübersicht

TO Bahninterpolation14 Funktionshandbuch, 01/2015

Page 15: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

2.2 BegriffeAchskoordinatenKoordinaten der beteiligten Bahnachsen oder der Positionierachse mit bahnsynchroner Bewegung

Bahnachs-InterfaceInterfaces für den bidirektionalen Datenaustausch zwischen Bahnobjekt und verschalteten Bahnachsen.

Bahnachse Achse, die über ein Bahnobjekt gemeinsam mit anderen Bahnachsen eine Bahnbewegung ausführen kann.

BahnbewegungBewegung infolge der Interpolation eines Bahnverfahrbefehls; wird ausgegeben an Bahnachsen

BahninterpolationVerfahren einer Bahn mit einer parametrierbaren Dynamik.

Die Bahninterpolation generiert das Verfahrprofil für die Bahn, berechnet im IPO-Takt die Bahnstützpunkte und leitet daraus über die Kinematiktransformation die Achssollwerte zu den IPO-Taktzeitpunkten ab.

BahninterpolationsverbundMehrere durch ein Bahnobjekt bzw. eine Interpolation verbundene Bahn- und Positionierachsen

BahnobjektDas Bahnobjekt stellt die Funktionalität für die Bahninterpolation und weitere mit der Bahninterpolation verbundene Aufgaben bereit. Es beinhaltet auch die im System implementierten Kinematiktransformationen.

BahnsteuertafelDie Bahnsteuertafel ermöglicht die Steuerung und Beobachtung von Bahnobjekten ohne Anwenderprogramm. Sie dient in erster Linie der Inbetriebnahme von Kinematiktransformationen.

BahnsteuerungAbfahren einer Bahn mit vorgebbarer Geschwindigkeit.

Dabei kann ein geschwindigkeitsabhängiges Verschleifen der Segmentübergänge durch das Einfügen von Übergangssegmenten erfolgen.

Basiskoordinatensystem (BCS)Koordinatensystem der Bahninterpolation. Es wird ein rechtsdrehendes, rechtwinkliges Koordinatensystem nach DIN 66217 verwendet.

Übersicht Bahninterpolation2.2 Begriffe

TO BahninterpolationFunktionshandbuch, 01/2015 15

Page 16: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

BewegungsfolgeErmöglicht das Mitfahren des Kinematikendpunktes mit einem mitgeführten OCS, und damit z. B. das Mitfahren mit dem Istwert eines Conveyors. So kann z. B. ein Produkt von einem laufenden Band aufgenommen oder dort abgelegt werden.

Positionsangaben in den Bewegungsbefehlen können ab SIMOTION V4.1.2 wahlweise auf das Basiskoordinatensystem oder auf ein Objektkoordinatensystem (OCS) bezogen werden.

Bewegungsfolgebezugswert (trackingInPosition)Der Wert, der am TrackingIn-Interface des Bahnobjektes von einem anderen TO bereitgestellt wird. Dies kann z. B. der Istwert eines externen Gebers sein.

Bewegungsfolgewert (trackingPosition) Die aktuelle Position eines mitgeführten OCS in Bezug auf die OCS-Bezugslage

Frametransformation eine Frametransformation beschreibt die Lage eines Koordinatensystems zu einem anderen Koordinatensystem, es definiert z. B. die OCS-Bezugslage in Bezug auf das Basiskoordinatensystem des Bahnobjekts. Die Frametransformation besteht aus Verschiebungen (Translation) entlang der X-, Y-, und Z-Achsen und Drehungen (Rotation) um die einzelnen Achsen.

Bei der Transformation werden erst die Verschiebungen durchgeführt und danach die Drehungen in folgender Reihenfolge:

● Roll um die X-Achse

● Pitch um die (bereits gedrehte) Y-Achse

● Yaw um die (bereits zweimal gedrehte) Z-Achse

Hauptebene X-Y-, Y-Z- oder Z-X-Ebene oder eine dazu parallele Ebene. Die 3. Koordinate wird nicht ausgewertet.

Interface für bahnsynchrone BewegungInterface für den bidirektionalen Datenaustausch zwischen Bahnobjekt und einer verschalteten Positionierachse für bahnsynchrone Bewegung.

Kartesische AchsenAchsen X, Y, Z des Bahnobjektes

Kinematik Der Begriff Kinematik im Zusammenhang mit Robotern und Handlingsgeräten in Motion Control Systemen bedeutet die Abstraktion einer Mechanik auf die für die Bewegung und Bewegungsausführung relevanten Größen, das sind die bewegungsfähigen Elemente (Gelenke) und deren geometrischen Lagen zueinander (Arme).

Kinematiktransformation, Kinematikanpassung Umrechnung von Vorgaben in kartesischen Koordinaten in Vorgaben für die einzelnen Bahnachsen und umgekehrt

Übersicht Bahninterpolation2.2 Begriffe

TO Bahninterpolation16 Funktionshandbuch, 01/2015

Page 17: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Kreisbahn Bahn in 2D oder 3D, die einen Kreis oder Kreisbogen beschreibt

Linearbahn Bahn in 2D oder 3D, die eine Gerade beschreibt

mitgeführtes OCS Ein Objektkoordinatensystem (OCS), das synchron zum trackingIn-Interface mitgeführt wird.

Objektkoordinatensystem (OCS) Ab SIMOTION V4.1.2 sind zusätzlich zum Basiskoordinatensystem (BCS) Objektkoordinatensysteme (OCS) mit dem Bahnobjekt verfügbar. Bahnbewegungen können wahlweise im BCS oder im OCS vorgegeben werden. Die Objektkoordinatensysteme sind in ihrer Bezugslage über Frametransformationen zum BCS definiert. Sie können mit einem am TrackingIn-Interface vorgebbaren Bewegungswert in x-Richtung des OCS mitgeführt werden.

OCS-Bezugslage Lage des OCS bei Bewegungsfolgewert gleich Null. Die OCS-Bezugslage zum BCS wird über eine Frametransformation definiert.

PolynombahnBahn in 2D oder 3D, die ein Polynomsegment beschreibt

Synchronbewegung, Bahnsynchronbewegung, bahnsynchrone BewegungSynchrones Mitfahren einer Achse an einer Bahnbewegung; wird ausgegeben an einer Positionierachse

trackingIn-InterfaceDas eingangsseitige Verschaltungsinterface trackingIn des Bahnobjekts kann mit einem anderen TO verschaltet werden, welches ausgangsseitig ein Interface mit Bewegungsinformation bereitstellt. Dies kann z. B. der Bewegungssollwert oder -istwert einer Achse oder der Istwert eines Externen Gebers sein.

Übersicht Bahninterpolation2.2 Begriffe

TO BahninterpolationFunktionshandbuch, 01/2015 17

Page 18: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Übersicht Bahninterpolation2.2 Begriffe

TO Bahninterpolation18 Funktionshandbuch, 01/2015

Page 19: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Grundlagen Bahninterpolation 33.1 Bahninterpolation

Die Technologie Bahninterpolation stellt die Funktionalität zur Interpolation von Linear-, Kreis- und Polynombahnen in 2D und 3D bereit.

Bild 3-1 Einordnung und Grobprinzip des Bahninterpolators

An der Bahninterpolation beteiligte Objekte

Bild 3-2 Objekte bei der Bahninterpolation

Die Technologie Bahninterpolation wird über das Technologieobjekt Bahnobjekt bereitgestellt.

TO BahninterpolationFunktionshandbuch, 01/2015 19

Page 20: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Das TO Bahnobjekt wird mit 2 oder 3 Bahnachsen verschaltet.

Zusätzlich kann das TO Bahnobjekt mit einer Positionierachse für eine bahnsynchrone Bewegung und mit Positionierachsen zur Kopplung an eine Koordinate sowie mit einer Kurvenscheibe verschaltet werden.

Über das TrackingIn-Interface kann ein Technologieobjekt verschaltet werden, welches Bewegungsinformationen mit einer Position (den Bewegungsfolgewert) bereitstellt, wie z.B.:

● Externer Geber

● Positionierachse

Einordnung der Bahnachse Alle Einzelachsfunktionen sind an der Bahnachse ohne Einschränkungen ausführbar.

Bild 3-3 Einordnung der Bahnachse

Die Funktionalität der Bahninterpolation ist nicht von der physikalischen Achsart abhängig. Die Bahninterpolation ist anwendbar auf elektrische, hydraulische und Schrittmotor-Achsen (reale Achsen) sowie auf virtuelle Achsen.

Einordnung der Bahninterpolation in Technologiepaketen

Bild 3-4 Einordnung der Bahninterpolation in Technologiepaketen

Die Bahnfunktionalität wird im Technologiepaket PATH zur Verfügung gestellt, welches die Funktionalitäten des Technologiepakets CAM enthält. Die Erweiterungen umfassen das TO Bahninterpolation und das TO Bahnachse.

Das Technologiepaket CAM_EXT enthält damit auch diese Objekttypen.

Weitere Informationen siehe Motion Control Basisfunktionen, "Verfügbare Technologieobjekte".

Grundlagen Bahninterpolation3.1 Bahninterpolation

TO Bahninterpolation20 Funktionshandbuch, 01/2015

Page 21: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.2 KoordinatensystemDie Funktionen zur Bahninterpolation setzen ein kartesisches Koordinatensystem voraus. Es wird ein rechtsdrehendes, rechtwinkliges Koordinatensystem nach DIN 66217 verwendet.

Unabhängig von der realen Kinematik programmiert der Anwender in diesem Rechtssystem.

z

y

x

Bild 3-5 Kartesisches Koordinatensystem, Rechtssystem

Hauptebenen Zweidimensionale Bewegungen (2D) können vereinfacht direkt in einer der drei Hauptebenen X-Y, Y-Z oder Z-X erfolgen. Die dritte Koordinate bleibt dabei konstant und ist daher bei der Programmierung nicht erforderlich.

Bild 3-6 Hauptebenen in 3D

Grundlagen Bahninterpolation3.2 Koordinatensystem

TO BahninterpolationFunktionshandbuch, 01/2015 21

Page 22: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.3 Modulo-EigenschaftenSowohl die Bahnachsen als auch die Positionierachse können als Modulo-Achsen eingestellt werden. Jedoch darf im Bahn-Verfahrbereich kein Modulobereichswechsel der Bahnachse stattfinden. Die Kinematiktransformation berücksichtigt keine Modulo-Bereichswechsel.

Für den Verfahrbereich am Bahnobjekt wird damit nur ein Modulo-Bereich der Bahnachse verwendet. Mit Aktivieren der Bahninterpolation wird der Modulo-Bereich für die Bahnbewegung festgelegt.

Das bedeutet, der Moduloübergang der Achse darf sich nicht im Verfahrbereich der Bahnbewegungen befinden. Der Modulo-Bereich und der Modulo-Startpunkt, wie auch die Lage des Modulo-Bereiches zum beabsichtigten Bahnfahrbereich sind entsprechend einzustellen, z. B. über die Einstellungen zu Referenzpunkt und Referenzpunktverschiebung beim Referenzieren.

Grundlagen Bahninterpolation3.3 Modulo-Eigenschaften

TO Bahninterpolation22 Funktionshandbuch, 01/2015

Page 23: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.4 EinheitenAlle achsbezogenen Werte werden in Größe und Einheit der entsprechend zugeordneten (verschalteten) Achsen angezeigt.

Die kartesischen Koordinaten werden in einer Längeneinheit angezeigt. Die Voreinstellung für kartesische Werte ist [mm].

Rotatorische Größen, wie z. B. ein Kreiswinkel, werden standardmäßig in [°] angegeben und grad-bezogen berechnet.

Die Transformation rechnet direkt mit den numerischen Werten. Bei den vom System bereit gestellten Transformationen erfolgt keine Einheitenumrechnung. Für die gleiche Bezugsgröße, z. B. Längenangabe, sind also die gleichen Einheiten einzustellen.

Hinweis

Verwenden Sie die gleichen Einheiten für alle am Bahnobjekt beteiligen Objekte, die die gleichen Bezugsgrößen haben (z. B. Linearachsen in mm, rotatorische Achsen in °). Vermeiden Sie z.B. die Vermischung von metrischen und nicht metrischen Einheiten bei den beteiligten Achsen.

Grundlagen Bahninterpolation3.4 Einheiten

TO BahninterpolationFunktionshandbuch, 01/2015 23

Page 24: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.5 Bahninterpolationsarten

3.5.1 Bahninterpolationsarten

Bild 3-7 Beispiele für Linearbahn in 3D, Kreisbahn in 3D, Polynombahn in 3D

Folgende Interpolationsmodi stehen am Bahnobjekt zur Verfügung:

● Linearbahnen (Seite 26)

– 2D in einer Hauptebene

– 3D

● Kreisbahnen (Seite 27)

– 2D in einer Hauptebene mit Radius, Endpunkt und Orientierung

– 2D in einer Hauptebene mit Mittelpunkt und Winkel

– 2D mit Zwischen- und Endpunkt

– 3D mit Zwischen- und Endpunkt

● Polynombahnen (Seite 32)

– 2D in einer Hauptebene mit expliziter Vorgabe der geometrischen Ableitungen im Startpunkt oder geometrisch stetiger Anbindung

– 3D mit expliziter Vorgabe der geometrischen Ableitungen im Startpunkt oder geometrisch stetiger Anbindung

– 2D mit expliziter Vorgabe der Polynomparameter

– 3D mit expliziter Vorgabe der Polynomparameter

Die Hauptebene (2D) oder der 3D-Modus, in der die Bahnbewegung erfolgt, kann mit dem Parameter pathPlane des Interpolationsbefehls vorgegeben werden.

Die senkrecht zur Hauptebene stehende dritte Bahnkoordinate wird bei einer 2D-Bahn nicht verändert.

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO Bahninterpolation24 Funktionshandbuch, 01/2015

Page 25: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.5.2 Aufbau der Befehle zur BahninterpolationFolgende Befehle zur Bahninterpolation stehen zur Verfügung:

● Linearinterpolation: _movePathLinear()● Kreisinterpolation: _movePathCircular()● Polynominterpolation: _movePathPolynomial()Diese Befehle enthalten folgende Parameter:

● Angabe der Objektinstanz in pathObjectType● Angabe der Bahnebene in pathPlane

Über diesen Parameter wird die Bahnebene eingestellt. Die Hauptebene (2D) oder der 3D-Modus, in der die Bahnbewegung erfolgen soll, kann angegeben werden.

● Angabe des Bahnmodus in pathModeÜber diesen Parameter wird eingestellt, ob der Wert für den Zielpunkt absolut angegeben ist, oder relativ zum Startpunkt gewertet wird.

● Angabe des Zielpunktes in x, y, z● Angabe des Überschleifmodus in blendingMode● Angabe des Ablöseverhaltens in mergeMode● Angabe des Befehlsweiterschaltung in nextCommand● Angabe der Befehls-Id in commandId

Spezifische Angaben zur Linearbahn ( _movePathLinear () ) (siehe Linearbahnen (Seite 26))

● Keine

Spezifische Angaben zur Kreisbahn ( _movePathCircular () )(siehe Kreisbahnen (Seite 27))

● Angabe des Kreistyps in circularType● Angabe der Kreisrichtung in circleDirection● Angabe des Zwischenpunktmodus in ijkMode● Angabe des Zwischenpunktes in i, j, k● Angabe des Winkels des Kreisbogens in arc● Angabe des Kreisradius in radius

Spezifische Angaben zur Polynombahn ( _movePathPolynomial() ) (siehe Polynombahnen (Seite 32))

● Angabe Polynommodus in polynomialMode● Angabe der Vektorkomponenten in vector1x bis vector4z

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO BahninterpolationFunktionshandbuch, 01/2015 25

Page 26: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Angaben zur Dynamik(siehe Bahndynamik (Seite 38))

● Geschwindigkeitsprofil in velocityprofile● Geschwindigkeit in velocity● Beschleunigung in positiveAccel● Verzögerung in negativeAccel● Ruck am Beschleunigungsanfang in positiveAccelStartJerk● Ruck am Beschleunigungsende in positiveAccelEndJerk● Ruck am Verzögerungsanfang in negativeAccelStartJerk● Ruck am Verzögerungsende in negativeAccelEndJerk● Auswahl spezifisches Profil in specificVelocityProfile● Angabe des Geschwindigkeitsprofils durch eine Kurvenscheibe in profileReference● Startpunkt bei spezifischem Profil in profileStartPosition● Endpunkt bei spezifischem Profil in profileEndPosition● Adaption an die Achsdynamiken in dynamicAdaption

Angaben zur bahnsynchronen Bewegung(siehe Funktionalität der bahnsynchronen Bewegung (Seite 55))

● Modus bahnsynchrone Bewegung in wMode● Richtung bahnsynchrone Bewegung in wDirection● Zielpunkt bahnsynchrone Bewegung in w

Angaben zum Objektkoordinatensystem(siehe Objektkoordinatensystem (OCS) am Bahnobjekt (Seite 98))

● Angabe des Koordinatensystems in csTypeÜber diesen Parameter wird eingestellt, ob die Bewegung im Basiskoordinatensystem oder in einem Objektkoordinatensystem durchgeführt werden soll.

● Angabe des Objektkoordinatensystems in csNumberÜber diesen Parameter wird eingestellt, in welchem Objektkoordinatensystem die Bewegung durchgeführt werden soll.

3.5.3 LinearbahnenBei der Interpolation von Linearbahnen wird ein Endpunkt, ausgehend von der aktuellen Position, auf einer Geraden angefahren.

Linearbahnen werden mit dem Befehl _movePathLinear() abgefahren.

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO Bahninterpolation26 Funktionshandbuch, 01/2015

Page 27: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-8 Beispiel von einer Linearbahn

Beispiel Linearbahn in STIn diesem Beispiel liegen die aktuelle Position und der Endpunkt in der X-Y-Ebene. Der Endpunkt ist jeweils 10 Einheiten in positiver Richtung entlang beider Achsen von der aktuellen Position entfernt.myRetDINT := _movePathLinear( pathObject:=pathIPO, pathPlane:=X_Y, pathMode:=relative, x:=10.0, y:=10.0);

3.5.4 Kreisbahnen

3.5.4.1 KreisbahnenBei einer Kreisbahn wird von der aktuellen Position aus ein vorgegebener Endpunkt über einen Kreisbogen angefahren.

Kreisbahnen werden mit dem Befehl _movePathCircular() abgefahren.

Der Kreisbogen kann dabei über verschiedene Modi vorgegeben werden. Die Vorgabe des zu verwendenden Modus erfolgt über den Parameter circularType.

● Kreisinterpolation in einer Hauptebene mit Radius, Endpunkt und Orientierung (Seite 28)

● Kreisinterpolation in einer Hauptebene mit Mittelpunkt und Winkel (Seite 29)

● Kreisinterpolation mit Zwischen- und Endpunkt (Seite 31)

Wenn eine Kreisbahn aufgrund der Geometrie nicht abfahrbar ist, wird der Fehler 50002 ausgegeben.

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO BahninterpolationFunktionshandbuch, 01/2015 27

Page 28: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.5.4.2 Kreisbahn in einer Hauptebene mit Radius, Endpunkt und Orientierung

Bild 3-9 Kreisbahn mit Radius, Endpunkt und Orientierung

Mit der Parametereinstellung circularType:=WITH_RADIUS_AND_ENDPOSITION am Befehl _movePathCircular() erfolgt die Kreisinterpolation in einer Hauptebene mit Angabe von Radius, Endpunkt und Orientierung.

Der Endpunkt wird, ausgehend von der aktuellen Position, auf einer Kreisbahn angefahren. Die aktuelle Position und der Endpunkt liegen dabei in einer Hauptebene. Kreisradius, Orientierung (Fahren in positiver oder negativer Drehrichtung), und das Fahren auf dem großen oder kleinen Kreisbogen werden im Befehl angegeben.

Die Endpunktposition wird in den Parametern x, y, z eingegeben.

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO Bahninterpolation28 Funktionshandbuch, 01/2015

Page 29: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Beispiel Kreisbahn mit Radius, Endpunkt und Orientierung In diesem Beispiel liegen die aktuelle Position und der Endpunkt auf der X-Y-Ebene. Der Endpunkt ist -10 Einheiten entlang der x-Achse und 10 Einheiten entlang der y-Achse von der aktuellen Position entfernt. Der große Kreisbogen wird in positiver Richtung gefahren.

Bild 3-10 Beispiel von Kreisbahn mit Radius, Endpunkt und Orientierung

myRetDINT := _movePathCircular( pathObject:=pathIPO, pathPlane:=X_Y, circularType:=WITH_RADIUS_AND_ENDPOSITION, circleDirection:=LONG_RUN_POSITIVE, pathMode:=RELATIVE, x:=-10.0, y:=10.0, radius:=12.0);

3.5.4.3 Kreisbahn über Mittelpunkt und Winkel

Bild 3-11 Kreisbahn mit Mittelpunkt und Winkel

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO BahninterpolationFunktionshandbuch, 01/2015 29

Page 30: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Mit der Parametereinstellung circularType:= BY_CENTER_AND_ARC am Befehl _movePathCircular() erfolgt die Kreisinterpolation ausgehend von der aktuellen Position in einer Hauptebene mit Angabe von Mittelpunkt und Winkel.

Der Kreismittelpunkt, der zu fahrende Winkel und die Orientierung (Fahren in positiver oder negativer Drehrichtung) werden im Befehl vorgegeben.

Die Kreismittelpunktposition wird in den Parametern i, j, k eingegeben.

Über den Parameter ijkMode wird eingestellt, ob die Kreismittelpunktkoordinaten absolut oder relativ zum Startpunkt eingegeben, oder ob die Einstellung aus dem Parameter pathMode übernommen werden soll.

Beispiel Kreisbahn mit Mittelpunkt und WinkelIn diesem Beispiel ist der Mittelpunkt -10 Einheiten entlang der X-Achse von der aktuellen Position entfernt. Ein Winkel von 90 Grad in positiver Richtung wird gefahren.

Bild 3-12 Beispiel von Kreisbahn mit Mittelpunkt und Winkel

retval := _movePathCircular( pathObject := pathIpo, pathPlane := X_Y, circularType := BY_CENTER_AND_ARC, circleDirection := POSITIVE, ijkMode := RELATIVE, i := -10.0, j := 0.0, arc := 90.0 );

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO Bahninterpolation30 Funktionshandbuch, 01/2015

Page 31: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.5.4.4 Kreisbahn über Zwischenpunkt und Endpunkt

Bild 3-13 Kreisbahn mit Zwischen- und Endpunkt

Mit der Parametereinstellung circularType:=OVER_POSITION_TO_ENDPOSITION am Befehl _movePathCircular() erfolgt die Kreisinterpolation ausgehend von der aktuellen Position über einen Zwischenpunkt zum Endpunkt.

Aktuelle Position, Zwischenpunkt und Endpunkt legen die Ebene für die Kreisbahn fest.

Die Endpunktposition wird in den Parametern x, y, z eingegeben.

Der Zwischenpunkt wird in den Parametern i, j, k eingegeben.

Über den Parameter ijkMode wird eingestellt, ob die Zwischenpunktkoordinaten absolut, relativ zum Startpunkt, oder entsprechend der Einstellung in pathMode des Zielpunktes gewertet werden.

Beispiel Kreisbahn mit Zwischenpunkt und EndpunktIn diesem Beispiel ist der Endpunkt des Kreises 10 Einheiten in X-Richtung von der aktuellen Position entfernt. Der Zwischenpunkt ist jeweils 5 Einheiten in X-, Y- und Z-Richtung von der aktuellen Position entfernt.

Bild 3-14 Beispiel von Kreisbahn mit Zwischen- und Endpunkt

retval := _movepathcircular( pathObject := pathIpo, pathPlane := X_Y_Z,

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO BahninterpolationFunktionshandbuch, 01/2015 31

Page 32: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

circularType := OVER_POSITION_TO_ENDPOSITION, pathMode := RELATIVE, x:=10.0, y:=0.0, z:=0.0, ijkMode := RELATIVE, i:=5.0, j:=5.0, k:=5.0 );

3.5.5 Polynombahnen

3.5.5.1 PolynombahnenMit einem Polynomsegment kann sowohl die Anforderung nach einem geschwindigkeits- und beschleunigungsstetigen Übergang zwischen zwei Geometrieelementen als auch die Forderung nach einer flexibel programmierbaren Kurvenform z. B. aus einem übergeordneten CAD-System erfüllt werden.

Neben dem implizit vorhandenen Startpunkt (PS) des Polynoms wird über Befehlsparameter des Befehls _movePathPolynomial() der Endpunkt (PE) sowie vier dreidimensionale Vektoren zur Bestimmung der Polynomkoeffizienten angegeben.

Die Vektoren werden im Befehl über ihre Komponenten eingegeben, also z. B. der vector1 über die Befehlsparameter vector1x, vector1y, vector1z.

Die Definition des Polynoms kann auf drei verschiedene Arten erfolgen:

● Direkte Vorgabe der Polynomkoeffizienten (Seite 34)

● Explizite Vorgabe der Startpunktdaten (Seite 34)

● Stetig anfügen (Seite 36)

Bei den beiden Arten Explizite Vorgabe der Startpunkdaten und Stetig anfügen werden die Ableitungen im Start- und Endpunkt des Polynoms benötigt. Diese lassen sich mit integrierten Funktionen bestimmen.

d

ds

d

ds

2

2

Bild 3-15 Polynombeschreibung durch Vorgabe der geometrischen Ableitungen

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO Bahninterpolation32 Funktionshandbuch, 01/2015

Page 33: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Stetiger Übergang zwischen zwei Linearbahnen

Bild 3-16 Angabe der Ableitungen beim Polynomübergang zwischen zwei Linearbahnen

Die Ableitungen im Endpunkt der Vorgängergeometrie und im Startpunkt der nachfolgenden Geometrie können mit den Befehlen _getLinearPathGeometricData(), _getCircularPathGeometricData(), _getPolynomialPathGeometricData() berechnet werden.

Wenn eine Polynombahn aufgrund der Geometrie nicht abfahrbar ist, wird der Fehler 50002 ausgegeben.

Einfluß der Start- und EndpunkteBei der Verwendung von Polynomen muss berücksichtigt werden, dass diese stetig an das vorhergehende und nachfolgende Bahnsegment anzubinden sind. Dadurch ergeben sich, je nach Wahl der Start- und Endpunkte, unterschiedliche Polynomverläufe, die von einer Kreisbahn deutlich abweichen können.

Folgende Grafik zeigt den Verlauf einer Polynombahn mit unterschiedlichen Startpunkten:

Bild 3-17 Verhalten einer Polynombahn bei unterschiedlichen Startpunkten

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO BahninterpolationFunktionshandbuch, 01/2015 33

Page 34: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.5.5.2 Polynombahn - direkte Vorgabe der PolynomkoeffizientenBei der Polynomvorgabe über Polynomkoeffizienten (polynomialMode:=SETTING_OF_COEFFICIENTS() ) wird die Polynombahn durch eine Funktion 5. Grades bestimmt:

P = A0 + A1 • p + A2 • p2 + A3 • p3 + A4 • p4 + A5 • p5 , p ∈ [0,1]

● vector1 : A2

● vector2 : A3

● vector3 : A4

● vector4 : A5

● A0 und A1 ergeben sich aus dem Startpunkt und Endpunkt sowie den vorbestimmten Koeffizienten. Für den oben genannten Parameterbereich bedeutet das:

– A0 = Startpunkt

– A1 = Endpunkt - Startpunkt - A2 - A3 - A4 - A5

3.5.5.3 Polynombahnen - explizite Vorgabe der StartpunktdatenBei der Einstellung polynomialMode:=SPECIFIC_START_DATA und der expliziten Vorgabe der Startpunktdaten sind zusätzlich zur Angabe der Ableitungen im Endpunkt des Polynoms auch die beiden geometrischen Ableitungen im Startpunkt vorzugeben.

Die Ableitungen sind dabei wie folgt zu parametrieren:

● vector1: erste geometrische Ableitung/Tangentialvektor im Startpunkt

● vector2: zweite geometrische Ableitung/Krümmungsvektor im Startpunkt

● vector3: erste geometrische Ableitung/Tangentialvektor im Endpunkt

● vector4: zweite geometrische Ableitung/Krümmungsvektor im Endpunkt

Beispiel Polynombahn mit expliziter Vorgabe der StartpunktdatenDieses Beispiel verbindet eine Linearbahn und eine Kreisbahn:

Bild 3-18 Beispiel von Polynombahn mit expliziter Vorgabe der Startpunktdaten

Zunächst müssen die beiden Ableitungen im Startpunkt des Polynoms berechnet werden. Dafür wird die Funktion _getLinearPathGeometricData() verwendet, die die beiden

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO Bahninterpolation34 Funktionshandbuch, 01/2015

Page 35: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Ableitungen für den Endpunkt der Gerade (Startpunkt des Polynoms) anhand Koordinaten der Gerade berechnet.

Danach werden die beiden Ableitungen des Polynom-Endpunktes ermittelt. Die Berechnung erfolgt mit dem Befehl _getCircularPathGeometricData() auf Basis des Startpunktes des Kreisbogens (Endpunkt des Polynoms).// StartPoly muss als StructRetGetLinearPathGeometricData // definiert werden.// EndPoly muss als StructRetGetCircularPathGeometricData // definiert werden.StartPoly := _getLinearPathGeometricData( pathObject:=pathIPO, pathPlane:=X_Y, pathMode:=ABSOLUTE, xStart:=10.0, yStart:=10.0, xEnd:=20.0, yEnd:=20.0, pathPointType:=END_POINT);EndPoly := _getCircularPathGeometricData( pathObject:=pathIPO, pathPlane:=X_Y, circularType:=WITH_RADIUS_AND_ENDPOSITION, circleDirection:=NEGATIVE, pathMode:=ABSOLUTE, xStart:=40.0, yStart:=20.0, xEnd:=50.0, yEnd:=10.0, radius:=10.0, pathPointType:=START_POINT);myRetDINT := _movePathPolynomial( pathObject:=pathIPO, pathPlane:=X_Y, pathMode:=ABSOLUTE, polynomialMode:=SPECIFIC_START_DATA, x:=40.0, y:=20.0, vector1x:=StartPoly.firstGeometricDerivative.x, vector1y:=StartPoly.firstGeometricDerivative.y, vector2x:=StartPoly.secondGeometricDerivative.x, vector2y:=StartPoly.secondGeometricDerivative.y vector3x:=EndPoly.firstGeometricDerivative.x, vector3y:=EndPoly.firstGeometricDerivative.y, vector4x:=EndPoly.secondGeometricDerivative.x, vector4y:=EndPoly.secondGeometricDerivative.y);

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO BahninterpolationFunktionshandbuch, 01/2015 35

Page 36: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.5.5.4 Polynombahnen - stetig anfügenPolynombahnen können über die Einstellung polynomialMode:=ATTACHED_STEADILY stetig an ein vorhergehendes Bahnsegment angebunden werden. Dabei werden die geometrischen Ableitungen im Startpunkt des Polynoms von der Vorgängergeometrie übernommen, so dass nur noch die erste und zweite geometrische Ableitung im Endpunkt direkt vorgegeben werden muss.

Die beiden Ableitungen müssen wie folgt am Polynombefehl vorgegeben werden:

● vector1: erste geometrische Ableitung/Tangentialvektor im Endpunkt

● vector2: zweite geometrische Ableitung/Krümmungsvektor im Endpunkt

Kann die geometrische Ableitung im Startpunkt nicht bestimmt werden (wenn keine aktuelle Bewegung vorhanden ist), wird der Befehl nicht ausgeführt und die Fehlermeldung 50002 "Berechnung des Geometrieelementes nicht möglich, Grund 3" wird ausgegeben.

Bild 3-19 Polynombahn - stetig anfügen

Beispiel Polynombahn mit stetig anfügenIn diesem Beispiel werden 2 Geraden über ein Polynom verbunden.

Bild 3-20 Beispiel für das stetige Anfügen von Polynombahnen

Zunächst müssen die beiden Ableitungen im Endpunkt des Polynoms berechnet werden. Dafür wird die Funktion _getLinearPathGeometricData() verwendet, die als Rückgabewert eine Struktur mit den Ableitungen zurück gibt. Die Funktion berechnet die Ableitungen für den Startpunkt der Geraden (Endpunkt des Polynoms) anhand der Start- und Endpunktkoordinaten der Geraden.// EndPoly muss als StructRetGetLinearPathGeometricData// definiert werden.

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO Bahninterpolation36 Funktionshandbuch, 01/2015

Page 37: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

EndPoly := _getLinearPathGeometricData( pathObject:=pathIPO, pathPlane:=X_Y, pathMode:=ABSOLUTE, xStart:=30.0, yStart:=15.0, xEnd:=50.0, yEnd:=5.0, pathPointType:=START_POINT);myRetDINT := _movePathPolynomial( pathObject:=pathIPO, pathPlane:=X_Y, pathMode:=ABSOLUTE, polynomialMode:=ATTACHED_STEADILY, x:=30.0, y:=15.0, vector1x:=EndPoly.firstGeometricDerivative.x, vector1y:=EndPoly.firstGeometricDerivative.y, vector2x:=EndPoly.secondGeometricDerivative.x, vector2y:=EndPoly.secondGeometricDerivative.y);

Grundlagen Bahninterpolation3.5 Bahninterpolationsarten

TO BahninterpolationFunktionshandbuch, 01/2015 37

Page 38: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.6 Bahndynamik

3.6.1 BahndynamikDie Bahndynamik kann über Vorgabe der Dynamikwerte oder über ein Dynamikprofil festgelegt werden.

Die dynamischen Grenzwerte der Einzelachsen beim Abfahren der Bahn können optional berücksichtigt werden.

Beim Überschreiten der Dynamikwerte wird eine Fehlermeldung abgesetzt.

Bild 3-21 Bahndynamik bei der Bahninterpolation und Dynamikbegrenzung an der Achse

3.6.2 Vorgabe der BahndynamikDie Bahndynamik kann auf drei verschiedene Arten und Weisen im jeweiligen Bewegungsbefehl spezifiziert werden:

● Vorgabe der Bahndynamik über Befehlsparameter

● Vorgabe der Bahndynamik über Geschwindigkeitsprofil/Kurvenscheibe

● Vorgabe der Bahndynamik über DynamicsIn

Vorgabe der Bahndynamik über Befehlsparameter Die Dynamikwerte (Geschwindigkeit, Beschleunigung und ggf. Ruck) werden unter Angabe des Geschwindigkeitsprofiltypes explizit vorgegeben.

Grundlagen Bahninterpolation3.6 Bahndynamik

TO Bahninterpolation38 Funktionshandbuch, 01/2015

Page 39: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Der Bahninterpolator berechnet das Geschwindigkeitsprofil für die Bahnbewegung. Kriterien für die Berechnung des Geschwindigkeitsprofils sind:

● die am Bahnbewegungsbefehl vorgegebenen Dynamikwerte für Geschwindigkeit, Beschleunigung und Ruck

● die Art des eingestellten Geschwindigkeitsprofils in velocityProfile:

– TRAPEZOIDAL: ohne Ruckbegrenzung; die Bahn wird mit konstanter Beschleunigung und Verzögerung gefahren.

– SMOOTH: mit Ruckbegrenzung; die Bahn wird mit stetigem Beschleunigungs- und Verzögerungsverlauf gefahren.

Vorgabe der Bahndynamik über Geschwindigkeitsprofil/Kurvenscheibe Das Bahnobjekt kann zur Vorgabe eines Geschwindigkeitsprofils mit einer Kurvenscheibe verschaltet werden.

Geschwindigkeit sowie die abgeleiteten Größen für Beschleunigung und ggf. Ruck werden aus dem Geschwindigkeitsprofil übernommen.

Die Bezugsgröße (Definitionsbereich) ist die Bahnlänge. Um Rundungsfehler bei der Bahnlängenberechung auszuschließen und um die optimierte Berechnung von Profilen über mehr als eine Bewegung zu ermöglichen, können gleichzeitig Parameter für den Start- und Endpunkt im Definitionsbereich der Kurvenscheibe der jeweiligen Bewegung programmiert werden.

Am Befehlsende wird ebenfalls mit der im Profil angegebenen Dynamik verfahren.

Sind weitere Folgebewegungen programmiert, wird somit mit dieser Dynamik auf den neuen Bewegungsbefehl übergegangen. Mögliche Einstellungen für das Bahnverhalten am Bewegungsende werden ignoriert.

Sind keine weiteren Folgebewegungen programmiert bzw. soll am Befehlsende gestoppt werden, sollte die Dynamik im Profil so gewählt werden, dass ein Halt am Bewegungsende möglich ist: Geschwindigkeit 0 mit einer sicher zu realisierenden Bremsdynamik.

Zusätzlich wirken die befehlsgranularen Dynamikwerte unter Berücksichtigung des vorgegebenen Geschwindigkeitsprofiltypes begrenzend auf die Profildynamik.

Vorgabe der Bahndynamik über DynamicsInAb V4.3 kann die Bahndynamik über DynamicsIn vorgegeben werden. Die im DynamicsIn-Vektor vorgegebene Position bezieht sich auf den Bahnweg/die Bahnlänge. Es muss die Position mit der Geschwindigkeit und der Beschleunigung an diesem Bahnpunkt vorgegeben werden. Diese Werte müssen dem TO zyklisch per Systemvariablen oder TO-Verschaltung bereitgestellt werden.

Die Dynamikplanung und Dynamikadaption des TO Bahn ist vollständig deaktiviert, d. h. es erfolgt keine Begrenzung und keine Überwachung.

Die Dynamikbegrenzungen der Achsen sind weiterhin wirksam.

Grundlagen Bahninterpolation3.6 Bahndynamik

TO BahninterpolationFunktionshandbuch, 01/2015 39

Page 40: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.6.3 Begrenzungen der Bahndynamik

Technologische BegrenzungenDie sich aus der Bahninterpolation für die einzelnen Achsen ergebenden Sollwerte werden an jeder Bahnachse bzw. Positionierachse für bahnsynchrone Bewegung auf die dort vorliegenden achsspezifischen Dynamikgrenzwerten begrenzt.

Die Achsdynamikwerte am Bahnobjekt werden nur berücksichtigt, falls diese auch so program‐miert wurden (Befehlsparameter blendingMode := ACTIVE_WITH_DYNAMIC_ADAPTION und/oder dynamicAdaption <> INACTIVE).

In den Systemvariablen limitsOfPathDynamics können die Begrenzungen für Bahngeschwindigkeit, -beschleunigung und -ruck festgelegt werden. Änderungen der Systemvariablen sind sofort wirksam.

Die maximalen Dynamikwerte für die Bahn ergeben sich aus dem Minimum der am Befehl eingestellten Dynamikparameter, den über die Systemvariablen (limitsOfPathDynamics) vorgegebenen Dynamikgrenzwerten für die Bahn und, wenn programmiert, den maximalen Dynamikwerten der Achsen entlang der Bahn.

Beachten Sie, dass die Bahngeschwindigkeit bei aktiver Dynamikadaption ggfs. auch dann reduziert wird, wenn die Dynamikgrenzen der Achsen auch ohne aktive Dynamikadaption nicht verletzt werden würden.

Aufgrund einer zu berücksichtigenden Reserve für die aktive Dynamikadaption wird die maximal mögliche Bahndynamik daher nicht immer erreicht.

Die Begrenzung der Dynamikwerte an den einzelnen Achsen kann zu Dynamik- und Wegabweichungen an der Bahn führen. Bahndynamik und Achsgrenzwerte sollten so eingestellt werden, dass bei der Bahnbewegung die Achsgrenzwerte nicht überschritten werden.

Grundlagen Bahninterpolation3.6 Bahndynamik

TO Bahninterpolation40 Funktionshandbuch, 01/2015

Page 41: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Berücksichtigung der Dynamikgrenzwerte der BahnachsenAm Bahnobjekt kann über den Befehlsparameter dynamicAdaption ein Bezug zu den Dynamikgrenzwerten der Achse hergestellt werden. Folgende Einstellungen sind möglich:

● keine Berücksichtigung der maximalen Dynamikwerte der Bahnachsen (INACTIVE)Mit dieser Einstellung werden innerhalb der Bahninterpolation die axialen Grenzwerte nicht berücksichtigt. Die Begrenzungen an den Bahnachsen sind aber aktiv, es kann bei Verletzungen zu einem Sollwertfehler der Bahn (sollwertseitiger Bahnfehler) kommen.Die Einstellung ist sinnvoll,

– wenn keine transformierten Dynamikwerte vorliegen

– wenn vorab, z.B. durch eine Inbetriebnahmephase, eine Überschreitung der axialen Grenzwerte ausgeschlossen werden kann

– wenn applikativ, z.B. durch Berechnung eines optimierten Geschwindigkeitsprofils, bereits die axialen Grenzwerte berücksichtigt wurden

– wenn überlagerte Achsbewegungen stattfinden

● Reduzierung der maximalen Bahndynamik entsprechend der maximalen Dynamikwerte der Bahnachsen (ACTIVE_WITH_CONSTANT_LIMITS)Im Bahninterpolator werden die Geschwindigkeit und die Beschleunigung der Bahn auf die aus den eingestellten Maximalwerten der einzelnen Bahnachsen berechneten Maximalwerte in den kartesischen Koordinaten begrenzt. Achsspezifische Ruckgrenzwerte bei der Vorabplanung der Bahn werden nicht berücksichtigt. Der Ruck kann aber bei entsprechender Parametrierung der pathMotion-Überwachung an der Bahnachse begrenzt werden. Es kann dann zu einem sollwertseitigen Bahnfehler kommen.Beim Erreichen der dynamischen Grenzwerte einer Achse, d. h. wenn die programmierte Bahngeschwindigkeit/-beschleunigung durch diese Grenzwerte nicht erreicht werden kann, wird ein Alarm ausgegeben. Eine Online-Änderung der dynamischen Grenzwerte der Bahnachsen wird sofort wirksam, jedoch nicht für den bereits aktiven bzw. dekodierten Bewegungsbefehl.

● segmentweise Reduzierung der maximalen Bahndynamik entsprechend den maximalen Dynamikwerten der Bahnachsen in diesen Segmenten (ACTIVE_WITH_VARIABLE_LIMITS).Diese Einstellung entspricht ACTIVE_WITH_CONSTANT_LIMITS, die Bahn wird jedoch segmentiert. Insgesamt wird schneller gefahren, die Geschwindigkeit ist nicht konstant über die gesamte Bahn.

Am Bahnobjekt kann aus der Systemvariablen kinematicsData.transformationsOfDynamics ausgelesen werden, ob die maximalen Dynamikwerte der Achsen transformiert vorliegen. Ist dies nicht der Fall, wird die Bahndynamik immer mit den maximalen Dynamikgrenzwerten am Bahnobjekt begrenzt, unabhängig von der Einstellung im Befehlsparameter dynamicAdaption.

Grundlagen Bahninterpolation3.6 Bahndynamik

TO BahninterpolationFunktionshandbuch, 01/2015 41

Page 42: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Unterschied zwischen ACTIVE_WITH_CONSTANT_LIMITS und ACTIVE_WITH_VARIABLE_LIMITSNachfolgender Trace zeigt den Unterschied zwischen ACTIVE_WITH_CONSTANT_LIMITS und ACTIVE_WITH_VARIABLE_LIMITS. Zwei Kreisbahnen werden mit einem 2D-Portal gefahren, die maximalen Geschwindigkeiten der Bahnachsen sind wie folgt:

● Achse_X: 500 mm/s

● Achse_Y: 200 mm/s

Eine Bahngeschwindigkeit von 400 mm/s wird in den Bahnbefehlen definiert.

Bild 3-22 Beispiel: Begrenzungen der Bahndynamik

Bild 3-23 Trace: ACTIVE_WITH_CONSTANT_LIMITS, ACTIVE_WITH_VARIABLE_LIMITS

OverrideAm Bahnobjekt ist ein Geschwindigkeits-Override (Systemvariable override.velocity) und ein Beschleunigungs-Override (Systemvariable override.acceleration) verfügbar.

Grundlagen Bahninterpolation3.6 Bahndynamik

TO Bahninterpolation42 Funktionshandbuch, 01/2015

Page 43: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.7 Bahnbewegung stoppen und fortsetzenMit dem Befehl _stopPath() kann die aktuelle Bahnbewegung gestoppt werden. Eine gestoppte aber nicht abgebrochene Bahnbewegung kann mit dem Befehl _continuePath() weitergeführt werden

Beim Fortsetzen der Bahnbewegung werden die Bewegungseigenschaften (Geschwindigkeitsprofil, Beschleunigung, ...) des unterbrochenen Bahnbefehls angewendet. Ab SIMOTION V4.2 können auch andere Dynamikparameter direkt am Befehl _continuePath() vorgegeben werden.

Um bei abgebrochenen Bahnbewegungen applikativ auf die Abbruchposition aufsetzen zu können, wird die letzte berechnete Sollposition auf der Bahn in der Systemvariablen abortPosition angezeigt.

Dynamikverhalten bei _stopPath() Mit dem Befehl _stopPath() wird das Dynamikverhalten beim Verzögern definiert. Wenn die die Bremsdynamik im Befehl _stopPath() kleiner ist als die Bremsdynamik im aktiven Verfahrbefehl, kann es unter Umständen zu Fehlern kommen.

Wenn das Bahnobjekt mit dem im Befehl _stopPath() definierten Dynamikverhalten in den bereits definierten Bahnsegmenten (d.h. in dem Bahnsegment des aktiven Befehls bzw. in dem Bahnsegment des Befehls im Puffer) stoppen kann, wird das Bahnobjekt ohne Fehler stoppen.

Wenn das Bahnobjekt mit dem im Befehl _stopPath() definierten Dynamikverhalten nicht bis zum Ende der bereits definierten Bahn stoppen kann, ist folgendes Verhalten definiert:

● Die Bahninterpolation wird beendet.

● Jede Achse verzögert mit der in der Achse definierten maximalen Dynamik.

● Die Fehlermeldung 50006 wird erzeugt.

Als Beispiel: Nachfolgende Bahn besteht aus drei Verfahrbefehlen, die ineinander überschleifen. D.h., ist der erste Befehl aktiv, wird der zweite Befehl in den Buffer gelegt. Ist der zweite Befehl aktiv, wird der dritte Befehl in den Buffer gelegt. Ist der dritte Befehl aktiv, wird er zu Ende geführt.

Bild 3-24 Dynamikverhalten bei _stopPath()

Wenn _stopPath() mit reduzierter Dynamik innerhalb des ersten Linearbahnsegments aufgerufen wird, wird das Bahnobjekt mit der im Befehl _stopPath() definierten Dynamik verzögert. Das Bahnobjekt stoppt u. U. im Kreisabschnitt, das Bahnprofil wird nicht verlassen.

Wenn _stopPath() mit reduzierter Dynamik innerhalb des zweiten Linearbahnsegments aufgerufen wird, kann das Bahnobjekt nicht bis zum Ende der definierten Bahn stoppen. Die Achsen verzögern mit maximaler Dynamik, ggf. wird das Bahnprofil verlassen, der Fehler 50006 wird ausgegeben.

Grundlagen Bahninterpolation3.7 Bahnbewegung stoppen und fortsetzen

TO BahninterpolationFunktionshandbuch, 01/2015 43

Page 44: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.8 Bahnverhalten am Bewegungsende

3.8.1 Bahnverhalten am BewegungsendeDas Verhalten am Bewegungsende ergibt sich bei Vorgabe der Bahndynamik über ein Geschwindigkeitsprofil durch die im Profil am Bahnendpunkt angegebene Dynamik.

Bei Vorgabe der Bahndynamik über Dynamikparameter ist der Übergang einstellbar. Neben Stoppen am Befehlsende können zwei aufeinanderfolgende Bahnsegmente dynamisch miteinander verbunden werden, sodass nicht abgebremst werden muss, siehe auch Handbuch Achse Kapitel Positionieren mit Überschleifen.

Bei diesem Überschleifen werden von der Bahninterpolation keine Zwischensegmente zur Verrundung generiert.

Unter Berücksichtigung der axialen Grenzwerte ergeben sich damit 3 Übergangstypen, die am Parameter blendingMode des jeweiligen nachfolgenden Befehls eingestellt werden können:

● Stoppen am Bewegungsende (Seite 45) (blendingMode:=INACTIVE)

● Überschleifen mit Dynamikadaption (Seite 45) (blendingMode:=ACTIVE_WITH_DYNAMIC_ADAPTION)

● Überschleifen ohne Dynamikadaption (Seite 46) (blendingMode:=ACTIVE_WITHOUT_DYNAMIC_ADAPTION)

Der Parameter blendingMode wird nur ausgewertet, wenn der Befehl mit mergeMode:=SEQUENTIAL oder mergeMode:=NEXT_MOTION programmiert ist.

Der Überscheifmodus wird in dem Bewegungsbefehl angegeben, in dem überschliffen werden soll.

Die Dynamikplanung erfolgt über zwei Bewegungsbefehle, ab SIMOTION V4.3 kann die Dynamikplanung über drei Bewegungsbefehle (aktueller, nächster und übernächster Bewegungsbefehl) eingestellt werden (Defaulteinstellung beim Anlegen eines neuen Bahnobjektes). Damit können kurze Zwischenbefehle ohne Geschwindigkeitsreduzierung überschliffen werden.

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO Bahninterpolation44 Funktionshandbuch, 01/2015

Page 45: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-25 Dynamikplanung über 3 Bewegungsbefehle

3.8.2 Stoppen am BewegungsendeDie Bewegung wird in der Zielposition des Bahnbefehls beendet. Die Bahngeschwindigkeit und -beschleunigung ist Null. Eine gegebenenfalls neue Bahnbewegung wird erst mit Ende der Sollwertgenerierung END_OF_INTERPOLATION aktiv.

3.8.3 Überschleifen mit DynamikadaptionBeim Überschleifen wird zwischen zwei aufeinanderfolgenden Bahnsegmenten ein geschwindigkeitsstetiger (bei Geschwindigkeitsprofiltyp TRAPEZOIDAL) bzw. ein geschwindigkeits- und beschleunigungsstetiger Übergang (bei Geschwindigkeitsprofiltyp SMOOTH) vom System unterstützt.

A C B

A

B C

Bild 3-26 Beispiel für Überschleifen mit Dynamikadaption: Gerade-Gerade

Bei dieser Einstellung werden die Achsdynamikgrenzwerte bei der Berechnung des Verfahrprofils beim Bahnüberschleifen direkt berücksichtigt.

Die Überschleifgeschwindigkeit wird zusätzlich in Abhängigkeit der axialen Grenzwerte für Geschwindigkeit und Beschleunigung bestimmt.

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO BahninterpolationFunktionshandbuch, 01/2015 45

Page 46: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bei nichttangentiellen Bahnübergängen (Ecken) wird die Bahngeschwindigkeit derart abgesenkt, dass für keine der beteiligten Achsen ein Geschwindigkeitssprung größer als die maximale Beschleunigung erfolgt. Es kommt zu einem geschwindigkeitsabhängigen Verschleifen des Bahnendpunktes.

Beachten Sie, dass bei aktiver Dynamikadaption die Achsdynamik auf den jeweils kleineren Wert von Achsbeschleunigung und -verzoegerung begrenzt wird. Wenn also die Achse eine maximale Beschleunigung von 1000 mm/s2 und eine maximale Verzögerung von 500 mm/s2 hat, wird der Wert für die Verzögerung für die Berechnung verwendet.

3.8.4 Überschleifen ohne Dynamikadaption

A C B

A

B C

Bild 3-27 Beispiel für Überschleifen ohne Dynamikadaption: Gerade-Gerade

Bei dieser Einstellung werden die Achsdynamikgrenzwerte beim Bahnüberschleifen nicht berücksichtigt.

Die Bahngeschwindigkeit wird als skalare, richtungs- und krümmungsunabhängige Größe geführt.

Eine nichttangentiale Anbindung von Bahnsegmenten hat keinen Einfluss auf das Bahngeschwindigkeitsprofil, die Geschwindigkeit wird beim Überschleifen aus diesem Grund nicht abgesenkt.

Da die Sollwerte, die im Bahnobjekt für die einzelnen Achsen erzeugt werden, an den Achsen auf die achsspezifischen Dynamikgrenzwerte begrenzt werden, kann sich ein Sollwertfehler der Achse gegenüber dem Sollwert aus der Bahninterpolation ergeben. Dies führt letztlich zu einer achsspezifischen Abweichung von der Bahn im Überschleifbereich.

Dieser Modus findet z. B. dann Anwendung, wenn auf der Bahn die Dynamikgrenzwerte der Achsen eingehalten werden sollen (z. B. beim Anfahren von Positionen), aber im Überschleifbereich an den Segmentübergängen ein achsspezifischer Sollwertfehler der Achse gegenüber der Bahn akzeptiert wird.

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO Bahninterpolation46 Funktionshandbuch, 01/2015

Page 47: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.8.5 Überschleifen und Ablösen mit Einfügen von Zwischensegmenten

Überschleifen mit Einfügen von ÜberschleifsegmentenBeim Überschleifen mit Einfügen von Übergangssegmenten wird zwischen den beiden Bahnsegmenten ein Überschleifsegment eingefügt. Es können wahlweise Zirkular- oder Polynomsegmente eingefügt werden. Alternativ kann an den Übergängen ein Genauhalt bzw. ein Überschleifen ohne Änderung der Bahngeometrie durchgeführt werden.

Auch bei ablösenden Bahnbewegungen können Übergangssegmente eingefügt werden.

Überschleifsegment:Als Überschleifsegment ist ein Polynomsegment möglich, zwischen zwei Linearsätzen ist auch ein Zirkularsegment möglich.

Der Befehlsübergang ist der Beginn des Überschleifens. Die Bahnlänge von Überschleifsegment und "Restsegment" wird am 2. Bewegungsbefehl in Gesamtheit ausgegeben.

Überschleifen mit Einfügen eines Polynomsegments:Das Überschleifen mit Einfügen eines Polynomsegments ist zwischen allen Bahntypen möglich. Der Übergang zwischen den Segmenten und der Polynombahn erfolgt positions-, geschwindigkeits- und beschleunigungsstetig.

Überschleifen mit Einfügen eines Zirkularsegments:Das Überschleifen mit Einfügen eines Zirkularsegments ist nur zwischen 2 Linearsätzen möglich. Der Übergang zwischen den linearen Segmenten und der Kreisbahn erfolgt positions- und geschwindigkeitsstetig.

Zur Bestimmung des zirkularen Überschleifsegments werden der Startpunkt des Überschleifsegments (SU),der Endpunkt des Überschleifsegments (EU) und der Überschleifradius ausgehend vom gemeinsamen Start- und Endpunkt (SE) der Segmente 1 und 2 benötigt (siehe Bild unten). Die Abstände zwischen SE und SU sowie SE und EU entsprechen dabei dem programmierten Überschleifabstand a. Beim Überschleifabstand handelt es sich nicht um den geometrischen Abstand zwischen den Punkten, sondern um Bahnlängen der Segmente 1 und 2 ausgehend von SE (nur relevant bei nichtlinearen Segmenten). Programmiert wird wie bisher der Endpunkt SE als Zielpunkt von Segment 1.

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO BahninterpolationFunktionshandbuch, 01/2015 47

Page 48: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-28 Einfügen eines zirkularen Überschleifsegments zwischen 2 linearen Bahnsegmenten

Das Einfügen eines Zirkularsegments wird bei anderen als Linear-Bahnbefehlen abgelehnt und ein technologischer Alarm ausgegeben:

"50013 Überschleifsegment nicht möglich, Grund 2: zirkulares Überschleifsegment kann nur zwischen Linearsätzen eingefügt werden".

Ablösen mit Einfügen von ÜbergangssegmentenVerhalten vor V4.3

Bei mergeMode:=IMMEDIATELY erfolgt die sofortige Ablösung der aktuell vorliegenden Bahnbewegung durch die neue Bahnbewegung mit den Dynamikparametern des neuen Bewegungsbefehls, unabhängig von der Einstellung im Parameter blendingMode.

Verhalten ab V4.3

Auch bei ablösenden Bahnbewegungen wird vom System das Einfügen von Übergangssegmenten ermöglicht. Dabei werden auch beim Ablösen die Einstellungen in blendingMode und transitionType wirksam. Bei der Einstellung blendingMode:=INACTIVE ist das Ablöseverhalten wie vor V4.3. Bei der Einstellung blendingMode:=ACTIVE_WITHOUT_DYNAMIC_ADAPTION oder

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO Bahninterpolation48 Funktionshandbuch, 01/2015

Page 49: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

blendingMode:=ACTIVE_WITH_DYNAMIC_ADAPTION ist das Verhalten abhängig von der Einstellung im Parameter transitiontype:

● transitionType:=DIRECT: (Kompatibilitätsmodus, Voreinstellung) Ablöseverhalten wie vor V4.3, kein Übergangssegment, direkter Übergang;

● transitionType:=STOP: Verzögern der aktiven Bahnbewegung bis zum Stillstand, dann Starten der neuen Bahnbewegung; die Dynamikwerte der neuen Bahnbewegung werden unmittelbar, also bereits auch für die Stoppbewegung wirksam;

● transitionType:=POLYNOMIAL | CIRCULAR: Es wird ein Übergangssegment vom System eingefügt, ausgehend von der aktuellen Position auf der Bahn; der Überschleifabstand wird an den aktuellen Bahnpunkt angesetzt.

Ablösepunkt des

Bahnbefehls 1 durch

den Bahnbefehl 2

Bild 3-29 Überschleifen beim Ablösen von Befehlen

Der so gebildete virtuelle Überschleifpunkt wird als Endpunkt der aktuellen Bewegung und als Startpunkt der neu programmierten Bewegung genutzt. Entsprechend der Vorgabe wird Überschleifen mit Polynomsegment oder Zirkularsegment möglich.

Hier gilt:

● Zirkularsegment ist möglich, wenn in einem Linearsatz übergeschliffen wird,

● Polynomialsegment ist immer möglich

ÜberschleifdynamikDie Überschleifgeschwindigkeit im Bereich der Überschleifgeometrie kann mit Bezug zum ersten oder zweiten Bahnbefehl gefahren werden. Die Auswahl wird bestimmt über die Einstellung, die höhere oder die niedrigere Geschwindigkeit der beiden Befehle zu fahren.

Beschleunigung und Ruck für den Geschwindigkeitsübergang werden vom zweiten Bahnbefehl übernommen.

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO BahninterpolationFunktionshandbuch, 01/2015 49

Page 50: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Überschleifen mit mergeMode = SEQUENTIAL / NEXT_MOTION / IMMEDIATELY, transitionType:= DIRECT / STOP / POLYNOMIAL / CIRCULAR und transitionVelocityMode:= HIGH_VELOCITY / LOW_VELOCITY

HIGH_VELOCITYFahren der Überschleifgeometrie mit der höheren der beiden Geschwindig‐keiten

LOW_VELOCITYFahren der Überschleifgeometrie mit der niedrigeren der beiden Geschwin‐digkeiten

Erweitertes Verhalten bei ablösenden BewegungenBei ablösenden Bahnbewegungen ist ein zusätzlicher Modus verfügbar, der die abgelöste Bewegung zuerst stoppt und dann in der Stoppposition die neue Bewegung beginnt. Damit entsteht ein geometrisch gesehen variabler Einwechselpunkt für den neuen ablösenden Befehl.

Bild 3-30 Verhalten bei gestoppter ablösender Bewegung

Überschneidung von ÜberschleifabständenDas Verhalten beim Erkennen einer Überschneidung von Überschleifabständen ist wie in der folgenden Abbildung konfigurierbar.

Beim Überschleifen mehrerer Segmente ergeben sich ggfs. überlappende Überschleifabstände:

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO Bahninterpolation50 Funktionshandbuch, 01/2015

Page 51: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-31 Überlappende Überschleifabstände

Wird eine Überschneidung der Überschleifabstände erkannt, wird der Überschleifradius vom System auf den maximalen Wert ( z. B. für b auf MAX(s-a, s/2) ) reduziert, und im Alarmfenster die Warnung "50013 Überschleifabstand modifiziert" ausgegeben. Der Alarm ist deaktivierbar.

Grundlagen Bahninterpolation3.8 Bahnverhalten am Bewegungsende

TO BahninterpolationFunktionshandbuch, 01/2015 51

Page 52: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.9 Anzeige und Überwachungen an der AchseAnzeige und Überwachungen zur Bahnbewegung an der AchseEine aktive Bahnbewegung wird an der Bahnachse in der Systemvariablen pathMotion.state angezeigt.

Anzeige der bahnsynchronen Bewegung an der PositionierachseEine aktive Synchronachsbewegung wird an der Positionierachse in der Systemvariablen pathSyncMotion.state angezeigt.

Überwachung des SollwertfehlersAn der Bahn- bzw. Positionierachse kann der sich ergebende Sollwertfehler überwacht werden (Differenz zwischen dem vom Bahnobjekt vorgegebenen Sollwert und dem an der Achse ausgegebenen Sollwert).

Die Differenz zu den Istwerten wird nicht überwacht.

Begrenzung und Überwachung des Sollwertfehlers:

● Bei der Einstellung enableCommandValue := NO_ACTIVATE:

– Die dynamische Begrenzung erfolgt ohne Berücksichtigung des Rucks.

– Der sich ergebende Sollwertfehler wird nicht überwacht.

● Bei der Einstellung enableCommandValue := WITHOUT_JERK:

– Die dynamische Begrenzung erfolgt ohne Berücksichtigung des Rucks.

– Der sich ergebende Sollwertfehler wird überwacht.

● Bei der Einstellung enableCommandValue := WITH_JERK:

– Die dynamische Begrenzung erfolgt unter Berücksichtigung des Rucks.

– Der sich ergebende Sollwertfehler wird überwacht.

Bahnbewegung an der Bahnachse Synchronbewegung an der Positionier‐achse

Aktivierung der Überwachung (Konfigu‐rationsdatum)

pathAxisPosTolerance. enableCom‐mandValue

pathSyncAxisPosTolerance. enable‐CommandValue

Toleranzwert (Konfigurationsdatum) pathAxisPosTolerance. commandValu‐eTolerance

pathSyncAxisPosTolerance. command‐ValueTolerance

Alarm bei Überschreitung 40401 Toleranz der achsspezifischen Bahnsollwerte ueberschritten

40126 Toleranz der achsspezifischen Synchronsollwerte ueberschritten

Sollwertfehler überschritten (Systemva‐riable)

pathMotion. limitCommandValue pathSyncMotion. limitCommandValue

Sollwertdifferenz zwischen Vorgabe Bahnobjekt und Achsausgabewert (Sys‐temvariable)

pathMotion. differenceCommandValue pathSyncMotion. differenceCommand‐Value

Betreffendes Bahnobjekt (Systemvari‐able)

pathMotion.activePathObject pathSyncMotion. activePathObject

Grundlagen Bahninterpolation3.9 Anzeige und Überwachungen an der Achse

TO Bahninterpolation52 Funktionshandbuch, 01/2015

Page 53: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.10 Berücksichtigung der achsspezifischen VerfahrbereichsgrenzenDie Verfahrbereichsgrenzen der Bahn- und Positionierachsen, d. h. aktive Soft‐wareendschalter, werden an den beteiligten Achsen und nicht am Bahnobjekt berücksichtigt.

Wird von einer beteiligten Achse die mögliche Verletzung ihres achsspezifischen Arbeitsbereiches erkannt, wird ein Alarm mit entsprechender Fehlerreaktion ausgelöst.

Grundlagen Bahninterpolation3.10 Berücksichtigung der achsspezifischen Verfahrbereichsgrenzen

TO BahninterpolationFunktionshandbuch, 01/2015 53

Page 54: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.11 Verhalten der Bahnbewegung bei Fehler an einer beteiligten Bahnachse oder Positionierachse

Bei einem Fehler an einer Bahnachse oder der Positionierachse für bahnsynchrone Bewegung, der zum Stopp dieser Achsbewegung und damit zum Abbruch des Befehls führt, wird die Bahninterpolation entsprechend der eingestellten Fehlerreaktion abgebrochen.

Siehe Lokale Alarmreaktion (Seite 174).

Die anderen an der Bahnbewegung beteiligten Achsen werden mit den maximalen Dynamikwerten auf Geschwindigkeit 0.0 gefahren.

Grundlagen Bahninterpolation3.11 Verhalten der Bahnbewegung bei Fehler an einer beteiligten Bahnachse oder Positionierachse

TO Bahninterpolation54 Funktionshandbuch, 01/2015

Page 55: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.12 Funktionalität der bahnsynchronen Bewegung

3.12.1 Funktionalität der bahnsynchronen BewegungEine bahnsynchrone Bewegung an einer Positionierachse erfolgt synchron zu der Bahnbewegung mit der sie vorgegeben wird. Start und Ende der bahnsynchronen Bewegung erfolgen damit zur gleichen Zeit wie Start und Ende der Bahnbewegung. Damit wird z. B. das Drehen eines Greifers synchron zur Bahnbewegung möglich.

Die Bahnbewegung und die bahnsynchrone Bewegung werden über ein gemeinsames Verfahrprofil verfahren. Dies gilt auch für das Überschleifen zwischen zwei Bahnsegmenten.

Die aktuelle Bahnlänge kann über w oder w2 ausgegeben werden. Dies wird am Bahnbefehl über Parameter eingestellt.

3.12.2 Spezifikation der bahnsynchronen BewegungEs gibt verschiedene Möglichkeiten für die bahnsynchrone Bewegung, die im Parameter wMode des jeweiligen Bewegungsbefehls spezifiziert werden:

● Bewegung zu einem definierten Endpunkt der bahnsynchronen Achse wDie Zielposition der bahnsynchronen Bewegung wird im Bahnbefehl vorgegeben. Dies kann relativ (RELATIVE) oder absolut (ABSOLUTE) erfolgen.Die Richtung der Synchronbewegung wird wie beim Positionierbefehl der Achse über einen Parameter (wDirection) vorgegeben.Weitere Informationen siehe Funktionshandbuch Motion Control Technologieobjekte Achse elektrisch/hydraulisch, Externer Geber, "Positionieren".Die Bewegungsdynamik richtet sich nach der Bahn, die Achse wird "mitgeschleppt". Werden dabei die maximalen Dynamikwerte der Positionierachse verletzt, werden die Bahndynamikparameter entsprechend reduziert.Ist die Bahnlänge Null und eine bahnsynchrone Bewegung programmiert, wird ein Fehler ausgegeben und die bahnsynchrone Bewegung auf die programmierte Endposition gesetzt. Axial wird der entstehende Sollwertsprung mit den Maximalwerten verfahren.In diesen Fall ist darauf zu achten, dass eine projektierte Überwachung des Sollwertfehlers der bahnsynchronen Achse auch auf den Sollwertsprung wirkt.

● Bewegung entsprechend der aktuellen Bahnlänge über w oder w2Der aktuelle Bahnweg wird ausgegeben. Hierfür gibt es zwei Möglichkeiten:

– Bezogen auf den Befehl (OUTPUT_PATH_LENGTH)Dabei wird die Achsposition zunächst auf 0.0 gesetzt, bevor der Bahnweg gefahren wird.Das Rücksetzen der Position der Achse auf Null entspricht einem synchronisiertem _redefinePosition()- Befehl.

– Akkumulierte Ausgabe ohne Rücksetzen (OUTPUT_PATH_LENGTH_ADDITIVE)Der über die Befehlsgrenze aufaddierte Bahnweg wird ausgegeben.

Grundlagen Bahninterpolation3.12 Funktionalität der bahnsynchronen Bewegung

TO BahninterpolationFunktionshandbuch, 01/2015 55

Page 56: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.12.3 Dynamik der bahnsychronen BewegungAm Bahnobjekt werden keine eigenen Dynamikparameter für die bahnsynchrone Bewegung gehalten.

Für die Berechnung des Bahngeschwindigkeitsprofils bei gleichzeitigem Verfahren einer bahnsynchronen Bewegung gilt:

● Berechnung des Bahngeschwindigkeitsprofils ohne Dynamikadaption:

– Das Geschwindigkeitsprofil für die Bahn wird aus den Dynamikparametern der Bahn bestimmt, siehe Bahndynamik (Seite 38).

– Die Sollwerte des Bahninterpolators für die bahnsynchrone Bewegung werden an der Positionierachse auf die maximalen Dynamikwerte begrenzt.

– Die Dynamikwerte (Geschwindigkeit, Beschleunigung und Ruck) werden an das Verhältnis Weg der Bahnachse zu Weg der bahnsynchronen Bewegung angepasst:

Die Formel gilt unter der Annahme, dass die Einheiten am Bahnobjekt und den beteiligten Achsen gleich eingestellt sind.

● Berechnung des Bahngeschwindigkeitsprofils mit Dynamikadaption:Die Dynamik der bahnsynchronen Bewegung wird wie eine weitere orthogonale Koordinate in die Bahnplanung miteinbezogen und das Bahngeschwindigkeitsprofil gegebenenfalls so angepasst, dass die Dynamikgrenzwerte der Positionierachse durch das Bahngeschwindigkeitsprofil nicht verletzt werden.

3.12.4 Bahnüberschleifen mit einer bahnsynchronen Bewegung● Bahnüberschleifen mit Dynamikadaption

Die Dynamik der bahnsynchronen Bewegung wird wie eine weitere orthogonale Koordinate in die Bewegungsplanung miteinbezogen und das Geschwindigkeitsprofil im Überschleifbereich gegebenenfalls entsprechend angepasst.

● Bahnüberschleifen ohne DynamikadaptionIst der Quotient Weglänge (Bahnbewegung) / Weglänge (bahnsynchrone Bewegung) über die einzelnen Bahnsegmente nicht gleich, ergeben sich Unstetigkeiten in den Geschwindigkeits-Sollwerten des Bahnobjektes für die bahnsynchrone Bewegung bei den Bahnsegmentübergängen.

Die sich aus der Bahninterpolation für die bahnsynchrone Bewegung ergebenden Sollwerte werden an der Positionierachse unter Anwendung der dort vorliegenden achsspezifischen Dynamikgrenzwerte begrenzt.

Wird z. B. am Bahnobjekt nur auf die dort vorliegenden Dynamikgrenzwerte über die Bahn begrenzt, kann sich ein Sollwertfehler an der Positionierachse gegenüber dem berechneten Sollwert am Bahnobjekt für die bahnsynchrone Bewegung ergeben. Siehe Anzeige und Überwachungen an der Achse (Seite 52).

Grundlagen Bahninterpolation3.12 Funktionalität der bahnsynchronen Bewegung

TO Bahninterpolation56 Funktionshandbuch, 01/2015

Page 57: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.12.5 Ausgabe des Bahnweges an die PositionierachseAn die Positionierachse kann alternativ der gefahrene Bahnweg, d. h. die aktuelle Bahnlänge ausgegeben werden, bezogen auf ein einzelnes Bahnsegment, oder auch aufsummiert über mehrere Bahnsegmente.

Die Einstellung erfolgt am Bahnbefehl.

Ein Anwendungsfall ist z. B. die Ausgabe von bahnwegbezogenen Nocken oder Messtastern.

3.12.6 Ausgabe der kartesischen Koordinaten über MotionOut-InterfaceÜber die Interfaces motionOut.x/y/z können die kartesischen Koordinaten direkt mit anderen Technologieobjekten verschaltet werden, z. B. mit den MotionIn-Interfaces von Positionierachsen.

Über diese Funktionalität können in der Applikation z.B. Nocken und Messtaster auf kartesischen Achsen realisiert werden.

Grundlagen Bahninterpolation3.12 Funktionalität der bahnsynchronen Bewegung

TO BahninterpolationFunktionshandbuch, 01/2015 57

Page 58: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13 Kinematikanpassung

3.13.1 KinematikanpassungDie Bahnachswerte werden über die Kinematiktransformation, oder auch Kine‐matikanpassung, auf die kartesischen Achsen umgerechnet und umgekehrt.

3.13.2 Kinematikanpassung – Grundlagen

3.13.2.1 Umfang der TransformationsfunktionalitätBei der Positions- und Bewegungsumrechnung wird bei der Vorwärtsrechnung der Kinematik (auch direkte Kinematik, Vorwärtskinematik oder Vorwärtstransformation) aus der Stellung der Gelenkwinkel und deren räumliche Anordnung die Lage des Endpunktes der Kinematik im Basiskoordinatensystem bestimmt.

Bei der Rückwärtsrechnung (auch Rückwärtstransformation oder inverse Kinematik) wird aus der Lage des Endpunktes der Kinematik im Basiskoordinatensystem die Stellung der einzelnen Gelenkwinkel bestimmt. Bei der Bahninterpolation wird die Lage des Endpunktes der Kinematik im Basiskoordinatensystem über die Zeit berechnet.

Transformiert werden Position und Dynamikwerte.

Befinden sich die Achsstellungen außerhalb des Transformationsbereich, so werden die Werte im BCS und OCS auf Null gesetzt.

Bei Bahnachsen mit der Einstellung als Modulo-Achsen wird immer der aktuelle Modulobereich beibehalten.

Siehe Modulo-Eigenschaften (Seite 22).

3.13.2.2 BezugspunkteFolgende Bezugspunkte werden bei der Bahninterpolation verwendet:

● Kartesischer Nullpunkt

● Kinematik-Nullpunkt

● Kinematik-Endpunkt(Da kein Werkzeug berücksichtigt wird, ist dies gleich dem Bahnpunkt.)

Bild 3-32 Bezugspunkte der Koordinatensysteme bei der Bahninterpolation

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation58 Funktionshandbuch, 01/2015

Page 59: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Das Bahnobjekt berechnet die Position auf der Bahn. Dies ist auch der Kinematik-Endpunkt.

3.13.2.3 Systemvariablen für Bahninterpolation und Transformation am Bahnobjekt

Bild 3-33 Übersicht Systemvariablen des Bahnobjekts

Die Positions- und Dynamikwerte sind über Systemvariable zugänglich:

Bahndaten

Systemvariable Beschreibungpath.acceleration Bahnbeschleunigungpath.command Status eines Bewegungsbefehlspath.dynamicAdaption Anzeige, ob die Anpassung der Bahndynamik

an die Dynamikgrenzwerte der Bahnachsen aktiv ist.

path.length Länge der aktuellen Bahnpath.motionState Bewegungsstatus Bahnbewegungpath.position Bahnposition (innerhalb der Bahnlänge)path.velocity Bahngeschwindigkeitpath.csType Typ des Koordinatensystemspath.csNumber Nummer des Koordinatensystems (bei OCS)

Kartesische Vorgaben im Basiskoordinatensystem / bahnsynchrone Bewegung

Systemvariable Beschreibungbcs.x/y/z/w.position Sollpositionenbcs.x/y/z/w.velocity Sollgeschwindigkeitenbcs.x/y/z/w.acceleration Sollbeschleunigungenbcs.linkConstellation Sollgelenkstellungsraum

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 59

Page 60: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Kartesische Istwerte

Systemvariable Beschreibungbcs.x/y/zActual.position Istwert der kartesischen Positionen der Bahn‐

achsenbcs.linkConstellationActual Aktueller Gelenkstellungsraum

Vorgaben an Bahnachsen aus Bahnbewegung

Systemvariable Beschreibungmcs.a1/a2/a3.acceleration Beschleunigungen der Bahnachsenmcs.a1/a2/a3.position Positionen der Bahnachsen in den Achskoor‐

dinatenmcs.a1/a2/a3.velocity Geschwindigkeiten der Bahnachsen

Objektkoordinatensystem

Systemvariable Beschreibungocs[1..3].trackingIn Interface für Bewegungsfolgebezugswert mit

dem das OCS mitgeführt werden soll (z. B. TO Externer Geber)

ocs[1..3].trackingInPosition Aktueller Wert der Bewegungsfolgeocs[1..3].trackingPosition Position des OCS relativ zur Bezugslageocs[1..3].trackingState Synchronisierstatusocs[1..3].x/y/z.accelaration Beschleunigungocs[1..3].x/y/z.position Positionocs[1..3].x/y/z.velocity Geschwindigkeit

Override

Systemvariable Beschreibungoverride.acceleration Beschleunigungs-Overrideoverride.velocity Geschwindigkeits-Override

Bahnbefehlsstati

Systemvariable BeschreibunglinearPathCommand.state Status der LinearinterpolationcircularPathCommand.state Status der KreisinterpolationpolynomialPathCommand.state Status der Polynominterpolation

Geschwindigkeitsprofil

Systemvariable BeschreibungspecificVelocityProfile.state Auskunft ob ein Geschwindigkeitsprofil im Ein‐

satz istspecificVelocityProfile.value Profilwert

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation60 Funktionshandbuch, 01/2015

Page 61: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Systemvariable BeschreibungspecificVelocityProfile.activeProfile Aktive ProfilreferenzspecificVelocityProfile.processingState Status der Profilbearbeitung

Befehlsqueue

Systemvariable BeschreibungmotionBuffer.numberOfExistentEntries Anzahl der Befehle im BefehlspuffersmotionBuffer.state Status des Befehlspuffers

Verschaltungen am Bahnobjekt

Systemvariable Beschreibungconnection.a1 1. Bahnachse am Bahnobjektconnection.a2 2. Bahnachse am Bahnobjektconnection.a3 3. Bahnachse am Bahnobjektconnection.w Bahnsynchrone Achse am Bahnobjekt

3.13.2.4 Transformation der DynamikwerteOb eine Kinematiktransformation die Funktionalität der Transformation der Dynamik unterstützt, wird in der Systemvariablen kinematicsData.transformationOfDynamics angezeigt.

3.13.2.5 Unterscheidung der GelenkstellungsräumeSind kartesische Kinematikendpunkte über verschiedene Gelenkstellungen erreichbar, werden bei der entsprechenden Kinematik Gelenkstellungsräume definiert.

Alle Bahnbewegungen finden im gleichen Gelenkstellungsraum statt. Daher kann während dem Abfahren einer Bahn der Gelenkstellungsraum nicht gewechselt werden. Ein Wechsel in einen anderen Gelenkstellungsraum ist durch Einzelachsbewegungen möglich, nicht über eine Bewegung am Bahnobjekt.

Der aktuelle, transformationsspezifische Gelenkstellungsraum wird sollwertseitig in der Variable bcs.linkConstellation, istwertseitig in der Variable bcs.linkConstellationActual angezeigt.

Die Definition des Gelenkstellungsraumes wird spezifisch für die jeweilige Transformation angegeben. Siehe Unterstützte Kinematiken (Seite 64).

3.13.2.6 Auskunftsbefehle zur KinematiktransformationNeben der impliziten Umrechnung im System sind die Transformationsrechnungen auch direkt über Anwenderbefehle zugänglich.

● Über den Befehl _getPathCartesianPosition() werden zu den im Befehl angegebenen Achspositionen die kartesischen Positionen berechnet.

● Über den Befehl _getPathAxesPosition() werden aus den kartesischen Positionen die Achspositionen berechnet.

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 61

Page 62: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

● Über den Befehl _getPathCartesianData() werden aus den im Befehl angegebenen Achspositionen, Achsgeschwindigkeiten und Achsbeschleunigungen die kartesischen Daten zur Position Geschwindigkeit und Beschleunigung berechnet.

● Über den Befehl _getPathAxesData() werden aus den im Befehl angegebenen kartesischen Daten zur Position, Geschwindigkeit und Beschleunigung die Achspositionen, Achsgeschwindigkeiten und Achsbeschleunigungen berechnet.

Bei der Berechnung der Achspositionen werden die Werte in der Achskoordinate der Bahnachse angegebenen, nicht bezogen auf den Kinematik-Nullpunkt der Achse.

Der Modulo-Bereich wird berücksichtigt.

Bei der Transformation von kartesischen Werten in Bahnachswerte muss keine Bezugsposition der Achsen sondern ein Gelenkstellungsraum angegeben werden, um die Eindeutigkeit zu gewährleisten.

3.13.2.7 Achsspezifische Nullpunktverschiebung in der TransformationEs kann eine achsspezifische Verschiebung (Offset) der Nulllage der Achse im achsspezifischen Koordinatensystem und der Nulldefinition der Achse in der Transformation eingestellt werden.

Die positive Richtung der Achse und der Achse in der Transformation müssen gleich sein und werden an der Achse eingestellt.

Die Verschiebung des Kinematik-Nullpunkts zum Achsnullpunkt wird in der positiven Richtung der Achse angegeben.

Bild 3-34 Bahnachsoffset

Bei Verwendung von Moduloachsen für rotatorische Gelenke mit begrenztem Definitionsbereich in Kinematiken wie z. B. SCARA sollte die achsspezifische Nullpunktverschiebung und die Moduloeigenschaft der betreffenden Bahnachse so festgelegt werden, dass sich der zulässige Modulobereich der Bahnachse mit dem Definitionsbereich des betreffenden Gelenks innerhalb der Kinematik deckt. Andernfalls kann dies zu einer zusätzlichen Einschränkung des Verfahrbereiches der Kinematik führen.

Beispiel: Wird ein Gelenk auf [-180°; 180°) begrenzt und ist an der Bahnachse ein Modulobereich von 0° bis 360° definiert, sollte die Nullpunktverschiebung auf -180° festgelegt werden.

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation62 Funktionshandbuch, 01/2015

Page 63: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13.2.8 Verschiebung des Kinematik-Nullpunkts zum kartesischen NullpunktIm Konfigurationsdatum basicOffset kann eine Verschiebung des Kinematik-Nullpunkts der Transformation zum kartesischen Nullpunkt eingestellt werden.

A 1

A 2

basicOffset

A 3

x+

z+

y+

Bild 3-35 Beispiel für kinematischen Offset

Im obigen Beispiel ergeben sich daher für die kinematischen Offsets negative Werte.

Verschiebung im Beispiel: x: -100y: -100 z: -200

Ab SIMOTION V4.2 ist neben einer Verschiebung auch eine Rotation des BCS und somit eine beliebige Drehung des Koordinatensystems gegenüber dem Kinematik-Nullpunkt möglich. Dadurch kann eine flexible Zuordnung des BCS zur Kinematik des Handlinggerätes erfolgen.

Bild 3-36 Verschiebung und Rotation des Koordinatensystems

Die Drehungen werden dabei nach der Verschiebung in folgender Reihenfolge durchgeführt:1. Roll um die x-Achse2. Pitch um (die bereits gedrehte) y-Achse3. Yaw um (die bereits doppelt gedrehte) z-Achse

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 63

Page 64: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

A1

A2

basicOffset

A3

x+

z+

y+

Bild 3-37 Beispiel für kinematischen Offset mit Rotation

Verschiebung und Drehung (um die y-Achse) im Beispiel: x: -100 y: -100z: -200roll: 0°pitch: +15°jaw: 0°

3.13.3 Unterstützte Kinematiken

3.13.3.1 Unterstützte Kinematiken und deren ZuordnungÜber das Konfigurationsdatum typeOfKinematics sind folgende Kinematiken einstellbar:

● Kartesische 2D/3D-Portale (Seite 68) (CARTESIAN):

● Rollen-Picker 2D (Seite 69) (ROLL_PICKER)

● Rollen-Picker 3D (Seite 71) (ROLL_PICKER_3D) verfügbar ab V4.4.

● Delta-Picker 2D (Seite 72) (DELTA_2D_PICKER)

● Delta-Picker 3D (Seite 75) (DELTA_3D_PICKER)

● SCARA-Kinematik (Seite 78) (SCARA)

● Gelenkarm-2D-Kinematik (Seite 82) (ARTICULATED_ARM_2D) verfügbar ab V4.2.

● Gelenkarm-3D-Kinematik (Seite 83) (ARTICULATED_ARM)

● Schwenkarm-2D-Kinematik (Seite 86) (SWIVEL_ARM) verfügbar ab V4.2.

● Zylindrischer Roboter 3D (Seite 88) (CYLINDRICAL) verfügbar ab V4.4.

● 2D/3D Anwenderfunktion (Seite 90) (USER_FUNCTION) verfügbar ab V4.4.

● Weitere spezielle Kinematiken (Seite 97) (SPECIFIC)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation64 Funktionshandbuch, 01/2015

Page 65: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

An jedem Bahnobjekt kann eine Transformation angewählt werden.

In einem SIMOTION-System können bei Verwendung mehrerer Bahnobjekte somit mehrere Transformationen konfiguriert werden / aktiv sein.

Da eine Bahnachse mit mehr als einem Bahnobjekt verschaltet werden kann, kann eine Bahnachse prinzipiell in mehreren Kinematikverbänden beteiligt sein, aber zu einer Zeit natürlich nur in einem Bahnverbund aktiv sein.

3.13.3.2 KonfigurationsmaskenAb der SIMOTION Version 4.2 können Sie die Kinematiken über Parametriermasken konfigurieren. Sie können die Masken über das Konfigurationsmenü aufrufen.

Bild 3-38 Konfiguration öffnen

Je nach Kinematik enthält die Maske mehrere Laschen in denen die mechanischen Daten und die Verschiebungen und Verdrehungen eingegeben werden können.

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 65

Page 66: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Beispiel: Kartesische Kinematik 2D

Bild 3-39 Kartesische Kinematik 2D - Konfiguration

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation66 Funktionshandbuch, 01/2015

Page 67: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-40 Kartesische Kinematik 2D - Verschiebung

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 67

Page 68: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13.3.3 Kartesische 2D/3D-Portale

basicOffset

Bild 3-41 Kinematikbeispiel 2D/3D Portal

Tabelle 3-1 Konfigurationsdaten für die kartesische Kinematik

typeOfKinematics: CARTESIAN

Kinematiktyp Kartesisches Portal

basicOffset.x Verschiebung des Nullpunktes der kartesischen Koordinate x zum Nullpunkt der Achskoordinate A1

basicOffset.y Verschiebung des Nullpunktes der kartesischen Koordinate y zum Nullpunkt der Achskoordinate A2

basicOffset.z Verschiebung des Nullpunktes der kartesischen Koordinate z zum Nullpunkt der Achskoordinate A3

basicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)basicOffset.yaw Rotation um z (Yaw)cartesianKinematicsType Auswahl ob 2D oder 3D (bestimmt die Anzahl der beteiligten

Achsen)config2D Hauptebene (nur bei 2D-Portal)

Tabelle 3-2 Mögliche Gelenkstellungsräume

linkConstellation ohne Bedeutung (immer 1)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation68 Funktionshandbuch, 01/2015

Page 69: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13.3.4 Rollen-Picker 2D

Allgemein

Bild 3-42 Rollen-Picker 2D: Darstellung des Achssystems

Der Rollen-Picker 2D hat eine zweidimensionale Kinematik. Sie können den Rollen-Picker 2D in allen drei Hauptebenen konfigurieren. In dieser Beschreibung wird von einer Konfiguration in der x-y-Ebene ausgegangen.

Bild 3-43 Kinematik Rollen-Picker 2D (Umlenkrolle auf der Gegenseite vom Werkzeug)

Vorausgesetzt wird, dass sich die Umlenkrolle auf der Gegenseite vom Werkzeug befindet.

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 69

Page 70: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-44 Kinematik Rollen-Picker 2D (nicht betrachteter Fall Umlenkrolle am Werkzeug)

Die alternative Variante mit der Umlenkrolle am Werkzeug kann durch Umrechnung der Koordinaten abgeleitet werden:

Umlenkrolle am Werkzeug Umlenkrolle auf der Gegenseite vom Werkzeugx -xy -yR1 R2R2 R1

Hinweis

Die beiden Bahnachsen sind so zu konfigurieren, dass 360 Achs-Einheiten ( d.h. mm, Grad, usw.) eine Scheibenumdrehung ergeben. Die Einstellung "Modulo-Achse" ist zu vermeiden. Siehe Einheiten (Seite 23) und Modulo-Eigenschaften (Seite 22).

Tabelle 3-3 Konfigurationsdaten für die Rollen-Picker-2D-Kinematik

typeOfKinematics: ROLL_PICKER Kinematik-Typ Rollen-Picker 2DbasicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der x-KoordinatebasicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der y-KoordinatebasicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)Die Achse 3 ist beim Rollen-Picker 2D nicht vorhanden.config2D Hauptebene der Bahnachsen

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation70 Funktionshandbuch, 01/2015

Page 71: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Tabelle 3-4 Angabe des Radius der Scheiben auf den Motoren in:

radius1 Scheibenradius bei Bahnachse 1radius2 Scheibenradius bei Bahnachse 2

Tabelle 3-5 Mögliche Gelenkstellungsräume

LinkConstellation ohne Bedeutung (immer 1)

3.13.3.5 Rollen-Picker 3D

Allgemein

Bild 3-45 Kinematik Rollen-Picker 3D bei Rollen-Picker in der z-x-Ebene

Beim Rollen-Picker 3D handelt es sich um einen Rollen-Picker 2D, der über eine zusätzliche Linearachse in eine weitere kartesische Koordinatenrichtung bewegt werden kann. Sie können den Rollen-Picker 3D, wie den Rollen-Picker 2D, in allen drei Hauptebenen einstellen. Die dritte Bahnachse verläuft dann in die dritte kartesische Richtung. Im Beispiel ist der Rollen-Picker in der z-x-Ebene eingestellt.

A1 und A2 sind im Beispielbild die beiden Achsen des Rollen-Pickers. Die Linearachse A3 wird durch den Pfeil in y-Richtung angedeutet.

Weitere Informationen finden Sie auch bei der Dokumentation des Rollen-Picker 2D (Seite 69).

Tabelle 3-6 Konfigurationsdaten für die Rollen-Picker-3D-Kinematik

typeOfKinematics: ROLL_PICKER_3D Kinematik-Typ Rollen-Picker 3DbasicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der x-KoordinatebasicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der y-Koordinate

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 71

Page 72: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

basicOffset.z Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der z-Koordinate

basicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)basicOffset.yaw Rotation um z (Yaw)config2D Hauptebene der BahnachsenAngabe des Radius der Scheiben auf den Motoren in:radius1 Scheibenradius bei Bahnachse 1radius2 Scheibenradius bei Bahnachse 2

Tabelle 3-7 Mögliche Gelenkstellungsräume

LinkConstellation ohne Bedeutung (immer 1)

3.13.3.6 Delta-Picker 2D

Allgemein

Bild 3-46 Kinematik Delta-Picker 2D (beispielhaft für die x-y-Ebene)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation72 Funktionshandbuch, 01/2015

Page 73: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Definitionen● Die gesamte Struktur befindet sich in einer der 2D-Hauptebenen. Für alle folgenden

Ausführungen wird beispielhaft die x-y-Ebene genutzt.

● A1 und A2 bezeichnen die beiden aktiven Antriebsachsen der kinematischen Struktur. Sie liegen auf der Geraden y = 0 und sind durch den Abstand 2x distanceD1 voneinander getrennt. Ihre Nulllage innerhalb der kinematischen Struktur entspricht der Ausrichtung der oberen Armsegmente (length1) in Richtung der negativen y-Achse. Positive Auslenkungen erfolgen wie in der Abbildung dargestellt.

● Es wird davon ausgegangen, dass stets eine horizontale Ausrichtung der unteren Verbindungsplatte zwischen G3 und G4 stattfindet.Somit ergeben sich yG3 = yG4 und ein horizontaler Abstand von 2x distanceD2.

● Die Nullstellung der Kinematik liegt bei xZP = yZP = 0 mittig zwischen den Antriebsachsen A1 und A2.

● Der Zielpunkt der direkten Transformation ist mit seinen Koordinaten xEP und yEP mittig zwischen G3 und G4 definiert. Dadurch ergibt sich die Position zu G3 = (xEP-distanceD2; yEP) sowie G4 = (xEP+distanceD2; yEP).

Tabelle 3-8 Konfigurationsdaten für die Delta-Picker-2D-Kinematik

typeOfKinematics: DELTA_2D_PICKER

Kinematik-Typ Delta-Picker 2D

basicOffset Verschiebung des Kinematik-Nullpunktes (ZP) zum kartesi‐schen Nullpunkt

basicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der x-Koordinate

basicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der y-Koordinate

basicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)Die Achse 3 ist beim Delta-Picker 2D nicht vorhanden.config2D Hauptebene der Bahnachsenlength1 Länge des oberen Armsegmentes length2 Länge des unteren Armsegmentes distanceD1 Abstand der Antriebsachsen A1 und A2 vom Kinematik-Null‐

punkt (ZP)distanceD2 Abstand der Gelenke G3 und G4 vom Endpunkt (EP)offsetA1 Offset der Antriebsachse A1offsetA2 Offset der Antriebsachse A2

Tabelle 3-9 Mögliche Gelenkstellungsräume

Die folgenden Winkel sind immer bezogen auf die Direktausrichtung φ0 von aktiver Achse zum Ziel‐punkt.LinkConstellation 1 Winkel der Achse A1 im Bereich von [-180°, 0°].

Winkel der Achse A2 im Bereich von [0°, 180°].

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 73

Page 74: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

2 Winkel der Achse A1 im Bereich von (0°, 180°).Winkel der Achse A2 im Bereich von [0°, 180°].

3 Winkel der Achse A1 im Bereich von (0°, 180°).Winkel der Achse A2 im Bereich von (-180°, 0°).

4 Winkel der Achse A1 im Bereich von [-180°, 0°].Winkel der Achse A2 im Bereich von (-180°, 0°).

Axr

xr

Bild 3-47 Veranschaulichung der Gelenkstellung anhand einer einzelnen Achse

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation74 Funktionshandbuch, 01/2015

Page 75: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13.3.7 Delta-Picker 3D

Allgemein

x+

y+

G1

G2

length1

length1

length1

distanceD1

G3

Bild 3-48 Kinematik Delta-Picker 3D (Ansicht von oben)

x+

y+

G1

G2

G3

G6

G4

G5

Bild 3-49 Kinematik Delta-Picker 3D (Ansicht von unten)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 75

Page 76: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

G4

G1

x

z+

Bild 3-50 Kinematik Delta-Picker 3D (Einzelarm am Beispiel Achse A1)

Definitionen ● A1, A2 und A3 bezeichnen die drei aktiven Antriebsachsen der kinematischen Struktur. Sie

liegen in der x-y-Ebene mit z = 0 und besitzen alle den Abstand distanceD1 vom Kinematik-Nullpunkt (ZP). Ihre Nulllage innerhalb der kinematischen Struktur entspricht der direkten Ausrichtung der oberen Armsegmente (length1) in Richtung der negativen z-Achse. Positive Auslenkungen erfolgen, wie im vorigen Bild dargestellt, entgegen dem Uhrzeigersinn.

● G1 bis G6 kennzeichnen frei bewegliche Gelenke.

● Es wird davon ausgegangen, dass sich die Verbindung der Gelenke am Endpunkt (EP) aufgrund der Parallelverstrebungen horizontal ausrichtet. Somit ergibt sich yG4 = yG5 = yG6. G4 bis G6 besitzen alle den horizontalen Abstand distanceD2 vom Endpunkt (EP).

● Die Nullstellung der Kinematik liegt bei xZP = yZP = zZP = 0 zentral zwischen den Antriebsachsen A1 bis A3.

● Der Zielpunkt der Transformation ist mit seinen Koordinaten xEP, yEP und zEP zentral zwischen G4 bis G6 definiert.

Tabelle 3-10 Konfigurationsdaten für die Delta-Picker-3D-Kinematik

typeOfKinematics: DELTA_3D_PI‐CKER

Kinematik-Typ Delta-Picker 3D

basicOffset Verschiebung des Kinematik-Nullpunktes (ZP) zum kartesi‐schen Nullpunkt

basicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der x-Koordinate

basicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der y-Koordinate

basicOffset.z Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der z-Koordinate

basicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation76 Funktionshandbuch, 01/2015

Page 77: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

basicOffset.yaw Rotation um z (Yaw)length1 Länge des oberen Armsegmentes length2 Länge des unteren Armsegmentes distanceD1 Abstand der Antriebsachsen A1 bis A3 vom Kinematik-Null‐

punkt (ZP)distanceD2 Abstand der Gelenke G4 bis G6 vom Endpunkt (EP)offsetA1 Offset der Antriebsachse A1offsetA2 Offset der Antriebsachse A2offsetA3 Offset der Antriebsachse A3angleArm1ToX Winkelversatz des Armes A1-G1-G4 gegenüber der x-Achse

bei Drehung um die positive z-Achse angleArm2ToArm1 Winkelversatz des Armes A2-G2-G5 gegenüber dem Arm A1-

G1-G4 bei Drehung um die positive z-Achse angleArm3ToArm1 Winkelversatz des Armes A3-G3-G6 gegenüber dem Arm A1-

G1-G4 bei Drehung um die positive z-Achse

Tabelle 3-11 Mögliche Gelenkstellungsräume

Die folgenden Winkel sind immer bezogen auf die Direktausrichtung φ0 von aktiver Achse zum Ziel‐punkt.LinkConstellation 1 Winkel der Achse A1 im Bereich von [0°, 180°].

Winkel der Achse A2 im Bereich von [0°, 180°].Winkel der Achse A3 im Bereich von [0°, 180°].

2 Winkel der Achse A1 im Bereich von (-180°, 0°).Winkel der Achse A2 im Bereich von [0°, 180°].Winkel der Achse A3 im Bereich von [0°, 180°].

3 Winkel der Achse A1 im Bereich von [0°, 180°].Winkel der Achse A2 im Bereich von (-180°, 0°).Winkel der Achse A3 im Bereich von [0°, 180°].

4 Winkel der Achse A1 im Bereich von [0°, 180°].Winkel der Achse A2 im Bereich von [0°, 180°].Winkel der Achse A3 im Bereich von (-180°, 0°).

5 Winkel der Achse A1 im Bereich von (-180°, 0°).Winkel der Achse A2 im Bereich von (-180°, 0°).Winkel der Achse A3 im Bereich von [0°, 180°].

6 Winkel der Achse A1 im Bereich von (-180°, 0°).Winkel der Achse A2 im Bereich von [0°, 180°].Winkel der Achse A3 im Bereich von (-180°, 0°).

7 Winkel der Achse A1 im Bereich von [0°, 180°].Winkel der Achse A2 im Bereich von (-180°, 0°).Winkel der Achse A3 im Bereich von (-180°, 0°).

8 Winkel der Achse A1 im Bereich von (-180°, 0°).Winkel der Achse A2 im Bereich von (-180°, 0°).Winkel der Achse A3 im Bereich von (-180°, 0°).

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 77

Page 78: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Eine Veranschaulichung der möglichen Gelenkstellungen einer einzelnen Achse finden Sie beim Delta-Picker 2D (Seite 72).

3.13.3.8 SCARA-Kinematik

Allgemein

Bild 3-51 SCARA: Darstellung des Achssystems

A 3

A 1 A 2 EP

dx,y,z

d A1A2 d A2EP

x+

y+

z+

Bild 3-52 SCARA: Kinematik

Der Kinematik-Nullpunkt liegt im Punkt A1.

Die Nulllagen der Achsen A1 und Achse A2 sind wie folgt:

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation78 Funktionshandbuch, 01/2015

Page 79: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-53 SCARA: Nulllagen

Der Definitionsbereich der Einzelachsen A1 und A2 wird begrenzt auf [-180°; 180°).

Gelenkkompensationen

A 1 A 2

EP

d A1A2

d x,y,z

A 4

d A2EP

AP

A 3

x+

y+

z+

Bild 3-54 SCARA: Kinematik mit Gelenkkompensation

AchskopplungenEs können mechanische Kopplungen vorliegen:

● zwischen A1 und A2

● zwischen A1, A2 und Asynchron (A4)

● zwischen Asynchron (A4) und A3

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 79

Page 80: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Folgende Achskopplungen sind über das System kompensierbar:

● eine Kopplung von Achse A1 auf Achse A2

● eine Kopplung von Achse A1 und Achse A2 auf die bahnsynchron mitgeführte Achse A4D. h. entsprechend den Veränderungen von A1 und A2 wird auch der Sollwert der Achse A4 an die Positionierachse geändert.Wird Achse A1 und/oder Achse A2 verfahren und parallel eine bahnsynchrone Bewegung in w vorgegeben, erfolgt im System eine Überlagerung / Addition von bahnsynchroner Bewegungsvorgabe und Kompensation an die Positionierachse.

● eine Kopplung der Achse A4 auf die Achse A3 (Hubachse)Wird die Achse A3 über die Bahnbewegung verfahren und ist gleichzeitig eine Kompensation von w nach Achse A3 erforderlich, erfolgt eine Überlagerung der Vorgaben.

Die Kompensationsfunktionalität und die Vorgaben der bahnsynchronen Achse w über die bahnsynchronen Bewegung sind voneinander unabhängig und werden vom System gleichzeitig ausgeführt.

Wirkrichtung der AchskopplungFür die Kopplung von Achse A1 auf Achse A2 sowie von Achse A4 auf Achse A3 gilt:

Bei einem Kopplungsfaktor > 0.0 geht die Transformation davon aus, dass eine positive Bewegung der ersten Achse zu einer negativen Bewegung an der zweiten Achse führt.

Für die Kopplung von Achse A1 auf Achse A4 sowie von Achse A2 auf Achse A4 gilt:

Bei einem Kopplungsfaktor > 0.0 geht die Transformation davon aus, dass eine positive Bewegung der ersten Achse zu einer positiven Bewegung an der zweiten Achse führt.

Die Kopplung zwischen Achse A4 und Achse A3 ist als Spindelsteigung realisiert, d.h. bei einem Kopplungsfaktor von +1.0 entsprechen 360.0 Grad an Achse A4 einem Weg von -1.0 mm an Achse A3.

Tabelle 3-12 Konfigurationsdaten für die SCARA-Kinematik

typeOfKinematics: SCARA Kinematik-Typ SCARAbasicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der x-KoordinatebasicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der y-KoordinatebasicOffset.z Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der z-KoordinatebasicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)basicOffset.yaw Rotation um z (Yaw)offsetA1 Verschiebung des Achsnullpunktes der Achse A1 zur Nulllage

der Achse A1 in der TransformationdistanceA1A2 Abstand A1 - A2offsetA2 Verschiebung des Achsnullpunktes der Achse A2 zur Nulllage

der Achse A2 in der TransformationdistanceA2Endpoint Abstand A2 - EndpunktlinkCompensationA2.enableA1A2 Gelenkstellungsabhängigkeit A1 auf A2 kompensierenlinkCompensationA2.factorA1A2 Kopplungsfaktor für die Kompensation auf Achse A2

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation80 Funktionshandbuch, 01/2015

Page 81: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

linkCompensationA4.enableA1A4 Gelenkstellungsabhängigkeit A1 auf A4 kompensierenlinkCompensationA4.factorA1A4 Kopplungsfaktor für die Kompensation auf Achse A4linkCompensationA4.enableA2A4 Gelenkstellungsabhängigkeit A2 auf A4 kompensierenlinkCompensationA4.factorA2A4 Kopplungsfaktor für die Kompensation auf Achse A4linkCompensationA3.enableA4A3 Gelenkstellungsabhängigkeit A4 auf A3 kompensierenlinkCompensationA3.factorA4A3 Kopplungsfaktor für die Kompensation auf Achse A3

Tabelle 3-13 Mögliche Gelenkstellungsräume

LinkConstellation 1 Gelenkstellung positiv: Winkel der Achse A2 im Bereich von [0°, 180°) bezogen auf den Kinematik-Nullpunkt

2 Gelenkstellung negativ: Winkel der Achse A2 im Be‐reich von [-180°, 0°) bezogen auf den Kinematik-Null‐punkt

Bild 3-55 Mögliche Gelenkstellungen

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 81

Page 82: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13.3.9 Gelenkarm-2D-Kinematik

Allgemein

Bild 3-56 Gelenkarm 2D: Darstellung der Achsen

Tabelle 3-14 Konfigurationsdaten für die Gelenkarm-2D-Kinematik

typeOfKinematics:ARTICULATED_ARM_2D Kinematik-Typ Gelenkarm 2DbasicOffset.x Verschiebung des Kinematik-Nullpunktes zum kar‐

tesischen Nullpunkt bzgl. der x-KoordinatebasicOffset.y Verschiebung des Kinematik-Nullpunktes zum kar‐

tesischen Nullpunkt bzgl. der y-KoordinatebasicOffset.z Verschiebung des Kinematik-Nullpunktes zum kar‐

tesischen Nullpunkt bzgl. der z-KoordinatebasicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)basicOffset.yaw Rotation um z (Yaw)config2D Hauptebene der BahnachsenlinkCompensationA2.enableA1A2 Gelenkstellungsabhängigkeit A1 auf A2 kompen‐

sierenlinkCompensationA2.factorA1A2 Kopplungsfaktor für die Kompensation auf Achse

A2distanceA1A2 Abstand A1 - A2offsetA1 WinkeloffsetoffsetA2 Winkeloffset

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation82 Funktionshandbuch, 01/2015

Page 83: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Tabelle 3-15 Mögliche Gelenkstellungsräume

LinkConstellation 1 Winkel der Achse A2 im Bereich von [0°, 180°) bezogen auf den Kinematik-Nullpunkt

2 Winkel der Achse A2 im Bereich von [-180°, 0°) bezo‐gen auf den Kinematik-Nullpunkt

3.13.3.10 Gelenkarm-3D-Kinematik

Allgemein

Bild 3-57 Gelenkarm 3D: Darstellung der Achsen

Bild 3-58 Gelenkarm 3D: Kinematik

Der Kinematik-Nullpunkt liegt im Punkt A1.

Die Nullstellung der Kinematik liegt vor, wenn distanceA1A2, distanceA2A3 und distanceA3EP in die kartesische x-Richtung zeigen.

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 83

Page 84: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-59 Gelenkarm 3D: Nulllagen der Achsen A2 und A3

Bild 3-60 Gelenkarm 3D: Nulllage der Achse A1

Der Definitionsbereich der Einzelachsen A1 bis A3 wird begrenzt auf [-180°; 180°).

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation84 Funktionshandbuch, 01/2015

Page 85: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

AchskopplungenWird ein positiver Kopplungsfaktor zwischen zwei Achsen angegeben, geht die Transformation davon aus, dass eine positive Bewegung an der ersten Achse zu einer negativen Bewegung an der zweiten Achse führt.

Tabelle 3-16 Konfigurationsdaten für die Gelenkarm-3D-Kinematik

typeOfKinematics: ARTICULA‐TED_ARM

Kinematik-Typ Gelenkarm 3D

basicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der x-Koordinate

basicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der y-Koordinate

basicOffset.z Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der z-Koordinate

basicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)basicOffset.yaw Rotation um z (Yaw)offsetA1 Offset Achsnullpunkt Achse A1 gegen Nulllage der Achse A1

in der TransformationdistanceA1A2 Abstand A1 - A2offsetA2 Offset Achsnullpunkt Achse A2 gegen Nulllage der Achse A2

in der TransformationdistanceA2A3 Abstand A2 - A3offsetA3 Offset Achsnullpunkt Achse A3 gegen Nulllage der Achse A3

in der TransformationdistanceA3Endpoint Abstand A3 - EndpunktlinkCompensation.enableA2A3 Gelenkstellungsabhängigkeit A3 von A2 kompensierenlinkCompensation.factorA2A3 Kopplungsfaktor für die Kompensation auf Achse A2

Tabelle 3-17 Mögliche Gelenkstellungsräume

LinkConstellation 1 Winkel der Achse A3 im Bereich von [0°, 180°) bezogen auf den Kinematik-NullpunktWinkel der Achse A1 entspricht atan(EPy/EPx)

2 Winkel der Achse A3 im Bereich von [-180°, 0°) bezo‐gen auf den Kinematik-NullpunktWinkel der Achse A1 entspricht atan(EPy/EPx)

3 Winkel der Achse A3 im Bereich von [0°, 180°) bezogen auf den Kinematik-NullpunktWinkel der Achse A1 entspricht –atan(EPy/EPx)

4 Winkel der Achse A3 im Bereich von [-180°, 0°) bezo‐gen auf den Kinematik-NullpunktWinkel der Achse A1 entspricht –atan(EPy/EPx)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 85

Page 86: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13.3.11 Schwenkarm-2D-Kinematik

Schwenkarm-2D-Kinematik

Bild 3-61 Darstellung der Achsen

Schwenkarm 2DDie Programmierung bei der Schwenkarmkinematik erfolgt auf der durch die Kinematik erreichbare Mantelfläche.

x

A4

A1

yA2

x

A4

A1

yA2

xA1

A2 A4

y

xA1

A2 A4

y

Bild 3-62 Arbeitsbereich der Kinematik

Wird die Mantelfläche abgerollt, ergibt sich eine 2D-Ebene, die wie bei der Kinematik Kartesisch-2D (Seite 68) mit einer Koordinatenebene und Offsets parametriert werden kann. Es wirken dabei die Verschiebungen in der eingestellten Koordinatenebene und die Drehung um die senkrecht auf der Ebene stehenden Achse.

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation86 Funktionshandbuch, 01/2015

Page 87: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

xA1

A2 A4

y

x

y

z

xA1

A2 A4

y

xA1

A2 A4

y

x

y

z

x

y

z

Bild 3-63 Verschiebung und Rotation der Kinematik

Je nach verwendeter Ebene sind folgende Parameter wirksam:

Ebene X_Y:Verschiebung in x- und y-Richtung sowie Rotation um die z-Achse

Ebene Y_Z:Verschiebung in y- und z-Richtung sowie Rotation um die x-Achse

Ebene Z_X:Verschiebung in z- und x-Richtung sowie Rotation um die y-Achse

Die Verwendung der Rotation ist bei dieser Kinematik nicht sinnvoll.

Die Linkkompensationen LinkCompensationA1 sowie LinkCompensationA2 und das Winkeloffset offsetA1 am Drehgelenk A1 wirken wie bei der SCARA-Kinematik (Seite 78).

Eine Verwendung der Converyortrackingfunktion (siehe Bewegungsfolge am Bahnobjekt (Seite 98)) ist mit dieser Kinematik nicht sinnvoll.

Tabelle 3-18 Konfigurationsdaten für die Schwenkarm-2D-Kinematik

typeOfKinematics:SWIVEL ARM Kinematik-Typ Schwenkarm 2DbasicOffset.x

Verschiebung des Kinematik-Nullpunktes zum kar‐tesischen Nullpunkt bzgl. der x-Koordinate

basicOffset.y Verschiebung des Kinematik-Nullpunktes zum kar‐tesischen Nullpunkt bzgl. der y-Koordinate

basicOffset.z Verschiebung des Kinematik-Nullpunktes zum kar‐tesischen Nullpunkt bzgl. der z-Koordinate

basicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)basicOffset.yaw Rotation um z (Yaw)config2D Hauptebene der BahnachsenlinkCompensationA4.enableA1A4 Gelenkstellungsabhängigkeit A1 auf A4 kompen‐

sieren

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 87

Page 88: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

linkCompensationA4.factorA1A4 Kopplungsfaktor für die Kompensation auf Achse A4

linkCompensationA2.enableA4A2 Gelenkstellungsabhängigkeit A4 auf A2 kompen‐sieren

linkCompensationA2.factorA4A2 Kopplungsfaktor für die Kompensation auf Achse A2

distanceA1Endpoint Abstand A1 - EndpunktoffsetA1 Winkeloffset am Drehgelenk A1

3.13.3.12 Zylindrischer Roboter 3D

Allgemein

Bild 3-64 Zylindrischer Roboter 3D: Übersicht der Achsen

Bild 3-65 Zylindrischer Roboter 3D: Draufsicht und Darstellung der Achsen

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation88 Funktionshandbuch, 01/2015

Page 89: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Beim zylindrischen Roboter 3D wird eine der kartesischen Achsen durch eine Rundachse ersetzt. Der Arbeitsraum ist zylindrisch.

Definitionen● A1, A2, A3 und A4 bezeichnen die vier aktiven Antriebsachsen der kinematischen Struktur.

Dabei sind A1 und A4 Rundachsen und A2 und A3 Linearachsen.

● L1 bezeichnet den Abstand zwischen den Achsen A2 und A3. In Nulllage entspricht dies dem Abstand der Achse A3 zur x-Achse. Dieser Abstand hat somit auch Einfluss auf die Berechnung des Zielpunkts der Transformation. Positive Werte verlaufen in Richtung der y-Achse. In der Draufsicht oben ist der Wert von L1 daher negativ.

● Der Definitionsbereich der Achse A1 ist begrenzt auf [-180°; 180°).

AchskopplungenEs können mechanische Kopplungen vorliegen:

● zwischen A1 und A4

● zwischen A4 und A2

Folgende Achskopplungen sind über das System kompensierbar:

● eine Kopplung von Achse A1 auf Achse A4

● eine Kopplung von Achse A4 auf Achse A2

Wirkrichtung der AchskopplungFür die Kopplung von Achse A1 auf Achse A4 gilt:

Bei einem Kopplungsfaktor > 0.0 geht die Transformation davon aus, dass eine positive Bewegung der ersten Achse zu einer positiven Bewegung an der zweiten Achse führt.

Für die Kopplung von Achse A4 auf Achse A2 gilt:

Bei einem Kopplungsfaktor > 0.0 geht die Transformation davon aus, dass eine positive Bewegung der ersten Achse zu einer negativen Bewegung an der zweiten Achse führt.

Die Kopplung zwischen Achse A4 und Achse A2 ist als Spindelsteigung realisiert, d.h. bei einem Kopplungsfaktor von +1.0 entsprechen 360.0 Grad an Achse A4 einem Weg von -1.0 mm an Achse A2.

Tabelle 3-19 Konfigurationsdaten für die zylindrische 3D-Kinematik

typeOfKinematics: CYLINDRICAL Kinematik-Typ Zylindrischer Roboter 3DbasicOffset Verschiebung des Kinematik-Nullpunktes (ZP) zum kartesi‐

schen NullpunktbasicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der x-KoordinatebasicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der y-KoordinatebasicOffset.z Verschiebung des Kinematik-Nullpunktes zum kartesischen

Nullpunkt bzgl. der z-KoordinatebasicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 89

Page 90: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

basicOffset.yaw Rotation um z (Yaw)distanceA2A3 Abstand von Achse A2 zu Achse A3offsetA1 Winkeloffset der Drehachse A1linkCompensation.enableA1A4 Gelenkstellungsabhängigkeit von Achse A1 auf Achse A4

kompensierenlinkCompensation.factorA1A4 Kopplungsfaktor für die Kompensation auf Achse A4linkCompensation.enableA4A2 Gelenkstellungsabhängigkeit von Achse A4 auf Achse A2

kompensierenlinkCompensation.factorA4A2 Kopplungsfaktor für die Kompensation auf Achse A2

3.13.3.13 2D/3D Anwenderfunktion

AllgemeinDie Kinematik 2D/3D Anwenderfunktion ermöglicht die Verwendung einer vom Anwender bereitgestellten Transformationsfunktion. Diese Anwenderfunktion wird in ST-Notation erstellt und über eine Hook-Schnittstelle im TO-Ablaufkontext ausgeführt. Über die am TO bereitgestellte Hook-Schnittstelle kann kompilierter ST-Code im TO-Ablaufkontext ausgeführt werden.

Das Funktionsinterface für die 2D/3D Anwenderfunktion in ST ist fest definiert. Die Eingangsparameter werden vom TO geschrieben und die berechneten Ausgangswerte von der ST-Funktion.

Hook-SchnittstelleFür die Vorwärts- und Rückwärtstransformation sind zwei unterschiedliche Schnittstellen definiert. Jede der beiden Transformationsrichtungen wird also von einer Funktion realisiert.

Tabelle 3-20 FC-Eingangsparameter für die Vorwärtstransformation

Name Typ Beschreibunga1Position LREAL Position Achse 1a1Velocity LREAL Geschwindigkeit Achse 1a1Acceleration LREAL Beschleunigung Achse 1a2Position LREAL Position Achse 2a2Velocity LREAL Geschwindigkeit Achse 2a2Acceleration LREAL Beschleunigung Achse 2a3Position LREAL Position Achse 3a3Velocity LREAL Geschwindigkeit Achse 3a3Acceleration LREAL Beschleunigung Achse 3a4Position LREAL Position Achse 4a4Velocity LREAL Geschwindigkeit Achse 4a4Acceleration LREAL Beschleunigung Achse 4pathObject _PathObjectType Instanz des Bahnobjekts

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation90 Funktionshandbuch, 01/2015

Page 91: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Name Typ BeschreibungexecutionContext EnumPathObjectTransformationContext Bearbeitungskontext

TO_INTERPOLATION_CYCLE: FC-Auf‐ruf für eine Berechnung der Transforma‐tion im Interpolationstakt, z.B. bei der BahninterpolationNON_CYCLIC: FC-Aufruf für eine nicht‐zyklische Berechnung der Transformati‐on, z.B. bei einer Auskunftsfunktion

kinematicsConfigData Array [1..32] Benutzerdefinierte Konfigurationsdaten (entspricht dem Konfigurationsdatum parameter)

userTrafoID UDINT Kennung der anwenderdefinierten Koor‐dinatentransformation (entspricht dem Konfigurationsdatum userTrafoId)

kinematicsType EnumPathUserKinematicsType Einstellung der Kinematik für die Anwen‐derfunktion (_2D oder _3D)

config2D EnumPathKinematicsConfig2D Hauptebene der Bahnachsen (wird für die 3D-Anwenderfunktion ignoriert). Mögliche Werte sind X_Y, Y_Z und Z_X)

Tabelle 3-21 FC-Ausgangsparameter für die Vorwärtstransformation

Name Typ BeschreibungfunctionResult DINT Funktionsergebnis

0: OK, Geschwindigkeit und Beschleu‐nigung wurden nicht berechnet1: OK, Geschwindigkeit und Beschleu‐nigung wurden berechnetAndere Werte: Fehler

xPosition LREAL X-Komponente der PositionxVelocity LREAL X-Komponente der GeschwindigkeitxAcceleration LREAL X-Komponente der BeschleunigungyPosition LREAL Y-Komponente der PositionyVelocity LREAL Y-Komponente der GeschwindigkeityAcceleration LREAL Y-Komponente der BeschleunigungzPosition LREAL Z-Komponente der PositionzVelocity LREAL Z-Komponente der GeschwindigkeitzAcceleration LREAL Z-Komponente der BeschleunigungwPosition LREAL W-Komponente der PositionwVelocity LREAL W-Komponente der GeschwindigkeitwAcceleration LREAL W-Komponente der BeschleunigunglinkConstellation DINT Gelenkstellung

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 91

Page 92: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Tabelle 3-22 FC-Eingangsparameter für die Rückwärtstransformation

Name Typ BeschreibungxPosition LREAL X-Komponente der PositionxVelocity LREAL X-Komponente der GeschwindigkeitxAcceleration LREAL X-Komponente der BeschleunigungyPosition LREAL Y-Komponente der PositionyVelocity LREAL Y-Komponente der GeschwindigkeityAcceleration LREAL Y-Komponente der BeschleunigungzPosition LREAL Z-Komponente der PositionzVelocity LREAL Z-Komponente der GeschwindigkeitzAcceleration LREAL Z-Komponente der BeschleunigungwPosition LREAL W-Komponente der PositionwVelocity LREAL W-Komponente der GeschwindigkeitwAcceleration LREAL W-Komponente der Beschleunigungw2Position LREAL W2-Komponente der Position (Bahnlän‐

ge)w2Velocity LREAL W2-Komponente der Geschwindigkeitw2Acceleration LREAL W2-Komponente der BeschleunigunglinkConstellation DINT GelenkstellungpathObject _PathObjectType Instanz des BahnobjektsexecutionContext EnumPathObjectTransformationContext Bearbeitungskontext

TO_INTERPOLATION_CYCLE: FC-Auf‐ruf für eine Berechnung der Transforma‐tion im Interpolationstakt, z.B. bei der BahninterpolationNON_CYCLIC: FC-Aufruf für eine nicht‐zyklische Berechnung der Transformati‐on, z.B. bei einer Auskunftsfunktion

kinematicsConfigData Array [1..32] Benutzerdefinierte Konfigurationsdaten (entspricht dem Konfigurationsdatum parameter)

userTrafoID UDINT Kennung der anwenderdefinierten Koor‐dinatentransformation (entspricht dem Konfigurationsdatum userTrafoId)

kinematicsType EnumPathUserKinematicsType Einstellung der Kinematik für die Anwen‐derfunktion (_2D oder _3D)

config2D EnumPathKinematicsConfig2D Hauptebene der Bahnachsen (wird für die 3D-Anwenderfunktion ignoriert). Mögliche Werte sind X_Y, Y_Z und Z_X)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation92 Funktionshandbuch, 01/2015

Page 93: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Tabelle 3-23 FC-Ausgangsparameter für die Rückwärtstransformation

Name Typ BeschreibungfunctionResult DINT Funktionsergebnis

0: OK, Geschwindigkeit und Beschleu‐nigung wurden nicht berechnet1: OK, Geschwindigkeit und Beschleu‐nigung wurden berechnetAndere Werte: Fehler

a1Position LREAL Position Achse 1a1Velocity LREAL Geschwindigkeit Achse 1a1Acceleration LREAL Beschleunigung Achse 1a2Position LREAL Position Achse 2a2Velocity LREAL Geschwindigkeit Achse 2a2Acceleration LREAL Beschleunigung Achse 2a3Position LREAL Position Achse 3a3Velocity LREAL Geschwindigkeit Achse 3a3Acceleration LREAL Beschleunigung Achse 3a4Position LREAL Position Achse 4a4Velocity LREAL Geschwindigkeit Achse 4a4Acceleration LREAL Beschleunigung Achse 4

HinweisDer Ausgangsparameter functionResult

Der Anwender muss den Ausgangsparameter functionResult auf 1 setzen, wenn in den FCs neben den Positionen auch die Geschwindigkeiten und Beschleunigungen berechnet werden. Wird der Parameter nicht explizit gesetzt so entspricht er dem Wert 0. In diesem Fall werden nur die berechneten Positionswerte des FCs berücksichtigt,

HinweisEinheiten für die Schnittstellenvariablen

Alle Variablen an der Schnittstelle liegen in den eingestellten Anwendereinheiten vor.

FunktionserstellungDie Transformationsfunktionen können in der Programmiersprache ST erstellt werden. Um die Funktionen für die Transformation nutzen zu können, muss ein Pragma mit Attribut eingestellt werden.ToHookApplicable := YES | NOFalls das Pragma gesetzt ist, sind nur bestimmte Operationen zulässig.

Zugelassene Operationen

● numerische und logische Standardfunktionen

● Zugriffe auf Bits in Bitstrings

● Standardfunktionen zur Datentypkonvertierung

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 93

Page 94: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

● Konvertierung zwischen beliebigen Datentypen und Byte-Feldern

● Zusammenfassung von Bitstring-Datentypen

● Funktionen zur Überprüfung von Gleitpunktzahlen

● Auswahlfunktionen

● Zugriff auf globale Variablen

● Konsistenter Zugriff auf globale Variablen abgeleiteter Datentypen (UDT)

● Bestimmung der Speichergröße einer Variable bzw. eines Datentyps

Nicht zugelassene Operationen

● Systemfunktionen auf TO

● Zugriffsfunktionen auf TO (Konfigdaten, Systemvariablen)

● Zugriffsfunktionen auf IO-Daten und IO-Container

● Systemfunktionen auf Geräte

● Standardfunktionen zum Ansteuern von Peripheriebaugruppen und Antriebskomponenten

● Systemfunktionen zum Ansteuern von Achsen nach PLCopen

● Datensicherung und -initialisierung aus Anwenderprogramm

● Kommunikationsfunktionen

● Systemfunktionsbausteine (beispielsweise Zähler, Flankengeber oder Zeitgeber)

● Marshalling

● String-Bearbeitung

● Wandlung von Datentypen technologischer Objekte

Hinweis

In den Funktionen des Anwenderprogramms ist beim Arbeiten mit der freien Transformationsschnittstelle sicherzustellen, dass Gleitkomma-Funktionsaufrufe (z.B. ACOS) mit gültigen Werten aufgerufen werden.

BeispielIm Folgenden finden Sie ein Minimalbeispiel für die FCs der Vorwärts- und Rückwärtstransformation.

VorwärtstransformationFUNCTION FC_trans_Direct_Real :StructPathDirectUserTransformationOut{ToHookApplicable:= YES} VAR_INPUT ParIn : StructPathDirectUserTransformationIn; END_VAR

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation94 Funktionshandbuch, 01/2015

Page 95: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Vorwärtstransformation FC_trans_Direct_Real.xPosition := ParIn.a1Position; FC_trans_Direct_Real.yPosition := ParIn.a2Position; FC_trans_Direct_Real.zPosition := ParIn.a3Position; FC_trans_Direct_Real.wPosition := ParIn.a4Position; FC_trans_Direct_Real.functionResult := 0;END_FUNCTION

RückwärtstransformationFUNCTION FC_trans_Inverse_Real :StructPathInverseUserTransformationOut{ToHookApplicable:= YES} VAR_INPUT ParIn : StructPathInverseUserTransformationIn; END_VAR FC_trans_Inverse_Real.a1Position := ParIn.xPosition; FC_trans_Inverse_Real.a2Position := ParIn.yPosition; FC_trans_Inverse_Real.a3Position := ParIn.zPosition; FC_trans_Inverse_Real.a4Position := ParIn.wPosition; FC_trans_Inverse_Real.functionResult := 0;END_FUNCTION

LaufzeitDie Laufzeit zur Ausführung der Anwendertransformationsfunktion geht mit in die Laufzeit des IPO-Systemtasks ein. Weitere Informationen zu Überwachungen und Einstellungen des IPO-Systemtasks finden Sie im Handbuch Basisfunktionen im Kapitel Ablaufsystem/Tasks/Systemtakte.

BreakpointsFür die FCs der Anwendertransformationsfunktion werden Breakpoints ignoriert.

Definitionen

Tabelle 3-24 Konfigurationsdaten für die anwenderspezifische Koordinatentransformation

typeOfKinematics: USER_FUNCTION Kinematik-Typ 2D/3D AnwenderfunktionkinematicsType Einstellung der Kinematik für die Anwenderfunktion

● _2D: 2D-Programmierung in einer Ebene● _3D: 3D-Programmierung im Raum

basicOffset Verschiebung des Kinematik-Nullpunktes (ZP) zum kartesi‐schen Nullpunkt

basicOffset.x Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der x-Koordinate

basicOffset.y Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der y-Koordinate

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 95

Page 96: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

basicOffset.z Verschiebung des Kinematik-Nullpunktes zum kartesischen Nullpunkt bzgl. der z-Koordinate

basicOffset.roll Rotation um x (Roll)basicOffset.pitch Rotation um y (Pitch)basicOffset.yaw Rotation um z (Yaw)config2D Hauptebene der Bahnachsenparameter Bis zu 32 benutzerdefinierte Parameter für die TransformationuserTrafoID Kennung der anwenderdefinierten Koordinatentransformati‐

on

3.13.3.14 Verwendung von virtuellen AchsenFalls Sie eine Kinematik einrichten wollen, die auf eine vorhandene Kinematik abbildbar ist, aber nicht alle Achsen dieser Kinematik als reale Achsen verwendet, müssen Sie die fehlenden Achsen als virtuelle Bahnachsen anlegen und verschalten.

Als Beispiel: Die Gelenkarm-Kinematik sieht drei Achsen vor.

Bild 3-66 Gelenkarm-Kinematik: Achsen

● Achse A1: 1. Bahnachse

● Achse A2: 2. Bahnachse

● Achse A3: 3. Bahnachse

Falls Ihre Kinematik keine Achse für die 1. Bahnachse vorsieht, müssen Sie eine virtuelle Achse für die 1. Bahnachse anlegen und das Bahnobjekt damit verschalten. Das Bahnobjekt darf dann nur in der entsprechenden Hauptebene verfahren und verschoben werden.

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO Bahninterpolation96 Funktionshandbuch, 01/2015

Page 97: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.13.3.15 Spezifische Kinematiken

Kinematiktyp SPECIFICDer Kinematiktyp SPECIFIC ist über das Konfigurationsdatum typeOfKinematics einstellbar.

Beispiel der Einstellungen am BahnobjektKinematics.typeOfKinematics = SPECIFIC (6)

Die Kinematik und die erforderlichen Parameter können dann über die TrafoID und eine Parameterliste vorgegeben werden.

Siehe auchAnhang A (Seite 175)

Grundlagen Bahninterpolation3.13 Kinematikanpassung

TO BahninterpolationFunktionshandbuch, 01/2015 97

Page 98: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

3.14.1 Objektkoordinatensystem (OCS) am BahnobjektPositionsangaben in den Bewegungsbefehlen können ab V4.1.2 wahlweise auf das Basiskoordinatensystem (BCS) (bisher vorhandene Funktionalität) oder auf ein Objektkoordinatensystem (OCS) bezogen werden.

Die Bewegungsfolge ist ab V4.2 verfügbar.

Ein OCS kann dabei fest sein (statisches OCS) oder mit einem am trackingIn-Interface des Bahnobjekts bereitgestellten Bewegungswert mitgeführt werden.

Über das trackingIn-Interface kann ein Technologieobjekt, welches Bewegungsinformationen inkl. Position (den Bewegungsfolgebezugswert) bereitstellt, mit dem Bahnobjekt verschaltet werden. Dies kann z. B. ein Externer Geber oder eine Positionierachse sein.

Werden Bahnbewegungen auf ein OCS bezogen, dann können damit z. B. Produkte von einem bewegten Band aufgenommen oder diese dort abgelegt werden.

Hinweis

Bei aktiver Bewegungsfolge wird ein Überschleifen mit Dynamikadaption (blendingMode:= ACTIVE_WITH_DYNAMIC_ADAPTION) nicht unterstützt. Bewegungen, die mit Überschleifen programmiert wurden, werden dann ohne Überscheifen durchgeführt.

Am Bahnobjekt sind drei Objektkoordinatensysteme verfügbar und die Positionen des Arbeitspunktes werden im jeweiligen OCS angezeigt (siehe auch Systemvariable ocs).

OCS wirksamsetzenDie Bezugslage des OCS zum BCS wird über die Systemfunktion _setPathObjectOcs neu gesetzt. Die Vorbelegungswerte können in der SCOUT-Maske Objektkoordinatensysteme eingestellt werden. Allerdings werden diese Werte erst wirksam nachdem _setPathObjectOcs aufgerufen wurde. Die entsprechende Systemvariable für die Vorbelegungswerte ist userDefaultOcs.

Die Vorbelegungswerte können auch eingemessen (Seite 130) werden. Dabei werden die neuen Werte zunächst in userDefaultOcs geschrieben. Die Bezugslage der Objektkoordinatensysteme selbst wird nicht überschrieben. Dazu ist wieder der Aufruf von _setPathObjectOcs notwendig.Falls der Parameter ocsSettingType der Systemfunktion _setPathObjectOcs auf den Wert DIRECT gesetzt wird, können Werte für die Verschiebung und Rotation direkt angegeben werden.

Mitgeführtes OCSEin mitgeführtes OCS ist ein OCS, welches mit einem am trackingIn-Interface verschalteten Bewegungswert eines Technologieobjektes mitgeführt wird.

Statisches OCSEin statisches OCS ist ein OCS, welches nicht mit einem Bewegungswert mitgeführt wird. Die Position eines statischen OCS ist immer die OCS-Bezugslage.

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO Bahninterpolation98 Funktionshandbuch, 01/2015

Page 99: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Ein statisches OCS kann verwendet werden, um Bewegungen in einem Koordinatensystem durchzuführen, welches relativ zum BCS verschoben und gedreht worden ist.

BewegungsfolgeDie Funktionalität Bewegungsfolge ermöglicht das synchrone Mitfahren eines Kinematikendpunkts mit einem mitgeführten OCS. Sie beinhaltet die Funktionen zum Aufsynchronisieren und Mitfahren mit einem sich bewegenden Produkt auf einem Band.

3.14.2 Bewegungsfolge – Grundlagen

3.14.2.1 OCS-Bezugslage definierenDie Bezugslage des OCS wird gegenüber dem BCS im OCS-Basisframe definiert. Der OCS-Basisframe enthält die Verschiebung (Translation) der kartesischen x-, y- und z-Achsen und die anschließende Drehung (Rotation) um die einzelnen Achsen.

Um die Bezugslage des OCS zu definieren werden zuerst die Verschiebungen durchgeführt:

Bild 3-67 Verschiebung des OCS gegenüber dem BCS

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO BahninterpolationFunktionshandbuch, 01/2015 99

Page 100: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Danach werden die Drehungen in folgender Reihenfolge durchgeführt:

1. Roll um die x-Achse

2. Pitch um (die bereits gedrehte) y-Achse

3. Yaw um (die bereits doppelt gedrehte) z-Achse

Bild 3-68 Drehungen des OCS

Der Basisframe kann für jedes OCS am Bahnobjekt mit dem Befehl _setPathObjectOcs() gesetzt werden. Dabei können entweder die in den Systemvariablen voreingestellten Werte verwendet oder andere Werte direkt vorgegeben werden.

Definition der Begriffe

Bild 3-69 Schematische Darstellung der Bewegungsfolge

OCS ObjektkoordinatensystemBCS Basiskoordinatensystem

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO Bahninterpolation100 Funktionshandbuch, 01/2015

Page 101: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Frame Verschiebung und Verdrehung des OCS zum BCSBezugslage Position des OCS nach Verschiebung/Verdrehung gemäß

BasisframeBewegungsfolgebezugswert z. B. Istwert eines Externen GebersBewegungsfolgewert Aktuelle Lage des mitgeführten OCS bezogen auf die OCS-

BezugslageXOCS ,YOCS Verschiebung des Kinematikendpunkts zur Lage des mitge‐

führten OCS

3.14.2.2 OCS einem Bewegungsfolgebezugswert zuordnenDas eingangsseitige Verschaltungsinterface trackingIn des Bahnobjekts kann mit einem anderen TO verschaltet werden, welches ausgangsseitig ein Interface mit Bewegungsinformation bereitstellt. Dies kann u.a. der Bewegungssollwert oder -istwert einer Achse oder der Istwert eines Externen Gebers sein.

Der Bewegungsfolgewert und der Bewegungsfolgebezugswert werden der X-Richtung des OCS zugeordnet. Das OCS wird am Bewegungsfolgebezugswert mitgeführt, die OCS-Mitführlage wird um den Bewegungsfolgewert bzgl. der OCS-Bezugslage in X-Richtung des OCS verschoben.

Wird das OCS nicht verschaltet bzw. wird im Befehl _setPathObjectOcs() kein TO angegeben (trackingIn:=TO#NIL), dann wird das OCS in seiner Bezugslage wirksam.

Wenn der Kinematikendpunkt auf ein mitgeführtes OCS aufsynchronisiert wird oder bereits synchron zu diesem ist (trackingIn <> TO#NIL und trackingState <> INACTIVE), wird der Befehl _setPathObjectOCS() auf dieses OCS nicht ausgeführt und eine Fehlermeldung ausgegeben. Vor der Ausführung des Befehls muss der synchronisierte Zustand (Status 'SYNCHRONIZED') an diesem OCS beendet werden.

Siehe Das Mitfahren des Kinematikendpunktes an einem mitgeführten OCS beenden ('Absynchronisieren') (Seite 105) für weitere Informationen.

3.14.2.3 Verschiebung der Position des mitgeführten OCS definieren Da in der Regel eine produktbezogene Programmierung erfolgt, muss auch die Lage des OCS auf dem Band entsprechend der Produktposition angepasst, d.h. verschoben werden.

Die Verschiebung der Position des OCS in X-Richtung und damit in Richtung des Wertes am Bewegungsfolgeeingang erfolgt mit dem Befehl _redefinePathObjectOCS().

Wenn der Kinematikendpunkt auf ein mitgeführtes OCS aufsynchronisiert wird oder bereits synchron zu diesem ist (trackingIn <> TO#NIL und trackingState <> INACTIVE), wird der Befehl _redefinePathObjectOCS() auf dieses OCS nicht ausgeführt und die Fehlermeldung 30002 ausgegeben. Vor der Ausführung des Befehls muss der synchronisierte Zustand (Status SYNCHRONIZED) an diesem OCS beendet werden.

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO BahninterpolationFunktionshandbuch, 01/2015 101

Page 102: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Die aktuellen Postionswerte des mitgeführten OCS und des Bewegungsfolgeeingangs werden in folgenden Systemvariablen angezeigt:

● Bewegungsfolgebezugswert In der Systemvariable trackingInPosition wird der am Bewegungsfolgeeingang des OCS anliegende Positionswert, der Bewegungsfolgebezugswert (die Bandposition), angezeigt.

● Bewegungsfolgewert In der Systemvariable trackingPosition wird die Lage des mitgeführten OCS, der Bewegungsfolgewert, angezeigt.trackingPosition = trackingInPosition + Verschiebung

Bild 3-70 Aktuelle Position des OCS

Verhalten des OCS bei Modulo-GebernDer Bewegungsfolgewert zeigt den fortlaufenden Wert am Bewegungsfolgeeingang ohne Berücksichtigung der Modulo-Eigenschaft an, d.h. der Bewegungsfolgewert wird bei Rücksetzen des Bewegungsfolgebezugswertes am Modulobereichsende nicht zurückgesetzt, siehe folgendes Bild.

Bild 3-71 Verhalten von trackingPosition bei modulobehaftetem Wert in trackingInPosition

Zurücksetzen von trackingPosition Ein Setzen oder Verschieben von trackingPosition ist mit der Funktion _redefinePathObjectOCS() möglich, aber nur, wenn der Kinematikendpunkt nicht zu diesem

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO Bahninterpolation102 Funktionshandbuch, 01/2015

Page 103: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

OCS synchron ist oder gerade aufsynchronisiert wird (Anzeige über die Variable trackingState:=INACTIVE).

Das Verschieben von trackingPosition mit der Funktion _redefinePathObjectOcs() ist auf 2 Arten möglich - absolut oder relativ.

Bei den jeweiligen Modi errechnet sich der Wert für trackingPosition wie folgt:

● Bei mode:= RELATIVEtrackingPosition:=trackingPosition + value

● Bei mode:= ABSOLUTEtrackingPosition:=trackingInPosition - value

Die Verwendung von mode:=ABSOLUTE hat den Vorteil, dass sich die Verschiebung immer auf trackingInPosition bezieht, so dass vorhergehende Verschiebungen in der Applikation nicht zwischengespeichert werden müssen. Bei mode:= RELATIVE ist eine Zwischenspeicherung der Verschiebung in der Applikation erforderlich.

Die Funktionen _redefinePathObjectOCS() und _setPathObjectOCS() werden bei dem betreffenden OCS nicht ausgeführt, wenn dieses im Status 'SYNCHRONIZED' ist.

Siehe Das Mitfahren des Kinematikendpunktes an einem mitgeführten OCS beenden ('Absynchronisieren') (Seite 105) für weitere Informationen.

3.14.2.4 Bewegung am Bahnobjekt auf das mitgeführte OCS synchronisierenEine Handlinganwendung, bei der z.B. ein Produkt von einem bewegten Band zu greifen ist, wird mit einem mit dem Band mitgeführten OCS realisiert. Die Bewegungsbefehle werden dabei so projektiert, dass sie direkt im OCS wirken.

Hierzu muss die vom Bahnobjekt berechnete Bewegung für den Kinematikendpunkt auf das mitgeführte OCS synchronisiert werden.

Im einfachsten Fall bewegt sich nach der Synchronisation der Kinematikendpunkt mit einem definierten Punkt im OCS und damit mit einem auf dem Band befindlichen Punkt mit. Darüber hinaus können nach der Synchronisation im mitgeführten OCS auch Linear-, Kreis-, oder Polynombahnen abgefahren werden.

Zur Synchronisation des Kinematikendpunktes mit einem mit dem Bewegungsfolgebezugswert (z. B. Position eines Bandes) mitgeführten OCS wird der Befehl

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO BahninterpolationFunktionshandbuch, 01/2015 103

Page 104: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

_enablePathObjectTrackingSuperimposed() verwendet. Mit dem Befehl können u.a. vorgegeben werden:

● Synchronisiermodus (synchronizingMode)Es sind folgende Synchronisiermodi verfügbar:

– Sofortiges Mitfahren mit der im Befehl angegebenen Position im OCS (Einstellung: synchronizingMode:=IMMEDIATELY)Es wird sofort aufsynchronisiert und mit dem OCS mitgefahren.

– Aufsynchronisieren und Mitfahren im OCS an der im Befehl angegeben Position des OCS, d.h. sobald die ocsTrackingPosition (z.B. von einem Förderband) einen vorgebbaren Wert (die Synchronisierposition) erreicht hat (Einstellung: synchronizingMode:=ON_POSITION).Bei diesem Synchronisiermodus wird vorlaufend zur angegebenen Synchronisierposition im OCS aufsynchronisiert.

● die Synchronisierposition (position)Angabe eines Bewegungsfolgewertes ab dem synchron mit dem OCS mitgefahren werden soll. Dieser Wert ist nur bei synchronizingMode:=ON_POSITION wirksam.

Für beide Synchronisiermodi gilt:

● Das Aufsynchronisieren auf das Förderband erfolgt gegebenenfalls überlagernd zu einer noch aktiven Bewegung im BCS.

● Weitere Bewegungsbefehle im BCS sind während der Synchronisation nicht möglich.

● Bewegungsbefehle im OCS sind erst nach dem Erreichen des Status SYNCHRONIZED möglich.

Die gewünschte Position des Produktes im OCS kann nach der Synchronisation per Bahnbefehl im OCS angefahren werden.

Für den Synchronisiermodus ON_POSITION gilt:

Ein Synchronisationsvorgang wird abgebrochen, wenn sich während des Aufsynchronisierens die Richtung des Leitwertes umkehrt.

Dies kann z. B. der Fall sein, wenn der externe Geber eines Förderbandes aufgrund fehlender Filter oder zu kleiner Toleranzfenster (bei Extrapolation) im Stillstand schwankende Istwerte liefert, so dass sich die Richtung des Leitwertes umkehrt.

SynchronisierstatusDer Synchronisierstatus des Kinematikendpunktes auf ein mitgeführtes OCS wird in der Systemvariablen ocs[i].trackingState am OCS angezeigt.

Der Synchronisierstatus ist SYNCHRONIZED, wenn

● keine Bewegung im BCS aktiv ist, die Geschwindigkeit des Kinematikendpunktes gleich der Geschwindigkeit des Förderbandes ist und der durch das Synchronisieren entstandene Positionsversatz der Synchronisierbewegung wieder ausgeglichen wurde.

● eine Bewegung im BCS aktiv ist, die Geschwindigkeit der überlagernden Aufsynchronisierbewegung gleich der Geschwindigkeit des Förderbandes ist und der durch das Synchronisieren entstandene Positionsversatz der Synchronisierbewegung wieder ausgeglichen wurde.

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO Bahninterpolation104 Funktionshandbuch, 01/2015

Page 105: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Ein statisches, mit TO#NIL verschaltetes OCS hat immer den Status SYNCHRONIZED. Zusätzlich zu den statischen OCS kann maximal ein mitgeführtes OCS im Status SYNCHRONIZED sein.

Dynamikwerte für den SynchronisiervorgangIm Befehl _enablePathObjectTrackingSuperimposed () sind Dynamikwerte für den Synchronisiervorgang vorgebbar.

Dabei können die Dynamikvorbelegungen des Bahnobjektes genutzt oder die Werte explizit vorgeben werden.

Die Gesamtdynamik während des Aufsynchronisiervorgangs ergibt sich aus der gegebenenfalls aktiven Bahnbewegung im BCS und der überlagerten Synchronisierbewegung. Dies muss bei der Vorgabe der Dynamik berücksichtigt werden, da dies sonst zu einer Überschreitung der programmierten bzw. der maximalen Dynamikwerte am Bahnobjekt führen kann.

3.14.2.5 Bahnbewegungen im mitgeführten OCS durchführenBahnbewegungen können über den Befehlsparameter csType wahlweise auf das BCS oder ein OCS bezogen werden.

Voraussetzung für das Wirksamwerden von Bahnbefehlen im OCS ist, dass das OCS im Zustand SYNCHRONIZED ist. Ansonsten wird der Bahnbewegungsbefehl für das OCS nicht ausgeführt. Bahnbewegungsbefehle auf das OCS können erst nach der Synchronisation abgesetzt werden.

● csTypeDieser Parameter legt fest, ob die Koordinaten auf das OCS oder BCS zu beziehen sind.

● csNumberDieser Parameter ist der Index des OCS (1...3).

3.14.2.6 Das Mitfahren des Kinematikendpunktes an einem mitgeführten OCS beenden ('Absynchronisieren')

Das Mitführen des Kinematikendpunktes an einem mitgeführten OCS wird beendet durch das Wirksamwerden eines Bahnbewegungsbefehls bezogen auf das BCS oder ein statisches OCS.

Bestehende Bahnbewegungsbefehle werden verworfen, der neue Bahnbewegungsbefehl wird sofort ausgeführt.

Die Systemvariablen zu PATH am Bahnobjekt zeigen den Zustand der Bahn im angewählten Koordinatensystem BCS oder OCS an.

Beim Aufheben einer synchronen Bewegungsfolge (Conveyorsynchronisation) über _stopPath im BCS wird für den Abbau der Bewegung aus der Bewegungsfolge keine Bahn aktiv, bzw. Nullwerte angezeigt.

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO BahninterpolationFunktionshandbuch, 01/2015 105

Page 106: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.14.2.7 Anhalten im OCSMit dem Befehl _stopPath() wird bezogen auf das OCS angehalten. Der Status SYNCHRONIZED mit dem mitgeführten OCS bleibt dabei erhalten. Daher kann die Bewegung mit _continuePath() bezogen auf das mitgeführte OCS fortgesetzt werden.

3.14.3 Bewegungsfolge – Beispielanwendung

3.14.3.1 Beispielanwendung eines OCSDie Anwendung eines OCS für die Bewegungsfolge wird anhand eines kurzen Beispiels erläutert.

Bild 3-72 Übersicht der Beispielanwendung

In diesem Beispiel werden Produkte auf einem Band zugeführt. Ein Sensor erfasst die genaue Position der Produkte. Das Handlingsgerät soll Produkte vom Band greifen und an einem anderen Ort ablegen.

3.14.3.2 Bezugslage des OCS definierenDie Bezugslage des OCS wird in den Systemvariablen definiert.

In diesem Beispiel wird das OCS1 verwendet. Die Einstellungen für dieses Koodinatensystem werden in der Struktur userdefaultocs[1] vorgenommen.

Bild 3-73 OCS-relevante Systemvariablen

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO Bahninterpolation106 Funktionshandbuch, 01/2015

Page 107: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Demnach wird das OCS um 100 mm in X-Richtung und 15 mm in Z-Richtung verschoben:

Bild 3-74 Verschiebung des OCS

Dann wird das OCS um -15° um die Y-Achse gedreht.

Bild 3-75 Drehung des OCS

3.14.3.3 Bewegungsfolgebezugswert des OCS festlegenDie Positions- und Bewegungsdaten des Bands werden mit dem Externen Geber CONVEYOR_BELT erfasst. Für das OCS wird der Basisframe gesetzt und der Bewegungsfolgebezugswert CONVEYOR_BELT aktiviert. Das OCS wird dann mit dem Band mitgeführt, und zwar an der Position, die der Externe Geber CONVEYOR_BELT liefert.

// OCS_1 auf CONVEYOR_BELT setzen, // für den Basisframe BCS zur OCS, // die Defaulteinstellungen verwenden.myRetDINT := _setPathObjectOcs( pathObject:=Portal_3D, ocsNumber:=1, trackingIn:=CONVEYOR_BELT, ocsSettingType:=USER_DEFAULT);

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO BahninterpolationFunktionshandbuch, 01/2015 107

Page 108: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.14.3.4 Position des OCS in Bezug zum Bewegungsfolgebezugswert definierenDer Sensor, z. B. eine Lichtschranke, wird vom durchlaufenden Produkt ausgelöst. Dabei wird der aktuelle Wert des Externen Gebers CONVEYOR_BELT wird in der Variable belt_position gespeichert.

Da die Position des Sensors bezogen auf die Bezugslage des OCS bekannt ist, ist damit auch die Position des Produktes hinsichtlich des Bewegungsfolgebezugswerts bekannt.

Bild 3-76 Position des OCS definieren

myRetDINT := _redefinePathObjectOcs( pathObject:=Portal_3D, ocsNumber:=1, mode:=RELATIVE, value:=belt_position - sensor_position );

3.14.3.5 Bewegung am Bahnobjekt auf ein mitgeführtes OCS synchronisierenDas Handlingsgerät soll nach einer Weglänge synch_space nach dem Sensor synchron mit dem Produkt mitgeführt werden.

Die Position des Angriffspunktes des Greifers wird im OCS vorgegeben. Im Beispiel erfolgt dies über die Variablen offset_x, offset_y und offset_z. Auf diese Verschiebung wird dann nach der Synchronisation mit einem Befehl im OCS positioniert, so dass der Greifer das Produkt über seinem Schwerpunkt fassen kann.

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO Bahninterpolation108 Funktionshandbuch, 01/2015

Page 109: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 3-77 Handlingsgerät synchronisieren

myRetDINT := _enablePathObjectTrackingSuperimposed( pathObject:=Portal_3D, ocsNumber:=1, synchronizingMode:=ON_POSITION, position:=sensor_position + synch_space );Wenn der Status "synchron" erreicht ist (ocs[1].trackingState = SYNCHRONIZED), kann der Befehl zur Positionierung des Greifers auf den Angriffspunkt des Produktes (offset_x, offset_y, offset_z) im OCS ausgeführt werden.myRetDINT := _movePathLinear( pathObject:=Portal_3D, pathMode:=ABSOLUTE, x:=offset_x, y:=offset_y, z:=offset_z, csType:=OCS, csNumber:=1);

3.14.3.6 Bahnbewegungen im mitgeführten OCS durchführenDas Handlingsgerät bewegt sich nun 15 mm vom Band weg und bringt das Produkt zur Ablageposition (dispose_x, dispose_y, dispose_z). Die erste Bewegung findet im OCS statt, die zweite im BCS. Die Synchronization wird durch den Aufruf des zweiten Befehls beendet.

myRetDINT := _movePathLinear( pathObject:=Portal_3D, pathMode:=RELATIVE, z:=15.0, csType:=OCS, csNumber:=1

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO BahninterpolationFunktionshandbuch, 01/2015 109

Page 110: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

);

myRetDINT := _movePathLinear( pathObject:=Portal_3D, pathMode:=ABSOLUTE, x:=dispose_x, y:=dispose_y, z:=dispose_z, cstype:=BCS);

Grundlagen Bahninterpolation3.14 Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt

TO Bahninterpolation110 Funktionshandbuch, 01/2015

Page 111: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.15 Verschaltung, Verschaltungsregeln

Bild 3-78 Interfaces am Bahnobjekt

● Das Bahnachs-Interface 1 und das Bahnachs-Interface 2 eines Bahnobjektes müssen mit Bahnachsen verschaltet werden.

● Das Bahnachs-Interface 3 des Bahnobjektes wird optional mit einer Bahnachse verschaltet, abhängig von der eingestellten Kinematik.

● Das Positionierachs-Interface für die bahnsynchrone Bewegung kann optional mit einer Positionierachse verschaltet werden.

● Das MotionOut.x, bzw. ~.y-, bzw. ~.z-Interface kann optional mit einer Positionierachse verschaltet werden.

● Das Bahnobjekt kann zur Vorgabe eines Geschwindigkeitsprofils mit einer Kurvenscheibe verschaltet werden.

● Das TrackingIn-Interface kann zur Vorgabe eines Bewegungsfolgebezugswertes mit einem TO verschaltet werden, das ausgangsseitig ein Interface mit Positionswert bereitstellt.

Weitere Informationen siehe Funktionshandbuch Motion Control Basisfunktionen, "Verfügbare Technologieobjekte".

Hinweise:● Die Bahn-Interfaces sind nicht verteilbar, d. h. alle am Bahnverbund beteiligten Objekte:

Bahnobjekt, Bahnachsen, und Positionierachsen müssen auf dem gleichen Gerät sein.

● Die an einem Bahninterpolationsverbund beteiligten Objekte (Bahnobjekt, Bahnachsen und gegebenenfalls Positionierachse) müssen der gleichen Ablaufebene IPO oder IPO_2 zugeordnet werden. Die Einstellung SERVO ist nicht möglich.

● Die aktuell wirksamen Verschaltungen werden in Systemvariablen specificVelocityProfile, motionBuffer, connections angezeigt.

Grundlagen Bahninterpolation3.15 Verschaltung, Verschaltungsregeln

TO BahninterpolationFunktionshandbuch, 01/2015 111

Page 112: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3.16 SimulationsbetriebEine Bahninterpolation kann in Simulation geschaltet werden, d. h. die Werte werden am Bahnobjekt berechnet aber nicht an die Bahnachsen/Positionierachse ausgegeben.

Das Ein- und Ausschalten der Bahnsimulation ist, solange keine Fehlerreaktion vorliegt, jederzeit möglich, auch während der Bewegung der beteiligten Achsen.

Die Systemvariable simulation [ACTIVE/INACTIVE] gibt Auskunft über den Simulationsstatus des Bahnobjekts.

Befehle für den Simulationsbetrieb● Der Befehl _enablePathObjectSimulation() setzt die Bahninterpolation in den

Simulationsbetrieb.Die Werte werden berechnet, aber nicht an die Bahnachsen/Positionierachse ausgegeben. Dies ist zu jedem Zeitpunkt möglich.

● Der Befehl _disablePathObjectSimulation() setzt die Bahninterpolation aus dem Simulationsbetrieb zurück.Die Werte werden wieder an die Bahnachsen/Positionierachse ausgegeben.Bei einer eventuellen Differenz zwischen dem aus der Bahninterpolation berechneten Achssollwert und dem an der Achse aktuellen Sollwert wird die Änderung des Achssollwertes an der Achse infolge der maximalen Achsdynamikgrenzwerte begrenzt.

Aufrechterhalten der Sollwertberechnung am Bahnobjekt auch bei Wegnahme der Freigaben an der AchseÜber das Konfigurationsdatum decodingConfig.disablePathOperation kann eingestellt werden, ob die Sollwerte am Bahnobjekt auch bei Wegnahme der Freigaben an der Achse weiter berechnet werden.

● Bei NO (Vorbelegung) wird die Bahninterpolation auch im Simulationsbetrieb abgebrochen, wenn die Freigaben an der Bahnachse/Positionierachse zurück genommen wurden.

● Bei YES wird die Bahninterpolation im Simulationsbetrieb nicht abgebrochen, wenn die Freigaben an der Bahnachse/Positionierachse während des Simulationsbetriebs des Bahnobjekts zurück genommen wurden.Eventuell in Ausführung befindliche Bahnbefehle bleiben erhalten.

Grundlagen Bahninterpolation3.16 Simulationsbetrieb

TO Bahninterpolation112 Funktionshandbuch, 01/2015

Page 113: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bahnobjekt projektieren 44.1 Technologiepaket Bahninterpolation auswählen

1. Markieren Sie im Projektnavigator das Gerät und wählen Sie im Kontextmenü (rechte Maustaste) Technologiepakete auswählen.

2. Setzen Sie die Auswahloption PATH und bestätigen Sie mit OK.

Bild 4-1 Auswahl der Technologiepakete

TO BahninterpolationFunktionshandbuch, 01/2015 113

Page 114: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.2 Achsen mit Bahninterpolation anlegen● Aktivieren Sie beim Anlegen einer Achse im SCOUT die Technologie Bahninterpolation.

Bild 4-2 Achse mit Bahninterpolation einfügen

HinweiseWenn Sie für ein TO Achse die Technologie Bahninterpolation festlegen, wird ein Bahnobjekt nicht automatisch eingefügt.

Zu einem späterem Zeitpunkt ist es nicht möglich, z. B. eine Positionierachse in eine Bahnachse zu ändern.

Verschaltungen werden am Bahnobjekt vorgenommen.Siehe Bahnobjekt verschalten (Seite 125).

Bahnobjekt projektieren4.2 Achsen mit Bahninterpolation anlegen

TO Bahninterpolation114 Funktionshandbuch, 01/2015

Page 115: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.3 Bahnobjekt anlegenBahnobjekte werden im SIMOTION SCOUT auf gleicher Ebene wie ein TO Achse und ein TO Kurvenscheibe abgelegt. Diese können allen geeigneten Achsen dieses Geräts zugeordnet werden.

1. Um ein Bahnobjekt neu anzulegen, doppelklicken Sie im Projektnavigator unter BAHNOBJEKTE auf Bahnobjekt einfügen.Sie können auch ein bestehendes Bahnobjekt über die Zwischenablage kopieren und unter anderem Namen einfügen.

Bild 4-3 Bahnobjekt einfügen

2. Geben Sie einen Namen und ggf. Autor, Version und Kommentar ein und bestätigen Sie mit OK.

Das neue Bahnobjekt wird unter TECHNOLOGIE eingefügt.

Bahnobjekt projektieren4.3 Bahnobjekt anlegen

TO BahninterpolationFunktionshandbuch, 01/2015 115

Page 116: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.4 Darstellung im ProjektnavigatorDas Bahnobjekt erscheint im Projektnavigator auf gleicher Ebene wie TO Achse und TO Kurvenscheibe. Verknüpfungen symbolisieren den Zusammenhang mit Bahnachsen bzw. einer Positionierachse für bahnsynchrone Bewegung.

Bild 4-4 Darstellung eines Projekts mit Bahninterpolation im Projektnavigator

Bahnobjekt projektieren4.4 Darstellung im Projektnavigator

TO Bahninterpolation116 Funktionshandbuch, 01/2015

Page 117: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.5 Bahnobjekt parametrieren/vorbelegen● Doppelklicken Sie im Projektnavigator unter dem Bahnobjekt auf Vorbelegung.

In diesem Fenster legen Sie die Ersatzwerte (Vorbelegung) für den Aufruf des Bahnobjekts fest (_movePath...(), _stopPath(), _setPathObjectOcs(), etc.).

Vorbelegung für ObjektkoordinatensystemeAuf der Registerkarte Objektkoordinatensysteme legen Sie die Vorgabewerte für die drei verfügbaren OCS fest.

Bild 4-5 Bahnobjekt: Vorbelegung - Registerkarte Objektkoordinatensysteme

In diesem Fenster können Sie die Werte für die Objektkoordinatensysteme festlegen, welche standardmäßig verwendet werden.

Weitere Informationen finden Sie unter Objektkoordinatensystem (OCS) am Bahnobjekt (Seite 98).

DynamikparameterAuf der Registerkarte Dynamik legen Sie Vorgaben für die Bahngeschwindigkeit, das Geschwindigkeitsprofil sowie Beschleunigung/Verzögerung und Ruck fest.

Bahnobjekt projektieren4.5 Bahnobjekt parametrieren/vorbelegen

TO BahninterpolationFunktionshandbuch, 01/2015 117

Page 118: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 4-6 Bahnobjekt: Vorbelegungen - Registerkarte Dynamik

In diesem Fenster legen Sie die Ersatzwerte (Vorbelegung) für die Dynamik bei der Bahninterpolation fest.

Folgende Parameter können Sie einstellen:

Feld / Schaltfläche Bedeutung / AnweisungGeschwindigkeit Hier tragen Sie den Ersatzwert für die Bahngeschwindigkeit ein.

(userDefault.pathdynamics.velocity)Geschwindigkeitsprofil Hier wählen Sie das Geschwindigkeitsprofil aus.

(userDefault.pathdynamics.profile)Beschleunigung Hier tragen Sie den Ersatzwert für die Bahnbeschleunigung ein.

(userDefault.pathdynamics.positiveAccel)Verzögerung Hier tragen Sie den Ersatzwert für die Bahnverzögerung ein.

(userDefault.pathdynamics.negativeAccel)Ruck Hier tragen Sie den Ersatzwert für den Bahnruck ein.

(userDefault.pathdynamics.positiveAccelStartJerk / positiveAccelEndJerk / negativeAccelStartJerk / negativeAccelEndJerk / profile)

Weitere Informationen finden Sie unter Bahndynamik (Seite 38).

Die Bedeutung der Parameter im Dialogfenster und die zulässigen Wertebereiche finden Sie in den SIMOTION Referenzlisten.

BahnparameterAuf der Registerkarte Bahn legen Sie Vorgaben für die Bahn fest.

Bahnobjekt projektieren4.5 Bahnobjekt parametrieren/vorbelegen

TO Bahninterpolation118 Funktionshandbuch, 01/2015

Page 119: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 4-7 Bahnobjekt: Vorbelegungen - Registerkarte Bahn

In diesem Fenster legen Sie die Ersatzwerte (Vorbelegung) für die Bahn fest.

Folgende Parameter können Sie einstellen:

Feld / Schaltfläche Bedeutung / AnweisungBahnebene Hier legen Sie die Bahnebene fest: X_Y_Z / X_Y / Y_Z / Z_X

(Voreinstellung: X_Y_Z, bei 3D, bei 2D Kinematik ist dies implizit X_Y)(userDefault.path.plane)

Bahnmodus Hier legen Sie den Bahnmodus fest: absolut oder relativ(userDefault.path.mode)

Begrenzung Bahndynamik auf die transformierten Achsgren‐zwerte

Hier legen Sie fest, ob die Bahndynamik auf die transformierten Achsgrenzwerte begrenzt werden.(userDefault.path.dynamicAdaption)Siehe Begrenzungen der Bahndynamik (Seite 40).

Polynomvorgabe Hier legen Sie die Art der Polynominterpolation fest.(userDefault.path.polynomialMode)Siehe Polynombahnen (Seite 32).

Kreisvorgabe Hier legen Sie die Art der Kreisinterpolation fest.(userDefault.path.circularType)Siehe Kreisbahnen (Seite 27).

Richtung bahnsynchrone Bewe‐gung

Hier legen Sie die Richtung der Positionierachse für bahnsynchrone Bewegung fest.(userDefault.w.direction)Siehe Funktionalität der bahnsynchronen Bewegung (Seite 55).

Bahnobjekt projektieren4.5 Bahnobjekt parametrieren/vorbelegen

TO BahninterpolationFunktionshandbuch, 01/2015 119

Page 120: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Feld / Schaltfläche Bedeutung / AnweisungModus bahnsynchrone Bewe‐gung

Hier legen Sie den Synchronachsmodus fest:● absolut● relativ● Bahnlänge ausgeben● Bahnlänge additiv ausgeben(userDefault.w.mode)Siehe Funktionalität der bahnsynchronen Bewegung (Seite 55).

Überschleifen Hier legen Sie fest, ob und wie das Überschleifen erfolgt.(userDefault.blendingMode)Siehe Bahnverhalten am Bewegungsende (Seite 44).

Hilfspunktmodus Mittelpunkt oder Zwischenpunkt:● absolut● relativ● wie Zielpositionsmodus(userDefault.path.ijkMode)Siehe Kreisbahnen (Seite 27).

Hinweis:Transformationen werden über die Maske Konfiguration (Seite 121) oder über die Expertenliste eingestellt.

Weitere Informationen finden Sie unter Grundlagen Bahninterpolation (Seite 19).

Die Bedeutung der Parameter im Dialogfenster und die zulässigen Wertebereiche finden Sie in den SIMOTION Referenzlisten.

Bahnobjekt projektieren4.5 Bahnobjekt parametrieren/vorbelegen

TO Bahninterpolation120 Funktionshandbuch, 01/2015

Page 121: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.6 Bahnobjekt konfigurieren● Doppelklicken Sie im Projektnavigator unter dem Bahnobjekt auf Konfiguration.

Konfiguration des BahnobjektsAuf der Registerkarte Konfiguration legen Sie den Kinematiktyp, den Bearbeitungstakt und je nach Kinematik auch die Koordinatenebene fest.

Bild 4-8 Bahnobjekt: Konfiguration - Registerkarte Konfiguration

In diesem Fenster können Sie folgende Parameter einstellen:

Feld / Schaltfläche Bedeutung / AnweisungBearbeitungstakt Hier stellen Sie ein, ob das Bahnobjekt im IPO oder im IPO_2 bearbeitet wird.

Alle an einem Bahninterpolationsverbund beteiligten TOs (Bahnobjekt, Bahnachsen, Po‐sitionierachse für bahnsynchrone Bewegung) müssen dem gleichen IPO-Takt zugeord‐net werden!(Execution.executionlevel)

Kinematik Hier stellen Sie die gewünschte Kinematik ein.(Kinematics.typeOfKinematics)

Koordinatenebene Hier stellen Sie die Koordinatenebene ein. Diese Einstellung ist nicht für jede Kinematik verfügbar.(config2D)

Bahnobjekt projektieren4.6 Bahnobjekt konfigurieren

TO BahninterpolationFunktionshandbuch, 01/2015 121

Page 122: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Verschiebung und Rotation am BahnobjektAuf der Registerkarte Verschiebung legen Sie eine Verschiebung oder Rotation des Kinematik-Nullpunktes in Bezug auf den BCS-Nullpunkt fest.

Bild 4-9 Bahnobjekt: Konfiguration - Registerkarte Verschiebung

In diesem Fenster können Sie folgende Parameter einstellen:

Feld / Schaltfläche Bedeutung / AnweisungOffset xOffset yOffset z

Hier stellen Sie die Verschiebung des Kinematik-Nullpunktes ein. Je nach Kinematiktyp und/oder eingestellter Koordinatenebene sind nur bestimmte Felder vorhanden. In die‐sem Beispiel handelt es sich um eine 2D Kinematik mit der Koordinatenebene XY. Daher kann die Verschiebung nur in x- und y-Richtung erfolgen.(basicOffset.x, basicOffset.y, basicOffset.z)

roll - Rotation um xpitch - Rotation um yyaw - Rotation um z

Hier stellen Sie die Rotation des Kinematik-Nullpunktes ein. Je nach Kinematiktyp und/oder eingestellter Koordinatenebene sind nur bestimmte Felder vorhanden. In diesem Beispiel ist nur eine Rotation um die z-Achse möglich.(basicOffset.roll, basicOffset.pitch, basicOffset.yaw)

Bahnobjekt projektieren4.6 Bahnobjekt konfigurieren

TO Bahninterpolation122 Funktionshandbuch, 01/2015

Page 123: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Verwendete Einheiten für das BahnobjektAuf der Registerkarte Einheiten legen Sie die Einheiten fest, die für Werte am Bahnobjekt verwendet werden sollen.

Bild 4-10 Bahnobjekt: Konfiguration - Registerkarte Einheiten

Weitere InformationenFunktionsübersicht siehe Übersicht Bahninterpolation (Seite 13).

Funktionsbeschreibung siehe Grundlagen Bahninterpolation (Seite 19).

Die Bedeutung der Konfigurationsdaten und die zulässigen Wertebereiche finden Sie in den SIMOTION Referenzlisten.

Bahnobjekt projektieren4.6 Bahnobjekt konfigurieren

TO BahninterpolationFunktionshandbuch, 01/2015 123

Page 124: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.7 Begrenzungen festlegen● Doppelklicken Sie im Projektnavigator unter dem Objekt auf Begrenzungen.

Bild 4-11 Begrenzungen am Bahnobjekt

In diesem Fenster legen Sie maximale dynamische Bahngrenzwerte fest:

Feld / Schaltfläche Bedeutung / AnweisungGeschwindigkeit Hier tragen Sie die maximale Geschwindigkeit ein.

(limitsOfPathDynamics.velocity)Beschleunigung Hier tragen Sie die maximale Beschleunigung ein.

(limitsOfPathDynamics.positiveAccel)Verzögerung Hier tragen Sie die maximale Verzögerung ein.

(limitsOfPathDynamics.negativeAccel)positiver Ruck Hier tragen Sie den maximalen Ruck bei der Beschleunigungsaufbau/Verzögerungsab‐

bau ein.(limitsOfPathDynamics.positiveJerk)

negativer Ruck Hier tragen Sie den maximalen Ruck bei der Beschleunigungsabbau/Verzögerungsauf‐bau ein.(limitsOfPathDynamics.negativeJerk)

Weitere Informationen finden Sie unter Bahndynamik (Seite 38).

Die Bedeutung der Konfigurationsdaten und die zulässigen Wertebereiche finden Sie in den SIMOTION Referenzlisten.

Bahnobjekt projektieren4.7 Begrenzungen festlegen

TO Bahninterpolation124 Funktionshandbuch, 01/2015

Page 125: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.8 Bahnobjekt verschalten● Doppelklicken Sie im Projektnavigator unter dem Objekt auf Verschaltungen.

Bild 4-12 Bahnobjekt verschalten

In diesem Fenster verschalten Sie die Ausgänge des Bahnobjekts mit Bahnachsen bzw. mit einer Positionierachse. (Die Objekte müssen bereits angelegt sein.)

Setzen Sie Häkchen bei den gewünschten Objekten.

Ein Bahnobjekt muss mit mindestens zwei Bahnachsen verschaltet werden.

Folgende Konnektoren des Bahnobjekts müssen verschalten werden:

● 1. Bahnachse: mit einer Bahnachse

● 2. Bahnachse: mit einer Bahnachse

Folgende Konnektoren des Bahnobjekts können verschalten werden:

● 3. Bahnachse: mit einer Bahnachse

● Achse für bahnsynchrone Bewegung: mit einer Positionier-, Gleichlauf- oder Bahnachse

Bahnobjekt projektieren4.8 Bahnobjekt verschalten

TO BahninterpolationFunktionshandbuch, 01/2015 125

Page 126: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

● Geschwindigkeitsprofil: mit einer Kurvenscheibe

● Ausgabe der Bahnlänge in w2 (ab V4.4): mit einer Positionierachse

Weitere Informationen finden Sie unter Verschaltung, Verschaltungsregeln (Seite 111).

Folgen der Bewegung vonAb V4.2 kann für die Bewegungsfolge eine Achse oder ein externer Geber verschaltet werden. Weitere Informationen finden Sie unter Objektkoordinatensysteme und Bewegungsfolge am Bahnobjekt (Seite 98).

Vorgabe der Dynamik vonAb V4.3 kann die Bahndynamik über DynamicsIn vorgegeben werden. Weitere Informationen finden Sie unter Vorgabe der Bahndynamik (Seite 38).

Bahnobjekt projektieren4.8 Bahnobjekt verschalten

TO Bahninterpolation126 Funktionshandbuch, 01/2015

Page 127: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.9 BahnsteuertafelDie Bahnsteuertafel dient der Inbetriebnahme von Kinematiken. Die Steuerung und Beobachtung von Bahnobjekten ist somit auch ohne Anwenderprogramm möglich. Anwendungsfälle sind beispielsweise:

● Freigeben und Sperren aller verschalteten Achsen

● Funktionstest von Bahnobjekten und den verschalteten Achsen

● Inbetriebnahme und Einrichtung der Kinematik

● Kartesisches Fahren im BCS oder in einem OCS

● Fahren in Maschinenachsen

● Beobachten von Achspositionen und kartesischen Koordinaten

SteuerungshoheitDie Steuerungshoheit für das Bahnobjekt und die verschalteten Achsen kann entweder bei der Bahnsteuertafel liegen oder beim Anwenderprogramm. Falls die Steuerungshoheit bei der Bahnsteuertafel liegt, werden Bewegungsbefehle am Bahnobjekt und den beteiligten Achsen abgelehnt.

WARNUNG

Lebensgefahr durch unerwartete Bewegung von Maschinen

Bei Nichtbeachtung der entsprechenden Sicherheitshinweise können Personen- und Sachschäden entstehen.● Beachten Sie die Sicherheitshinweise im SCOUT im Dialog Steuerungshoheit holen.

Voraussetzungen

● Es muss eine Online-Verbindung zum SIMOTION-Gerät bestehen

● Die aktuellen Projektierungen der Achsen und des Bahnobjekts müssen sich auf dem Zielgerät befinden. Führen Sie ggf. zum Abgleich einen Projektdownload oder einen Upload der Konfigurationsdaten durch (Zielsystem -> Laden -> Konfigurationsdaten ins PG).

Weitere Informationen finden Sie in der SCOUT-Onlinehilfe (Index Bahnsteuertafel).

Bahnobjekt projektieren4.9 Bahnsteuertafel

TO BahninterpolationFunktionshandbuch, 01/2015 127

Page 128: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.10 Kinematikanpassung in der Expertenliste konfigurierenÜber die Expertenliste können Sie alle Konfigurationsdaten und Systemvariablen des TO Bahnobjekt in einer Liste anzeigen und ändern.

Dort legen Sie den Kinematik-Typ fest und passen diesen an Ihre Anforderungen an (siehe Kinematikanpassung (Seite 58)).

Informationen hierzu siehe Funktionshandbuch Motion Control Basisfunktionen, "Expertenliste".

Bahnobjekt projektieren4.10 Kinematikanpassung in der Expertenliste konfigurieren

TO Bahninterpolation128 Funktionshandbuch, 01/2015

Page 129: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.11 Bahnüberwachungen konfigurierenAn der Achse können Bahnüberwachungen konfiguriert werden.

Doppelklicken Sie im Projektnavigator unter dem Achsobjekt auf Überwachungen.

Stellen Sie die erforderlichen Parameter auf der Registerkarte Bahnbewegung bzw. Bahnsynchronbewegung ein.

Bild 4-13 Überwachungen an einer Achse mit Bahninterpolation

Bahnbewegungen

Feld / Schaltfläche Bedeutung / AnweisungSollwertüberwachung Hier aktivieren Sie die Sollwertüberwachung für die Bahnachse.

(pathAxisPosTolerance.enableCommandValue)Sollwert-Toleranz Hier geben Sie die zulässige Abweichung des vom Bahnobjekt für die Bahnachse be‐

rechneten Sollwertes an der Achse unter Berücksichtigung der Begrenzungen des aus‐führbaren Sollwertes an.(pathAxisPosTolerance.commandValueTolerance)Bei Überschreitung wird ein Alarm ausgelöst.

Bahnsynchrone Achse - Überwachungen - Bahnsynchronbewegung

Feld / Schaltfläche Bedeutung / AnweisungSollwertüberwachung Hier aktivieren Sie die Sollwertüberwachung für die Positionierachse.

(pathSyncAxisPosTolerance.enableCommandValue)Sollwert-Toleranz Hier geben Sie die zulässige Abweichung des vom Bahnobjekt für die Positionierachse

berechneten Sollwertes an der Achse unter Berücksichtigung der Begrenzungen des ausführbaren Sollwertes an.(pathSyncAxisPosTolerance.commandValueTolerance)Bei Überschreitung wird ein Alarm ausgelöst.

Weitere Informationen siehe Anzeige und Überwachungen an der Achse (Seite 52).

Bahnobjekt projektieren4.11 Bahnüberwachungen konfigurieren

TO BahninterpolationFunktionshandbuch, 01/2015 129

Page 130: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.12 Bahnobjekt einmessen

Bild 4-14 Einmessen

In diesem Fenster messen Sie das Bahnobjekt ein, indem Sie die Koordinatensysteme neu ausrichten. Zur Auswahl steht die Ausrichtung des Basiskoordinatensystems zum Kinematiknullpunkt oder eines Objektkoordinatensystems bezüglich des Basiskoordinatensystems.

Anhand des Beispiels sind die angegebenen 5 Schritte notwendig:

① Wählen Sie ein OCS aus

② Übernehmen Sie ggf. die aktuelle Position der Kinematik

③ Legen Sie die Ist-Positionen und die Soll-Positionen der Kinematik fest

④ Starten Sie die Berechnung der Verschiebung und Drehung

⑤ Übernehmen Sie ggf. die berechneten Werte als neue Werte für die Kinematik

Punkt 1 entfällt für das Einmessen des Basiskoordinatensystems.

Basiskoordinatensystem (BCS) kalibrierenAuf der Registerkarte Basiskoordinatensystem messen Sie das BCS zum Kinematiknullpunkt ein. Abhängig von der Dimension der ausgewählten Kinematik müssen Sie dazu zwei oder drei Punkte im BCS sowie zwei oder drei entsprechende neue Punkte festlegen, aus denen sich dann die Verschiebung und Drehung ergibt. Für jeden Punkt stehen Eingabefelder für mindestens zwei Koordinaten zur Verfügung. Bei 3D-Kinematiken ist zusätzlich ein Eingabefeld für die dritte Koordinate vorhanden. Einzelne Punkte im BCS können auch über

Bahnobjekt projektieren4.12 Bahnobjekt einmessen

TO Bahninterpolation130 Funktionshandbuch, 01/2015

Page 131: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

die Schaltfläche links neben den Eingabefeldern direkt von der aktuellen Position des Bahnobjekts übernommen werden.

Nach der Eingabe gültiger Koordinaten erscheint eine Schaltfläche um die Verschiebung und Rotation für das BCS zu berechnen. Die berechneten Werte werden dann angezeigt und können über eine weitere Schaltfläche für das Bahnobjekt in die Offline-Datenhaltung übernommen werden. Sofern das Häkchen für das manuelle Anpassen gesetzt ist, können die berechneten Werte im Nachhinein noch editiert werden.

Über die schwarz-gelb-schraffierte Schaltfläche können Sie die Bahnsteuertafel öffnen. Diese Schaltfläche ist nur verfügbar wenn sich die Steuerung im Online-Modus befindet.

Objektkoordinatensysteme (OCS) kalibrierenAuf der Registerkarte Objektkoordinatensysteme messen Sie die Objektkoordinatensysteme OCS_1, OCS_2 und OCS_3 ein. Das jeweilige OCS wird im linken Bereich ausgewählt. Der Einmessvorgang entspricht dem vom BCS zum Kinematiknullpunkt. Mit dem Unterschied, dass sich die Eingaben auf Referenzpositionen im BCS und Positionen im jeweiligen OCS beziehen.

Zusätzlich ist es möglich die Punkte eines zuvor eingemessenen OCS für ein anderes OCS zu übernehmen. Dazu stehen im linken Bereich entsprechende Schaltflächen zur Verfügung.

Bahnobjekt projektieren4.12 Bahnobjekt einmessen

TO BahninterpolationFunktionshandbuch, 01/2015 131

Page 132: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

4.13 Bahninterpolation - KontextmenüFolgende Funktionen können Sie wählen:

Funktion Bedeutung / HinweisKonfiguration Mit dieser Funktion öffnen Sie die Konfiguration

für das im Projektnavigator markierte Bahnobjekt.In diesem Fenster legen Sie den Bearbeitungstakt fest.

Expertenliste Mit dieser Funktion öffnen Sie die Expertenliste für das im Projektnavigator markierte Bahnobjekt.In dieser Liste können Sie die Konfigurationsdaten und Systemvariablen anzeigen und ändern.

Vorbelegung Mit dieser Funktion öffnen Sie die Vorbelegung für das im Projektnavigator markierte Bahnobjekt.In diesem Fenster legen Sie die Ersatzwerte für die Objektkoordinatensysteme, die Dynamik und die Bahn fest.

Einmessen Mit dieser Funktion öffnen Sie ein Fenster, um das Bahnobjekt einzumessen.In diesem Fenster können Sie die Werte für das BCS oder die drei OCS einmessen.

Begrenzungen Mit dieser Funktion öffnen Sie die Begrenzungen für das im Projektnavigator markierte Bahnobjekt.In diesem Fenster legen Sie Dynamikgrenzwerte für das Bahnobjekt fest.

Verschaltungen Mit dieser Funktion öffnen Sie die Verschaltungen für das im Projektnavigator markierte Bahnobjekt.In diesem Fenster sehen Sie die Eingänge der Achsen.

Experte Mit dieser Funktion öffnen Sie das Untermenü für die Experteneinstellungen.

● Objekt importieren Mit Objekt importieren blenden Sie ein Fenster für den XML Import auf.In diesem Fenster können Sie die Parameter für den XML Import festlegen.

● Projekt speichern und Objekt exportieren Mit Projekt speichern und Objekt exportieren blen‐den Sie ein Fenster für den XML Export auf.In diesem Fenster können Sie die Parameter für den XML Export festlegen

Bahnobjekt projektieren4.13 Bahninterpolation - Kontextmenü

TO Bahninterpolation132 Funktionshandbuch, 01/2015

Page 133: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Beispielprojekt für die Bahninterpolation 55.1 Übersicht des Beispiels

Um zu veranschaulichen, wie man die Bahninterpolation projektiert, wird in den nachfolgenden Abschnitten Schritt für Schritt ein Beispielprojekt beschrieben.

In den nachfolgenden Beschreibungen wird davon ausgegangen, dass das Projekt mit dem SIMOTION-Gerät und den Antrieben bereits in der HW-Konfig angelegt wurde.

In diesem Beispiel wird nachfolgendes 2D-Portal eingerichtet:

Bild 5-1 Übersicht

Dieses 2D-Portal besteht aus folgenden Achsen:

● vertikale Achse: 1400 cm Verfahrlänge, Achsnullpunkt auf unterster Position

● horizontale Achse: 2000 cm Verfahrlänge, Achsnullpunkt links

Der Nullpunkt des Bahnobjekt ist also unten links.

So wird das 2D-Portal angelegt und verwendet:

● Technologiepaket auswählen (Seite 135)

● Achsen anlegen (Seite 136)

● Bahnobjekt anlegen (Seite 138)

● Kinematik definieren (Seite 139)

● Bahnobjekt verschalten (Seite 140)

● Bahn in MCC programmieren (Seite 143)

● Bewegung mit Trace überprüfen (Seite 161)

TO BahninterpolationFunktionshandbuch, 01/2015 133

Page 134: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Um zu zeigen, wie eine bahnsynchrone Achse (Seite 162) funktioniert, wird am Ende des Beispiels noch ein Greifer angelegt.

Beispielprojekt für die Bahninterpolation5.1 Übersicht des Beispiels

TO Bahninterpolation134 Funktionshandbuch, 01/2015

Page 135: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.2 Technologiepaket auswählenDie Bahninterpolation wird von den Technologiepaketen PATH- und CAM_EXT unterstützt.

Klicken Sie das Gerät im Projektnavigator mit der rechten Maustaste an, wählen Sie Technologiepaket auswählen im Kontextmenu und verwenden Sie das Technologiepaket PATH.

Bild 5-2 Technologiepaket auswählen

Beispielprojekt für die Bahninterpolation5.2 Technologiepaket auswählen

TO BahninterpolationFunktionshandbuch, 01/2015 135

Page 136: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.3 Achsen anlegenFür das Beispiel werden zwei Linearachsen benötigt: Axis_X und Axis_Z. Diese Achsen werden mit der Technologie Bahninterpolation angelegt. Beide Achsen werden als lineare, virtuelle nicht modulare Achsen angelegt.

Klicken Sie ACHSEN -> Achse einfügen, um eine Achse beim Gerät einzufügen. Nennen Sie die erste Achse Axis_X und die zweite Achse Axis_Z und richten Sie beide wie folgt ein:

1. Technologie Bahninterpolation gewählt

Bild 5-3 Achse anlegen

2. Lineare, virtuelle, nicht modulare AchseDie Konfiguration von beiden Achsen ist wie folgt:

Bild 5-4 Beispielzusammenfassung der Konfiguration (Achse Axis_X)

Der Projektnavigator sieht jetzt wie folgt aus:

Beispielprojekt für die Bahninterpolation5.3 Achsen anlegen

TO Bahninterpolation136 Funktionshandbuch, 01/2015

Page 137: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-5 Projektnavigator mit angelegten Achsen

Beispielprojekt für die Bahninterpolation5.3 Achsen anlegen

TO BahninterpolationFunktionshandbuch, 01/2015 137

Page 138: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.4 Bahnobjekt anlegenFügen Sie für das Gerät unter BAHNOBJEKTE ein neues Bahnobjekt ein. Nennen Sie das Bahnobjekt Portal_2D.

Bild 5-6 Bahnobjekt anlegen

Beispielprojekt für die Bahninterpolation5.4 Bahnobjekt anlegen

TO Bahninterpolation138 Funktionshandbuch, 01/2015

Page 139: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.5 Kinematik definierenBei der Definition der Kinematik wird der Kinematiktyp mit seinen mechanischen Daten und die Verschiebung des Koordinatensystems zum Nullpunkt des Basiskoordinatensystems festgelegt.

Öffnen Sie das Fenster Konfiguration für das Bahnobjekt. In dieser Maske stellen Sie den Kinematiktyp und die Koordinatenebene wie folgt ein:

● Kinematik: Kartesisch 2D

● Koordinatenebene: ZX Ebene

Bild 5-7 Konfiguration der Kinematik

Beispielprojekt für die Bahninterpolation5.5 Kinematik definieren

TO BahninterpolationFunktionshandbuch, 01/2015 139

Page 140: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.6 Bahnobjekt verschaltenÖffnen Sie das Fenster Verschaltungen für das Bahnobjekt. In dieser Maske ordnen Sie die Achsen dem Bahnobjekt zu.

Da die Kinematik in der Z-X Ebene arbeitet muss als erste Bahnachse die Z-Achse verwendet werden und als zweite Bahnachse die X-Achse.

Parametrieren Sie die Verschaltungen des Bahnobjektes daher wie folgt:

● 1. Bahnachse: Axis_Z

● 2. Bahnachse: Axis_X

Bild 5-8 Bahnobjekt verschalten

Beispielprojekt für die Bahninterpolation5.6 Bahnobjekt verschalten

TO Bahninterpolation140 Funktionshandbuch, 01/2015

Page 141: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.7 Vorbelegungen des Bahnobjekts setzenDie unten beschriebenen Einstellungen müssen in der Vorbelegung des Bahnobjekts vorgenommen werden.

So stellen Sie die Vorbelegungen des Bahnobjekts ein:

1. Unter dem Bahnobjekt, klicken Sie auf Vorbelegung.

2. Im Fenster Vorbelegung, in der Registerkarte Objektkoordinatensysteme, können Sie die Objektkoordinatensystem einstellen:

Bild 5-9 Vorbelegung - Objektkoordinatensysteme

Falls Sie ein Objektkoordinatensystem wirksamsetzen wollen, müssen Sie im Anschluss den Befehl _setPathObjectOcs aufrufen (siehe Objektkoordinatensystem (OCS) am Bahnobjekt (Seite 98)).

Beispielprojekt für die Bahninterpolation5.7 Vorbelegungen des Bahnobjekts setzen

TO BahninterpolationFunktionshandbuch, 01/2015 141

Page 142: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3. In der Registerkarte Dynamik stellen Sie das Bahnobjekt z.B. wie folgt ein:

Bild 5-10 Vorbelegung - Dynamik

4. In der Registerkarte Bahn nehmen Sie folgende Einstellungen vor:

Bild 5-11 Vorbelegung - Bahn

Beispielprojekt für die Bahninterpolation5.7 Vorbelegungen des Bahnobjekts setzen

TO Bahninterpolation142 Funktionshandbuch, 01/2015

Page 143: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8 Bahninterpolation in MCC programmieren

5.8.1 Fahrbefehle in MCC programmierenFolgende Bahn soll für dieses Beispiel eingerichtet werden:

Bild 5-12 Zu fahrende Bahn

Diese Bahn besteht aus folgenden Bahnsegmenten:

Segment Bahntyp Startpunkt (x,z) Endpunkt (x,z)A - B Linearbahn (0,0) (0,1200)B - C Polynombahn (0,1200) (200,1400)C - D Linearbahn (200,1400) (1800,1400)D - E Polynombahn (1800,1400) (2000,900)E - F Linearbahn (2000,900) (2000,0)F - A Kreisbahn (2000,0) (0,0)

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 143

Page 144: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.2 Programm anlegen1. Im Projektnavigator, klicken Sie MCC Quelle einfügen. Benennen Sie die MCC Quelle

MCC_Example.

Bild 5-13 MCC Quelle anlegen

2. Im Interface der MCC-Quelle, definieren Sie nachfolgende Variablen:

– start_move (BOOL, true): Das Portal soll die Bewegung abfahren wenn start_move=true gesetzt ist und stoppen, wenn start_move=false.

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation144 Funktionshandbuch, 01/2015

Page 145: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

– forw_back (BOOL, false): Die Variable forw_back zeigt an ob sich das Portal vorwärts (true, A->F) oder rückwärts (false, F->A) bewegt.

Bild 5-14 Variablen in der MCC-Quelle definieren

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 145

Page 146: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

3. Im Projektnavigator, unter der neuen MCC-Quelle, klicken Sie MCC-Chart einfügen. Nennen Sie dieses Chart TopLoader.

Bild 5-15 MCC Chart einfügen

4. Öffnen Sie das MCC-Chart und definieren Sie nachfolgende Variablen:

– endPoly, startPoly: structRetGetLinearPathGeometricData

– x_start, z_start, x_end, z_end: LREAL

Diese Variablen werden zur Berechnung von Daten für die Polynominterpolation benötigt.

Bild 5-16 Variablen in der MCC-Quelle anlegen

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation146 Funktionshandbuch, 01/2015

Page 147: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.3 Verfahrprogramm programmieren

5.8.3.1 Verfahrprogramm programmierenNachfolgendes Verfahrprogramm soll programmiert werden:

Bild 5-17 Zu fahrende Bahn

Das Verfahrprogramm soll innerhalb einer While-Schleife durchgeführt werden. Sie wird durchlaufen solange start_move auf true gesetzt ist.

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 147

Page 148: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.3.2 While-Schleife anlegenFür das Beispiel wird eine While-Schleife angelegt, die durchlaufen wird, solange start_move auf true gesetzt ist.

Bild 5-18 While-Schleife

5.8.3.3 Linearbahn A-B programmierenVor dem Start der Vorwärts-Bewegung wird die Richtungsanzeige forw_back auf true gesetzt. Dies erfolgt über eine Variablenzuweisung.

Platzieren Sie dazu einen Befehl ST-Lupe innerhalb der While-Schleife und programmieren diesen wie folgt:

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation148 Funktionshandbuch, 01/2015

Page 149: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-19 forw_back auf true setzen

Fügen Sie danach einen Befehl Fahre Bahn Linear in der While-Schleife hinzu. Definieren Sie die Linearbahn A-B wie folgt:

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 149

Page 150: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-20 Linearbahn A-B programmieren

5.8.3.4 Polynombahn B-C programmierenUm die Polynombahn B-C zu programmieren, müssen in einer ST-Lupe die geometrischen Ableitungen für den Startpunkt und Endpunkt berechnet werden.

Fügen Sie jeweils einen ST-Lupen-Befehl für Start- und Endpunkt in der While-Schleife ein und programmieren diese wie dargestellt:

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation150 Funktionshandbuch, 01/2015

Page 151: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-21 Ableitungen im Startpunkt der ersten Polynombahn berechnen

Bild 5-22 Ableitungen im Endpunkt der ersten Polynombahn berechnen

Fügen Sie nun einen Befehl Fahre Bahn polynomisch in der While-Schleife ein und definieren die Polynombahn wie folgt:

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 151

Page 152: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-23 Polynombahn B-C programmieren

Die zuvor berechneten Ableitungen werden wie folgt im Befehl angegeben:

● erste Ableitung im Startpunkt: startpoly.firstGeometricDerivative.x / .y / .z

● zweite Ableitung im Startpunkt: startpoly.secondGeometricDerivative.x / .y / .z

● erste Ableitung im Endpunkt: endpoly.firstGeometricDerivative.x / .y / .z

● zweite Ableitung im Startpunkt: endpoly.secondGeometricDerivative.x / .y / .z

Hinweis

Eine alternative Polynomvorgabe wird bei der Programmierung der Polynombahn D-E beschrieben.

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation152 Funktionshandbuch, 01/2015

Page 153: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.3.5 Linearbahn C-D programmierenFür die Linearbahn C-D fügen Sie einen Befehl Fahre Bahn Linear in der While-Schleife hinzu und nehmen Sie folgende Einstellungen vor:

Bild 5-24 Linearbahn C-D programmieren

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 153

Page 154: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.3.6 Polynombahn D-E programmierenFür die Polynombahn D-E wird die Art der Polynomvorgabe Stetig anfügen verwendet. Die geometrischen Ableitungen des Startpunkts werden anhand des vorhergehenden Bahnsegments berechnet. Nur die Ableitungen für den Endpunkt müssen über eine ST-Lupe berechnet werden.

Bild 5-25 Ableitungen im Endpunkt der Polynombahn D-E

Sowohl der ST-Lupen-Befehl als auch der Befehl Fahre Bahn polynomisch müssen in der While-Schleife nacheinander eingefügt werden.

Parametrieren Sie die Polynombahn wie dargestellt:

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation154 Funktionshandbuch, 01/2015

Page 155: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-26 Polynombahn D-E programmieren

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 155

Page 156: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.3.7 Linearbahn E-F programmierenFür die Linearbahn E-F fügen Sie einen Befehl Fahre Bahn Linear hinzu und nehmen Sie folgende Einstellungen vor:

Bild 5-27 Linearbahn E-F programmieren

5.8.3.8 Rückfahrt F-A programmierenDer Greifer des Portals soll über eine Kreisbahn zur Ausgangsposition zurückgefahren werden. Startpunkt der Kreisbahn ist (2000, 0), Endpunkt ist (0, 0).

Es gibt mehrere Möglichkeiten, die Kreisbahn zu definieren. Für dieses Beispiel soll die Kreisbahn über einen Zwischenpunkt und den Endpunkt definiert werden. Als Zwischenpunkt wird der Punkt (1000, 1000) gewählt.

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation156 Funktionshandbuch, 01/2015

Page 157: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-28 Kreisbahn zurück definieren

Zur Anzeige der Rückwärts-Bewegung wird die Variable forw_back in einem ST-Lupen-Befehl auf false gesetzt.

Bild 5-29 forw_back auf false setzen

Danach wird der Befehl Fahre Bahn Zirkular eingefügt und folgende Einstellungen vorgenommen:

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 157

Page 158: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-30 Kreisbahn F-A programmieren

5.8.4 Achs-Freigaben schalten und Achsen referenzierenUm die Achsen verfahren zu können muss für diese jeweils noch eine Freigabe erfolgen. Außerdem müssen die Achsen noch referenziert werden. Dazu müssen vor der While-Schleife die Befehle Achs-Freigabe schalten und Referenziere Achse für jede Achse eingefügt werden.

Für die Befehle Achs-Freigabe schalten können Sie die Standardwerte übernehmen.

Für die Befehle Referenziere Achse setzen Sie die Referenzpunktkoordinaten auf 0 mm. Die sonstigen Werte müssen nicht geändert werden.

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation158 Funktionshandbuch, 01/2015

Page 159: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.5 MCC-DiagrammDas MCC-Chart sieht nun wie folgt aus:

Bild 5-31 MCC-Chart

5.8.6 MCC-Chart in Ablaufsystem zuordnenDas MCC-Chart muss im Ablaufsystem einer beliebigen MotionTask zugeordnet werden. Die MotionTask muss nach der StartupTask aktiviert werden.

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 159

Page 160: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

So ordnen Sie das MCC-Chart einer MotionTask zu:

1. Im Projektnavigator, wählen Sie eine beliebige MotionTask und schieben Sie das Programm MCC_Example.toploader zu Verwendete Programme.

Bild 5-32 MotionTask im Ablaufsystem zuordnen

2. In der Taskkonfiguration der MotionTask, selektieren Sie Aktivierung nach StartupTask.

Bild 5-33 MotionTask im Ablaufsystem konfigurieren

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO Bahninterpolation160 Funktionshandbuch, 01/2015

Page 161: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.8.7 Bewegung mit Trace überprüfenUm zu sehen, wie die Bewegung abläuft, wird ein Trace der nachfolgenden Variablen definiert:

● TO.Axis_X.positioningstate.actualposition

● TO.Axis_Z.positioningstate.actualposition

● Forw_back

Eine Aufzeichnung der Bewegungsschleife sieht nun wie folgt aus:

Bild 5-34 Ergebnis des Beispiels als Trace

Beispielprojekt für die Bahninterpolation5.8 Bahninterpolation in MCC programmieren

TO BahninterpolationFunktionshandbuch, 01/2015 161

Page 162: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

5.9 Bahnsynchrone Achse anlegenUm die Funktionalität der bahnsynchronen Bewegung zu zeigen, wird dem Projekt eine bahnsynchrone Achse hinzugeführt. Die bahnsynchrone Achse dient dazu z. B. Produkte während der Bewegung zusätzlich zu drehen. Die bahnsynchrone Achse soll den Greifer zwischen den Punkten C und D um 90° drehen.

C D

E

F

B

A

Bild 5-35 Bahnsynchrone Achse

Achse anlegenFühren Sie im Projekt eine Positionierachse mit dem Namen Axis_Sync ein. Diese Achse wird als rotatorische, virtuelle, nicht Modulo-Achse angelegt. Beachten Sie dabei, dass für diese Achse die Funktionalität Bahnachse nicht verwendet wird.

Bild 5-36 Achse "Axis_Sync" anlegen

Bahnobjekt einrichtenUnter Verschaltungen des Bahnobjekts, wählen Sie die Achse Axis_Sync als Positionierachse für bahnsynchrone Bewegungen aus.

Beispielprojekt für die Bahninterpolation5.9 Bahnsynchrone Achse anlegen

TO Bahninterpolation162 Funktionshandbuch, 01/2015

Page 163: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-37 Achse "Axis_Sync" verschalten

Beispielprojekt für die Bahninterpolation5.9 Bahnsynchrone Achse anlegen

TO BahninterpolationFunktionshandbuch, 01/2015 163

Page 164: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

MCC-Charts modifizierenFühren Sie folgende Änderungen im MCC-Chart durch:

● Fügen Sie vor der While-Schleife die Befehle Achs-Freigabe schalten und Referenziere Achse für die Achse Axis_Sync analog zu denen für die X- und Z-Achse hinzu.

● In der Linearbahn C-D soll sich die Achse Axis_Sync synchron mitdrehen.Um die Achse wie gewünscht zu drehen, öffnen Sie den Fahrbefehl für die Linearbahn C-D und wählen die Lasche Synchronachse aus. Dort nehmen Sie die folgenden Einstellungen vor:

Bild 5-38 Achse "Axis_Sync" synchron drehen

● In der Kreisbahn F-A soll die Achse Axis_Sync zurück auf die Nullposition gedreht werden.

Beispielprojekt für die Bahninterpolation5.9 Bahnsynchrone Achse anlegen

TO Bahninterpolation164 Funktionshandbuch, 01/2015

Page 165: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild 5-39 Synchronbahn zurück auf Nullposition bewegen

Beispielprojekt für die Bahninterpolation5.9 Bahnsynchrone Achse anlegen

TO BahninterpolationFunktionshandbuch, 01/2015 165

Page 166: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Beispielprojekt für die Bahninterpolation5.9 Bahnsynchrone Achse anlegen

TO Bahninterpolation166 Funktionshandbuch, 01/2015

Page 167: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bahninterpolation programmieren/Referenzen 66.1 Programmierung

6.1.1 Programmierung: ÜbersichtIm Folgenden finden Sie Informationen zu den Befehlen und Alarmreaktionen des Technologiepaketes Bahnobjekt. Weitere Informationen können den Referenzlisten der Technologiepakete entnommen werden.

Die Beschreibung der Funktionen der auf dem TO Bahnobjekt basierenden Standard-Bibliothek "Toploading" kann der Funktionsbeschreibung "Applikation Toploading" entnommen werden.

6.1.2 Befehlsübersicht

6.1.2.1 Auskunft und Konvertierung

Berechnen der Bahnlänge: Folgende Befehle berechnen die Bahnlänge ohne die Bahnbewegung zu starten oder auszuführen.

Die Start- und Endpunkte müssen im Befehl angegeben werden.

● _getLinearPathData()

● _getCircularPathData()

● _getPolynomialPathData()

Geometrische Bahnanalyse: Die unten aufgelisteten Befehle dienen zur Berechnung von kartesischen Daten der Bahn, z. B. Bahnrichtung, Bahnkrümmung, am Startpunkt, Endpunkt oder vorgebbaren Punkt auf der Bahn ohne die Bahnbewegung zu starten oder auszuführen.

Der Punkt auf der Bahn wird über die Vorgabe des Bahnlängenabstands zum Startpunkt angegeben.

Der Startpunkt wird im Befehl mit angegeben, ebenso die Position bezogen auf die Bahnlänge, an dem die Auskunftsdaten ermittelt werden.

● _getLinearPathGeometricData()

● _getCircularPathGeometricData()

● _getPolynomialPathGeometricData()

TO BahninterpolationFunktionshandbuch, 01/2015 167

Page 168: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Ab SIMOTION V4.2 wird die berechnete Geometrie in einem Geometriecache abgelegt und als Rückgabewert eine cacheID zur Verfügung gestellt. Über diese cacheID kann bei einer mehrfachen Abfrage des Bahnsegmentes bei der sich lediglich der abgefragte Punkt ändert auf die bereits berechneten Daten zurückgegriffen werden. Dadurch kann eine deutliche Performancesteigerung der Auskunftsfunktionen erreicht werden.

6.1.2.2 Umrechnungsbefehle● _getPathCartesianPosition()

Berechnet die kartesischen Positionen aus den Achspositionen.

● _getPathAxesPosition()Berechnet die Achspositionen aus den kartesischen Positionen.

● _getPathCartesianData()Berechnet die kartesischen Daten für Position, Geschwindigkeit und Beschleunigung aus den Achspositionen, Achsgeschwindigkeiten und Achsbeschleunigungen.

● _getPathAxesData()Berechnet die Achspositionen, Achsgeschwindigkeit und Achsbeschleunigungen aus den kartesischen Daten zur Position, Geschwindigkeit und Beschleunigung.

6.1.2.3 BefehlsverfolgungDie folgenden Befehle erlauben das Beobachten des aktuellen Verarbeitungs- und Bewegungsstatus der Motion Befehle. Durch das permanente Abspeichern der Stati, die zu einer CommandId gehören, ist ein Auswerten über die Lebenszeit des Motion Befehls hinaus möglich.

● _getStateOfPathObjectCommand()

● _getMotionStateOfPathObjectCommand()

● _bufferPathObjectCommandId()

● _removeBufferedPathObjectCommandId()

6.1.2.4 Bewegung● _movePathLinear()

Interpolation von Linearbahnen (Seite 26)

– 2D in einer Hauptebene

– 3D

● _movePathCircular()Interpolation von Kreisbahnen (Seite 27)

– 2D in einer Hauptebene mit Radius, Endpunkt und Orientierung

– 2D in einer Hauptebene mit Mittelpunkt und Winkel

– 2D mit Zwischen- und Endpunkt

– 3D mit Zwischen- und Endpunkt

Bahninterpolation programmieren/Referenzen6.1 Programmierung

TO Bahninterpolation168 Funktionshandbuch, 01/2015

Page 169: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

● _movePathPolynomial()Interpolation von Polynombahnen (Seite 32)

– 2D in einer Hauptebene

– 3D

● _stopPath()Stoppt die aktuelle Bewegung ohne abzubrechen.

● _continuePath()Setzt eine gestoppte Bewegung wieder fort.Ab V4.2 können die Bewegungseigenschaften für das Fortsetzen der Bewegung angegeben werden.

6.1.2.5 Objekt- und Alarmhandling● _cancelPathObjectCommand()

Bricht einen wartenden oder im Ipo aktiven Befehle ab. Der abzubrechende Befehl wird durch die Angabe seiner CommandId im Parameter commandToBeCancelled spezifiziert.

● _enablePathObjectSimulation()Setzt ein Bahnobjekt in den Simulationsmodus, Bahnwerte werden berechnet, aber nicht an die Achsen ausgegeben.

● _disablePathObjectSimulation()Beendet den Simulationsmodus.

● _resetPathObject()Der Befehl setzt den Bahninterpolator in seinen Ausgangszustand zurück. Aktive Bewegungen werden gestoppt, Befehle werden abgebrochen und Fehler werden zurückgesetzt. Falls gewünscht, werden die Systemvariablen auf ihre Vorgabewerte zurückgesetzt bzw. die Konfigurationsdaten neu eingelesen.

● _resetPathObjectError()Der Befehl setzt alle oder einen speziellen Fehler an einem Bahnobjekt zurück.

● _getPathObjectErrorNumberState()Status eines spezifischen Fehlers auslesen.

● _getPathObjectErrorState()Der Befehl liefert die Information ob und wie viele Alarme am Bahnobjekt anstehen. Außerdem werden Informationen über diese Fehler ausgegeben.

● _resetPathObjectConfigDataBuffer()Konfigurationsdatenpuffer zurücksetzen.

● _getStateOfPathObjectMotionBuffer()Gibt den Status der Befehlsqueue des Bahnobjekts zurück.

● _resetPathObjectMotionBuffer()Löscht alle anstehenden Befehle aus der Befehlsqueue.Für die gelöschten Befehle wird jeweils der Alarm 030002 Befehl abgebrochen abgesetzt.

Bahninterpolation programmieren/Referenzen6.1 Programmierung

TO BahninterpolationFunktionshandbuch, 01/2015 169

Page 170: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

6.1.2.6 Objektkoordinaten● _enablePathObjectTrackingSuperimposed()

Startet den Synchronisiervorgang des Bahnobjekts auf ein OCS.

● _getPathObjectBCSFromOCSData()Berechnet eine Position (x, y, z) im Basiskoordinatensystem des Bahnobjekts anhand der Position im Objektkoordinatensystem.

● _getPathObjectOCSFromBCSData()Berechnet eine Position (x, y, z) im Objektkoordinatensystem anhand der Position im Basiskoordinatensystem des Bahnobjekts.

● _redefinePathObjectOCS()Verschiebt das Objektkoordinatensystem entlang der X-Achse (Fahrtrichtung).

● _setPathObjectOCS()Definiert die translatorische und rotatorische Verschiebung des Objektkoordinatensystems gegenüber dem Basiskoordinatensystem des Bahnobjekts.

6.1.3 Befehlsverarbeitung

6.1.3.1 BefehlspufferDas Bahnobjekt verfügt über drei Befehlspuffer für jeweils einen Befehl.

● ein Puffer für Bewegungsbefehle wirkt ablösend (IMMEDIATELY) und sequentiell (SEQUENTIAL)

● ein getrennter Puffer für Bahnbewegung stoppen (_stopPath() ) und Bahnbewegung fortsetzen (_continuePath() )

● ein Puffer für sonstige, d. h. überlagert wirksame Anweisungen

Befehl Funktion Einordnung*)_movePathLinear() Bewegung einer Linearbahn starten 4_movePathCircular() Bewegung einer Kreisbahn starten 4_movePathPolynomial() Bewegung einer Polynombahn starten 4_stopPath() Bewegung stoppen 1 bei Stopp ohne Be‐

fehlsabbruch 4 bei Stopp mit Be‐fehlsabbruch

_continuePath() Fortsetzen einer Bewegung 1_getLinearPathData() Bahnlänge der Linearbahn 5_getCircularPathData() Bahnlänge der Kreisbahn 5_getPolynomialPathData() Bahnlänge der Polynombahn 5_getPathCartesianPosition() Achse zu Bahn 5_getPathAxesPosition() Bahn zu Achse 5_getPathCartesianData() Achse zu Bahn mit Dynamikdaten 5_getPathAxesData() Bahn zu Achse mit Dynamikdaten 5

Bahninterpolation programmieren/Referenzen6.1 Programmierung

TO Bahninterpolation170 Funktionshandbuch, 01/2015

Page 171: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Befehl Funktion Einordnung*)_getLinearPathGeometricData() geometrische Bahndaten der Linearbahn 5_getCircularPathGeometricData() geometrische Bahndaten der Kreisbahn 5_getPolynomialPathGeometricData() geometrische Bahndaten der Polynombahn 5_enablePathObjectSimulation() Bahnobjekt in Simulation setzen 3_disablePathObjectSimulation() Bahnobjekt aus Simulation zurücksetzen 3_resetPathObject() Bahnobjekt rücksetzen 5_resetPathObjectError() Fehler rücksetzen 5_getStateOfPathObjectCommand() Befehlsstatus auslesen 5_getMotionStateOfPathObjectCommand() Bewegungsphase eines Befehls auslesen 5_bufferPathObjectCommandId() Befehls-Id permanent speichern 5_removeBufferedPathObjectCommandId() permanentes Speichern beenden 5_getPathObjectErrorNumberState() Status eines Fehlers des Bahnobjektes ausle‐

sen5

_getPathObjectErrorState() Status und Anzahl der anstehenden Fehler des Bahnobjektes auslesen

5

_resetPathObjectConfigDataBuffer() Die seit dem letzten Aktivieren im Puffer gesam‐melten Konfigurationsdaten löschen

5

_getStateOfPathObjectMotionBuffer() Gibt den Status der Befehlsqueue des Bahnob‐jekts zurück.

5

_resetPathObjectMotionBuffer() Löscht alle anstehenden Befehle aus der Be‐fehlsqueue.

5

_enablePathObjectTrackingSuperimposed() Startet den Synchronisiervorgang des Bahnob‐jekts auf das OCS.

3

_getPathObjectBCSFromOCSData() Berechnet eine Position im BCS anhand einer Position im OCS.

5

_getPathObjectOCSFromBCSData() Berechnet eine Position im OCS anhand einer Position im BCS.

5

_redefinePathObjectOCS() Verschiebt das OCS entlang der X-Achse. 3_setPathObjectOCS() Definiert die Verschiebung desOCS gegenüber

dem BCS.3

_cancelPathObjectCommand() Bricht einen wartenden oder im Ipo aktiven Be‐fehle ab.

1

*) Legende:

1 Puffer für Stop-Continue-Befehle2 nicht verwendet3 Puffer für überlagernde Befehle4 sequentieller Befehlspuffer5 keine Einordnung in die Befehlspuffer (Befehle können parallel abgearbeitet wer‐

den)

Bahninterpolation programmieren/Referenzen6.1 Programmierung

TO BahninterpolationFunktionshandbuch, 01/2015 171

Page 172: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

6.1.3.2 AblöseverhaltenDas Verhalten beim Einfügen von Befehlen wird im Befehlsparameter mergeMode festgelegt.

● Ablösen des aktuellen Interpolatorbefehls (mergeMode:=IMMEDIATELY)

● Überschreiben der im Puffer befindlichen Befehle (mergeMode:=NEXT_MOTION)Die Abarbeitung erfolgt nach dem Ende der Bearbeitung des aktuellen Interpolatorbefehls.

● Anhängen an die bereits im Puffer befindlichen Befehlen (mergeMode:=SEQUENTIAL)Bei vollem Puffer kann auf das Freiwerden eines Eintrags gewartet oder die Befehlsverarbeitung ohne Wartezeit fortgesetzt werden.

Die Befehlsdekodierung findet im Taskkontext, d. h. in der Ablaufebene der den Befehl absetzenden Anwendertask statt (vor dem Eintrag in den Befehlspuffer).

Einstellungen und Wirksamkeit des mergeMode sind wie bei TO Achse.

6.1.4 Wechselwirkungen des Bahnobjekts mit der Achse

6.1.4.1 AblöseverhaltenÜber den Parameter mergeMode am Bewegungsbefehl des Bahnobjektes wird das Verhalten zu anderen aktiven Bewegungen an der Achse eingestellt.

In der Einstellung ablösend werden alle aktiven zugeordneten Achsbewegungen abgebrochen (abhängig von der Einstellung im Konfigurationsdatum transferSuperimposedPosition).

● Beim Ablösen einer Bahnbewegung über einen weiteren Bahnbefehl wird unmittelbar auf die Bahn übergegangen, die sich im Ablösenpunkt zum neuen Zielpunkt ergibt.

● Beim Ablösen einer Bahn mit einem Bewegungsbefehl, z. B. _move...(), halten die anderen an der Bahnbewegung beteiligten Achsen und gegebenenfalls die Positionierachse für bahnsynchrone Bewegung mit den maximalen Dynamikwerten an.Die Wirksamkeit der anderen Ablöseverhalten ist wie beim Gleichlauf.Beim gleichzeitigen Anstehen von Bewegungsbefehlen innerhalb eines Inter‐polationstaktes am jeweiligen Objekt, also einer am Gleichlaufobjekt, einer am Bahnobjekt und einer an der Achse gilt:

– Bei mergeMode=SEQUENTIAL/NEXT_MOTION wird der Gleichlaufbefehl/Bahnbefehl ausgeführt.

– Bei mergeMode=IMMEDIATELY wird der Befehl an der Achse ausgeführt.

● Der Befehl _stop() einer an der Bahnbewegung oder über die bahnsynchrone Bewegung beteiligten Achse bricht die Bahnbewegung am Bahnobjekt nicht ab, wird also nicht wirksam (dies ist das gleiche Verhalten wie bei der Gleichlaufbewegung am TO Gleichlauf)._stop() bricht nur die an der Achse initiierten Bewegungen ab.Der Befehl _stopEmergency() ist auch auf die am TO Gleichlauf und TO Bahnobjekt initiierten Bewegungen wirksam.

Bahninterpolation programmieren/Referenzen6.1 Programmierung

TO Bahninterpolation172 Funktionshandbuch, 01/2015

Page 173: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

● Überlagerungen können nicht am Bahnobjekt erfolgen, sondern nur an der Achse (Achsbewegung oder Gleichlauf).

● Wenn eine Positionierachse für bahnsynchrone Bewegung des Bahnverbunds über einen Achsbefehl an dieser Achse abgelöst wird, ergibt sich die gleiche Rückwirkung auf die Bahn, wie beim Ablösen einer Bahnachse.

● Bahnachse und Positionierachse für bahnsynchrone Bewegung verhalten sich gleich.

Bei den anderen Einstellungen wird die Bahnbewegung nach dem Ende aller vorherigen Achsbewegungen oder einer aktiven Bahnbewegung gestartet.

6.1.4.2 Reihenfolge der WirksamkeitDie Technologieobjekte werden in der Reihenfolge Bahnobjekt - Gleichlaufobjekt - Achsobjekt bearbeitet. Bei gleichzeitig anstehenden Bewegungsbefehlen an mehreren mit einer Achse verschalteten Technologieobjekten mit gleichem Ablöseverhalten werden diese entsprechend der Bearbeitungsreihenfolge und der Einstellung im Parameter mergeMode wirksam:

● In der Einstellung mergeMode:=IMMEDIATELY wird der Bewegungsbefehl an der Achse wirksam (letzter bearbeiteter Befehl).

● In der Einstellung mergeMode:=SEQUENTIAL/NEXT_MOTION wird der Bewegungsbefehl am Bahnobjekt wirksam (zuerst wirksamer Befehl).

6.1.4.3 Wechselwirkung mit der AchseWird die Bewegung einer Achse infolge ihrer lokalen Alarmreaktion angehalten oder wird die Verschaltung des Bahnobjektes zur Achse ungültig, dann wird die Bahnbewegung abgebrochen und die anderen Achsen werden ebenfalls mit den maximalen Dynamikwerten auf Geschwindigkeit 0.0 gefahren und ein technologischer Alarm wird ausgegeben.

Ist der Restweg kleiner als der Bremsweg, so wird die neue Zielposition überfahren und dann auf die Zielposition zurückgefahren (reversierende Bewegung). Die anderen Achsen fahren mit ihren maximalen Dynamikwerten auf Geschwindigkeit 0.0. Die Achsen fahren aber nicht zum Abbruchpunkt zurück. Die Bahn wird abhängig von den Randbedingungen (beteiligte Achsen, Dynamikwerte) dabei nicht mehr eingehalten.

Siehe Funktionshandbuch Motion Control Technologieobjekte Achse elek-trisch/hydraulisch, Externer Geber, "Bewegungsübergänge",

6.1.4.4 Wechselwirkung mit anderen BahnbewegungenIst eine Bahnachse mit mehreren Bahnobjekten verschaltet und löst eine Bahnbewegung an einer Bahnachse eine andere Bahnbewegung an einem anderen Bahnobjekt ab, dann werden die anderen Bahnachsen mit den maximalen Dynamikwerten auf Geschwindigkeit 0.0 gefahren und ein Technologischer Alarm ausgegeben.

Bahninterpolation programmieren/Referenzen6.1 Programmierung

TO BahninterpolationFunktionshandbuch, 01/2015 173

Page 174: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

6.2 Lokale AlarmreaktionLokale Alarmreaktionen werden über das System vorgegeben.

Folgende Reaktionen sind möglich:

● NONE: Keine Reaktion

● DECODE_STOP: Abbruch der Befehlsaufbereitung, die aktuelle Bewegung und Befehl im Puffer bleiben aktiv.

● END_OF_MOTION_STOP: Abbruch am Ende des fehlerverursachenden Befehls, Stopp der Bewegung auf der Bahn

● MOTION_STOP: Geführter Bewegungsstopp mit programmierten Bahndynamikwerten auf der Bahn. Eine Fortsetzung ist durch Fehlerquittierung möglich.

● MOTION_EMERGENCY_STOP: Geführter Bewegungsstopp mit den maximalen Bahndynamikwerten / Grenzwerten der Achse. Eine Fortsetzung ist durch Fehlerquittierung möglich.

● MOTION_EMERGENCY_ABORT: Geführter Bewegungsstopp mit den maximalen Bahndynamikwerten auf der Bahn. Im Bahninterpolator aktive Befehle werden abgebrochen, ein Einlesen weiterer Befehle wird verhindert und ist erst nach Fehlerquittierung möglich. Aktive Befehle (IPO) werden an das Anwenderprogramm mit Fehlerkennung rückgemeldet.

● DISABLE_MOTION: Bewegungsstopp an Bahnachsen und Positionierachse für bahnsynchrone Bewegung. Der Bahnbewegungsanteil wird über Stopp mit den maximalen Achsdynamikwerten sowie anschließendem Abbruch des Bahnbewegungsanteils realisiert. Der Bahnverbund wird somit aufgelöst. Im Bahninterpolator aktive Befehle werden abgebrochen, ein Einlesen weiterer Befehle wird verhindert und ist erst nach Fehlerquittierung möglich.

Bahninterpolation programmieren/Referenzen6.2 Lokale Alarmreaktion

TO Bahninterpolation174 Funktionshandbuch, 01/2015

Page 175: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Anhang A AA.1 Spezifische Kinematik mit TrafoID 1001

Typ der KinematikDie Kinematik mit der TrafoID 1001 ist verwendbar. Sie ist jedoch nur über die Expertenliste auswählbar, indem dort die entsprechende ID eingetragen wird.

Bei der Kinematik 1001 handelt es sich um eine 2D-Kinematik (X-Y)

Als Achsen können folgende Typen verwendet werden:

● Achse A1 (X-Achse): Rund- oder Linearachse ohne Modulo-Funktion

● Achse A2 (Y-Achse): Rundachse ohne Modulo-Funktion

Darstellung der Kinematik

Bild A-1 Kinematikdarstellung

Einstellungen am BahnobjektKinematics.typeOfKinematics = SPECIFIC (6)

TO BahninterpolationFunktionshandbuch, 01/2015 175

Page 176: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Kinematics.specTrafoId = 1001

Tabelle A-1 Kinematik-Parameter

Parameter Verwendung Einheit Typ Min MaxKinematics.parameter[1] basicOffsetX z. B. mm LREAL -1E+012 1E+012Kinematics.parameter[2] basicOffsetY z. B. mm LREAL -1E+012 1E+012Kinematics.parameter[3] reserviertKinematics.parameter[4] ratioA1 z. B. mm/° LREAL -1E+012 1E+012Kinematics.parameter[5] length1 z. B. mm LREAL 0 1E+012Kinematics.parameter[6] length2 z. B. mm LREAL 0 1E+012Kinematics.parameter[7] distanceE1 z. B. mm LREAL -1E+012 1E+012Kinematics.parameter[8] verticalPosition2

lower (unten) / up‐per (oben)

0: unten,≠0: oben

LREAL -1E+012 1E+012

Kinematics.parameter[9] offsetA2 z. B. LREAL -1E+012 1E+012

KinematikbezugDie Position des TCP/ Endpunkts hängt von der Orientierung (siehe Abschnitt Verfahrbereich) der Stange 2 ab. Ist die Orientierung unten (wie in Bild Kinematikbezug) gewählt, kann die Position des TCP/ EP bei Nullstellung der Kinematik folgendermaßen bestimmt werden:

Ist die Orientierung oben gewählt:

Anhang AA.1 Spezifische Kinematik mit TrafoID 1001

TO Bahninterpolation176 Funktionshandbuch, 01/2015

Page 177: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Bild A-2 Kinematikbezug

Bild A-3 Schematische Darstellung - Kinematik 1001

Transformation in X-RichtungDie Transformation in X-Richtung kann für Linear- und Rundachsen (Bandantrieb, Spindel etc.) verwendet werden.

BCS.x.position=(Achsposition A1 * parameter[4]) - parameter[1]

BCS.x.position=(Achsposition A1 * ratioA1) - basicOffsetX

Anhang AA.1 Spezifische Kinematik mit TrafoID 1001

TO BahninterpolationFunktionshandbuch, 01/2015 177

Page 178: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Transformation in Y-RichtungInnerhalb des Verfahrbereichs der Kinematik liefert die Transformation (MCS -> BCS) des Bahnobjektes gültige kartesische Werte. Befindet sich die Achse außerhalb dieses Bereichs, wird der Wert 0.0 ausgegeben.

Bild A-4 physikalischer Verfahrbereich

VerfahrbereichDer Verfahrbereich wird von der Orientierung (Lage) des Schubbereichs bestimmt. Dieser kann mittels Kinematics.parameter[8] bestimmt werden.

Anhang AA.1 Spezifische Kinematik mit TrafoID 1001

TO Bahninterpolation178 Funktionshandbuch, 01/2015

Page 179: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Orientierung obenKinematics.parameter[8] ≠ 0.0 (z. B. 1.0)

Bild A-5 Verfahrbereich bei Orientierung oben

Anhang AA.1 Spezifische Kinematik mit TrafoID 1001

TO BahninterpolationFunktionshandbuch, 01/2015 179

Page 180: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Orientierung untenKinematics.parameter[8] = 0.0

Bild A-6 Verfahrbereich bei Orientierung unten

Anhang AA.1 Spezifische Kinematik mit TrafoID 1001

TO Bahninterpolation180 Funktionshandbuch, 01/2015

Page 181: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Index

22D Anwenderfunktion, 952D/3D-Portal, 68

33D Anwenderfunktion, 95

AAchsen

mit Bahninterpolation anlegen, 114Anwenderfunktion, 95

BBahnachse, 13

einordnen, 20Fehler, 54

Bahnachsenanlegen, 136

Bahnachs-Interface, 15, 111Bahnachsoffset, 62Bahnbefehle

Ablöseverhalten, 172Befehlsverfolgung, 168Berechnen der Bahnlänge, 167Bewegung, 168Geometrische Bahnanalyse, 167Kreisbahn, 27Kreisbahn über Mittelpunkt, Winkel, 30Kreisbahn über Radius, Endpunkt, Orientierung, 28Kreisbahn über Zwischenpunkt, Endpunkt, 31Linearbahn, 26Objekt- und Alarmhandling, 169Objektkoordinatensystem, 170Polynombahn, 32Polynombahn über direkte Vorgabe, 34Polynombahn über stetig anfügen, 36Polynombahn über Vorgabe der Startpunktdaten, 34Umrechnungsbefehle, 168

Bahnbewegung, 15Anzeige, 52

fortsetzen, 43stoppen, 43Überwachung, 52

Bahndynamik, 38Begrenzungen, 40Vorgabe über Befehlsparameter, 38Vorgabe über Kurvenscheibe, 39

Bahn-Interface, 16Bahninterpolation, 13, 15

Beispielprojekt, 133Funktionalität, 19lokale alarmreaktion, 174Objekte, 19

Bahninterpolationsverbund, 15Bahnobjekt, 13, 15

anlegen, 138Begrenzungen, 124Dynamik, 117einmessen, 130Konfiguration, 121Objektkoordinatensysteme, 98, 117parametrieren, 117Systemvariablen, 59Verschaltungen, 125Vorbelegung, 117

Bahnsteuertafel, 15Bahnsteuerung, 15Bahnsynchrone Bewegung, 17

Ausgabe der Bahnlänge, 57Ausgabe der Koordinaten, 57Dynamik, 56Funktionalität, 55Spezifikation, 55Überschleifen, 56

Band, 16, 98Basiskoordinatensystem, 15BCS, 15Befehle Bahninterpolation, 25Begrenzungen

Bahnobjekt, 124Beispiel

Bahninterpolation (Übersicht), 133Beispielprojekt

Achsen anlegen, 136Bahnobjekt anlegen, 138Bahnsegments programmieren, 143Kinematik definieren, 139Technologiepaket, 135Vorbelegung setzen, 141

TO BahninterpolationFunktionshandbuch, 01/2015 181

Page 182: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

BewegungsendeStoppen, 45Überschleifen mit Dynamikadaption, 45Überschleifen ohne Dynamikadaption, 46Übersicht, 44

Bewegungsfolge, 16, 98Bewegungsfolgebezugswert, 16, 99Bezugspunkte, 58

CCAM_EXT, 20Conveyortracking, 98

DDelta-Picker 2D, 73Delta-Picker 3D, 76

EEinheiten

Bahninterpolation, 23Einmessen, 130

FFehler Bahnachse, 54Frametransformation, 16freie Transformationsschnittstelle, 90

GGelenkarm 2D, 82Gelenkarm 3D, 83Gelenkstellungsräume, 61

HHauptebene, 21

IInterpolationsarten

Bahninterpolation, 24

KKartesische 2D/3D-Portal, 68Kartesische Achsen, 16Kartesischer Nullpunkt, 58Kartesisches Koordinatensystem, 21Kinematik, 16

2D Anwenderfunktion, 952D/3D-Portal, 683D Anwenderfunktion, 95Anwenderfunktion, 95Delta-Picker 2D, 73Delta-Picker 3D, 76Gelenkarm 2D, 82Gelenkarm 3D, 83Rollen-Picker 2D, 69Rollen-Picker 3D, 71SCARA, 78Schwenkarm 2D, 87Übersicht, 64Umrechnung, 61Zylindrischer Roboter 3D, 89

Kinematikanpassung, 16, 58Transformation, 58

Kinematik-Endpunkt, 58Kinematik-Nullpunkt, 58

Verschiebung, 63Kinematiktransformation, 16, 58Kinematischer Offset, 63Konfiguration

Bahnobjekt, 121Kreisbahn, 17

LLinearbahn, 17Literaturhinweis, 3Lokale Alarmreaktion

Bahninterpolation, 174

MModulo-Eigenschaften, 22MotionOut.x/y/z-Interface, 111

NNullpunktverschiebung, 62

Index

TO Bahninterpolation182 Funktionshandbuch, 01/2015

Page 183: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

OObjekte

Bahninterpolation, 19Objektkoordinatensystem, 98Objektkoordinatensystem (OCS), 17OCS, 98

anhalten, 106Anwendungsbeispiel, 106Bahnbefehle, 170mitgeführt, 17

OCS-Bezugslage, 17

PPATH, 20Pitch, 16Polynombahn, 17Positionierachse

für bahnsynchrone Bewegung, 13Positionierachs-Interface, 111

RRechtssystem, 21Roll, 16Rollen-Picker 2D, 69Rollen-Picker 3D, 71Rotation, 16

SSCARA, 78Schwenkarm 2D, 87Simulationsbetrieb, 112Systemvariablen, 59

TTechnologiepaket wählen, 135TO Bahnobjekt, 13trackingIn-Interface, 17trackingInPosition, 16Translation, 16

UÜberschleifen

Bahnsynchrone Bewegung, 56mit Dynamikadaption, 45ohne Dynamikadaption, 46

Überwachung, 52

VVerfahrbereichsgrenzen

der Bahn- und Positionierachsen, 53Verschaltungen

Bahnobjekt, 125Vorbelegung, 141

Bahnobjekt, 117

YYaw, 16

ZZylindrischer Roboter 3D, 89

Index

TO BahninterpolationFunktionshandbuch, 01/2015 183

Page 184: SIMOTION Motion Control TO Bahninterpolation · SIMOTION Motion Control TO Bahninterpolation Funktionshandbuch Gültig ab Version 4.4 01/2015 Vorwort Grundlegende Sicherheitshinweise

Index

TO Bahninterpolation184 Funktionshandbuch, 01/2015