Lochinvar Bacnet Manual

Download as pdf or txt
Download as pdf or txt
You are on page 1of 28

FB-MODB_100161012_2000020084_Rev M

MODBUS AND BACNET


COMMUNICATION
INSTRUCTIONS
Crest Models: 751 - 6001

This manual must only be used


 WARNING by a qualified heating installer /
service technician. Read all
instructions, including this manual,
the Installation and Operation
Manual, and the Service Manual,
before installing. Perform steps in
the order given. Failure to comply
could result in severe personal
injury, death, or substantial property
damage.

Save this manual for future reference.


Contents
1. INTRODUCTION 4. BACNET CONFIGURATION ....................................... ..9
Definitions .................................................................... 2 Addressing ................................................................... ..9
Minimum System Requirements.................................. 2 Timing Specifications ................................................... 10
2. MODBUS CONFIGURATION Communication Board Diagnostics ............................. 10
Addressing ................................................................... 3 Internal Faults ............................................................. 10
Timing Specifications ................................................... 4 5. BACnet MEMORY MAP
Parity............................................................................ 4 Primary Data Tables .................................................... 11
Data Transmission Mode............................................. 4 Crest Boiler Memory Map........................................11-12
ModBus Board Diagnostics ......................................... 4 Input Registers ....................................................... . 8
Internal Faults......................................................... 4 Holding Registers ................................................... 12
ModBus Function Set ............................................. 5 6. WIRING REQUIREMENTS
ModBus Exception Codes ........................................... 6 Physical Wiring ............................................................ 13
3. MODBUS MEMORY MAP Typical Boiler System Wiring .................................. 14-17
Primary Data Tables .................................................... . 7 7. UNIT OPERATION
Crest Boiler Memory Map ............................................ 7-8 Unit Operation with ModBus and BACnet
Input Registers ....................................................... . 8 Communications.................................................... 18-21
Holding Registers ................................................... . 8 8. TROUBLESHOOTING........................................... 22-25
Configuration Bits ........................................................ . 8 Revision Notes ................................................... Back Cover

1 Introduction
The information contained in this manual provides general guidelines for the implementation of ModBus / BACnet
communication with the Lochinvar Crest boiler.
All ModBus networks are implemented utilizing a master-slave arrangement where all Crest boilers are slaves and the master
is a building automation system capable of communicating over RS-485 serial connections. BACnet networks are implemented
using a token passing process where multiple masters and slaves share a common RS-485 bus. The Lochinvar BACnet interface
is a master only.

Definitions
Abbreviation or Acronym Meaning
ASCII American Standard Code for Information Interchange
BACnet A data communication protocol for Building Automation and Control Networks
BAS Building Automation System
Baud (Baud Rate) Number of data bits transmitted per second (bps)
EMS Energy Management System
FDX Full-Duplex
HDX Half-Duplex
Hex Hexadecimal Number (0 - 9, A - F)
I/O Box Input/Output (I/O)
LSB Least Significant Byte
ModBus® A serial, half-duplex data transmission protocol developed by AEG Modicon
MSB Most Significant Byte
A standard for serial, full-duplex (FDX) transmission of data based on the RS232
RS232
Standard
RS485 A standard for serial transmission of data based on the RS-485 Standard
RTU Remote Terminal Unit

Minimum System Requirements


• BAS system or computer with a serial or USB port with a converter to RS-485.
Shielded twisted pair communication cable.

2
ModBus and BACnet Instructions

2 ModBus Configuration
The ModBus or BACnet communication board is equipped with a set of ten dip switches that are used to set the board
configuration (address, baud rate, and parity settings). The first eight are used to set the address of each board. The ninth is used
to set the baud rate. The tenth is used to set the parity.

Figure 2-1_Communication Board

DIP SWITCHES

LED’S

Addressing
The ModBus addressing space is comprised of 256 different Example:
addresss. To set the address of the ModBus board to 50, dip switches 2, 5,
• 0 is reserved for broadcast messages from the master and 6 have to be set to the 1 position. The address is determined
device by adding the values of all the dip switches together.
• 1 - 247 are free to use for each unique device
Address = Value of Dip switch 1 + Value of Dip switch 2 +
• 248 - 255 are reserved
Value of Dip switch 3 + Value of Dip switch 4 + Value of Dip
To set the ModBus address the dip switches can be set in switch 5 + Value of Dip switch 6 + Value of Dip switch 7 +
either the 0 position or the 1 position. For switches set to Value of Dip switch 8
the 1 position their value will be added together to determine
In this example:
the address.
Address = 0 + 2 + 0 + 0 + 16 + 32 + 0 + 0 = 50
For each switch set to the 1 position it has the following value:
Dip switch 1 = 1
Dip switch 2 = 2
Dip switch 3 = 4
Dip switch 4 = 8
Dip switch 5 = 16
Dip switch 6 = 32
Dip switch 7 = 64
Dip switch 8 = 128

Any dip switch set to 0 has a value equal to 0.

3
ModBus and BACnet Instructions

2 Modbus Configuration
Timing Specifications Data Transmission Mode
The baud rate for the ModBus board is selectable with Dip Many ModBus bus master devices can be configured to
switch #9. transmit data in either ModBus RTU or ModBus ASCII modes.
1 = 19200 bps Since RTU messages can be formatted to use fewer data bits and
0 = 9600 bps are therefore more efficient, RTU has been chosen to be used
with all Lochinvar ModBus communication. Please ensure that
Each message is started by at least 3.5 character times of the master device is transmitting ModBus RTU.
silence. The maximum delay between frames is 1.5 character
times. ModBus Board Diagnostics
When the system temperature and/or tank temperature The ModBus board is equipped with three LED’s for visual
is provided by the BAS to the boiler, it is critical that diagnostics: Two yellow LED’s and one green. One yellow LED
the temperature be updated every few seconds. If the (D5) is used to indicate transmission of data. The other yellow
boiler does not receive updated temperatures within a LED (D6) is used to indicate reception of data. The green LED
timeout period (installer adjustable), the control will revert (D7) is used to show internal faults.
to using its own sensor inputs (if sensors are connected).
The timeout is programmable by pressing the MAIN Internal Faults:
MENU>>SETUP>>MODBUS buttons. The timeout is Normal Operation = 1 second bright, 1 second dim
adjustable between 5 and 120 seconds. The default timeout Controller Fault = Continuously on
is 10 seconds. No Burner Control Communication = 0.5 seconds on, 1.5
When the BAS is not providing either of these temperatures, seconds off
but is still controlling the boiler (such as providing a No ModBus Communication = 1.5 seconds on, 0.5 seconds
modulation command), the BAS must refresh these off
commands at least every 4 minutes. If the commands are
not refreshed, the boiler will revert to operating based on its ModBus Communication
own inputs. The ModBus communication commands and exception codes
that are supported by the ModBus communication board can
Parity be found on pages 5 and 6 of this manual.

