Configuring a Smart Sensor in SBO.

Issue

Configuring a Smart Sensor in SBO.

Product Line

SmartStruxure Solution

Environment

StruxureWare Building Operations

b3xxx Controller's

Smart Sensor (LCD or LED)

Cause

Unsure how to program for a Smart Sensor in SBO.

Resolution

Some considerations to be aware of first;

 

1. Object naming differences.

The programming of the smart sensor is very similar to the old Plain English programming used in Continuum, one of the main differences is that you will need to define each input specifically at the start of the program.

Also, depending on what version of SBO you are using there may be some other considerations with setting up/reading the LcdDisplay array by renaming of the BACnet AnalogValue's to remove the "_AV" from the BACnet name. This naming issue affects SBO v1.4. See this thread on the Community website for further details.

 

2. Specific variables for Smart Sensor to be used in Plain English programming.

Here is an old manual for the Smart Sensor that will help to explain what objects need to be created and how they work in the controller to enable the LCD display. You will need to create the LCDDisplay and SpaceTempSP as numerics and any other objects that are not already created as InfinitySystemVariables. See "Configuration and Programming" section in the manual starting on page 14.

Also note that the sensor will not light up until you start to write values to it.

 

3. Sample Plain English code.

LCDDisplay (or LEDDisplay) is not automatically created. You will need to create this numeric yourself and assign it as an array with 8-elements. If you have an LCD SMart Sensor then you will need to create a numeric and name it "LCDDisplay", then set it's logsize to 7 (this configures it as an array with 8 elements from 0 to 7). If you have an LED Smart Sensor then you will need create a numeric called "LEDDisplay" instead.

After creating this numeric you should then be able to create the PE Program successfully. The simple program below will show the current spacetemp (LcdDisplay[1]) in two decimal place format (LcdDisplay[2]) when the Display key (LcdDisplay[0]) is pressed. The degrees symbol (LcdDisplay[7]) is also shown. Consult the Smart Sensor Installation and User Guide starting page 16 for more details on how these values are configured.


Numeric Input SpaceTemp
Numeric Output LcdDisplay

Initialise:
LcdDisplay[2] = 0
If LcdDisplay[0] = 4 then Goto ShowTemperature

ShowTemperature:
LcdDisplay[1] = SpaceTemp
LcdDisplay[2] = 12
LcdDisplay[7] = 1024
If TS > 30 then Goto Initialise
 

In SBO, do the following under the Application section of your b3 controller:

  1. You need to create a BACnet Analog Value object in the b3 called "LCDDisplay".
  2. Go to the Advanced tab and under the Log Settings section change Log Records to be 7.
  3. Save the changes.
  4. Create the program and add the above PE Script.
  5. Add your binds to the LCDDisplay object created in step 1, the RoomTemp input, and any other objects you are using in your program.