Modbus protokoll rs485: Difference between revisions

From Chaosdorf Wiki
No edit summary
Line 26: Line 26:
2. Set the address (communication using the device address, the default address is 01)<br>
2. Set the address (communication using the device address, the default address is 01)<br>
<br>
<br>
/ *************************************************************************************** / <br>
/***************************************************************************************/ <br>
Set the address to: 09<br>
Set the address to: 09<br>
01 10 00 00 00 01 02 00 09 66 56 // Current address 01 is changed to 09<br>
01 10 00 00 00 01 02 00 09 66 56           // Current address 01 is changed to 09<br>
00 10 00 00 00 01 02 00 09 6B C6 // Broadcast Address Modified to 09<br>
00 10 00 00 00 01 02 00 09 6B C6           // Broadcast Address Modified to 09<br>
<br>
<br>
Read Address<br>
Read Address<br>
00 03 00 00 00 01 85 db<br>
00 03 00 00 00 01 85 db <br>
<br>
Return:<br>
Return:<br>
00 03 02 00 01 44 44 // 01 for Address<br>
00 03 02 00 01 44 44                       // 01 for Address<br>
 
/ *************************************************************************************** / <br>


/***************************************************************************************/ <br>
Meaning of each byte:<br>
Meaning of each byte:<br>
[address 1]<br>
[address 1]<br>
// --------------------------------------------<br>
<br>
No. 1 relay is on : 01 05 00 01 01 00 9d 9a<br>
No. 1 relay is on : 01 05 00 01 01 00 9d 9a<br>
<br>
<br>
Byte 1: address<br>
Byte 1:       address <br>
byte 2: function<br>
byte 2:       function <br>
byte 3 4: register address<br>
byte 3 4:     register address <br>
byte 5 6: register data<br>
byte 5 6:     register data <br>
byte 7 8: CRC check<br>
byte 7 8:     CRC check <br>
<br>
 
/***************************************************************************************/ <br>
[Mod Bus Address 1]<br>
<br>
0 relay ON:      01 05 00 00 FF 00 8C 3A <br>
0 relay off:      01 05 00 00 00 00 CD CA <br>
<br>
<br>
/ *************************************************************************************** / <br>
No. 1 relay ON:   01 05 00 01 FF 00 DD FA <br>
[Address 1]
No. 1 relay off: 01 05 00 01 00 00 9C 0A <br>
// --------------------------------------------<br>
<br>
0 relay ON: 01 05 00 00 FF 00 8C 3A<br>
No. 2 relay ON:   01 05 00 02 FF 00 2D FA <br>
0 relay off: 01 05 00 00 00 00 CD CA<br>
No. 2 relay off: 01 05 00 02 00 00 6C 0A <br>
// --------------------------------------------<br>
<br>
No. 1 relay ON: 01 05 00 01 FF 00 DD FA<br>
/*************************************************************************************** / <br>
No. 1 relay off: 01 05 00 01 00 00 9C 0A<br>
off:             01 0F 00 00 00 08 01 00 FE 95 <br>
// --------------------------------------------<br>
all bright:       01 0F 00 00 00 08 01 FF BE D5 <br>
No. 2 relay open: 01 05 00 02 FF 00 2D FA<br>
/*************************************************************************************** / <br>
No. 2 relay off: 01 05 00 02 00 00 6C 0A<br>
// --------------------------------------------<br>
/ *************************************************************************************** / <br>
off: 01 0F 00 00 00 08 01 00 FE 95<br>
all bright: 01 0F 00 00 00 08 01 FF BE D5<br>
/ *************************************************************************************** / <br>


Read all relay states:<br>
Read all relay states:<br>
<br>
<br>
Send: 01 01 00 00 00 08 3D CC<br>
Send: 01 01 00 00 00 08 3D CC <br>
<br>
<br>
Return: 01 01 01 00 51 88 Relay fully closed<br>
Return: 01 01 01 00 51 88       Relay fully closed <br>
<br>
<br>
Return: 01 01 01 03 11 89 All relays are on<br>
Return: 01 01 01 03 11 89       All relays are on<br>
<br>
<br>
/ *************************************************************************************** / <br>
/*************************************************************************************** / <br>
Read all input switch status<br>
Read all input switch status <br>
Send: 01 02 00 00 00 08 79 CC // Read 8 input states<br>
Send: 01 02 00 00 00 08 79 CC     Read 8 input states <br>
Return: 01 02 01 00 A1 88<br>
Return: 01 02 01 00 A1 88 <br>
<br>
<br>
<br>
<br>


=== Modbus Rtu 4 ===
=== Modbus Rtu 4 ===

Revision as of 21:55, 2 December 2019

Modbus Rtu 2

Hardware Resources:

 *   RS485 communication interface
 *   TTL communication interface
 *   2 optocoupler isolation input
 *   2 way optocoupler isolation output
 *   A user button
 *   A user LED
 *   A power indicator
 *   A STM32F030F4 microcontroller
 *   2 relay status indicators LED lights
 *   Power supply terminal interface (12V power supply)


Modbus RTU Instructions:

Baud rate: 9600 8 NONE 1

Hexadecimal send
hexadecimal receive

Operation steps:
1. Software settings communication baud rate
2. Set the address (communication using the device address, the default address is 01)

/***************************************************************************************/
Set the address to: 09
01 10 00 00 00 01 02 00 09 66 56 // Current address 01 is changed to 09
00 10 00 00 00 01 02 00 09 6B C6 // Broadcast Address Modified to 09

