Lichtgitter

Licht sortiert Gesten

Wer beim Begriff Lichtgitter an die Absicherung einer Maschine denkt, liegt bei der Neuentwicklung von Duometric ausnahmsweise daneben. Denn in einer Roboterzelle kann ein Lichtgitter auch zur Bewegungssteuerung des Roboters durch Gesten eingesetzt werden.

20. November 2017
Der Roboter in dieser Zelle lässt sich durch Gesten mithilfe eines Lichtgitters steuern. Bild: Duometric AG
Bild 1: Licht sortiert Gesten (Der Roboter in dieser Zelle lässt sich durch Gesten mithilfe eines Lichtgitters steuern. Bild: Duometric AG)

Die Innovation der Robotikzelle von Duometric besteht darin, dass Lichtgitter erstmals zur nicht sicherheitsrelevanten Bewegungssteuerung eines Roboters genutzt werden. Im Prinzip geht es darum, zu zeigen, wie man durch Gesten den Roboter dazu bringen kann, beispielsweise ein Produkt aus einem Regal zu entnehmen. Duometric-Produkte üben hierbei zweierlei Funktionen aus: die Erfassung von Gesten mittels Lichtgitter sowie die Positionsanzeige durch optische Signale von LEDs in den Anzeigeleisten. Durch zwei sich jeweils gegenüberliegende Sender- und Empfängerleisten entsteht ein Lichtgitternetz, das ein X/Y-Koordinatensystem aufspannt. Ein manueller Eingriff unterbricht die horizontalen und vertikalen Strahlen, die durch einen externen Auswerter in digitale X- und Y-Werte umgewandelt werden.

Für die Strahlen der X-Koordinate sowie die der Y-Koordinate werden zwei Leistenpaare an einen Duometric-LVX-ALM-Auswerter angeschlossen. Durch das PNI-Modul findet eine Anbindung des Auswertegerätes an Profinet statt. Die Steuerung der Robotik erfolgt über eine Siemens S7. Das SPS-Programm ordnet den X/Y-Koordinaten ein entsprechendes Regalfach zu und steuert die Anzeigeleisten an. Außerdem stellt es die Verknüpfung mit dem Bedienpanel her und steuert die Kommunikation mit dem Roboter. Am Handgelenk des Roboters ist ein Drei-Finger-Greifer von Robotiq montiert.

Die unterhalb der Regalböden montierten Duometric-Anzeigeleisten übernehmen sowohl die optische Positionsanzeige der gewählten Koordinaten als auch die Meldung leerer Positionen. Für minimalen Installationsaufwand bei diesen Anzeigeleisten wurden Segmentierungen verwendet, um die insgesamt zwölf einzelnen Leisten auf die sechs verfügbaren Anschlüsse zu bringen.

Modell vorab simuliert

Der gesamte Steuerungsablauf von der Strahleninformation der Lichtgitterleisten bis zur Bewegung des Drei-Finger-Greifers wurde in einem Simulink-Modell unter Verwendung von Zustandsautomaten (Stateflows) realisiert. Aus diesem Modell kann unter Nutzung des Matlab- beziehungsweise Simulink-Coders ein C-Code generiert und auf die Steuerung der Produktionsanlage geladen werden.

Ein wesentlicher Vorteil einer solchen modellbasierten Entwicklungsumgebung ist die Nutzung von Bibliotheksfunktionen. Daraus sind wichtige Bausteine für die Ansteuerung der Duometric-Auswerter entstanden. Diese Kenntnisse fließen auch in künftige Projekte mit ein. Eingänge aus dem HMI wurden vorab in einem Stateflow verarbeitet, um bereits während der Ausführung des Roboterprogramms die Nutzereingabe für die nächste Funktion zu detektieren. Die Eingänge aus dem Roboter und dem Duometric-Lichtgittersystem werden direkt in die zentrale Steuerungsfunktion eingelesen. Diese ist als Stateflow mit verschiedenen Substates realisiert, was die Strukturierung und Nachvollziehbarkeit fördert. Die Ausgänge des Stateflows werden mit den Ausgängen des Simulink-Modells für den Roboter und mit den Anzeige-LEDs verbunden.

Die Codegenerierung in Simulink/Stateflow erfolgt mithilfe des Simulink-Coders. Dieser erstellt anhand des Simulink-Modells automatisch einen C- oder C++-Code für das jeweilige Hard- oder Software-Target. Der erstellte Code kann in Echtzeitanwendungen oder auch in eingebetteten Systemen wie dem Softwarecontroller der S7-1500-Steuerung eingesetzt werden. Durch die Traceability-Analyse des Simulink-Coders ist es möglich, den Zusammenhang zwischen dem generierten Code und dem erzeugten Modell herzustellen.

Genaue Zuordnung

Dabei ist genau zu erkennen, welches Code-Element zu welchem Teil des Ursprungsmodells gehört. Durch die Codegenerierung aus einem Simulink-Modell kann das V-Modell direkt angewandt werden. Wesentliche Bestandteile dieses Vorgehens sind zum einen die Design- und Detailierungsphase, zum anderen die gleichzeitige Verifikations- und Validierungsphase. In der Design- und Detailierungsphase wird das Simulink-Modell stetig überarbeitet und dessen Funktionsumfang somit definiert.

Durch die modellbasierte Programmierung ist eine strukturierte Vorgehensweise entlang des definierten Prozesses möglich. Das Beispiel zeigt, dass dadurch die Steuerung einer Anlage und das Ansprechen von E/A-Komponenten modellbasiert erfolgen können.

SPS IPC Drives: Halle 7A, Stand 521

Erschienen in Ausgabe: 08/2017

Schlagworte