Micromod MODBUS RTU Communications Guide

MODBUS™ RTU Communications Guide
for use with MODCELL, MOD 30ML and Commander Products
MODBUS RTU

CONTENTS

Page
OVERVIEW ......................................................................................................................................................... 1
HARDWARE REQUIREMENTS.......................................................................................................................... 2
SERIAL INTERFACE CONSIDERATIONS .................................................................................................... 2
CABLE REQUIREMENTS .............................................................................................................................. 2
COMMUNICATIONS MODE........................................................................................................................... 2
RS-232 INTERFACE....................................................................................................................................... 3
RS-422 INTERFACE....................................................................................................................................... 3
RS-485 INTERFACE....................................................................................................................................... 3
BIAS RESISTORS................................................................................................................ ..........................3
TERMINATION RESISTORS ......................................................................................................................... 3
SOFTWARE BASICS.......................................................................................................................................... 5
MASTER/SLAVE RELATIONSHIP................................................................................................................. 5
MESSAGE RESPONSE TIMES ..................................................................................................................... 5
INSTRUMENT RESPONSE TIMES TO HOST COMMANDS........................................................................ 5
SOFTWARE DRIVERS................................................................................................................................... 6
MODBUS WITH MODCELL MLP AND MOD30ML.............................................................................................7
STANDARD PROTOCOL...............................................................................................................................7
EXTENDED PROTOCOL............................................................................................................................... 7
MOD 30ML COMMUNICATION CHANNELS................................................................................................. 7
USING ML AND CL BLOCKS:............................................................................................................................. 8
DIRECTING DATA WITH ML AND CL BLOCKS............................................................................................ 8
BLOCK CONNECTIONS................................................................................................................................ 9
USING MODBUS MODULES:........................................................................................................................... 10
MODULE LOCATION................................................................................................................................... 10
THE RS-485’S TERM (MASTER/SLAVE) SWITCH..................................................................................... 10
THE COM DEFAULTS SWITCH .................................................................................................................. 10
THE HIGH AND LOW SWITCHES............................................................................................................... 10
MODBUS MASTER........................................................................................................................................... 12
MASTER REQUIREMENTS......................................................................................................................... 12
DATA CONVERSION ................................................................................................................................... 12
SCALER BLOCK........................................................................................................................................... 12
INPUT CONVERT BLOCK ........................................................................................................................... 13
OUTPUT CONVERT BLOCK ....................................................................................................................... 13
MODBUS WITH COMMANDER SERIES INSTRUMENTS .............................................................................. 14
SCALING ANALOG VALUES....................................................................................................................... 14
COMMUNICATIONS CONFIGURATION..................................................................................................... 14
CONNECTION WITHIN THE NETWORK .................................................................................................... 14
HOST CONFIGURATION EXAMPLES............................................................................................................. 15
MODBUS WITH FIX AND COMMANDER 150............................................................................................. 15
MODBUS WITH FIX AND COMMANDER 300............................................................................................. 16
MODBUS WITH INTOUCH AND COMMANDER 300.................................................................................. 17
MODCELL MLP WITH TCP QUICKPANEL.................................................................................................. 18
PLC & Protocols........................................................................................................................................ 18
Tags .......................................................................................................................................................... 18
Addressing ................................................................................................................................................ 18
Scaling....................................................................................................................................................... 19
MOD30ML AND MODCELL MLP REFERENCE TABLES................................................................................ 20
WIRE CONNECTIONS...................................................................................................................................... 22
MODBUS MODULE TROUBLESHOOTING WITH MOD30ML AND MODCELL MLP..................................... 23
GLOSSARY....................................................................................................................................................... 25
i
MODBUS RTU
CONTENTS
TABLES
Page
Table 1. Cable Requirements .............................................................................................................................2
Table 2. Instrument Response Times.................................................................................................................5
Table 3. Software Drivers....................................................................................................................................6
Table 4. MOD30ML and Modcell MLP Port Numbers.......................................................................................10
Table 5. Integer Conversion - Signed to Unsigned...........................................................................................12
Table 6. MODBUS with FIX and Commander 150............................................................................................15
Table 7. MODBUS with FIX and Commander 300............................................................................................16
Table 8. MODBUS with InTouch and Commander 300....................................................................................17
Table 9. Wiring for RS-485 Full Duplex.............................................................................................................18
Table 10. TCP QuickPanel Addressing.............................................................................................................18
Table 11. MOD30ML and Modcell Multiloop Processor to Host Device or PC Sample Configuration Entries .20
Table 12. MODBUS Reference Information for MOD30 ML and Modcell Communications.............................21
Table 13. Wire Connections for RS-232 Devices..............................................................................................22
Table 14. Wire Connections for RS-485 (4 or 5-Wire) Devices ........................................................................22
Table 15. Wire Connections for RS-485 (2 or 3-Wire) Devices ........................................................................22
FIGURES
Page
Figure 1. RS-485 Biasing and Termination.........................................................................................................4
Figure 2. Extended and Standard MODBUS Lists..............................................................................................8
Figure 3. Block Connections...............................................................................................................................9
Figure 4. Module Switches................................................................................................................................11
ii
MODBUS RTU
COMUNICATIONS GUIDE

OVERVIEW

MODBUS RTU is a non-proprietary serial communications protocol that is widely used in the process control industry. The protocol was developed by Modicon for PLC communications and later released for public use. This protocol is available in all major Human Machine Interface (HMI) software packages and terminals. Many of the major controller and PLC manufacturers also offer MODBUS protocol as a standard or optional protocol in their instrumentation.
The hardware over which MODBUS RTU communications are performed is not defined by the protocol. MODBUS RTU is supported on RS-232, RS-422, RS-485, Ethernet and other electrical standards.
It should be noted that MODBUS RTU, MODBUS ASCII and MODBUS Plus are unique communication formats, and are not compatible with each other. This document will discuss MODBUS RTU only.
1
MODBUS RTU
COMUNICATIONS GUIDE