Parity is set by the position of Dip switch #10.


0 = No Parity
1 = Even Parity
If No Parity is selected there will be two stop bits, otherwise
there will be one.

4
ModBus and BACnet Instructions

2 ModBus Configuration (continued)

ModBus Function Set

Function Sub Function


HEX Description
Dec HEX Dec
1 01 Read Coil Status
2 02 Read Input Status
3 03 Read Holding Registers
4 04 Read Input Registers
5 05 Force Single Coil
6 06 Preset Single Register
7 07 Read Exception Status
8 08 0 00 Diagnostic - Return Query Data
1 01 Diagnostic - Restart Communication
2 02 Diagnostic - Return Diagnostic Register
4 04 Diagnostic - Force Listen Mode
Diagnostic - Clear Counters and Diagnostic
10 0A
Registers
11 0B Diagnostic - Return Bus Message Count
12 0C Diagnostic - Bus Communication Error Count
13 0D Diagnostic - Bus Exception Error Count

14 0E Diagnostic - Return Slave Message Count

15 0F Diagnostic - Return Communication Error Count


16 10 Diagnostic - Return Slave NAK Count
17 11 Diagnostic - Return Slave Busy Count
18 12 Diagnostic - Return Bus Character Overrun Count
20 14 Diagnostic - Clear Overrun Counter and Flag
11 0B Get Communication Event Counter
12 0C Get Communication Event Log
15 0F Write Multiple Coils
16 10 Write Multiple Registers
17 11 Report Slave ID
23 17 Read / Write Multiple Registers

5
ModBus and BACnet Instructions

2 ModBus Configuration
ModBus Exception Codes

MODBUS / BACnet Exception Codes


Code Name Meaning
The function code received in the query is not an allowable action for the server
(or slave). This may be because the function code is only applicable to newer
01 ILLEGAL FUNCTION devices, and was not implemented in the unit selected. It could also indicate that
the server (or slave) is in the wrong state to process a request of this type, for
example because it is unconfigured and is being asked to return register values.

The data address received in the query is not an allowable address for the
server (or slave). More specifically, the combination of reference number and
transfer length is invalid. For a controller with 100 registers, the PDU addresses
the first register as 0, and the last one as 99. If a request is submittted with a
starting register address of 96 and a quantity of registers of 4, then this request
02 ILLEGAL DATA ADDRESS
will successfully operate (address-wise at least) on registers 96, 97, 98, 99. If
a request is submitted with a starting register address of 96 and a quantity of
registers of 5, then this request will fail with Exception Code 0x02 “Illegal Data
Address” since it attempts to operate on registers 96, 97, 98, 99 and 100, and
there is no register with address 100.

A value contained in the query data field is not an allowable value for server
(or slave). This indicates a fault in the structure of the remainder of a complex
request, such as that the implied length is incorrect. It specifically does NOT
03 ILLEGAL DATA VALUE
mean that a data item submitted for storage in a register has a value outside the
expectation of the application program, since the MODBUS protocol is unaware of
the significance of any particular value of any particular register.

An unrecoverable error occurred while the server (or slave) was attempting to
04 SLAVE DEVICE FAILURE
perform the requested action.

Specialized use in conjunction with programming commands. The server (or


slave) has accepted the request and is processing it, but a long duration of time
05 ACKNOWLEDGE will be required to do so. This response is returned to prevent a timeout error from
occurring in the client (or master). The client (or master) can next issue a Poll
Program Complete message to determine if processing is completed.

Specialized use in conjunction with programming commands. The server (or


06 SLAVE DEVICE BUSY slave) is engaged in processing a long -- duration program command. The client
(or master) should re-transmit the message later when the server (or slave) is free.

Specialized use in conjunction with function codes 20 and 21 and reference type
6, to indicate that the extended file area failed to pass a consistency check. The
08 MEMORY PARITY ERROR server (or slave) attempted to read record file, but detected a parity error in the
memory. The client (or master) can retry the request, but service may be required
on the server (or slave) device.

Specialized use in conjunction with gateways, indicates that the gateway was
unable to allocate an internal communication path from the input port to the
0A GATEWAY PATH UNAVAILABLE
output port for processing as the request. Usually means that the gateway is
misconfigured or overloaded.

Specialized use in conjunction with gateways, indicates that no response was


GATEWAY TARGET DEVICE
0B obtained from the target device. Usually means that the device is not present on
FAILED TO RESPOND
the network.

6
ModBus and BACnet Instructions

3 ModBus Memory Map


Primary Data Tables
Table Data Type Read / Write
Discrete Inputs Single Bit Read Only
Coils Single Bit Read / Write
Input Registers 16-Bit Word Read Only
Holding Registers 16 Bit Word Read / Write

Crest Boiler Memory Map


Coils
Address Description Default Unit Min. Max. Resolution
00001 Boiler Enable 0 1=ON / 0=OFF 0 1 1
00005 Tank Thermostat 0 1=ON / 0=OFF 0 1 1
Discrete Inputs
10001 Manual Reset High Limit 0 1=ON / 0=OFF 0 1 1
10002 Flow Switch 0 1=ON / 0=OFF 0 1 1
10003 Gas Pressure Switch 0 1=ON / 0=OFF 0 1 1
10004 Louver Proving Switch 0 1=ON / 0=OFF 0 1 1
10005 Blower Proving Switch 1* 0 1=ON / 0=OFF 0 1 1
10006 Blocked Drain Switch 0 1=ON / 0=OFF 0 1 1

