BACnet Integration Guide

27
Verify that you have the most current version of this document. Go to http://accounts.automatedlogic.com, then select Support > Download > Third-party Interfaces > Third-party Integration Guides. BACnet Integration Guide For an LGR line, ME-LGR line, or ME812u-LGR controller Rev. 9/28/2011

description

Guide to Integration of BACnet products.

Transcript of BACnet Integration Guide

  • Verify that you have the most current version of this document. Go to http://accounts.automatedlogic.com, then select Support > Download > Third-party Interfaces > Third-party Integration Guides.

    BACnet Integration Guide For an LGR line, ME-LGR line, or ME812u-LGR controller

    Rev. 9/28/2011

  • 2011 Automated Logic Corporation. All rights reserved throughout the world. Automated Logic Corporation, the Automated Logic logo, WebCTRL, EIKON, BACview, SuperVision, and InterOp are registered trademarks, and Alert is a trademark of Automated Logic Corporation. BACnet is a registered trademark of ASHRAE. All other brand and product names are trademarked by their respective companies.

    Contents Overview .................................................................................................................................. 1 Before-you-begin checklist ........................................................................................................ 1 The integration process ............................................................................................................. 2 1 Discover BACnet networks, devices, and objects ...................................................................... 2 2 Create a control program ....................................................................................................... 3 3 Edit a control program ........................................................................................................... 5 4 Configure Display microblocks ................................................................................................ 7 5 Configure Network Input and Total Analog microblocks ............................................................. 9

    Method 1: BACnet COV subscriptions ........................................................................... 9 Method 2: Polling ........................................................................................................ 9 To speed detection of a dead device ........................................................................... 10

    6 Connect the third-party device to the ALC controller ................................................................ 11 To wire a BACnet/ARC156 device ............................................................................... 11 To wire a BACnet MS/TP device .................................................................................. 11 To wire a BACnet PTP device ....................................................................................... 12

    7 Download the BACnet driver ................................................................................................. 13 8 Verify the controller is set up correctly.................................................................................... 13

    To capture ARCNET or MS/TP communication ............................................................. 15 To capture BACnet/IP or BACnet/Ethernet communication ......................................... 17

    Appendix A - BACnet addresses ................................................................................................ 18 Appendix B - To reuse a control program ................................................................................... 21 Appendix C - Third-party points behind NAT routers .................................................................... 22 Appendix D - Point packs ......................................................................................................... 23 Appendix E - COV subscription details ....................................................................................... 24

  • BACnet Integration Guide Rev. 9/28/2011 1 2011 Automated Logic Corporation

    You can integrate BACnet devices into a WebCTRL system using one of the ALC controllers listed below that provide third-party points*. The ALC controller serves as a master device.

    ALC

    Controllers LGR25 LGR250 LGR-1000

    ME-LGR25 ME-LGR200 ME812u-LGR (200 points)

    Read/write capability Can read from and write to the third-party equipment

    Third party

    Supported equipment Any device that supports the BACnet protocol

    Supported media IP, Ethernet, ARC156, MS/TP (9600, 19200, 38400, or 76800 kbps), and PTP

    * The point allowance of a controller (the number after the letter R) applies only to that controller.

    For example, if you purchase an LGR-1000 that provides 1000 third-party points and you download control programs that use 500 third-party Network I/O points, you cannot apply the unused 500 points to a different controller. If you have legacy ALC controllers that use point packs, see Appendix D (page 23).

    You need the following items, information, and skills for the integration process:

    The system's SiteBuilder database

    The ALC controller's Technical Instructions

    The third-party device's: BACnet network number and MAC address or the Device instance Points list including BACnet Object ID's (object type plus object instance) If the third party device is not installed or commissioned yet, ask the third-party vendor for this information. Then use Appendix A (page 18) to write correct BACnet address strings in your microblocks.

    The baud rate of the third-party device if running MS/TP

    Verification that all communication settings have been set on the third-party device

    Experience creating control programs with EIKON LogicBuilder

    Experience installing, wiring, setting up, and downloading to the ALC controller

    Overview

    Before-you-begin checklist

  • BACnet Integration Guide Rev. 9/28/2011 2 2011 Automated Logic Corporation

    Follow the steps in this document to integrate one or more third-party BACnet devices into a WebCTRL system using an ALC controller. To install and network the ALC controller, see the controllers Technical Instructions.

    WebCTRLs BACnet Discovery locates all accessible BACnet networks, BACnet devices, and BACnet objects (including devices in your WebCTRL system) on a BACnet network.

    To use BACnet Discovery:

    1 On the WebCTRL CFG tree, select System Settings.

    2 On the Communications tab, clear the Use Static BACnet Bindings checkbox so that bindings are dynamic.

    NOTE Always run your system with dynamic bindings (clear the Use Static BACnet Bindings checkbox) unless you are: Troubleshooting BBMD's. See "Setting up BBMD's" in WebCTRL Help. Using NAT routing. See "To build a Network tree" in SiteBuilder Help.

    3 On WebCTRL's CFG tree, select Connections.

    4 On the Configure tab, stop the BACnet/IP connection.

    5 While the connection is stopped, enter or verify the server's IP Address and Subnet Mask for the BACnet/IP connection.

    6 Restart the connection.

    7 On the NET tree, select the system level.

    8 Click Devices.

    9 On the BACnet Discovery tab, click Go to discover BACnet sites for the system. An item called Discovered Networks appears in the tree. After all sites are found, close the status dialog box.

    10 To discover BACnet networks, select Discovered Networks, then click Go. A list of all BACnet networks appears in the NET tree. After all networks are found, close the status dialog box.

    TIP Run a commstat manual command to determine which device routes to each network. The BACnet Bind Show Network section of the Commstat window shows the IP address of the router to each network.

    11 To discover BACnet devices on a network, select a network on the NET tree, then click Go. After all devices are found, close the status dialog box. Click the plus sign beside an item to expand the list of devices.

    The integration process

    1 Discover BACnet networks, devices, and objects

  • BACnet Integration Guide Rev. 9/28/2011 3 2011 Automated Logic Corporation

    12 To discover BACnet objects on a device, select the device in the NET tree, then click Go. After all objects are found, close the status dialog box. A list of all BACnet objects in this device appears on the NET tree.

    TIP Make sure you are discovering objects in the correct device. It may take some time to discover objects in devices with more than 100 objects.

    13 On the NET tree, select a discovered network with devices or a single device.

    14 Click the Export button to export the BACnet information.

    15 Name and save the .discovery file in any folder.

    NOTES

    Some third-party BACnet devices may not be discovered because they do not support the BACnet methods required for auto discovery.

    If the discovery process returns ambiguous information, such as multiple points with similar names, contact the third-party manufacturer's representative for clarification.

    Device configuration or network load can prevent WebCTRL from showing all BACnet devices. If you do not see a BACnet device that you expect to see, check the system's BBMD configurations. If the configurations are correct, try the discovery process again.

    If a third-party device is not discoverable, you must get the device's address and point list information from the third-party vendor. Then use Appendix A (page 18) to write correct BACnet address strings for your microblocks.

    Use Network I/O microblocks and Display microblocks to read from or write to BACnet objects in a third-party BACnet device.

    Use Network I/O microblocks if any of the following is true:

    An ALC control program must read from or write to third-party BACnet points for automatic control.

    You want to trend values from a third-party device that does not support BACnet trends.

    You want to display third-party values that require unit conversion or other math processing.

    NOTES

    Each Network I/O microblock that is addressed to a third-party object property counts against the point limit of an ALC controller.

    Display microblocks do not count against the point limits of ALC controllers.

    Both Network I/O and Display microblocks count against the 500-point limitation of WebCTRL 500.

    Display microblocks cannot use logic, including the logic that a thermographic floorplan requires.

    2 Create a control program

  • BACnet Integration Guide Rev. 9/28/2011 4 2011 Automated Logic Corporation

    To create a control program:

    1 Go to Start > All Programs > WebCTRL 5.2 > Third-Party BACnet Utility.

    2 Select File > Save as.

    3 Name and save the .3pbu file in any folder.

    4 Select File > Import.

    5 Browse to the .discovery file that you exported from WebCTRL's BACnet Discovery tool.

    6 Select Control Program > Add Control Program.

    7 In the Name field, type the name of the .equipment file that you want to create, then click OK.

    NOTE You can repeat steps 6 and 7 to add multiple control programs to the .3pbu file.

    8 Click to highlight one or more control programs in the Control Programs to Generate list.

    9 Click, Shift+click, or Ctrl+click to select the point(s) you want to add to the control program(s).

    10 Click .

    11 Select Control Program > Generate Control Programs.

    12 Browse to the control programs Destination Directory.

    13 Select the checkbox by each control program that you want to generate.

    NOTE You can use the Check All and Uncheck All buttons to the far right.

    TIPS

    Move the divider bar to adjust the size of the size of the panes.

  • BACnet Integration Guide Rev. 9/28/2011 5 2011 Automated Logic Corporation

    Keyboard shortcuts are shown beside their corresponding commands in the drop-down menus.

    Change the width of a column by dragging the bar between column headings.

    Rearrange the columns by dragging and dropping a heading cell.

    Click a column heading to sort the rows by the information in that column.

    To prioritize sorting by multiple columns, hold down Ctrl as you click headings. The size of the triangles indicate the sorting priority.

    For example: Click Device ID to sort the rows by third-party devices. Then Ctrl+click Object Type to sort each Device IDs object types. Then Ctrl+click Object Instance to sort each section of object types by instance numbers.

    Make the Discovered BACnet Objects list easier to view by selecting BACnet Objects > Filter Properties. Then select or clear checkboxes to show only the information you need.

    Hide selected objects by right-clicking one of the selected objects then selecting Hide object. To reveal the hidden objects, go to BACnet Objects > Filter Properties, then select the Show hidden objects checkbox.

    To find an object in the opposite pane, right-click the object, then select Find Usages.

    Move or copy objects from one control program to another by right-clicking the selected object(s), then selecting Move to or Copy to.

    You can edit a control program created with the Third-Party BACnet Utility in the utility itself or in EIKON LogicBuilder. Or, in EIKON LogicBuilder, you can edit an existing control program to integrate with a third-party BACnet device.

    To edit a control program in the Third-Party BACnet Utility

    1 In the Third-Party BACnet Utility, select File > Open.

    2 Select the .3pbu file that contains the control program(s) you want to edit.

    3 Make changes as needed.

    NOTE If you change a microblock's reference name, the utility will add a new microblock when you generate the control program.

    4 Select Control Program > Generate Control Programs.

    NOTE The Generate Control Programs command will add microblocks that you added, but will not delete microblocks that you deleted in the Third-Party BACnet Utility.

    5 Save the control program(s).

    3 Edit a control program

  • BACnet Integration Guide Rev. 9/28/2011 6 2011 Automated Logic Corporation

    To edit a control program in EIKON LogicBuilder

    1 In EIKON LogicBuilder, select File > Open.

    2 Select the .equipment file that you want to edit.

    3 Select Edit > Third Party BACnet Addresses.

    4 Browse to the .discovery file that contains the BACnet object you want to add or change.

    5 In the Third Party Addresses window, select the Only show objects that match selected microblock checkbox.

    6 Do one of the following: Change an existing microblock

    a. Select an existing microblock.

    b. Select an object in the Discovered BACnet Objects list.

    c. Click Change Microblock.

    d. Select a different microblock type from the drop-down list.

    e. Optional: Choose Change Type Only or Change Type And Set Address.

    f. Click OK. OR Add a new microblock

    a. Add a Network I/O or Display microblock.

    b. Select a point in the Discovered BACnet Objects list.

    c. Click Set Address to assign object properties to the microblock.

    7 Save the file.

  • BACnet Integration Guide Rev. 9/28/2011 7 2011 Automated Logic Corporation

    To allow an operator to change a third-party object's property from the WebCTRL interface through a Display microblock, the desired property must be present and be editable (not marked "Read only") in the third-party object.

    In EIKON LogicBuilder, in the Property Editor of a microblock, select Present (if the optional property exists in the third-party device), Editable, and Write to field checkboxes. See COV increment in the example below.

    The Display microblocks in the table below require special configuration.

    Binary Output

    Binary Value

    If you want the text of a BACnet Modeled Binary Output or BACnet Modeled Binary Value on a graphic to display the inactive and active text instead of 0 and 1, select the Present checkboxes.

    NOTE If the third-party device does not support this feature, your graphic will display 0 or 1 even if you select the Present checkboxes.

    Schedule If you want a WebCTRL schedule to write to a third-party BACnet-schedule object through a BACnet modeled schedule object, do the following:

    1 In EIKON LogicBuilder, select the Schedule Category of the WebCTRL schedule that will write to the third-party object.

    2 In the Property Editor, select the Present, Editable, and Write to field checkboxes for Weekly Schedule and Exception Schedule.

    NOTES

    Only ALC-manufactured devices support ALC Dated Weekly schedules.

    If you get an error in WebCTRL, clear the Array Resize Write Index and Array Resize Write Past End checkboxes.

    4 Configure Display microblocks

  • BACnet Integration Guide Rev. 9/28/2011 8 2011 Automated Logic Corporation

    Event Notification

    You can use a BACnet Modeled Event Enrollment microblock to view the status of a third-party BACnet Event Object. If you want the third-party device to deliver its alarms to the WebCTRL Alarms View tab, you must configure the third-party device to send alarms to WebCTRL. You can add WebCTRL to the Recipient List for each alarm or set up a BACnet Modeled Notification Class microblock to add WebCTRL to the Recipient List for every alarm generated by the third-party device.

    NOTE A third-party device may not retain alarm recipient information through a power loss or download.

    1 In the BACnet Modeled Event Enrollment microblock, select the Standard Template for the best results on your WebCTRL Alarms View tab.

    2 In the Event Enrollment or Notification Class microblock, select the Editable and Write to field checkboxes for Recipient List.

    3 In WebCTRL, on the Properties page Details tab for a device's BACnet Modeled Notification Class microblock or an event's BACnet Modeled Event Enrollment microblock, click Add.

    4 Define the recipient. See field descriptions below.

    5 Generate an alarm at the third-party device to verify that you see the alarm delivered to your WebCTRL Alarms View tab.

    Field Notes

    Recipient Type Select Device.

    Time section Select the days and define the hours that the third-party device should send alarms to WebCTRL.

    Device Object Identifier Enter your WebCTRL system's BACnet Alarm Recipient instance number.

    Process Identifier Type 1.

    Issue Confirmed Notification Select this checkbox.

    Trend If the third-party trend does not display correctly, change the Trend Conformance Level to Default.

  • BACnet Integration Guide Rev. 9/28/2011 9 2011 Automated Logic Corporation

    Use one of the following methods to define how every Network Input or Total Analog microblock reads the object property referenced in the microblock's Address field.

    How it works The Network Input or Total Analog microblock subscribes with the target BACnet object. An analog target notifies the microblock if the target's value changes by more than the target's BACnet COV_Increment. A binary target notifies the microblock when it changes state. See Appendix E - COV subscription details (page 24).

    Benefits Can decrease network traffic by preventing unnecessary updates if the target's COV_Increment is set appropriately. See step 2 in "To set up" below.

    Drawbacks Can generate excessive network traffic if the target's COV_Increment property is too small. See step 2 in "To set up" below.

    Can delay detection of a dead device or of network problems . See To speed detection of a dead device (page 10).

    To set up 1 Set the microblock's Refresh Time to 31 seconds or more.

    2 If the microblock's Address field references an analog property, set the target's COV_Increment property to the smallest amount by which the value must change for the target to notify its subscribers. The optimal COV_Increment is large enough to prevent unnecessary updates but small enough to be useful to the control program(s) receiving the updates.

    NOTE If COV subscription fails, the microblock reads the value at the Refresh Time interval using the BACnet ReadProperty or ReadPropertyMultiple service. See Method 2: Polling (page 9).

    How it works The Network Input or Total Analog microblock reads the target property at the Refresh Time interval using the BACnet ReadProperty or ReadPropertyMultiple service

    Benefits Allows rapid detection of a dead device or of network problems

    Does not require additional memory

    Drawbacks Generates unnecessary network traffic if a value does not change frequently

    Misses value changes that occur between pollings

    Can overwhelm the target's controller if many microblocks request the same property value (such as outside air temperature). The BACnet object must send the value to each microblock that polls for that data.

    5 Configure Network Input and Total Analog microblocks

    Method 1: BACnet COV subscriptions

    Method 2: Polling

  • BACnet Integration Guide Rev. 9/28/2011 10 2011 Automated Logic Corporation

    To set up Set the microblock's Refresh Time to 30 seconds or less.

    NOTE The ALC microblock will not poll at a Refresh Time interval less than 1 second.

    BACnet ReadProperty and ReadPropertyMultiple services

    See the BACnet specification for details on these services.

    ReadPropertyMultiple occurs if: two or more microblocks in a controller read more than one target in the same

    remote controller, the Refresh Time in two or more microblocks expires at the same time, and the remote controller supports the service.

    If a BACnet object's device loses network communication, a network input reading the object's value does not detect the failure until

    the network input's next subscription (up to 10 minutes) if using BACnet COV subscription, or

    the Refresh Time expires, if polling

    You can use a small Refresh Time to poll more often, but this can generate unnecessary network traffic under normal conditions.

    To use the benefits of BACnet COV subscription, but overcome the potential delay in detection of a dead device, send a constantly changing value from the BACnet object's control program to a network input using BACnet COV subscription. If the value stops changing, the network input's control program generates an alarm.

    EXAMPLE

    The logic in the BACnet object's control program that sends the value. The BACnet Analog Value microblock has a COV Increment of 0.5.

    To speed detection of a dead device

  • BACnet Integration Guide Rev. 9/28/2011 11 2011 Automated Logic Corporation

    The logic in the network input's control program that receives the changing value. The SIGNAL analog network input's Address field contains the address of the BACnet Analog Value microblock sending the changing signal, and the network input's Refresh Time is 31 seconds.

    Use: 24 AWG twisted, shielded pair cable for up to 200 feet (60.96 meters)

    or 22 AWG twisted, shielded pair cable for up to 2000 feet (609.6 meters) See ARC156 Wiring Technical Instructions (http://accounts.automatedlogic.com/download) for details.

    1 Turn off the controller's power.

    2 Check the communications wiring for shorts and grounds.

    3 Connect the third-party device's communications wiring to the controller's screw terminals labeled Net +, Net -, and Shield.

    NOTE Use the same polarity throughout the network segment.

    4 If connecting to an ME812u-LGR, set the BACnet Mode jumper to ARC156.

    5 Turn on the controller's power.

    Use: 24 AWG twisted, shielded pair cable for up to 200 feet (60.96 meters)

    or 22 AWG twisted, shielded pair cable for up to 2000 feet (609.6 meters) See MS/TP Wiring Technical Instructions (http://accounts.automatedlogic.com/download) for details.

    6 Connect the third-party device to the ALC controller

    To wire a BACnet/ARC156 device

    To wire a BACnet MS/TP device

  • BACnet Integration Guide Rev. 9/28/2011 12 2011 Automated Logic Corporation

    1 Turn off the controller's power.

    2 Check the communications wiring for shorts and grounds.

    3 Connect the third-party device's communications wiring to the controller.

    For a... Connect wiring to... Set...

    LGR25 LGR250 LGR-1000 ME-LGR25 ME-LGR200

    Port S1 terminals labeled Net + and Net -

    MSTP on S1 DIP switch to Enable (ON)

    Port S1 jumpers to EIA-485 and 485-2w

    ME812u-LGR BACnet port terminals labeled Net +, Net -, and Shield

    BACnet Mode jumper to MSTP

    NOTE Use the same polarity throughout the network segment.

    4 Turn on the controller's power.

    5 To change the port's baud rate, see "To set a port's baud rate using PuTTY" in the controller's Technical Instructions.

    NOTE Use the same baud rate for all devices on the network segment.

    Use 18-28 AWG shielded cable, 50 feet (15.24 meters) maximum length.

    1 Turn off the controller's power.

    2 Check the communications wiring for shorts and grounds.

    3 Connect the third-party device's communications wiring to the controller.

    For a... Connect wiring to... Set...

    LGR25 LGR250 LGR-1000 ME-LGR25 ME-LGR200

    Port S2 terminals labeled Tx, Rx, and Signal Ground

    PTP on S2 DIP switch to Enable (ON)

    Port S2 jumper to EIA-232

    ME812u-LGR Port S1 terminals labeled Tx, Rx, and Signal Ground

    PTP on S1 DIP switch to Enable (ON)

    Enhanced Access Port DIP switch to Off

    Port S1 jumpers to EIA-232 and Full Duplex

    NOTES Jumper the DTR and DCD terminals. Use the same polarity throughout the network segment.

    4 Turn on the controller's power.

    5 To change the port's baud rate, see "To set a port's baud rate using PuTTY" in the controller's Technical Instructions.

    NOTE Use the same baud rate for all devices on the network segment.

    To wire a BACnet PTP device

  • BACnet Integration Guide Rev. 9/28/2011 13 2011 Automated Logic Corporation

    Get the latest BACnet driver If you do not have the latest version of your ALC controller's driver, follow the steps below.

    NOTE If your ALC controller is using a driver for another protocol, that driver will also allow you to integrate with BACnet points.

    1 Go to the website http://accounts.automatedlogic.com/download, then select Third-party Interfaces > Drivers > Third-party interface (ME-LGR & LGR) > .

    2 Download the driver, saving it in WebCTRLx.x\webroot\\drivers.

    3 On SiteBuilder's Network tree, double-click the ALC controller.

    4 Select the ALC controller in the Device Definition drop-down list, then click OK.

    5 Optional: To verify that the correct driver will be used, expand the controller, double-click Driver, then verify the selection in the Driver field.

    Download the driver and control programs

    1 In SiteBuilder, assign the equipment to the controller by dragging the equipment from the Geographic tree and dropping it on the controller in the Network tree.

    2 In WebCTRL, download All Content to the ALC controller.

    NOTE If the third-party device is on a different IP network than the ALC controller, verify that BBMD's are configured appropriately for communication. See the ALC website (http://accounts.automatedlogic.com) for more information on BBMD's.

    1 On WebCTRL's GEO tree, select the control program for the ALC controller.

    2 Select the Properties page > Network Points tab.

    If... Then...

    You see the point value you expect with no errors in the Error column

    You have successfully established communication with the third-party device.

    All points show question marks instead of values

    WebCTRL is not communicating with the ALC controller or the control program. Troubleshoot the controller's communications. See the controller's Technical Instructions.

    TIP If only display microblocks show question marks, verify that the Use Static Bindings checkbox on WebCTRL's System Settings > Communications tab is cleared.

    7 Download the BACnet driver

    8 Verify the controller is set up correctly

  • BACnet Integration Guide Rev. 9/28/2011 14 2011 Automated Logic Corporation

    If... Then...

    Some points show question marks instead of values

    You may have exceeded the third-party points available in the controller. If so, do one of the following: Use a controller that provides more third-party

    points. Split the points between two control programs used

    in separate controllers. To determine the number of third-party points used in a controller: On WebCTRL's NET tree, click on the controller's Driver, then scroll to the bottom of the page. Number of integration points requested and Number of integration points active show how many third-party Network I/O microblocks the controller is using. These counts will differ if you exceed the controller's integration point limit. For example, if your LGR25's control program includes 27 third-party points, your Integration points requested will be 27 and your Integration points active will be 25.

    The point name is red Look in the Error column for one of the following error codes and descriptions.

    1 - Communications Disabled for this Microblock Enable the microblock's Communications Enabled field on WebCTRL's Network Points tab, on the microblock's Properties page > Details tab, or in EIKON LogicBuilder.

    3 - Address Error - Unknown Protocol Specified Select the correct port on the driver page in WebCTRL, set the DIP switches correctly on the controller, or correct the Address field in the microblock.

    A value is incorrect Verify that:

    The Address in the microblock is correct.

    The retrieved value is scaled properly, if necessary. For example, scaled from Celsius to Fahrenheit. Refer to the third-party manufacturer's documentation or the controller's Technical Instructions for scaling information.

    If the above solutions do not resolve the problem, gather the following information for technical support:

    A diagnostic capture. See the next 2 topics.

    A screenshot of the driver Properties, IP Addressing, and Protocol pages

    A screenshot of the Properties page > Network Points tab and Display Points tab showing addresses and errors

    All information from a Modstat copied into a text file. Right-click the Modstat, then select Select All. Press Ctrl+C to copy the information, then open Notepad and paste the information into a text file.

  • BACnet Integration Guide Rev. 9/28/2011 15 2011 Automated Logic Corporation

    Use the ALC diagnostic tool DLCap with Wireshark to capture the communication between the controller and the third-party device.

    PREREQUISITES A computer with a USB port A USB Link Kit. You will use only the white, 7 3/4-inch USB-to-485 cable.

    See the USB Link Kit Technical Instructions (http://accounts.automatedlogic.com). NOTE The USB Link Kit driver is installed with WebCTRL v5. But if needed, you can get the latest driver from http://accounts.automatedlogic.com/download. Install the driver before you connect the USB Link Kit to your computer.

    A piece of ARC156 cable

    CAUTION If multiple controllers share power but polarity was not maintained when they were wired, the difference between the controller's ground and the computer's AC power ground could damage the USB Link Kit and the controller. If you are not sure of the wiring polarity, use a USB isolator between the computer and the USB Link Kit. Purchase a USB isolator online from a third-party manufacturer.

    1 Go to http://accounts.automatedlogic.com/download, then select Engineering and Startup Tools > Utilities > DLCap.

    2 Unzip the files to a folder on your hard drive.

    3 Run setup_dlcap.exe. Follow the instructions in the Setup Wizard, accepting all defaults.

    4 Download the latest version of Wireshark from the Wireshark website (http://www.wireshark.org).

    5 Run the install program, accepting all defaults. Include WinPcap in the installation.

    6 Connect the USB-to-485 cable to your computer's USB port.

    NOTE If using a USB isolator, plug the isolator into your computer's USB port, and then plug the USB Link Kit cable into the isolator.

    7 Connect the ARC156 cable to the screw terminal connector on the USB-to-485 cable.

    8 Use the following table to connect the other end of the cable to the network. See the tag on the USB-to-485 cable to determine polarity.

    To capture...

    Connect the ARC156 cable to...

    Set...

    ARCNET Port S2 on an LGR or ME-LGR Port S1 on an ME812u-LGR

    Connect to the screw terminals labeled Net+, Net -, and Signal Ground.

    The port's jumper to EIA-485

    Dip switch 1 to On for Enhanced Access

    On an ME812u-LGR, set the Duplex jumper to Half.

    MS/TP Any connection on the MS/TP network. For example, insert it into the daisy chain of MS/TP devices as if it were another device.

    N/A

    To capture ARCNET or MS/TP communication

  • BACnet Integration Guide Rev. 9/28/2011 16 2011 Automated Logic Corporation

    9 Cycle the controller's power.

    10 Double-click the DLCapture.bat file located in c:\Program Files\Automated Logic Corporation\dlcap_installer.

    NOTE Depending on your computer setup, you may need to run this file as a Windows Administrator. See your IT administrator for help.

    11 Type the computer's port number that the USB cable is connected to. To find this information: a) Right-click My Computer. b) Select Manage. c) Select Device Manager. d) Double-click Ports (COM & LPT).

    12 Press Enter.

    13 Type the number that corresponds to the network baud rate: For MS/TP, type the number that corresponds to the baud rate of your MS/TP

    network. For ARCNET, type 5.

    14 Press Enter.

    15 Type the number that corresponds to the type of network communication you are capturing. Type 1 for MS/TP. Type 2 for ARCNET.

    16 Press Enter.

    17 Type y to run Wireshark, then press Enter. Wireshark should open and display captured packets.

    18 While Wireshark is capturing communications, do the following:

    Start WebCTRL, then get a modstat of a controller on the ARCNET or MS/TP network to create network traffic.

    Try to recreate the problem you are troubleshooting. If possible, correlate your troubleshooting actions with particular lines in the Wireshark capture.

    Record communications for about 5 times the longest refresh rate set in any microblock.

    19 To complete the capture, select Capture > Stop.

    20 Select File > Save As. Give the file a name that includes a brief description of the problem. For example, systemname_excessive_traffic, systemname_binding_conflicts, or systemname_slow_network. Wireshark will add the appropriate file extension.

    21 Click Save.

    22 Attach the following to your on-line case: The Wireshark capture file you saved in step 21. Device instance number of the problem device Description of the problem

    TIP You can color code the information in the Wireshark capture file based on user-defined criteria. See Wireshark's Help for instructions on setting up Coloring Rules.

  • BACnet Integration Guide Rev. 9/28/2011 17 2011 Automated Logic Corporation

    Use Wireshark, a network analysis tool, to capture BACnet/IP or BACnet/Ethernet communication between the ALC controller and the third-party device.

    PREREQUISITE Provide an Ethernet hub so that Wireshark can capture all Ethernet communication, not just broadcasts.

    1 Download the latest version of Wireshark from the Wireshark website (http://www.wireshark.org).

    2 Run the Wireshark install program, accepting all defaults. Include WinPcap in the installation.

    3 Disconnect the network cable from the ALC controller's Ethernet port, then plug the cable into the hub's Uplink port.

    4 Use a separate Ethernet cable to connect the controller's Ethernet port to the hub.

    5 Connect the BACnet device's Ethernet cable to the hub.

    6 Connect the Ethernet port of the computer running Wireshark to the hub.

    7 On the computer, click Start > All Programs > Wireshark.

    8 From the menu bar, select Capture > Interfaces.

    9 Click the Start button next to the adapter that is connected to the network. This starts the capture.

    TIP Choose the adapter that shows the Packets value changing.

    10 Allow the capture to run long enough to ensure that there is sufficient data to allow a technician to review the problem.

    11 On the menu bar, select Capture > Stop to stop the data capture.

    12 Select File > Save and save the capture to a convenient location. Leave the Save as type default set to Wireshark/tcpdump/ - libpcap (*.pcap, *.cap).

    13 Send the file to ALC Technical Support for analysis.

    TIP You can color code the information in the Wireshark capture file based on user-defined criteria. See Wireshark's Help for instructions on setting up Coloring Rules.

    To capture BACnet/IP or BACnet/Ethernet communication

  • BACnet Integration Guide Rev. 9/28/2011 18 2011 Automated Logic Corporation

    The BACnet standard allows multiple formats for creating a valid address in each microblock that you use to read from or write to a third-party BACnet point. Some are shown below.

    CAUTION When integrating third-party devices into your system, most communication problems are caused by incorrect data or typing errors in the microblock's Address field.

    NOTE Numeric values in a BACnet address can be entered using decimal or hexadecimal notation. Type 0x before a hexadecimal value.

    Device - Use one of the following: EXAMPLES

    Device instance number

    bacnet://2010/

    BACnet device name

    bacnet://MyDevice/

    Network number: MAC address (of third-party device)

    bacnet://1234:35/ bacnet://1234:0x23/

    The word "this" if a network point requests a value from another control program in the same ALC controller. Avoids network traffic. Requires v2.05 or later controller driver.

    bacnet://this/

    A single * (wildcard) that sends out a request on the network for all devices that contain the Object specified in the address. (See Object below.) The microblock subscribes to the nearest responder.

    NOTES You can use an * in the address of

    Network Input and Total Analog microblocks.

    An address with an * is restricted to the present_value property (the default when you do not specify a property).

    Requires a v3.04 or later driver.

    bacnet://*/

    Appendix A - BACnet addresses

  • BACnet Integration Guide Rev. 9/28/2011 19 2011 Automated Logic Corporation

    Object - Use one of the following: EXAMPLES

    Object type: Instance number (See NOTES below) BACnet object name

    bacnet:///ai:2 bacnet:///MyObject

    NOTES

    For object type, you may type the abbreviation (not case sensitive), the full name, or the object type number. Some standard BACnet object type numbers are listed below. See the BACnet standard for a complete list. For proprietary BACnet objects, see the object's manufacturer.

    Use... ai ao av bi bo bv dev msi mso msv

    Or... analog-input analog-output analog-value binary-input binary-output binary-value device multistate-input multistate-output multistate-value

    Or... 0 1 2 3 4 5 8 13 14 19

    Every object in a controller has a unique instance number, regardless of its control program.

    Property (optional) If you want to read or write a property other than present_value, type one of the following:

    EXAMPLES

    BACnet property identifier BACnet property identifier # Property identifier (with index)

    bacnet:////cov_increment bacnet:////22 bacnet:////priority-array(12)

    Property identifier # (with index) bacnet:////87(12)

    TIP For standard BACnet objects, see the BACnet standard for property identifiers and property identifier numbers. For proprietary BACnet objects, see the object's manufacturer.

    Priority (optional) If you want to write at a priority other than 16, type @ followed by a priority number.

    EXAMPLE

    Number (116) bacnet:////@9

  • BACnet Integration Guide Rev. 9/28/2011 20 2011 Automated Logic Corporation

    NOTE Priority levels 1 and 2 are reserved for manual and automatic life safety commands. For more information on reserved priority levels see the BACnet standard.

    Examples of BACnet addresses:

    bacnet://MyDevice/ai:2 bacnet://1234:0x23/analog-input:2/priority-array(12)@8 bacnet://2499:0x00E0C90047CA/bi:3 bacnet://2436:192.168.47.36:47806/0:2

  • BACnet Integration Guide Rev. 9/28/2011 21 2011 Automated Logic Corporation

    You can reuse a control program for multiple pieces of identical third-party equipment.

    To reuse a control program for identical pieces of equipment:

    1 In EIKON LogicBuilder, open the control program you want to reuse.

    2 Add a Device Alias microblock.

    3 In the Property Editor, type a meaningful character string such as the model number or name of the third-party device in the Device Alias field.

    4 Select Control Program > Edit Common Properties > Display Points tab.

    5 Select the All radio button.

    6 Replace the numbers in the Device Alias column with the model number or name of the third-party device exactly as you typed it in step 3.

    7 In SiteBuilder, assign this reusable control program to each instance of the third-party device.

    8 In your running system, for each instance of the third-party equipment, change the Device Alias microblock's Device Instance number to match each specific device.

    Appendix B - To reuse a control program

  • BACnet Integration Guide Rev. 9/28/2011 22 2011 Automated Logic Corporation

    For WebCTRL to retrieve third-party data into a display microblock that must pass through one or more NAT routers, you must create a model of the third-party network on SiteBuilders Network tree.

    1 In SiteBuilder, add the third-party equipment to the Geographic tree.

    2 In the Equipment Properties dialog box, select the control program you created in EIKON LogicBuilder.

    3 On the SiteBuilder Network tree, add (model) the third-party device.

    NOTES

    If the third-party device is on a different BACnet network than your ALC equipment, you must also add the third-party network.

    If the third-party device is under a third-party router, you must add the third-party router and its network before adding the third-party device.

    TIP For a third-party device on a different BACnet/IP network than any ALC devices, use BBMD's to communicate across an IP router. See the ALC website (http://accounts.automatedlogic.com) for more information on BBMD's.

    4 On the SiteBuilder Network tree, in each third-party devices Device Properties dialog box, General tab:

    Type the Address and Device Instance information from the third-party vendor.

    In the Device Definition field, select Third Party Device or Third Party Device Router.

    NOTE To use NAT routing, you must select the Use Static BACnet Bindings field on WebCTRL's System Settings > Communications tab.

    Appendix C - Third-party points behind NAT routers

  • BACnet Integration Guide Rev. 9/28/2011 23 2011 Automated Logic Corporation

    The following controllers use point packs (100 points per pack): LGE LGRM-E S line M line UNI WebPRTL

    NOTES

    The LGE, LGRM-E, and WebPRTL can communicate on any BACnet network type (IP, Ethernet, ARCNET, MS/TP, or PTP). See the router's Technical Instructions for details.

    S line, M line, and UNI controllers can communicate using BACnet on ARC156 or MS/TP networks. They can reference a third-party BACnet point on any network type if a BACnet route to the point exists.

    A controller that provides third-party points does not use point packs.

    A system can use both controllers that provide third-party points and controllers that use point packs.

    EXAMPLES

    For third-party BACnet integration in a system with this hardware...

    Use...

    LGE S6104 UNI M4106

    Point packs. Any of these controllers can have control programs with Network I/O microblocks that reference third-party points.

    LGR25 SE6104 UNI M4106

    The LGR25 for the first 25 third-party points. You can add third-party points with:

    Additional controllers that provide third-party points.

    Point packs, if the control programs will be downloaded to the UNI or M4106.

    ME-LGR200 SE6104 ZN551

    The ME-LGR200 for the first 200 third-party points. You can add third-party points with additional controllers that provide third-party points.

    LGR1000 SE6104 ZN551 M8102

    The LGR1000 for the first 1000 third-party points. You can add third-party points with:

    Additional controllers that provide third-party points.

    Point packs, if the control programs will be downloaded to the M8102.

    Appendix D - Point packs

  • BACnet Integration Guide Rev. 9/28/2011 24 2011 Automated Logic Corporation

    When an input (Network Input or Total Analog microblock) subscribes with a BACnet target (object property), the input sets a 21-minute subscription Lifetime in the target. The target responds with a COV notification that includes the target's value and time remaining from the original subscription Lifetime (TimeRemaining). The input resubscribes with the target every 10 minutes to keep the target's BACnet subscription service active. The Next Subscription field on the input's Properties page shows the time remaining until the input's next subscription.

    The target also sends a COV notification that includes the target's value and subscription Lifetime TimeRemaining when the target's value changes by more than the target's COV_Increment.

    If the ALC target has one subscriber, the target sends COV notifications directly to that subscriber. If the ALC target has more than one subscriber, it broadcasts its COV notifications to optimize network traffic. A third-party subscriber can participate in this broadcast scheme by subscribing for Unconfirmed COV notifications with a Process ID of 0. Otherwise, the ALC target maintains and responds to the third-party subscription separately with its own Lifetime timer.

    The ALC input compares the TimeRemaining value in each COV notification broadcast the target sends to its (Next Subscription time + 11) to determine whether another input has subscribed since it did. If another input has subscribed more recently, the input adds 10 minutes to its Next Subscription time. This allows the COV Subscription request from the last subscribing input to keep the subscription service active for all subscribers to the same data.

    EXAMPLE

    Elapsed time (minutes)

    Action Target Lifetime TimeRemaining (minutes)

    Input 1 Next Subscription (minutes)

    Input 2 Next Subscription (minutes)

    0 Input 1 subscribes to target

    21 (Input 1) 10

    0 Target broadcasts COV notification because Input 1 subscribed

    21 21 10 + 11, so keep current value of 10

    2 Input 2 subscribes to target

    21 (Input 2) 10 - 2 = 8 10

    0 Target broadcasts COV notification because Input 2 subscribed

    21 21 > 8 + 11, so add 10 to current value of 8

    8 + 10 = 18

    21 10 + 11, so keep current value of 10

    3 21 - 3 = 18 18 - 3 = 15 10 - 3 = 7

    Appendix E - COV subscription details

  • BACnet Integration Guide Rev. 9/28/2011 25 2011 Automated Logic Corporation

    Elapsed time (minutes)

    Action Target Lifetime TimeRemaining (minutes)

    Input 1 Next Subscription (minutes)

    Input 2 Next Subscription (minutes)

    0 Target broadcasts COV notification because value changed

    18 18 15 + 11 so keep current value of 15

    18 7 + 11 so keep current value of 7

    7 18 - 7 = 11 15 - 7 = 8 7 - 7 = 0 resubscribe

    0 Input 2 resubscribes

    21 (Input 2) 8 10

    0 Target broadcasts COV notification because Input 2 subscribed

    21 21 > 8 + 11, so add 10 to current value

    8 + 10 = 18

    21 10 + 11, so keep current value of 10

    Input 2 keeps the subscription service active at the target with a minimum of network traffic.

    NOTE If an input receives COV notification with a target TimeRemaining < 11, which could happen if the last subscribing input loses communication with the target, the input resubscribes immediately.

    COV notification rate COV notifications from a BACnet object property are controlled by that property's BACnet COV_Increment. When the absolute value of the difference between the property's Present_Value and the value sent in the last COV notification is greater than the COV_Increment, the object broadcasts a COV notification. For ALC controllers, the rate of notifications is further limited by two internal processes.

    1 The control program's execution rate determines how often the check against COV_Increment is performed.

    2 The controller's pending COV Notification task has built-in delays to prevent COV notifications from consuming the controller's CPU processing time.

    The built-in delays are as follows:

    If more than 15 COV notifications are pending delivery, the controller inserts a 50 millisecond delay after each set of 15 notifications. Once the entire list of pending notifications is serviced, the controller inserts another 50 millisecond delay. This results in a maximum COV notification rate of 300 COV notifications per second per ALC controller.

    OverviewBefore-you-begin checklistThe integration process1 Discover BACnet networks, devices, and objects2 Create a control program3 Edit a control program4 Configure Display microblocks5 Configure Network Input and Total Analog microblocksMethod 1: BACnet COV subscriptionsMethod 2: PollingTo speed detection of a dead device

    6 Connect the third-party device to the ALC controllerTo wire a BACnet/ARC156 deviceTo wire a BACnet MS/TP deviceTo wire a BACnet PTP device

    7 Download the BACnet driver8 Verify the controller is set up correctlyTo capture ARCNET or MS/TP communicationTo capture BACnet/IP or BACnet/Ethernet communication

    Appendix A - BACnet addressesAppendix B - To reuse a control programAppendix C - Third-party points behind NAT routersAppendix D - Point packsAppendix E - COV subscription details