HARDWARE REQUIREMENTS

SERIAL INTERFACE CONSIDERATIONS
The Modbus protocol communicates with the instrumentation by means of an industry standard serial interface. This interface may be RS-232, RS-422 or RS-485. Some systems may also support the protocol over other busses or networks, such as Ethernet.
An RS-232 interface allows only two devices to be connected together. RS-422 supports 1 driver and up to 10 receivers on a single network. For bi-directional communications, special tri-state circuitry is provided on the drivers of some instrumentation, allowing 10 driver/receiver pairs. RS-485 supports up to 32 driver/receiver pairs. With special hardware, the RS-422 and RS-485 limits can be expanded to allow as many as 248 devices on a single network. Each device on a network must have a unique address, which may be soft­configured or set with switches. Address zero is reserved for broadcast messages from the host to all slaves. All devices on a network must also be configured with the same parameters, such as baud rate and parity.
In designing the communication architecture, one should consider communications performance when deciding how many devices to connect to a host port. Generally, nearly twice the performance can be achieved by splitting the devices from one port, onto two ports.
CABLE REQUIREMENTS
The type of wire to use is usually specified by the hardware manufacturer and will vary with required length. Wire with twisted pairs and an overall shield is used most often. The shield is tied to earth ground or chassis, and typically at one end only. The shield is not to be used as a signal common or ground. The table below lists typical cable recommendations.
Table 1. Cable Requirements
RS-232
Up to 15m (50ft) virtually any standard shielded twisted pair with drain
(Beldon 9502 or equivalent)
RS-422 and RS-485
Up to 6m (20ft) virtually any standard shielded or twisted pair Up to 300m (1000ft) 24 AWG twisted pair with overall foil shield with drain wire
(Beldon 9841 for 2-wire and 9502 for 4-wire or equiv.)
Up to 1200m (4000ft) 24 AWG twisted pair with foil shield and drain wire on each pair
(Beldon 9841 for 2-wire and 9729 for 4-wire or equiv.)
COMMUNICATIONS MODE
Communications can take place in full or half-duplex mode. The communications hardware must be able to support whatever mode the software is using. Half-duplex hardware shares the same lines for transmit and receive, whereas, full-duplex hardware has dedicated transmit and receive lines. MODBUS protocol uses half-duplex communications, regardless of the hardware. Full-duplex hardware is more widely supported by software drivers and devices, than half-duplex.
2
MODBUS RTU
COMUNICATIONS GUIDE
RS-232 INTERFACE
An RS-232 interface is rated for distances up to 15 meters (50 feet). At least three wires are required for an RS-232 interface. Wires are required for Transmit, Receive and Signal Ground. Some devices support additional wires for communication handshaking. RS-232 hardware is a full-duplex configuration, having separate Transmit and Receive lines.
RS-422 INTERFACE
An RS-422 interface requires at least four wires. Two wires each are used for Transmit and Receive. A fifth wire is usually required for Signal Ground, when connecting non-isolated devices together. Handshaking lines may also be supported by some hardware. This interface is full-duplex, allowing use of the same software drivers as for RS-232. The differential drivers allow for distances up to 1200 meters (4000 feet). The receivers of an RS-422 device are always enabled. For multi-drop operation, drivers must capable of tri-state operation.
RS-485 INTERFACE
An RS-485 interface requires at least two wires. In a two-wire configuration, the same pair of wires is used for Transmit and Receive. The two-wire configuration utilizes half-duplex communications. A four-wire configuration functions much like an RS-422 system, except the Transmit driver circuits are always taken off­line or tri-stated, when not in use. This tri-state feature reduces the load on the network, allowing more devices, without the need of special hardware. A fifth wire is usually required for Signal Ground, when connecting non-isolated devices together. Additional wires for handshaking may also be supported by some hardware. This interface also uses differential drivers, supporting distances up to 1200 meters (4000 feet).
BIAS RESISTORS
RS-422 and RS-485 networks often require bias, or pull-up and pull-down resistors. These resistors are used to stabilize the network. By definition, in a MODBUS RTU network, it is the responsibility of the Master to provide this function. Functionally, any device on the network may provide the bias stabilization. Biasing may also be installed external to the devices, with the appropriate resistors and power supply. If the Master is not the device providing this function, careful consideration must be given to the consequences of that device failing. If the Master is providing this function, and it fails, there would be no communications anyway. In some systems, bias resistors may be installed on two slaves, offering redundant biasing. This feature is available with MOD30ML and Modcell MLP modules (TERM switch). Some systems may function without these stabilizing resistors, but may be more susceptible to communication errors. Though the pull-up and pull­down resistors are the same, the value of these resistors varies from device to device. The actual recommended resistance may be calculated, and varies with the number of devices on the bus. Commander series instruments use 1.8KΩ, while MOD30ML and Modcell use 560Ω. The pull-up resistor is connected from the positive communication line to +5Vdc. The pull-down resistor is connected from the negative communication line to the power supply common.
TERMINATION RESISTORS
Termination resistors are often used to reduce reflections on the network. This problem occurs most with long wires and high baud rates. Due to variations in wire and equipment, whether or not to use these terminators is usually determined by system testing. The general rule is to add them only if needed. The resistors are typically 120Ω, and installed across the Transmit and Receive wire pairs. Normally, one resistor is installed at each end of each pair of wires. For two-wire installations, one resistor would be installed at each end. If bias stabilization resistors are not installed, use of these terminations will probably drown the signal, preventing communications.
3
MODBUS RTU
COMUNICATIONS GUIDE
2-Wire Configuration
4-Wire Configuration
Figure 1. RS-485 Biasing and Termination
4
MODBUS RTU
COMUNICATIONS GUIDE

SOFTWARE BASICS

