BACnet OPC Server v4.7Powered by Cimetrics BACstac Manual v1.1Moscow 2009

IntroductionThank you for your interest!Thank you for either purchasing or evaluating our products.We take great pride in providing solutions that offer state-of-the-artfeatures that help you make money.Please stay in touch because we are CONSTANTLY adding newproducts and features that make your life easier.Visit our website ООО Симетрикс, 2009.

Table of ContentsPart IIntroduction51 About BACnet OPC Server.52 What's new in this release.53 Installation - Uninstall .54 Demo mode.65 Licensing / Dongle System .66 System Requirements . .6Part IIBACnet Details1 Overview8. 82 PIC Statements. 93 Layers Explained.10Part IIIUsing BACnet OPC Server software131 Overview. 132 Features.143 Menus - File .154 Menus - Edit .165 Menus - Options .166 Menus - View.217 Menus - Simulators.218 Menus-Help/About .239 BACnet/IP or BACnet/E ? .2310 AutoStart at Boot-up .2511 Auto-discovery.2612 Colors - System Indication.2713 Colors - Device/Object icons.2814 Performance Issues .29Part IV General Information311 Links to BACnet Resources . 312 Links to OPC Resources . 313

IntroductionIntroduction1.1About BACnet OPC ServerThe BACnet OPC Server is a software gateway which translates the BACnet protocol on one side(typically BACnet/IP) to an OPC data format so that data can be exchanged between a BuildingAutomation network and a SCADA system.The BACnet OPC Server software must be loaded on the same physical computer as the OPC Clientsoftware. After initial configuration, starting the OPC client will automatically load the BACnet OPCServer and BACnet data will be available for control or monitoring by the SCADA workstationsoftware.1.2What's new in this releaseHere is a list of some of the most visible changes to the BACnet OPC Server:New features in this release 1.3Added support for Windows7, Windows Server2008R2Added device and object status using green/yellow/red/blue indicationImproved polling speed and status indicationAdded the ability to mark objects as "offline"Added Statistics menu to show total number of objects and properties within a deviceAdded right click of Offline/Edit/Delete functionsAdded support of Write Property Multiple (WPM-A) function to maximize speedOPC Server and examples built with BACstac v4.3Installation - UninstallThe BACnet OPC Server installation file loads all files required for full operation (NOTE: This alsoincludes the Cimetrics BACstac protocol stack which loads automatically.InstallationExe file installation - double click on the *.exe file and it will open into a dialog-based step-bystep wizard that allows you to select the destination directory and other options.When the installation process completes, you will find the BACnet OPC Server program (andexample programs) under Start All Programs Симетрикс BACnet OPC Server.Optional MS/TP Interface installation - Cimetrics makes an interface device called a "U 4Fieldbus Interface" which connects the RS485-based MS/TP network to the USB port of yourcomputer. It can be ordered separately.UninstallTo uninstall this software, use the standard Windows uninstall procedure:1. Go to Start Control Panel Add or Remove Programs2. While under Change or Remove Programs, find the СиметриксBACnet OPC Сервер listing and select Remove. Follow the screeninstructions to complete the removal process.5

BACnet OPC Server1.4Demo modeDEMO - If you want to try the demo or download the latest version, go to demo mode of this program allows you to: Perform Auto-discovery of a real or simulated BACnet network Learn the data structure inside BACnet devices (Devices contain Objects consisting ofProperties) Learn all about this software and the basics of the BACnet protocol using this HELP file Notice how OPC tags are automatically generated from the BACnet data Test that real BACnet devices can be read by the BACnet OPC software See if your devices require polling or they can use the COV mechanism Test the bandwidth usage caused by the polling and COV mechanisms Test the data update speed of a fully loaded network Become familiar with the BACnet OPC user interface and optionsDemo Program limitationsThe BACnet OPC Server software has functional limitations until all functions are activated bypurchasing one the licensing Dongle (see below).The limitations of the demo software are: You will not be able to save a Configuration file ( BACnet to OPC mapping ) Your BACnet OPC Server will not start pre-configured for your BACnet network (alwaysstarts blank) You will only be able to see one Device You will not be able to see more than approx 30 objects in any BACnet device1.5Licensing / Dongle SystemThe BACnet OPC Server requires a "locking mechanism" for all functionality to be enabled. This"dongle" just needs to be plugged into your USB port. Use a USB hub to connect this if you havemultiple USB devices. This can be moved between computers to enable all the features of thesoftware. A parallel port version of the dongle is available upon a request.1.6System RequirementsOperating System: This software is compatible with Windows 2000, Windows 2003 Serverand Windows XP.OPC Test Client: We test the BACnet OPC Server with Iconics Genesis 32, Wonderware InTouch,and Intellution iFix. We have worked with customers who have successfully integrated withapproximately 20 other client programs, but since there are so many of possibilities, it is yourresponsibility to verify proper operation using our demo program before purchasing.NOTE: This program MUST be loaded on the same computer as the OPC client program.Interface Connection: BACnet/IP and BACnet/Ethernet control will require an Ethernet card.BACnet MS/TP connection requires Cimetrics BACstac MS/TP adapter (U 4 hardwareinterface)Licensing port: Your computer needs USB or parallel port available for licensing dongle.6

