Seite 1
Handbuch Global Drive Software Package - Positioner Template Positioner 9300 Servo PLC...
Seite 2
Beeinträchtigungen jeglicher Art. ã 2008 Lenze Drive Systems GmbH Ohne besondere schriftliche Genehmigung von Lenze Drive Systems GmbH darf kein Teil dieser Dokumentation vervielfältigt oder Dritten zugänglich gemacht werden. Wir haben alle Angaben in dieser Dokumentation mit größter Sorgfalt zusammengestellt und auf Übereinstimmung mit der beschriebe- nen Hard−...
Text in Kursivschrift dargestellt: · "Mit bReset_b..." Tipp! Informationen zu den Konventionen, die für die Variablenbezeichner von Lenze Systembausteinen, Funktionsblöcken sowie Funktionen verwendet werden, um eine durchgängige Benennung zu gewährleisten, finden Sie im Anhang der DDS−Online−Dokumentation "Einführung in die IEC 61131−3 Programmierung".
Cxxxx/y Subcode y der Codestelle Cxxxx (z. B. C0470/3 = Subcode 3 der Codestelle C0470) Drive PLC Developer Studio Funktionsblock Global Drive Control (Parametrier−Programm von Lenze) Parameter Codestellen zum Einstellen der Funktionalität eines Funktionsblocks bzw. einer Template−Funktion 9300 Servo PLC...
Template Positioner Vorwort und Allgemeines Unterstützte Funktionen Das Template Positioner unterstützt u. a. folgende Funktionen: · Positionieren in verschiedenen Modi: – Absolute Positionierung – Modulo Positionierung (kein Integratorüberlauf, z. B. für Rundtische) – Konstantfahrt – Relative Positionierung (Integratorüberlauf möglich) – Restwegpositionierung (Touch Probe) ·...
Seite 8
Template Positioner Vorwort und Allgemeines 1−4 TP Positioner Servo PLC 5.0 DE...
Template Positioner Grundlagen der Positionierung Grundlagen der Positionierung In den folgenden Unterkapiteln werden Ihnen die wichtigsten Grundlagen zur Positionierung näher erläutert. Welche Positionierfunktionen im Einzelnen vom Template Positioner unterstützt werden, entnehmen Sie Kap. 1.3 (^ 1−3) Was versteht man unter einer Positionierung? Unter einer Positionierung versteht man, ein oder mehrere bewegliche Maschinenteile ausgehend von einer Startposition in ein definiertes Ziel zu bewegen: ...
Template Positioner Grundlagen der Positionierung 2.2.2 Position Bei der Angabe der Position wird zwischen absoluter und relativer Position unterschieden. · Eine absolute Position gibt immer die Entfernung zur definierten Nullposition (Referenz) an: absolute Position = Zielposition − Nullposition 0-Position Abb. 2−3 Absolute Positionen ·...
Template Positioner Grundlagen der Positionierung 2.2.4 Beschleunigung/Verzögerung Über diese beiden Profil−Parameter wird festgelegt, wie schnell auf die maximale Geschwindigkeit beschleunigt und von dieser wieder bis zum Stillstand bzw. zur Endgeschwindigkeit verzögert werden soll. Hinweis Bei der Beschleunigung werden folgende zwei Arten unterschieden: ·...
Template Positioner Grundlagen der Positionierung 2.2.6 Referenzierung Mit einer Referenzierung wird das Maßsystem in der Maschine und damit die Lage der Nullposition innerhalb des physikalisch möglichen Fahrbereichs festgelegt: 0-Position Abb. 2−7 Referenzierung (Festlegung der Nullposition) Die Nullposition, auch Referenz genannt, kann durch eine Referenzfahrt oder ein Referenzsetzen de- finiert werden: ·...
Template Positioner Grundlagen der Positionierung 2.2.8 Restwegpositionierung (Touch Probe) Bei einer Restwegpositionierung verfährt der Antrieb auf ein definiertes Ziel bzw. führt eine endlose Konstantfahrt durch, bis durch eine Sensormarke Touch Probe in der PLC ausgelöst wird. Daraufhin verfährt der Antrieb nur noch einen definierten Restweg. ...
Template Positioner Grundlagen der Positionierung 2.2.10 Überschleifen (Overchange) Unter "Überschleifen" bzw. "Overchange" versteht man das Positionieren mit einer Endgeschwin- digkeit ungleich "0", d. h. bei Erreichen der Zielposition wird sofort ein zweiter Positioniervorgang ge- startet, ohne dass der Antrieb an der ersten Zielposition zum Stillstand kommt: V [m/s] ...
Template Positioner Grundlagen der Positionierung Maschinenparameter Für eine Positionierung sind neben den Parametern für das Profil natürlich noch die Parameter der Maschine von Bedeutung, die anhand eines Beispiels näher erläutert werden sollen. Die folgende Abbildung zeigt eine Linearachse mit Spindel, auf der sich ein beweglicher Schlitten be- findet: ...
Seite 16
Template Positioner Grundlagen der Positionierung Maximale Geschwindigkeit Max. zulässige Geschwindigkeit, die gefahren werden kann, dieser Parameter ist u. a. abhängig von der max. Motordrehzahl. Maximale Beschleunigung Max. zulässige Beschleunigung bzw. Verzögerung für Positioniervorgänge. Dieser Parameter ist u. a. abhängig vom Motormoment sowie der Massenträgheit der gesamten Me- chanik, die durch die Achse angetrieben wird.
PLC Developer Studio (DDS). In dieser Programmvorlage sind bereits vordefinierte Funktionsmo- dule und Programmteile enthalten, auf die Sie zur Lösung der entsprechenden Automatisierungsauf- gabe aufbauen können. Von Lenze werden Templates für verschiedene Technologiefunktionen angeboten, die einen speziell für die jeweilige Aufgabe definierten Funktionsumfang aufweisen. ·...
DancerControl W Target tool position DiameterCalculation W VLine DancerControl StopControl Outputs Inputs Target interface 9300 Servo PLC Abb. 3−1 Software−Architektur Anwenderschicht Definierte Schnittstelle von der Anwenderschicht zum Template Template mit vorgefertigten Technologie−Funktionen Definierte Schnittstelle vom Template zum entsprechenden Zielsystem 3−2...
Template Positioner Einführung 3.2.1 Grundkonzept Der Einsatz eines Templates basiert auf folgendem Grundkonzept: · Das Template stellt alle Kernfunktionen der entsprechenden Technologie zur Verfügung und kann vom Anwender nicht verändert werden. · Der Anwender bedient die Kernfunktionen des Templates aus seinem Anwenderprogramm heraus über die definierte Schnittstelle des Templates.
Seite 20
Template Positioner Einführung 3.2.3 Template Interface Das Template Interface bildet mit seinen festdefinierten Ein−/Ausgängen die Schnittstelle zwischen dem Anwenderbereich und dem Template selbst und ermöglicht u. a.: · Zugriff auf Soll− und Istwerte des Templates · Steuerung des Templates (z. B. Starten/Stoppen einer Antriebsfunktion) ·...
Touch−Probe−Initiator, angeschlossen am Digitalen Eingang 4 (X5/E4). Endschalter rechts (LOW−aktiv), angeschlossen am Digitalen Eingang 2 (X5/E2). Stop! Beachten Sie auch die Sicherheits− und Anwendungshinweise für Lenze−Antriebsstromrichter in der Montageanleitung der 9300 Servo PLC! 4−1 TP Positioner Servo PLC 5.0 DE...
Template Positioner Inbetriebnahme des Templates Allgemeine Hinweise zum Ablaufplan Der Ablaufplan besteht aus Anweisungen (Schritten) sowie Verzweigungen, die von einer Abfrage (Bedingung) abhängig sind. · Zur Darstellung werden folgende Symbole/Konventionen verwendet: Dieses Symbol kennzeichnet einen Schritt (hier: Schritt Nr. 1) ·...
Tipp! Die nachfolgend beschriebene Inbetriebnahme des Templates liefert als Ergebnis das Anfahren von vier verschiedenen Zielpositionen. Start Bereiten Sie die 9300 Servo PLC der Variante 33.93XX−XT durch Werksabgleich vor: · Laden Sie den Werksabgleich mit C000 2= 0 Step ·...
Seite 24
Template Positioner Inbetriebnahme des Templates Soll die Positionierung als Schrittkette ausgeführt werden? NEIN ð 6 Eine Positionierung als Schrittkette bedeutet, dass die in diesem Beispiel 4 definierten Positio- nen der Reihe nach automatisch abgefahren werden: Position 1 ® 2 ® 3 ® 4 ® 1 ® 2 ® 3 ® 4 usw. Wenn Sie keine Schrittkette verwenden, können Sie jede der in diesem Beispiel 4 definierten Positionen individuell durch Eingabe des entsprechenden Profilnamens in der Visualisierung anfahren.
Seite 25
Template Positioner Inbetriebnahme des Templates Passen Sie die Anzahl der verschiedenen Profile an, welche Sie fahren möchten: · Step Öffnen Sie über den Object Organizer die Variablenliste VarTemplateSettings (CONSTANT) (Register Ressourcen W Ordner Globale Variablen W Ordner TemplateInterface). · Tragen Sie hinter der Variablen C_wNumberOfMotionObjects die entsprechende Anzahl ein, für dieses Beispiel die Anzahl "4": VAR_GLOBAL CONSTANT (* constant *)
Seite 26
Template Positioner Inbetriebnahme des Templates Kompilieren Sie das Projekt: · Betätigen Sie die Funktionstaste <F11> bzw. wählen Sie Projekt W Alles übersetzen. Step Sind Fehler aufgetreten? NEIN ð 10 Führen Sie eine Fehleranalyse durch: · Betätigen Sie die Funktionstaste <F4> bzw. wählen Sie Bearbeiten W Nächster Fehler. Step ð...
Seite 27
Template Positioner Inbetriebnahme des Templates Stellen Sie die Anlagenparameter ein: · Step Öffnen Sie im Parametermonitor (Object Organizer/Register Ressourcen) den Ordner Eigene IEC1131−Codestellen W BasicParameter. · Tragen Sie in C1200 und C1201 den Getriebefaktor für das optionale Rückführsystem ein. · Tragen Sie in C1202 und C1203 den Getriebefaktor des Motorgetriebes ein.
Seite 28
Template Positioner Inbetriebnahme des Templates Stellen Sie die Referenzierparameter für die Referenzfahrt ein: · Step Öffnen Sie im Parametermonitor (Object Organizer/Register Ressourcen) den Ordner Eigene IEC1131−Codestellen W BasicParameter. · Tragen Sie in C3011 den Offsetweg in [unit] ein, der den Verfahrweg gemessen vom Referenzpunkt zur Nullposition angibt.
Seite 29
Template Positioner Inbetriebnahme des Templates (Fortsetzung) Step · Tragen Sie in C3013 die Geschwindigkeit in [unit]/s ein, die während einer Referenzfahrt erreicht werden kann. · Tragen Sie in C3014 den Beschleunigungswert in [unit]/s ein, der die Beschleunigungsrampe und Bremsrampe definiert. Beispiel: Wenn Sie eine Referenziergeschwindigkeit von 360 [unit]/s in C3013 eintragen, und diese soll in 0.5 s erreicht werden, so ergibt sich für C3014 ein Wert von 720 [unit]/s...
Seite 30
Template Positioner Inbetriebnahme des Templates Stellen Sie die Software−Endlagen, gemessen von der Nullposition, ein: · Step Öffnen Sie im Parametermonitor (Object Organizer/Register Ressourcen) den Ordner Eigene IEC1131−Codestellen W BasicParameter. · Tragen Sie in C3040 die positive Software−Endlage ein. · Tragen Sie in C3041 die negative Software−Endlage ein. Software−Endlagen sind Positionen bzw.
Seite 31
Template Positioner Inbetriebnahme des Templates Stellen Sie die maximale Geschwindigkeit der Anlage ein: · Step Öffnen Sie im Parametermonitor (Object Organizer/Register Ressourcen) den Ordner Eigene IEC1131−Codestellen W BasicParameter. · Lesen Sie den Wert von C3060 ab. Dieser Wert definiert den maximalen Geschwindigkeitswert der Anlage und wird aufgrund einer programminternen Berechnung erst nach dem Start der PLC im Parametermonitor angezeigt.
Seite 32
Template Positioner Inbetriebnahme des Templates Soll die Referenzierung mit einer Referenzfahrt des Antriebs durchgeführt werden? NEIN ð 27 Führen Sie eine Referenzfahrt aus, indem Sie in der Visualisierung im Bereich homing die Schaltfläche start. betätigen. Step (In diesem Beispiel wird die Referenzfahrt im Modus 11 ausgeführt, siehe auch Schritt 16) ð...
Seite 33
Template Positioner Inbetriebnahme des Templates Setzen Sie die Referenz manuell, indem Sie in der Visualisierung im Bereich home set die Schaltfläche load. betätigen. Step Führen Sie eine Handfahrt aus: · Step Betätigen Sie in der Visualisierung im Bereich manual jog die Schaltfläche jog negative. ð...
Seite 34
Template Positioner Inbetriebnahme des Templates 4−14 TP Positioner Servo PLC 5.0 DE...
Template Positioner Zustandsmaschine "Positionierung" Kurzbeschreibung der Zustände Zustand "Init" Dieser Zustand wird nur einmal unmittelbar nach dem Starten der PLC aktiviert. Im Zustand "Init" werden folgende Aktionen durchgeführt: · Identifikation und Einstellung der Rückführsysteme für Drehzahl und Positionserfassung. · Überprüfung der Referenzposition bei Einsatz von Multiturngeber/Resolver als Absolutwertgeber.
Seite 37
Template Positioner Zustandsmaschine "Positionierung" Zustand "Homing" Dieser Zustand ermöglicht das Setzen oder die automatische Suche der Referenzposition. Im Zustand "Homing" werden folgende Aktionen durchgeführt: · Erzeugung des Bewegungsprofils für die Funktion Homing (Referenzsuche). · Auswertung der Verfahrbereichsendschalter während der Referenzsuche. Zustand "Positioning"...
Template Positioner Zustandsmaschine "Positionierung" Bedingungen für Zustandswechsel (Transitionen) Die folgende Abbildung stellt für jeden möglichen Zustandswechsel die zugehörige Bedingung in Form einer logischen Verknüpfung dar: g_bGlobalError = TRUE (Fehler aufgetreten) EnterTrouble ³1 TRIP aktiv g_bErrorReset = TRUE (Fehler quittiert) ExitTrouble &...
Template Positioner Zustände & Funktionen Zustand "StandBy" Zustand "StandBy" In diesem Zustand verweilt der Antrieb lagegeregelt an seiner aktuellen Position. Folgende Template−Funktionen können Sie in diesem Zustand durchführen: Funktion Info ^ 5−7 ExternalSetValuePositioning Direkte Übergabe externer Sollwerte an die Motorsteuerung ^ 5−9 PositionTeach Speichern der Istposition...
Template Positioner Zustände & Funktionen 5.3.1 Funktion "ExternalSetValuePositioning" 5.3.1 Funktion "ExternalSetValuePositioning" Mit dieser Template−Funktion kann eine Motorsteuerung unabhängig von der Positionssteuerung durch die Vorgabe externer Sollwerte durchgeführt werden. · Diese Funktion ist nur im Zustand "StandBy" möglich. Stop! Bei der Steuerung über externe Sollwerte sind die Software−Endlagen deaktiviert, so dass diese überfahren werden können.
Seite 42
Template Positioner Zustände & Funktionen 5.3.1 Funktion "ExternalSetValuePositioning" Umschalten auf externe Sollwerte Das Umschalten von der Positionssteuerung auf die Steuerung über externe Sollwerte erfolgt durch Setzen von g_bExtSetValuesEnable auf TRUE: Positioning control g_bExtSetValuesEnable g_nNAdd_a g_nMAdd_a C3000<>C3001 External set values g_nExtMSet_a Motor control g_nExtNSet_a...
Template Positioner Zustände & Funktionen 5.3.2 Funktion "PositionTeach" 5.3.2 Funktion "PositionTeach" Mit dieser Template−Funktion kann die aktuelle Position des Maschinenteils in einem Profil gespei- chert werden. · Im Wechsel mit der Funktion ManualJog können der späteren Anwendung auf diese Weise die unterschiedlichen Zielpositionen angelernt werden ("Teach−In").
Template Positioner Zustände & Funktionen 5.3.3 Funktion "StaticHomePositionSet" 5.3.3 Funktion "StaticHomePositionSet" Mit dieser Template−Funktion kann bei einer Inbetriebnahme die Referenz gesetzt werden. · Das Setzen der Referenz ist aus dem Zustand "StandBy" heraus möglich. · Ist die Referenz gesetzt, so ist die Werkzeugposition netzausfallsicher gespeichert und der Antriebssteuerung somit auch nach einem Netzschalten noch bekannt.
Seite 45
Template Positioner Zustände & Funktionen 5.3.3 Funktion "StaticHomePositionSet" Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung g_bHomingBusy Bool Meldesignal "Referenzfahrt aktiviert" TRUE Referenzfahrt aktiv g_bHomingDone Bool Meldesignal "Status des Referenzsetzens" TRUE Das Setzen der Referenz wurde erfolgreich durchgeführt und die Referenz ist nun bekannt. g_bHomePositionAvailable Bool Meldesignal "Referenz bekannt"...
Seite 46
Template Positioner Zustände & Funktionen 5.3.3 Funktion "StaticHomePositionSet" Setzen der Referenz Um die Referenz zu setzen, führen Sie die folgenden Schritte aus: 1. Messen Sie den Abstand des zu positionierenden Maschinenteils zu seiner Nullposition (Referenz). 2. Geben Sie diesen Wert in der Codestelle C3012 im Fixkommaformat in Units vor. 3.
Template Positioner Zustände & Funktionen Zustand "Homing" Zustand "Homing" Im Zustand "Homing" können Sie eine Referenzierung durchführen, um die Position des Werkzeuges bzw. Materials in der PLC abzubilden und somit dem System die Nullposition (Referenz) bekanntzu- geben. Für eine Referenzierung steht Ihnen folgende Funktion zur Verfügung: Funktion Info ^ 5−14...
Template Positioner Zustände & Funktionen 5.4.1 Funktion "Homing" 5.4.1 Funktion "Homing" Mit dieser Template−Funktion kann eine Referenzfahrt durchgeführt werden, bei der der Antrieb in einem zuvor ausgewähltem Modus verfährt, um die Nullposition (Referenz) anhand einer Referenz- marke selbstständig zu ermitteln und der Antriebssteuerung bekanntzugeben. Auf diese Referenz beziehen sich alle Positionsangaben.
Seite 49
Template Positioner Zustände & Funktionen 5.4.1 Funktion "Homing" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_bHomingStart Bool R / W Starten/Stoppen der Referenzfahrt · Die Referenzfahrt kann nur gestartet werden, wenn der Regler freigegeben ist und kein TRIP ansteht. · Tritt während der Referenzfahrt ein TRIP auf oder wird Reglersperre gesetzt, ist nach der Beseitigung des TRIP bzw.
Seite 50
Template Positioner Zustände & Funktionen 5.4.1 Funktion "Homing" Parameter Codestelle Datentyp Zugriff Info Subcode Einstellmöglichkeiten Voreinstellung C3010 Byte R / W Homing−Mode >_Rn_MP <_Rn_MP >_Lp_<_Rn_MP <_Ln_>_Rn_MP >_Rp_<_Rn_MP <_Rp_>_Rn_MP >_Rn_>_TP <_Rn_<_TP >_TP <_TP >_Lp_<_TP <_Ln_>_TP >_Lpä_<_Lpæ <_Lnä_>_Lnæ >_Mlim <_Mlim Symbolik für Codestelle C3010: >...
Seite 51
Template Positioner Zustände & Funktionen 5.4.1 Funktion "Homing" Hinweis! Damit bei der Referenzsuche das Touch−Probe− bzw. Nullimpuls−Signal korrekt erfasst wird, stellen Sie sicher, dass in der PLC die Touch−Probe−Aktivierung (pos./neg. Flanke) sowie die Touch−Probe−Auswahl entsprechend parametriert sind: · für Homing−Mode 0 ... 5: Auswahl Touch Probe über Nullimpuls ·...
Seite 52
Template Positioner Zustände & Funktionen 5.4.1 Funktion "Homing" Offsetvorgabe für die Festlegung der Nullposition Die Position der Maschine, an welcher das Referenzsignal auftritt, ist als stets reproduzierbarer Refe- renzpunkt bekannt. Von diesem Referenzpunkt aus gemessen können Sie durch zwei verschiedene Offsetvorgaben die Nullposition der Maschine festlegen.
Seite 53
Template Positioner Zustände & Funktionen 5.4.1 Funktion "Homing" Beispiel: Referenzsuche bei einem Spindelantrieb (begrenzter Verfahrbereich) Einstellungen: · ä æ Für den in diesem Beispiel gewählten Referenzfahrt−Modus "<_Ln _>_Ln " ist C3010 (HomingMode) auf "13" zu setzen. · Die Adresse des negativen Endschalters ist der Variablen g_bLimitSwitchNeg zuzuweisen. (siehe Beispiel auf Seite 5−17.) ·...
Seite 54
Template Positioner Zustände & Funktionen 5.4.1 Funktion "Homing" Beispiel: Referenzsuche bei einem Bandantrieb (unbegrenzter Verfahrbereich) Bei Anwendungen mit unbegrenztem Verfahrbereich (z. B. Förderbänder und Rundtische) erfolgt die Referenzsuche immer über eine Marke (Touch−Probe−Sensor). Einstellungen: · Für den in diesem Beispiel gewählten Referenzfahrt−Modus ">_Tp" ist C3010 (HomingMode) auf "8"...
Template Positioner Zustände & Funktionen Zustand "ManualJog" Zustand "ManualJog" Im Zustand "ManualJog" können Sie den Antrieb bzw. das Werkzeug durch manuelle Bedienung ver- fahren. Für ein sogenanntes "Handfahren" (auch "Tippbetrieb" genannt) steht Ihnen folgende Funktion zur Verfügung: Funktion Info ^ 5−22 ManualJog Handfahren Bedingung (Transition) für den Wechsel in den Zustand "ManualJog"...
Template Positioner Zustände & Funktionen 5.5.1 Funktion "ManualJog" 5.5.1 Funktion "ManualJog" Mit dieser Template−Funktion kann der Antrieb von Hand verfahren werden, z. B. zum Reinigen oder Wechseln des Werkzeugs. · Auch ein "Freifahren" von betätigten Fahrbereichsendschaltern wird unterstützt, es ist dann automatisch nur ein Verfahren in die entsprechende Freifahrrichtung möglich.
Seite 57
Template Positioner Zustände & Funktionen 5.5.1 Funktion "ManualJog" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_bReleaseLimitSwitch Bool R / W Unterfunktion "Freifahren" TRUE Freifahren vom jeweils betätigten Endschalter in die entspre- chende Freifahrrichtung, bis der Endschalter wieder freigege- ben (nicht mehr betätigt) ist: ·...
Seite 58
Template Positioner Zustände & Funktionen 5.5.1 Funktion "ManualJog" Sanfter Anlauf und schneller Halt des Antriebs Die Beschleunigung und Verzögerung für das Handfahren können über C3021/C3022 separat einge- stellt werden, so dass hierdurch ein sanfter Anlauf und ein schneller Halt des Antriebs realisiert werden kann: v [m/s] ...
Seite 59
Template Positioner Zustände & Funktionen 5.5.1 Funktion "ManualJog" Handfahrt auf Software−Endlage Ist die Referenz bekannt und sind die Software−Endlagen eingestellt, wird über das Handfahren eine Positionierung auf die entsprechende Software−Endlage durchgeführt, wenn das Handfahren nicht zuvor durch Rücksetzen von g_bManualJogNeg bzw. g_bManualJogPos manuell beendet wurde: ...
Seite 60
Template Positioner Zustände & Funktionen 5.5.1 Funktion "ManualJog" Handfahrt auf Hardware−Endlage (Endschalter) Wird ein Endschalter beim Handfahren angefahren, so bremst der Antrieb über die eingestellte Quickstop−Rampe in den Stillstand und die Meldung "Fail_QSPNegLimitSwitch" bzw. "Fail_QSPPo- sLimitSwitch" wird angezeigt. Es erfolgt ein Wechsel in den Zustand "Trouble". ·...
Template Positioner Zustände & Funktionen Zustand "Positioning" Zustand "Positioning" Für eine Positionierung stehen Ihnen folgende Funktionen zur Verfügung: Funktion Info ^ 5−35 StandardPositioning Standard−Positionierung v [m/s] t [s] ^ 5−44 TouchProbePositioning Restweg−Positionierung v [m/s] t [s] Touch probe ^ 5−53 OverchangePositioning Positionierung mit Überleitung von einem Profil in ein anderes Profil v [m/s]...
Template Positioner Zustände & Funktionen Zustand "Positioning" Bedingung (Transition) für den Wechsel in den Zustand "Positioning" g_bGlobalError = FALSE (kein Fehler) EnterPositioning & g_bUserQuickstop = FALSE (kein Anwender−QSP) g_DCTRL_bImp_b = FALSE (keine Impulssperre) g_bPositioningEnable = TRUE Ein Wechsel in den Zustand "Positioning" ist nur aus dem Zustand "StandBy" möglich! Bedingung (Transition) für die Rückkehr in den Zustand "StandBy"...
Template Positioner Zustände & Funktionen Zustand "Positioning" ó 5.6.1.1 Zuordnung Profilnamen Profilparameter (Subcodestellen) Die Zuordnung der Profilnamen zu den Profilparametern erfolgt über den Aufzählungstyp ProfileNa- mes, der sich im Object Organizer W Register Datentypen W Ordner UserDataTypes befindet. · Die Profilnamen sind frei wählbar und mit "Profile1", "Profile2", "Profile3", usw. vorbelegt. ·...
Template Positioner Zustände & Funktionen Zustand "Positioning" 5.6.1.3 Profilnamen ändern Beachten Sie die folgenden Punkte, wenn Sie die vorgegebenen Profilnamen ändern möchten: · Als Namen für ein Profil können Sie jeden beliebigen Namen wählen, sofern dieser im Projekt noch nicht verwendet wird. ·...
Seite 65
Template Positioner Zustände & Funktionen Zustand "Positioning" 5.6.1.6 Positioniermodi (allgemein) Modus "Absolute" In diesem Positioniermodus wird mit den eingestellten Profilparametern auf das absolute Lageziel gefahren. · Voraussetzung: Die Referenz muss bekannt sein (g_bHomePositionAvailable = TRUE). · ± Der maximale Weg beträgt 2140000000 Inkremente.
Template Positioner Zustände & Funktionen Zustand "Positioning" 5.6.1.7 Positionierung starten Sie starten eine Positionierung, indem Sie den Namen des zu fahrenden Profils an die Variable g_wMotionProfileNumber übergeben. · Voraussetzung hierfür ist, dass sich das Template im Zustand "Positioning" befindet. · Sind Profil und Zielposition gültig und wurde zudem die Schleppfehlerwarngrenze nicht überschritten, wird die Positionierung entsprechend der Profilparameter ausgeführt.
Seite 67
Template Positioner Zustände & Funktionen Zustand "Positioning" 5.6.1.9 Definition des Fensters für die Meldung "Zielposition erreicht" Über C3034 können Sie ein Fenster festlegen, anhand dessen überprüft wird, ob die Zielposition er- reicht ist. · Befindet sich die aktuelle Position innerhalb dieses Fensters, so wird g_bInTarget auf TRUE gesetzt.
Template Positioner Zustände & Funktionen Zustand "Positioning" 5.6.1.10 Definition der Einschwingzeit Über C3035 können Sie eine Einschwingzeit festlegen, die nach Abschluss der Sollwertgenerierung für die Zielposition noch abgewartet wird, bevor eine neue Positionierung startet. Auf diese Weise können mechanische Einschwingvorgänge des Werkzeuges beim Erreichen der Zielposition berücksichtigt werden.
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" 5.6.2 Funktion "StandardPositioning" Mit dieser Template−Funktion kann der Antrieb durch die Vorgabe linearer Bewegungsprofile be- stimmte Wegpunkte in verschiedenen Positioniermodi anfahren. Inputs Outputs g_nPosProfilerState StandardPositioning g_nSetVelocity_v g_dnPositionDifference_p g_bPositioningEnable g_dnSetPosInternal_p g_byPositioningMode g_dnActualPositionReal g_bHoldBackProfiles g_dnActualPositionInternal_p g_wMotionProfileNumber g_dnActualTargetPositionReal...
Seite 70
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_bHoldBackProfiles Bool R / W Abgebrochenes Profil zu Ende fahren. · Wurde das Verfahren eines Profils durch Verlassen des Zustands "Positioning" abgebrochen, können Sie über diesen Eingang festlegen, dass dieses Profil beim erneuten Wechsel in den Zustand "Positioning"...
Seite 71
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung g_dnSetPosInternal_p Double Integer Interne Sollwinkelposition in [inc] Wird bei Modulo−Positionierung bei jedem Profilstart zurückgesetzt. g_dnActualPositionReal Double Integer Istwinkelposition in [unit] · Ausgabe im Fixkommaformat mit 4 Nachkommastellen: 1 [unit] º 10000 g_dnActualPositionInternal_p Double Integer Istwinkelposition in [inc]...
Seite 72
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" Profil−Parameter Codestelle Datentyp Zugriff Info Subcode Einstellmöglichkeiten Voreinstellung C3100 R / W Parameter "Position" für Positionierprofil 1 ... n 1 ... n −214000.0000 {0.0001 unit} 214000.0000 C3200 R / W Parameter "Geschwindigkeit" für Positionierprofil 1 ... n 1 ...
Seite 73
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" Beispielschrittkette "AbsoluteSequence" PROGRAM AbsoluteSequence (* Example of a positioning sequence (* in mode Absolute with 3 destinations *) VAR_INPUT SFCInit:BOOL; (* TRUE: The sequence is fixed *) (* in step Init *) END_VAR Eingangsaktion Homing: (* You must make sure, that reference is known at mode Absolute *)
Seite 74
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" Transition Trans1: Eingangsaktion Step2: (* Set mode of positioning to Absolute *) (* −−> Also possible is 0 instead of Absolute *) g_byPositioningMode:=Absolute; (* Copy 2nd profile to g_wMotionProfileNumber *) (* −−> Also possible is the accordance number in enum list *) g_wMotionProfileNumber:=Profile2;...
Seite 75
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" Beispielschrittkette "SpeedSequence" PROGRAM SpeedSequence (* Example of a positioning sequence in mode Speed *) (* with 3 destinations *) VAR_INPUT : BOOL; SFCInit (* TRUE: The sequence is fixed in step Init *) END_VAR SpeedTimer : TON;...
Seite 76
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" Eingangsaktion Step2: (* Set mode of positioning to Speed *) (* −−> Also possible is 2 instead of Speed *) g_byPositioningMode:=Speed; (* Copy 2nd profile to g_wMotionProfileNumber *) (* −−> Also possible is the accordance number in enum list *) g_wMotionProfileNumber:=Profile20;...
Seite 77
Template Positioner Zustände & Funktionen 5.6.2 Funktion "StandardPositioning" Funktion "MoveAxis" für eine einfache Positionierung Die Funktion MoveAxis stellt eine Befehlsschnittstelle im Template Positioner dar, über die Sie auf einfache Weise eine Positionierung durchführen können. · Der Parameter "Endgeschwindigkeit" ist in dieser Funktion nicht implementiert. ·...
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" 5.6.3 Funktion "TouchProbePositioning" Mit dieser Template−Funktion kann der Antrieb durch die Vorgabe linearer Bewegungsprofile be- stimmte Wegpunkte in verschiedenen Positioniermodi anfahren. Wird während des Verfahrens ein Touch Probe erkannt, so erfolgt ein automatischer Wechsel vom Profil g_MotionProfileNumber auf das Profil g_AuxMotionProfileNumber, mit dessen Parametern der Profilgenerator daraufhin die Positionierung im entsprechenden Modus fortsetzt (Restwegpositio- nierung).
Seite 79
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_bPositioningEnable Bool R / W Positionierung freigeben TRUE Wechsel in den Zustand "Positioning" FALSE Positionieren abbrechen, Wechsel in den Zustand "StandBy" g_byPositioningMode Byte R / W Auswahl Positioniermodus mit Touch Probe (Restwegpositionierung): 10 Absolute Positionierung mit relativer Restwegpositionierung 11 Modulo Positionierung mit relativer Restwegpositionierung...
Seite 80
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_bHoldBackProfiles Bool R / W Abgebrochenes Profil zu Ende fahren. · Wurde Verfahren eines Profils durch Verlassen des Zustands "Positioning" abge- brochen, können Sie über diesen Eingang festlegen, dass dieses Profil beim erneuten Wechsel in den Zustand "Positioning"...
Seite 81
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung −211 Restweg−Profil ungültig: Parameter Verzögerung = 0 −212 Restweg−Profil ungültig: Parameter Geschwindigkeit = 0 −300 Positionierung mit eingestellten Profilparametern ist nicht plausibel. g_nSetVelocity_v Integer Drehzahlsollwert in [inc/ms] ·...
Seite 82
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" Parameter Codestelle Datentyp Zugriff Info Subcode Einstellmöglichkeiten Voreinstellung C3034 R / W Fenster für Meldung "Zielposition erreicht" · Definition des Fensters: ^ 5−33 {1 unit} 65535 0 unit C3035 R / W Einschwingzeit ·...
Seite 83
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" Touch−Probe−Auswertung Für die Touch−Probe−Auswertung können Sie entweder die Touch−Probe−Schnittstelle des Templates verwenden, oder stattdessen eine Anwender−definierte Schnittstelle, um die Touch−Probe−Signale im Anwendungsprogramm auszuwerten. Setzen Sie · g_bTPEnable auf TRUE, um die Touch−Probe−Schnittstelle des Templates freizugeben bzw.
Seite 84
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" Hinweis! Wurde das Standardprofil komplett abgefahren, ohne dass ein Touch Probe erkannt wurde, so wird über g_nPosProfilerState die Meldung 200 ("Kein Touch Probe erkannt.") ausgegeben. Das Touch−Probe−Profil wird vor seinem Start nicht auf Software−Endlagen überwacht. Wird wäh- rend der Restwegpositionierung eine der Software−Endlagen erreicht, wird ein Anwender−QSP aus- gelöst.
Seite 85
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" Positionierung starten Führen Sie die folgenden Schritte durch, um eine Positionierung zu starten: 1. Setzen Sie g_bPositioningEnable von FALSE auf TRUE, um vom Zustand "StandBy" in den Zustand "Positioning" zu wechseln. 2. Legen Sie über g_byPositioningMode den Positioniermodus (10 ... 15) fest. 3.
Seite 86
Template Positioner Zustände & Funktionen 5.6.3 Funktion "TouchProbePositioning" Transition ReferenceOk: Eingangsaktion Step1: (* Start TouchProbe positioning procedure with positive edge on digital input E3 during actual profile is in progress *) (* Set mode of positioning to AbsoluteTPAbsolute −−> Also possible is 14 instead of Absolute *) g_byPositioningMode:=AbsoluteTPAbsolute;...
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" 5.6.4 Funktion "OverchangePositioning" Mit dieser Template−Funktion kann eine Profilverkettung mit "Overchange" durchgeführt werden, bei der von einem Verfahrprofil mit einer definierten Endgeschwindigkeit (ungleich "0") in ein anderes Verfahrprofil übergeleitet wird. Inputs Outputs g_nPosProfilerState OverchangePositioning g_nSetVelocity_v...
Seite 88
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_byPositioningMode Byte R / W Auswahl Positioniermodus 0 Absolute Positionierung · Voraussetzung: g_bHomingDone = TRUE und g_bHomePositionAvailable = TRUE 1 Relative Positionierung · Wegintegratoren werden vor dem Start zurückgesetzt. ·...
Seite 89
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" ð Ein−/Ausgänge ð Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_wOverchangeProfile ProfileNames R / W Profilname des automatisch zu startenden Profils Number Anzeige Die Übergabe der Profilparameter des Overschange−Profils "Active" erfolgt. Anzeige Die Profilparameter des ausgewählten Overchange−Profils "Done"...
Seite 90
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung g_wCurrentProfileName ProfileNames Profilname des gerade aktiven Profils · Beim Verlassen des Zustands "Positioning" wird g_wCurrentProfileName auf "Done" gesetzt. g_wCurrentProfileNumber Word Profilnummer des gerade aktiven Profils g_bInTarget Bool Meldesignal "Zielposition erreicht"...
Seite 91
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" Profil−Parameter Codestelle Datentyp Zugriff Info Subcode Einstellmöglichkeiten Voreinstellung C3500 R / W Parameter "Endgeschwindigkeit" für Positionierprofil 1 ... n · Die Endgeschwindigkeit v wird auf den Wert der eingestellten Positionierge- schwindigkeit (C3200/x) begrenzt. 1 ...
Seite 92
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" Positionierung starten Führen Sie die folgenden Schritte durch, um eine Positionierung zu starten: 1. Setzen Sie g_bPositioningEnable von FALSE auf TRUE, um vom Zustand "StandBy" in den Zustand "Positioning" zu wechseln. 2. Setzen Sie g_bOverchangeEnable von FALSE auf TRUE, um die Overchange−Funktion freizugeben.
Seite 93
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" Eingangsaktion Homing: (* You must make sure, that reference is known at mode Absolute *) (* No reference ? *) IF NOT g_bHomePositionAvailable THEN (* Reset of state positioning *) g_bPositioningEnable:=FALSE; (* Start of reference procedure *) g_bHomingStart:=TRUE;...
Seite 94
Template Positioner Zustände & Funktionen 5.6.4 Funktion "OverchangePositioning" Eingangsaktion Step3: (* Set mode of positioning to Absolute *) (* −−> Also possible is 0 instead of Absolute *) g_byPositioningMode:=Absolute; (* Copy next profile to g_wOverchangeProfileNumber *) (* −−> Also possible is the accordance number in enum list *) g_wOverchangeProfileNumber:=12;...
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" 5.6.5 Funktion "OverridePositioning" Mit dieser Template−Funktion kann eine Profiländerung während der Positionierung ("Override") durchgeführt werden. · Die Funktion ermöglicht die Veränderung der Geschwindigkeit ("Geschwindigkeitsoverride") sowie der Beschleunigung ("Beschleunigungsoverride"). Inputs Outputs OverridePositioning g_nPosProfilerState g_bPositioningEnable g_dnPositionDifference_p g_byPositioningMode...
Seite 96
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_byPositioningMode Byte R / W Auswahl Positioniermodus (Fortsetzung) Positioniermodi mit Touch Probe (Restwegpositionierung): 10 Absolute Positionierung mit relativer Restwegpositionierung 11 Relative Positionierung mit relativer Restwegpositionierung · Wegintegratoren werden vor dem Start zurückgesetzt.
Seite 97
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung g_nPosProfilerState Word Status der Positionierung Meldungen: 0 Keine Aktion 1 Positionierung abgeschlossen 10 Beschleunigungsphase ist aktiv 11 Konstantgeschwindigkeitsphase ist aktiv 12 Verzögerungsphase ist aktiv 13 Reversierphase ist aktiv 100 Reset ist aktiv 101 Startwerte werden geladen 102 Positionierung abgebrochen...
Seite 98
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung g_bDwellTime Bool Meldesignal "Einschwingzeit abgelaufen" · Wird beim Start einer Positionierung auf FALSE zurückgesetzt. · Definition der Einschwingzeit (C3035): ^ 5−34 TRUE Die über C3035 eingestellte Einschwingzeit ist abgelaufen. g_bProfileBusy Bool Meldesignal "Positionierung ist aktiv"...
Seite 99
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Profil−Parameter Codestelle Datentyp Zugriff Info Subcode Einstellmöglichkeiten Voreinstellung C3100 R / W Parameter "Position" für Positionierprofil 1 ... n 1 ... n −214000.0000 {0.0001 unit} 214000.0000 C3200 R / W Parameter "Geschwindigkeit" für Positionierprofil 1 ... n 1 ...
Seite 100
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Modi des Profilgenerators Standard−Positionierung: Siehe Funktion StandardPositioning. (^ 5−38) Restwegpositionierung mit Touch Probe: Siehe Funktion TouchProbePositioning. (^ 5−50) Positionierung starten Führen Sie die folgenden Schritte durch, um eine Positionierung zu starten: 1. Setzen Sie g_bPositioningEnable von FALSE auf TRUE, um vom Zustand "StandBy" in den Zustand "Positioning"...
Seite 101
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Bezugsgröße für Override festlegen Den Bezug für die Override−Werte legen Sie über g_byOverrideMode fest: g_byOverrideMode = 0 v [m/s] g_nVelOverride_a = 8192 (50 %) profile 50 % v t [s] g_byOverrideMode = 1 v [m/s] profile g_nVelOverride_a = 8192 (50 %)
Seite 102
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Override durchführen · Der Geschwindigkeitsoverride wird durch Setzen von g_bExecuteVelOverride auf TRUE aktiviert. · Der Beschleunigungsoverride wird durch Setzen von g_bExecuteAccOverride auf TRUE aktiviert. · Der Bezug für die Override−Werte wird über g_byOverrideMode festgelegt. ·...
Seite 103
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Über die Codestelle C3038 kann Verzögerungsoverride aktiviert werden. Beim aktivierten Verzöge- rungsoverride (C3038= 1) wird die Overrideverzögerung (Wert am Eingang nAccoverride_a bezogen auf die maximale Verzögerung) einmalig beim Profilstart übernommen. Im weiteren Verlauf des Posi- tioniervorgangs wird die Profilverzögerung nicht mehr verändert.
Seite 104
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Beispielschrittkette "OverrideSequence" PROGRAM OverrideSequence (* Example of a positioning sequence (* in mode Absolute with 3 destinations *) VAR_INPUT SFCInit:BOOL; (* TRUE: The sequence is fixed *) (* in step Init *) END_VAR Eingangsaktion Homing: (* You must make sure, that reference is known at mode Absolute *)
Seite 105
Template Positioner Zustände & Funktionen 5.6.5 Funktion "OverridePositioning" Transition Trans1: Eingangsaktion Step2: (* Override mode limits the override values to its maximal axisparameter *) g_byOverrideMode:= 0; (* Activation of velocity override *) g_bExecuteVelOverride:=TRUE; (* Ativation of acceleration override *) g_bExecuteAccOverride:=TRUE; Ausgangsaktion Step2: (* Deactivation of velocity override *) g_bExecuteVelOverride:=FALSE;...
Template Positioner Zustände & Funktionen 5.6.6 Funktion "ChangeProfileInterface" 5.6.6 Funktion "ChangeProfileInterface" Mit dieser Template−Funktion können Parameter eines Profils verändert werden. Inputs Outputs ChangeProfileInterface g_bChangeProfile Profile n g_wChangeProfile Profile ... g_dnChangePosition Profile 2 g_dnChangeVelocity Profile 1 g_dnChangeAcceleration g_dnChangeDeceleration g_dnChangeFinalVelocity g_dnChangeJerkTime Parameter ð...
Seite 107
Template Positioner Zustände & Funktionen 5.6.6 Funktion "ChangeProfileInterface" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_dnChangePosition Double Integer R / W Parameter "Position" für eine Profiländerung mit g_bChangeProfile · In [unit] * 10000 g_dnChangeVelocity Double Integer R / W Parameter "Geschwindigkeit" für eine Profiländerung mit g_bChangeProfile ·...
Template Positioner Zustände & Funktionen 5.6.7 Funktion "PositionCorrection" 5.6.7 Funktion "PositionCorrection" Mit dieser Template−Funktion können Linearitätsfehler an Vorschubmechaniken (z. B. Spindeln) oder Messsystemen unter Verwendung einer Messwerttabelle mit Korrekturwerten kompensiert werden. Inputs Outputs PositionCorrection Difference from setpoint g_nPosCorrectionState g_bPosCorrectionEnable g_bNewCorrectionValuesValid g_dnCorrectionValue_p Position Position...
Seite 109
Template Positioner Zustände & Funktionen 5.6.7 Funktion "PositionCorrection" Parameter Codestelle Datentyp Zugriff Info Subcode Einstellmöglichkeiten Voreinstellung C3090 R / W Korrekturposition 1 ... n 1 ... n −214000.0000 {0.0001 unit} 214000.0000 0 unit C3091 R / W Positionskorrekturwert 1 ... n 1 ...
Seite 110
Template Positioner Zustände & Funktionen 5.6.7 Funktion "PositionCorrection" Eingabe der Messwerte Die Messwerte können anhand der erstellten Messwerttabelle einfach in die entsprechenden Subco- destellen der Parameter C3090 und C3091 übertragen werden: Messung Nr. Angefahrene Sollposition Gemessene Abweichung von der Sollposition Dj = j −...
Seite 111
Template Positioner Zustände & Funktionen 5.6.7 Funktion "PositionCorrection" Berechnung der Korrekturwerte Wenn die Vorschubkorrektur aktiviert ist, berechnet der FB einen Korrekturwert, der von der Sollposi- tion subtrahiert wird. Liegt die Sollposition zwischen zwei Messwerten, so wird die Abweichung und der daraus resultierende Korrekturwert durch Interpolation ermittelt. Die folgende Darstellung beschreibt das Interpolationsverfahren zur Ermittlung des korrigierten Posi- tionswertes zwischen zwei Stützstellen P und P...
Template Positioner Zustände & Funktionen Parallele Prozesse "PosFunctions" Parallele Prozesse "PosFunctions" Die folgende Funktion läuft als paralleler Prozess zur Zustandsmaschine und kann daher in jedem Zustand ausgeführt werden: Funktion Info ^ 5−80 TemplateControl Fehlerbehandlung und Statusabfrage 5−79 TP Positioner Servo PLC 5.0 DE...
Template Positioner Zustände & Funktionen 5.7.1 Funktion "TemplateControl" 5.7.1 Funktion "TemplateControl" Mit dieser Template−Funktion können funktionsübergreifende Einstellungen vorgenommen sowie Zustandsmeldungen des Templates abgefragt werden. Inputs Outputs TemplateControl g_bPositioningEnable g_byOperationState Start g_bErrorReset g_wErrorType g_bErrorSet g_wErrorNumber Init g_bUserQuickstop g_bGlobalError Trouble Positioning g_bLimitSwitchNeg g_bVelocityLowerC3017 g_bLimitSwitchPos g_wCurrentProfileName...
Seite 115
Template Positioner Zustände & Funktionen 5.7.1 Funktion "TemplateControl" ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_bLimitSwitchNeg Bool R / W Eingang für Endschalter (negativ) TRUE Endschalter erreicht g_bLimitSwitchPos Bool R / W Eingang für Endschalter (positiv) TRUE Endschalter erreicht Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung...
Seite 116
Template Positioner Zustände & Funktionen 5.7.1 Funktion "TemplateControl" Parameter Codestelle Datentyp Zugriff Info Subcode Einstellmöglichkeiten Voreinstellung C3017 R / W Schwellwert für Null−Drehzahl−Erkennung 0.0000 {0.0001 unit/s} 214000.0000 0 unit/s C3018 R / W Hysterese für Null−Drehzahl−Erkennung 0.00 {0.01 %} 100.00 0.10 % C3030 R / W Schleppfehlerwarngrenze...
Antrieb bremst über die eingestellte Quickstop−Rampe in den Stillstand und es erfolgt ein Wechsel in den Zustand "StandBy". – Die Quickstop−Rampe stellen Sie über den entsprechenden Parameter der Motorsteuerung ein (z. B. C0105 bei der 9300 Servo PLC). 5−83 TP Positioner Servo PLC 5.0 DE...
Antrieb über die eingestellte Quickstop−Rampe in den Stillstand und es erfolgt ein Wechsel in den Zustand "Trouble". – Die Quickstop−Rampe stellen Sie über den entsprechenden Parameter der Motorsteuerung ein (z. B. C0105 bei der 9300 Servo PLC). · Die Überwachung auf Schleppfehler erfolgt in allen Bewegungszuständen des Antriebs.
Seite 119
Template Positioner Zustände & Funktionen 5.7.1 Funktion "TemplateControl" 5.7.1.3 Überprüfung des Fahrbereichs durch Software−Endlagen Die Software−Endlagen sind zwei spezielle Positionsmarken, die den Verfahrbereich des Werkzeu- ges softwareseitig einschränken, um ein Auslösen der Hardware−Endlagen (Endschalter) zu verhin- dern. Stop! Sind keine Software−Endlagen eingestellt, so kann der Antrieb in eine mechanische Grenze fahren und Maschinenteile können zerstört oder beschädigt werden! Die Einstellung der Software−Endlagen erfolgt über die Parameter C3040 (positive Software−End- lage) und C3041 (negative Software−Endlage).
Seite 120
(* = DIGIN2 *) END_VAR Abb. 5−20 Beispiel: Endschalter am Eingang E1/E2 der 9300 Servo PLC und Adressenübergabe an die entsprechenden Variablen. · Im Zustand "ManualJog" bremst der Antrieb über die eingestellte Quickstop−Rampe in den Stillstand und die Meldung "Fail_QSPNegLimitSwitch" bzw. "Fail_QSPPosLimitSwitch" wird angezeigt, wenn ein Endschalter angefahren wird.
Template Positioner Erweiterbare Programme (POEs) Erweiterbare Programme (POEs) Das Template enthält bereits folgende zwei POEs, die Sie anpassen und erweitern können: · Die POE UserErrors (PRG) zur Fehlerbehandlung anwenderdefinierter Fehler. · Die POE UserInterface (PRG) zum Programmieren der Positionierlogik. (^ 6−3) Fehlerbehandlung −...
Seite 122
Template Positioner Erweiterbare Programme (POEs) Tipp! Verwenden Sie dieses Beispiel−Netzwerk als Grundlage und erzeugen Sie weitere Netzwerke durch Kopieren & Einfügen: Abb. 6−2 Erweiterte POE "UserErrors (PRG)" mit zwei Netzwerken zur Fehlerbehandlung · Denken Sie daran, wenn Sie weitere Netzwerke hinzufügen, auch die Liste der Textmeldungen im Datentyp ErrorCode (ENUM) entsprechend anzupassen: TYPE ErrorCode : ( NoError:=0,...
Template Positioner Erweiterbare Programme (POEs) Positionierschrittkette − POE "UserInterface" Diese POE können Sie zur Programmierung der Positioniersatzsteuerung und zum Aufruf eigener Positionierprogramme verwenden. Die POE UserInterface (PRG) befindet sich im Register Bausteine W Ordner UserExtensions W Ordner UserPOEs des Object Organizer: Abb.
Template Positioner Erweiterbare Programme (POEs) 6.2.2 Verwenden der Positionierschrittkette In der POE UserInterface (PRG) ist bereits eine Schrittkette für fünf Positionierprofile vorbereitet, die Sie als ersten Einstieg und Grundlage für komplexere Satzsteuerungen verwenden können. Prinzip der Positionierschrittkette in der POE UserInterface (PRG) Das Prinzip der Positionierschrittkette ist die Übergabe eines Verfahrprofils an die Variable g_wMotionProfileNumber sowie des Positioniermodus an die Variable g_byPositioningMode.
Template Positioner Anhang Technische Daten Anhang Technische Daten · Bis zu 128 Profile vorparametrierbar · Für den Anwender nutzbarer Speicher: – 4,2 kByte RAM, wenn keine Profile angelegt sind. – 400 kByte ROM für Anwenderprogramm · Speicher für ein Profil: –...
Template Positioner Anhang Globale Variablen Globale Variablen Die nachfolgenden Variablen−Deklarationen finden Sie im Object Organizer/Register Ressourcen im Ordner Globale Variablen W TemplateInterface. 7.2.1 VarChangeProfileInterface ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_dnChangePosition Double Integer R / W Parameter "Position" für eine Profiländerung mit g_bChangeProfile ·...
Template Positioner Anhang Globale Variablen ð Ein−/Ausgänge ð Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_wOverchangeProfile ProfileNames R / W Profilname des automatisch zu startenden Profils Number Anzeige Die Übergabe der Profilparameter des Overschange−Profils "Active" erfolgt. Anzeige Die Profilparameter des ausgewählten Overchange−Profils "Done" wurden übergeben.
Template Positioner Anhang Globale Variablen 7.2.9 VarPositioning ð Eingänge Bezeichner Datentyp Zugriff Info/Einstellmöglichkeiten g_bPositioningEnable Bool R / W Positionierung freigeben TRUE Wechsel in den Zustand "Positioning" FALSE Positionieren abbrechen, Wechsel in den Zustand "StandBy" g_byPositioningMode Byte R / W Auswahl Positioniermodus 0 Absolute Positionierung ·...
Seite 131
Template Positioner Anhang Globale Variablen Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung g_nPosProfilerState Word Status der Positionierung Meldungen: 0 Keine Aktion 1 Positionierung abgeschlossen 10 Beschleunigungsphase ist aktiv 11 Konstantgeschwindigkeitsphase ist aktiv 12 Verzögerungsphase ist aktiv 13 Reversierphase ist aktiv 100 Reset ist aktiv 101 Startwerte werden geladen 102 Positionierung abgebrochen 103 Externe Sollwertschnittstelle aktiviert...
Template Positioner Anhang Globale Variablen Ausgänge ð Bezeichner Datentyp Zugriff Wert/Bedeutung g_bProfileBusy Bool Meldesignal "Positionierung ist aktiv" TRUE Die Positionierung ist aktiv. TRUE g_bProfileBusy und g_bProfileDone werden kurzzeitig auf (Impuls) TRUE gesetzt, wenn beim Start einer absoluten Positionierung Ziel und Startposition gleich sind und daher die Positionierung nicht gestartet wurde.
Template Positioner Anhang Reservierte Eingangsvariablen des Target Interface Reservierte Eingangsvariablen des Target Interface Hinweis! Über die in der folgende Tabelle aufgeführten Variablen werden Steuerinformationen vom Template an das Target Interface übergeben, diese Variablen dürfen daher nicht parallel von der Anwenderschicht aus beschrieben werden! Bezeichner Template Positioner...
Template Positioner Anhang Einstellungen Einstellungen 7.4.1 Anzahl der Positionierprofile Die Anzahl der zu beschreibenden Profile wird über die Konstante C_wNumberOfMotionObjects de- finiert. (Object Organizer/Register Ressourcen W Ordner Globale Variablen W Ordner TemplateInterface W Variablenliste VarTemplateSettings (CONSTANT)) · Diese Konstante ist im Template auf "5" voreingestellt, so dass für fünf Profile bereits die entsprechenden Subcodestellen angelegt sind.
Template Positioner Anhang Einstellungen 7.4.4 Fehlermeldungen − Datentyp "ErrorCode (ENUM)" llgemein Fehlerbehandlung wird unterschieden zwischen Systemfehlermeldungen, Template−Fehlermeldungen sowie Anwender−Fehlermeldungen: Fehlernummer Info Systemfehlermeldungen 0 ... 399 Systemfehlermeldungen sind fest in der PLC implementiert und daher durch den Anwender nicht veränderbar. · Ausführliche Informationen zu den Systemfehlermeldungen finden Sie im Handbuch zur entsprechenden PLC im Kapitel "Anhang".
Seite 138
Template Positioner Anhang Einstellungen Fehlermeldung Fehlermeldung Fehlernummer Fehlernummer Ursache Ursache Relevant für Template Positioner ü OverflowInternalSetPos Überlauf des internen Wegintegrators Diese Fehlermeldungen stellen nur Fehlerzustände in Template−Zuständen dar, in denen das Werkzeug aktiv bewegt wird. Anwender−Fehlermeldungen Die Fehlermeldungen für anwenderdefinierte Fehler sind im Datentyp ErrorCode (ENUM) definiert (Object Organizer W Register Datentypen W Ordner UserDataTypes): TYPE ErrorCode : ( NoError:=0,...
Template Positioner Anhang Visualisierungen Visualisierungen Alle in den Lenze Templates enthaltenen Visualisierungen sind einheitlich nach folgendem Schema aufgebaut: Abb. 7−1 Grundsätzlicher Aufbau der im Template enthaltenen Visualisierung Über das Auswahlmenü können Sie die gewünschte Funktion des Templates auswählen, die daraufhin im Auswahlmenü...