10008 Flame 1 0 1=ON / 0=OFF 0 1 1


10009 Enable 0 1=ON / 0=OFF 0 1 1
10010 Tank Thermostat 0 1=ON / 0=OFF 0 1 1
10011 Blocked Flue 0 1=ON / 0=OFF 0 1 1
10013 Blower Proving Switch 2* 0 1=ON / 0=OFF 0 1 1
10021 Flue Damper Proving Switch 0 1=ON / 0=OFF 0 1 1
10023 Flame 2 0 1=ON / 0=OFF 0 1 1

10033 Run-time Contacts 0 1=ON / 0=OFF 0 1 1


10034 Alarm Contacts 0 1=ON / 0=OFF 0 1 1
10035 SH Pump 0 1=ON / 0=OFF 0 1 1
10036 HWG Pump 0 1=ON / 0=OFF 0 1 1
10037 Louver Relay 0 1=ON / 0=OFF 0 1 1
10038 Gas Valve 1 0 1=ON / 0=OFF 0 1 1
10039 System Pump 0 1=ON / 0=OFF 0 1 1

10044 Vent Damper Relay 0 1=ON / 0=OFF 0 1 1


10046 Gas Valve 2 0 1=ON / 0=OFF 0 1 1
10047 Transition Gas Valve 0 1=ON / 0=OFF 0 1 1
10049 Blower #1 Power 0 1=ON / 0=OFF 0 1 1
10050 Blower #2 Power* 0 1=ON / 0=OFF 0 1 1
10051 Spark Igniter 0 1=ON / 0=OFF 0 1 1
10052 Air Valve Trigger* 0 1=ON / 0=OFF 0 1 1
10053 Air Valve Proving* 0 1=ON / 0=OFF 0 1 1
* Crest Models 1501 - 6001 Only

7
ModBus and BACnet Instructions

3 ModBus Memory Map


Crest Boiler Memory Map
Input Registers
Address Description Default Unit Min. Max. Resolution
30001 Discrete Inputs 1 - 16 0 NA 0 65535 1
30002 Discrete Inputs 17 - 32 0 NA 0 65535 1
30003 Discrete Inputs 33 - 48 0 NA 0 65535 1
30004 System / Cascade Setpoint 0 Degrees Celsius 0 130 0,5
30005 System Pump Speed In 0 % 0 100 1
30006 Cascade Total Power 0 % 100 800 1
30007 Cascade Current Power 0 % 0 800 1
30008 Outlet Setpoint 0 Degrees Celsius 0 130 0,5
30009 Outlet Temperature 0 Degrees Celsius 0 130 0,1
30010 Inlet Temperature 0 Degrees Celsius -20 130 0,1
30011 Flue Temperature 0 Degrees Celsius -20 130 0,1
30012 Firing Rate 0 % 0 100 1
30013 Boiler Pump Speed Out 0 % 0 100 1
30014 Boiler Status Code 0 NA 0 65535 1
30015 Boiler Blocking Code 0 NA 0 65535 1
30016 Boiler Lockout Code 0 NA 0 65535 1
30026 Discrete Inputs 49 - 64 0 NA 0 65535 1
30027 Lock-out Error Leader* 0 NA 0 65535 1
30028 Lock-out Error Member 1* 0 NA 0 65535 1
30029 Lock-out Error Member 2* 0 NA 0 65535 1
30030 Lock-out Error Member 3* 0 NA 0 65535 1
30031 Lock-out Error Member 4* 0 NA 0 65535 1
30032 Lock-out Error Member 5* 0 NA 0 65535 1
30033 Lock-out Error Member 6* 0 NA 0 65535 1
30034 Lock-out Error Member 7* 0 NA 0 65535 1
Holding Registers
40001 Configuration 0 NA 0 65535 1
40002 Coils 0 NA 0 65535 1
0-10 Volt Input / Rate Command / Setpoint
40003 0 % 0 100 1
Command
40004 Tank Setpoint 0 Degrees Celsius 0 87,5 0,5
40005 Tank Temperature 0 Degrees Celsius -20 130 0,1
40006 Outdoor Temperature 0 Degrees Celsius -40 60 0,1
40007 System Supply Temperature 0 Degrees Celsius -20 130 0,1
40008 System Return Temperature 0 Degrees Celsius -20 130 0,1
* Crest Models 1501 - 6001 Only

Configuration Bits
Address 40001 contains configuration bits sent from the BAS to the boiler. These bits tell the boiler to use its own internal inputs,
or inputs from the BAS. When a bit is set to 1, the boiler will ignore the corresponding value contained internally, and expect
the BAS to write that value into the Holding Registers. The configuration bits are as follows:
Bit 0 (LSB): Boiler Enable Bit 4: System Supply Temperature
Bit 1: Tank Thermostat Bit 5: Outdoor Temperature
Bit 2: Rate Command / 10 - 10V Input / Setpoint Command Bit 6: Tank Temperature
Bit 3: Tank Setpoint Bit 7: System Return Temperature
Bit 8 - 15: Not Used (Default = 0)
8
ModBus and BACnet Instructions

4 BACnet Configuration
The BACnet communication board is equipped with a set of ten dip switches that are used to set the board configuration (address
and baud rate). The first eight are used to set the address of each board. The ninth and tenth are baud rate.

Figure 4-1_Communication Board

DIP SWITCHES

LED’S

Addressing Address = Value of Dip switch 1 + Value of Dip switch 2 +


