3 VisualHMI-协议说明

3 VisualHMI-协议说明

VisualHMI - 协议说明

VisualHMI集成DCBUS、XGUS、Modbus(主/从机)和FX2N等协议。用户开发时候,同一路串口只能使用一种协议。用户根据产品,选择对应协议开发。用户不需要关心屏幕端如何接收或发送指令/报文,只需要将变量地址关联到对应的组态控件即可。屏幕底层会将接收的报文解析后,将数据更新到控件中;同时,操作控件时,会将相应的寄存器的值下发到设备中。

1 DCBUS

DCBUS协议:一种组态协议。在工程设置中,DCBUS协议,如下所示:

帧头:2byte,默认为0xAA55,用户可自定义

站号:1byte,默认为站号0,255为广播地址。一般在RS485总线用于区分那个从站;

启用CRC:2byte,默认是启用,若关闭,校验字段默认为0XCCCC;帧头不参与校验;计算方法如下所示:

自动上传:当开启后,用户操作控件会自动上传指令给用户主板

写命令应答:用户主板给屏幕写寄存器时候,会自动应答写成功

uint16 MB_calc_crc16(uint8 *buffer, uint32n)

{

uint16 crc, i, j, carry_flag, a;

crc = 0xffff;

for(i = 0; i < n; i++)

{

crc = crc^buffer[i];

for(j = 0;j < 8;j++)

{

a = crc;

carry_flag = a&0x0001;

crc = crc >> 1;

if(carry_flag == 1)

crc = crc^0xa001;

}

}

return crc;

}

读、写、应答的帧格式如下所示:

帧头(2byte)

站号(1byte)

长度(1byte)

功能码(1byte)

地址(2byte)

数据(n byte)

校验(2byte)

0xAA55

0x00~0xFF

功能码+…+校验

0xF1/0xF2

0x0000~0xFFFF

…….

0xCCCC

1.1 写变量存储器指令指令(0xF1)

以向 0x1000 变量地址里写数值100为例: AA55 00 07 F1 1000 0064 CCCC

AA55 表示:帧头;

00表示:站号;

07表示:数据长度,功能码+…+校验的总字节长度;

F1表示:写寄存器;

1000表示:变量地址(2 byte);

0064表示:数据 100(2byte);

CCCC表示:预留字段,没有开启CRC;

若屏幕的站号为1: AA55 01 07 F1 1000 0064 CCCC

若屏幕的站号为1、开启CRC :AA55 01 07 F1 1000 0064 7289

屏幕开启应答:AA55 00 03 F1 CCCC

若屏幕的站号为1:AA55 01 03 F1 CCCC

若屏幕的站号为1、开启CRC:AA55 01 03 F1 B0B4

1.2 读变量存储器指令指令(0xF2)

以读 1000 变量地址里的数值(假设当前数值为 100)为例:AA55 00 06 F2 1000 01 CCCC

AA55 表示:帧头;

00表示:站号;

06表示:数据长度;

F2表示:读寄存器;

1000表示:变量起始地址(2 byte);

01表示:读取的地址个数,范围为1~255个(1byte);

CCCC表示:预留字段,没有开启CRC;

屏收到主板的指令,返回读应答指令:AA55 00 08 F2 1000 01 0064 CCCC

AA55 表示:帧头;

00表示:站号;

08表示:数据长度;

F2表示:读寄存器;

1000表示:变量起始地址(2 byte);

01表示:寄存器数据的长度,单位1 word;

0064表示:寄存器值,100

CCCC表示:预留字段,没有开启CRC;

若屏幕的站号为1:

主板请求:AA55 01 06 F2 1000 01 CCCC

屏幕返回:AA55 01 08 F2 1000 01 0064 CCCC

若屏幕的站号为1、开启CRC :

主板请求:AA55 01 06 F2 1000 01 7B77

屏幕返回:AA55 01 08 F2 1000 01 0064 8CFD

1.3 屏幕修改变量上传主板(0xF2)

若开启 “自动上传”,用户在屏幕上操作控件,修改寄存器值,可自动发出指令上传给主板。

如,点击屏幕将寄存器LW1000修改为100:AA55 0008 F2 1000 01 0064 CCCC

AA55 表示:帧头;

00表示:站号;

08表示:数据长度;

F2表示:读寄存器;

1000表示:变量起始地址(2 byte);

01表示:寄存器数据的长度,单位1 word;

0064表示:寄存器值,100

CCCC表示:预留字段,没有开启CRC;

2 XGUS

XGUS协议格式如下所示:

帧头(2byte)

长度(1byte)

功能码(1byte)

地址(2byte)

数据(n byte)

校验(2byte)

0xAA55

0x00~0xFF

0x80/0x81/0x82/0x83

0x0000~0xFFFF

…….

在工程属性配置,开启XGUS协议,如下所示:

帧头:2byte,默认为0x5AA5, 用户可自定义;

启用CRC:2byte,默认是启用;

自动上传:当开启后,用户操作控件会自动上传指令给用户主板;

写命令应答:用户主板给屏幕写寄存器时候,会自动应答写成功;

模式:兼容两种模式

模式1:切换画面使用0x80: 5AA5 03 80 03 XX, XXXX表示画面ID

模式2:切换画面使用0x82: 5AA5 07 82 0084 5A01 XXXX , XXXX表示画面ID

3 Modbus RTU

屏幕支持标准的Modbus-RTU协议,可以设置为主机或从机

3.1 主机模式-ModbusMaster

当屏幕设置为主机时候,配置如下所示:

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于此值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求的时间;

