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.