BACnet OPC Server2BACnet Details2.1OverviewObjectsAll information within a BACnet system is represented by "Objects". Objects can be physical inputsor outputs, or they can be non-physical concepts like schedules or calendars. Here is the list of allBACnet objects at the time of writing (BACnet/OPC supported objects listed elsewhere):Every object has a set of "Properties". These describe the parameters within an object and theircurrent status. Here is an example of the properties of a temperature sensor:Every product that communicates over BACnet must have a "Device Object" which includesidentification information and a summary of the capabilities that are available to other devices onthe network. The Object Identifier property must be unique across the entire BACnet networkconnection.8

BACnet DetailsServicesBACnet devices use "Services" to acquire information, send a command, or announce that an eventhas taken place. BACnet defines "Service Request" and "Service Acknowledgement" messageswhich perform these tasks, but it is the responsibility of the application software to define howthese services are implemented. There are currently 40 Services defined and they fall into fiveclassifications; Alarm and Event, File Access , Object Access , Remote Device Management, and Virtual Terminal Services . Here is a list of the BACnet services within these categories:2.2PIC StatementsIf you can, it would be very helpful if you obtain the "PICs statement" for the BACnet devices thatyou are connecting to. The PICS (Protocol Implementation Conformance Statement)documentation is basically a BACnet spec sheet containing a list of a device's BACnet capabilities.Every BACnet device is required to have one.It contains a general product description; details of a product's BACnet capabilities; which LANoptions are available; and a few other items relating to character sets and special functionality.PICS is the place to start to see what a device's capabilities are. Conversely, a specifier could drafta PICS as a way of conveying what BACnet capabilities are desired for a particular job.As you can imagine, having these would be very helpful. However, if there are too many devicesand manufacturers involved you can still come a long way towards understanding the BACnetdevices just by using the Autodiscovery mechanism in this software.9

BACnet OPC Server2.3Layers ExplainedBACnet is based on a four-layer architecture that corresponds to the physical, data link, networkand application layers of the OSI Model.Physical and Data Link LayersThe Data link layer organizes the data into frames or packets, regulates access to the medium,provides addressing and handles some error recovery and flow control. The standard describesseveral datalinks, but the most common are the following:1) BACnet/IP (Annex J) Very common2) BACnet/Ethernet (ISO 8802-3) seldom used3) BACnet MS/TP Protocol (RS-485) Very CommonNOTE: The standard BACnet OPC Server supports BACnet/IP and BACnet/Ethernet. The MS/TPversion can be supported using optional "Cimetrics BACstac field bus interface" which is anintelligent RS485 interface. It can be ordered separately.Network LayerThis layer provides the means by which messages can be transferred or exchanged from oneBACnet network to another. Functions provided by the network layer include translation of globaladdresses to local addresses, routing messages through one or more networks, accommodatingdifferences in network types and in the maximum message size permitted by those networks,sequencing, flow control, error control, and multiplexing. Each network is assigned a uniquenetwork number for purposes of identification. This layer allows messages to be directed to a singleremote device, broadcast on a remote network, or broadcast globally. A network number and MACaddress can uniquely locate every BACnet device.Application LayerThe application layer provides the communication services required by the application. This layertakes in responses and inputs from an application and passes them onto the destination in the formof packets. The key to understanding the BACnet Application Layer is to think of it as two separatebut closely related parts: a model of the information contained in a building automation device; anda group of functions or "services" used to exchange that information. The internal design andconfiguration of a BACnet device is proprietary in nature and different for each vendor. BACnetovercomes this obstacle by defining a collection of abstract data structures called "objects", theproperties of which represent the various aspects of the hardware, software, and operation of thedevice. BACnet objects provide a means of identifying and accessing information without requiringknowledge of the details of a device's internal design. The communication software in the devicecan interpret requests for information about these abstract objects and translate those requests toobtain the information from the real data structures inside the device. Collectively, these objectsprovide a "network visible" representation of the BACnet device.BACnet defines 25 standard objects. All BACnet devices have exactly one Device object. Any objectcan be accessed by means of a property called "Object Identifier" that uniquely identifies eachobject within a single device. The Object Identifier can be thought of as the "name" of the object.Device objects have a special requirement that their Object Identifiers be unique throughout theentire BACnet inter-network. Thus, any BACnet object can be uniquely identified by the combinationof its Object Identifier and the Object Identifier for the device in which it resides.BACnet objects also have a property called Object Name. This property is a character string thatcan be used to identify an object in a way that is meaningful to an operator. Meaningful namesusually require more than four characters. Thus, most BACnet application layer services require theuse of an Object Identifier to specify a particular object because it is compact and has a fixed size.10

