Solutions
Location:Home|Solutions|BMS Integration

BMS Integration

Bostex Access Controller – Powered by Sedona FrameworkTM
The Bostex Access Controller – a versatile security access control appliance – has been further enhanced with the addition of a Sedona Virtual Machine (SVM) thereby providing the Bostex Access Controller with BMS control capability. Developed by Tridium Inc., Sedona Framework is a software environment designed to make it easy to build smart, networked, embedded devices. Using the SOX protocol, applications developed on either Niagara Workbench or Sedona Workbench can be downloaded to the Bostex Access Controller over an IP/Ethernet connection and then executed. The workbench tools allow the system integrator to create custom applications by connecting and configuring Sedona components on a wiresheet. The SVM resident on the Bostex Access Controller executes the wiresheet allowing the system integrator to develop distributed control strategies directly with security access control system.

System Description


Brief Introduction to Sedona Framework
For those who understand Tridium's Niagara FrameworkTM, understanding Sedona Framework would be trivial. However, the market for Sedona Framework goes beyond the traditional HVAC market that Niagara Framework serves. Sedona Framework is intended to provide a complete development environment for devices with limited resources. The Java environment of Niagara Framework requires resources well beyond the capability of small devices but much of the Niagara concepts have been transferred down to Sedona Framework thereby allowing small devices to execute sophisticated control. While the Bostex Access Controller is not a limited resource device, Sedona Framework executes nicely on this platform.
Using established Tridium tools such as Workbench, a system integrator can develop a control application using Workbench's powerful drag-and-drop visual programming methodology. Once developed, the program remains stored in the Bostex Access Controller and executes by way of the SVM. The application can run standalone in the Bostex Access Controller or interact with a program in a Tridium JACE supervisory controller over Ethernet. The number of potential applications is only limited by the imagination of the system integrator.

Sedona Component Description
Introduction by Tridium Inc., Sedona FrameworkTM is a software environment designed to make it easy to build smart, network, embedded devices which are well suited for implementing control applications. The Sedona language is a component-oriented programming language similar to Java or C#. For those familiar with Niagara Framework, understanding Sedona Framework will be easy. The system integrator's role is to create an application by assembling components on a wire sheet and connecting and configuring these components using a graphical programming toll such as Sedona Workbench. Applications can be developed live on the target device such as the Bostex Access Controller , or offline, and then saved and uploaded via an IP connection. The Sedona Virtual Machine (SVM) resident in the Bostex Access Controller  executes the application.
Components are deployed in kits. Kits are available from Tridium and Bostex. As more components are developed, revised kits will be made available. What follows are descriptions of components that will be of the most use to system integrators when developing control applications. These components are organized by the kits in which they can be found.

Sedona Workbench

In order to understand how Sedona is being used in the Bostex Access Controller, we need to define some terms commonly used with either of the two Tridium Framework products.
Sedona Workbench is PC-based graphical user interface (GUI) development tool that is used to develop Sedona applications. In Bostex' implementation it connects to the Access Controller (the target platform) over IP/Ethernet. The Sedona Framework is comprised of kits that contain components; whereas components are used to implement Sedona applications on the Bostex Access Controller.
Components have properties that can be shown on Property Sheets and can be interconnected as shown on Wire Sheets using virtual wires. The user opens up a SOX (Sedona protocol) session on Workbench to the Bostex Access Controller. Using drag-and-drop methodology, the user develops a control scheme by interconnecting components and by assigning properties to components.
The final application is stored on the Bostex Access Controller and saved on Workbench. A Sedona Virtual Machine (SVM), which permanently resides in the Bostex Access Controller, executes the Sedona code sent over by Workbench. However, as the application executes on the Bostex Access Controller, the user can observe the execution on Workbench. With Workbench disconnected, the application continues to run since the application is stored in flash memory on the Bostex Access Controller.

Palette, Kits, and Components
Sedona Framework provides a Palette of kits which total nine. One of the more interesting kits is called Control which includes a group of components similar to the components found in Niagara Framework. Although not as numerous, the Sedona control components are still very powerful. There are three types of variables that can be operated upon – floating point (float), binary (Boolean), and Integer (Int). For better understanding, the components in the control kit are shown sub-divided into functional groups.


