신제이 인간 - 기계 인터페이스 Modbus RTU 통신 프로토콜 설명

freeFree Technical Resource

This content is free to read, suitable for basic learning and search traffic.

신제이 인간 - 기계 인터페이스 Modbus RTU 통신 프로토콜 설명

Modbus

测试工具:信捷 T-com

测试设备:信捷 PLC                                                              

PLC

Modbus

기능 코드(16 进制)기능

通讯格式:Baud rate 19200,even parity(EVEN), 데이터 bit 8 位,

注意: 以下测试地址都是十六进制地址, 实际操作需将十六进制地址转换成十

1 명 .    01

例如:读取线圈

0X4800~0X4807:PLC

send command: 01 01 48 00 00 10 2A

动作设备号 (1 바이트)기능 코드 (1 바이트)시작ing 주소  高位(1 바이트)시작ing 주소  低位(1 바이트)总位数高位(1 바이트)总位数低位(1 바이트)CRC(1 바이트) (1 바이트)

반환 명령 : 01 01 02 00 00 B 9 FC

动作设备号 (1 바이트)기능 코드 (1 바이트)byte count (2 Byte)位状态  (On/Off)位状态  (On/Off)CRC(1 바이트) (1 바이트)

2.     03

例如

4X000~4X003 :PLC

4X00

send command:

>
동작 장치 번호 (1 바 이트) 기능 코드 (1 바 이트) 시작 주소 상 위 (1 바 이트) 시작 주소 하 위 (1 바 이트) 총 비트 상 위 (1 바 이트) 총 비트 하 위 (1 바 이트) CR C (1 바 이트) (1 바 이트) 보내 기 01 03 00 00 00 04 44 09 / / t body        

send command: 01 03 08 00 04 00 05 00 01 00 02 CC

      
               
动 作设备号(1  Byte)기능 코드(1  Byte)byte count (1Byte)寄 存 器 值高位 4X00寄 存 器 值低位 4X00register value 高位    4X01register value 低位    4X01寄 存 器 值高位 4X02寄 存 器 值低位 4X02

3.     05

例如

0X4800 :PLC

send command: 01 05 48 00 FF

动 作设备号(1 바이트)기능 코드(1 바이트)起始地址高 位(1 바이트)起始地址低 位(1 바이트)总位数 高 位 (1  Byte)总位数 低 位 (1  Byte)CRC(1Byte)(1Byte)

返回命令: 01 05 48 00 FF

动作设备号(1 바이트)기능 코드(1 바이트)起始地址高位(1 바이트)起始地址低位(1 바이트)总位数高位(1 바이트)总位数低位(1 바이트)CRC(1 바이트)(1 바이트)

例如:置

0X4800 :PLC

send command: 01 05 48 00 00 00 DA

动作设备号 (1 바이트)기능 코드 (1 바이트)시작ing 주소  高位(1 바이트)시작ing 주소  低位(1 바이트)总位数高位 (1 바이트)总位数低位 (1 바이트)CRC(1 바이트)(1 바이트)

返回命令: 01 05 48 00 00 00 DA

动作设备号 (1 바이트)기능 코드 (1 바이트)시작ing 주소  高位(1 바이트)시작ing 주소  低位(1 바이트)总位数高位 (1 바이트)总位数低位 (1 바이트)CRC(1 바이트) (1 바이트)

4.     06

例如

4X00 :PLC

명령 보내 기 : 01 06 00 00 00 08 88 0 C

动作设备号 (1 바이트)기능 코드(1 바이트)시작ing 주소 高位(1 바이트)시작ing 주소 低位(1 바이트)register value 高位(1 바이트)register value 低位(1 바이트)CRC      (1 바이트) (1 바이트)

명령 반환 : 01 06 00 00 00 00 08 88 0 C

动作设备号 (1 바이트)기능 코드(1 바이트)시작ing 주소 高位(1 바이트)시작ing 주소 低位(1 바이트)register value 高位(1 바이트)register value 低位(1 바이트)CRC      (1 바이트) (1 바이트)

5.     10

例如

4X00~4X02 :PLC

send command: 01 10 00 00 00 03 06 00 0A

               动 作
    
         
 Byte)Byte)     (1Byte) 

返回命令:

动作设备号(1 바이트)기능 코드(1 바이트)起始地址高位(1 바이트)起始地址低位(1 바이트)寄存器总数高位(1 바이트)寄存器总数低位(1 바이트)CRC(1 바이트) (1 바이트)

6.     0F

예 : 켜 기 0 X 48 00    ~ 0 X 480 3

0X4800~0X4807:PLC

send command: 01 0F

        
         
动作设备号 (1 바이트)기능 코드 (1 바이트)시작ing 주소 高位(1 바이트)시작ing 주소 低位(1 바이트)位总数 高位  (1 바이트)位总数 低位  (1 바이트)寄位总 byte count (1 바이트)位的值 低位  (1Byte)位的值 高位  (1Byte)

返回命令: 01 0F

动作设备号 (1 바이트)기능 코드 (1 바이트)起始地址高位 (1 바이트)起始地址低位 (1 바이트)位总数高位(1 바이트)位总数低位(1 바이트)CRC 
Related Tags
Put this resource to use in a real project?

Go to the Tool Center for message parsing, CRC 검증 and device debugging, or submit your requirements for selection and integration advice.

Engineer Membership

Turn this article into actionable debugging resources

After activation, you can use advanced message parsing, resource pack downloads, code examples, engineering cases and priority technical support, suitable for real project delivery.

Unlimited Advanced Tools
Resource & Code Packs
Complete Engineering Case Library
Priority Technical Support

Leave a Reply

Your email 주소 will not be published. Required fields are marked *.