SDP2-P2 PRAKTIKUM MOTION CONTROL Technische Voraussetzungen PC, Pentium 4, 512MB RAM, 1,5 GB Plattenkazität, WindowsXP mit SP 1 oder Windows2000 mit SP 4, Indra- Works MLC installiert. Steuerung, Typ "IndraMotion MLC L40", aktuelle Firmware ist geladen IP-Adresse ist bekannt Steuerung ist über Ethernet mit dem Programmiergerät verbunden Antriebsregelgerät, Typ "IndraDrive M", aktuelle Firmware ist geladen Antriebsregelgerät ist mit Steuerung über SERCOS verbunden Adresse des Antriebsregelgerätes im SERCOS-Ring ist bekannt oder ein gebrückter SERCOS-Ring, wenn kein Antrieb vorhanden ist. Die Schaffung dieser Voraussetzungen sind beschrieben in Rexroth IndraControl L40, Projektierung, DOK-CONTRL-IC*L40*****-PR02-DE-P und Systembeschreibung IndraMotion MLC, Programmieranleitung, DOK-MLC -System V02-SY1-DE-P. Bedienphilosophie Das Motion-Logic-Programmierwerkzeug integriert sich in die IndraWorks-Umgebung (nachstehende Abbildung). (1): Titelzeile, IndraMotion-Menü (2): Projektnavigator (Gerätesicht) (3): Arbeitsbereich mit Blättern, (4): Bibliothek mit Geräteinfo (5): Parametereditor, (6): Parametergruppe (7): Statuszeile (8): Symbolleisten Abb. 0-1: IndraWorks-(Motion-Logic-Control)-Desktop Die Bedienphilosophie besteht darin, dass per drag and drop mit Geräten aus einer Gerätebibliothek (4) ein konkretes Projekt (2) generiert wird. Nach einer eventuell erforderlichen Parametrierung erfolgt die Programmierung der SPS-Komponente. Den Abschlusss bildet die Inbetriebnahme. V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-1-
Aufgabenstellung des ersten IndraMotion MLC-Projekt Vorgegeben wird eine virtuelle Achse, die mit einer konstanten Geschwindigkeit laufen soll. Diese Achse arbeitet als Leitachse für eine reale Achse, die über ein Getriebe gekoppelt ist. Die reale Achse enthält einen Antrieb "IndraDrive M", der über einen SERCOS-Ring mit der Steuerung "IndraMotion MLC L40" verbunden ist. Die Bearbeitung ist auch ohne Antrieb bis einschließlich Abschnitt Aufzeichnung der Bewegung von Achse VA1 (Trace) nachvollziehbar, die reale Achse ist dazu nach ihrer Konfiguration, Abschnitt Reale Achse zum Projekt hinzufügen, zu deaktivieren. Von der Aufgabenstellung zur drehenden Achse Steuerung zurücksetzen Die Steuerung kann von vorheriger Nutzung alte Programmbestandteile, Parametrierungen und SPS-Daten enthalten, die in diesem Schritt durch das Speicherlöschen entfernt werden. Abb. 0-2: Reboot der Steuerung Nach dem Einschalten der Steuerung sind dazu die beiden äusseren Tasten unter dem Display <ESC> und <Enter> bei Erscheinen von BOOT 1.01 zu drücken und so lange zu halten, bis die Ausschrift BOOTSTOP erscheint. Danach sind die beiden inneren Tasten zu drücken, es erscheint REBOOT, und die Tasten können wieder losgelassen werden, Die Steuerung läuft nun bis BB STOP, der Speicher ist geleert, die Motion-Komponente betriebsbereit und die SPS-Komponente in der Abarbeitung gestoppt. IndraWorks starten und Projekt anlegen Starten Sie IndraWorks aus dem Desktop mittels Icon. Den geladenen IndraWorks-MLC-Desktop zeigt nachfolgendes Startbild: V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-2-
Abb. 0-3: IW-MLC-Desktop nach Start von IndraMotion MLC Die für die Lösung der Aufgabenstellung nachfolgend zu generierende Gerätekonfiguration wird in einem Projekt verwaltet. Legen Sie über den Dialog Neues Projekt/ Leeres Projekt erzeugen (oder über das Hauptmenü Datei/Neu/Projekt) ein neues Projekt an: Für das neue Projekt muss ein Name festgelegt werden und ein Verzeichnis, in dem das Projekt abgelegt wird. Das Projekt soll "MLC_FirstSteps" heißen: Abb. 0-4: Eingeben eines Projektnamens Als Verzeichnis können Sie das voreingestellte nutzen, über die Schaltfläche "Auswählen" ein anderes Verzeichnis auswählen bzw. ein neues Verzeichnis anlegen. Damit ist das neue Projekt angelegt: Abb. 0-5: Projekt ist angelegt Hinweis: Beim ersten Projekt im Projektnavigator, wird automatisch auch eine Projektmappe gleichen Namens angelegt, der zukünftig weitere Projekte hinzugefügt werden können V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-3-
Steuerung zum Projekt hinzufügen Expandieren Sie zunächst die Darstellung der Geräte in der Bibliothek bis zum gewünschten Gerät: Abb. 0-6: Expandieren der Bibliothek Fokussieren Sie die Steuerung "IndraMotion MLC L40" unterhalb des Ordners "Drive and Control" mit der linken Maustaste und halten Sie diese gedrückt: Abb. 0-7: Auswahl der "IndraMotion MLC L40" in der Gerätebibliothek Ziehen Sie mit gedrückter linker Maustaste die Steuerung in das Projekt. Positionieren Sie die Maus auf dem Ordner "MLC_FirstSteps" und lassen Sie die Maustaste los: Abb. 0-8: Einfügen von "IndraMotion MLC L40" in das aktuelle Projekt Jetzt erscheint ein Wizard, mit dessen Hilfe Sie in drei Schritten für die Verwendung des Gerätes "IndraMotion MLC L40" innerhalb des aktuellen Projektes notwendige Einstellungen vornehmen. Im Schritt "Allgemein" (nachfolgendes Bild) werden Gerätename, ein Kommentar zu diesem Gerät und der Ersteller eingegeben. Sie können die voreingestellten Werte übernehmen (ein Kommentar ist optional) oder die Werte ändern. Klicken Sie dann auf "Weiter". V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-4-
Abb. 0-9: "Allgemeine Einstellungen" im Gerätewizard "IndraMotion MLC L40" IP-Adressen: 192.168.0.152; 192.168.0.153 Im Schritt "Konfiguration" (nachfolgendes Bild) muss die IP-Adresse der IndraMotion MLC L40 eingestellt werden. (Andernfalls ist keine Kommunikation mit der Steuerung möglich.) Alle anderen Werte haben an dieser Stelle nur informativen Charakter. Abb. 0-10: Schritt "Konfiguration" im Gerätewizard "IndraMotion MLC L40" Der "Verbindungstest" überprüft, ob eine Steuerung mit dieser IP-Adresse existiert (Ping) und antwortet mit dem Gerätenamen der Steuerung und dem Namen des aktuellen Benutzers (Autor). Beide können sich vom im vorherigen Bild eingestellten Gerätenamen und Ersteller unterscheiden. Im unteren Teil des Dialogfensters haben Sie die Möglichkeit für Ihre zukünftigen Programme eine andere als die vorgeschlagene SPS-Programmiersprache auszuwählen. Der dritte Dialog erlaubt Funktionsmodule hinzu zu fügen. Er ist für unseren Fall bedeutungslos. Klicken Sie dann auf "Fertigstellen". Im Hintergrund wird in der nun folgenden Wartezeit automatisch das zum IndraMotion-Projekt gehörende Indralogic-Teilprojekt angelegt. Damit ist dem aktuellen IndraMotion-Projekt das Gerät "Mlc1" vom Typ "IndraMotion MLC L40" hinzugefügt: Abb. 0-11: "Mlc1" vom Typ "IndraMotion MLC L40" ist dem Projekt hinzugefügt V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-5-
Virtuelle Achse zum Projekt hinzufügen Im Unterschied zu realen Achsen, die an unterschiedlichen Interfaces, z.b. SERCOS oder Profibus, laufen können und entsprechend vereinbart werden müssen, ist eine virtuelle Achse nur zu deklarieren. Im Projektnavigator ist auf dem Ordner Motion/Virtuelle Achse mit der Rechten-Maus-Taste der PopUp-Menüpunkt "Virtuelle Achse hinzufügen" zu betätigen. Abb. 0-12: Vereinbaren einer virtuellen Achse Analog zum Eintrag der Mlc1 liefert ein Wizard die erforderlichen Dialogfenster zum Ausfüllen. Abb. 0-13: Dialog "Allgemeine Einstellungen" für eine virtuelle Achse Abb. 0-14: Dialog "Konfiguration" für eine virtuelle Achse Die Achsnummer "1" und der Name "VA1" finden alternativ Anwendung.. V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-6-
Reale Achse zum Projekt hinzufügen Hinweis: Die Aktivitäten zur realen Achse sind nur durchzuführen, wenn tatsächlich ein Antrieb vorhanden ist, oder Sie deaktivieren die Achse, wie am Abschnittende gezeigt! Das prinzipielle Vorgehen ist analog dem "Steuerung zum Projekt hinzufügen": Fokussieren Sie im Geräteexplorer das Antriebsregelgerät IndraDrive unterhalb des Ordners "Drive and Control" mit der linken Maustaste und halten Sie diese gedrückt. (nachfolgendes Bild) Abb. 0-15: Auswahl des Antriebs aus der Bibliothek Ziehen Sie mit gedrückter linker Maustaste den Antrieb in das Projekt. Positionieren Sie die Maus auf "SERCOS" unterhalb von "Mlc1", und lassen Sie die Maustaste los: Abb. 0-16: Einfügen des Antriebs in das aktuelle Projekt Jetzt erscheint ein Wizard, mit dessen Hilfe Sie in zwei Schritten für die Verwendung des Gerätes "IndraDrive" innerhalb des aktuellen Projektes notwendige Einstellungen vornehmen. Im Schritt "Allgemein" (nachfolgendes Bild) werden Gerätename, ein Kommentar zu diesem Gerät und der Ersteller eingegeben. Sie können die voreingestellten Werte übernehmen oder die Werte ändern. Bezeichnen Sie das Gerät mit "RA1". Klicken Sie dann auf "Weiter". Abb. 0-17: Schritt "Allgemein" im Gerätewizard "neuen Antrieb einfügen" Im Schritt "Konfiguration" (nachfolgendes Bild) muss die Adresse des Antriebs "IndraDrive M" im SERCOS-Ring eingestellt werden (Adresse in der Antriebskonfiguration, hier "1"), andernfalls ist keine Kommunikation mit dem Antrieb möglich. Die Achsnummer "2" und der Name "RA1" finden alternativ Anwendung. Klicken Sie dann auf "Weiter". V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-7-
Abb. 0-18: Schritt "Konfiguration" im Gerätewizard "neuen Antrieb einfügen" Das Motion-Projekt ist damit fertig konfiguriert. Beide Achsen (VA1 und RA1) könnten nun im Detail parametriert werden. Für unsere Belange genügt jedoch die Standardeinstellung. Für die Parametrierung sind die Ordner VA1 und RA1 (oben), nachstehende Abbildung, zu öffnen. Abb. 0-19: Motion-Teilprojekt fertiggestellt Hinweis: Sollten Sie aktuell über keinen Antrieb verfügen, deaktivieren Sie die eben vorgenommene Konfiguration der realen Achse. Tippen Sie dazu auf das Symbol der Instanz der realen Achse RA1 mit einem Mausklick an. Das Symbol schlägt um in einen Haken, der nach dem Löschen in das neue Achse-deaktiviert-Icon übergeht. (Der Vorgang ist umkehrbar!) Abb. 0-20: Deaktivieren der realen Achse V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-8-
Abb. 0-21: Deaktivieren der realen Achse, abgeschlossen Download des Motion-Teilprojektes Mit dem Ziehen der IndraMotion MLC L40 und aller Achsen in das Projekt "MLC_FirstSteps" sowie der Parametrierung der Steuerungs- und Achsbestandteile (und der eventuellen Deaktivierung) ist der erste Abschnitt der Bearbeitung abgeschlossen. Die bisher gesammelten Informationen sind jetzt in die Steuerung zu laden. Dazu ist das Icon der Projekt- Symbolleiste oder der Menüpunkt Projekt/Online zu betätigen: Abb. 0-22: Motion-Daten in die Steuerung laden Der Anwender wird auf Differenzen zwischen dem Projekt auf der Steuerung und seinem Projekt hingewiesen. Nach Zustimmung erfolgt das Überschreiben. Die Anzeige der Steuerung ändert sich von BB STOP über mehrere Zwischenschritte nach P2 STOP Hinweis: Ohne diesen Downloadschritt fehlen der Steuerung im Hintergrund erarbeitete Daten. Abb. 0-23: Erfolgreicher Abschluss des Downloades Abschließend wird die Motion aus dem "Parametriermode (P2)" in den "Betriebsmode (BB)" geschaltet. Dazu ist das BB-Icon der MLC-Symbolleiste zu betätigen. Abb. 0-24: Umschaltung in den Betriebsmode V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-9-
Bewegungsablauf programmieren Die Logik des Bewegungsablaufes wird durch die Nutzung von SPS-Bausteinen auf Basis der technischen Spezifikation PLCopen hinterlegt. Die Verwendung dieser PLCopen-Bausteine erfolgt innerhalb des BRC-SPS-Programmiertools "IndraLogic" entsprechend EN 61131-3. Expandieren Sie dazu im Projektexplorer nacheinander den Knoten "Logic" unterhalb von "Mlc1" bis folgendes Bild zu sehen ist: Abb. 0-25: Projektexplorer nach Expandieren der Knoten "Logic" Klicken Sie mit der linken Maustaste doppelt auf "MotionProg" (oder mit der Rechten-Maus-Taste). Daraufhin wird das SPS-Programmierwerkzeug "IndraLogic" geöffnet und das Programm "MotionProg" fokussiert. Durch diesen Aufruf von "IndraLogic" wird Ihnen ein Programmierrahmen zur Verfügung gestellt, mit dem Sie sofort mit der Programmierung des Bewegungsablaufes beginnen können. Die Programmiersprache für das Programm hatten Sie mit dem Ziehen der Steuerung in den Projektnavigator vorgegeben (Steuerung zum Projekt hinzufügen). Abb. 0-26: SPS-Programmieroberfläche "IndraLogic" nach dem ersten Start aus IndraMotion MLC für das Projekt "MLC_FirstSteps" V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-10-
Programmieren der virtuellen Achse VA1 Entsprechend der Aufgabenstellung des ersten IndraMotion MLC-Projekt werden Instanzen der PLCopen-Bausteine MC_MoveVelocity und MC_Stop unter Nutzung von "VA1" aufgerufen. Hinweis: Eine Instanz des MC_Power wird für virtuelle Achsen nicht benötigt. Gehen Sie dazu folgendermaßen vor: Fügen Sie in der Implementation ein neues Netzwerk ein, per rechter Maustaste: Abb. 0-27: IndraLogic, Einfügen eines neuen Netzwerkes Generieren Sie einen allgemeinen Baustein wie folgt: Gehen Sie auf das graue Quadrat im Netzwerk 0002. Abb. 0-28: IndraLogic, neues Netzwerk 0002 mit grauem Quadrat Rechte-Maus-Taste, "Baustein Strg+B" ergibt ein AND Abb. 0-29: IndraLogic, generieren eines neuen Bausteins Öffnen Sie mit der Funktionstaste <F2> die Eingabehilfe. Wählen Sie unter den Standardfunktionsblöcken aus der von Bosch-Rexroth bereitgestellten PLCopen- Bibliothek (LW:\ Programme\ Rexroth\ IndraWorks\ IndraLogic\ Targets\ IndraMotion_MLC_L40_02VRS\Lib\ ML_PLCopen.lib\Motion) den Baustein MC_MoveVelocity. Bestätigen Sie mit "OK". V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-11-
Abb. 0-30: IndraLogic, Auswahl des MC_MoveVelocity aus ML_PLCopen.lib Bestätigen Sie jetzt das Einfügen des Bausteines von MC_MoveVelocity mit <Enter> und markieren Sie durch Klick mit der linken Maustaste die 3 Fragezeichen oberhalb des Bausteines. Geben Sie als Instanznamen für diesen Baustein "MoveVelVA1" ein und schließen Sie die Eingabe mit <Enter> ab. Daraufhin öffnet sich das Fenster der "Variablendeklaration", welches Sie sofort mit "OK" quittieren können: Abb. 0-31: IndraLogic, Deklaration des Instanznamens eines Bausteines, Typ "MC_MoveVelocity" mit Hilfe des Fensters "Variablendeklaration" Damit haben Sie die Instanz MoveVelVA1 des PLC-Open-Bausteines MC_MoveVelocity deklariert. Beschalten Sie nun die Eingänge des Bausteines. Analog zum Instanznamen des Bausteines beschalten Sie den Eingang "Execute" mit einer Variable mit Namen "ex_movevelva1", Typ BOOL: Markieren Sie die 3 Fragezeichen vor dem Eingang "Execute" Geben Sie den Namen "ex_movevelva1" ein, und schließen Sie mit <Enter> ab Das sich öffnende Fenster zur "Variablendeklaration" können Sie sofort mit <Enter> bestätigen Um den Eingang "Velocity" zu beschalten gehen Sie wie folgt vor: Markieren Sie die 3 Fragezeichen vor dem Eingang "Velocity" Geben Sie den Namen "VcomVA1" ein, und schließen Sie mit <Enter> ab Als Typ tragen Sie REAL und als Initialwert 200 (U/min) ein, <Enter> Für die Eingänge "Acceleration" tragen Sie bitte 20 (rad/s²) und für "Deceleration" 20 ein, Um den Eingang "Axis" zu beschalten gehen Sie wie folgt vor: V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-12-
Wählen Sie in der Eingabehilfe <F2> aus dem Bereich der "Globalen Variablen" und der Gruppe der "Globalen_MLC_Variablen" die Variable "VA1" aus (nachfolgendes Bild) Bestätigen Sie mit "OK" Schließen Sie die Eingabe des Namens mit <Enter> ab Abb. 0-32: IndraLogic, Auswahl der Achsinstanz bei Beschaltung eines Funktionsbausteines vom Typ "MC_MoveVelocity" Um eine Rückmeldung zu erhalten, ob der Funktionsbaustein korrekt gearbeitet hat, sollen die Ausgänge "InVelocity", "CommandAborted" und "Error" beschaltet werden. Markieren Sie dazu durch Mausklick den Bereich rechts neben dem Ausgang "InVelocity" und wählen Sie im Kontextmenü (Klick rechte Maustaste) "Zuweisung Strg+A" aus: Abb. 0-33: IndraLogic: Zuweisung am Ausgang eines Funktionsbausteines In bekannter Art und Weise beschalten Sie den Ausgang "InVelocity" des Bausteines mit einer Variable mit Namen "in_movevelva1" vom Typ BOOL: Markieren Sie die 3 Fragezeichen am Ausgang "InVelocity" Geben Sie den Namen "in_movevelva1" ein und schließen Sie mit <Enter> ab Das sich öffnende Fenster zur "Variablendeklaration" können Sie sofort mit <Enter> bestätigen Wiederholen Sie für den CommandAborted-Ausgang mit "ca_movevelva1". Wiederholen Sie für den Error-Ausgang mit "er_movevelva1". Damit ist der PLCopen-Baustein vom Typ MC_MoveVelocity entsprechend der Aufgabenstellung ausreichend beschaltet: Abb. 0-34: PLCopen-FB Typ "MC_MoveVelocity" ist eingefügt und beschaltet V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-13-
Hinweis: Immer wenn Sie einen Baustein abgeschlossen haben, lassen Sie eine Testübersetzung <F11> laufen. Beseitigen Sie danach eventuell vorhandene Fehler sofort. Generieren Sie im weiteren eine Instanz der PLCopen-Bausteine und MC_Stop. MC_Stop Neues Netzwerk anfügen MC_Stop einfügen und eine Instanz "StopVA1" deklarieren Eingänge beschalten und wenn nötig Eingangsvariablen deklarieren: "Execute" "ex_stopva1" vom Typ BOOL "Deceleration "50" "Axis "VA1" vom Typ "AXIS_REF (bereits deklarierte Variable aus dem Bereich der "Globalen Variablen" und der Gruppe der "Globalen_MLC_Variablen") Ausgänge "Done" "do_stopva1" vom Typ BOOL "Error" "er_stopva1" vom Typ BOOL Istgeschwindigkeit "VactVA1" Als Letztes soll ein Netzwerk, in dem die aktuelle Geschwindigkeit der Achse VA1 "VactVA1"(Datentyp REAL) abgelesen werden kann, implementiert werden. Dazu muss zunächst die aktuelle Geschwindigkeit wenigstens einmal in der Implementation verwendet werden. Die Daten aller Achsen,die eine MLC steuern kann, sind in dem Feld AxisData: ARRAY [1..16 ] OF ML AXISDATA_SM enthalten, wobei als Index die Achsnummer zu verwenden ist. Die Variable wird unter dem Namen AxisData [1 ].ractualvelocity_i, für die virtuelle Achse, Achsnummer 1, bereitgestellt. Die Eingabe wird durch die Intellisense-Funktion unterstützt. Dies bedeutet, dass nach der Eingabe des "." bei "AxisData [1 ]." alle verfügbaren Elemente aufgerollt werden und zur Auswahl stehen. Abb. 0-35: Auswahl der Direktvariablen aktuelle Geschwindigkeit Damit ist die Implementierung des Bewegungsablaufes entsprechend Aufgabenstellung abgeschlossen: V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-14-
Abb. 0-36: IndraLogic, Implementation der virtuellen Achse VA1 Download des SPS-Teilprojektes virtuelle Achse VA1 Der zuvor implementierte Bewegungsablauf muss jetzt noch übersetzt, in die Steuerung übertragen und gestartet werden Die Übersetzung erreichen Sie im Menüpunkt Projekt/Alles Übersetzen: Abb. 0-37: IndraLogic, implementierten Bewegungsablauf übersetzen Zum Übertragen der kompilierten Daten in die Zielsteuerung wählen Sie den Menüpunkt Online/Einloggen (nachfolgendes Bild). Abb. 0-38: IndraLogic, Übertragen der kompilierten Daten in die Steuerung Wenn zuvor ein anderes Programm in der Steuerung bearbeitet wurde, kommt eine Rückfrage, ob Ihr Programm geladen werden soll. Bestätigen Sie in diesem Fall mit "Ja": Abb. 0-39: IndraLogic, Rückfrage bei der Übertragung Starten Sie die Bearbeitung in der Steuerung über Online/Start. V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-15-
Abb. 0-40: IndraLogic, Starten der Programmbearbeitung in der Steuerung Der Bewegungsablauf selbst wird angestoßen, indem nacheinander die Abarbeitung der programmierten Funktionsbausteine aktiviert wird. Um die Bearbeitung des "MoveVelVA1" vom Typ "MC_MoveVelocity" zu aktivieren, muss am "Execute"- Eingang des Bausteins eine positive Flanke auftreten. Doppelklick mit der linken Maustaste auf die Eingangsvariable "ex_movevelva1". Jetzt ist hinter "ex_movevelva1" ein "TRUE" zu sehen, welches den Alternativwert von "ex_movevelva1" bezogen auf den aktuellen Zustand zeigt. Über Online/Werte schreiben Ctrl+F7 wird "ex_movevelva1" in der Steuerung auf "TRUE" gesetzt. Die dadurch entstehende positive Flanke setzt den Ausgang "InVelocity" vom Funktionsbaustein "MoveVelVA1" auf "TRUE". Der Ausgang "InVelocity" des Bausteins wird auf "TRUE" gesetzt und die Achse bewegt sich mit 200 U/min. Sie können durch Setzten der Variable "ex_stopva1" am Eingang "Execute" des Funktionsbausteines "stop1" vom Typ MC_Stop die Bewegung der Achse stoppen. Abb. 0-41: IndraLogic, Nach Forcen des "Execute", "MC_MoveVelocity" und vorbereitetem Forcen des "Execute", "MC_Stop" V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-16-
Aufzeichnung der Bewegung von Achse VA1 (Trace) IndraLogic liefert zur Aufzeichnung von Bewegungsvorgängen ein Trace-Werkzeug. Mit seiner Hilfe sollen die Achsgeschwindigkeit "VactVA1", für MoveVelVA1 (MV_MoveVelocity) ex_movevelva1 (Execute) In_ MoveVelVA1 (InVelocity) ca_movevelva1 (CommandAborted) und für StopVA1 (MC_Stop) ex_stopva1 (Execute) aufgezeichnet werden. Dazu muss zunächst die Traceaufzeichnung konfiguriert werden. (Projektnavigator ->Ressourcen ->Traceaufzeichnung, Rechter-Mausklick ins Arbeitsfenster oder <Umsch>+<F10>->PopUp-Menü Tracekonfiguration) Abb. 0-42: Konfiguration der Traceaufzeichnung Hinweis: Das Produkt aus Anzahl der Messungen (max. 499) und Abtastrate ergibt die zur Verfügung stehende Messzeit. Die Variablen werden dabei mit der Eingabehilfe (siehe obige Abbildung) eingesammelt. Sie können in beliebiger Reihenfolge zur Anzeige gebracht werden. Die Aufzeichnung wird manuell ausgelöst und beendet. Das Resultat ist nachstehend zu sehen. V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-17-
Hinweis: Die Reihenfolge der Variablen zur Anzeige im nachfolgenden Fenster ist manuell vorzugeben. Abb. 0-43: Traceaufzeichnung für die virtuelle Achse VA1 Zu erkennen ist, daß sich die virtuelle Achse analog zu einer realen, gleichparametrierten Achse verhält. (Vergleiche Geschwindigkeitsverlauf, Beschleunigung mit 20 rad/s² und Verzögerung mit 50 rad/s²). Ausloggen. Programmieren der realen Achse RA1 Hinweis: Ab dieser Stelle benötigen Sie die "reale" Antriebstechnik! Die Verwendung einer realen Achse setzt zunächst eine Instanz des PLCopen-Bausteins MC_Power voraus. Als Nächstes werden jeweils eine Instanz von MC_GearIn und MC_GearOut benötigt. Die reale Achse kann dann mittels einer Instanz von MC_Stop angehalten werden. Die Programmierung erfolgt analog zu Abschnitt Programmieren der virtuellen Achse VA1. MC_Power Neues Netzwerk anfügen MC_Power einfügen und eine Instanz "PowerRA1" deklarieren Eingänge beschalten und wenn nötig Eingangsvariablen deklarieren: "Enable" "en_powerra1" vom Typ BOOL "Axis "RA1" vom Typ "AXIS_REF (bereits deklarierte Variable aus dem Bereich der "Globalen Variablen" und der Gruppe der "Globalen_MLC_Variablen") Ausgänge "Status" "st_powerra1" vom Typ BOOL "Error" "PowerRA1" vom Typ BOOL V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-18-
MC_GearIn Neues Netzwerk anfügen MC_GearIn einfügen und Instanz "GearInRA1" deklarieren Eingänge beschalten und wenn nötig Eingangsvariablen deklarieren: "Execute" "ex_gearinra1" vom Typ BOOL "RatioNumerator 5 "RatioDenominator" "10" "MasterFineadjust" "20" (%) "Master "VA1" vom Typ "AXIS_REF (bereits deklarierte Variable aus dem Bereich der "Globalen Variablen" und der Gruppe der "Globalen_MLC_Variablen") "Slave "RA1" vom Typ "AXIS_REF (bereits deklarierte Variable aus dem Bereich der "Globalen Variablen" und der Gruppe der "Globalen_MLC_Variablen") Ausgänge: "InGear" "ig_gearinra1" vom Typ BOOL "CommandAborted" "ca_gearinra1" vom Typ BOOL "Error" "er_gearinra1" vom Typ BOOL MC_GearOut Neues Netzwerk anfügen MC_GearOut einfügen und eine Instanz "GearOutRA1" deklarieren Eingänge beschalten und wenn nötig Eingangsvariablen deklarieren: "Execute" "ex_gearoutra1" vom Typ BOOL "Slave" "RA1" vom Typ "AXIS_REF (bereits deklarierte Variable aus dem Bereich der "Globalen Variablen" und der Gruppe der "Globalen_MLC_Variablen") Ausgänge "Done" "do_gearoutra1" vom Typ BOOL "Error" "er_gearoutra1" vom Typ BOOL MC_Stop Neues Netzwerk anfügen MC_Stop einfügen und eine Instanz "StopRA1" deklarieren Eingänge beschalten und wenn nötig Eingangsvariablen deklarieren: "Execute" "ex_stopra1" vom Typ BOOL "Deceleration "50" "Axis" "RA1" vom Typ "AXIS_REF (bereits deklarierte Variable aus dem Bereich der "Globalen Variablen" und der Gruppe der "Globalen_MLC_Variablen") Ausgänge "Done" "do_stopra1" vom Typ BOOL "Error" "er_stopra1" vom Typ BOOL Istgeschwindigkeit "VactRA1" Als Letztes soll ein Netzwerk, in dem die aktuelle Geschwindigkeit der Achse RA1 "VactRA1" abgelesen werden kann, implementiert werden. Dazu muss zunächst die aktuelle Geschwindigkeit wenigstens einmal in der Implementation verwendet werden. Die Geschwindigkeit wird als Globale Variable unter AxisData [2 ].ractualvelocity_i, Typ REAL, für die reale Achse, Achsnummer 2, bereitgestellt. V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-19-
Abb. 0-44: IndraLogic, Implementation der realen Achse Download des SPS-Projektes Der Ladevorgang verläuft analog zum Abschnitt Download des SPS-Teilprojektes virtuelle Achse VA1. Das neue Projekt überschreibt dabei das alte nach Rückfrage. Die weitere Arbeitsreihenfolge sieht wie folgt aus: Zuschalten des ex_powerra1 (MC_Power) Zuschalten des ex_gearinra1 (MC_GearIn) Das zu erwartenden Übersetzungsverhältnis des Getriebes ergibt sich zu: Üv= (RatioNumerator / RatioDenominator) * (1+ MasterFineadjust) also bei VactVA1 = 200 U/min ergibt sich VactRA1 = 120 U/min. Befindet sich der MC_GearIn "InGear", so kann die Geschwindigkeit "VcomVA1" der virtuellen Achse verändert werden, die reale Achse folgt ihr. Abschalten des ex_gearinra1 (MC_GearIn) Zuschalten des ex_gearoutra1 (MC_GearOut), Synchronität ist aufgelöst, Abschalten des ex_gearoutra1 Zuschalten des ex_stopra1 (MC_Stop) Nach gestoppter Achse RA1 können ex_stopra1 (MC_Stop) und dann ex_powerra1 (MC_Power) abgeschaltet werden. V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-20-
Aufzeichnung der Bewegung beider Achsen (Trace) Das Trace-Werkzeug wurde analog zum Abschnitt Aufzeichnung der Bewegung von Achse VA1 (Trace) verwendet, um den Hochlauf der virtuellen Achse und das Aufsynchronisieren sichtbar zu machen. Die nachstehende Abbildung zeigt die entsprechenden Abläufe: Abb. 0-45: Traceaufzeichnung für beide Achsen Index-Verzeichnis Achsadressen 6, 7 Achsname 7 Aufzeichnung der Bewegung beider Achsen mittels Trace 19 Aufzeichnung der Bewegung der virtuellen Achse mittels Trace 16 Bedienphilosophie 1 Bewegungsablauf programmieren 10 Deaktivieren einer realen Achse 8 Download des Motion-Teilprojektes in die Steuerung 9 Download des SPS-Projektes 19 Download des SPS-Teilprojektes virtuelle Achse VA1 14 IndraMotion MLC - FirstSteps 1 IndraMotion MLC-Projekt, das erste 2 IndraWorks 1 Programmieren der realen Achse RA1 17 Programmieren der virtuellen Achse VA1 10 Projekt anlegen 3 Reale Achse zum Projekt hinzufügen 7 Steuerung zum Projekt hinzufügen 4 Technische Voraussetzungen 1 Virtuelle Achse zum Projekt hinzufügen 6 V. Hammer - SS 2006 Praktikum Motion Control SDP2-P2-21-