Issue
Some of the Continuum attributes in b3/i2 objects are not listed for binding in Script, one such example is the ElecValue of an input object, in Continuum, the difference between the Value attribute and ElecValue attribute is the former is the software value while the latter is the actual value read from the sensor.
Product Line
EcoStruxure Building Operation
Environment
Building Operation Automation Server
Cause
For reasons that are beyond the scope of this article, not all Continuum properties have been included for binding in Script
For example, the list of bindable properties for a b3 Analog Input is missing the ElecValue property as can be seen below
Resolution
In a b3 Script or Infinet Script Program, there is a way to access any property (attribute as they are known in Continuum) of an object by simply referencing the property's name right after a binding variable to the object's value
Consider the situation that can be seen in the screen capture below...
Due to some strange failure the software contains an incorrect value for the input, but accessing the input's electrical value from a b3 Script program reveals the sensor is reading the room temperature correctly.
Below, screen capture of how this is accomplished in b3/i2 Script program
NOTES
- "theInput" is bound to the value of the "RoomTemperature" input.
- "theInElecValue" is bound for output to an AnalogValue in the b3 where the program will place the electrical value of the input
- We access the property by adding its Continuum attribute name right after the variable bound to the input's value, you will need to know the exact Continuum name of an object's attribute in order to access it this way.
This works for any attribute that is accessible by Plain English in Continuum including the PriorityArray of b3 commandable objects.