TB_ECT_Manager

Allgemeine Informationen

Dieser Baustein ermöglicht es, Einfluss auf die Anordnung der Slaves beim Aufstarten des Felbusses zu nehmen. Dabei können Slaves auch als Optional deklariert werden. Damit kann z.B. eine maximale Zahl an Slaves konfiguriert werden, diese allerdings über die Software zur Laufzeit angepasst und neu angeordnet werden. Zusätzlich gibt es weitere Einstellmöglichkeiten, welche weiter unten beschrieben sind.

Darstellung in FBD

Allgemeine Beschreibung

Dem Baustein muss die Soll-Feldbus-Konfiguration aus ProMaster übergeben werden. Das wird mit der Ein-,Ausgangsvariable _ECT_SetConfig vom Typ ECT_SETCFG_ARRAY gemacht. Hierbei wird jede Node quasi von ProMaster in der IEC abgebildet, bzw. nachgebildet. Damit ist in der IEC die Information der Felbuskonfiguration vorhanden.

Zusätzlich kann für jeden Slave die IP-Adresse, die Subnetzmaske und die Option "Optionaler Slave" gesetzt werden. Über die Variable "ui_EbusGroupNr" kann zusätzlich bei Verwendung mehrerer IO-Koppler jedem Modulblock eine eindeutige Nummer zugewiesen werden. Die Slaves werden lediglich anhand des ProductCodes zugeordnet!

Wichtig: Es erfolgt keine Anordnung der Nodes anhand der Alias-ID! Das bedeutet, dass der erste am Feldbus gefundene Slave die Zuordnung des nächsten noch nicht gefundenen Slaves der SetConfig erhält.

Da dieser Funktionsbaustein die Kontrolle über das Aufstarten des Felbusses übernemen muss, sodass die Slaves im Zustand INIT zugeordnet werden können, muss sicher gestellt sein, dass Motion Control die Kontrolle an die IEC abgigbt.

Es muss folgende Einstellung in ProMaster gesetzt werden:
(ProMaster 1.19.1.60 - Release)
Folgender Ablauf erfolgt beim Starten des Bausteins:
1. Felbus wird ggf. nach INIT geschaltet
2. Scannen der Nodes am Feldbus und Abgleich mit Konfiguration
3. Bei Bedarf werden die Nodes umsortiert
4. Setzen von EoE (Wenn eingestellt)
5. Feldbus wird nach OPERATIONAL geschaltet
6. Starten von Motion Control (wenn eingestellt)


Empfohlene Task: EVENT
Verwendete Bibliotheken: ECM_CS001_40bd06
MOTION_CONTROL_40bd10
MOTION_TYPES_40bd09
BM_TYPES_40bd04
TECH_TYPES_40bd09
MC_SYS_40bd09

Ein-/Ausgänge

Bezeichnung: Datentyp: Beschreibung:
_ECT_SetConfig ECT_SETCFG_ARRAY Mit dieser Struktur wird dem Baustein die Soll-Feldbus-Konfiguration gegeben. Dabei repräsentiert jeder Arrayindex eine Node (Index 1 = Node 1,...). Dem Baustein wird damit quasi die Feldbuskonfiguration aus ProMaster übermittelt.

Für jede Node gibt es folgende Einstellmöglichkeiten:
dw_ProductCode: Produktcode (Info aus ProMaster einsehbar)
dw_IPAdress: IP-Adresse
dw_SubNetMask: Subnetzmaske
x_Optional: Optional = TRUE
ui_EbusGroupNr: Gruppennummer des IO-Klemmenblocks
_ECT_ActConfig ECT_ACTCFG_ARRAY In dieser Struktur werden die Informationen der beim Aufstarten am Feldbus gefundenen Slaves gesammelt. Diese Struktur dient nur der Anzeige/Diagnose. Auch hier entspricht jeder Index einer Node am Feldbus.
_Base ECM_PLC_MA_BMSTRUCT DPRAM-Schnittstelle zum EtherCAT. Für PCC = %MB3.2016384

Eingänge

Bezeichnung: Datentyp: Beschreibung:
x_Execute BOOL Eine steigende Flanke startet die Ausführung des Bausteins. Dabei wird die in der Beschreibung beschriebene Prozedur durchlaufen.
_Options ECT_OPTIONS_STRCT Hier können Optionen für das Verhalten des Bausteins beim Aufstarten festgelegt werden: x_StartMotionAfter: TRUE, wenn der Baustein nach dem Feldbusaufstarten Motion Control starten soll
x_Set_EoE: EoE-Einstellungen für die Nodes setzen
x_DifferBetwBM5AndBM3: Wenn TRUE, dann wird bei einer BM5000er Achse mit dem Produktcode eines BM3300 gearbeitet.

Ausgänge

Bezeichnung: Datentyp: Beschreibung:
x_Busy BOOL Zeigt an, dass der Funktionsbaustein in Bearbeitung ist.
x_FieldbusBoot_Done BOOL TRUE, wenn der Feldbus erfolgreich aufgestartet wurde. x_Busy geht dann auf FALSE.
x_StartMCCore_Done BOOL Motion Control wurde erfolgreich gestartet.
x_Error BOOL Fehler am Baustein.
_ErrorInfo ERR_INFO_STRCT Struktur mit Fehlerdetails: _FBs_ErrList: Zeigt die zu dem internen Funktionsbaustein zugehörige Fehlernummer an. Fehlerdetails können dann in der entsprechenden Bibliothek eingesehen werden.
x_MandatorySlaveMissing: TRUE, wenn ein mandatory Slave am Feldbus fehlt
dw_MandSlaveMissProdCode: Zeigt an, welcher mandatory Slave vermisst wird
di_MandSlaveAtNodeMissing: Zeigt die Nummer der Node an, welche vermisst wird
dw_ProductCodeNotValid: Zeigt den Produktcode an, welcher nicht gültig ist, oder nicht mit der Konfiguration übereinstimmt.
x_SlaveIsMissing: TRUE, wenn ein Slave fehlt x_MoreActSlaveThanSetInCfg: TRUE, wenn mehr Slaves eines konfigurierten Produktcodes am Feldbus gefunden wurden, als ursprünglich konfiguriert.