Escolar Documentos
Profissional Documentos
Cultura Documentos
Protocolo Modbus
Guia de referencia
Traduccin de Pl-MBUS-300 Rev. J
June 1996
MODICON, Inc., Industrial Automation Systems
One High Street
North Andover, Massachusetts 01845
Publicaciones Relacionadas Contenido
Para mas detalles, acerca de aplicaciones Modicon en sistemas sobre el Controlador Captulo 1 Protocolo Modbus 5
Programable 984, referirse a las siguientes publicaciones : Introduccin al Protocolo Modbus 6
Transacciones en Redes Modbus 7
GM-0984- SYS 984 Programmable Controller Systems Manual. Transacciones en Otras Clases de Redes 7
Modicon, Inc.
La Consulta - Ciclo de Respuesta 7
Los Dos Modos de Transmisin en serie 8
Para mas detalles, acerca de aplicaciones e instalacin de la red Modbus Plus y Modo ASCII 8
unidades relacionadas de comunicacin, referirse a las siguientes publicaciones : Modo de RTU 8
Formato del mensaje Modbus 9
GM-MBPL-001 Modbus Plus Network Planning and Installation Guide. Formato ASCII 9
Modicon, Inc.
Formato RTU 9
GM-BM85 001 Modbus Plus Bridge/Multiplexer User's Guide.
Manejo del Campo de Direccin 10
Modicon, Inc.
Manejo del campo de funcin 10
Contenidos del Campo de Informacin 10
Para mas detalles, acerca de la Biblioteca de Software de comunicaciones de
Contenidos del Campo de Comprobacin de Error 11
Modcom III para aplicaciones con ordenadores host, referirse a las siguientes
Como son transmitidos los caracteres en serie 11
publicaciones :
Mtodos de comprobacin de error 12
Comprobacin de Paridad 12
GM-MC3A-001 Modcom lil Communications Software Library User's Guide.
Modicon, Inc. Comprobacin LRC 12
Comprobacin CRC 13
Contenido (continuacin)
Captulo 2 Funciones de Informacin y Control 14 Captulo 3 Subfunciones de Diagnostico 41
Formatos de Funciones Modbus 15 Funcin 08 - Diagnsticos 42
Expresin de valores numricos 15 Cdigos de Diagnstico permitidos por los Controladores 43
Datos de Direccin en mensajes Modbus 15 00 Devuelve Informacin de Consulta 44
Contenido de los campos en mensajes Modbus 15 01 Reinicio de las Opciones de Comunicacin 44
Contenido de los Campos en Modbus Plus 16 02 Devuelve Registro de Diagnstico 44
Cdigos de Funcin permitidos por los Controladores 16 03 Cambio Delimitador de Entrada ASCII 44
01 Leer Estados de Bobinas 17 04 Fuerza el Modo Escucha nicamente 44
02 Leer estado de Entradas 18 10 (OA Hex) Limpia Contadores y Registros de Diagnstico 45
03 Leer Registros Internos 19 11 (OB Hex) Devuelve Contador de Mensajes de Bus 45
04 Leer Registros de Entrada 20 12 (OC Hex) Devuelve Contador de Errores de Comunicacin de Bus 45
05 Forzar Una Bobina 21 13 (OD Hex) Devuelve Contador de Errores de Excepcin de Bus 45
06 Forzar Un Registro 22 14 (OE Hex) Devuelve Contador de Mensajes del Esclavo 45
07 Leer Estados de Excepcin 23 15 (OF Hex) Devuelve Contador de No Responde Esclavo 45
11 (OB Hex) Buscar Evento Comm Ctr 24 16 (10 Hex) Devuelve Contador NAK del Esclavo 45
12(0C Hex) Buscar Evento Comm Log 25 17 (11 Hex) Devuelve Contador de Busy del Esclavo 45
15(OF Hex) Forzar Mltiples Bobinas 27 18 (12 Hex) Devuelve Contador de carcter Overrun del Bus 45
16(10 Hex) Forzar Mltiples Registros 28 19 (13 Hex) Devuelve Contador de IOP Overrun (884) 45
17 (11 Hex) Informa el ID del esclavo 29 20 (14 Hex) Limpia Contador Overrun y Flag (884) 45
20(14 Hex) Lee Encabezamiento General 34 21 (15 Hex) Obtiene / Limpia Estadstica Modbus Plus 45
HOST
PROCESSOR
MAP
984-685
(TO MB PLUS) MODBUS P230
AND PROGRAMMER
S908 (TO MAP)
MODBUS PLUS
AT/MC-984 984A/B
AND AND BM85
HOST/MMI S985
MODBUS MODBUS
UP TO FOUR
Figura 1 Esquema de Aplicacin con P230 MODBUSDEVICES
Protocolo Modbus PROGRAMMER OR NETWORKS
PREAMBLE OPENING FLAG BDCST ADDRESS MAC / LLC FIELD CRC CLOSING FLAG 11 Fetch Comm. Event Ctr. Y N Y N N Y
12 Fetch Comm. Event Log Y N Y N N Y
13 Program Controller Y N Y N N Y
14 Poll Controller Y N Y N N Y
MAC LEVEL : 15 Force Muitiple Coils Y Y Y Y Y Y
DEST SOURCE MAC BYTE LLC FIELD 16 Preset Multiple Registers Y Y Y Y Y Y
ADDRES ADDRESS FUNCTION COUNT
17 Report Slave ID Y Y Y Y Y Y
18 Program 884/M84 N N N Y Y N
19 Reset Comm. Link N N N Y Y N
LLC LEVEL : 20 Read General Reference N N Y N N Y
OUTPUT ROUTER TRANS ROUTING PATH MODBUS FRAME (MODIFIED) 21 Write General Reference N N Y N N Y
PATH COUNTER SEQUENCE 22 Mask Write 4X Register N N N N N N (1)
23 Read/Write 4X Registers N N N N N (1)
24 Read FIFO Queue N N N N Y (1)
MODBUS MESSAGE :
SLAVE FUNCTION STARTING STARTING NUMBER OF NUMBER OF Nota :
ADDR CODE ADDRESS HI ADDRESS LO REGISTERS HI REGISTERS LO (1) La funcin la soporta nicamente el 984-785
QUERY Example
QUERY
Example
Field Name (Hex)
Slave Address 11
Function 05
Coil Address Hi 00
Coil Address Lo AC
Force Data Hi FF
Force Data Lo 00
Error Check (LRC or CRC) -
QUERR
Example
Field Name (Hex)
Slave Address 11
Function 06
Register Address Hi 00
Register Address Lo 01
Preset Data Hi 00
Preset Data Lo 03
Error Check (LRC or CRC) -
La funcin provee un mtodo simple para acceder a esta informacin, debido a que Example
las referencias de bobinas de Excepcin son conocidas (la funcin no necesita ninguna Field Name (Hex)
referencia de bobina). Las asignaciones de bobinas de Excepcin predefinidas son: Slave Address 11
Function 07
Coil Data 6D
Controller Model Coil Assignment
Error Check (LRC or CRC) -
M84, 184/384, 584, 984 1-8 User defined
484 257 Battery Status
258 - 264 User defined Figura 23 Lectura Estado de Excepcin - Respuesta
884 761 Battery Status En este ejemplo, el valor de las bobinas es 6D hex (0110 1101 binario). De
762 Memory Protect izquierda a derecha es: OFF-ON-ON-OFF-ON-ON-OFF-ON. El estado se presenta desde la
Status
bobina de direccin ms alta a la mas baja.
763 RIO Health Status
Si el controlador es un 984, estos bits son el estado de la bobina 8 hasta la 1.
764-768 User defined
Si el controlador es un 484, estos bits son el estado de la bobina 264 hasta la 257. En
este ejemplo, la bobina 257 est ON, indica que las bateras del controlador estn OK.
Consulta
La figura 22 muestra un ejemplo de lectura de Estado de Excepcin en el esclavo
17:
QUERY
Example
Field Name (Hex)
Slave Address 11
Function 07
Error Check (LRC or CRC) -
Fuerza varias bobinas (referencias 0X) consecutivas ya sea ON o OFF. Cuando es Quantity of Coils Lo OA
una Consulta General, la funcin fuerza las mismas referencias de bobina en todos los Byte Count 02
esclavos conectados. Force Data Hi(Coils 27-20) CD
Nota La funcin sobreescribir la memoria protegida del Force Data Lo (Coils 29-28) 01
controlador y el estado desactivado de las bobinas. El estado forzado Error Check (LRC or CRC) -
El primer byte transmitido (CD hex) direcciona las bobinas 27-20, con el bit menos Figura 29 Forzar Varias Bobinas - Respuesta
significativo se direcciona a la bobina ms baja (20) en el conjunto. El byte siguiente (01
hex) direcciona las bobinas 29-28, con el bit menos significativo se direcciona a la bobina
ms baja (28) en el conjunto. Los bits no utilizados en el ultiman byte de informacin
debern ser llenados con ceros.
QUERY
Example
Field Name (Hex)
Slave Address 11
Function OF
Coil Address Hi 00
PI-MBUS-300 Modbus Protocol Captulo 2 Pag: 32 -
16 10 Hex) Fijar Varios Registros Respuesta
Descripcin La respuesta normal devuelve la direccin del esclavo, el cdigo de operacin, la
direccin de inicio y la cantidad de registros forzados.
Fuerza valores en un varios registros internos consecutivos (referencias 4 X). En
La figura 31 muestra un ejemplo de una respuesta a la consulta que se mostr
Consulta General, la funcin fija las mismas referencias de registro en todos los esclavos
anteriormente:
conectados.
Nota. La funcin sobreescribir la memoria protegida del
RESPONSE
controlador. El valor preestablecido permanecer vlido en los registros hasta
que la lgica del controlador resuelva los contenidos de los registros. El valor de Example
los registros permanecer si no estn programados en la lgica de controlador. Field Name (Hex)
Slave Address 11
En el apndice B se listan los parmetros mximos permitidos para varios modelos
Function 10
de controlador.
Starting Address Hi 00
Consulta Starting Address La 01
El mensaje de consulta especifica las referencias de los registros a forzar. Los No. of Registers Hi 00
registros se direcciona comenzando en cero: El registro 1 se direcciona como 0. No. of Registers Lo 02
Los valores preestablecidos solicitados se especifican en el campo de informacin Error Check (LRC or CRC) -
de la consulta. Los controladores M84 y 484 utilizan valores binarios de 10 bits, con el
conjunto de los seis bits ms significativos a ceros. El resto de controladores usan valores de
16 bits. La informacin se empaqueta en dos bytes por registro. Figura 31 Fijar varios Registros - Respuesta
La figura 30 muestra un ejemplo de solicitud de modificar dos registros que
comienzan en el 40002 a 00 OA y 01 02 hex, en el esclavo 17:
QUERY
Example
Field Name (Hex)
Slave Address 11
Function 10
Starting Address Hi 00
Starting Address Lo 01
No. of Registers Hi 00
No. of Registers Lo 02
Byte Count 04
Data Hi 00
Data Lo OA
Data Hi 01
Data Lo 02
Error Check (LRC or CRC) -
Slave ID Controller
0 Micro 84
1 484
2 1 84/384
3 584
8 884
9 984
Byte Contents
1 Slave ID (1 for 484)
2 RUN indicator status (0 = OFF, FF = ON
3 System state
4 First configuration byte
5 Second configuration byte
Figura 42 Lectura de Cola FIFO - Consulta Figura 43 Lectura de Cola FIFO - Respuesta
En este ejemplo, el registro puntero de la FIFO (41247 en la consulta) se devuelve
con un contador de cola de 3. Los tres registros de informacin siguen al contador de cola.
Estos son 41248 (contiene 440 decimal -- 01B8 hex); 41249 (contiene 4740 1284 hex); y
41250 (contiene 4898 -- 1322 hex).
la operacin Obtener no puede borrar la estadstica, y la operacin Borrar no devuelve la 01 0...11 Software version number in hex (to read, strip bits 12-15 from word)
estadstica antes de borrarla. La estadstica tambin se borra cuando se arranca el dispositivo 12...14 Reserved
esclavo. 15 Defines Word 15 error counters (see Word 15)
En la consulta el campo de operacin sigue inmediatamente al campo subfuncin: Most significant bit defines use of error counters in Word 15. Least significant half of upper byte, plus lower byte, contain
software version.
- Un valor 00 03 especifica la Operacin Obtener Estadstica. Layout: Upper Byte Lower Byte
- Un valor 00 04 especifica la Operacin Borrar Estadstica. [ ] [ Software version in hex ]
Most significant bit defines Word 15 error counters
(see Word 15)
CONSULTA: Esta es la secuencia de campos en la consulta:
02 Network address for this station
03 MAC state variable:
Function Subfunction Operation
o Power up state
08 00 15 00 03 (Get Statistics)
1 Monitor offtine state
08 00 15 00 04 (Clear Statistics)
2 Duplicate offline state
3 Idle state
RESPUESTA OBTENER ESTADSTICA: Esta es la secuencia de campos en la 4 Use token state
respuesta normal a una consulta de Obtener Estadstica:
5 Work response state
6 Pass token state
Function Subfunction Operation Byte Count Data
7 Solicit response state
08 0015 00 03 00 6C Words 00 - 53
8 Check pass state
9 Claim token state
RESPUESTA BORRAR ESTADSTICA : La respuesta normal a una consulta de 10 Claim response state
Borrar Estadsticas es una copia de la consulta: 04 Peer status (LED code); provides status of this unit relative to the network:
0 Monitor link operation
Function Subfunction Operation
32 Normal link operation
08 00 15 00 04
64 Never getting token
96 Sole station
128 Duplicate station
Estadstica de la Red Modbus Plus (Continuacin) Hl Bad MAC function code error counter
19 LO Communication counter
Word Bits Meaning
Hl Communication failed error counter
05 Token pass counter; increments each time this station gets the token
20 LO Good receive packet success counter
06 Token rotation time in ms
Hl No response received error counter
07 LO Data master failed during token ownership bit map
21 LO Exception response received error counter
Hl Program master failed during token ownership bit map
Hl Unexpected path error counter
08 LO Data master token owner work bit map
22 LO Unexpected response error counter
Hi Program master token owner work bit map
Hl Forgoten transaction error counter
09 LO Data slave token owner work bit map
23 LO Active station table bit map, nodes 1...8
Hl Program slave token owner work bit map
Hl Active station table bit map, nodes 9...16
10 Hl Data slave/get slave command transfer request bit map
24 LO Active station table bit map, nodes 17...24
11 LO Program master/get master rsp transfer request bit map
Hl Active station table bit map, nodes 25...32
Hl Program slave/get slave command transfer request bit map
25 LO Active station table bit map, nodes 33...40
12 LO Program master connect status bit map
Hi Active station table bit map, nodes 41...48
Hl Program slave automatic logout request bit map
26 LO Active station table bit map, nodes 49...56
13 LO Pretransmit deferral error counter
Hl Active station table bit map, nodes 57...64
Hl Receive buffer DMA overrun error counter
27 LO Token station table bit map, nodes 1...8
14 LO Repeated command received counter
Hl Token station table bit map, nodes 9...16
Hl Frame size error counter
28 LO Token station table bit map, nodes 17...24
15 If Word 1 bit 15 is not set, Word 15 has the following meaning:
Hl Token station table bit map, nodes 25...32
LO Receiver collision-abort error counter
29 LO Token station table bit map, nodes 33...40
HI Receiver alignment error counter
Hl Token station table bit map, nodes 41...48
If word 1 bit 15 is set, Word 15 has then following meaning:
30 LO Token station table bit map, nodes 49...56
LO Cable A framing error
Hl Token station table bit map, nodes 57...64
Hl Cable B. framing error
31 LO Global data present table bit map, nodes 1...8
16 LO Receiver CRC error counter
Hl Global data present table bit map, nodes 9...16
Hl Bad packet-length error counter
32 LO Global data present table bit map, nodes 17...24
17 LO Bad link-address error counter
Hl Global data present table bit map, nodes 25...32
Hl Transmit buffer DMA-underrun error counter
33 LO Global data present table bit map, nodes 33...40
Hl Global data present table bit map, nodes 41...48
34 LO Global data present table map, nodes 49...56
Hl Global data present table bit map, nodes 57...64
controladores de 8K. Mirar en 484 Users Poll 484 Not supported Not supported
Read Coil Status 2000 coils 2000 coil
Los listados de esta seccin
Guide para controladores de menor talla. Read Input Status 2000 inputs 2000 inp
muestran la mxima cantidad de datos Fetch Comm. Event Ctr. N/A N/A
Read Holding Registers 125 registers 125 regis
utilizados en las consultas y respuestas Fetch Comm. Event Log N/A 70 data bytes
Read Input Registers 125 registers 125 regis
realizadas entre un master y sus Function Description Query ResponseProgram Controller 33 data bytes 33 data bytes
Force Single Coil 1 coil 1 coil
controladores esclavos. Todos los cdigos Read Coil Status 512 coils 512 coils Poll Controller N/A 33 data bytes
PresetSingle Register 1 register 1 registe
de funcin as como las cantidades estn Read Input tatus 512 inputs 512 inputs Force Multiple Coils 800 coils 800 coils
Read Exception Status N/A 8coils
en decimal. Read Holding Registers 254 registers 254 registersPreset Multiple Registers 100 registers 100 registers
Diagnostics N/A N/A
Read Input Registers 32 registers 32 registers Report Slave ID
184/384 N/A N/A
Program 484 Not supported Not supp
ForceSingle oil 1 coil 1 coil Program 884/M84 Not supported Not supported
ction Description Query Response Poll 484 Not supported Not supp
Preset Single Register 1 register 1 register Reset Comm. Link Not supported Not supported
Read Coil Status 800 coils 800 coils Fetch Comm. Event Ctr. Not supported Not supp
Read Exception S atus N/A 8 coils ReadGeneral Reference (1) (1 )
2 Read Input Status 800 inputs 800 inputs Fetch Comm. Event Log Not supported Not supp
Diagnostics N/A N/A Write General Reference (1) (1)
3 Read Holding Registers 100 registers 100 registers Program Controller Not supported Not supp
Program 484 16 data bytes 16 data bytes
4 Read Input Registers 100 registers 100 registers Poll Controller Not supported Not supp
Poll 484 N/A 16 data bytes
5 Force Single Coil 1 coil 1 coil Notes: Force Multiple Coils 800 coils 800 coils
Fetch Comm. Event Ctr. Not supported Not supported
6 Prese Single Register 1 register 1 register
Fetch Comm. Event Log Not supported Not supported
(1) La longitud mxima del Preset Multiple Registers 100 registers 100 regis
7 Read Exception Status N/A 8coils mensaje no debe exceder de 256 bytes. Report Slave ID N/A N/A
Program Controller Not supported Not supported
8 Diagnostics N/A N/A Program 884/M84 (1) (1)
Poll Controller Not supported Not supported
9 Program 484 Not supported Not supported Reset Comm. Link N/A N/A
Force Multiple Coils 800 coils 800 coils
10 Poll 484 Not supported Not supported Read General Reference Not supported Not supp
Preset Multiple Registers 60 registers 60 registers
11 Fetch Comm. Event Ctr. N/A N/A Write General Reference Not supported Not supp
Report Slave ID N/A N/A
12 Fetch Comm. Event Log N/A 70 data bytes
Program 884/M84 Not supported Not supported
13 Program Controller 32 data bytes 32 data bytes
Reset Comm. Link Not supported Not supported Notes:
14 Poll Controller N/A 32 data bytes
15 Force Multiple Coiis 800 coils 800 coils
Read General Reference Not supported Not supported (1) La longitud mxima del
Write General Reference Not supported Not supported mensaje no debe exceder de 256 bytes.
16 Preset Multiple Registers 100 registers 100 registers
17 Report Slave ID /A N/A
18 Program 88 / M84 Not supported Not suported
19 Reset Comm. Link Not supported
Parmetros Mximos en
Not supported
20 Read General Reference Not supported Consulta / Respuesta
Not supported
21 Write General Reference Not supported (Continuacin)
Not supported
584
Function Description Query Response
Read Coil Status 2000 coils 2000 coils
Read Input Status 2000 inputs 2000 inputs
Read Holding Registers 125 registers 125 registers
Read Input Registers 125 registers 125 registers
Force Single Coil 1 coil 1 coil
Preset Single Register 1 register 1 register
o Generacin LRC
o Generacin CRC