Control Kits (control)
The Logic Group — logical operations using Boolean variables
And2               Two-input Boolean product — two-input AND gate
And4               Four-input Boolean product — four-input AND gate
B2P                 Binary to pulse — simple mono-stable oscillator (single-shot)
BSW                Boolean switch — selection between two Boolean variables
ConstBool       Boolean constant — a predefined Boolean value
OneShot         Retriggerable single shot — adjustable mono-stable oscillator
Or2                 Two-input Boolean sum — two-input OR gate
Or4                 Four-input Boolean sum — four-input OR gate
Not                  Boolean complement — inverter
SRLatch         Set-reset latch — SR bi-stable oscillator (flip-flop)
Xor                  Exclusive OR — two-input exclusive OR gate


The Counter/Timer Group — extended Boolean logic
DlyOff              Off delay timer — time delay from an “on” to “off” transition
DlyOn              On delay timer — time delay from an “off” to “on” transition
TickTock         Ticking clock — an astable oscillator used as a time base (multi-vibrator)
UpDn               up-down counter — bi-directional, resettable counter


The Control Group — operations that facilitate control
ASW                Analog switch — selection between two float variables
Freq                Pulse frequency — calculates the input pulse frequency
LP                   PID loop — proportional, integral, and derivative controller
Ramp              Ramping function — controlled ramping of a float variable
Reset              Rescale variable range — rescales output range of a float variable
Tstat               Thermostat — on/off temperature controller


The Math Group — operations on Float, Integer and Boolean variables
Add2                Two-input addition — results in the addition of two float variables
Add4                Four-input addition — results in the addition of four fl oat variables
Avg10              Average of 10 — sums the last ten float variables while dividing by ten
B2F                 Binary to fl oat encoder — 16-bit binary to float conversion
Cmpr               Comparison math — comparison (<=>) of two float variables
ConstFloat       Float constant — a predefined fl oat variable
ConstInt           Integer constant — a predefined integer variable
Div2                 Divide two — results in the division of two float variables
F2B                  Float to binary decoder — float to 16-bit binary conversion
F2I                    Float to integer — fl oat to integer conversion
I2F                    Integer to fl oat — integer to fl oat conversion
Lseq                 Linear sequence — stepped binary response to an increasing fl oat input
Mul2                 Multiple two — results in the multiplication of two float variables
Mul4                 Multiple four — results in the multiplication of four float variables
Neg                  Negate variable — reverses the sign of a float variable
Sub2                Two-input subtraction — results in the subtraction of two float variables
Sub4                Four-input subtraction — results in the subtraction of four fl oat variables


Bostex has provided a Access Controller kit with the necessary components that will link Sedona components to the access control operation or physical I/O points.

Door Access Kits
Since the basic operation of Bostex Access Controller is door access control, Bostex has provided a Door Access kit with the necessary components that will link Sedona components to the access control operation. Due to some different in the Access Controller model (single door, single door with video, 2 doors, 4 doors, 8 doors), the door access kit will have to design with different function and differentiate by names (e.g. bostex100-single door, bostex100V-single door with video, bostex200-2 doors, bostex400-4 doors, bostex800-8 doors). The door access kit contains 2 main functional groups to be used for integration:    

DrPoint — door control and status monitoring of a  logical door operation

In this function, up to 24 parameters are defined.
Fault:                       Not Applicable (default is false)
Status:                     Not Applicable (default is 0)
Address:                  0 (refer to the controller itself)
                                 1-8 (refer to door number to be monitor and control)  
Event Count:           Indicate the number of event generated
Event:                       Event detail information (Time, Date, Card ID, Event Description, Event Code, Reader ID)
                                 (e.g. 15:54:17, 2010-11-03, 0000001234, Door Left Open Alarm  , 022, Reader 0)
Monitor Status:      Open (Door open/close), 
                                 Always Lock (Door in secure mode, not access to all valid access card), 
                                 Always Unlock (Door is free to access without valid access card), Armed (Door in arm/disarm mode), 
                                 Alarm (Door dedicated alarm input alarm/normal), Force Open (Door is force open without valid access),
                                 Open Too Long (Door is open too long after a valid access), 
                                 Tamper (Door controller/reader is being tampered), Duress (Valid user is being  forced to open door), 
                                 Power Fail (Door controller has no supply from main source),
                                 Battery Low (Door controller backup supply battery low), 
                                 Time Unlock (Door is automatically unlock by schedule),   Comm Fail (Door controller communication fail),
                                 APB Enable (Door anti-passback operation is enable/disable)