MASTER/SLAVE RELATIONSHIP
A MODBUS RTU system consists of a Master and one or more Slave devices. Multiple Masters are not permitted on the same network. The Master is responsible for initiating all communications, therefore, no peer-to-peer capability is supported. With some hardware, it is possible to dynamically switch the device between Master and Slave modes. This capability allows multiple Masters, though not simultaneously. With special hardware, such as Phoenix Digital’s MPE Plus, having multiple Masters is possible, though it limits the communications to the basic “Standard” MODBUS commands. Using the MPE Plus will block extended MODBUS communications, including the Application Builder.
MESSAGE RESPONSE TIMES
The MODBUS RTU protocol relies on precise timing for reliable communications. The message structure is such that a 3.5 character or greater pause will be interpreted as the end of a message. The actual time varies with the baud rate. Conversely, most devices require a defined minimum amount of time between messages. Another factor to consider is that each device has its own response time. This response time can be anywhere from a few milliseconds to a few hundred milliseconds. The Host must be configured to allow adequate time for the slowest device to respond.
INSTRUMENT RESPONSE TIMES TO HOST COMMANDS
These times represent the maximum time from when the instrument receives a request from the master, to when it begins to send the response.
Table 2. Instrument Response Times
Device Max Response Time Device Max Response Time
C100 250 mSec C1900 250 mSec C150 250 mSec Modcell MLP 60 mSec * C200 250 mSec 2050R 100 mSec C300 180 mSec MOD30ML 60 mSec * C310 160 mSec MR250 125 mSec C500 125 mSec PR100 90 mSec
* NOTE: The response times for Modcell MLP and MOD30ML are for read
messages. Write messages may take longer. These instruments have a configurable Write Message Timeout parameter.
5
MODBUS RTU
COMUNICATIONS GUIDE
SOFTWARE DRIVERS
Table 3. Software Drivers
Driver Description Use With
1719S Standard MODBUS Driver PC-30 and GFW 1733S Extended MODBUS Driver PC-30 and GFW 2010S EMP 16-bit Standard and Extended MODBUS Driver FIX 5.x for Windows 3.x 2011S EMP 32-bit Standard and Extended MODBUS Driver FIX 6.x for Windows 95 and NT I/O Server Standard MODBUS GFW DDE Server Standard MODBUS Wonderware InTouch OPC Server Standard and Extended MODBUS GFW32, FIX Dynamics and
other OPC Clients MODCELL Enhanced Standard MODBUS Citect MODBUS Standard MODBUS Citect and others
6
MODBUS RTU
COMUNICATIONS GUIDE
MODBUS WITH MODCELL MLP AND MOD30ML
STANDARD PROTOCOL
“Standard” MODBUS supports single-register, 16-bit integer values. Modcell and MOD30ML floating-point data may be converted to this format with ML blocks. For maximum resolution, specify an actual engineering­unit range in the ML block. If the engineering range is greater than 65535, a scaled range must be selected. Some standard MODBUS drivers may be capable of reading floating-point data, using a 32-bit two-register format.
The standard MODBUS driver (MB1) for Fix DMACS does not support the floating point format from Modcell MLP and MOD30ML.
The standard MODBUS driver for PC-30 and GFW supports Modcell MLP and MOD30ML floating point signals. A MODBUS I/O Server is also available for GFW, supporting floating-point.
EXTENDED PROTOCOL
Modcell and MOD30ML devices support an extended protocol, in addition to standard MODBUS RTU as a subset. If the Master is capable of utilizing the extended features, additional data types, diagnostics and event information may be obtained. The extended protocol also supports the Status Page in the Application Builder and very fast uploads and downloads. Note that the 2-wire RS-485 module does not support these features.
The Extended MODBUS protocol implemented in Modcell and MOD30ML utilizes a user-defined MODBUS command, and custom drivers are required in the host to support it. Custom drivers supporting this Extended MODBUS protocol are available for PC-30, Genesis for Windows and FIX DMACS. The PC-30/GFW driver supports only Extended MODBUS. The FIX drivers also support standard MODBUS devices, even on the same network as Extended MODBUS devices.
When using Extended MODBUS, special interface files are created when compiling the instrument database. These files provide automatic configuration of host poll records, significantly reducing engineering time. A MIF file is used for FIX software. PC-30 and GFW use a TIF file. With Extended MODBUS, user-friendly alias names are given to points in the Configured List. In the host software, these alias names are used instead of register addresses.
MOD 30ML COMMUNICATION CHANNELS
The built-in communication channel on a MOD30ML can be used with front or rear connection, but not simultaneously. The front connection is RS-232 only, and the rear connection can be either RS-232 or RS-
485. Connecting wires to the rear terminations may prevent communications through the front port, even if the rear terminations are not being used. Installing a communication module in slots S9-10 or S10 will disable the built-in channel. A second communication channel can be added by installing a module in slots S7-8 or S8.
7
MODBUS RTU
COMUNICATIONS GUIDE
USING ML AND CL BLOCKS:
DIRECTING DATA WITH ML AND CL BLOCKS
CL blocks can be connected to MSC blocks, and are usually used for discrete points. A CL block is required for multi-register “standard” MO DBUS functions, such as those needed for floating point s ignals. If a floating point value is placed into an ML block, it is conver ted to a 16- bit integer v alue to be s ent to the host. If floating point values are placed into a CL, they can be connected to a multi-register input of the MSC block using two registers, or 32 bits. The data format is per ANSI / IEEE Std 754-1985 for Binary Floating-Point Arithmetic. This is the format used by Motorola.
* NOTE: Solid connection lines represent the most commonly used connections.
Figure 2. Extended and Standard MODBUS Lists
8
BLOCK CONNECTIONS
MODBUS RTU
COMUNICATIONS GUIDE
(Up to 99 Inputs per Block)
Figure 3. Block Connections
9
MODBUS RTU
COMUNICATIONS GUIDE
USING MODBUS MODULES:
MODULE LOCATION
The sockets in which the module is installed determines its Port number
Table 4. MOD30ML and Modcell MLP Port Numbers
Port Number MOD30ML Modcell MLP
1 Built-In, Slots 9-10 or 10 Slots 31-32 or 32 2 Slots 7-8 or 8 Slots 29, 28-28, 30 or 29-30 3 not available Slots 25-26, 26, 26-27, 27, 27-28 or 28
THE RS-485’S TERM (MASTER/SLAVE) SWITCH
The master is responsible for stabilizing the bus
In the YES position the module provides this master function by pulling the comm+ line high and the comm- line low, each through 560 resistors
Some PC cards have these resistors built in, generally only on the receiver. This works fine in 4-
wire mode if the transmitter does not tri-state, or in 2-wire mode. 4- wire mode, with a tri-stating transceiver, may require a module to have its switch in the master position, even if its not acting as the master.
THE COM DEFAULTS SWITCH
If the MOD30 ML or Modcell MLP configuration is unknown, setting this switch to th eYES position will allow communications with the unit at 9600 baud, no parity, 8 data bits and 1 stop bit. After downloading the desired parameters, remove power, COM DEFAULTS switch to NO and power up.
THE HIGH AND LOW SWITCHES
Set the MODBUS Address
The High switch sets the first hexadecimal digit of the address, and the Low switch sets the
second. For example, a switch setting of 13 hex represents a decimal address of 19.
The 2-wire RS-485 module has no switches. It mus t be configured by the Application Builder softwar e, to change the factory defaults. The factory defaults are 9600 baud, no parity, 8 data bits, one stop bit and a MODBUS address of one. Do not connect an unconfigured module to a network if there is another device on the network with address one.
10
MODBUS RTU
COMUNICATIONS GUIDE
COMM RS232
CAT. NO.
2033NZ10000A
COMM RS485
T E R M
YES
NO
COMM DEFAULTS
COMM DEFAULTS
YES
NO
YES
NO
HIGH LOW
CAT. NO.
2034NZ10000A
HIGH LOW
* NOTE: Address is indicated with the flat side of the switch
Figure 4. Module Switches
11
MODBUS RTU
COMUNICATIONS GUIDE

