12V弱电Modbus开关智能面板

무료무료 기술 자료

이 글은 바로 읽을 수 있으며 기초 학습과 검색 유입에 적합합니다.

12V弱电Modbus开关智能面板
12V弱电Modbus开关智能面板插图

1. 프로토콜介绍

1.1. 프로토콜형식

주소码指令码레지스터주소通讯데이터CRC 체크섬
1Byte1Byte2BytenByte2Byte

1.2. 주소码

智能面板的通讯주소 ,주소范围: 1~42( 0x01 ~0x2A) , 255 为广播주소(0xFF)。

1.3. 指令码列表

指令码설명
0x03읽기面板데이터
0x06修改面板데이터
0x10设置多个레지스터주소매개변수

1.4. CRC 검증算法

Modbus 프로토콜표준체크섬算法。

1.5. 面板控制指令

1.5.1. 修改面板通讯주소

레지스터주소설명
0x1000주소范围 0x01~0x2A , 出厂默认是 0x01。

指令举例:

通讯주소 0x01 改为 0x02
01 06 10 00 00 02 0C CB
通讯주소改为 0x01(广播모드)
FF 06 10 00 00 01 59 14

1.5.2. 设置面板工作모드

레지스터주소설명
0x1003默认值为 0x0000
레지스터位含义
Bit15~Bit6保留 , 固定为 0
Bit5设置按键松开主动보내기데이터Bit5 =1 且 Bit2 =1:使能主动보내기Bit5 =0:禁止主动보내기
Bit4保留 , 固定为 0
Bit3设置按键背光灯延时熄灭Bit3 =1:按键 10 秒内没动作 ,背光灯自动熄灭Bit3 =0:按键背光灯常亮
 Bit2设置按键按下主动보내기데이터Bit2 =1:使能主动보내기 ,主动보내기모드Bit2 =0:禁止主动보내기 ,主从轮询모드 , 由主机发指令읽기键值
Bit1保留 , 固定为 0
 Bit0设置演示모드Bit0 =1:演示모드 ,按键控制背光灯亮灭 ,主要用于功能效果演示Bit0 =0:正常모드 , 由 RCU 发指令控制背光灯亮灭

指令举例:

演示모드 ,按键不主动보내기 ,背光常亮
01 06 10 03 00 01 BC CA
演示모드 ,按键按下主动보내기 ,按键松开不主动보내기 ,背光常亮
01 06 10 03 00 05 BD 09
演示모드 ,按键按下和松开都主动보내기 ,背光常亮
01 06 10 03 00 25 BC D1
正常모드 ,按键不主动보내기 ,背光常亮
01 06 10 03 00 00 7D 0A
正常모드 ,按键按下主动보내기 ,按键松开不主动보내기 ,背光常亮
01 06 10 03 00 04 7C C9
正常모드 ,按键按下和松开都主动보내기 ,背光常亮
01 06 10 03 00 24 7D 11
正常모드 ,按键不主动보내기 ,背光延时 10 秒熄灭
01 06 10 03 00 08 7C CC
正常모드 ,按键按下主动보내기 ,按键松开不主动보내기 ,背光延时 10 秒熄灭
01 06 10 03 00 0C 7D 0F
正常모드 ,按键按下和松开都主动보내기 ,背光延时 10 秒熄灭
01 06 10 03 00 2C 7C D7

1.5.3. 控制背光灯和按键灯

레지스터주소설명
0x1008面板的背光灯和按键灯通过设置该레지스터的值实时控制
레지스터位含义
Bit15~Bit9保留
Bit8控制背光灯Bit8 =1:面板上所有按键的背光灯点亮Bit8 =0:面板上所有按键的背光灯熄灭
Bit7控制按键 8 指示灯Bit7 =1:按键 8 指示灯点亮 ,按键 8 背光灯熄灭Bit7 =0:按键 8 指示灯熄灭
Bit6控制按键 7 指示灯Bit6 =1:按键 7 指示灯点亮 ,按键 7 背光灯熄灭Bit6 =0:按键 7 指示灯熄灭
Bit5控制按键 6 指示灯Bit5 =1:按键 6 指示灯点亮 ,按键 6 背光灯熄灭Bit5 =0:按键 6 指示灯熄灭
 Bit4控制按键 5 指示灯Bit4 =1:按键 5 指示灯点亮 ,按键 5 背光灯熄灭Bit4 =0:按键 5 指示灯熄灭
 Bit3控制按键 4 指示灯Bit3 =1:按键 4 指示灯点亮 ,按键 4 背光灯熄灭Bit3 =0:按键 4 指示灯熄灭
 Bit2控制按键 3 指示灯Bit2 =1:按键 3 指示灯点亮 ,按键 3 背光灯熄灭Bit2 =0:按键 3 指示灯熄灭
 Bit1控制按键 2 指示灯Bit1 =1:按键 2 指示灯点亮 ,按键 2 背光灯熄灭Bit1 =0:按键 2 指示灯熄灭
 Bit0控制按键 1 指示灯Bit0 =1:按键 1 指示灯点亮 ,按键 1 背光灯熄灭Bit0 =0:按键 1 指示灯熄灭