Value of Dip switch 3 + Value of Dip switch 4 + Value of Dip
The BACnet local addressing space is comprised of 256 switch 5 + Value of Dip switch 6 + Value of Dip switch 7 +
different addresses. Value of Dip switch 8
• 255 is reserved for broadcast messages from a
In this example:
master device.
• 128 - 254 are free to use for slave devices only. Address = 0 + 2 + 0 + 0 + 16 + 32 + 0 + 0 = 50
• 0 - 127 are free to use for master or slave devices. The BACnet Device Instance is calculated by adding the
Since the BACnet communication board is a BACnet master, BACnet local address to 600000. Using the above example, the
address 127 is the highest address that can be used. Device Instance will be:
To set the BACnet local address, the dip switches can be set Device Instance = 610000 + 50 = 610050
in either the 0 position or the 1 position. For switches set to The base address (610000 in this example) is model dependant
the 1 position their value will be added together to determine and can be changed by the integrator. It can be set to any value
the address. between 0 and 4194048. The resulting device instance will be
For each switch set to the 1 position it has the following value: this value + the local address, as before. Once the base address
is changed, it can be reset back to the default base address
Dip switch 1 = 1
(610000 in this example) using the following procedure:
Dip switch 2 = 2
Dip switch 3 = 4 1. Turn OFF power to the interface board.
Dip switch 4 = 8 2. Set Dip switches 1 - 8 to the 1 position.
Dip switch 5 = 16
Dip switch 6 = 32 3. Turn ON power to the interface board.
Dip switch 7 = 64 4. After a few seconds, turn OFF power to the interface board.
Dip switch 8 = 128
5. Set Dip switches 1 - 7 to the desired local address. Set Dip
Any dip switch set to 0 has a value equal to 0. switch 8 to the 0 position.
Example: 6. Turn ON power to the interface board.
To set the address of the BACnet board to 50, dip switches Device Name
2, 5, and 6 have to be set to the 1 position. The address
The default device name is “MTR-01 BACnet.” This can be
is determined by adding the values of all the dip switches
changed by the integrator as desired.
together.
9
ModBus and BACnet Instructions

4 BACnet Configuration
Timing Specifications Communication Board Diagnostics
The baud rate for the BACnet board is selectable with Dip The Communication board is equipped with three LED’s for
switches #9 and #10. visual diagnostics: Two yellow LED’s and one green. One
yellow LED (D5) is used to indicate transmission of data. The
other yellow LED (D6) is used to indicate reception of data.
Switch #9 Switch#10 Baud Rate The green LED (D7) is used to show internal faults.
OFF OFF 9600
Internal Faults:
ON OFF 19200
Normal Operation = 1 second bright, 1 second dim
OFF ON 38400 Controller Fault = Continuously on
ON ON 76800 No Burner Control Communication = 0.5 seconds on, 1.5
seconds off
When the system temperature and/or tank temperature No BACnet Communication = 1.5 seconds on, 0.5 seconds
is provided by the BAS to the boiler, it is critical that the off.
temperature be updated every few seconds. If the boiler
does not receive updated temperatures within a timeout
period (installer adjustable), the control will revert to
using its own sensor inputs (if sensors are connected).
The timeout is programmable by pressing the MAIN
MENU>>SETUP>>MODBUS buttons. The timeout is
adjustable between 5 and 120 seconds. The default timeout
is 10 seconds.

When the BAS is not providing either of these temperatures, but


is still controlling the boiler (such as providing a modulation
command), the BAS must refresh these commands at least
every 4 minutes. If the commands are not refreshed, the
boiler will revert to operating based on its own inputs.

10
ModBus and BACnet Instructions

5 BACnet Memory Map


Primary Data Tables
Object Type Data Type Read / Write
Binary Input (BI) Single Bit Read Only
Binary Value (BV) Single Bit Read / Write
Analog Input (AI) 16-Bit Word Read Only
Analog Value (AV) 16 Bit Word Read / Write

Memory Map
Object Object
Object Name Units Min Max Resolution
Type Instance
Binary Values
Boiler Enable BV 0 none 0 1 1
Tank Thermostat BV 4 none 0 1 1
Binary Inputs
Manual Reset High Limit BI 0 none 0 1 1
Flow Switch BI 1 none 0 1 1
Gas Pressure Switch BI 2 none 0 1 1
Louver Proving Switch BI 3 none 0 1 1
Air Pressure Switch BI 4 none 0 1 1
Blocked Drain Switch BI 5 none 0 1 1
Flame 1 BI 7 none 0 1 1
Enable BI 8 none 0 1 1
Tank Thermostat BI 9 none 0 1 1
Fan 1 Proving Switch BI 10 none 0 1 1
Fan 2 Proving Switch BI 12 none 0 1 1
Flue Damper Switch BI 20 none 0 1 1
Flame 2 BI 22 none 0 1 1
Run Time Contacts BI 32 none 0 1 1
Alarm Contacts BI 33 none 0 1 1
Boiler Pump BI 34 none 0 1 1
DHW Pump BI 35 none 0 1 1
Louver Relay BI 36 none 0 1 1
Gas Valve 1 BI 37 none 0 1 1
System Pump BI 38 none 0 1 1
Flue Damper Output BI 43 none 0 1 1
Gas Valve 2 BI 45 none 0 1 1
Transition Gas Valve** BI 46 none 0 1 1
Main Fan 1 BI 48 none 0 1 1
Main Fan 2* BI 49 none 0 1 1
External Spark / HSI BI 50 none 0 1 1
Air Valve Trigger** BI 51 none 0 1 1
Air Valve Proving** BI 52 none 0 1 1
* Crest Models 2501 - 6001 Only
** Crest Models 751- 1501 Only
11
ModBus and BACnet Instructions

5 BACnet Memory Map


Memory Map (continued)

Object Object
Object Name Units Min Max Resolution
Type Instance
Inputs
Binary Inputs 0-15 AI 0 none 0 65535 1
Binary Inputs 16-31 AI 1 none 0 65535 1
Binary Inputs 32-47 AI 2 none 0 65535 1
System / Cascade Setpoint AI 3 Deg. C 0 130 0.5
System Pump Speed AI 4 Percent 0 100 1
Cascade Total Power AI 5 Percent 100 800 1
Cascade Current Power AI 6 Percent 0 800 1
Outlet Setpoint AI 7 Deg C 0 130 0,5
Outlet Temperature AI 8 Deg C 0 130 0,1
Inlet Temperature AI 9 Deg C -20 130 0,1
Flue Temperature AI 10 Deg C -20 130 0,1
Firing Rate AI 11 Percent 0 100 1
Boiler Pump Speed AI 12 Percent 0 100 1
Boiler Status Code AI 13 none 0 65535 1
Boiler Blocking Code AI 14 none 0 65535 1
Boiler Lockout Code AI 15 none 0 65535 1
Binary Inputs 48-63 AI 25 none 0 65535 1
Lock-Out Error Leader AI 26 none 0 1 1
Lock-Out Error Member 1 AI 27 none 0 1 1
Lock-Out Error Member 2 AI 28 none 0 1 1
Lock-Out Error Member 3 AI 29 none 0 1 1
Lock-Out Error Member 4 AI 30 none 0 1 1
Lock-Out Error Member 5 AI 31 none 0 1 1
Lock-Out Error Member 6 AI 32 none 0 1 1
Lock-Out Error Member 7 AI 33 none 0 1 1
Analog Values
Configuration AI 0 none 0 65535 1
Coils AI 1 none 0 65535 1
0-10 Volt Input / Rate Command / Setpoint Command AI 2 Percent 0 100 1
Tank Setpoint AI 3 Deg C 0 87,5 0,5
Tank Temperature AI 4 Deg C -20 130 0,1
Outdoor Temperature AI 5 Deg C -40 60 0,1
System Supply Temperature AI 6 Deg C -20 130 0,1
System Return Temperature AI 7 Deg C -20 130 0,1

