Herunterladen Inhalt Inhalt Diese Seite drucken

Werbung

Technische Information
SICK
LECTOR6xx AOI
SICK_LECTOR_EIP Add-On Instruction für
Rockwell / Allen Bradley Logix5000 Steuerungen
Bausteinversion V1.X

Werbung

Inhaltsverzeichnis
loading

Inhaltszusammenfassung für SICK LECTOR6 AOI Serie

  • Seite 1 Technische Information SICK LECTOR6xx AOI Bausteinversion V1.X SICK_LECTOR_EIP Add-On Instruction für Rockwell / Allen Bradley Logix5000 Steuerungen...
  • Seite 2: Inhaltsverzeichnis

    SICK_LECTOR_EIP Technische Information Versionshistorie Version Datum Beschreibung V1.0 17.12.2012 Initiale Version V1.1 07.11.2013 Fix arithmetischer Fehler alle 32768 eingehende Leseergebnisse V1.2 17.08.2015 Fix CCOM Eigenschaften (Visible und Request Einstellungen). Beispielprogram angepasst. Die AOI ist nun unter RSLogix5000 V16 oder höher einsetzbar. V1.3 27.11.2015 Update CCOM AOI (arithmetischer Fehler alle 128 ausgehenden...
  • Seite 3: Zu Diesem Dokument

    SICK_LECTOR_EIP Technische Information 1 Zu diesem Dokument Bitte lesen Sie dieses Kapitel sorgfältig, bevor Sie mit dieser Anleitung und der SICK_LECTOR_DATA_EIP AOI arbeiten. 1.1 Funktion dieses Dokuments Diese Anleitung beschreibt den Umgang mit der SICK_LECTOR_EIP Add-On Instruction. Sie leitet das technische Personal des Maschinenherstellers bzw. Maschinenbetreibers zur Projektierung und Inbetriebnahme des Funktionsbausteins an.
  • Seite 4: Allgemeines

    2 Allgemeines Die Add-On Instruction (AOI) wird zur Kommunikation zwischen einer Rockwell Steuerung und einem SICK Lector 6xx 2D-Code Reader verwendet. Das Gerät muss hierfür in das EtherNet/IP Umfeld der Steuerung eingebunden werden. Die Kommunikation erfolgt über die zyklischen Prozessdaten (implizite Kommunikation).
  • Seite 5: Einbinden Der Aoi In Rslogix5000

    SICK_LECTOR_EIP Technische Information 3 Einbinden der AOI in RSLogix5000 Die AOI kann mit allen Rockwell Steuerungen verwendet werden, die mit RSLogix5000 V16 oder höher programmiert werden können. Die Implementierung des SICK_LECTOR_EIP Bausteins wird über eine Add-On Instruction (AOI) gehandhabt. Die AOI beinhaltet eine Programmroutine, die an einer beliebigen Stelle im Anwenderprogramm zyklisch aufgerufen werden muss.
  • Seite 6: Hardwarekonfiguration

    SICK_LECTOR_EIP Technische Information lus übertragen werden können. Die AOI unterstützt Prozessdatenlängen von bis zu 500 Bytes. Ist der Telegraminhalt länger als die Länge der Prozessdaten, wird das Telegram fragmentiert übertragen. 3.2 Hardwarekonfiguration Um mit RSLogix5000 auf die Input- / Output- Assemblies des Lectors zugreifen zu können, muss dieser zunächst projektiert werden.
  • Seite 7 SICK_LECTOR_EIP Technische Information Abbildung 4: Auswahl des Generic Modules in RSLogix5000 Stand: 27.11.2015...
  • Seite 8 SICK_LECTOR_EIP Technische Information Geben Sie im Dialog New Module die Einstellungen für Input, Output, sowie Configuration ein. Abbildung 5: Assembly Einstellungen des SICK Lectors Beispiel: Name: SICK_LECTOR (Name ist frei wählbar) Data – SINT Comm Format: IP Address: 192.168.10.11 (IP-Adresse des SICK Lectors)
  • Seite 9: Aoi Import

    SICK_LECTOR_EIP Technische Information 3.3 AOI Import Um die SICK_LECTOR_EIP AOI im Anwenderprogramm zu verwenden, muss diese zu-   Add-On Instruction… in ein bestehendes Projekt nächst über File Import Component importiert werden. Abbildung 8: Import der SICK_LECTOR_EIP Add-On Instruction Stand: 27.11.2015...
  • Seite 10: Bausteinbeschreibung

    SICK_LECTOR_EIP Technische Information 4 Bausteinbeschreibung Die Add-On Instruction (AOI) ist eine asynchron arbeitende Routine, d.h. die Bearbeitung erstreckt sich über mehrere Aufrufe. Dies setzt voraus, dass die Routine zyklisch im Anwen- derprogramm aufgerufen wird. Der Baustein kapselt die AOI „SICK_CCOM_EIP“, die die Kommunikation zwischen SPS und Sensor abarbeitet.
  • Seite 11: Arbeitsweise

    SICK_LECTOR_EIP Technische Information 4.2 Arbeitsweise Um die SICK_LECTOR_EIP Routine einsetzen zu können, müssen zunächst die folgenden Bausteinparameter beschaltet werden: arrInputAssembly: Verweiß auf das Input Assembly Array, welches automatisch bei der Ge- räteprojektierung in den Controller Tags angelegt wird. arrOutputAssembly: Verweiß auf das Output Assembly Array, welches automatisch bei der Geräteprojektierung in den Controller Tags angelegt wird.
  • Seite 12: Timing

    SICK_LECTOR_EIP Technische Information 4.4 Timing 1: Anforderung durch Pos Flanke an bRequest Die gewünschte Aktion (hier bTriggerOn) muss vorher/zeitgleich ausgewählt werden. Es darf nur eine Aktion zeitgleich ausgewählt werden, sonst wird mit bError = TRUE abgebrochen. 2: Wenn alle Kommandos gesendet sind und alle Antworten empfangen wurden, wird die Aktion mit bReqDone = TRUE beendet.
  • Seite 13: Werteübergabe

    SICK_LECTOR_EIP Technische Information 4.5 Werteübergabe Die mitgelieferte UDT „SICK_Lector_Data“ beinhaltet Ein- und Ausgabeparameter aller un- terstützten Bausteinaktionen. Die Datenstruktur ist fest vordefiniert und darf, bis auf den letz- ten Eintrag (ReadingResult.sResult), nicht geändert werden (siehe Kapitel 4.7: Empfangen von Leseergebnissen > 200 Byte. Abbildung 9: Datenstruktur des SICK_Lector_Data UDTs Stand: 27.11.2015...
  • Seite 14: Matchcode

    SICK_LECTOR_EIP Technische Information 4.5.1 Matchcode Mit Hilfe der Matchcode Aktion hat man die Möglichkeit eine Evaluationsbedingung neu zu erstellen, oder eine bereits existierende abzuändern. Bevor die Matchcode Aktion ausgeführt werden kann, müssen in der Struktur Matchcode die folgenden Parameter angegeben wer- den.
  • Seite 15: Free Command

    SICK_LECTOR_EIP Technische Information 4.5.2 Free Command Mit Hilfe des freien Kommandos hat man die Möglichkeit über ein gültiges CoLa Kommando mit dem Gerät zu kommunizieren. Hierfür ist es erforderlich, das Kommando in den Parame- ter sCommand der Struktur FreeCommand zu hinterlegen. Die Kommandos können der Ge- rätebeschreibung oder SOPAS-ET entnommen werden.
  • Seite 16: Triggereinstellungen

    SICK_LECTOR_EIP Technische Information 4.6 Triggereinstellungen Sobald der Lector angetriggert wird, wird ein benutzerdefiniertes Telegram vom Gerät ge- sendet wird. Dieses Telegram kann im Ausgabeformat unter SOPAS-ET frei konfiguriert werden. Abbildung 10: Beispielkonfiguration des Ausgabeformats in SOPAS-ET Der Lector kann auf verschiedene Arten getriggert werden. Softwaretrigger über die AOI (bTriggerOn / bTriggerOff) Feldbustrigger über die AOI (arrControl) Hardwaretrigger über den Sensor1 Eingang des Lectors...
  • Seite 17: Feldbus Trigger

    SICK_LECTOR_EIP Technische Information Abbildung 11: SOPAS Trigger Einstellungen 4.6.2 Feldbus Trigger Um das Gerät direkt über den Feldbus zu triggern, muss die Triggerquelle in SOPAS-ET auf „Fieldbus“ eingestellt werden. Anschließend kann der Lector getriggert werden, indem das erste Bit im arrControl Array (arrControl[0].0) gesetzt wird. Start, wenn arrControl[0].0 = TRUE Stop, wenn arrControl[0].0 = FALSE.
  • Seite 18: Parameter

    SICK_LECTOR_EIP Technische Information 5 Parameter Parameter Deklara- Datentyp Beschreibung tion arrInput IN/OUT SINT[1] Verweiß auf das Input Assembly Array, welches au- Assembly tomatisch bei der Geräteprojektierung in den Control- ler Tags angelegt wird. Beispiel: arrInputAssembly:= myLector:I.Data arrOutput IN/OUT SINT[1] Verweiß auf das Output Assembly Array, welches Assembly automatisch bei der Geräteprojektierung in den Con- troller Tags angelegt wird.
  • Seite 19 SICK_LECTOR_EIP Technische Information Parameter Deklara- Datentyp Beschreibung tion bMatchcode INPUT BOOL Bausteinaktion: Erstellen einer Matchcode Bedingung. Die Aktion setzt voraus, dass in der Struktur (Match- code) die im Kapitel 4.5.1 beschriebenen Parameter angegebenen werden. bComTest INPUT BOOL Bausteinaktion: Ausführen eines Kommunikations- tests.
  • Seite 20: Fehlercodes

    SICK_LECTOR_EIP Technische Information 6 Fehlercodes Der Parameter iErrorcode enthält die folgenden Fehlerinformationen: Fehlercode Kurzbeschreibung Beschreibung 16#0000_0000 Kein Fehler Kein Fehler 16#0000_0001 Timeout Fehler Auftrag konnte innerhalb der gewählten Timeoutzeit nicht ausgeführt werden Dies könnte folgende Ursachen haben: - Gerät ist nicht mit der SPS Verbunden - CAN-Bus Teilnehmer nicht vorhanden - Bearbeitungszeit des Kommandos >...
  • Seite 21 SICK_LECTOR_EIP Technische Information Fehlercode Kurzbeschreibung Beschreibung 16#0000_0010 9 < Match- Ungültige Matchode Nummer. code.iMatchNumber < 1 Gültiger Wertebereich: [1..9] 16#0000_0011 999 < Matchcode. Ungültige Min/Max Länge des Matchcode. iLength < 0 Gültiger Wertebereich: [0..999] 16#XXXX_0012 Matchcode / Save Per- Die gewählte Aktion wurde nicht ausgeführt. Das Gerät wurde wieder in den „RUN-Mode“...
  • Seite 22: Beispiel

    SICK_LECTOR_EIP Technische Information 7 Beispiel Abbildung 13 zeigt eine Beispielbeschaltung der SICK_LECTOR_EIP AOI. Da sich das Ge- rät nicht in einem CAN-Netzwerk befindet, wird als CAN-ID eine null eingetragen. Die Input Assembly und die Output Assembly des Geräts werden direkt mit der Routine verknüpft. Programmaufruf: Abbildung 13: Beispielbeschaltung der SICK_LECTOR_EIP AOI Stand: 27.11.2015...
  • Seite 23: Feldbus Trigger

    SICK_LECTOR_EIP Technische Information 7.1 Feldbus Trigger Der Lector kann direkt über das Bit (arrControl[0].0) im Control-Array getriggert werden. Der Baustein empfängt alle Leseergebnisse, unabhängig der gewählten Triggerquelle (Feldbus, Kommando, Sensor1 etc.). Abbildung 14: Triggereinstellung des Lectors in SOPAS-ET Der Ausgangsparameter bRdDone zeigt für einen SPS Zyklus an, dass neue Daten empfan- gen wurden.
  • Seite 24: Matchcode Ändern/Anlegen

    SICK_LECTOR_EIP Technische Information 7.2 Matchcode ändern/anlegen Um eine neue Matchcode Evaluationsbedingung anzulegen bzw. eine existierende zu än- dern müssen zunächst die erforderlichen Parameterwerte in der übergebenden Datenstruk- tur (stData) angegeben werden. iMatchNumber: Matchcode Nummer (hier: Match5) Code Typ (“*“= Alle Code Typen) iCodeType: iLength Min / Max Länge des Matchcodes (hier: 20 Zeichen)
  • Seite 25 SICK_LECTOR_EIP Technische Information Die Matchcodeaktion ist abgeschlossen sobald das Bit bReqDone = TRUE signalisiert. In diesem Beispiel wird auf das Gerät die folgende Evaluationsbedingung angelegt. Abbildung 18: Angelegte Evaluationsbedingung Stand: 27.11.2015...

Inhaltsverzeichnis