VisualHMI 支持的通信协议详解:DCBUS/XGUS/Modbus 主从帧格式与配置

freeFree Technical Resource

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

这篇把 VisualHMI 支持的协议挨个过一遍,重点放在Modbus RTU 主从模式帧格式上——因为这是和 modbus.cn 读者最贴的部分,也是调试时最容易踩坑的地方。其他 PLC Protocol(FX2N/台达/信捷/永宏)配置项大同小异,文末一并列了。

⚠️ 铁律:同一路串口只能跑一种协议。 你不能在 UART1 上既挂 Modbus 又挂 DCBUS。多协议需求得靠硬件多路串口。

一、DCBUS Protocol(大彩组态协议)

DCBUS 是屏和自有主板对接常用的组态协议,帧结构如下:

fieldLength说明
帧头2 byte默认 0xAA55,可自定义
站号1 바이트默认 0,255 为广播
Length1 바이트기능 코드+데이터+校验的总字节数
기능 코드1 바이트0xF1 写 / 0xF2 读
주소2 byte用户区 0x0100~0xFFFF,系统区 <0x1000
데이터n byteregister value
check2 byteCRC16 或预留 0xCCCC

CRC16 算法(大彩给的 C 参考,Modbus 同款查表法):

uint16 MB_calc_crc16(uint8 *buffer, uint32 n){
  uint16 crc = 0xffff;
  for(i = 0; i < n; i++){
    crc = crc ^ buffer[i];
    for(j = 0; j > 1;
      if(carry_flag == 1) crc = crc ^ 0xa001;
    }
  }
  return crc;
}

写变量(0xF1)example,向 0x1000 写 100、站号 0、不开 CRC:

AA55 00 07 F1 1000 0064 CCCC
 ↑帧头 ↑站 ↑Length ↑写 ↑주소  ↑值   ↑预留

站号设为 1 且开 CRC 时:AA55 01 07 F1 1000 0064 7289,屏应答 AA55 01 03 F1 E174

读变量(0xF2)example,读 0x1000(假设值 100):

主板请求: AA55 00 06 F2 1000 01 CCCC
屏返回:   AA55 00 08 F2 1000 01 0064 CCCC
💡 调试提示: Open"自动上传"后,你在屏上点按钮改了寄存器,屏会主动发 0xF2 帧上报给主板,不用主板去轮询。这点和 Modbus 从机主动上报不一样,DCBUS 的上报是屏→主板方向。

二、XGUS Protocol

XGUS 帧头默认 0x5AA5,结构:帧头(2) + Length(1) + 기능 코드(1) + 주소(2) + 데이터(n) + CRC16。切换画面两种模式:

模式1: 5AA5 03 80 03 XX        // XX=画面ID
模式2: 5AA5 07 82 0084 5A01 XXXX // XXXX=画面ID

三、Modbus RTU(重点)

屏支持标准 Modbus-RTU,可设主机(Master)从机(Slave)

3.1 主机模式 ModbusMaster

屏当主机去轮询下挂的从机(仪表、变频器、PLC)。关键配置项:

配置项含义
最多读取数单条指令读取的最大字节数
读取间隔数地址间隔小于此值可合并成一条读指令
写重试次数写失败后最大重试
超时时间等从机应答的毫秒数
间隔时间收到应答后延时多久发下一条
写寄存器命令自动(0x06 单写/0x10 多写)或全用 0x10
离线优化读取勾选后离线的从机不再发请求
从站数目默认 1,RS485 多从站界面最多配 10 个,更多用 LUA
预设字节序默认大端,浮点/长整型可重指定

支持功能码:0x01 0x02 0x03 0x04 0x05 0x06 0x0F 0x10

⚠️ 重点:字节序坑最多。 默认大端(AB CD),但很多设备是"大端字节序 + 大端字序"(CD AB)或反之。浮点显示错乱先查字节序,不是协议问题。用 Modbus RTU Tutorial 里的字节序对照表对照设。

3.2 从机模式 ModbusSlave

屏自己当一条 Modbus slave,等上位机(PLC、网关、你的调试软件)来读。配置项:

配置项含义
从机站号本屏的 Modbus 주소
字符间隔超过该 ms 认为断帧
延时应答收到请求后延时再应答

同样支持 0x01~0x10 全套功能码。从机模式下"画面写入地址/画面取自地址"可实现屏和 PLC 画面联动。

四、PLC Protocol(FX2N/FX3U/台达/信捷/永宏)

这些配置项高度一致,列核心差异:

Protocol寄存器寻址特点
FX2N标准模式指令短(如 02 30 31 30 30 30 30 32 03 35 36),扩展模式指令长、地址范围大
FX3U同 FX2N,标准/扩展两模式
DELTA DVPASCII 模式:STX+주소+指令+데이터+LRC check+CR LF
信捷 XC/XD标准信捷 PLC Protocol
永宏 FB标准永宏协议

所有 PLC 协议都有"与 PLC 同步画面"选项:画面变化写到指定 PLC 주소,或 PLC 某地址变值时切换画面(0xFFFF 为自动)。

本文整理自 广州大彩科技 VisualHMI 开发文档(hmi-doc.gz-dc.com)协议说明章节,帧格式与寄存器配置均按原文保真,版权归大彩科技所有,此处做重点标注重排。

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 *.