# BACnet/IP Present Value schreiben, Priority Array



## HMIman (24 November 2017)

Hallo!

Ich benutze einen WAGO 750-831 BACnet-Controller und programmiere mit CoDeSys 2.3. Ich habe einige BACnet-Objekte in meinem Programm angelegt, Analog Values AVs. Ich möchte den Present Value dieser Objekte mit einem BACnet/IP-Gateway vom 831 lesen bzw. schreiben.
Lesen ist kein Problem, das funktioniert.
Beim Schreiben habe ich zunächst mit dem WAGO BACnet Configurator getestet. Im Prinzip kann ich auch schreiben, allerdings muss man beim Schreiben immer eine Prio angeben (1 = höchste Prio, bis 16). Ich habe dann auf der Steuerung gesehen, dass die Werte zunächst einmal immer erst im Priority Array [1..16] landen, je nachdem mit welcher Prio geschrieben wurde. Der Wert wird allerdings nur dann wirklich in den Present Value übernommen, wenn er der Wert mit der höchsten Prio im Array ist. Und dann gibt es da noch die boolsche Variable CHOICE!?

Kann ich auch direkt den Present Value beschreiben, oder muss ich immer das Priority Array benutzen?
Wie kann ich das Prio Array verwalten, also z. Bsp. einen Wert herausnehmen (NULLen)?
Wie ist das grundsätzlich gedacht mit dem Schreiben des Present Value in BACnet?

Vielen Dank!
HMIman


----------



## HMIman (2 Januar 2018)

Hallo!

Hat hier wirklich keiner eine Antwort? Ihr schreibt doch alle ständig was in BACnet - oder. Das kann doch für einen Spezialisten kein Problem sein!?

HMIman


----------



## GLT (2 Januar 2018)

Der PresentValue ist eine *resultierende Objekteigenschaft* (vom Objekt gebildet) - willst du ein kommandierbares Objekt beschreiben, wird das über die Priorität eingereiht u. je nachdem, ob die Priorität aktiv/passiv ist, übergeben.

Das hat den Vorteil, dass Personensicherheit, Maschinensicherheit, reguläre Zustände priorisiert verarbeitet werden - auch ein out-of-service reiht sich hier ein.
Zudem erhält man über das Objekt die Information, WARUM der Prozesswert nun entsprechend ausgegeben wird.

IdR werden Prioritäten ohne gültigen Eintrag (<Null>) nicht verarbeitet - persönlich finde ich es besser, wenn da Werte vorab hinterlegt sind u. der Eintrag nur nicht aktiviert ist.


----------



## HMIman (4 Januar 2018)

Hallo GLT,

vielen Dank für die qualifizierte Antwort! Das hilft auf jeden Fall schon mal weiter.

Was meinst Du mit "Zudem erhält man über das Objekt die Information, WARUM der Prozesswert nun entsprechend ausgegeben wird."?
Wo und wie finde ich denn diese Info?

Außerdem dachte ich, dass Einträge mit <Null> nie verarbeitet werden!? Ich dachte immer, dass das die Möglichkeit ist einen Eintrag inaktiv zu machen!?
Welche Möglichkeit gibt es denn einen Eintrag, der einem Wert hat, inaktiv zu machen?

Vielen Dank!
HMIman


----------



## cas (26 Februar 2018)

BACNet ist einfach toll !

VG CAS


kotz....


----------