MODBUS MASTER

MASTER REQUIREMENTS
MODBUS Master communication requires a few special configuration items.
1. MSC Block - Each MSC block that will be used for MODBUS Master communications must have the Port Functionality set to Master.
2. EX Block for Port Configuration - Each MODBUS Master port requires a specially configured Expression block to define its parameters.
3. EX Block for Communications - Expression blocks are configured to send and receive the actual communication messages. The first 10 inputs are dedicated to configuration and status. The remaining inputs may be used to read or write data. Each block is configured to execute a specific type of MODBUS function. The only relevant factor that limits the number of these blocks is performance.
DATA CONVERSION
Analog data in a newer Commander instruments and the 2050R is stored as a 16-bit signed integer value. Integer values in the Modcell MLP and MOD30ML are unsigned. The dec imal point position is also read as a separate value. When reading or writing analog values between these instruments, expression blocks are used to convert from one integer type to the other. The table below indic ates the r elations hip between the two number formats.
Table 5. Integer Conversion - Signed to Unsigned
Signed 16-Bit Number Unsigned 16-Bit Number
00
32767 32767
-32768 32768
-1 65535
SCALER BLOCK
One expression block is requir ed for each slave instrument, for decimal point scaling. The expres sion is as follows:
if DecPt == 0 then 1.0 else if DecPt == 1 then 10.0 else if DecPt == 2 then 100.0 else 1000.0
DecPt is a COUNT input which is read from the slave instrument. The block’s Result is a FLOATING-POINT scaler.
12
MODBUS RTU
COMUNICATIONS GUIDE
INPUT CONVERT BLOCK
One expression block is required for each analog value read from the slave instrument, for data type conversion. The expression is as follows:
if Input > 32767 then (Input - 65536.0) / Scaler else Input / Scaler
Input is a COUNT value which is read from the slave instrument. Scaler is the FLOATING-POINT result of the Scaler block.
OUTPUT CONVERT BLOCK
One expression block is required for each analog value written to the slave instrument, for data type conversion. The expression is as follows:
if (Output * Scaler) > 32767.0 then 32767 else if (Output * Scaler) < -32768.0 then 32768 else if Output >= 0 then Output * Scaler else
65536.0 + (Output * Scaler)
Output is the FLOATING-POINT number to be converted to a COUNT, and send to the slave instrument. Scaler is the FLOATING-POINT result of the Scaler block.
13
MODBUS RTU
COMUNICATIONS GUIDE
MODBUS WITH COMMANDER SERIES INSTRUMENTS
SCALING ANALOG VALUES
The first Commander instruments to support MO DBUS handled scaling of analog values in a different way than later instruments. The C200, C300, C1900 and PR100 use a 12-bit register with a raw range of 0 to
4095. The host must scale the value to obtain the desired engineering unit value.
Newer models, such as the C100, C150, C250, C500 and PR250, place an engineering unit value into one or two 16-bit registers. If two registers are used, the data type is considered a long integer. Values are represented as positive or negative integers without a decimal point. If a decimal point is used in the instrument, additional scaling must be performed at the host.
COMMUNICATIONS CONFIGURATION
The Commander must be configured from the face of the instrument via the Serial Data Communications page. If this page is not accessible, the communications option may not be installed. Some Commanders use a security switch to acces s the c onfigur ation mode. The par ameters on this menu gr oup mus t be set to match host or Modbus Master device. The 3 Line type refers to 2-wire (half-duplex) with a common, wher e 5 Line is 4-wire (full-duplex) with a common. The number of Star t and Data bits are fixed at 1, 8 respectively. The number of Stop Bits is not configurable and can be set to 1 or 2 at the host. Par ity can be set to none, odd or even and must match the Host setting. The Ident or Addr entry configures the Modbus Slave address.
CONNECTION WITHIN THE NETWORK
One additional subject that must be addressed, is the electrical stabilization and elec trical connection of the RS-485 network. By definition, the Modbus Master devic e is to supply the pull-up and pull-down resistors to stabilize the network. If the interface device does not have that capability, you may select the "Linked In" jumper setting on the Commander. If the stabilizing is performed at the Commander, and the Commander fails or is removed from the network, all communic ations may be stopped. Depending on the length of your cable, you may also need termination resistors, which may be ins talled ex ternally for 3-wir e or by a jumper for 5-wire configurations.
14
MODBUS RTU
COMUNICATIONS GUIDE
HOST CONFIGURATION EXAMPLES
MODBUS WITH FIX AND COMMANDER 150
Either the MB1 or EMP driver may be used, though EMP is recommended. The MODBUS guide uses 1 and 2-digit numbers for addresses. Note that the actual addressing requires a 5-digit number. For digital addresses, use 000xx format, where xx represents the coil address from the instruction book. For analog addresses, use 400xx format, where xx represents the register address from the instruction book.
Table 6. MODBUS with FIX and Commander 150
Poll Record Configuration
Hardware MODBUS Addressing Type 5-Digit Bit Base 0-15 Data Types Unsigned - Positive Analog Ranges (up to 9999)
Signed - Analog Ranges (between -999 and +9999) Long - Analog Double Register Values (between -9999 and 99999)
Database Configuration
Data Type Database Block Address Range Notes Digital Input DI 000xx Digital Output DO 000xx Digital I/O DR 000xx select output enable Analog Input AI 400xx LIN Signal Conditioning Analog Output AO 400xx LIN Signal Conditioning Analog I/O AR 400xx LIN Signal Conditioning
NOTES:
1. Each line of the poll record can have no more than 8 analog or 16 digital addresses.
2. It is acceptable to “read through” undefined addresses.
3. Use a calculation block to scale for proper decimal point position.
15
MODBUS RTU
COMUNICATIONS GUIDE
MODBUS WITH FIX AND COMMANDER 300
Either the MB1 or EMP driver may be used, though EMP is recommended. The MODBUS guide uses 3-digit numbers for addresses. Note that the actual addressing requires a 5-digit number. For digital addresses, use 00xxx format, where xxx represents the coil address from the instruction book. For analog addresses, use 40xxx format, where xxx represents the register address from the instruction book.
Table 7. MODBUS with FIX and Commander 300
Poll Record Configuration
Hardware MODBUS Addressing Type 5-Digit Bit Base 0-15 Data Type Unsigned - Positive Analog Ranges (0 to 4095)
Signed - Analog Ranges that go Negative (-2048 to +2047)
Database Configuration
Data Type Database Block Address Range Notes Digital Input DI 00xxx Digital Output DO 00xxx Digital I/O DR 00xxx select output enable Analog Input AI 40xxx 12BN (positive) or LZ12 (live zero)
Signal Conditioning
Analog Output AO 40xxx 12BN (positive) or LZ12 (live zero)
Signal Conditioning
Analog I/O AR 40xxx 12BN (positive) or LZ12 (live zero)
Signal Conditioning
NOTES:
1. Ensure that each line of the poll record contains no more than 8 analogs or 16 digital addresses.
2. It is acceptable to “read through” undefined addresses.
16
MODBUS RTU
COMUNICATIONS GUIDE
MODBUS WITH INTOUCH AND COMMANDER 300
Below are configuration entries that have been tested with the InTouch Modbus DDE Server and C300.
Table 8. MODBUS with InTouch and Commander 300
Hardware 584/984 PLC String Variable Style Full Length Register Type Binary Block I/O Sizes
Coil Read - 16 Register Read - 8 Coil Write* - 8 Register Write - 8
* NOTE: The Commander supports only Single-Coil writes (Function Code 05), so
Block I/O does not apply. InTouch allows a minimum setting of 8.
In the InTouch Display Configuration Window;
1. Select the desired Value Display Wizard to place a display field into the window
2. Double-click on the display field to configure it
3. Assign a Tagname
4. Check the Allow Input box if you wish to write values from the PC to the Commander
5. Define the Tagname
6. Select DDE Real for analog values
7. Set the Min and Max EU values to match the Commander Display Range
8. Set the Min and Max Raw values to the Response/Entry range specified in the Modbus guide
9. Select DDE Access Name as defined in the I/O Server
10. Specify the Item as a 5-digit Modbus address (i.e. 40051 for Process Variable 1)
11. Coil addresses in the Commander range from 00011 to 00181
12. Register addresses in the Commander range from 40011 to 40230
17
MODBUS RTU
COMUNICATIONS GUIDE
MODCELL MLP WITH TCP QUICKPANEL
Table 9. Wiring for RS-485 Full Duplex
QuickPanel jr. Modcell MLP
TXA 11 ————— 29-1 Rx+
TXB 15 ————— 29-2 Rx­RXA 10 ————— 30-1 Tx+ RXB 16 ————— 30-2 Tx-
Frame Ground 1 — Shield
RTS 4 —— CTS 5 ——
CTSB 18 —— DTRB 19 —— CTSA 21 —— DTRA 22 ——
PLC & Protocols
SIO/CN1 PLC Modicon Modbus is used when QuickPanel is Master to MLP Modicon Modbus Slave is used when QuickPanel is slave to MLP Port Electrical Format: RS-422/485 Full duplex
Baud rate, Data bits, Parity and Stop Bits to match the MLP configuration Handshake: None Protocol PLC ID: Modbus address of the MLP
Tags
Analog points are read from the MLP as an integer value (16-bit). MLP floating-point numbers are not supported by this interface.
Addressing
Registers are referenced as a type and offset. Below are examples for Input Registers and Output (Holding) Registers.
Table 10. TCP QuickPanel Addressing
ML to MSC SROIN1 Modbus Address QuickPanel Tag
Entry 1 30001 IR001 Entry 2 30002 IR002
ML to MSC SRWIN1
Entry 1 40001 OR001 Entry 2 40002 OR002
If connecting more than one slave to the QuickPanel, append an underscore and Modbus address to the tag. Example:
QuickPanel is configured to access PLC ID 1 For MLP at address 2, with the same registers as above, the tags would be IR001_2, IR002_2, OR001_2 and OR002_2.
18
MODBUS RTU
COMUNICATIONS GUIDE
Scaling
In ML Block, specify actual range for variable, if the number of significant digits is 5 or less. For ranges with more than 7 significant digits, such as 500,000 or 750.000, change the units to allow smaller numbers. For example, instead of 0 to 500,000 CFH, use 0 to 500 KCFH. Also note that the scale factor is for use only with mSec time values. The field is enabled for sources that can support the data type. If your source data is not mSec time, do not change the scale factor from default.
In QuickDesigner, leave Input Low at 0 and High at 65535. The Scale Low and High values should match what is in the Modbus List, unless a decimal is required. If digits to the right of the decimal are needed, multiply the range value by 10 for one place, 100 for two and etc.. For example, if two places are desired to the right of the decimal point with a range of 0 to 10, specify a Scale High of 1000. In display Data Format, specify 2 decimal places.
19
MODBUS RTU
COMMUNICATIONS GUIDE
MOD30ML AND MODCELL MLP REFERENCE TABLES
Table 11. MOD30ML and Modcell Multiloop Processor to Host Device or PC Sample Configuration Entries
MOD30ML or Modcell Multiloop Processor Host Device or PC
Signal Source List
Engineering
Data
Type Low High CL ML Number Low High Factor Connection Address Type Low High Low High Note
Floating
Point
Floating
Point
Floating
Point
Floating
Point
mSec
Time
mSec
Time
mSec
Time
mSec
Time
mSec
Time
mSec
Time
Discrete 0 1 X 8 SRWIN2 40108 WORD 0 65535 0 1 Bit 1 of
Discrete 0 1 X 9 SRWIN2 40109 WORD 0 65535 0 1 Bit 1 of
Discrete 0 1 X 1 DRWIN1 00001 BIT 0 1 0 1 Bit 1 of 1 Discrete 0 1 X 2 DRWIN1 00002 BIT 0 1 0 1 Bit 1 of 1 Floating
Point
Floating
Point
Floating
Point
Floating
Point
Range Type Entry
0 100 X 1 0 100 SRWIN1 40001 WORD 0 65535 0 100
-10 10 X 2 -10 10 SRWIN1 40002 WORD 0 65535 -10 10
-14 0 X 3 -14 0 SRWIN1 40003 WORD 0 65535 -14 0
0 80000 X 1 0 8000 SRWIN2 40101 WORD 0 65535 0 8000 10x mult
0 4294967295 X 2 0 65535 1 SRWIN2 40102 WORD 0 65535 0 65535 1 mSec /
0 4294967295 X 3 0 65535 10 SRWIN2 40103 WORD 0 65535 0 65535 10 mSec
0 4294967295 X 4 0 65535 100 SRWIN2 40104 WORD 0 65535 0 65535 100
0 4294967295 X 5 0 65535 1000 SRWIN2 40105 WORD 0 65535 0 65535 1 Sec /
0 4294967295 X 6 0 65535 10000 SRWIN2 40106 WORD 0 65535 0 65535 10 Sec /
0 4294967295 X 7 0 65535 100000 SRWIN2 40107 WORD 0 65535 0 65535 100 Sec
0 100 X 1 MRWIN1 41001 FLOAT 0 100 0 100
-10 10 X 2 MRWIN1 41003 FLOAT -10 10 -10 10
-14 0 X 3 MRWIN1 41005 FLOAT -14 0 -14 0
0 80000 X 1 MRWIN2 41101 FLOAT 0 80000 0 80000
Modbus List
Range Scale MSC Modbus Data
Device Range
Engineering
Range
req’d
count
/ count
mSec /
count
count
count
/ count
16
16
20
* NOTE: When connections are made from a source that has a variable data type,
the Range and Scale Factor fields may be enabled when they do not apply. In this case, leave the default Range of 0 to 65535 and Scale Factor of 1.
MODBUS RTU
COMMUNICATIONS GUIDE
Table 12. MODBUS Reference Information for MOD30 ML and Modcell Communications
Code Function Action Data Types Max Points per
Command
01 Read Coil Status Read one or more
consecutive points
02 Read Input Status Read one or more
consecutive points
03 Read Holding
Registers
04 Read Input
Registers
05 Force Single Coil Write one point Discrete 1 00001-00499 CL DRWIN1-5 06 Preset Single
Register
08 Loopback Test Return of Query (00) For Diagnostic Use Only N/A N/A N/A N/A 15 Force Multiple
Coils
16 Preset Multiple
Registers
65 Extended Modbus Read and/or Write any
Read one or more consecutive registers
Read one or more consecutive registers
Write one register All except ASCII and HEX -
Write one or more consecutive points Write one or more consecutive registers
Data Type
Discrete 99 00001-00499 CL DRWIN1-5
Discrete 99 10001-10499 CL DROIN1-5
All except ASCII and HEX ­One Register per Point Any - Uses as many Registers as req'd for Data All except ASCII and HEX ­One Register per Point Any - Uses as many Registers as req'd for Data
One Register per Point Any - Uses as many Registers as req'd for Data
Discrete 16 00001-00499 CL DRWIN1-5
All except ASCII and HEX ­One Register per Point Any - Uses as many Registers as req'd for Data Any - Data in buffer, rather than Coils or Registers
32 40001-40499 ML SRWIN1-5
125 41001-45999 CL MRWIN1-5
32 30001-30499 ML SROIN1-5
125 31001-35999 CL MROIN1-5
1 40001-40499 ML SRWIN1-5
1 41001-45999 CL MRWIN1-5
16 40001-40499 ML SRWIN1-5
16 41001-45999 CL MRWIN1-5
Note 6 n/a CL FGLISTIN
Address
Range
From To
NOTES:
1. Placing discrete points into Holding or Input Registers uses an entire 16 bit register for one point. This may be more efficient when only a small amount of discrete data is required, along with analog data. If a significant number of discrete points are required, communications and memory efficiency would be improved by placing them into the Coil or Input Status area. Another possibility would be to pack 16 discrete points into a count and store it in an Input or Holding Register. This would be dependent on the host device's ability to accept the packed data format.
2. Date, Floating Point and mSec Time are converted to 16 bit integers when tied to an ML register.
3. It is recommended that no more than the number of points supported per command be put into each Slave ML block. This will prevent the Master device from accessing more than the allowed number of points in a single command. The instrument will not return any data if the maximum number of registers is exceeded or an invalid register is included. Some HMI packages, such as Fix DMACS, allow poll records to be broken into groups to avoid this problem.
4. When using Extended Modbus, group control loop data together in CL blocks for greatest efficiency.
5. Some peripheral equipment that is designed for Modbus communications may not support Extended Modbus (function code 65).
6. The instrument's foreground can hold up to 2400 bytes of data. The number of points that can be handled per command depends on the host software. Connecting the CL block to BGLISTIN may provide increased performance with some host configurations. This is the case when using Database Caching with PC-30 or Genesis for Windows. Without Database Caching enabled, a connection to FGLISTIN is recommended.
7. Each Modbus List block can contain up to 99 points, and each type of connection provides inputs for five lists. This is also true for Configured List blocks for Standard Modbus. When using Extended Modbus, Configured List blocks may be nested, allowing more than 99 points to be connected to FGLISTIN or BGLISTIN.
21
MODBUS RTU
COMMUNICATIONS GUIDE
PC Serial Port MOD30ML Mod RS-232 MOD30ML Modcell
25-Pin 9-Pin Port 1 Port 2 cell Port 1 Port 2
2 3 3 9 13 Hi-1 Tx 3 2 2 8 12 Hi-2 Rx 7 5 1 10 14 Lo-2 Gnd
Table 14. Wire Connections for RS-485 (4 or 5-Wire) Devices
B&B Quatech OPTO-22 MOD30ML Mod RS-485 MOD30ML Modcell
3PXOCC2A
3PXCC2A DS-300 or AC 34 BI 9&10 7&8 MLP Master Slave BI 9&10 7&8 MLP 2050R
DSP-225 AC 24 AT Port 1 Port 2 cell
2 2 4 3 9 13 Hi-1 Tx+ 3 7 5 2 8 12 Hi-2 Tx­9 4 8 5 11 15 Lo-1 Rx+ 1 8 9 4 10 14 Lo-2 Rx­5331 Gnd⇔Gnd 1 29