12
ModBus and BACnet Instructions

6 Wiring Requirements
Note that when the System Supply / System Return
Figure 6-1_Terminal Strip Connections
Temperature and/or the Tank Temperature are provided by
the BAS, they need to be refreshed every few seconds. This is

FROM PREVIOUS BOILER


required in order to prevent unwanted fluctuations in these

SYSTEM RETURN SENSOR


SYSTEM SUPPLY SENSOR

COMMUNICATION BUS
temperatures. If these values are not provided every few
seconds (timeout is programmable), the boiler will revert to

TO NEXT BOILER

OUTDOOR SENSOR
its own internal control. If neither of these temperatures is

SYSTEM PUMP

TANK SENSOR

0-10V OUTPUT
BOILER PUMP
provided by the BAS, but any of the other control signals are

0-10V INPUT
being provided, the BAS will still need to refresh these inputs

BAS
at least every 4 minutes.

SHIELD

SHIELD

SHIELD
Physical Wiring

A
B
B
A

B
A
RS-485 Communication Bus
• Maximum Length = 4000 feet
• Cable Specification = 24 AWG / A,B (twisted pair)
and GND Shielded, with characteristic Impedance =
120 ohm
• Maximum Load = 32 units (32 nodes)

NOTE: Cable must be terminated with 120 ohm impedance


matching resistor on each end.
A + (positive)
B - (negative)
SHIELD
B
A

36 - SYSTEM PUMP

26 SYSTEM RETURN

24 - BOILER PUMP
28 SYSTEM SUPPLY
CASCADE

OUTDOOR
SENSOR

SENSOR

SENSOR

SENSOR
TANK

RATE
OUT

OUT
BMS
IN

IN

BAS
40 SHIELD

37 SHIELD

20 SHIELD

17 SHIELD
38 A

18 A
35 +

33 +

23 +

21 +
39 B

19 B
34 -

22 -
32
31
30
29

27

25
THERMOSTAT
CONTACTS

CONTACTS
RUN TIME

SWITCH 1

SWITCH 2
PROVING
LOUVER

LOUVER
ENABLE
ALARM

RELAY
TANK

AUX

AUX
10
11
12
13
14
15
16
1
2
3
4
5
6
7
8
9
MANAGEMENT

AUX

AUX
RELAY
SYSTEM

LOUVER

SWITCH

LOUVER
ENABLING
BUILDING

TANK

DEVICE

PROVING

SWITCH 1

SWITCH 2
THERMOSTAT

13
ModBus and BACnet Instructions

6 Wiring Requirements
Figure 6-2_Control Inputs

HWG THERMOSTAT /
SENSOR

ENABLING DEVICE

CASCADE

LOW VOLTAGE
LOUVER PROVING SWITCH CONNECTION
BOARD
SYSTEM SENSOR -
SUPPLY

SYSTEM SENSOR -
RETURN

OUTDOOR SENSOR COMMUNICATION


BOARD
SEQUENCER / BUILDING
MANAGEMENT SYSTEM

AUX SWITCH 1 & 2

0-10 INPUT FROM


SMART CONTROL
SYSTEM PUMP MODULE
INLET TEMPERATURE
SENSOR
OUTLET TEMPERATURE /
HI-LIMIT SENSOR
FLUE GAS SENSOR

INLET AIR SENSORS

AIR PRESSURE SWITCH

MANUAL RESET
HIGH LIMIT

FLAME SENSOR 1 & 2

BLOCKED DRAIN SWITCH

GAS PRESSURE SWITCHES

LOW WATER CUTOFF

BLOWER PROVING
SWITCHES

VENT DAMPER
PROVING SWITCH

DISPLAY PANEL PC INTERFACE

14
ModBus and BACnet Instructions

6 Wiring Requirements (continued)

Figure 6-3_Control Outputs


0-10V OUTPUT TO
BOILER PUMP

ALARM CONTACTS

LOW VOLTAGE
CONNECTION LOUVER RELAY
BOARD
RUN TIME CONTACTS

BOILER RATE OUTPUT

SEQUENCER / BUILDING
LINE VOLTAGE MANAGEMENT SYSTEM
TERMINAL
STRIP
N

SUPPLY
120V
L

SYSTEM PUMP

MAX. 1.5 AMPS PER CONNECTION


FIELD SUPPLIED CONTACTOR MUST

BOILER PUMP
BE INSTALLED

DHW PUMP

BOILER PUMP
CONTACTOR

SYSTEM PUMP
CONTACTOR

HWG PUMP
CONTACTOR

IGNITOR

BLOWERS

SMART CONTROL GAS VALVES


MODULE

VENT DAMPER

DISPLAY PANEL

PC INTERFACE

15
ModBus and BACnet Instructions

6 Wiring Requirements
Figure 6-4_Control Location

COMMUNICATION
BOARD

CONTROLLER

Typical Boiler System Wiring

Physical Configuration: Cascade without Individual Monitoring

BACnet or Modbus RS485 Port on Gateway or Building System

BACnet or Modbus RS485 Communication Bus

Cascade Daisy Chain Connection

16
ModBus and BACnet Instructions

6 Wiring Requirements (continued)

Physical Configuration: Cascade with individual Monitoring

BACnet or Modbus RS485 Port on Gateway or Building System

