Externer Automatikbetrieb In der Industrie sind Roboter häufig Bestandteil einer automatisierten Anlage, in der sie verschiedene Aufgaben übernehmen können. In dieser Anlage muss der Roboter Befehle von übergeordneten Steuerungen (z.B. einer SPS) erhalten und ausführen können. Des Weiteren muss er auch Signale an die SPS zurückgeben können. Der Betrieb eines solchen Roboters erfolgt dann in der Betriebsart EXT. Damit der Roboter im externen Automatikbetrieb betrieben werden kann, sind viele Vorkehrungen zu treffen. Zuerst muss der Roboter in die Hardwarekonfiguration des SPS Programmes integriert werden. Der Roboter wird dafür in das PROFINET-Netz integriert, indem ein Name und eine IP-Adresse vergeben wird. Die IP-Adresse wird anschließend dem Roboter über das smartPad zugewiesen. Anschließend muss den 256 digitalen, nicht sicheren Ein- und Ausgängen des Roboters eine Anfangsadresse zugewiesen werden. Die Eingänge umfassen bei diesem Projekt die Eingänge 62 bis 93 und die Ausgänge 62 bis 93. Ebenfalls werden die Ein- und Ausgänge in die Variablenliste des SPS Programmes aufgenommen. Des Weiteren verfügt der Roboter über 64 sichere Ein- und Ausgänge, welche ebenfalls in das SPS Programm eingefügt werden müssen. Zusätzlich ist eine Konfiguration der PROFIsafe Parameter nötig. Nach der Hardwarekonfiguration folgt die Konfiguration eines Work Visual Projekts. Bei diesem Programm handelt es sich um eine Software, welche von KUKA bei der Auslieferung des Roboters mitgeliefert wird. Das Programm wird für folgende Konfigurationen benötigt: - Einrichtung der Kommunikation des Roboters über das Bussystem - Verschaltung der Ein- und Ausgänge des Roboters mit der SPS - Erstellen und Bearbeiten von Roboterprogrammen Als erstes wird der verwendete Roboter (KUKA KR6 R700 sixx) mit der Steuerung des Roboters verknüpft. Der nächste Schritt besteht darin, dass dem Roboter zugewiesen wird, über welches Bussystem er kommunizieren soll. In unserem Fall geschieht dies über PROFINET. Danach muss dem Roboter noch die Verschaltung der Ein- und Ausgänge mitgeteilt werden. Dieser Schritt ist erforderlich, damit die SPS mit dem Roboter kommunizieren kann. Dem Roboter muss mitgeteilt werden, welche Ein- und Ausgänge der SPS mit den Aus- und Eingängen des Roboters kommunizieren sollen. Die 4069 Ein- und Ausgänge des Roboters werden dabei teilweise mit den 256 Ein- und Ausgängen der SPS verknüpft. Die Verknüpfung der sicheren Ein- und Ausgänge erfolgt dabei automatisch. Beispielhaft wird nachfolgend die SPS-Roboter Kommunikation kurz erklärt: An der Pfeifenanlage befinden sich zwei Sensoren, welche erkennen, ob die Rutschen des Roboters belegt sind oder nicht. In der folgenden Abbildung sind diese in der Symboltabelle dargestellt. Damit der Roboter jedoch die Zustände der Sensoren auslesen kann, müssen diese an den Roboter über Variablen gesendet werden, die im Adressbereich des Roboters liegen. Dafür ist eine Adresszuweisung notwendig. Diese wird im Funktionsbaustein FC3 im Netzwerk 7 und 8 umgesetzt. Die Zustandsinformationen der Sensoren werden folglich an die Variablen 10 und 11 des Roboters über die Ausgänge 63.1 und 63.2 der SPS gesendet. Diese Verknüpfung ist nachfolgend gezeigt. Die Abbildung stammt aus der Verknüpfungskonfiguration von Work Visual. Bei den Eingängen 17.1 und 17.2 handelt es sich um die Inputs des Roboters. Die komplette Bitübertragung sieht für den Sensor B3 folgendermaßen aus: E43.1: „Pfeife kurz vorhanden“--> Q63.1: „R01E010“ -->Input 17.1 (vom Roboter) --> Variable IN[10] Ein Ausgang der SPS entspricht Roboterseitig einem Eingang Abschließend kann man auf dem smartPad des Roboters die Zustände der Sensoren über die Anzeige der digitalen Signale einsehen. Da der Roboter selbst auch Aus- und Eingänge besitzt, müssen diese in einem späteren Schritt ebenfalls noch verknüpft werden. Der Vorgang ist dabei analog zur Verknüpfung von externen Ein- und Ausgängen. Abschließend wird das Work Visual Projekt auf den Roboter übertragen und installiert. Die Arbeiten zur Integration des Roboters sind damit größtenteils abgeschlossen. Es fehlt noch die Programmierung der SPS. Zuerst muss das Sicherheitsprogramm der SPS geschrieben werden. Dabei ist darauf zu achten, dass das Programm in sich konsistent ist und nur mit sicheren Ein- und Ausgängen gearbeitet wird. Ziel des Sicherheitsprogrammes ist es, einen gegebenenfalls notwendigen NOT-HALT des Roboters auszulösen, falls es zu Kollisionen oder Gefährdungen des Bedieners kommt. Des Weiteren müssen der Schutzkreis und die externen NOT-HALT Vorrichtungen eingebunden werden. Im nächsten Schritt kann mit der Programmierung des eigentlichen externen Automatikbetriebes begonnen werden. Zunächst wird mit der Implementierung des Programmes CELL auf dem smartPad begonnen. Im externen Automatikbetrieb soll der Roboter in der Lage sein, verschiedene Programme abzuarbeiten. Unter anderen soll er im normalen Betrieb die Pfeifenproduktionsanlage mit kurzen und langen Pfeifen bestücken, sowie ein Testprogramm abfahren können. Mit Hilfe des CELL Programms werden diesen einzelnen Bewegungsabfolgen Programmnummern zugewiesen, über welche diese mit der SPS angewählt werden können. Die CELL besteht aus einer vorgefertigten Switch Case Schleife, welche über Work Visual oder direkt am smartPad bearbeitet werden kann. Betrachtet wird dabei die Variable PGNO. Diese besteht aus einem Byte und wird bei unserem Roboter dual interpretiert. Beispiel: PGNO 0000 00012 0000 01002 Programmnummer 1 4 Je nachdem, wie die Variable PGNO von der SPS gesetzt wird, lässt sich damit das entsprechende Programm des Roboters auswählen. Die nachfolgende Abbildung zeigt die Anwahl des Testprogrammes für die Übung 4 mit der Programmnummer 4. Die Anwahl des Testprogramms der Übung 4 ist nur unter bestimmten Voraussetzungen möglich. Zuerst muss der Roboter der SPS mitteilen, dass er sich im externen Automatikbetrieb befindet und kein Programm aktuell abgearbeitet wird. Des Weiteren muss er die Programmnummer anfordern. Dieses ist der Fall, wenn das CELL Programm geöffnet ist. Wird nun der Button „Testprogramm EIN“ auf dem Touch Panel gedrückt, was das Setzen des Merkers M107.2 zur Folge hat, wird das Bit 2 von PGNO mit der Wertigkeit 4 gesetzt. Damit der Roboter jedoch das Testprogramm abarbeiten kann, müssen noch weitere Variablen von der SPS gesetzt werden. Es handelt sich dabei jedoch nicht um ein schlichtes Setzen der Variablen. Vielmehr müssen die Variablen entsprechend des Signal – Ablaufdiagramms des Herstellers gesetzt werden. Das heißt, dass bestimmte Bedingungen (steigende, fallende Signalflanken), zeitliche Aspekte und Zustandsinformationen des Roboters (KUKA KRC Variablen) berücksichtigt werden müssen, damit der Roboter startet. Die folgenden Abbildungen zeigen einige Variablen, welche für den externen Automatikbetrieb relevant sind. Es gibt noch weitere Variablen, welche vom Roboter gesetzt werden, auf diese wird jedoch nicht eingegangen. Die Variablen können auf dem smartPad des Roboters eingesehen werden, indem im Hauptmenü der Reiter „Anzeige“ „Ein/Ausgänge“ „Automatik Extern“ ausgewählt wird. Einige dieser Variablen werden nachfolgend kurz erklärt: Variablen: SPS Roboter PGNO_TYP: Hier wird die Codierung des PGNO Bytes ausgewählt. In diesem Fall als Binärzahl. Es sind weitere Optionen, wie BCD Code oder „1 aus N“ möglich. PGNO_LENGHT: Legt die Länge von PGNO fest. In diesem Fall 8, da wir ein Byte haben. PGNO_PARITY: Enthält das Paritätsbit von PGNO. Dieses wird genutzt, um Übertragungsfehler durch Störungen zu erkennen. $EXT_START: Das ausgewählte Programm wird gestartet, wenn dieses Bit gesetzt ist. $MOVE_ENABLE: Muss immer true sein, sonst werden die Antriebe des Roboters stillgesetzt. $DRIVES_ON: Schaltet die Antriebe des Roboters ein. Variablen: Roboter SPS $RC_READY: Statusanzeige bereit für Programmstart. $ALARM_STOP: Ist immer 1, wenn kein NOT-HALT auf der Anlage oder auf dem smartPad gedrückt wurde. $USER_SAF: Ist aktiv, wenn der Schutzkreis geschlossen uns gesperrt ist. $USER_SAF muss immer 1 sein, um das Programm starten zu können. Daher ist der externe Automatikbetrieb NUR mit geschlossenem und quittierten Schutzkreis möglich. $I_O_ACTCONF: Automatik Extern Schnittstelle aktiv $APPL_RUN: Aktiv, wenn ein Programm abgearbeitet wird. PGNO_REQ: Aktiv, wenn die Programmnummer erwartet wird. Sind alle Variablen entsprechend der Bedienungsanleitung in das SPS Programm eingebunden, so ist der Automatik Extern Eingang fertig konfiguriert. Zusätzliches zur Übung 4 Da es sich beim Roboter um einen PROFINET-Teilnehmer mit PROFIsafe Integration handelt, muss die Kommunikation zwischen der F-CPU und dem Roboter erst aufgebaut werden. Bis zum Aufbau der Kommunikation passiviert die F-CPU das betreffende Sicherheitsmodul (Roboter), sodass sich dieser nicht mehr bedienen lässt. Um die Kommunikation zwischen dem Roboter und der F-CPU herstellen zu können, muss eine zusätzliche Anwenderquittierung erfolgen. Dies erfolgt mit dem Button „DEPASSIVIERUNG“ auf den Touch Panels. Nach erfolgreicher Quittierung wird die Kommunikation aufbaut, der Roboter depassiviert und die Bedienung des Roboters wird freigegeben. In der Übung 4 soll der Roboter der SPS mitteilen, wenn er die Ziellinie überquert. Dafür wird folgender Eingang der SPS benutzt. Die Verknüpfung mit Work Visual wurde bereits vorgenommen. Sobald diese Variable gesetzt wird, erscheint auf den Touch Panels ein Pop-up Fenster. Die Programmierung an der SPS ist dafür bereits vorhanden. In der Übung muss daher lediglich der AUSGANG des Roboters kurz gesetzt werden, damit der Eingang der SPS das Signal kurzzeitig bekommt und das Pop-up Fenster aufruft.