PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11

Diese Beschreibung gilt für das PROFINET DEVICE EL6631-0010.

1. Einbindung der EL6631-0010 im EtherCAT-Netzwerk

Fügen Sie die EL6631-0010 in Ihr TwinCAT-Projekt ein.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 1:
Einbinden der EL6631-0010 im TwinCAT-Projekt

2. Einbindung des PROFINET-Protokoll

Zunächst muss ein PROFINET-Gerät angefügt werden - EL6631-0010.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 2:
Dialog „Insert Device“

Diese Schnittstelle muss einer Adapterklasse zugewiesen werden. Diese stellt sich aus der MAC- und IP-Adresse der Netzwerkkarte zusammen. Suchen Sie über "Search" die entsprechende EtherCAT-Klemme aus, sollte nur eine Klemme im System enthalten sein wird diese automatisch konfiguriert.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 3:
Karteireiter „Adapter“

MAC Adress:
MAC-Adresse der Ethernet-Karte (nur lesend)

IP Address
:
IP-Adresse der Karte (nur lesend). Die IP-Adresse wird aus dem Betriebssystem gelesen und hat nichts mit der PROFINET IP-Adresse zu tun, die später verwendet wird.

Promiscuous Mode
:
Wird bei der EL6631-0010 nicht unterstützt

Virtual Device Names
:
Wird bei der EL6631-0010 nicht unterstützt

Shared Adapter Interface
:
Wird bei der EL6631-0010 nicht unterstützt

Free Cycle
:
Zykluszeit im Config Mode (keine Echtzeit). Wird TwinCAT im FREERUN Mode betrieben, so ist darauf zu achten, dass der eingestellte Freerun-Zyklus nicht größer als die PROFINET-Zykluszeit ist!

 

Soll z. B. ein CX9000 parametriert werden, so muss zuerst via Remote-Zugriff auf das Zielsystem gegangen werden, anschließend kann der entsprechende Ethernet Port gewählt werden.

Unter dem Reiter "Protocol" ist die verwendete NetID zu finden. Sie wird z. B. für einen ADS-Zugriff benötigt. Außerdem besteht in dem Reiter "Sync Task" die Möglichkeit, eine freilaufende Task für die PROFINET-Kommunikation anzuhängen (wird empfohlen). Somit kann die RealTime- Kommunikation unabhängig einer PLC Task laufen. Aus Performance-Gründen (z. B. bei einem CX9000) kann aber auch auf die SyncTasks verzichtet werden und es erfolgt das Standard Mapping, d.h. es muss z. B. eine PLC Task laufen, damit eine PROFINET-Kommunikation möglich ist.

Anschließend wird über die rechte Maustaste ein PROFINET-Protokoll angefügt. Es kann genau ein TwinCAT-Device-Protokoll angehängt werden!

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 4:
Einfügen PROFINET Device Protokoll

Als nächstes wird eine Box in Form einer GSDML eingebunden (rechte Maustaste auf "PROFINET Device").

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 5:
Dialog „Insert Box“

Wählen Sie nun aus nach welcher Version Ihre EL6631-0010 eingebunden werden soll. Der Hauptunterschied zwischen V2.0 und V2.2 ist die Unterstützung von Sub-Modulen.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 6:
Auswahl EL6631-0010 mit oder ohne Portdiagnose

In der ersten EL6631-0010 (nach V2.2) erkennt man im DAP die Ports und damit die Portdiagnose. Die nachfolgende EL6631-0010 ist nach der V2.0 eingebunden worden. Hier ist keine Port-Diagnose möglich. Im Master muss die gleiche Version verwendet werden. Ältere PROFINET-Controller können die Version 2.2 noch nicht unterstützen, verwenden Sie dann die Version 2.0.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 7:
Mehrere PROFINET Devices im TwinCAT-Baum

Virtuelles PROFINET Device

In TwinCAT ist es auch möglich, mehrere virtuelle PROFINET Devices zu konfigurieren (maximal 7 im PROFINET Device Supplement und ein zusätzliches Device in der EL6631-0010). Jedes Device ist wieder als eigener Adapter zu sehen, d.h. jedes virtuelle Gerät bekommt aus einem reservierten Bereich eine Default MAC-Adresse zu gewiesen. Damit es nicht zu eventuellen Adresskonflikten kommt, kann bei den virtuellen Geräten auch die MAC-Adresse geändert werden. Der Name den das Gerät am Strang bekommen hat (oder unter Reiter "Allgemein") wird nach einem Restart auch als PROFINET-Stationsname genommen. Anhand unterschiedlicher MAC-Adressen und Namen erkennt nun ein PROFINET Controller auch mehrere Geräte am Strang.

Somit ist es möglich beim PROFINET Device Supplement pro Ethernet Interface 8 Devices zu benutzen und damit mit 8 verschiedenen PROFINET Controllern zu kommunizieren. Bei der EL6631-0010 sind es 2 Devices.

Bei PROFINET können innerhalb eines Gerätes verschiedene Anwenderprofile definiert werden (API - Application Process Instance). In TwinCAT wird pro Gerät genau eine API zugelassen / unterstützt.

Der DAP (Device Access Point) ist nach PROFINET immer auf Slot 0 definiert. In ihm sind gerätespezifische Daten definiert. Nach PROFINET können mehrere DAPs definiert werden, aktuell gibt es in TwinCAT jedoch genau einen!

3. Prozessdaten

