BACnet: Strukturierte Variablen dem BACnet zur Verfügung stellen

Michael_diverse

Level-1
Beiträge
2
Reaktionspunkte
0
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo,
ich heiße Michael und bin neu hier im Forum.

Ist es möglich, die Variablen einer Struktur im BACnet "sichtbar" zu machen?

TYPE Heizkreis :
STRUCT
rVL_Temp:REAL;
rRL_Temp:REAL;
....
END_STRUCT
END_TYPE

Danke schon einmal für Eure Antworten.
 
Hi,

nicht direkt, aber eine Entsprechung wäre z.B. das Group-Object, welches lt. PICS von WAGO unterstützt wird;

ansonsten proprietary objects/properties ;-)
 
Zuviel Werbung?
-> Hier kostenlos registrieren
Hallo egal,
danke für die Antwort. Leider bin ich in diesem Bereich noch nicht so fit, als das ich die Antwort so umsetzen könnte.
Eine strukturierte Variable kommt doch sehr oft im Programm vor. Wie kann ich denn hier vorgehen?
 
Hallo Michael,
wie der User "egal" schon schrieb, funktioniert die Übergabe einer Struktur zu BACnet nicht direkt.

Du kannst aber die einzelnen Variablen deiner Struktur über BACnet-Objekte übertragen.
Zu deinem Fall möchte ich 2 Beispiele nennen:

Deklaration eines BACnet-Objektes im CODESYS-Programm:
BACnet_Heizkreis_rVL_Temp:BACNET_ANALOG_VALUE;
1.) Ein BACnet-Objekt schreibt in die Variable "rVL_Temp" der Struktur "Heizkreis":​
Heizkreis.rVL_Temp:=BACnet_Heizkreis_rVL_Temp.PresentValue;
2.) Die Variable "rVL_Temp" der Struktur "Heizkreis" schreibt auf ein BACnet-Objekt:
BACnet_Heizkreis_rVL_Temp.PresentValue:=Heizkreis.rVL_Temp;
BACnet würde bei beiden Beispielen ein BACnet_ANALOG_VALUE mit dem Namen (...)BACnet_Heizkreis_rVL_Temp anlegen ((...) steht für den Programmnamen).

Bei einem BACNET_BINARY_VALUE muss gegebenenfalls noch eine Umwandlung zwischen den Datentypen BinaryPV und Bool durchgeführt werden, dazu findet Ihr Konvertierungsfunktionen in der Bibliothek BACnet02.lib.
 
Zurück
Oben