Computer Network 5. Modbus

20
V. Modbus Felix Lin Computer Network

description

Introduction to Modbus.

Transcript of Computer Network 5. Modbus

Page 1: Computer Network 5. Modbus

V. Modbus

Felix Lin

Computer Network

Page 2: Computer Network 5. Modbus

Review

OSI Model Modbus

Application Layer

Presentation Layer

Session Layer

Transport Layer

Network Layer

Data Link Layer

Physical Layer

Modbus

NA

NA/Ports

NA/TCP

NA/IP

RS-232/MAC

Serial/Ethernet

Mapping

Page 3: Computer Network 5. Modbus

Overview

• Published by Modicon in 1979• Modbus is a Protocol, NOT RS232 or

RS485 neither• Use for communication between

individual equipment• RTU/ASCII• Usually over RS232, RS485 or TCP/IP.• Take TCP 502 port to use

Page 4: Computer Network 5. Modbus

Protocol Stack

Page 5: Computer Network 5. Modbus

Use Case

Page 6: Computer Network 5. Modbus

General Frame

• ADU – Application Data Unit– Maxima size is 256Byte (inherited from RS485)

• PDU – Protocol Data Unit– Maxima size is 253Byte

(ADU – 1Byte Server Address – 2Byte CRC)

• Use big-endian representation

Page 7: Computer Network 5. Modbus

How It Works?

Page 8: Computer Network 5. Modbus

Data Model

Primary tables Object type TypeDiscretes Input Single bit RO

Coils Single bit RW

Input Registers 16- bit word RO

Holding Registers 16- bit word RW

Page 9: Computer Network 5. Modbus

Type of Function Codes

• Public– Data Access (Read/Write)• Bit Access• Word Access(16bits)

– Diagnostic– Other

• User Defined • Reserved for Exception

(128~255)

Page 10: Computer Network 5. Modbus

Function Codes(Data Access)

Code Description Type

Bit Access

0x01 Read Coils Read

0x02 Read Discrete Inputs Read

0x05 Write Single Coil Write

0x15 Write Multiple Coils Write

Word Access(16bits

)

0x03 Read Holding Registers Read

0x04 Read Input Register Read

0x06 Write Single Register Write

0x10 Write Multiple Registers Write

Page 11: Computer Network 5. Modbus

Exception CodesCode Name

0x01 ILLEGAL FUNCTION0x02 ILLEGAL DATA ADDRESS0x03 ILLEGAL DATA VALUE0x04 SERVER DEVICE FAILURE0x05 ACKNOWLEDGE0x06 SERVER DEVICE BUSY0x08 MEMORY PARITY ERROR0x0A GATEWAY PATH UNAVAILABLE0x0B GATEWAY TARGET DEVICE FAILED TO RESPOND

Page 12: Computer Network 5. Modbus

Transaction State Diagram

Page 13: Computer Network 5. Modbus

Read Coils

Page 14: Computer Network 5. Modbus

Read Discrete Inputs

Page 15: Computer Network 5. Modbus

Read Holding Registers

Page 16: Computer Network 5. Modbus

Read Input Registers

Page 17: Computer Network 5. Modbus

Write Single Coil

Page 18: Computer Network 5. Modbus

Write Single Register

Page 19: Computer Network 5. Modbus

Write Multiple registers

Page 20: Computer Network 5. Modbus

Reference

• http://www.modbus.org/