Ab Slot 1 können die Prozessdaten eingefügt werden. Dies erfolgt über das Einbinden der gewünschten Module in die API. Jedes Modul (Slot) verfügt im Moment über genau ein Submodul (Subslot). Die Konfiguration der Module und somit das Erstellen des Prozessdatenabbilds auf PROFINET-Seite erfolgt durch die Angabe von Datentypen / Datenbreiten (z. B. Byte, Word, DWord, Float32).

Die Bezeichnung der Ein- und Ausgänge erfolgt in TwinCAT immer aus TwinCAT-Sicht, d.h. die Eingänge sind aus PROFINET-Sicht (vom Controller) die Ausgänge! Deshalb sind die Daten des PROFINET I/O Devices wie folgt dargestellt:

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 8:
Darstellung Ein-/ Ausgänge PROFINET I/O Device

Diese Darstellung gilt nur für das TwinCAT-PROFINET-Device, bei einem TwinCAT-PROFINET-Controller wird die Sichtweise wieder übereinstimmen!

4. Allgemeine Einstellungen

Im Karteireiter "PROFINET Devices" kann die FrameID geändert werden. Für den Normalbetrieb sind die Default Einstellungen jedoch ausreichend!

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 9:
Karteireiter „Device“

4.1 PROFINET Namen Vergabe

Bei Auslieferung der EL6631-0010 hat diese keinen PROFINET-Namen. Es wird beim Suchen der Geräte ein Leerstring übergeben.

Es gibt mehrere Möglichkeiten den Namen einer EL6631-0010 zu vergeben:

  1. Vergabe über den PROFINET Controller
  2. Vergabe über den EtherCAT Master (dann ist eine Vergabe über den Controller nicht mehr möglich)
  3. Vergabe über eine Verknüpfung zum SPS-Programm (dann ist eine Vergabe über den Controller nicht mehr möglich)
  4. Automatischer Geräteanlauf über Topologievorgabe wird unterstützt
    Weitere Informationen entnehmen Sie Ihrem PROFINET Controller

4.1.1 Vergabe über den PROFINET Controller

Hierbei vergibt der PROFINET Controller den Namen des Gerätes. Informieren Sie sich hierfür bei dem PROFINET Controller Hersteller.

4.1.2 Vergabe über den EtherCAT Master

Aktivieren Sie hierfür den Haken "get PN-Stationname from ECAT".

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 10:
Karteireiter „EL663x“

Es wird dann der Name verwendet, der im System-Manager-Baum verwendet wird. Hier zum Beispiel "el6631-test-name".

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 11:
TwinCAT-Baum: PROFINET-Stationsname vergeben

4.1.3 Vergabe über eine Verknüpfung zum SPS Programm

Diese ist vergleichbar mit den Dip-Schaltern beim BK9103 und kann über eine PLC Task erfolgen. Zur Aktivierung muss "Generate Station Name from Control" aktiviert werden. Zur Verdeutlichung wird an den bisherigen Tree-Namen (Default: "tcpniodevice") eine 000 angehängt.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 12:
Treename im TwinCAT-Baum
PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 13:

Tree-Name

Dieser Tree-Name entspricht nicht mehr dem PROFINET-Stationsnamen! Zur Namensvergabe wird das Ctrl WORD des PROFINET-Protokolls zu Hilfe genommen, d.h. die eingegebene Zahl (Wertebereich 0 - 255) wird an den bisherigen Stationsnamen angehängt. Außerdem muss das Ctrl WORD mit einer Task verknüpft werden. Anschließend ist ein Neustart von TwinCAT erforderlich. Wird nun z. B. dem verknüpftem Ctrl WORD von der Task aus ein Wert von 11 vorgegeben, so ändert sich sein bisheriger Stationsname von z. B. auf "tcpniodevice" auf  "tcpniodevice011". Der aktuelle Tree-Name ist weiterhin "tcpniodevice000"

Eine Überprüfung des aktuellen Stationsnamen sowie der benutzten IP-Konfigration kann über den Karteireiter "PROFINET Diagnosis" erfolgen.

4.2 Diagnose

Im Karteireiter Diagnose wird der tatsächliche PROFINET-Name angezeigt. Die IP-Konfiguration wird mit dem Hochlauf des Masters festgelegt und besitzt die Werte, die vom Master vergeben worden sind. Im Feld "Module Difference" wird angezeigt, wenn die Soll-Konfiguration ungleich der Ist-Konfiguration ist. Im fehlerfreien Zustand sollte das Feld leer sein.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 14:
Karteireiter „Diagnose“

5. Zykluszeiten

Das Device kann in der durch PROFINET definierten minimalen Zykluszeit von 1 ms betrieben werden!

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 15:
Karteireiter „Adapter“, Einstellen Zykluszeit

Soll TwinCAT im RUN Mode betrieben werden, muss eine Task angelegt werden. Im einfachsten Fall ist dies die bereits erwähnte SyncTask. Die Aufrufzeit der Task darf nicht größer sein als die PROFINET-Zykluszeit! Wird eine zweite Task z. B. für die PLC angelegt, kann diese auch langsamer laufen.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 16:
Einfügen einer Task

Bei weniger leistungsstarken Geräten (z. B. CX1000, CX9000 mit E-Bus) kann es passieren, dass die CPU Last an ihre Grenzen gerät. Die Performance kann jedoch durch folgende Überlegungen/Maßnahmen wieder verbessert werden:

6. PDO Mapping

Das PDO Mapping beschreibt wie die PROFINET-Daten im EtherCAT abgebildet werden sollen. Beim Einsatz von TwinCAT ist die Einstellung "Submodule data" zu verwenden.

PROFINET-Device (EL6631-0010) Einbindung unter TwinCAT 2.11 17:
Karteireiter „EL663x“