Remote Control:   Remote Release (Door is unlock for a predefine duration, 3-5 seconds), 
                                 Remote Lock (Door is set to secure mode), Remote Unlock (Door is set to free access), 
                                 Remote Arm (Door is set to arm mode), Remote APB En (Door anti-passback operation is enable)  

MiscCtl — miscellaneous control on the access controller I/O and interface

Fault:                       Not Applicable (default is false)
Status:                     Not Applicable (default is 0)
Address:                  Not Applicable (default is 0)
Take Photo:             Activate the controller with build-in camera to take a snap shot
Photo Index:            The photo index reference to the last “Take Photo” operation
                                (e.g. if the photo index is 991, just post 
http://”Access Controller IP”/cgi-bin/getphoto?PHOTO=991  to retrieve photo from the access controller)
IR On:                      Turn on Infrared LED of the controller with build-in camera.
LCD Lit On:             Turn on LCD back light.
Buz On:                    Turn on controller onboard buzzer.
TTL OP:                   Turn on controller onboard TTL output.
LCD Msg1 En:         Enable the LCD line 1 message display from “LCD Msg1' 
LCD Msg2 En:         Enable the LCD line 2 message display from “LCD Msg2' 
LCD Msg3 En:         Enable the LCD line 3 message display from “LCD Msg3' 
LCD Msg4 En:         Enable the LCD line 4 message display from “LCD Msg4' 
LCD Msg1:               LCD line 1 display message
LCD Msg2:               LCD line 2 display message
LCD Msg3:               LCD line 3 display message
LCD Msg4:               LCD line 4 display message
Key Index:                Number of time “Key Data” received
Key Data:                 Contain keypad entry + #. 
                                  Example: 
                                “5-1234F” refer to 5 key 1,2,3,4 and # entered, 

Access Controller User Interface Kits (bostexKitUI)
The Bostex Access Controlle’s LCD Keypad can be served as a user interface for Sedona Framework, i.e. user able to observe and modify the parameters using the LCD Keypad same as what is display from the Niagara Workbench. Due to the resource limitation, up to 5 pages (3 lines per page) can be separately display and modify.
To simplify the creation of parameters for display and modification, all the display and edit pages has been pre-created in UI folder. The user interface kits is using folder name Disp_1 to Disp_5 to indicate which page to display and Edit_1 to Edit_5 to indicate which page to modify; the function name Line_1 to Line_3 to identify which line (up to 3 line per page) on the page.  These naming convention have to be strictly complied.


dBool — Display Boolean value on the LCD
In this function, up to 3 parameters are defined.
Desc:           Description of the boolean parameter to be displayed on the LCD 
On Text:       Input text message to be shown on LCD when the In boolean value is true
Off Text:       Input text message to be shown on LCD when the In boolean value is false   


dFloat — Display Floating Point value on the LCD
In this function, up to 3 parameters are defined.
Desc:           Description of the floating point parameter to be displayed on the LCD 
Dp:               Number of decimal point value to be shown on LCD
Unit:             Reserved 


dInt — Display Integer value on the LCD
In this function, only 1 parameter is defined.
Desc:           Description of the integer parameter to be displayed on the LCD 


eBool — Boolean value to be edited via LCD and keypad
In this function, up to 3 parameters are defined.
Desc:           Description of the boolean parameter to be displayed on the LCD 
On Text:       Input text message to be shown on LCD when the In boolean value is true
Off Text:       Input text message to be shown on LCD when the In boolean value is false   


eFloat — Floating Point value to be edited via LCD and keypad 
In this function, up to 3 parameters are defined.
Desc:          Description of the floating point parameter to be displayed on the LCD 
Dp:              Number of decimal point value to be shown on LCD
Unit:            Reserved


eInt — Integer value to be edited via LCD and keypad
In this function, only 1 parameter is defined.
Desc:          Description of the integer parameter to be displayed on the LCD 


User Interface Operation
With the above user interface kits setup, the configured parameters able to view from the LCD by entering “0' from the keypad and entering “#” to further access into the editing page after a valid PIN is entered (PIN can be changed under Sedona Setup page).

The incorporation of Sedona Virtual Machine in Bostex Access Controller has provided a seamless integration without any middle ware and convertor. The number of potential application between physical security access control and BMS is only limited by the imagination of system integrator.
Hotline

Address:

Designed by