BACnet or Modbus RS485 Communication Bus

Cascade Daisy Chain Connection

Physical Configuration: Direct Control

BACnet or Modbus RS485 Port on Gateway or Building System

BACnet or Modbus RS485 Communication Bus

17
ModBus and BACnet Instructions

7 Unit Operation
Unit Operation with ModBus / BACnet Communications
To control a Crest boiler through a Building Management System communicating through ModBus or BACnet, the Crest
Demand Configuration must be set to one of three options. These configurations allow different control points for a variety of
applications. The configuration can be set by selecting Main Menu>>Setup>>BMS.

The Crest boiler is equipped with a ModBus communication timer. This timer is programmable from 0 - 120 seconds. The
timer can be programmed from the ModBus Setup Menu by selecting Main Menu>>Setup>>ModBus. The purpose of the timer
is to ensure proper temperature data is communicated to the boiler in a timely manner. Additionally, it will provide for fail
safe operation should ModBus communication be lost. This timer will cause the unit to revert back to internal unit controls
should the ModBus communication be interrupted longer than the ModBus timer. The timer is reset every time a ModBus write
command is received with updated temperatures or commands. It is the recommendation of Lochinvar that this timer be set to
the shortest value possible.

When controlling a Crest boiler through a Building Automation System (BAS), it is very important to ensure that the correct
configuration bits are sent to holding register 40001 or Object AV0, and that the correct data and enable signals are sent to
holding registers 40002 - 40007 or Objects AV1 - AV6, per the demand configuration.

Demand Configuration: ENABLE = ACTIVE; BMS = INACTIVE


In this configuration the unit is controlled by setting the setpoints locally on the boiler and providing an enable signal through
ModBus or BACnet communications.
All sensors and limiting devices should be hardwired to the terminal strip on the back of the unit excluding the enable signal.
This signal will be sent to the unit via ModBus.
The holding registers will need to be set as follows:

Object Holding Registers Definition Bit Value (HEX) Action


AV0 40001 Configuration 00 01 Set Configuration to read 40002

AV1 40002 Coils 00 01 Enables unit (00 00 disables unit)

NOTE: To ensure proper operation re-send the configuration bits to holding register 40001 or Object AV0 prior to issuing a
command.

18
ModBus and BACnet Instructions

7 Unit Operation (continued)

Demand Configuration: ENABLE = ACTIVE; BMS = ACTIVE

In this configuration the unit is controlled by providing an enable signal. The setpoint command will be determined by the
parameters in the control and a rate command through ModBus or BACnet communications.
The rate command will be 0 - 100% of modulation.
All sensors and limiting devices should be hardwired to the terminal strip on the back of the unit excluding the enable and 0-10V
BMS signal. These signals will be sent to the unit via ModBus or BACnet.
The holding registers will need to be set as follows:

Object Holding Registers Definition Bit Value (HEX) Action


AV0 40001 Configuration 00 05 Set Configuration to read 40002 & 3

AV1 40002 Coils 00 01 Enables unit (00 00 disables unit)

AV2 40003 Rate Command 00 ## Sets Modulation % or Setpoint

NOTE: To ensure proper operation re-send the configuration bits to holding register 40001 or Object AV0 prior to issuing a
command.
For proper hexadecimal conversion of rate percentage, please refer to the Rate and Temperature Conversion section on page 17
of this manual.

Demand Configuration: ENABLE = INACTIVE; BMS = ACTIVE


In this configuration the unit is controlled by setting the modulation setpoint from 0 - 100%, or the setpoint. The setpoint
command will be determined by the parameters in the control.

Rate command will be 0 - 100% of the modulation range.

All sensors and limiting devices should be hardwired to the terminal strip on the back of the unit excluding the 0 - 10Vdc signal.
This signal will be sent to the unit via ModBus or BACnet.

The holding registers will need to be set as follows:

Object Holding Registers Definition Bit Value (HEX) Action


AV0 40001 Configuration 00 04 Set Configuration to read 40003

AV1 40003 Rate Command 00 00 Sets Modulation % or Setpoint

NOTE: To ensure proper operation re-send the configuration bits to holding register 40001 or Object AV0 prior to issuing a
command.
For proper hexadecimal conversion of rate percentage, please refer to the Rate and Temperature Conversion section on page 17
of this manual.

Hot Water Generation

Hot water generation can be accomplished with one of two methods when a Crest boiler is connected to a BAS system, DHW
with direct control, and DHW with remote control.

DHW with direct control:

This is the typical installation with a hot water generator in close proximity to the boiler with the tank thermostat, or tank
temperature sensor, wired to the terminal strip of the unit.

19
ModBus and BACnet Instructions

7 Unit Operation
DHW with remote control:

This installation may or may not have the hot water generator in close proximity to the boiler. Its sensors and thermostat values
are only available through the ModBus or BACnet communication bus.

To ensure that the Crest boiler can properly respond to a call for hot water generation the following holding registers must be
set in addition to other commands:

Object Holding Registers Definition Bit Value (HEX) Action


AV0 40001 Configuration 00 4A Set Configuration to read 40002, 4 & 5
Enables Tank Tstat (00 00 disables
AV1 40002 Coils 00 08
unit)
AV3 40004 Tank Setpoint 0# ## Sets Setpoint

AV4 40005 Tank Temperature 0# ## Passes tank temp from remote sensor

NOTE: To ensure proper operation re-send the configuration bits to holding register 40001 or Object AV0 prior to issuing a
command.
For proper hexadecimal conversion of rate percentage, please refer to the Rate and Temperature Conversion section on page 17
of this manual.

Cascade
In order to operate the Crest boiler in Cascade with ModBus Monitoring Only
/ BACnet communications, configure the leader boiler per
the demand configurations in this manual. Connect the All Crest boilers are equipped with the communication board
remaining boilers in the cascade through the normal cascade and can be set up to operate with its own internal controls. If
communications wiring. Cascade control can then be necessary, ModBus / BACnet can be configured as a monitoring
accomplished automatically through the leader boiler. device by polling the communication board for the read only
variables.
Please note that with ModBus / BACnet communication
connected to only the leader boiler, total Cascade information
can be seen through the communications link. If you wish
to see all the individual temperatures of each unit in the
Cascade, each unit will have to have a communication board.
However, each unit can be monitored without the need to
control each one individually.