BACnet DetailsApplication ServicesObjects provide an abstract representation of the "network visible" portion of a building automation device.The "application services" provide "commands" for accessing and manipulating this information as well asproviding some additional functions. BACnet defines 42 application services. Some application services are"confirmed services", meaning that an acknowledgment of some kind is expected. Other services are"unconfirmed". The standard groups the application services into five categories.11

Using BACnet OPC Server33.1Using BACnet OPC Server softwareOverviewThe BACnet OPC Server is to be used together with OPC Workstation software (SCADA system). Byloading this software onto the same machine as the OPC workstation, you can read and write to BACnetdevices from the OPC Workstation user interface.NOTE: This is for getting BACnet information into an OPC Workstation and NOT for getting OPC datainto a BACnet Workstation (that function would be called a BACnet OPC Client software).This is what the main screen looks like:This BACnet OPC Server software will automatically discover all BACnet devices by clicking on theBACnet network icon () in the toolbar. When the auto-discovery process has completed, all BACnetdevices/objects/properties will be shown and they are automatically mapped to OPC tags. The tagsgenerated can be stored as a file (the file extension is .tdb or .xml). You can easily add or removesingle tags or devices from the data definition list.You get the data needed from the BACnet network, you can either:1) POLLING of the status information (Polling / Discovery Options - Polling), or2) "Change of Value (COV) subscription and notification". This is a BACnet mechanism whichtells the BACnet device to communicate to the BACnet OPC Server whenever a the present value or astatus flag changes. Read about this under Polling / Discovery Options – COVThe BACnet OPC Server software can also write BACnet values if a device allows "write access". Thisfeature is not designed as a main user interface and is only meant to be helpful when doing simpletesting or diagnostics of connections.Normal operation is indicated when the icons next to all devices and objects are GREEN. Thismeans that data communications is OK and the device has reported a good value. See also Iconcolor indication.13

BACnet OPC Server3.2FeaturesGeneral Features Integrate BACnet data and alarms into SCADA workstationsBACnet Client and OPC ServerRobust / mature BACnet code (Cimetrics BACstac )Easy "Explorer-style" interfaceEasy mapping using BACnet auto-discoveryDiagnostics indicators for all devices, objects, and systemConfiguration files saved using XML or reduced size filesAutomatic polling featuresBACnet Features Supports optimization of APDU timeout, retries, and polling delay.Supports Command Priority which prioritizes write requests.Supports subscription to Change of Value (COV) event notification for many properties.Auto Tag Generation for BACnet supported object types.Supported Objects:Analog InputAnalog OutputAnalog ValueAveragingBinary InputBinary OutputBinary ValueCalendarCommandDeviceEvent EnrollmentFileGroupLife Safety PointLife Safety ZoneLoopMulti-state InputMulti-State OutputMulti-State ValueNotification ClassProgramScheduleTrend LogNOTE: All required properties and most optional properties of all of the standard objecttypes are supported. Supported Services:BACnet ServiceWho-IsI-AmReadPropertyReadProperty MultipleWritePropertyWriteProperty X

Using BACnet OPC Server3.3Menus - FileNew - creates a new window and removes the device/object OPC mappingOpen - loads an existing device/object OPC mapping file. Save - saves thecurrent device/object OPC mapping.NOTE: You can program the BACnet OPC Server as a WindowsService so that it Autostarts and loads configuration at Boot-up.Save As - saves the current device/object OPC mapping with a new filename. You can save the fileas XML or as a proprietary format with the extension ".TDB". The advantages of the XML file isthe ease of translation and the ability to do off-line editing.Here is an example of what the XML file format looks like:The *.TDB proprietary format is used if you are not going to be working with the files other than forstorage of the setup information. This format creates a much more compact file.Auto-discover BACnet devices - This performs the same function as selecting the Auto-discovericonfrom the toolbar. Select this to search for BACnet devices on the BACnet network anddisplay these in the left side "tree diagram". When the search is finished, a window will indicatethe devices found. Select the devices that you are interested in and click OK to begin downloadingall of the objects contained within each device.15

