computer network 5. modbus
DESCRIPTION
Introduction to Modbus.TRANSCRIPT
![Page 1: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/1.jpg)
V. Modbus
Felix Lin
Computer Network
![Page 2: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/2.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/3.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/4.jpg)
Protocol Stack
![Page 5: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/5.jpg)
Use Case
![Page 6: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/6.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/7.jpg)
How It Works?
![Page 8: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/8.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/9.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/10.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/11.jpg)
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](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/12.jpg)
Transaction State Diagram
![Page 13: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/13.jpg)
Read Coils
![Page 14: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/14.jpg)
Read Discrete Inputs
![Page 15: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/15.jpg)
Read Holding Registers
![Page 16: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/16.jpg)
Read Input Registers
![Page 17: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/17.jpg)
Write Single Coil
![Page 18: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/18.jpg)
Write Single Register
![Page 19: Computer Network 5. Modbus](https://reader036.vdocuments.us/reader036/viewer/2022062312/5560ece5d8b42a016e8b5592/html5/thumbnails/19.jpg)
Write Multiple registers