20
ModBus and BACnet Instructions

7 Unit Operation (continued)

Rate and Temperature Conversions: For Example:

Rate Send a setpoint of 110°F.

When issuing a rate command the rate can be communicated The formula to use for the interpolation is:
as percent modulation or a desired setpoint, depending on
the setting of the BMS Type in the BMS Setup Menu. Rate Command =

The proper data format for the modulation percentage is the (Desired Setpoint – BMS Temp at Low Analog Input) (High
direct conversion to hexadecimal. This conversion can be Voltage-Low Voltage) + Low Voltage
accomplished through online number based converters or (BMS Temp at High Analog Input – BMS Temp at Low
some scientific calculators. Analog Input)
For Example: From the default values:
Rate % HEX Desired Setpoint = 110
0 00 BMS Temp at Low Analog Input =68
20 14 BMS Temp at High Analog=158
High Voltage =10
45 2D
Low Voltage = 2
60 3C
80 50 [(110-69.8)(10-2)/(179.6-69.8)] + 2 = 4.92 Volts
95 5F (4.92/10) x 100 = 49.2
100 64
49 = 31 Hexadecimal
To send a desired setpoint, the hexadecimal value must be
A value of [00][31] in hexadecimal would be written to Holding
determined through linear interpolation of programmable
register 40003 to issue a command for a 110°F setpoint.
parameters on the BMS Setup Menu:
- BMS temperature set-point at low analog input Temperature
- BMS temperature set-point at high analog input The Crest boiler passes temperature data in degrees Celsius.
These variables set the temperature values corresponding to Also, to accommodate decimal places the decimal value must
the minimum and maximum voltage settings of the 0-10 volt be divided by 10.
signal. The defaults are as follows:
Here are the conversions to and from Celsius:
Tc = (5/9) * (Tf-32) Tf = (9/5) * Tc+32
DEFAULT
DEFAULT
PARAMETER VALUES Example:
Outdoor temperature from remote sensor on BAS System = 80°F
Deg C Deg F Voltages
80°F = 26.7°C
BMS temperature setpoint at
21 69.8 2 Data that needs to be transmitted is 26.7 * 10 = 267
low analog input
BMS temperature setpoint at
82 179.6 10 Decimal Binary HEX
high analog input
267 100001011 10B
Outlet temperature from unit sensor = 155°F
155°F = 68.3°C
Data transmitted from unit in HEX = 2AB = 683
683 ÷ 10 = 68.3 (°C)

Decimal Binary HEX


683 1010101011 2AB

21
ModBus and BACnet Instructions

8 Troubleshooting
Should you encounter problems communicating over Status Codes (Input Register 30014 or Analog Input AI13)
ModBus, the following items should be checked in this order:
2 = Heat Demand blocked due to high absolute outlet
1. Physical Layer temperature
2. Communications Configuration and Port Settings 3 = Heat Demand blocked due to high absolute flue
3. ModBus Error Codes temperature
4. Unit Status / Blocking / Lockout Codes 4 = Heat Demand blocked due to high absolute Delta T
(Outlet - Inlet)
Physical Layer 7 = Heat Demand blocked due to changed Personality Plug
1. Check that all components have power (Boiler, Gateway, 8 = Heat Demand blocked due to Low 24 VAC
BAS Master) 9 = Outdoor shutdown
2. Check all wire lengths. Are any drops too long? 10 = Block due to switch OFF boiler (ON/OFF of Display)
3. Check proper shield grounding 12 = Block due to line frequency
4. Check A, B terminal connections 16 = Service function
5. Check for Terminating Resistors (120 ohms) 19 = DHW function Storage Tank
6. Check for broken wires 21 = SH function Heat demand from Room Thermostat
22 = SH function Heat demand from Boiler Management
System
Communications
23 = SH function Heat demand from Cascade
1. Check Dip Switch Configuration of MTR-01 Board 30 = Heat demand activated by Freeze Protection
2. Check Baud Rate (9600, 19200) 32 = DHW Pump Delay
3. Check Parity 33 = SH Pump Delay
4. Check Slave ID 34 = No heat function (after pump delay)
5. Check Port Setting on Master, Gateway, and Computers 40 = Lockout

ModBus Error Codes Blocking Codes (Input Register 30015 or Analog Input AI14)
1. Check ModBus communication for error codes (see page 0= No blocking
6 for ModBus Exception Codes) 5= Blocking Due to Low 24 VAC Supply
2. Check ModBus PDU 6= Blocking MRHL is open
3. Check Slave ID 8= Blocking due to Switched OFF boiler (Display ENTER
4. Check ModBus Command switch)
5. Check Configuration bits for Holding Register 40001 10 = Blocking due to High Delta T
6. Check Commands and data for Holding Registers 14 = Blocking due to line frequency
40002 - 40007 15 = Blocking due to high flue temperature
11 = Blocking due to high outlet water temperature
Unit Status Codes 12 = Blocking due to anti-cycling time
See Codes in this section 13 = Blocking due to changed ID Plug
7 = Blocking due to high outdoor temperature
Boiler Status
The Crest boiler displays a boiler state code on the Building
Screen to help aid in troubleshooting. The boiler state
indicates what the boiler is actually doing. This state should
be compared to the command issued and what is expected.
If the boiler state does not agree with the command issued,
check communication and configuration.

22
ModBus and BACnet Instructions

8 Troubleshooting (continued)
Lockout Codes Description
(Input Register 30016 or Analog Input AI15)
The lockout code (Input Register 30016) is constantly changing during operation and should not be used for
NOTICE
lockout notification until the status code (Input Register 30014) indicates a code of 40.

5 = Analog to Digital converter input had changed too quickly


