Allgemeine Hinweise Gebrauch der Dokumentation Allgemeine Hinweise Gebrauch der Dokumentation Diese Dokumentation ist Bestandteil des Produkts. Die Dokumentation wendet sich an alle Personen, die Arbeiten an dem Produkt ausführen. Stellen Sie die Dokumentation in einem leserlichen Zustand zur Verfügung. Stellen Sie sicher, dass die Anlagen- und Betriebsverantwortlichen sowie Personen, die unter eigener Verantwortung mit dem Produkt arbeiten, die Dokumentation vollständig gele- sen und verstanden haben.
Allgemeine Hinweise Produktnamen und Marken Bedeutung der Gefahrensymbole Die Gefahrensymbole, die in den Warnhinweisen stehen, haben folgende Bedeutung: Gefahrensymbol Bedeutung Allgemeine Gefahrenstelle 1.3.3 Aufbau der eingebetteten Warnhinweise Die eingebetteten Warnhinweise sind direkt in die Handlungsanleitung vor dem ge- fährlichen Handlungsschritt integriert. Hier sehen Sie den formalen Aufbau eines eingebetteten Warnhinweises: ...
Sicherheitshinweise Vorbemerkungen Sicherheitshinweise Vorbemerkungen Die folgenden grundsätzlichen Sicherheitshinweise dienen dazu, Personen- und Sachschäden zu vermeiden und beziehen sich vorrangig auf den Einsatz der hier do- kumentierten Produkte. Wenn Sie zusätzlich weitere Komponenten verwenden, be- achten Sie auch deren Warn- und Sicherheitshinweise. Zielgruppe Fachkraft für Ar- Alle Arbeiten mit der eingesetzten Software dürfen ausschließlich von einer Fachkraft...
Sicherheitshinweise Bestimmungsgemäße Verwendung Bestimmungsgemäße Verwendung ® ® MOVIKIT MultiMotion und MOVIKIT MultiMotion Camming sind Softwaremodule für ® MOVI-C CONTROLLER, die dem Anwender vielfältige Motion-Funktionalitäten über eine Schnittstelle im IEC-Programm zur Verfügung stellen. ® Verwenden Sie die geräteübergreifende Engineering-Software MOVISUITE , um die Achsen in Betrieb zu nehmen, zu konfigurieren und die fertige Konfiguration auf einen ®...
Systembeschreibung Anwendungsbereiche Anwendungsbereiche Die Softwaremodule werden verwendet, um komplexe Bewegungsabläufe mehrerer Achsen zu koordinieren oder zu synchronisieren. Insbesondere Anwendungen in den Bereichen der nachfolgend aufgeführten Beispiele lassen sich mit den bereitgestellten Motion-Funktionalitäten schnell und komfortabel umsetzen: Verpackungstechnik • Schlauchbeutelmaschinen mit rotierendem Messer •...
Projektierungshinweise Voraussetzung Projektierungshinweise Voraussetzung Die richtige Projektierung und eine fehlerfreie Installation der Geräte sind Vorausset- zung für eine erfolgreiche Inbetriebnahme und für den Betrieb. Ausführliche Projektierungshinweise finden Sie in der Dokumentation zu den betref- fenden Geräten. Hardware Für den Betrieb des Softwaremoduls wird folgende Hardware vorausgesetzt: ®...
Projektierungshinweise Lizenzierung Lizenzierung Für den Betrieb des Softwaremoduls benötigen Sie folgende Lizenz: ® • MOVIRUN flexible ® Lizenz für die Softwareplattform MOVIRUN flexible. ® Diese enthält die Lizenz für das Basismodul MOVIKIT MultiMotion. Um den Funktionsumfang zu erweitern, sind folgende Lizenzen verfügbar: ®...
Inbetriebnahme Voraussetzungen Inbetriebnahme Voraussetzungen • Prüfen Sie die Installation der Umrichter und ggf. den Anschluss der Geber. • Beachten Sie die Installationshinweise in den Dokumentationen zu den betreffen- den Geräten und Softwarekomponenten. ® • In der MOVISUITE werden die in Betrieb zu nehmenden Geräte angezeigt. Ablauf der Inbetriebnahme Folgendes Schaubild zeigt schematisch den Ablauf der Inbetriebnahme: Inbetriebnahme...
Inbetriebnahme Achsen einfügen und konfigurieren Achsen einfügen und konfigurieren ® Das Einfügen und Konfigurieren von Geräten/Achsenkann in MOVISUITE über einen Netzwerk-Scan oder manuell über die Katalogauswahl erfolgen. Weitere Informatio- ® nen dazu finden Sie im Handbuch zur Engineering-Software MOVISUITE Folgende Abbildung zeigt beispielhaft den Aufbau eines Projekts, in dem die Softwa- remodule verwendet werden: 29108294923 Softwaremodul einfügen...
Inbetriebnahme Softwaremodul konfigurieren Softwaremodul konfigurieren ® 1. Klicken Sie in MOVISUITE auf das Softwaremodul. ð Die Konfigurationsmenüs des Softwaremoduls werden angezeigt. 28910672779 [1] Schaltfläche zum Zurückkehren zur Projektübersicht ® [2] Hauptmenü der Softwaremodul-Konfiguration (Abschnitt MOVIKIT [3] Untermenüs der Konfiguration [4] Einstellungsfelder der jeweiligen Untermenüs 2.
Inbetriebnahme Softwaremodul konfigurieren 5.5.1 Konfigurationsmenüs Grundeinstellungen Parameterbezeichnung Wert Initialisierung Schaltfläche Gerät für den Softwaremodul-Betrieb initialisieren. "Einstellungen initialisie- ren" Prozessdatenprofil auswählen Prozessdatenprofil Einstellung wie viele und welche Daten zwischen Um- ® richter und MOVI-C CONTROLLER ausgetauscht wer- den. Index: 50000.10 IEC-Name: - Allgemein •...
Seite 19
Inbetriebnahme Softwaremodul konfigurieren Grenzwerte Parameterbezeichnung Wert Applikationsgrenzen Geschwindigkeit positiv Beschränkung der maximalen positiven Geschwin- digkeit, mit der die Anlage verfahren werden darf. (in Anwendereinheiten) Index: 8357.10 IEC-Name: ConfigHandling._stAxisConfig.lrAppLimit- VelocityPositive Geschwindigkeit negativ Beschränkung der maximalen negativen Geschwin- digkeit, mit der die Anlage verfahren werden darf. (in Anwendereinheiten) Index: 8357.11 IEC-Name: ConfigHandling._stAxisConfig.lrAppLimit-...
Seite 20
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Notstoppverzögerung Bremsverzögerung für die im Fall eines Notstopps aktive Rampe. Ein Notstopp kann als Reaktion auf einen Fehler programmiert werden (in Anwenderein- heiten). Index: 8357.20 IEC-Name: ConfigHandling._stAxisConfig.lrRapid- StopDeceleration Zyklusbegrenzung Modulo-Minimum Untere Modulo-Grenzen bei der Verarbeitung von Prozessdaten.
Seite 21
Inbetriebnahme Softwaremodul konfigurieren Antriebsfunktionen Skalierung Parameterbezeichnung Wert Geber Quelle Istposition Geber, der als Quelle für die Bildung der Istposition be- rücksichtigt wird. Index: 8565.3 IEC-Name: - Skalierung Umrichter Einstellung der Skalierung des Umrichters mittels der Parameter Position, Geschwin- digkeit und Beschleunigung. Index: 8554.1-4 (Position), 8557.1-4 (Geschwindigkeit), 8560.1-4 (Beschleunigung) IEC-Name: - Empfohlene Auflösung...
Seite 22
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Suchgeschwindigkeit Suchgeschwindigkeit der Referenzfahrt Index: 8552.8 IEC-Name: - Freifahrgeschwindigkeit Freifahrgeschwindigkeit der Referenzfahrt Index: 8552.9 IEC-Name: - Grundstellung Grundstellung anfahren Aktivierung bzw. Deaktivierung der Grundstellungs- fahrt Index: 8552.3 IEC-Name: - Grundstellung Grundposition, die nach Ablauf der Referenzfahrt au- tomatisch angefahren wird.
Seite 23
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Verweildauer am Festan- Verweildauer am Festanschlag schlag Index: 8552.15 IEC-Name: - Drehmomentgrenze Festan- Begrenzung des Drehmoments beim Referenzieren schlag auf Festanschlag. Index: 8552.14 IEC-Name: - ® Handbuch – MOVIKIT MultiMotion / MultiMotion Camming...
Seite 25
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Grundstellung Position, die nach der Referenzierung automatisch angefahren wird. Index: 50007.10 IEC-Name: ProfileGeneration.Homing.Config.lrStart- Position Grundstellungsgeschwindig- Geschwindigkeit, mit der nach der Referenzierung keit die Grundstellung angefahren wird. Index: 50007.11 IEC-Name: ProfileGeneration.Homing.Config.lrStart- PosVelocity Erweiterte Einstellungen Beschleunigung Beschleunigung der Referenzfahrt Index: 50007.6 IEC-Name: ProfileGeneration.Homing.Config.lrAcce- leration...
Seite 26
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeich- Wert nung Stopp-Position Stopp-Position die angefahren wird, wenn die Betriebsart gestoppt wird (in Anwendereinheiten). Index: 50002.2 IEC-Name: ProfileGeneration.Velocity.Config.stStopAtPosi- tion.lrStopPosition Absolute Positionierung Parameterbezeichnung Wert Absolute Positionierung Ohne referenzierten Geber • Positionierung zulassen, wenn der Umrichter noch nicht referenziert wurde. •...
Seite 27
Inbetriebnahme Softwaremodul konfigurieren Relative Positionierung Parameterbezeichnung Wert Verhalten bei Zielpositionsänderung • Relativbewegung fortset- Eine unterbrochene Relativ-Positionierung fortset- zen, wenn die Achse z. B. durch Wegfallen der Frei- gabe zwischenzeitlich die interpolierende Betriebsart verlassen hat. • Nein Angestoßene Relativ-Positionierung nach Unterbre- chung nicht fortsetzen. Index: 50004.1 IEC-Name: ProfileGeneration.PositioningRelative.Con- fig.xContinueRelativeMove...
Seite 28
Inbetriebnahme Softwaremodul konfigurieren Direkte Kopplung Parameterbezeichnung Wert Auswahl der Master-Quelle • Anwenderprogramm Master-Quelle Die Sollwerte werden manuell in diesem Menü eingetragen. • Konfigurierte Achse Die Sollwerte der Slave-Achse werden von der unter "Name der Master-Achse" ausgewählten Achse übernommen. • Externe synchrone Quelle Die Sollwerte für den Slave werden über eine ex- terne Quelle (z. B.
Seite 29
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Zeitfaktor der Beschleunigung Für die Beschleunigung des Master-Signals geltende Zeitbasis: • 1/min • 1/(min*s) • Index: 50005.10 IEC-Name: ProfileGeneration.Tracking.Config.stTi- meBaseFactor.eAcceleration Übersetzungsverhältnis Zähler Zählerwert des Übersetzungsverhältnisses (Master/Slave) Index: 50005.6 IEC-Name: ProfileGeneration.Tracking.In.diTracking- Numerator Nenner Nennerwert des Übersetzungsverhältnisses (Master/Slave) Index: 50005.7 IEC-Name: ProfileGeneration.Tracking.In.diTracking-...
Seite 30
Inbetriebnahme Softwaremodul konfigurieren Kurvenscheibe HINWEIS ® Dieses Konfigurationsmenü ist nur mit der Lizenz "MOVIKIT MultiMotion Camming" verfügbar. Parameterbezeichnung Wert Kurvenscheibe • Konfigurierte Achse - Die Sollwerte für die Slave-Ach- Master-Quelle se werden von der unter "Name der Master-Achse" ausgewählten Achse übernommen. Index: 50006.5 IEC-Name: - Name der Master-Achse...
Seite 31
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Einkuppel-Offset Abweichung gegenüber der Referenzposition beim Ein- kuppeln in Anwendereinheiten (Master) Index: 50006.9 IEC-Name: ProfileGeneration.Camming.CONFIG.Start.lr- GearInOffset Referenzposition beim Referenzposition in Anwendereinheiten (Master) Einkuppeln Index: 50006.10 IEC-Name: ProfileGeneration.Camming.CONFIG.Start.lr- GearInReferencePosition Zuletzt eingestellte Pha- • Ein - Bei Deaktivieren und wieder Aktivieren der Be- triebsart, die zuletzt eingestellte Phasenkorrektur bei- senkorrektur beibehalten behalten.
Seite 32
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Stopp-Position nach Aus- Stopp-Position nach dem Auskuppeln in Anwenderein- kuppeln heiten (Master) Index: 50006.12 IEC-Name: ProfileGeneration.Camming.CONFIG.Stop.lr- GearOutStopPosition Kurvenwechsel Trigger des Kurvenwech- • Direkt sels • Mit Position des internen Masters und positiver Bewe- gungsrichtung • Mit Position des internen Masters und negativer Be- wegungsrichtung •...
Seite 33
Inbetriebnahme Softwaremodul konfigurieren Zusatzfunktionen Setzen Sie das entsprechende Feld der Zusatzfunktion die Sie verwenden möchten auf "Ja". Für die aktivierte Zusatzfunktion wird daraufhin ein Untermenü angezeigt. Touchprobe Parameterbezeichnung Wert Allgemein Datenquelle • Geber • Konfigurierte Achse • Anwenderprogramm Index: 50008.1 IEC-Name: - Modus •...
Seite 34
Inbetriebnahme Softwaremodul konfigurieren Parameterbezeichnung Wert Erweiterte Einstellungen Format PA-Daten Prozessdatenformat: • 16 Bit • 32 Bit - Big Endian • 32 Bit - Little Endian Bei Zugriff auf die PA-Datenworte wird das Datenfor- mat festgelegt. Die PA-Daten haben 16-Bit-Wortbreite und können über das PA-Datenformat zu einem 32- Bit-Wert zusammengefasst werden.
Inbetriebnahme IEC-Projekt generieren IEC-Projekt generieren Führen Sie die folgenden Schritte durch, um mittels automatischer Codegenerierung ® ein IEC-Projekt basierend auf den Konfigurationen in der MOVISUITE zu erstellen. ® ü Die Konfiguration des Softwaremoduls in der MOVISUITE ist abgeschlossen. ® 1. Klicken Sie in der Funktionssicht in der MOVISUITE auf den Softwaremodul-Be- ®...
Inbetriebnahme IEC-Projekt generieren 5.6.1 Aufbau des IEC-Projekts Das IEC-Projekt weist folgende Grundstruktur auf: 18014423003085323 Nr. Name Beschreibung SEW_GVL_Internal Die globale Variablenliste SEW_GVL_Internal beinhaltet die zum verwendeten Softwaremodul passenden Instanzen. Auf diese Variablen darf nicht aus dem Anwenderprogramm geschrieben werden. Des Weiteren enthält die Struktur eine Instanz als Kommunikationspuffer zum Steuern oder Beobachten des Softwaremoduls mit Hilfe eines Monitors.
Inbetriebnahme Anwenderprogramm einbinden Anwenderprogramm einbinden Es gibt verschiedene Möglichkeiten, ein Anwenderprogramm in das generierte IEC- Projekt einzubinden. Folgende Abbildung zeigt die Grundstruktur der Software. Dar- über hinaus ist ersichtlich, an welcher Stelle innerhalb der Programmabwicklung die Aktionen und Methoden bearbeitet werden. Die rötlich hervorgehobenen Aktionen oder Methoden stehen zum Ausführen des Anwenderprogramms zur Verfügung.
Inbetriebnahme Anwenderprogramm einbinden 25291032971 5.7.1 Aufgaben der Mapping-Funktionen Das Mapping zu den Schnittstellen wird von der automatischen Codegenerierung im freilaufenden Task platziert, weil in den meisten Anwendungsfällen auch das Anwen- derprogramm im freilaufenden Task verarbeitet wird (z. B. in der Aktion Main im Pro- gramm User_PRG).
Seite 40
Inbetriebnahme Anwenderprogramm einbinden HINWEIS Es liegt in der Verantwortung des Anwenders, bei Bedarf durch entsprechende Maß- nahmen für Konsistenz zu sorgen. Monitor Anwender- (im Status Modus) programm HMI_Axis1 Interface_Axis1 HMI_Axis1.MapOUT_UI() Interface_Axis1.MapOUT_UI() HMI_Axis1.ProfileGeneration.MapOUT_UI() Interface_Axis1.ProfileGeneration.MapOUT_UI() Axis1 HMI_Axis1.MapIN_UI() Interface_Axis1.MapIN_UI() HMI_Axis1.ProfileGeneration.MapIN_UI() Interface_Axis1.ProfileGeneration.MapIN_UI() 18014423329103755 • Interface_Axis1.MapOUT_UI() kopiert die Statusinformationen von "Axis1"...
Inbetriebnahme Anwenderprogramm einbinden 5.7.2 Methode "CallUserProgramBeforeProfileGeneration" verwenden Die Methode CallUserProgramBeforeProfileGeneration wird verwendet, um ein An- wenderprogramm unmittelbar vor der Profilgeneration einer bestimmten Achse einzu- binden. Somit können beispielsweise freie, nicht in den MultiMotion-Achsfunktionen enthaltene Profil berechnet werden. Die Methode CallUserProgramBeforeProfileGeneration nimmt eine Sonderstellung ein.
IEC-Programmierung Anwenderschnittstelle IEC-Programmierung Anwenderschnittstelle Die Anwenderschnittstelle für das Softwaremodul stellt eine globale Instanz in der Va- riablenstruktur SEW_GVL im IEC-Projekt dar. Die globale Instanz setzt sich zusammen aus Variablen für die Fehlerhandhabung, die Zugriffsverwaltung sowie Unterstrukturen, welche Steuervariablen (IN), Konfigurati- onsvariablen (CONFIG), Statusvariablen (OUT) und weitere Strukturen der Funktions- bausteine enthalten.
IEC-Programmierung Grundlegende Achsfunktionen Grundlegende Achsfunktionen Die folgenden Funktionsmodule enthalten Variablen zur Konfiguration grundlegender Einstellungen der Achse. 6.3.1 Diagnose Über die Diagnose-Variablen werden Fehler oder Warnungen ausgegeben. Zusätzlich wird ein Log-Eintrag erstellt und der entsprechende Fehlercode samt Zusatztext ange- zeigt. Variablenname Beschreibung xError Datentyp - BOOL...
Seite 44
IEC-Programmierung Grundlegende Achsfunktionen Zugriff Anwen- Eine Instanz fordert den Zugriff durch das Setzen von xGetAccessControl auf "TRUE" dungsprogramm an. Wenn xControlActive den Wert "TRUE" zurückmeldet, wurde der Zugriff gewährt. Monitor Anwenderprogramm (im Modus "Beobachten") HMI_Achsname Interface_Achsname xGetAccessControl = FALSE xGetAccessControl = TRUE xControlActive = FALSE...
IEC-Programmierung Grundlegende Achsfunktionen 6.3.3 Basic Die Struktur Basic enthält die Basisfunktionen der Achse. Dieser Teil der Anwender- schnittstelle ist bei allen Achstypen identisch. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219940779147 Variablenname Beschreibung xEnable_EmergencyStop Datentyp - BOOL •...
IEC-Programmierung Grundlegende Achsfunktionen 6.3.4 Inverter Die Struktur Inverter enthält Steuer- und Statusvariablen für den Umrichter. Dieser Teil der Anwenderschnittstelle repräsentiert ein Hardware-Gerät und ist folglich nur bei realen Achsen vorhanden. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219940783883 Variablenname Beschreibung...
Seite 47
IEC-Programmierung Grundlegende Achsfunktionen Variablenname Beschreibung xPowered Datentyp - BOOL • TRUE - Endstufen freigegeben (liefern Ausgangsspan- nung) • FALSE - Endstufen nicht freigegeben xReady Datentyp - BOOL • TRUE - Für Steuerung durch den Controller bereit • FALSE - Nicht bereit für Steuerung durch den Controller xReferenced Datentyp - BOOL •...
IEC-Programmierung Grundlegende Achsfunktionen 6.3.5 EnergySaving Die Struktur EnergySaving enthält die Steuer- und Statusvariablen der Energiespar- funktion. HINWEIS Die Energiesparfunktion kann nur aktiviert werden, wenn die Achse nicht freigegeben ist. Bei einer Doppelachse dürfen beide Achsen nicht freigegeben sein. Hier schaltet das Steuersignal immer beide Achsen in den Energiesparmodus.
IEC-Programmierung Grundlegende Achsfunktionen 6.3.6 SoftwareLimitSwitch Die Struktur SoftwareLimitSwitch enthält die Steuer- und Statusvariablen der Softwa- re-Endschalter. Schnittstelle im IEC-Editor 9007223531035915 Variablenname Beschreibung xActivateMonitoring- Datentyp - BOOL Negative • TRUE - Überwachung des Software-Endschalters in nega- tiver Richtung aktivieren • FALSE - Überwachung des Software-Endschalters in ne- gativer Richtung deaktivieren xActivateMonitoring- Datentyp - BOOL...
IEC-Programmierung Grundlegende Achsfunktionen 6.3.7 Brake Die Struktur Brake enthält die Steuer- und Statusvariablen zur Bremsenansteuerung. Wenn das Gerät freigegeben wird, öffnet die Bremse automatisch. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 20686516235 HINWEIS ® Setzen Sie in der Konfiguration der Achse in MOVISUITE unter "Antriebsfunktio- nen" ...
IEC-Programmierung Grundlegende Achsfunktionen 6.3.9 Homing Die Struktur Homing enthält Steuer- und Statusvariablen für Referenzfahrten. Dabei wird auf dem angeschlossenen Umrichter der FCB 12 gesteuert. Die auf dem Umrichter unter FCB 12 Referenzfahrt eingestellten Parameter gelten (z. B. Referenz- fahrt-Typ, usw.) Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 20686538507...
IEC-Programmierung Touchprobe-Funktion Touchprobe-Funktion Die Touchprobe-Funktion dient zur Erfassung der aktuellen Position des Antriebs. 6.4.1 Konfiguration Für eine korrekte Funktionsweise der Touchprobe-Funktion sind folgende Schritte er- forderlich: ® • Konfiguration der Touchprobe-Funktion in der MOVISUITE Nähere Informationen dazu erhalten Sie im Kapitel "Touchprobe" (→ 2 33). •...
IEC-Programmierung Touchprobe-Funktion Schnittstelle in ® MOVISUITE 9007220004164363 6.4.3 Initialisierung In der Aktion User_PRG.INIT ist eine Zuweisung auf die Touchprobe-Quelle erforder- lich, z. B. Sollwert von Axis1: Schnittstelle im IEC-Editor 20749428363 6.4.4 Ansteuerung Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 20714210187 Variablenname...
Seite 55
IEC-Programmierung Touchprobe-Funktion Variablenname Beschreibung lrUserProgram- Datentyp - LREAL - Gleitkommazahl SourceSetpoint Vom Anwender erzeugtes Signal im IEC-Programm, dass als TouchProbe-Quelle genutzt werden soll (Datenquelle "Anwenderprogramm"). Das Signal wird zyklisch mit den Prozessdaten zum Um- richter übertragen und dort als TouchProbe-Quelle ver- wendet.
IEC-Programmierung MultiMotion-Achsfunktionen MultiMotion-Achsfunktionen Die nachfolgend beschriebenen Funktionsmodule enthalten Variablen zur Konfigura- tion komplexer Bewegungsabläufe einer Achse. Die Steuer- und Statusvariablen der verschiedenen MultiMotion-Achsfunktionen befin- den sich in der Struktur ProfileGeneration. Hier enthalten sind sowohl spezielle Struk- turen der verschiedenen Betriebsarten (Velocity, Positioning, …) als auch Strukturen mit Variablen, die betriebsartübergreifend gültig sind.
IEC-Programmierung MultiMotion-Achsfunktionen 6.5.1 Betriebsartübergreifende Variablen Nachfolgend sind die betriebsartübergreifenden Strukturen der Struktur ProfileGenera- tion beschrieben Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219941287307 Variablenname Beschreibung xActivate Datentyp - BOOL • TRUE - Aktivieren • FALSE - Anhalten Wird xActivate auf "FALSE"...
Seite 58
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung lrStopJerk Datentyp - LREAL - Gleitkommazahl Ruck der Profilgeneration, wenn xEnable_EmergencyStop oder xEnable_ApplicationStop weggenommen werden. Wenn ein Ruck vorgegeben ist, wird die gewünschte Bremsverzögerung linear gemäß dem eingestellten Wert aufgebaut. Wenn an dieser Stelle Null eingetragen wird, erfolgt die Änderung der Bremsverzögerung sprunghaft.
Seite 59
IEC-Programmierung MultiMotion-Achsfunktionen Config Variablenname Beschreibung eErrorReaction Datentyp - E_ERRORREACTION Fehlerreaktion der Profilgeneration: • ABORT Profilgeneration stoppt abrupt ohne Rampe an der ak- tuellen Sollposition. • APPLICATIONSTOP_DECELERATION Profilgeneration stoppt mit der unter Applikationsgren- zen eingestellten Bremsverzögerung. • EMERGENCYSTOP_DECELERATION Profilgeneration stoppt mit der eingestellten Not-Stopp- Verzögerung.
Seite 60
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung lrVelocity Datentyp - LREAL - Gleitkommazahl Geschwindigkeit lrAcceleration Datentyp - LREAL - Gleitkommazahl Beschleunigung stSetpointsPLCUnits Von der Profilgeneration erzeugte Sollwerte. Die Dynamik-Parameter sind in PLC-Einheiten skaliert. HINWEIS PLC-Einheiten sind wie folgt definieren: Anzahl der Nachkommastellen • Position (PLC-Einheit) = Position (Anwendereinheit) x 10 •...
IEC-Programmierung MultiMotion-Achsfunktionen 6.5.2 Velocity In der Betriebsart Velocity werden Profile erzeugt, bei denen die Positionsänderung mit einer vorgegebenen Geschwindigkeit gesteuert wird. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219942187915 Änderungen an diesen Variablen werden sofort übernommen. Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung xActivate...
Seite 62
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung lrVelocity Datentyp - LREAL - Gleitkommazahl Geschwindigkeit Wenn die vorgegebene Sollgeschwindigkeit erreicht ist, wirkt sich eine Änderung an lrVelocity sofort aus. Die vor- gegebene Beschleunigung lrAcceleration oder Bremsver- zögerung lrDeceleration wird verwendet, um die neu vor- gegebene Geschwindigkeit zu erreichen.
Seite 63
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung ePresetMode Datentyp - E_PRESETMODE Initialisierungsverhalten der Profilgeneration: • ACTPOS_STANDSTILL Profilgeneration beginnt aus dem Stillstand (z. B. beim Überlagern) • ACTPOS_MOVING Profilgeneration beginnt mit den aktuellen Werten (z. B. beim fliegenden Umschalten) • PRESET_DATA Profilgeneration beginnt mit den vorgegebenen Preset- Werten stPresetValues Werte für die Initialisierung der Profilgeneration.
Seite 64
IEC-Programmierung MultiMotion-Achsfunktionen Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung lrSetpPosition Datentyp - LREAL - Gleitkommazahl Sollposition lrSetpPositionModulo Datentyp - LREAL - Gleitkommazahl Von der Profilgeneration erzeugte Modulo-Sollposition lrDeltaPosition Datentyp - LREAL - Gleitkommazahl Positionsdifferenz zum letzten PLC-Zyklus in PLC-Einhei- lrSetpVelocity Datentyp - LREAL - Gleitkommazahl Sollgeschwindigkeit...
IEC-Programmierung MultiMotion-Achsfunktionen 6.5.3 Positioning In der Betriebsart Positioning werden Positionier-Profile erzeugt, die auf der absoluten Position basieren. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219942192651 Änderungen an diesen Variablen werden sofort übernommen. Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung xActivate...
Seite 66
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung lrPosition Datentyp - LREAL - Gleitkommazahl Position Bei einer Modulo-Achse muss die vorgegebene Zielpositi- on folgende Bedingung erfüllen: ModuloMin ≤ lrPosition ≤ ModuloMax. lrVelocity Datentyp - LREAL - Gleitkommazahl Geschwindigkeit Wenn die vorgegebene Sollgeschwindigkeit erreicht ist, wirkt sich eine Änderung an lrVelocity sofort aus.
Seite 67
IEC-Programmierung MultiMotion-Achsfunktionen Config Variablenname Beschreibung eModuloMode Datentyp - E_MODULOMODE Modulo-Verfahrstrategie: • MODULO_OFF Modulo absolut • MODULO_SHORT Modulo absolut - kürzester Weg • MODULO_CW Modulo absolut - positive Richtung • MODULO_CCW Modulo absolut - negative Richtung • MODULO_RELATIVE Modulo relativ Der Parameter wird mit steigender Flanke an xStart über- nommen.
Seite 68
IEC-Programmierung MultiMotion-Achsfunktionen stPresetValues Werte für die Initialisierung der Profilgeneration. Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung lrPosition Datentyp - LREAL - Gleitkommazahl Position lrVelocity Datentyp - LREAL - Gleitkommazahl Geschwindigkeit lrAcceleration Datentyp - LREAL - Gleitkommazahl Beschleunigung Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung lrSetpPosition...
IEC-Programmierung MultiMotion-Achsfunktionen 6.5.4 PositioningRelative In der Betriebsart PositioningRelative werden Positionierprofile erzeugt, die auf relati- ven Positionen basieren. Die Betriebsart PositioningRelative bietet außerdem Konfigurationsmöglichkeiten, um die Fahrdistanz während einer relativen Positionierung zu ändern. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219942197387 Änderungen an diesen Variablen werden sofort übernommen.
Seite 70
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung xAcceptNewDistance Datentyp - BOOL • TRUE - Wenn eMode auf TargetPositionBased einge- stellt ist, wird mit einer steigenden Flanke eine Ände- rung an lrDistance übernommen. Dabei ergibt sich die neue Zielposition durch Addition von lrDistance auf die ursprüngliche Zielposition •...
Seite 71
IEC-Programmierung MultiMotion-Achsfunktionen Config Variablenname Beschreibung eModuloMode Datentyp - E_MODULOMODE Modulo-Verfahrstrategie: • MODULO_OFF Modulo absolut • MODULO_SHORT Modulo absolut - kürzester Weg • MODULO_CW Modulo absolut - positive Richtung • MODULO_CCW Modulo absolut - negative Richtung • MODULO_RELATIVE Modulo relativ Der Parameter wird mit steigender Flanke an xStart über- nommen.
Seite 72
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung eMode Datentyp - E_POSRELATIVEMODE Verhalten der Profilgeneration bei Änderung der Variable lrDistance: • DistanceChangeOFF Eine Änderung während der Bewegung wird ignoriert. Der neue Wert wird mit der steigenden Flanke an xStart übernommen. • StartPositionBased Eine Änderung während der Bewegung ist möglich und wird sofort übernommen.
Seite 73
IEC-Programmierung MultiMotion-Achsfunktionen stPresetValues Werte für die Initialisierung der Profilgeneration. Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung lrPosition Datentyp - LREAL - Gleitkommazahl Position lrVelocity Datentyp - LREAL - Gleitkommazahl Geschwindigkeit lrAcceleration Datentyp - LREAL - Gleitkommazahl Beschleunigung Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung lrSetpPosition...
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung xNewDistanceAccepted Datentyp - BOOL • TRUE - Neue Distanz akzeptiert • FALSE - Neue Distanz nicht akzeptiert 6.5.5 Die Betriebsart Jog generiert ein "Tippen"-Profil mit der angegebenen Konfiguration. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219942419723 Änderungen an diesen Variablen werden sofort übernommen.
Seite 75
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung xJogCW Datentyp - BOOL • TRUE - Profilgeneration der Betriebsart für eine Bewe- gung in positive Richtung mit dem Betrag der vorgege- benen Geschwindigkeit lrVelocity starten. Die vorgegebene Beschleunigung wirkt. • FALSE - Profilgeneration der Betriebsart stoppen. Die vorgegebene Bremsverzögerung wirkt.
Seite 76
IEC-Programmierung MultiMotion-Achsfunktionen stPresetValues Werte für die Initialisierung der Profilgeneration. Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung lrPosition Datentyp - LREAL - Gleitkommazahl Position lrVelocity Datentyp - LREAL - Gleitkommazahl Geschwindigkeit lrAcceleration Datentyp - LREAL - Gleitkommazahl Beschleunigung Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung lrSetpPosition...
IEC-Programmierung MultiMotion-Achsfunktionen 6.5.6 Tracking In der Betriebsart Tracking werden wegbasierte Bewegungsprofile erzeugt, die einer Masterquelle folgen. Diese Betriebsart hat die Funktion eines offenen und damit voll- ständig vom Anwender steuerbaren Eingangs zur Profilgeneration. Die Betriebsart erfüllt insbesondere diese Aufgaben: • Den Sollwertverlauf einer anderen Achse aufschalten In diesem Fall folgt eine Achse in der Betriebsart Tracking dem Sollwertverlauf einer anderen Achse, was zur Realisierung eines einfachen Synchronlaufs genutzt...
Seite 78
IEC-Programmierung MultiMotion-Achsfunktionen Änderungen an diesen Variablen werden sofort übernommen. Variablenname Beschreibung xActivate Datentyp - BOOL • TRUE - Aktivieren • FALSE - Anhalten Wird xActivate auf "FALSE" gesetzt, hält die Betriebs- art an der letzten Sollposition an und die Geschwindig- keit sowie die Beschleunigung springen auf Null.
Seite 79
IEC-Programmierung MultiMotion-Achsfunktionen stMasterSetpoints Werte des aufgeschalteten Master-Signals. Die Struktur stMasterSetpoints wird nur verarbeitet, wenn als MasterSource UserPro- gram eingestellt ist. Wenn die Betriebsart aktiviert und gestartet ist, folgt der Sollwert- verlauf der Achse dem an stMasterSetpoints.lrPosition eingespeisten Verlauf. Der An- wender ist dafür verantwortlich, Geschwindigkeiten und Beschleunigungen so zu be- grenzen, dass die Achse folgen kann.
Seite 80
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung eAcceleration Datentyp - E_ACCELERATIONFACTOR Beschleunigung des aufgeschalteten Master-Signals: • MINUTE_MINUTE (z.B. m/min • MINUTE_SECOND (z.B. m/min/s) • SECOND_SECOND (z.B. m/s Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung xProfileActive Datentyp - BOOL • TRUE - Die Profilgeneration ist aktiv •...
IEC-Programmierung MultiMotion-Achsfunktionen 6.5.7 Homing Die Betriebsart Homing in der Struktur ProfilGeneration ermöglicht im Gegensatz zum "Homing" (→ 2 52) aus dem Kapitel "Grundlegende Achsfunktionen" (Referenzierung des Umrichters) eine Referenzierung der Profilgeneration. Für die Referenzierung der Profilgeneration stehen im Wesentlichen dieselben Referenzfahrt-Typen wie für den Umrichter zur Verfügung.
Seite 82
IEC-Programmierung MultiMotion-Achsfunktionen ACHTUNG Bei Verwendung der Betriebsart "Homing" werden die Sollposition der Profilgenerati- on und die Sollposition/Istposition des Umrichters um einen Positions-Offset gegen- einander verschoben. Wird bei einer absoluten Positionierung der Profilgeneration nicht berücksichtigt, dass die Achse an eine um den Positions-Offset versetzte Posi- tion bewegt wird, kann es bei Achsen mit begrenztem Verfahrbereich oder mechani- schem Eingriff zu Kollisionen kommen.
Seite 83
IEC-Programmierung MultiMotion-Achsfunktionen Änderungen an diesen Variablen werden sofort übernommen. Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung xActivate Datentyp - BOOL • TRUE - Aktivieren • FALSE - Anhalten Wird xActivate auf "FALSE" gesetzt, hält die Betriebs- art an der letzten Sollposition an und die Geschwindig- keit sowie die Beschleunigung springen auf Null.
Seite 84
IEC-Programmierung MultiMotion-Achsfunktionen Config Die Dynamik-Parameter sind in Anwendereinheiten skaliert. Variablenname Beschreibung eReferenceTravelType Datentyp - E_REFSTRATEGY Referenzfahrttypen: • Deactivated Referenzfahrt deaktiviert • ZeroPulseNegDir (nicht unterstützt) Nullimpuls - negative Richtung • RefCamNegEnd Referenznocken - negatives Ende • RefCamPosEnd Referenznocken - positives Ende •...
Seite 86
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung xStopped Datentyp - BOOL • TRUE - Die Profilgeneration ist gestoppt • FALSE - Die Profilgeneration ist aktiv eHomingState Datentyp - E_HOMINGSTATE Schritt in dem sich die Referenzierung gerade befindet. • Init • AlignEncoder • Homing •...
IEC-Programmierung MultiMotion-Achsfunktionen 6.5.8 Camming HINWEIS ® Funktionsmodul ist nur mit der Lizenz MOVIKIT MultiMotion Camming verfügbar. Unter dem Begriff Camming (Kurvenscheibe) versteht man eine eindeutige Zuordnung der Positionen zwischen einem Master-Antrieb und einem Slave-Antrieb. In der Be- triebsart Camming werden masterbasierte Profile erzeugt, bei denen sich die Position der Slave-Achse aus der Position der Master-Achse basierend auf einer Kurvenbe- schreibung ergibt.
Seite 89
IEC-Programmierung MultiMotion-Achsfunktionen • Aus dem externen Master-Signal wird über Ein-/Auskuppelmechanismen eine in- terne Master-Position gebildet. Diese interne Master-Position durchläuft den Be- reich der x-Achse der Kurvenbeschreibung. Die Ein-/Auskuppelmechanismen wer- den über die Struktur "CONFIG" konfiguriert. • Die interne Master-Position wird nach der Verarbeitung des X-Offset der Kurven- beschreibung zur Kurvenauswertung geleitet.
Seite 90
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung xSetSlaveValue Datentyp - BOOL Diese Variable wird nur ausgewertet, wenn die Betriebsart Camming deaktiviert ist (xActivate muss den Wert "FAL- SE" haben). • TRUE - Mit steigender Flanke die interne Slaveposition auf den unter lrSlaveValue definierten Wert setzen. Damit steht dem Anwender eine Möglichkeit zum Steu- ern der internen Slave-Position zur Verfügung.
Seite 91
IEC-Programmierung MultiMotion-Achsfunktionen Start Variablenname Beschreibung lrGearInDistance Datentyp - LREAL - Gleitkommazahl Einkuppelweg (in Anwendereinheiten der Master-Achse) lrGearInDistance = 0 bedeutet, dass der Slave ohne Über- gangsfunktion einkuppelt. Je nach Kurvenprofil kann es da- zu kommen, dass der Sollwertverlauf unstetig ist. Mit lrGearInDistance >...
Seite 92
IEC-Programmierung MultiMotion-Achsfunktionen Stop Variablenname Beschreibung lrGearOutDistance Datentyp - LREAL - Gleitkommazahl Auskuppelweg (in Anwendereinheiten der Master-Achse) lrGearOutDistance = 0 bedeutet, dass der Slave ohne Über- gangsfunktion auskuppelt. Je nach Kurvenprofil kann es da- zu kommen, dass der Sollwertverlauf unstetig ist. Mit lrGearOutDistance >...
Seite 93
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung eStopMode Datentyp - E_CAMMINGSTOPMODE Verhalten beim Setzen von xStart: • CW_DIRECT Sofortiges Auskuppeln mit steigender Flanke von xStart bei positiver Bewegungsrichtung des Masters • CCW_DIRECT Sofortiges Auskuppeln mit steigender Flanke von xStart bei negativer Bewegungsrichtung des Masters •...
Seite 94
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung eChangeMode Datentyp - E_CAMMINGCHANGEMODE Trigger des Kurvenwechsels: • DIRECT • WITH_CW_INTERNAL_POSITION • WITH_CCW_INTERNAL_POSITION • WITH_CW_CCW_INTERNAL_POSITION • WITH_CW_EXTERNAL_POSITION • WITH_CCW_EXTERNAL_POSITION • WITH_CW_CCW_EXTERNAL_POSITION eTransitionMode Datentyp - E_CAMMINGTRANSITIONMODE Verhalten beim Kurvenwechsel: • DIRECT - Sofortiges Wechseln ® Handbuch – MOVIKIT MultiMotion / MultiMotion Camming...
Seite 95
IEC-Programmierung MultiMotion-Achsfunktionen FileHandling Alle Steuer- und Statusinformationen im Zusammenhang mit der Dateiverarbeitung der Betriebsart Camming sind in dieser Struktur zu finden. Dies umfasst das Einlesen einer Kurvenliste CurveConfig.xml und von Kurvendateien *.camCurve. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219965716875 Das Einlesen der Kurvenliste CurveConfig.xml erfolgt nicht automatisch bei der In-...
Seite 96
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung sFileName Datentyp - STRING(80) Name der Kurvenbeschreibungsdatei, die eingelesen werden soll uiCurveNumber Datentyp - UINT Nummer der Kurvenbeschreibungsdatei aus der Struktur CurveFileList, die eingelesen werden soll CurveFileList Angaben zur Kurvenbeschreibungsdatei Variablenname Beschreibung uiNumberOfLastCurveFile Datentyp - UINT Nummer der letzten Kurvenbeschreibungsdatei in der Liste sCurveFileName...
Seite 97
IEC-Programmierung MultiMotion-Achsfunktionen XOffsetCorrection Mit der Funktion XOffsetCorrection kann die Phasenlage des Slave Profils "on-the-fly" korrigiert werden. Die Korrektur wird mit Hilfe eines zeitbasierten Profilgenerators durchgeführt. Die Dynamik-Parameter sind skaliert in Anwendereinheiten der Master- Achse. Damit werden typischerweise Korrekturen in der Phasenlage vorgenommen. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor...
Seite 98
IEC-Programmierung MultiMotion-Achsfunktionen Die Dynamik-Parameter sind in Anwendereinheiten der Master-Achse skaliert. Variablenname Beschreibung xStart Datentyp - BOOL • TRUE - Starten xStart auf "TRUE" setzen, um ein Verfahrprofil zu generie- ren, welches den internen Master gegenüber dem exter- nen Master um lrCorrection verschiebt. Dabei bleibt der Bezugspunkt konstant, d.h.
Seite 99
IEC-Programmierung MultiMotion-Achsfunktionen CONFIG Variablenname Beschreibung eOffsetCorrectionMode Datentyp - E_OFFSETCORRECTIONMODE • ABSOLUTE Den in lrCorrection vorgegebene Wert absolut interpre- tieren. Eine Flanke an xStart bei unverändertem Wert führt zu keiner weiteren Korrektur. Die durchführbare Korrektur ist nach oben und unten begrenzt. Die maxi- male Korrektur beträgt: Auflösung Slave-Achse lrCorrection...
Seite 100
IEC-Programmierung MultiMotion-Achsfunktionen YOffsetCorrection Mit der Funktion YOffsetCorrection kann die Amplitudenlage der Slave-Achse "on-the- fly" korrigiert werden. Die Korrektur wird mit Hilfe eines zeitbasierten Profilgenerators durchgeführt. Die Dynamik-Parameter sind in Anwendereinheiten der Slave-Achse skaliert. Folgende Steuer- und Statusvariablen stehen zur Verfügung: Schnittstelle im IEC-Editor 9007219942577163...
Seite 101
IEC-Programmierung MultiMotion-Achsfunktionen Die Dynamik-Parameter sind in Anwendereinheiten der Slave-Achse skaliert. Variablenname Beschreibung xStart Datentyp - BOOL • TRUE - Starten xStart auf "TRUE" setzen, um ein Verfahrprofil zu generie- ren, welches die Slaveposition gegenüber der Kurvenposi- tion um lrCorrection verschiebt. Dabei bleibt der Bezugs- punkt konstant, d.h.
Seite 102
IEC-Programmierung MultiMotion-Achsfunktionen CONFIG Variablenname Beschreibung eOffsetCorrectionMode Datentyp - E_OFFSETCORRECTIONMODE • ABSOLUTE Den in lrCorrection vorgegebene Wert absolut interpre- tieren. Eine Flanke an xStart bei unverändertem Wert führt zu keiner weiteren Korrektur. Die durchführbare Korrektur ist nach oben und unten begrenzt. Die maxi- male Korrektur beträgt: Auflösung Slave-Achse lrCorrection...
Seite 103
IEC-Programmierung MultiMotion-Achsfunktionen Adjust Die Adjust-Funktion wird genutzt, um die Achse aus ihrem aktuellen dynamischen Zu- stand (Position, Geschwindigkeit, Beschleunigung) in den durch die Betriebsart Cam- ming vorgegebenen Zustand zu überführen. Bestimmte Steuerereignisse können zu einer plötzlichen Änderung dieses Zustands führen. Die Adjust-Funktion kompensiert diese plötzlichen Änderungen durch Addition eines entsprechenden Offsets.
Seite 105
IEC-Programmierung MultiMotion-Achsfunktionen Die Dynamik-Parameter sind in Anwendereinheiten der Slave-Achse skaliert. Variablenname Beschreibung xModeActive Datentyp - BOOL • TRUE - Die Betriebsart ist aktiviert • FALSE - Die Betriebsart ist nicht aktiviert xProfileActive Datentyp - BOOL • TRUE - Die Profilgeneration ist aktiv •...
Seite 106
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung xGetNewCamDes- Datentyp - BOOL criptionDone • TRUE - Kurvenwechsel durchgeführt • FALSE - Kurvenwechsel nicht durchgeführt stSetpointMasterCam Sollwerte interner Master. Die Dynamik-Parameter sind in Anwendereinheiten der Master-Achse skaliert. Variablenname Beschreibung lrPosition Datentyp - LREAL - Gleitkommazahl Position lrVelocity Datentyp - LREAL - Gleitkommazahl...
Seite 107
IEC-Programmierung MultiMotion-Achsfunktionen CamDescription Im Normalfall werden die Kurvenprofile, welche in der Betriebsart Camming verarbei- tet werden sollen, mit Hilfe des Cam-Editors entworfen, dann als Dateien auf die Spei- ® cherkarte des MOVI-C CONTROLLER geladen und von dort schließlich zur Verarbei- tung eingelesen.
Seite 108
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung _uiNrOfActiveCamSeg- Datentyp - UINT ment Nummer des momentan aktiven Kurvensegments Variablenname Beschreibung uiNrOfLastActiveCam- Datentyp - UINT Segment Nummer des letzten aktiven Kurvensegments aCamSegment Struktur zur Beschreibung der Kurvensegmente. Ein Array bestehend aus 20 Kurvensegmenten aCamSegment[1..20] Struktur zur Beschreibung eines der Kurvensegmente. Ein Kurvensegment besteht wiederum aus mehreren Komponenten.
Seite 109
IEC-Programmierung MultiMotion-Achsfunktionen Die in den folgenden Kapiteln erläuterten Variablen der Segmentgrenzen sind im Cam-Editor wie in folgender Grafik zu sehen tabellarisch dargestellt: 29017372427 fbLeft Funktionswerte an der linken Segmentgrenze. stSegmentBorder Variablenname Beschreibung Datentyp - LREAL - Gleitkommazahl Position der Masterachse Datentyp - LREAL - Gleitkommazahl Position der Slave-Achse lrVy...
Seite 110
IEC-Programmierung MultiMotion-Achsfunktionen Variablenname Beschreibung Datentyp - LREAL - Gleitkommazahl Position der Slave-Achse lrVy Datentyp - LREAL - Gleitkommazahl erste Ableitung dY/dX lrAy Datentyp - LREAL - Gleitkommazahl zweite Ableitung d Y/dX lrJy Datentyp - LREAL - Gleitkommazahl dritte Ableitung d Y/dX CamProfileHandler Struktur in der alle verfügbaren mathematischen Kurvenfunktionen gebündelt sind.
Diagnose Monitor Diagnose Monitor HINWEIS Nur mit der Berechtigungsstufe "Advanced" verfügbar. ® Der Monitor ist ein Tool in der Engineering-Software MOVISUITE zum Überwachen und Steuern von Achsen oder Achsgruppen. ® Klicken Sie in der MOVISUITE zum Öffnen des Tools im Kontextmenü eines entspre- chenden Knotens unter "Tools"...
Anwendungsbeispiele Velocity Anwendungsbeispiele Velocity 8.1.1 Einfaches Verfahren mit Modulo-Achse Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Modulo-Achse in der Be- triebsart "Velocity" einfach über die Anwenderschnittstelle verfahren. Ansteuerung Steuern Sie die Achse in der Struktur Velocity folgendermaßen an: • Setzen Sie xActivate auf "TRUE", um die Betriebsart zu aktivieren. •...
Anwendungsbeispiele Velocity 8.1.2 Einfaches Verfahren mit Linear-Achse Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Linear-Achse in der Be- triebsart "Velocity" einfach über die Anwenderschnittstelle verfahren. Ansteuerung Steuern Sie die Achse in der Struktur Velocity folgendermaßen an: • Setzen Sie xActivate auf "TRUE", um die Betriebsart zu aktivieren. •...
Anwendungsbeispiele Velocity 8.1.3 Stoppen an einer absoluten Position Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie die Profilgeneration in der Be- triebsart "Velocity" so ansteuern, dass die Bewegung immer in derselben absoluten Position stoppt. Ansteuerung Steuern Sie die Achse in der Struktur Velocity folgendermaßen an: •...
Anwendungsbeispiele Velocity Anmerkung: Im Sollwertverlauf ist zu erkennen, dass die Bewegung nicht sofort mit der fallenden Flanke an xStart stoppt. Die Bremsverzögerung wirkt verzögert, sodass die Bewegung in der konfigurierten Position stoppt, in diesem Fall an der Nullposition. 8.1.4 Stoppen an einer relativen Position Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie die Profilgeneration in der Be- triebsart "Velocity"...
Seite 118
Anwendungsbeispiele Velocity Trace-Aufzeich- nung 25424777739 SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.In.xActivate SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.In.xStart SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.Out.xInVelocity SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.Out.xStopped Anmerkung: Im Sollwertverlauf ist zu erkennen, dass die Bewegung nicht sofort mit der fallenden Flanke an xStart stoppt. Die Bremsverzögerung wirkt verzögert, sodass die Bewegung in der konfigurierten Position stoppt, in diesem Fall 100 mm nach der fallenden Flanke an xStart.
Anwendungsbeispiele Positioning Positioning 8.2.1 Einfache Positionierung mit Linear-Achse Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Linear-Achse in der Be- triebsart "Positioning" über die Anwenderschnittstelle einfach positioniert. Ansteuerung Steuern Sie die Achse in der Struktur Positioning folgendermaßen an: • Setzen Sie xActivate auf "TRUE", um die Betriebsart zu aktivieren. •...
Anwendungsbeispiele Positioning Trace-Aufzeich- nung 25424644619 SEW_GVL.Interface_Axis2.ProfileGeneration.Positioning.In.xActivate SEW_GVL.Interface_Axis2.ProfileGeneration.Positioning.In.xStart SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Positioning.Out.xInPosition SEW_GVL.Interface_Axis2.ProfileGeneration.Positioning.Out.xStopped 8.2.2 Einfache Positionierung mit Modulo-Achse Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Modulo-Achse in der Be- triebsart "Positioning" über die Anwenderschnittstelle einfach positionieren. Ansteuerung Steuern Sie die Achse in der Struktur Positioning folgendermaßen an: •...
Seite 121
Anwendungsbeispiele Positioning Schnittstelle im IEC-Editor 20735776267 Anmerkung: Sobald der Sollwertverlauf die Zielposition erreicht hat, erhalten Sie in der Struktur OUT die Rückmeldung xInPosition = "TRUE". Trace-Aufzeich- nung 25424665099 SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.In.xStart SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.Out.xInPosition SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.Out.xStopped Anmerkung: Der Modulo-Mode wird mit steigender Flanke an xStart übernommen, also nicht wäh- rend der Bewegung.
Anwendungsbeispiele Positioning Relative Positioning Relative 8.3.1 Relative Positionierung in der Betriebsart DistanceChangeOFF Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Achse in der Betriebsart "Di- stanceChangeOFF" über die Anwenderschnittstelle relativ positionieren. In der Betriebsart "DistanceChangeOFF" wird eine Änderung an lrDistance ignoriert. Die Zielposition ergibt sich aus der Summe der Startposition und lrDistance zum Zeit- punkt der steigenden Flanke an xStart.
Anwendungsbeispiele Positioning Relative Trace-Aufzeich- nung 25424695819 SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.xStart SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.lrDistance SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.Out.xInPositi- SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.Out.xStopped Anmerkung: lrDistance wird während der Bewegung von 200.0 auf 400.0 geändert. Die Änderung wird ignoriert, und die Bewegung stoppt bei 200.0. 8.3.2 Relative Positionierung in der Betriebsart StartPositionBased Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Achse in der Betriebsart "StartPositionBased"...
Seite 124
Anwendungsbeispiele Positioning Relative Schnittstelle im IEC-Editor 20853341963 Trace-Aufzeich- nung 25424703499 SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.xStart SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.lrDistance SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.Out.xInPositi- SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.Out.xStopped Anmerkung: lrDistance wird während der Bewegung von 200.0 auf 400.0 geändert. Die Änderung wird bezogen auf die Start-Position; die Bewegung stoppt bei 400.0. ®...
Anwendungsbeispiele Positioning Relative 8.3.3 Relative Positionierung in der Betriebsart ActualPositionBased Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Achse in der Betriebsart "ActualPositionBased" über die Anwenderschnittstelle relativ positionieren. Eine Änderung an lrDistance wird übernommen. Die neue Zielposition ergibt sich ba- sierend auf der aktuellen Position der Profilgeneration zum Zeitpunkt der Änderung plus lrDistance.
Anwendungsbeispiele Positioning Relative Trace-Aufzeich- nung 25424688139 SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.xStart SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.In.lrDistance SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.Out.xInPositi- SEW_GVL.Interface_Axis1.ProfileGeneration.PositioningRelative.Out.xStopped Anmerkung: lrDistance wird während der Bewegung von 200.0 auf 400.0 geändert. Die Änderung wird bezogen auf die Position zum Zeitpunkt der Änderung (hier: 50.0); die Bewegung stoppt bei 450.0.
Seite 128
Anwendungsbeispiele Positioning Relative Während der Bewegung wird mit der steigenden Flanke von xAcceptNewDistance der Wert von lrDistance (hier: "200.0") zur ursprünglichen Zielposition (hier: "200.0") ad- diert. Die Bewegung stoppt bei 400.0. Die Übernahme der neuen Zielposition wird mit xNewDistanceAcccepted = "TRUE" angezeigt. ®...
Anwendungsbeispiele Homing Homing 8.4.1 Referenzierung mit Grundstellungsfahrt Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine Referenzierung mit Grund- stellungsfahrt konfigurieren. Ansteuerung Steuern Sie die Achse in der Struktur Homing folgendermaßen an: • Setzen Sie xActivate auf "TRUE", um die Betriebsart zu aktivieren. •...
Seite 130
Anwendungsbeispiele Homing Trace-Aufzeich- nung 25429411467 SEW_GVL.Interface_Axis1.ProfileGeneration.Homing.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.Homing.In.xStart SEW_GVL.Interface_Axis1.ProfileGeneration.Homing.In.xReferenceCam SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis1.ProfileGeneration. Homing.Out.xInPosition SEW_GVL.Interface_Axis1. Homing.PositioningRelative.Out.xDone Anmerkung: Mit der unter stStartPositionMove.lrAcceleration eingestellten Beschleunigung wird auf die unter CONFIG.lrSearchVelocity definierte Suchgeschwindigkeit gefahren. Mit Erkennung des Nockens an IN.xReferenceCam verzögert die Bewegung mit der unter stStartPositionMove.lrdeceleration angegebenen Bremsverzögerung auf die Freifahrgeschwindigkeit CONFIG.lrClearVelocity.
Anwendungsbeispiele Homing 8.4.2 Fliegendes Referenzieren Folgendes Anwendungsbeispiel zeigt, wie Sie eine Referenzierung im laufenden Be- trieb durchführen. Eine fliegende Referenzierung kann bei endlos drehenden Achsen ohne mechanischen Eingriff, wie beispielsweise einfache Transportbänder oder Dreh- teller, sinnvoll sein. In beiden Fällen bietet es sich an, einen Positionsnullpunkt mit Be- zug auf ein Produkt zu definieren.
Seite 132
Anwendungsbeispiele Homing Die folgende Trace-Aufzeichnung zeigt das entsprechende Verhalten: Mit steigender Flanke an xStart wird der aktuelle Positionswert vom Positions-Offset abgezogen. Die Sollposition der Profilgeneration springt auf den Wert 0, wobei Geschwindigkeit und Beschleunigung in ihrem Verlauf nicht verändert werden. Die Position der Profilgene- ration gibt nun an, wie weit die Vorderkante des Produkts von der Lichtschranke ent- fernt ist.
Anwendungsbeispiele Tracking Tracking 8.5.1 Tracking mit MasterSource ConfiguredAxis Das nachfolgende Anwendungsbeispiel zeigt Ihnen, wie Sie die Betriebsart "Tracking" mit einer konfigurierten Achse als Master-Quelle konfigurieren. Im Beispiel folgt Achse 2 der Achse 1. Achse 1 verfährt dabei in der Betriebsart "Velocity" mit 60 Takten/min. Als Proportionalfaktor sind 100 mm/Takt eingestellt.
Seite 134
Anwendungsbeispiele Tracking Trace-Aufzeich- nung [10] 25424726539 SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.In.xStart SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Tracking.In.xActivate SEW_GVL.Interface_Axis2.ProfileGeneration.Tracking.In.xStart SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity [10] SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration Anmerkung: • Die Messung mit Cursor1 und Cursor2 zeigt, dass die Slave-Achse genau 100 mm fährt, während die Master-Achse 1-Takt zurücklegt •...
Anwendungsbeispiele Camming Camming ® Zum Durchführen dieses Anwendungsbeispiels benötigen Sie die Lizenz MOVIKIT MultiMotion Camming. 8.6.1 Grundlegende Vorgehensweise Die folgende Schrittanleitung beschreibt die grundlegende Vorgehensweise beim Ver- wenden der Betriebsart "Camming": ü Es wurden mit dem CamEditor die gewünschten Kurvenbeschreibungen angelegt und auf die Speicherkarte (Verzeichnis "\DATA\Camming\Achsname") des ®...
Seite 136
Anwendungsbeispiele Camming 20739422091 4. Lesen Sie mit xReadCurveFile = "TRUE" die über uiCurveNumber definierte Kur- venbeschreibungsdatei der Liste ein. ð xCurveFileRead meldet das erfolgreiche Einlesen zurück. ð Der Dateiname der zuletzt eingelesenen Datei wird unter sLastReadCurveFile angezeigt. 20739591563 ® Handbuch – MOVIKIT MultiMotion / MultiMotion Camming...
Seite 137
Anwendungsbeispiele Camming 5. Aktivieren Sie mit IN.xActivate = "TRUE" die Betriebsart "Camming". ð Der berechnete Versatz zwischen aktueller Position der Slave-Achse und der Kurvenposition wird unter Adjust.OUT.lrAdjustValue angezeigt 20741640203 6. Geben Sie die Geschwindigkeit Adjust.IN.lrVelocity sowie die Beschleunigung Ad- just.IN.lrAcceleration vor. 20880407435 7.
Seite 138
Anwendungsbeispiele Camming 8. Starten Sie die Betriebsart "Camming". 20688221323 ð Beim Starten / Stoppen wirken die in der CONFIG-Struktur eingestellten Para- meter für das Einkuppeln / Auskuppeln und bieten eine große Vielfalt an ver- schiedenen Möglichkeiten. Diese sind nachfolgend genauer betrachtet. ®...
Anwendungsbeispiele Camming 8.6.2 Ein-/Auskuppeln bei stehender Master-Achse Slave-Achse einkuppeln 1. Setzen Sie IN.xStart auf "TRUE". ð Wenn in der Struktur CONFIG eine entsprechende Einstellung (z. B. eStartMo- de= CW_CCW_DIRECT) konfiguriert ist, wird die Slave-Achse sofort eingekup- pelt. ð xProfileActive meldet "TRUE" zurück. ð...
Seite 141
Anwendungsbeispiele Camming Im CAM Editor stellt sich der Kurvenverlauf wie folgt dar: 9007219998529675 ® Handbuch – MOVIKIT MultiMotion / MultiMotion Camming...
Seite 142
Anwendungsbeispiele Camming Slave-Achse auskuppeln 1. Setzen Sie zum Auskuppeln der Achse xStart auf "FALSE". ð Wenn in der Struktur CONFIG eine entsprechende Einstellung (z. B. eStopMo- de = "CW_DIRECT") konfiguriert ist, wird die Slave-Achse sofort ausgekuppelt. ð xProfileActive meldet "FALSE" zurück. ð...
Anwendungsbeispiele Camming 8.6.3 Ein-/Auskuppeln bei sich bewegender Master-Achse Direktes Einkuppeln ohne Übergangsfunktion 1. Setzen Sie zum Einkuppeln der Achse xStart = "TRUE". ð Wenn in der Struktur CONFIG eine entsprechende Einstellung (z. B. eStartMo- de = "CW_DIRECT") konfiguriert ist, wird die Achse sofort eingekuppelt. ð...
Seite 145
Anwendungsbeispiele Camming Direktes Auskuppeln ohne Übergangsfunktion 1. Setzen Sie zum Auskuppeln der Achse xStart = "FALSE". ð Wenn in der Struktur CONFIG eine entsprechende Einstellung (z. B. eStopMo- de = "CW_DIRECT") konfiguriert ist, wird die Achse sofort ausgekuppelt. ð xProfileActive meldet "FALSE" zurück. ð...
Seite 147
Anwendungsbeispiele Camming Direktes Einkuppeln mit Übergangsfunktion Zur Vermeidung von Sprüngen im Sollwertverlauf beim Einkuppeln eine masterbasier- te Übergangsfunktion nutzen. Dazu lrGearInDistance > "0" einstellen. 1. Setzen Sie lrGearInDistance auf "0.5". 9007219999439499 ð Die interne Masterposition beginnt ihre Bewegung mit dem Setzen von xStart. ð...
Seite 148
Anwendungsbeispiele Camming 25424593419 SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.In.xStart SEW_GVL_Internal.Axis2._fbCammingProfile.stMasterHandlerOut.lrPosition SEW_GVL_Internal.Axis2._fbCammingProfile.stMasterHandlerOut. lrVelocity SEW_GVL_Internal.Axis2._fbCammingProfile.stMasterHandlerOut. lrAccelerati- SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.Out.eGearingState Direktes Auskuppeln mit Übergangsfunktion Zur Vermeidung von Sprüngen im Sollwertverlauf beim Auskuppeln eine masterba- sierte Übergangsfunktion nutzen. Dazu lrGearOutDistance > "0" einstellen. 1.
Seite 149
Anwendungsbeispiele Camming ð Wenn xStart auf "FALSE" gesetzt wird, folgt der Sollwertverlauf des internen Masters einer Übergangsfunktion bis zum Stillstand stetig ohne Sprünge ð Der Sollwertverlauf der Slave-Achse folgt dem Verlauf der internen Masterposi- tion 25424578955 SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.In.xStart SEW_GVL_Internal.Axis2._fbCammingProfile.stMasterHandlerOut.lrPosition SEW_GVL_Internal.Axis2._fbCammingProfile.stMasterHandlerOut.
Seite 150
Anwendungsbeispiele Camming Einkuppeln auf Referenzposition ohne Übergangsfunktion Zum Konfigurieren der Phasenlage zwischen internem und externem Master beim Starten eine Referenzposition lrGearInReferencePosition berücksichtigen. 1. Definieren Sie eine Referenzposition lrGearInReferencePosition. 2. Legen Sie mit eStartMode das Verhalten beim Setzen von xStart fest. 9007219999481611 ð...
Seite 152
Anwendungsbeispiele Camming Auskuppeln auf Stopp-Position ohne Übergangsfunktion Über lrGearOutStopPosition können Sie die Position, an der der Sollwertverlauf nach dem Auskuppeln stoppt, ansteuern. 1. Setzen Sie lrGearOutStopPosition auf "0". 2. Setzen Sie eStopMode auf "WITH_CW_EXTERNAL_POSITION". 9007219999771403 ð Wenn xStart = "TRUE" gesetzt wird, bleibt die interne Masterposition am durch lrGearOutStopPosition definierten Wert stehen ð...
Seite 154
Anwendungsbeispiele Camming Einkuppeln auf Referenzposition mit Übergangsfunktion Sie können beim Einkuppeln mit Referenzposition auch eine Übergangsfunktion nut- zen, indem Sie lrGearInDistance > "0" einstellen wird. 1. Setzen Sie lrGearInDistance auf "0.5". 2. Setzen Sie lrGearInReferencePosition auf "0". 3. Setzen Sie eStartMode auf "WITH_CW_REFERENCE_POSITION". 9007219999779595 ð...
Seite 156
Anwendungsbeispiele Camming Auskuppeln auf Stopp-Position mit Übergangsfunktion Sie können auch beim Auskuppeln in eine definierte Stopp-Position eine Übergangs- funktion nutzen, indem Sie lrGearOutDistance > "0" einstellen. 1. Setzen Sie lrGearOutDistance auf "0.5". 2. Setzen Sie lrGearOutStopPosition auf "0". 3. Setzen Sie eStartMode auf "WITH_CW_EXTERNAL_POSITION". 9007219999851787 ð...
Anwendungsbeispiele Camming 8.6.4 Phasenlage verschieben Über die Struktur XOffsetCorrection wird die Phasenverschiebung gesteuert. Im fol- genden Beispiel verschiebt sich die Phasenlage um einen halben Takt. 1. Setzen Sie IN.lrCorrection auf "0,5". 20741853067 ð Die Phasenlage verschiebt sich um einen halben Takt: ®...
Seite 159
Anwendungsbeispiele Camming 25424636939 SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.XOffsetCorrecti- on.In.xStart SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.XOffsetCorrecti- on.Out.xInPosition Anmerkung: Nach xStart = "TRUE" an XOffsetCorrection wird die Phasenlage um lrCorrection (hier: 0.5) verschoben. Wenn die Phasenverschiebung eingestellt ist, wird xInPosition = "TRUE".
Anwendungsbeispiele Camming 8.6.5 Amplitude verschieben Eine Amplitudenverschiebung wird über die Struktur YOffsetCorrection gesteuert. Im folgenden Beispiel verschiebt sich die Amplitude um 50 mm. 1. Setzen Sie IN.lrCorrection auf "50". 20742821259 ð Die Amplitude verschiebt sich um 50mm: ® Handbuch – MOVIKIT MultiMotion / MultiMotion Camming...
Seite 161
Anwendungsbeispiele Camming 25424547723 SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.YOffsetCorrecti- on.In.xStart SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.YOffsetCorrecti- on.Out.xInPosition Anmerkung: Nach xStart = "TRUE" an YOffsetCorrection wird die Amplitude um lrCorrection (hier: 50.0) verschoben. Wenn die Amplitudenverschiebung eingestellt ist, wird xInPosition = "TRUE".
Anwendungsbeispiele Camming 8.6.6 eCycleMode verwenden Die Variable eCycleMode bietet verschiedene Einstellungsmöglichkeiten: Einstellung: ADJUST_SLAVE_REFERENCE_POSITION In dieser Einstellung wird nach Durchlaufen eines Kurvenprofils der Bezugspunkt für die nächste Kurve auf den Endpunkt der vorangehenden Kurve gelegt. Dadurch kön- nen Kurven, die mit der Slave-Position 0 beginnen, stetig aneinander gereiht werden. Im Beispiel wird zwischen folgende Kurven gewechselt, sodass diese mehrmals hin- tereinander durchlaufen.
Seite 163
Anwendungsbeispiele Camming Nachfolgende Trace-Aufzeichnung zeigt einen Verlauf, in dem zuerst dreimal die Kur- ve 1, anschließend zweimal die Kurve 2 und zuletzt wieder die Kurve 1 durchlaufen wird: 29006111755 SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.IN.xGetNewCamDes- cription SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.OUT. xGetNewCamDe- scriptionDone SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolation.
Seite 164
Anwendungsbeispiele Camming Ein einfacher Anwendungsfall könnte die Ansteuerung einer Ausschleusung sein. Die- se wird gesteuert, indem zwischen folgenden vier Kurven umgeschaltet wird: in Stellung in Stellung "Aussschleusen" schalten "Ausschleusen" stehen in Stellung in Stellung "Durchfahren" schalten "Durchfahren" stehen 29109277323 In allen Kurven entspricht die Position des Kurvenprofils der absoluten Position der Slave-Achse, d. h.
Anwendungsbeispiele Camming 8.6.7 Kurvenbeschreibung mit Konstruktoren erstellen Zur Erstellung einer Kurvenbeschreibung aus dem IEC-Programm heraus ist es aus folgenden Gründen nicht ratsam direkt in die entsprechende Datenstruktur zu schrei- ben: • Die Daten sind möglicherweise nicht konsistent. Es erfolgt keine Prüfung, ob die eingestellten Werte an den Grenzen mit der ge- wählten mathematischen Funktion überhaupt realisierbar sind.
Seite 167
Anwendungsbeispiele Camming • "RestVelocity" Definiert ein Rast-Geschwindigkeit-Profil mit (Xa, Ya, Xe, Ye, Ve); Va = Aa = Ae = 29017550987 • "VelocityRest" Definiert ein Geschwindigkeit- Rast -Profil mit (Xa, Ya, Va, Xe, Ye); Ve = Aa = Ae 29017554059 • "Common"...
Seite 168
Anwendungsbeispiele Camming Darüber hinaus werden zwei weitere Konstruktoren-Typen unterschieden: • "Add"-Konstruktoren, fügen der Kurvenbeschreibung ein Segment hinzu, wobei sich die Segmentgrenzen aus den dem Konstruktor übergebenen Parametern er- geben. • "Append"-Konstruktoren fügen der Kurvenbeschreibung ein Segment hinzu, wobei sich die Werte an der linken Grenze aus den Werten an der rechten Grenze des vorangehenden Segments ergeben.
Seite 169
Anwendungsbeispiele Camming Alternativ kann der Weg über die Eingabehilfe ("F2") gewählt werden, wenn in der Textsuche die Bezeichnung eines Konstruktors (z. B. "Add") angegeben wird: 29017582987 automatische Codegenerierung erzeugt für jede Achse, welche ® MOVIKIT MultiMotion Camming nutzt, eine Variable vom Typ "CamDescriptionSche- duler".
Seite 170
Anwendungsbeispiele Camming HINWEIS Ein Konstruktor fügt mit jedem erfolgreichen Aufruf der Kurvenbeschreibung ein Seg- ment hinzu. Ein erfolgreicher Aufruf ist innerhalb eines PLC-Zyklus verarbeitet. Daher ist darauf zu achten, dass ein Konstruktor nicht in mehrere Zyklen hintereinander auf- gerufen wird. Nachfolgend ist exemplarisch der Programmcode für die Konfiguration der Kurvenbe- schreibung einer einfachen fliegenden Säge dargestellt: 29017706891...
Seite 171
Anwendungsbeispiele Camming Die mit den Konstruktoren konfigurierte Kurve stellt sich im Cam-Editor so dar: 29017713803 In der Trace-Aufzeichnung sehen die Verläufe schließlich wie folgt aus: 29017749003 SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrAcceleration ® Handbuch – MOVIKIT MultiMotion / MultiMotion Camming...
Anwendungsbeispiele Camming 8.6.8 Fliegendes Umschalten einer Kurvenbeschreibung HINWEIS Es liegt in der Verantwortung des Anwenders, dass im Moment der Umschaltung ein stetiger Sollwertverlauf erreicht wird. Im Beispiel sind Position, Geschwindigkeit und Beschleunigung im Umschaltpunkt alle gleich 0. In manchen Situationen ist es erforderlich, das Kurvenprofil einer Achse im laufenden Betrieb umzuschalten.
Seite 173
Anwendungsbeispiele Camming Nachfolgende Trace-Aufzeichnung zeigt exemplarisch den Verlauf dieser Konfigura- tion. Nach dem Setzen von xGetNewCamDescription auf "TRUE" wird mit Beginn des nächsten Taktes das Kurvenprofil umgeschaltet und xGetNewCamDescriptionDone gibt den Wert "TRUE" aus. 29006580619 SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolation. stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Camming.IN.xGetNewCamDes- cription...
Anwendungsbeispiele Modeübergreifend Modeübergreifend 8.7.1 Fliegende Umschaltung von Velocity zu Positioning mit Linear-Achse Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine fliegende Betriebsart-Um- schaltung, bei der eine Betriebsart die anderen ablöst, umsetzen. Die ursprüngliche Betriebsart wird zur selben Zeit inaktiv, wie die neue Betriebsart aktiv wird. Schalten Sie für die fliegende Umschaltung in demselben Zyklus in der Betriebsart "Velocity"...
Seite 175
Anwendungsbeispiele Modeübergreifend Trace-Aufzeich- nung 25424672779 SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.In.xActivate SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.In.xStart SEW_GVL.Interface_Axis2.ProfileGeneration.Positioning.In.xActivate SEW_GVL.Interface_Axis2.ProfileGeneration.Positioning.In.xStart SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.Out.xInVelocity SEW_GVL.Interface_Axis2.ProfileGeneration.Positioning.Out.xInPosition Anmerkung: Es ist für die fliegende Umschaltung wichtig, dass der Wechsel der Steuersignale in einem PLC-Zyklus der "TaskHighPrio" erkannt wird. Bei Ansteuerung über die Struk- tur Interface_AxisName sind die Map-Methoden in die "TaskHighPrio"...
Anwendungsbeispiele Modeübergreifend 8.7.2 Fliegende Umschaltung von Velocity zu Positioning mit Modulo-Achse Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie eine fliegende Betriebsart-Um- schaltung, bei der eine Betriebsart die anderen ablöst, umsetzen. Die ursprüngliche Betriebsart wird zur selben Zeit inaktiv, wie die neue Betriebsart aktiv wird. Schalten Sie für die fliegende Umschaltung in demselben Zyklus in der Betriebsart "Velocity"...
Seite 177
Anwendungsbeispiele Modeübergreifend Anmerkung: Im Unterschied zu einer Linear-Achse hängt in diesem Fall das Verhalten vom einge- stellten Modulo-Mode ab (Hier: "MODULO_CW"): Trace-Aufzeich- nung 25424680459 SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.In.xStart SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.In.xActivate SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.In.xStart SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis1._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis1.ProfileGeneration.Velocity.Out.xInVelocity SEW_GVL.Interface_Axis1.ProfileGeneration.Positioning.Out.xInPosition Anmerkung: Ähnlich wie beim StopAtPosition stoppt die Bewegung an der vorgegebenen Position (in diesem Fall die Nullposition).
Anwendungsbeispiele Modeübergreifend 8.7.3 Überlagerung der Betriebsarten Velocity und PositioningRelative Folgendes Anwendungsbeispiel zeigt Ihnen, wie Sie mehrere Betriebsarten gleichzei- tig aktivieren (Betriebsart "Velocity" und Betriebsart "Positioning Relative"). Dadurch lassen sich Bewegungsprofile überlagern. Ansteuerung Steuern Sie die Achse in der Struktur Velocity folgendermaßen an: •...
Seite 179
Anwendungsbeispiele Modeübergreifend Trace-Aufzeich- nung 25424718859 SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.In.xActivate SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.In.xStart SEW_GVL.Interface_Axis2.ProfileGeneration.PositioningRelative.In.xActivate SEW_GVL.Interface_Axis2.ProfileGeneration.PositioningRelative.In.xStart SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrPosition SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrVelocity SEW_GVL_Internal.Axis2._fbProfileGenerationControl._stOUTInterpolati- on.stSetpointsUserUnits.lrAcceleration SEW_GVL.Interface_Axis2.ProfileGeneration.Velocity.Out.xInVelocity SEW_GVL.Interface_Axis2.ProfileGeneration.PositioningRelative.Out.xInPositi- Anmerkung: Im Bereich zwischen Cursor1 und Cursor2 wird die Betriebsart "Velocity" von der Be- triebsart "PositioningRelative" überlagert, was insbesondere am Geschwindigkeitsver- lauf gut zu erkennen ist. ®...
Fehlercodes Camming Fehlercodes Camming udiMessageID Beschreibung 16#7400 Ein oder mehrere Parameter der Kurven-Segmente nicht gefun- 16#7401 Das Einlesen der Kurvenbeschreibung war fehlerhaft, Details beim ConfigHandling 16#7402 Die Anzahl der gelesenen Kurvensegmente ist außerhalb des zu- lässigen Bereiches (1-20) 16#7403 Das Interface zu ICurveFileList ist nicht verschaltet 16#7404 Das Interface zu ICamSegment ist nicht verschaltet 16#7405...
Fehlercodes DeviceAdapter DeviceAdapter Fehler udiMessageID Beschreibung 16#6A00 Umrichterfehler: Die Fehlernummer ist der Struktur "Inverter.Out" zu entnehmen Warnungen udiMessageID Beschreibung 16#195F0 Einer der übergebenen Dynamikwerte ist zu groß (kann nicht mit 16Bit abgebildet werden) 16#195F1 Einer der übergebenen Dynamikwerte ist zu klein (kann nicht mit 16Bit abgebildet werden) ProfileGeneration udiMessageID...
Seite 182
Fehlercodes ProfileGeneration udiMessageID Beschreibung 16#760E Die Tracking Slave Modulo-Grenzen (in PLC-Einheiten) liegen außerhalb des DINT Zahlenraums. 16#760F Tracking Zähler oder Nenner ist außerhalb der zulässigen Gren- 16#7610 Tracking Master Position ist außerhalb der zulässigen Grenzen 16#7611 Tracking Master Zeitbasis ist außerhalb der zulässigen Grenzen 16#7612 Tracking Slave Zeitbasis ist außerhalb der zulässigen Grenzen 16#7613...
Seite 188
SEW-EURODRIVE—Driving the world SEW-EURODRIVE GmbH & Co KG Ernst-Blickle-Str. 42 76646 BRUCHSAL GERMANY Tel. +49 7251 75-0 Fax +49 7251 75-1970 sew@sew-eurodrive.com www.sew-eurodrive.com...