BACnet OPC ServerRecent file list - The four most recent files are shown hereQuit (the next startup will be blank) - Use this when you do not want the program toautomatically load the last setup file. Exit - Closes the application3.4Menus - EditHide object ( ) - deletes the currently selected BACnet object; after deleting, OPC clients can nolonger access the deleted objectAdd object () - inserts a new BACnet object from the currently selected BACnet device. Youmay choose the properties, which will be communicated to the OPC workstation from the list.Edit Object (3.5) - The selected object and its properties can be edited using this feature.Menus - OptionsPolling / Discovery parametersCOV/Events DiscoveryDiscovery filter Pollingfilter MiscellaneoussettingsDisplay OptionsPolling / Discovery parametersWARNING: DO NOT change the Polling defaults (shown in screenshots below) unless youunderstand what these functions do.APDU - APDU means Application Protocol Data Unit. The "APDU" is the technical term for theactual data packet that is transmitted to the BACnet devices. This setup screen is a powerful toolthat lets you adjust the dynamic behavior of the APDU parameters to optimize performance.Changes made to these parameters will definitely affect performance.Max. segments - BACnet provides a segmentation mechanism for use when conveyingmessages too long to fit into a single transmission. Segmentation is performed by a Deviceif the size of a data packet exceeds the Max. frame size.Max. frame size - The maximum number is data segments that the OPC Server willtransmit/receive is 32 segments which usually offers the best performance.Max. window size - refers to the maximum number of segments, which can be16

Using BACnet OPC Servertransmitted before an acknowledgment is sent to the initiator.Max. frame size is the maximum allowed packet size of a BACnet packet.Timeout (sec) - corresponds to the time that the OPC Server will wait for a device torespond before timing out and indicating "BAD".Retries - corresponds to the number of times the OPC Server software will send out thesame request to a device if it does not receive an acknowledgement.Polling delay - corresponds to the time that the OPC Server will wait between sendingrequests for data. This is set to a default value of zero for the fastest updating of values.Increasing this number will cause less data traffic on the network connection.COV / Events - To reduce data traffic within the network, BACnet supports techniques for eventoriented notification. This means that devices notify the BACnet OPC Server when there is a valuechange or status flag change. This BACnet mechanism uses notification objects, which define theconditions required before the device notifies the OPC Server. This name of this mechanism is COV(change of value) notification. Here is an explanation of the various settings:Use unacknowledged COV - This means that devices will notify the OPC Server whenpresent value or status flags change but there will be no acknowledgement sent back to the device.This selection should only be used if the devices being controlled do not support the acknowledgedCOV mode.Use acknowledged COV - this causes the OPC Server to interrogate each Device and see if thedevice has the SVC SUBSCRIBE COV bit set in the property PROT SERVICES SUPPORTED. Ifit does, the OPC Server will set a SubscribeCOV telling the object to report back if thepresent value or a status flag changes. The OPC Server software sends and acknowledgementwhen a COV notification is received. This setting is recommended if the BACnet devices supportthis feature.Do not use COV services - no COV related communication takes place.Delete COV subscriptions leaving Polling mode - this is recommended in normal operation. Youmight want to turn this off during testing as it takes time to complete this when you turn Polling OFF.17

BACnet OPC ServerCOV-Resubscribe - this is the number of seconds before the OPC Server should resubscribe forCOV's. The default value is zero which means "keep it active forever". Some devices do not supporta COV with zero and in such cases you might want to try a high number such as 64.NOTE: BACnet Event services are mapped as OPC Alarms.Use unacknowledged EVENT-services - BACnet OPC Server writes its MAC address into therecipient list of every Notification Class object that it finds (only devices that are configured to beincluded). No acknowledge is returned to the device.Use acknowledged EVENT-services - BACnet OPC Server writes its MAC address into therecipient list of every Notification Class object that it finds (only devices that are configured to beincluded). All Events and Alarms are acknowledged. This is recommended if the devices supportthis.Do not use EVENT-services - only polling takes place.Delete Event Subscriptions at program close - this will delete or unsubscribe all thesubscriptions once the OPC Server is either closed or when you turn Polling Off.Discovery - This tab allows you to change the "scope" of the discovery function. Here is anexplanation of the various settings:Global broadcast - this discovers all BACnet devices on all connected networks.Local broadcast - this discovers BACnet devices on just the local network.Remote Network Number - this lets you discover BACnet devices on one particular network.Wait for I-Am - This is the amount of time to wait for a response back from each of the BACnetdevices before the discovery of the device is called "unsuccessful".Creation of OPC References. - If this is checked, OPC tags will composed of the Object nameand the Property name, if this is NOT checked, the OPC tag will be composed of the Object type andthe object instance.18