指令举例:

所有按键指示灯和背光灯熄灭
01 06 10 08 00 00 0C C8
所有按键指示灯熄灭 ,所有按键背光灯点亮
01 06 10 08 01 00 0D 58
按键 1 指示灯点亮 ,其他按键背光灯点亮
01 06 10 08 01 01 CC 98
按键 1 指示灯点亮 ,其它键指示灯和所有按键背光灯熄灭
01 06 10 08 00 01 CD 08

1.5.4. 읽기按键键值

레지스터주소설명
0x100B通过该레지스터읽기指定按键的实时键值
레지스터位含义
Bit15~Bit8按键绝对键值 ,계산公式 :绝对键值  = (面板주소  - 1) * 6 +  按键번호
Bit7按键 8 键值Bit7 =1:按键 8 按下Bit7 =0:按键 8 松开
Bit6按键 7 键值Bit6 =1:按键 7 按下Bit6 =0:按键 7 松开
Bit5按键 6 键值Bit5 =1:按键 6 按下Bit5 =0:按键 6 松开
 Bit4按键 5 键值Bit4 =1:按键 5 按下Bit4 =0:按键 5 松开
 Bit3按键 4 键值Bit3 =1:按键 4 按下Bit3 =0:按键 4 松开
 Bit2按键 3 键值Bit2 =1:按键 3 按下Bit2 =0:按键 3 松开
 Bit1按键 2 键值Bit1 =1:按键 2 按下Bit1 =0:按键 2 松开
 Bit0按键 1 键值Bit0 =1:按键 1 按下Bit0 =0:按键 1 松开

注意:

1、主从轮询모드(0x1003 레지스터 Bit2 =0) ,按键松开 2 秒后 ,键值레지스터自动清零 ,主机보내기읽기指令后 ,键值 레지스터也会清零。

2、主动보내기모드(0x1003 레지스터 Bit2 =1) ,按键按下后立刻보내기键值데이터并将键值레지스터清零。

3、主机发广播指令(주소为 0xFF)읽기键值时 ,只有工作在主从轮询모드且按键松开 2 秒内的面板回复 ,其他面板 不回复。

指令举例:

읽기按键 1 的键值
 보내기 01 03 10 0B 00 01 F1 08按下返回01 03 00 02 01 01 24 5A
未按下返回01 03 00 02 00 00 E4 0A
읽기按键 1 的键值(广播모드)
 보내기 FF 03 10 0B 00 01 E4 D6按下返回01 03 00 02 01 01 24 5A
未按下返回不返回

1.5.5. 읽기버튼状态

레지스터주소설명
   0x1310按键 1 状态值0x00:关0x01:开0x02:长按标志 ,按下超过 2 秒有效0xFF:按键卡死标志 ,长按超过 1 分钟有效 ,0x100B 键值清零 ,按键松开后自动恢复检测注 :主机보내기읽기指令后 , 自动清零键值레지스터 0x100B。
0x1311按键 2 状态值 ,功能同上
0x1312按键 3 状态值 ,功能同上
0x1313按键 4 状态值 ,功能同上
0x1314按键 5 状态值 ,功能同上
0x1315按键 6 状态值 ,功能同上
0x1316按键 7 状态值 ,功能同上
0x1317按键 8 状态值 ,功能同上

指令举例:

읽기按键 1 的状态
  보내기  01 03 13 10 00 01 81 4B按下返回01 03 00 01 00 01 D5 CA
未按下返回01 03 00 01 00 00 14 0A
长按返回01 03 00 01 00 02 95 CB
  卡死返回01 03 00 01 00 FF 54 4A
읽기按键 1 至 8 的状态
보내기01 03 13 10 00 08 41 4D未按下返回01 03 00 08 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 DA 4C
실제 프로젝트에 이 자료를 활용하시겠습니까?

도구 센터에서 프레임 분석, CRC 검증, 장비 디버깅을 진행하거나 요청을 제출하여 선정 및 연동 제안을 받아보세요.

엔지니어 회원

이 글을 실행 가능한 디버깅 자료로 활용하세요

가입하면 고급 프레임 분석, 자료 패키지 다운로드, 코드 예제, 엔지니어링 사례, 우선 기술 지원을 이용할 수 있어 실제 프로젝트 납품에 적합합니다.

고급 도구 무제한 이용
자료 패키지와 코드 패키지
완전한 엔지니어링 사례 라이브러리
우선 기술 지원 채널

답글 작성

이메일 주소는 공개되지 않습니다. 必填项已用 * 标注