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.

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

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.

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!

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

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.

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.

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:

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!

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:
- Vergabe über den PROFINET Controller
- Vergabe über den EtherCAT Master (dann ist eine Vergabe über den Controller nicht mehr möglich)
- Vergabe über eine Verknüpfung zum SPS-Programm (dann ist eine Vergabe über den Controller nicht mehr möglich)
- 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".

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

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.

![]() | 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.

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

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.

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:
- Kann man mit nur einer PLC Task arbeiten?
- Muss die Zykluszeit 1 ms betragen?
- Bei Verwendung von zwei Tasks, kann die Zeit der PLC Task verringert werden?
- Werden mehrere virtuelle PROFINET Devices benötigt?
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.