Using BACnet OPC ServerDiscovery Filter - This tab allows you to eliminate or filter out unwanted properties for each ObjectType. Select the object type, and select the properties to download. This can dramatically reducethe amount of time required for discovering many devices so it ishighly recommended that you filter out as many properties as possible (if they are not relevant toyour application).Polling Filter - In this window, the user can select the properties of different objects that wouldrequire polling. The properties that have not been selected will not be polled and hence the OPCServer will not see their changed values. This can dramatically reduce the amount of timerequired for polling many devices so it is highly recommended that you filter out as manyproperties as possible (if they are not relevant to your application).19

BACnet OPC ServerMiscellaneous settings Global Priority for Write commands - Priorities are specified in the BACnet specification to allow ahigh priority command (such as from a Fire Control system) to "over-ride" normal commands. Thedefault of 16 means that write commands from the OPC Server are low priority.Local network number for NC/COV recipient - this is the network number which will be notifiedby COV or Event notifications. Normally, this is Network 0. (this is a global setting)Maximum number of asynchronous processes - This controls the number of simultaneouscommands/responses that are attempted at one time. The recommended values to be used hereare 2 to 5. NOTE: Higher values do NOT always mean better performance because when morecommunications is attempted there will also be more "overhead" (extra data needed to send desireddata). So you should only adjust this parameter if you understand what is happening and you arewilling to do multiple full system experiments.Display options20

Using BACnet OPC ServerDisplay OPC Reference names and Present Value settings have to do with how muchinformation to show in the left pane of the main screen. The defaults for these are unchecked tokeep the main display less cluttered.Display Response Timeouts (and the Timeout delay) concern the System Indication in thelower right of the main screen. This indicator turns yellow when the OPC Server send a request fordata to a device or object and the answer takes more than "X" seconds to come back. Thesesettings answer "How long should the OPC Server software wait for an answer before the yellowindicator turns on indication that communications is taking too long ?"3.6Menus - ViewThis menus shows:Polling - This starts the polling of devices (just like the polling on the Toolbar.Status Bar - This is the bar at the bottom of the main screen.Toolbar - This is the bar at the top of the main screen.Statistics - This opens a dialogue box which shows the total number of Objects and Properties inthe Device currently being viewed.3.7Menus - SimulatorsThere are two simulators supplied with the BACnet OPC Server:Simulator - BACnet Device GoodSimulator - BACnet Device with IssuesThese are each software programs which create a BACnet Device containing many Objects (andProperties). The BACnet OPC Server should read the "Good" version as having good devices andobjects (all green indicators). The "with Issues" version will have one Object which is notcommunicating (red Object icon and yellow System Indication).21

BACnet OPC ServerSelecting a Simulator will:1) Start the Simulator program in a DOS window (see below) and2) start an autodiscover (22).

Using BACnet OPC Server3.8Menus-Help/AboutHelpIndex & Contents - launches this BACnet OPC Server help file.AboutAbout BACnet OPC Server - displays the copyright and program version information3.9BACnet/IP or BACnet/Ethernet ?NOTE: This program defaults to communicating using BACnet/IP.If you need to change this to communicate using BACnet/Ethernet, do the following: 1)Go to Start Control Panel Network Connections and select this.23

BACnet OPC Server2) Right click the Local Area Connection icon and select Properties to open the following window.3) Select the Cimetrics BACstac Protocol listing and then select the Properties button.4) You now see how the BACstac data link is set (BACnet/Ethernet or BACnet/IP).5) Highlight the protocol pro

1.1 About BACnet OPC Server The BACnet OPC Server is a software gateway which translates the BACnet protocol on one side (typically BACnet/IP) to an OPC data format so that data can be exchanged between a Building Automation network and a SCADA system. The BACnet OPC Server software must be loaded on the same