WIRE CONNECTIONS

Table 13. Wire Connections for RS-232 Devices
BI 9&10 7&8 MLP Master Slave BI 9&10 7&8 MLP
Rx 2 8 12 Hi-2
Tx 3 9 13 Hi-1
Gnd 1 10 14 Lo-2
(4 or 5-Wire)
⇒ ⇒ ⇐ ⇐
Rx+ 5 11 15 Lo-1 35
Rx- 4 10 14 Lo-2 34
Tx+ 3 9 13 Hi-1 33
Tx- 2 8 12 Hi-2 32
Port 1 Port 2
B&B Quatech OPTO-22 RS-485 Commander
3PXOCC2A
3PXCC2A DS-300 or AC 34 Master Slave MR250 C1900 C150 C200 C300 C310 C500 PR100
DSP-225 AC 24 AT
224Tx+⇒Rx+ 7 7 22 7 9 21 34 3 375Tx-⇒Rx- 8 6 23 6 102235 2 948Rx+⇐Tx+ 3 4 20 4 111832 5 189Rx-⇐Tx- 2 5 21 5 121933 6 533Gnd⇔Gnd 12 8 24 Gnd 8 20 36 8
(4 or 5-Wire)
C100
Table 15. Wire Connections for RS-485 (2 or 3-Wire) Devices
B&B Quatech OPTO-22 MOD30ML Mod RS-485 MOD30ML Modcell
3PXOCC2A
3PXCC2A DS-300 or AC 34 BI 9&10 7&8 MLP Master Slave BI 9&10 7&8 MLP 2050R
B&B Quatech OPTO-22 RS-485 Commander
3PXOCC2A
3PXCC2A DS-300 or AC 34 Master Slave MR250 C1900 C150 C200 C300 C310 C500 PR100
DSP-225 AC 24 AT Port 1 Port 2 cell
2&9 2&4 4-8 3&5 9&11 13&15 Hi&Lo-1 RxTx+ 3&1 7&8 5-9 2&4 8&10 12&14 Hi&Lo-2 RxTx-
5331 Gnd⇔Gnd 1 29
DSP-225 AC 24 AT
2&9 2&4 4-8 RxTx+ 3&1 7&8 5-9 RxTx-
533Gnd⇔Gnd 12 8 24 7 36
(2 or 3-Wire)
RxTx+ 3&7 4 22 4 34
RxTx- 2&8 5 23 5 35
(2 or 3-Wire)
RxTx+ 3&5 9 13 -1 33&35
RxTx- 2&4 8 12 -2 32&34
C100
Port 1 Port 2
* NOTES: 1. MOD30ML and Modcell do not support MODBUS Master
communications with a 2-wire RS-485 module.
2. On Modcell MLP and MOD30ML, 4-wire modules are recommended for all applications, even for 2-wire installations.
22
WARNING Incorrect wiring can damage communication hardware.
MODBUS RTU
COMMUNICATIONS GUIDE
MODBUS MODULE TROUBLESHOOTING
WITH MOD30ML AND MODCELL MLP
* NOTE: The extended Modbus communications required for diagnostics and
downloading is supported by the 2033N and 2034N modules only. On Modcell, the Identity module firmware must be at least version 4 Logic, version 3 Regulatory, Batch, or Advanced.
1. Remove power from the instrument.
2. Note the switch settings on the Modbus module. Two rotary switches are used to select the address. The address is indicated in hexadecimal, by the flat side of the spindle, with A through F representing 10 through 15.
3. Set the COMM DEFAULTS switch to YES. This will force the module to communicate at 9600 baud, 8 data bits, 1 stop bit and no parity, regardless of the database configuration. Note that these default parameters will be in effect whenever the default database is being executed.
4. If using an RS-485 module, set the TERM switch to NO. This switch provides pull-up and pull-down resistors to stabilize the network. This function is defined by the Modbus specification as the responsibility of the master node, which is the PC in this case. In some cases, it may be necessary to enable this termination, if the PC interface is unable to stabilize the network.
5. Apply power to the equipment.
6. Start the Application Builder software and select the serial port configuration button. Select the serial port that is connected to the instrument and confirm the port settings. The standard Base Addresses are 3F8, 2F8, 3E8 and 2E8 for Com1 through Com4 respectively. If unsure of the address, check the hardware manual for configuration information. Set the Baud Rate to 9600, Data Bits to 8, Parity to None and Stop Bits to 1.
7. Enter the Status display and select the communications setup button. Set the communications type to Extended Modbus. Set the Modbus Address to match the module setting and select the com port to be used. Select OK to close the dialog box. The ICN and Instrument number settings have no effect.
8. Click on the Status line at the bottom of the screen and enter R VERSION. This command will return the version of the instrument. If the instrument responds, confirm that the reported version agrees with the type of instrument that is being tested.
9. If unable to establish communications, disconnect power and remove all analog and communications modules, except for the Modbus module being used. If still unable to communicate, replace the Modbus module. If all previous procedures fail, replace the instrument.
23
MODBUS RTU
COMMUNICATIONS GUIDE
24
MODBUS RTU
COMMUNICATIONS GUIDE