写寄存器命令:可设置为自动和0x10;

自动:默认写单个寄存器用0x06指令,写多个寄存器用0x10指令;

0x10:所有写操作均匀0x10写;

离线优化读取:勾选后,离线的从机,不在发送指令请求;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:默认为1个。多个从站,常用于RS485总线。界面配置默认最大10个,若要支持更多从站,可以在LUA脚本设置。

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

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

3.2 从机模式-ModbusSlave

当屏幕设置为从机时候,配置如下所示:

从机站号:从机的站号ID

字符间隔:单位ms,超过该时间,认为断帧

延时应答:接收到主机请求,延时一段时间后,在应答主机;

与PLC同步画面

画面写入地址:HMI的画面变化时,可写到指定的PLC地址

画面取自地址:PLC地址的值变化时,切换到对于画面(自动为0xFFFF)

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

4 三菱-FX2N

4.1 协议说明

屏幕支持标准的FX2N协议,配置下所示:

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:单位毫秒ms,主机等待从机应答时间;

间隔时间:单位毫秒ms,主机接收到从机应答后,延时一段时间后,在发送下一条请求;

模式:可支持标准模式和扩展模式;

标准:以访问D0寄存器为例:指令16进制显示(02 30 31 30 30 30 30 32 03 35 36) ,assic 显示(.0100002.56)。特点指令短、寄存器地址范围小

扩展:以访问D0寄存器为例:指令16进制显示(02 45 30 30 34 30 30 30 30 32 03 43 45) ,assic 显示(.E00400002.CE)。特点指令长、寄存器地址范围大

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

5 三菱-FX3U

5.1 协议说明

屏幕支持标准的FX3U协议,配置如下所示:

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

模式:可支持标准模式和扩展模式;

标准:以访问D0寄存器为例:指令16进制显示(02 30 31 30 30 30 30 32 03 35 36) ,assic 显示(.0100002.56)。特点指令短、寄存器地址范围小

扩展:以访问D0寄存器为例:指令16进制显示(02 45 30 30 34 30 30 30 30 32 03 43 45) ,assic 显示(.E00400002.CE)。特点指令长、寄存器地址范围大

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

6 台达PLC - DELTA(DVP)

6.1 协议说明

支持标准的台达协议,通讯协议ASSIC模式.

起始 符

通讯地址

指令码

数据内容

校验

结束符

STX

ADR1

ADR0

CMD1

CMD0

DATA0

...

DATAn

LCR1

LCR0

CR

LF

协议说明

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

6.2 寄存器类型

支持的寄存器类型如下所示

7 信捷PLC - XC系列

7.1 协议说明

支持标准的信捷PLC - XC系列,协议设置如下所示

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

7.2 寄存器类型

支持的寄存器类型如图 下所示:

8 信捷PLC - XD系列

8.1 协议说明

支持标准的信捷PLC - XD系列,协议设置如下所示:

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

8.2 寄存器类型

支持的寄存器类型如下所示:

9 永宏PLC - FATEK(FB)

9.1 协议说明

支持标准的永宏PLC - FATEK(FB)系列,协议设置如下所示

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

9.2 寄存器类型

支持的寄存器类型如图下所示:

10 海为HAIWELL PLC - N/S系列

10.1 协议说明

支持标准的海为HAIWELL(N/S)协议,协议说明如下所示:

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

10.2 寄存器类型

支持的寄存器类型如下所示

11 显控-SAMKOON

11.1 协议说明

支持标准的显控SAMKOO协议,协议说明如下所示:

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

11.2 寄存器类型

支持的寄存器,如图下所示

12 艾默生 - EMERSON

12.1 协议说明

支持标准的艾默生PLC协议,协议设置如下所示

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

12.2 寄存器类型

支持的寄存器类型如下所示:

13 艾默生 - EMERSON

13.1 协议说明

支持标准的艾默生,协议设置如下所示

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

13.2 寄存器类型

支持的寄存器类型如下所示:

14 丰炜PLC - M/VB/VH系列

14.1 协议说明

支持标准的丰炜PLC-M/VB/VH系列,协议设置如下所示

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

14.2 寄存器类型

支持的寄存器类型如下所示:

15 松下PLC - FP 系列

15.1 协议说明

支持标准的松下PLC - FP 系列,协议设置如下所示

最多读取数:单条指令读取最多字节数;

读取间隔数:地址间隔小于次值,可以合并读取;

写重试次数:写入失败时候,最大重试次数;

超时时间:主机等待从机应答时间,单位毫秒ms;

间隔时间:主机接收到从机应答后,延时一段时间后,在发送下一条请求;

写寄存器命令:自动或0x10

离线读取优化:防止从站不在线时,频发读取造成总线堵塞;

与PLC同步画面:

画面写入地址:HMI的画面变化时,可写到指定的PLC地址;

画面取自地址:PLC地址的值变化时,切换到对应画面(自动为0xFFFF);

从站数目:支持一主多从

预设字节序:

大端模式:默认是大端

重新指定:可针对短整型、长整形、单精度、超长整形、双精度浮点数指定字节序

15.2 寄存器类型

支持的寄存器类型如下所示:

Copyright ©Dacai all right reserved,powered by Gitbook该文件修订时间:

2024-01-08 16:28:26


相关推荐

普通手机,如何调试?才能发拼音字毌啊?
导游的近义词
关于麻卡,你应该知道的那些事
开车的游戏哪些值得下载2024 能够开车的游戏top5
可以让应用开小窗APP
关于麻卡,你应该知道的那些事