Upload
cecily-williamson
View
215
Download
0
Embed Size (px)
Citation preview
Section 6 - Slide 1 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus trainingModbus trainingPart 1 : Reference documents - WEB sites
Part 2 : Definitions
Part 3 : Modbus frame description
Part 4 : Security of transmission
Part 5 : Physical layer
Part 6 : Main characteristics resume
Section 6 - Slide 2 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus User guideReference : TSX DG MOD *
Detailed description of the Modbus protocol.
X-WAY communication user guideReference : TSX DR NET *
This guide gives common characteristics to X-WAY Schneider networks.
Communication application specific functions PL7 Micro/Junior/ProReference : TLX DS COM PL7 42 *
Volume 1 : Common communication applicationVolume 2 : Modbus bus
Part 1 : Reference documents - WEB sitesPart 1 : Reference documents - WEB sites
Schneider documentsSchneider documents
Section 6 - Slide 3 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
WEB sitesWEB sites
Modbus.org :http://www.modbus.org
Modicon site for Modbus users.
Transparent Factory :http://www.transparentfactory.com
Schneider Electric site for Transparent Factory users.
Modbus Plus :http://www.modicon.com/techpubs/toc6.html
Modbus Plus Planning and installation.
Part 1 : Reference documents - WEB sitesPart 1 : Reference documents - WEB sites
Section 6 - Slide 4 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus protocolModbus protocol
MODBUS Protocol is a messaging structure created by MODICONcompany to connect PLC to programming tools.
It is now widely used to establish master-slave communication between intelligent devices.
MODBUS is independent of the physical layer.
It can be implemented using RS232, RS422, or RS485 or over a variety
of media (e.g. fiber, radio, cellular, etc...).
Part 2 : DéfinitionsPart 2 : Définitions
Section 6 - Slide 5 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus Serial line RS485Modbus Serial line RS485
MODBUS Serial line RS485 is a low cost network using a master/slave
medium access with a transmission speed from 1,200 to 115 Kbits/s.
Application
Presentation
Session
Transport
Network
Link
Physical
7
6
5
4
3
2
1
Master - SlaveMaster - Slave
Modbus
RS485-RS 232RS485-RS 232
Part 2 : DéfinitionsPart 2 : Définitions
Section 6 - Slide 6 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus TCP/IPModbus TCP/IP
MODBUS TCP/IP uses TCP/IP and Ethernet 10 Mbit/s or 100 Mbits/s to carry the MODBUS messaging structure.
Application
Préeentation
Session
Transport
Network
Link
Physical
7
6
5
4
3
2
1
CSMA / CDCSMA / CDETHERNET V2 ou 802.3ETHERNET V2 ou 802.3
Modbus
TCP
IP
Part 2 : DéfinitionsPart 2 : Définitions
Section 6 - Slide 7 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus PlusModbus Plus
MODBUS PLUS is a higher speed network 1 Mbit/s token passing derivative that uses the MODBUS messaging structure.
Application
Presentation
Session
Transport
Network
Link
Physical
7
6
5
4
3
2
1
802.4 Token passing802.4 Token passing
Modbus
RS485RS485
Part 2 : DéfinitionsPart 2 : Définitions
Section 6 - Slide 8 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus ASCII and Modbus RTUModbus ASCII and Modbus RTU
The MODBUS protocol comes in 2 versions :
ASCII transmission mode Each eight-bit byte in a message is sent as 2 ASCII characters.
RTU transmission modeEach eight-bit byte in a message is sent as two four-bit hexadecimalcharacters.
The main advantage of the RTU mode is that it achieves higher throughput.
ASCII mode allows time intervals of up to 1 second to occur betweencharacters without causing an error.
Part 2 : DéfinitionsPart 2 : Définitions
Section 6 - Slide 9 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Modbus frame structureModbus frame structure
Address ChecksumDataFunction
The Modbus frame structure is the same for requests (master to slave messages) and responses (slave to master messages).
Modbus ASCII
Modbus RTU
: CR LF
3A Hex 0D Hex 0A Hex
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
Address ChecksumDataFunctionsilence silence
Silence >= 3,5 characters
Section 6 - Slide 10 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Address fieldAddress field
Address ChecksumDataFunction
Valid slave device addresses are in the range of 0 ... 247 decimal.The individual slave devices are assigned addresses in the range of 1 ... 247.Value 0 is reserved for broadcast messages (no response). Request :A master addresses a slave by placing the slave address in the address field ofthe message.
Response :When the slave sends its response, it places its own address in this address fieldof the response to let the master know which slave is responding.
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
Section 6 - Slide 11 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Valid codes are in the range of 1 ... 255 decimal.
Request :The function code field tells the slave what kind of action to perform.
Response :For a normal response, the slave simply echoes the original function code.
For an exception response, the slave returns a code that is equivalent to
the original function code with its most significant bit set to a logic 1.
Function fieldFunction field
Address ChecksumDataFunction
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
Section 6 - Slide 12 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Valid codes are in the range of 0 ... 255 decimal.
Request :The data field contains additional information which the slave must use to takethe action defined by the function code. This can include items like registeraddresses, quantity of items to be handled, etc...
Response :If no error occurs, the data field contains the data requested.
If an error occurs, the field contains an exception code that the masterapplication can use to determine the next action to be taken.
Data fieldData field
Address ChecksumDataFunction
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
Section 6 - Slide 13 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Valid codes are in the range of 0 ... 255 decimal.
Modbus RTU uses CRC : Cyclycal Reduncy Check (2 byte)Modbus ASCII uses LRC : Longitudinal Redundancy Check (1 bytes)
Request :The checksum is calculated by the master and sends to the slave.
Response :The checksum is re-calculated by the slave and compared to the value sentby the master.If a difference is detected, the slave will not construct a response to the master.
Checksum fieldChecksum field
Address ChecksumDataFunction
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
Section 6 - Slide 14 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Request :
Frame exemple in RTU modeFrame exemple in RTU mode
Function code = 03 : Read Holding Registers
SlaveAddress
CRC16First word address
Function code = 03
Number of words to read
1 byte 1 byte 2 bytes 2 bytes 2 bytes
Response :
SlaveAddress
CRC16Number of bytes read
Function code = 03
Value of the first word
1 byte 1 byte 2 bytes 2 bytes 2 bytes
Value of the last word
2 bytes
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
Section 6 - Slide 15 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Request :
Frame exemple in RTU modeFrame exemple in RTU mode
Function code = 06 : Write Single Register
SlaveAddress
CRC16Word
addressFunction code = 06
Value of word
1 byte 1 byte 2 bytes 2 bytes 2 bytes
Response :
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
SlaveAddress
CRC16Word
addressFunction code = 06
Value of word
1 byte 1 byte 2 bytes 2 bytes 2 bytes
Section 6 - Slide 16 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Request :
Frame exemple in RTU modeFrame exemple in RTU mode
Function code = 16 (décimal) : Write Multiple Registers
SlaveAddress
CRC16First word address
Function code = 16
Number of words to write
1 byte 1 byte 2 bytes 2 bytes 2 bytes
Response :
SlaveAddress
CRC16Function code = 16
1 byte 1 byte 2 bytes 2 bytes 2 bytes
Part 3 : Modbus frame descriptionPart 3 : Modbus frame description
Value of the first word
Number of bytes
1 byte 2 bytes
First word address
Number of words to write
Section 6 - Slide 17 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Function code exemplesFunction code exemplesPart 3 : Modbus frame descriptionPart 3 : Modbus frame description
Code Function
01 (0x01) Read Coils
02 (0x02) Read Discrete Inputs
03 (0x03) Read Holding Registers
04 (0x04) Read Input Registers
05 (0x05) Write Single Coil
06 (0x06) Write Single Register
15 (0x0F) Write Multiple Coils
16 (0x10) Write Multiple Registers
23 (0x17) Read/Write Multiple Registers
43 (0x2B) Read Device Identification
The complete description of all Modbus request is freely available on the
Modbus.org web site : http://www.modbus.org
Section 6 - Slide 18 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Parity checking
Even or odd can be optionally applied to each character.
Frame checking
LRC or CRC is applied to the entire message.
Continuous stream
The entire message frame must be transmitted as a continuous stream.
If a silent interval (more than 1.5 character times RTU mode or 1 second ASCII mode) occurs
before completion of the frame, the receiving device flushes the incomplete message and
assumes that the next byte will be the address field of a new message.
Error checking methodsError checking methodsError checking methodsError checking methodsPart 4 : Security of transmissionPart 4 : Security of transmission
Section 6 - Slide 19 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
The master is configured by the user to wait for a predetermined timeout
interval before aborting the transaction.
This interval is set to be long enough for any slave to respond normally.
If the slave detects a transmission error, the message will not be acted upon.
The slave will not construct a response to the master.
Thus the timeout will expire and allow the master's program to handle the error.
Error checking methodsError checking methodsError checking methodsError checking methodsPart 4 : Security of transmissionPart 4 : Security of transmission
Section 6 - Slide 20 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
RS485 physical layerRS485 physical layer
Part 5 : Physical layerPart 5 : Physical layer
RS485 is the most common physical layer used on Modbus.
The RS485 standard allows variants of different characteristics :
polarisation
line terminator
distribution of a reference potential
number of slaves
length of the bus
Section 6 - Slide 21 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
The various versions of the RS485 physical layerThe various versions of the RS485 physical layer
Part 5 : Physical layerPart 5 : Physical layer
The new Telemecanique devices conform to the Modbus specification published in 2002 on the Modbus.org web site.
But some Schneider older devices comply with earlier specifications :
Uni-Telway
Jbus
Section 6 - Slide 22 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
New Modbus RS485 standard schematicNew Modbus RS485 standard schematic
Part 5 : Physical layerPart 5 : Physical layer
Master
Slave 1 Slave 2
D1
D0Common
5 V
650
650
120 1 nF
120 1 nF
Maximum length of bus 1000 m at 19200 bps
Maximum number of stations (without repeater) 32 (31 slaves)
Maximum length of tap links 20 m for one tap link
40 m divided by the number of tap links
Bus polarisation 650 at 5V and common for the master
Line terminator 120 - 0,25Wm in series with 1nF 10V
Common polarity Yes (Common) connected to the PG
Section 6 - Slide 23 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Uni-Telway RS485 schematicUni-Telway RS485 schematic
Part 5 : Physical layerPart 5 : Physical layer
Master
Slave 1 Slave 2
D(B)
D(A)0 VL
5 V
4,7 K
120
1 nF
120
1 nF
Maximum length of bus 1000 m at 19200 bps
Maximum number of stations (without repeater) 29 (28 slaves)
Maximum length of tap links 20 m for one tap link
40 m divided by the number of tap links
Bus polarisation 4,7 K at 5V and common for the master and slaves
Line terminator 120 - 0,25Wm in series with 1nF 10V
Common polarity Yes (0 VL) and high impedance place between 0 VLand the ground in each station
4,7 K
4,7 K4,7 K4,7 K4,7 K
5 V5 V
Section 6 - Slide 24 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Jbus RS485 schematicJbus RS485 schematic
Part 5 : Physical layerPart 5 : Physical layer
Master
Slave 1 Slave 2
L-(B/B ’)
L+(A/A ’)
5 V
470
470
150 150
Maximum length of bus 1300 m at 19200 bps
Maximum number of stations (without repeater) 32 (31 slaves)
Maximum length of tap links 3 m
Bus polarisation 470 at 5V and common for the master
Line terminator 150
Common polarity No
Section 6 - Slide 25 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Mixed RS485 schematicMixed RS485 schematic
Part 5 : Physical layerPart 5 : Physical layer
Master
Slave 1 Slave 2
D1
D0Common
5 V
Rp
120
1 nF
120
1 nF
Maximum length of bus 1000 m at 19200 bps
Maximum number of stations (without repeater) At most 32 stations (depending on Rp and the number of4,7 K
Maximum length of tap links 20 m for one tap link
40 m divided by the number of tap links
Bus polarisation Rp should be validated by calculating the equivalent polarisation Reaccording to the polarisation of the master and slave stations. Remust be between 162 and 650
Line terminator 120 - 0,25Wm in series with 1nF 10V
Common polarity Yes (Common) connected to the PG
Rp
4,7 K4,7 K
5 V
Suitable polarization Rpmust be calculated
If the master is fitted with a 470 polarisation, it ’s possible to connect a maximum of
18 slaves with 4,7 K polarisation
Section 6 - Slide 26 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Main characteristics resumeMain characteristics resume
Topology: Bus with line terminations
Maximum distance: With RS485 : 1000 m without repeater
Data rate: From 1,200 to 115 Kbits/s
Max. no. of devices: With RS485 : 32 master included
Part 6 : Main characteristics resumePart 6 : Main characteristics resume
Section 6 - Slide 27 / 27P&T - GPS - Training PhW - 06_TECH_Modbus_en 06/ 2004
Method of accessing the medium: Master slave
Transmission method: Messaging
Max. useful data size: 120 words
Transmission security: LRC or CRC Start and stop delimiters
Parity bitContinuous stream
Main characteristics resumeMain characteristics resume
Part 6 : Main characteristics resumePart 6 : Main characteristics resume