Read Address
00 03 00 00 00 01 85 db

Return:
00 03 02 00 01 44 44 // 01 for Address

/***************************************************************************************/
Meaning of each byte:
[address 1]

No. 1 relay is on : 01 05 00 01 01 00 9d 9a

Byte 1: address
byte 2: function
byte 3 4: register address
byte 5 6: register data
byte 7 8: CRC check

/***************************************************************************************/
[Mod Bus Address 1]

0 relay ON: 01 05 00 00 FF 00 8C 3A
0 relay off: 01 05 00 00 00 00 CD CA

No. 1 relay ON: 01 05 00 01 FF 00 DD FA
No. 1 relay off: 01 05 00 01 00 00 9C 0A

No. 2 relay ON: 01 05 00 02 FF 00 2D FA
No. 2 relay off: 01 05 00 02 00 00 6C 0A

/*************************************************************************************** /
off: 01 0F 00 00 00 08 01 00 FE 95
all bright: 01 0F 00 00 00 08 01 FF BE D5
/*************************************************************************************** /

Read all relay states:

Send: 01 01 00 00 00 08 3D CC

Return: 01 01 01 00 51 88 Relay fully closed

Return: 01 01 01 03 11 89 All relays are on

/*************************************************************************************** /
Read all input switch status
Send: 01 02 00 00 00 08 79 CC Read 8 input states
Return: 01 02 01 00 A1 88


Modbus Rtu 4

Specifications:

 *   RS485 communication interface
 *   TTL communication interface
 *   4 optocoupler isolation input
 *   4 way optocoupler isolation output
 *   A user button
 *   A user LED
 *   A power indicator
 *   A STM32F030F4 microcontroller
 *   4 relay status indicators LED lights
 *   Power supply terminal interface (12V power supply)


Modbus RTU command

Baud Rate: 9600 8 NONE 1


/ *************************************************************************************** /
Setting address is: 01
00 06 40 00 00 01 5c 1b
Setting address is: 02
00 06 40 00 00 02 1c 1a
Read address
00 03 40 00 00 01 90 1b
/ *************************************************************************************** /
Read the software version
00 03 00 04 00 01 c4 1a // [month] broadcast read (only by one device to address all practical, easy to test)
0,003,000,800,010,419 [years] // broadcast read (only by one device to address all practical, easy to test)
00 03 00 10 00 01 84 1e [when] // sub broadcast read (only by one device to address all practical, easy to test)

Read the hardware version (PCB version)
0,003,002,000,018,411 // broadcast read (only by one device to address all practical, easy to test)
/ *************************************************************************************** /
[1 Address]

Open relay 1
01 05 00 01 01 00 9d 9a
Relay 1 closed
01 05 00 01 00 00 9c 0a

No. 2 relay open
01 05 00 02 01 00 6d 9a
No. 2 relay closed
01 05 00 02 00 00 6c 0a

3 relay open
01 05 00 03 01 00 3c 5a
3 Relay Off
01 05 00 03 00 00 3d ca

No. 4 relay open
01 05 00 04 01 00 8d 9b
4 Relay Off
01 05 00 04 00 00 8c 0b
Quanmie
01 05 00 ff 00 00 fd fa
All light
01 05 00 ff ff ff fc 4a

[2 Address]
Open relay 1
02 05 00 01 01 00 9d a9
Relay 1 closed
02 05 00 01 00 00 9c 39

No. 2 relay open
02 05 00 02 01 00 6d a9
No. 2 relay closed
02 05 00 02 00 00 6c 39

3 relay open
02 05 00 03 01 00 3c 69
3 Relay Off
02 05 00 03 00 00 3d f9

No. 4 relay open
02 05 00 04 01 00 8d a8
4 Relay Off
02 05 00 04 00 00 8c 38
Quanmie
02 05 00 ff 00 00 fd c9
All light
02 05 00 ff ff ff fc 79
/ *************************************************************************************** /
No. 1 relay 1 channel status
01 01 00 01 00 04 6c 09

No. 1 Relay 2 channel status
01 01 00 02 00 04 9c 09

Relay 1 3 Channel status
01 01 00 03 00 04 CD C9

4 channel relay 1 status
01 01 00 04 00 04 7C 08
/ *************************************************************************************** /
Read the status of all input interfaces
01 02 00 00 00 00 78 0a