GLOSSARY

The following terms are defined as they relate to this document. The definitions given here may not be the same throughout the industry.
Alias A meaningful short-hand name given to a data point Baud Serial communication data transmission rate Bit A binary digit, representing a one or zero Bus An electrical circuit over which data is transmitted Byte A whole number value represented by eight bits (0 to 255) CL block Configured List block Chassis or Chassis Ground A connection to an electrically conductive housing or frame of a device. It
may or may not be connected to Earth Ground.
Common The voltage reference point of a circuit. It may or may not be connected to
earth ground, though it is generally assumed to be at zero volts, unless otherwise indicated. In floating circuits, the common is sometimes at a relatively high potential. This term is sometimes used interchangeably with the term “Ground”.
CRC Cyclic Redundancy Check. Complex error checking on a message block. CTS ClearToSend hardware handshaking signal. Used with RequestToSend. Earth or Earth Ground Global zero voltage reference point. Physical connection is made to the
earth through a grounding rod, water pipe or other reliable connection.
Ground Voltage reference point of a circuit. It may or may not be connected to
earth ground, though it is generally assumed to be at zero volts. Sometimes used interchangeably with the term “Common”.
Handshaking A method of data flow control for serial communications Hexadecimal or HEX A number system using a decimal 16 as its base. A single digit number in
HEX ranges from 0 to 15, represented by 0 to 9 and A to F.
HMI Human-Machine Interface (formerly MMI) Live Zero Indicates that a numeric range contains both positive and negative
numbers
Loopback A test used for checking functionality of a serial port, utilizing a test plug
that connects send, receive and handshaking signals
Long Integer Analog value consisting of two consecutive 16-bit registers ML block MODBUS List block MLP MultiLoop Processor (Modcell 2000 Series Controller) MSC block MODBUS Serial Communications block Parity Simple method of data error checking performed at the byte level. May be
user-specified as Odd, Even or None with most equipment and software.
25
MODBUS RTU
COMMUNICATIONS GUIDE
PC Personal Computer Receive Incoming communication signal. (Rx) RTS RequestToSend hardware handshaking signal. Used with ClearToSend. Rx See Receive RxA Usually the negative Receive line. May vary with manufacturer. Also see
Receive
RxB Usually the positive Receive line. May vary with manufacturer. Also see
Receive
Signed Integer Whole number value represented by 16 bits (-32768 to 32767) Transmit Outgoing communication signal. (Tx) Tri-State The ability of a communications transmitter to turn its circuitry off, reducing
the load on the network
Tx see Transmit TxA Usually the negative Transmit line. May vary with manufacturer. Also see
Transmit
TxB Usually the positive Transmit line. May vary with manufacturer. Also see
Transmit
Unsigned Integer Positive whole number value represented by 16 bits (0 to 65535) Word A group of 16 bits Xon/Xoff Software implementation of data flow control
26
The Company’s policy is one of continuous product improvement and the right is reserved to modify the information contained herein without notice, or to make engineering refinements that may not be reflected in this bulletin. Micromod Automation assumes no responsibility for errors that may appear in this manual. © 2004 MicroMod Automation, Inc. Printed in USA
IB-MODBUS-RTU, Issue 2 04/2005
MicroMod Automation, Inc.
75 Town Center Drive
Rochester, NY USA 14623
Tel. 585-321-9200 Fax 585-321-9291
Loading...