7 = Rapid Temperature Change on Pre-Mix Sensor 2 (S14)
8 = Rapid Temperature Change on Pre-Mix Sensor 1 (S13)
9 = Rapid Temperature Change on Pre-Mix Sensor 2 (S12)
10 = Rapid Temperature Change on Pre-Mix Sensor 1 (S11)
11 = Analog to Digital converter input is changed too quickly
12 = Rapid Temperature Change on Flue Sensor (S10)
13 = Rapid Temperature Change on Outlet Sensor (S9)
15 = Rapid Temperature Change on System Return Sensor (S7)
16 = Rapid Temperature Change on System Supply Sensor (S6)
17 = Rapid Temperature Change on Tank Sensor (S4)
18 = Rapid Temperature Change on Flue Sensor (S3)
19 = Rapid Temperature Change on Inlet Sensor (S2)
20 = Rapid Temperature Change on Outlet Sensor (S1)
25 = Pre-Mix Sensor 2 (S14)-Short
26 = Pre-Mix Sensor 1 (S13)-Short
27 = Pre-Mix Sensor 2 (S12)-Short
28 = Pre-Mix Sensor 1 (S11)-Short
29 = Flue Sensor (S10)-Short
30 = Outlet Sensor (S9) – Short
32 = System Return Temperature Sensor (S7) – Short
33 = System Supply Temperature Sensor (S6) – Short
34 = Tank Sensor (S4) – Short
35 = Flue Sensor (S3) – Short
36 = Inlet Sensor – Short
37 = Outlet Sensor (S1) – Short
38 = Temperature Measurement Error 2
39 = Temperature Measurement Error 1
45 = High temperature differential between S12 and S14
46 = High temperature differential between S11 and S13
48 = High temperature differential between S3 and S10
49 = High temperature differential between S1 and S9
50 = Internal Error
129 = Large Pre-Mix Temperature High
130 = Small Pre-Mix Temperature High
134 = Louvers Not Open
135 = Louvers Not Closed
137 = Large Blower Proving Switch Not Closed
139 = Large Blower Proving Switch Not Open
140 = Small Blower Proving Switch Not Open
145 = Large Blower Proving Switch Not Closed
146 = Small Blower Proving Switch Not Closed
148 = Large Blower Proving Switch Not Open
149 = Air Metering Valve Not Closed / Large Fan Speed Too Low
150 = Air Metering Valve Not Open / Large Fan Speed Too High
163 = Wrong Personality Plug
164 = Flame Current Circuit Failed
166 = Auto Reset High Limit
167 = Blocked Drain Switch Open
169 = Gas Pressure Switch Open

23
ModBus and BACnet Instructions

8 Troubleshooting
Lockout Codes Description
(Input Register 30016 or Analog Input AI15)
The lockout code (Input Register 30016) is constantly changing
NOTICE
during operation and should not be used for lockout notification until
the status code (Input Register 30014) indicates a code of 40.
170 = Low Water Cut-Off Open
177 = Flue Sensor Short
178 = Flue Sensor Open
179 = Inlet Sensor Short
180 = Inlet Sensor Open
192 = Outlet Sensor Short
193 = Outlet Sensor Open
201 = Internal Error
204 = Internal Error
205 = Parameters Programmed
206 = Error while programming Parameters
207 = Internal Error
228 = Pre-Mix Sensors Temperature Differential Too High
229 = Transition Flame / Flame Failure 2
230 = Fan / Small Fan Speed Low
231 = Fan / Small Fan Speed High
232 = Flame Failure 1
233 = Ignition Failure
235 = Flue Damper / Small Blower Proving Switch Not Open
236 = Flue Damper / Small Blower Proving Switch Not Closed
238 = Air Pressure Switch Open
239 = Main Flame / Flame 1 Out of Sequence
240 = External Manual Reset High Limit
241 = Transition Flame / Flame 2 Out of Sequence
243 = Transition Gas Valve Relay Failure
244 = Large Gas Valve Relay Failure
245 = Small Gas Valve Relay Failure
246 = Internal Manual Reset High Limit
247 = High Flue Temperature
253 = High Combustion Air Temperature
254 = Display Fault

24
ModBus and BACnet Instructions

8 Troubleshooting (continued)

Installation / Replacement Procedure


Figure 8-2_Control Panel Communication Board
1. Turn OFF the main electrical power to the appliance.
2. Turn OFF the main manual gas shutoff to the appliance.
3. Unplug the three (3) wire harnesses on the
communication board (see FIG. 8-1).
4. Unscrew the four (4) mounting nuts on the communication
board and set aside. Remove the communication board
(see FIG. 8-2).
5. Replace / install the new communication board.
6. Replace the four (4) mounting nuts removed in Step 4. UNSCREW THE FOUR (4)
MOUNTING NUTS ON THE
7. Reconnect all three (3) wire harnesses unplugged in COMMUNICATION BOARD
Step 3. AND SET ASIDE TO SECURE THE
NEW COMMUNICATION BOARD
8. Turn on the main electrical power and the main manual TO THE CONTROL PANEL
gas shutoff to the appliance.
9. Configure the communication board and unit controls
per this manual and resume operation.

Figure 8-1_Communication Board

1 UNPLUG THREE (3) WIRE HARNESSES

25
ModBus and BACnet Instructions

Notes

26
ModBus and BACnet Instructions

Notes

27
Revision Notes: Revision A (ECO #C08179) initial release.
Revision B (ECO C08542) reflects edits made (pages 7, 8 and 18) due to
changes made by SIT.
Revision C (ECO C10325) reflects the addition of version 4, software update
(page 8).
Revision D (ECO C10391) reflects the update of ladder and wiring diagrams
on pages 22 and 23.
Revision E (ECO C11613) reflects the addition of the lockout code notice on
page 19 (R05772) and the addition of models 4.0 and 5.0.

Revision F (ECO C17106) reflects the addition of models .75 - 1.25.

Revision G (ECO C17530) reflects the addition of BACnet information


(sections and images).

Revision H (Change #500001029) reflects the removal of the Wiring and


Ladder Diagrams.

Revision J (PCP #3000003566 / CN #500003622) reflects the addition of the


6.0 Btu Model.

Revision K (PCP# 3000007541 / CN# 500007580) reflects the addition of


references to A+ and B- on page 13.

Revision L (PCP# 3000008406 / CN# 500008361) reflects an update to the


addressing information of BACnet configuration on page 9.

Revision M (PCP# 3000025102 / CN# 500014948) reflects the addition of


Models 2501 - 6001.

FB-MODB_MM #100161012_DIR #2000020084_Rev M


06/18

You might also like