I/O-Automapping

TwinCAT BACnet/IP unterstützt eine automatisierte Abbildung der modularen IO-Systeme K-Bus und EtherCAT auf BACnet. Dabei wird automatisiert für jeden I/O-Kanal ein entsprechendes BACnet-Objekt der Typen BinaryInput, BinaryOutput, AnalogInput bzw. AnalogOutput angelegt, Prozessdaten entsprechend durch ein Device2Device-Mapping verknüpft und ggf. auch der Status der I/O-Systeme auf die BACnet-Property Reliability und StatusFlags übertragen.

Bei der Abbildung von I/O-Systemen werden I/O-Busse unterschieden, die jeweils eine Anzahl von I/O-Modulen zusammenfassen und jeweils einen I/O-Strang abstrahieren. Über die Zuordnung einer IoBusNr werden BACnet-I/O-Objekten einem I/O-Bus zugeordnet über den u.a. der Status abgebildet wird. Wird z.B. ein K-Bus-Strang verknüpft, kann über das Prozessdatum BusState erkannt werden, ob der K-Bus operationsbereit ist und die Property Reliability aller BACnet-Objekte mit der jeweiligen IoBusNr auf den Wert NO_FAULT_DETECTED - andernfalls auf NO_SENSOR bzw. NO_OUTPUT angepasst werden. Mit Hilfe der I/O-Busse kann mit TwinCAT BACnet/IP auch zusätzlich zu einem K-Bus z.B. ein BK9000 oder weitere EtherCAT-Stränge mit einem BACnet-Controller verknüpft werden.

Ein I/O-Bus-Automapping kann über den Reiter "Settings" eines BACnet-Servers ausgelöst werden. In dem entsprechenden Dialogfeld kann ein I/O-Bus angewählt und via Button "Map" die Verknüpfung veranlasst werden:

I/O-Automapping 1:

Derzeit werden folgende I/O-Bus-Typen unterstützt:

I/O-Automapping 2:

Generell werden bei einem I/O-Automapping vom System-Manager alle Klemmen unterhalb eines I/O-Bus analysiert und entsprechende BACnet-Objekte erstellt und Prozessdaten verknüpft. In der Abbildung ist beispielhaft dargestellt wie eine digitale Ausgangsklemme (KL2114) an einem CX9001-KBus auf BACnet abgebildet wird. Es wurde entsprechend das BACnet-Objekt "Klemme 2 (KL2114)_Chn1" vom Typ BinaryOutput erstellt und die Ausgangsprozessdatenvariable "Ausgang" mit der BACnet-Prozessdatenvariable "RawIoBinaryValue" verknüpft. Diese Verknüpfung stellt sicher, dass der Status des digitalen Ausgangssignals immer dem PresentValue des BACnet-Objekts entspricht, sofern das Objekt nicht OutOfService ist. Dabei wird auch entsprechend die Polarität des "BinaryOutputs" betrachtet. Details hierzu können im Kapitel "Prozessdaten" nachgelesen werden.

I/O-Automapping 3:

Über einen entsprechenden Dialog kann das Automapping konfiguriert und festgelegt werden, ob eine automatische Bus-Status-Überwachung erfolgen soll bzw. ob die Prozessdaten entsprechend automatisch verknüpft werden können. Zusätzlich kann der Object-ID-Vergabe-Algorithmus der erstellten BACnet-Objekte festgelegt werden. Hierbei stehen zur Auswahl:

Die weiteren Konfigurationsoptionen des I/O-Automapping werden im Folgenden erläutert:

Die automatische Abbildung von EtherCAT- und K-Bus-Teilnehmern auf BACnet-Objekte ist nicht immer möglich. U.a. bei komplexen Klemmen ist in bestimmten Fällen nicht immer klar, ob für ein Prozessdatum ein BACnet-Objekt erstellt bzw. welches BACnet-Objekt erstellt werden soll. Für eine große Menge elementarer Ein-/Ausgabe Klemmen wird die Abbildung nach folgendem Algorithmus ausgeführt:

Zusätzlich existiert eine Sonderbehandlung für folgende Klemmen:

Bei einem Automapping werden automatisch die folgenden BACnet-Properties konfiguriert: