1 Modbus 基本参数说明

Modbus协议的应用,本章节主要从以下几部分说明

  1. 开启协议
  2. 配置主从机
  3. 创建变量
  4. 变量地址和值的关系
  5. 逻辑处理

1.1 开启协议

Modbus 协议的配置界面在VisualTFT 上位机的菜单栏【工具】→【协议与变量设置…】,点击左侧文件路径,在右侧的协议设置栏,设置协议类型,如选择Modbus主机,启用协议,如下所示

modbus协议开启后,在组态界面上,控件才能显示【关联变量】

Modbus组态串口屏modbus协议使用教程插图1

1.2 配置主从机

主机模式

Modbus主机的配置,参数如下所示

Modbus组态串口屏modbus协议使用教程插图3
  1. 启用协议:需要启用协议,才支持Modbus协议
  2. 协议类型:选择Modbus主机
  3. 轮询周期:无效参数,不用设置
  4. 轮询延时:屏作主机时,发送请求指令,到屏幕应答后,等待发送下一条请求指令的时间
  5. 应答超时:屏作主机时,允许从机的最大延时,默认100毫秒
  6. 连续读取:设置连续地址变量的最大读取数
  7. 优化读取:开启优化读取后,只读取与当前画面相关的变量
  8. 存储设置 :开启存储后,Flash地址0~2048,约2K为Modbus变量存储所有,其他存储应规避此地址!!!不存储:不存储,断电重启后变量恢复默认值全部存储:不推荐,因为频繁存储会导致FLASH坏块增加存储指定变量:推荐使用,一般用来存储很少更改的系统配置参数
  9. 存储标记:识别存储在屏幕中的数据版本标记, 当存储数据格式发生改动时,一般需要手动修改此存储标记值
Modbus组态串口屏modbus协议使用教程插图5

从机模式

  1. 启用协议:需要启用协议,才支持Modbus协议
  2. 协议类型:选择Modbus从机
  3. 从机地址:默认为1
  4. 存储设置 :开启存储后,Flash地址0~2048,约2K为Modbus变量存储所私有,其他存储应规避此地址!!!不存储:不存储,断电重启后变量恢复默认值全部存储:不推荐,因为频繁存储会导致FLASH坏块增加存储指定变量:推荐使用,一般用来存储很少更改的系统配置参数
  5. 存储标记:识别存储在屏幕中的数据版本标记,当存储数据格式发生改动时,一般需要手动修改此存储标记值
Modbus组态串口屏modbus协议使用教程插图7

1.3 变量定义

点击【变量定义】,在点击【添加】,即可添加一个变量,如下所示

Modbus组态串口屏modbus协议使用教程插图9
变量定义

详细变量解析如下,如下所示

Modbus组态串口屏modbus协议使用教程插图11
  1. 名称:默认的变量名称为“Varialbe1、Varialbe2、Varialbe3……”,可以定义有意义的名称,如:机组状态;如果需要对变量分bit含义,默认的名称为“Field1、Field2、Field3……”, 可以定义有意义的名称,如:开/关机、运行/停止
  2. 格式:支持短整形、长整型、单精度浮点数、字符串
  3. 符号:可设置无符号、有符号
  4. 读写设置:设置变量的读写权限,支持可读写、只读取、只写入
  5. 默认值:默认显示值
  6. 数值转换:对变量进行转换,例如:实际值=原始值*缩放+平移
  7. 显示格式:设置整数和小数部分的位数
  8. 数组类型:开启数组类型,从该变量的地址开始,操作连续N个寄存器
  9. 是否储存:当在配置Modbus主/从协议时开启存储设置,此处若选择存储,可掉电保存数据
参数

详细参数设置解析如下所示

Modbus组态串口屏modbus协议使用教程插图13
  1. 变量类型:线圈、离散输入、保持寄存器、输入寄存器、内存变量、系统变量
  2. 从机地址:屏作主机时,才需要设置
  3. 变量地址:变量(或寄存器)的地址,16进制填写
  4. 初始化从机:屏作主机时,屏上电后,把变量的值写入从机设备
  5. 读取失败归零:屏作主机时,当变量读取失败时,变量的值归零

1.4 变量地址和值的关系

线圈/离散数据

创建一个线圈或离散输入寄存器,变量格式为短整型,则里面含有16个线圈(从上到下,依次为bit0….bit15),假设该变量地址为0x0000,那么变量包含0x0000~0x000F地址范围内的变量,一个bit对应一个线圈,如下所示

Modbus组态串口屏modbus协议使用教程插图15

字符串类型

创建一个保存寄存器,变量格式为字符串类型(默认32个字符),假设该变量的地址为0x0000,那么此字符串对应包含0x0000~0x000F地址范围内的变量,一个地址对应两个字符

Modbus组态串口屏modbus协议使用教程插图17

假设保存寄存器地址0,值为‘abcdefghij’,如下所示

Modbus组态串口屏modbus协议使用教程插图19

数组

创建一个输入寄存器,且为数组类型(默认数组大小为10,下标从0开始),假设该变量的地址为0x0000,那么此变量表示从0x0000开始的连续10个变量,数组下标对应一个变量

Modbus组态串口屏modbus协议使用教程插图21

假设创建一个输入寄存器为Voltage的变量,数组类型,大小为10,则对应关系如下所示

Modbus组态串口屏modbus协议使用教程插图23

1.5 逻辑处理

选择左侧“逻辑处理”节点,点击工具栏按钮“添加”逻辑处理。如下图所示,选择所示新建的逻辑关系,然后通过属性窗口进行设置

Modbus组态串口屏modbus协议使用教程插图25

通用属性参数介绍:

  • 用途:设置当前逻辑的用途,例如控件绑定、控件显示等
  • 画面:控件所在的画面ID
  • 控件:控件ID
  • 变量:控件关联变量名称
  • 执行条件:可设置该逻辑的执行条件,Always表示总是执行,Changed表示变量改变时执行

1.5.1 控件绑定

设置控件关联的变量:当控件改变时,自动更新变量值;反之变量更新时,更新控件显示

Modbus组态串口屏modbus协议使用教程插图27

使用VisualTFT软件V3.0.0.765及以上版本,也可直接在组态控件属性窗口设置关联变量名称,如下所示,按钮控件绑定一个变量

Modbus组态串口屏modbus协议使用教程插图29

1.5.2 控件显示

当设置的“执行条件”成立时显示控件,否则隐藏控件

Modbus组态串口屏modbus协议使用教程插图31

1.5.3 动画播放

当设置的“执行条件”成立时开始播放动画,否则停止播放

1.5.4 按钮按下与弹起

按钮按下时或者弹起时,如果满足“执行条件”,则“执行动作”

1.5.5 条件执行

满足“执行条件”时“执行动作”,为防止重复执行,该逻辑仅在满足条件的瞬间执行一次(类似上升沿触发)

画面条件:限定此逻辑仅在某个画面下有效

1.5.6 切换画面

满足“执行条件”时,切换到指定的目标画面,该逻辑为触发方式

  • 目标参数:目标画面可以为变量或者常量
  • 画面条件:限定此逻辑仅在某个画面下有效

1.5.7 设置变量

满足“执行条件”时,设置变量为指定数值

  • 写入优化:启用优化时,仅在改变目标变量时,执行写入
  • 画面条件:限定此逻辑仅在某个画面下有效

1.5.8 汇编指令

支持的汇编指令包括:建议使用Lua或MiniC脚本语言实现复杂的交互

  • Jmp跳转:当“执行条件”成立时,跳转到“目标标签”,只能向后跳转
  • Mov赋值:MOV A B,把“参数变量或常量B”设置到“目标变量B”
  • Add加法:ADD A B,结果A = A+B
  • Sub减法:SUB A B,结果 A = A-B
  • And逻辑与:AND A B,结果A = A&B
  • Or逻辑或:OR A B,结果A=A|B
  • Mul乘法:MUL A B,结果A=A*B
  • Div除法:DIV A B,结果A = A/B

1.5.9 事件记录

当“执行条件”成立时,记录事件ID

1.5.10 曲线绑定

当“执行条件”成立时,在“历史曲线”中记录指定变量

1.5.11 颜色设置

当“执行条件”成立时,设置控件为指定颜色

1.5.12 文本闪烁

当“执行条件”成立时,设置文本控件按指定周期闪烁

Modbus组态串口屏modbus协议使用教程插图33

1.5.13 蜂鸣器控制

当“执行条件”成立时,控制蜂鸣器发出声音

  • 模式:可设置为“单次”鸣叫或周期性鸣叫
  • 控制:对于周期性模式,可以设置为开始鸣叫、结束鸣叫、由条件控制
  • 时间:对于“单次”模式,可以设置鸣叫时间长度
  • 周期:对于“周期”模式,可以设置鸣叫的周期
Modbus组态串口屏modbus协议使用教程插图35

1.5.14 外接矩阵键盘

该功能为定制功能,常规版本不支持

1.5.15 写入时间

屏做主机时,可以定时写指定寄存器,设置从机时间

Modbus组态串口屏modbus协议使用教程插图37

2 如何创建关联变量

大彩串口屏modbus 协议可支持创建线圈、离散输入、保持寄存器、输入寄存器、内容变量、系统变量,如下所示

Modbus组态串口屏modbus协议使用教程插图39
变量类型相关说明
线圈(Coils)参与通讯:0x01/0x05/0x0F
离散输入(Discrete Input)参与通讯:0x02
保持寄存器(Holding Register)参与通讯:0x03/0x06/0x10
输入寄存器(Input Register)参与通讯:0x04
内存变量不参与通讯:用于做中间变量、记录一些信息等
系统变量不参与通讯:如系统波特率、运行时间等等

本章节屏幕配置为主机模式,介绍线圈、离散输入、保持寄存器、输入寄存器、系统变量的创建和绑定

适用范围: 全系列

例程下载链接:《Modbus教程1_入门教程V1.0》(点击跳转)

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

2.1 线圈

【线圈】画面是对MODBUS协议中“线圈”变量的状态显示和控制,按钮控件直接绑定“线圈”类型的变量。线圈的状态为0或1,对应按钮的弹起(0)、按下(1)。运行后,当该地址的“线圈”值发生变化后,按钮控件状态实时改变。同理,通过点击按钮,可以改变从机中线圈变量类型对应地址的状态

变量配置

添建立“机组状态”变量,变量类型设置为“线圈”,添加子节点“开/关机”、“运行/ 停止”,配置变量地址为0x0000,详细设置说明参考Modbus 基本参数说明,如下所示

Modbus组态串口屏modbus协议使用教程插图41

画面配置

画面中添加一个按钮控件(控件ID:1),在按钮控件的属性栏,设置关联变量“机组状态/开/关机”,按钮的操作风格为开关,如下所示

Modbus组态串口屏modbus协议使用教程插图43

运行预览

通过以上两步,控件ID为1的按钮控件与变量“机组状态/开/关机”建立起了关联。此时,编译工程并运行虚拟串口屏,和MODBUS Slave软件建立连接。按钮控件显示“机组状态/开/关机”的状态。同时点击按钮控件,更改变量“机组状态/ 开/关机”的状态。同理,控件ID为2的按钮控件通过以上方法,与变量关联后,实现相应的状态显示和控制功能。如下所示

Modbus组态串口屏modbus协议使用教程插图45

2.2 离散输入

【离散输入】画面是对MODBUS协议中“离散输入”变量的状态显示,图标控件直接绑定“离散输入”类型的变量。图标控件将显示变量的状态,当该地址 “离散输入”值发生变化后,图标控件对应发生变化

变量配置

添加变量:建立“机组故障”变量,添加子节点“压缩机低压”,变量类型设置为“离散输入”,配置变量地址为0x0000,详细设置说明参考Modbus 基本参数说明,如下所示

Modbus组态串口屏modbus协议使用教程插图47

画面配置

画面中添加一个图标控件(控件ID:1),在图标控件的属性栏,设置关联变量“机组故障/压缩机低压”,同理ID2~4的图标控件绑定对应的变量。制作参考《组态控件教程-图标控件》,如下所示

Modbus组态串口屏modbus协议使用教程插图49

运行预览

通过以上两步,控件ID为1的图标控件与变量“机组故障/压缩机低压”建立起了关联。此时,编译工程并运行虚拟屏串口屏,和MODBUS Slave软件建立连接。图标控件显示变量“机组故障/压缩机低压”的状态。同理,控件ID为2、3、4的图标控件通过以上方法,分别与不同的变量关联后,便可显示相应地址变量的状态,如下所示

Modbus组态串口屏modbus协议使用教程插图51

2.3 保持寄存器

【保持寄存器】画面是对MODBUS协议中“保持寄存器”变量的数值直接显示,文本控件直接绑定“保持寄存器”类型的变量。文本控件将显示变量的值,当该地址的“保持寄存器”值发生变化后,文本控件对应发生变化

变量配置

添加变量:创建“设定温度”变量,变量类型设置为“保持寄存器”,配置变量地址为0x0000,如该变量表示温度,从机传输值为225℃,实际温度为22.50℃,则实际值和传输值缩放比例为0.1,偏移值为0。则:设置“数值转换”为“是”,“缩放”为 “0 .1”,平移为“0”,详细设置说明参考Modbus 基本参数说明,如下所示

Modbus组态串口屏modbus协议使用教程插图53

画面配置

画面中添加一个文本控件(控件ID:1),如图4‑14所示,在文本控件的属性栏,设置关联变量“设定温度”,输入方式为“弹出系统键盘输入(用户主机可输入)”模式,如下所示

Modbus组态串口屏modbus协议使用教程插图55

运行预览

通过以上两步,控件ID为1的文本控件与变量“设定温度”便建立起了关联。此时,编译工程并运行虚拟串口屏,和MODBUS Slave软件建立连接,文本控件便显示变量“设定温度”的数值,点击文本控件,弹出键盘,可对变量“设定温度”设置值。同理控件ID为2、3、4的文本控件通过以上方法分别与不同的变量关联后,实现相应的数值显示和控制功能,运行效果如下所示

Modbus组态串口屏modbus协议使用教程插图57

2.4 输入寄存器

【输入寄存器】画面是对MODBUS协议中“输入寄存器”变量数值的直接显示,文本控件直接绑定“输入寄存器”类型的变量,文本控件将显示变量的值,当该地址的“输入寄存器”值发生变化后,文本控件对应发生变化

变量配置

创建“温度”变量,变量类型设置为“输入寄存器”,配置变量地址为0x0000,如下所示

Modbus组态串口屏modbus协议使用教程插图59

画面配置

画面中添加一个文本控件(控件ID:1),在文本控件的属性栏,设置关联变量“温度”,如下所示

Modbus组态串口屏modbus协议使用教程插图61

运行预览

通过以上两步,控件ID为1的文本控件与0x0000地址的“温度”便建立起了关联。此时,编译工程并运行虚拟串口屏,和MODBUS Slave软件建立连接,文本控件便显示 0x0000 地址的保持寄存器的数值。同理,控件ID为2、3、4的文本控件通过以上方法分别与不同的变量关联后,便可显示相应地址的变量值,如下所示

Modbus组态串口屏modbus协议使用教程插图63

2.5 系统变量

【系统变量】系统变量是系统中预先定义的变量,方便在直接访问,屏幕中预定义的变量,包括波特率(可读)、背光亮度(可读写)、蜂鸣器开关(1使能蜂鸣器,0不使能,可读写)、通讯故障(0为正常,非0故障,可读)、当前画面ID(可读写)、运行时间(单位:分钟,可读)、日期(可读)等

变量配置

添加变量:创建“背光亮度”变量,变量类型设置为“系统变量”,系统变量参数为“背光亮度”,详细设置说明参考Modbus 基本参数说明,如下所示

Modbus组态串口屏modbus协议使用教程插图65

画面配置

画面中添加进度条控件(控件ID:2)、滑动条控件(控件ID:3)。进度条控件属性栏,设置滑动通知为“关联滑动条”;滑动条控件属性栏,设置关联变量为“背光亮度”。滑块控件和进度条控件的具体应用参考 组态控件教程 - 滑块控件 教程,如下所示

运行预览

通过以上两步,控件ID为2的滑动条控件与内存变量“背光亮度”建立起了关联;此时,编译工程并运行虚拟串口屏,滑动“滑动条控件”的游标可控制屏幕的背光亮度。同理,其他控件ID绑定对应的文本控件或按钮控件,通过以上方法分别与不同的变量关联后,便可显示或控制系统变量的变量值,如下所示

Modbus组态串口屏modbus协议使用教程插图67

3 按钮控件和文本控件

本章节主要介绍按钮控件、文本控件在Modbus协议中常见的应用。其中简单的控件绑定变量,可以在组态配置页面关联,或者在【工具-协议与变量-逻辑处理】绑定变量

本章节屏幕当主站,读写从机指令,若屏幕当从站,文本、按钮控件的应用一样,参考即可,本章节创建2个线圈、4个保存寄存器,用于说明按钮控件、文本控件的应用,如下所示

Modbus组态串口屏modbus协议使用教程插图69

适用范围: 全系列

例程下载链接:《Modbus教程1_入门教程V1.0》(点击跳转)

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

3.1 按钮控件

【按钮控件】画面,当MODBUS协议版本中,按钮按下或弹起时可以执行一些预设的逻辑操作

画面/逻辑配置

设置关机

【按钮控件】画面,按钮控件ID1,组态界面不直接关联控件,,添加以下逻辑处理

添加逻辑处理:用途用于【控件绑定】,填写对应的画面ID1、按钮控件ID1,变量为【机组状态/开/关机】

Modbus组态串口屏modbus协议使用教程插图71
设置湿度40%

【按钮控件】画面,按钮控件ID2、文本控件ID3,组态界面不直接关联控件,添加以下逻辑处理

第1条:用途用于【按钮按下】,填写对应的画面ID1、按钮控件ID2,执行动作为【设置变量】 ,设置【设置湿度】为40

第2条:用途用于【控件绑定】,填写对应的画面ID1、文本控件ID3,变量为【设置湿度】,绑定的变量为【设置湿度】

如下所示:

Modbus组态串口屏modbus协议使用教程插图73
设置温度

【按钮控件】画面,按钮控件ID4和ID6、文本控件ID5,组态界面不直接关联控件,添加以下逻辑处理

第1条:用途用于【按钮按下】,填写对应的画面ID1、按钮控件ID4,执行动作为【增量调节】 、调节的变量为【设置温度】、调节1步长为【1】(步长只能为整数),调节方式为【递减】

第2条:用途用于【控件绑定】,填写对应的画面ID1、文本控件ID5,绑定的变量为【设置温度】

第3条:用途用于【按钮按下】,填写对应的画面ID1、按钮控件ID6,执行动作为【增量调节】 、调节的变量为【设置温度】、调节1步长为【1】(步长只能为整数),调节方式为【递增】

如下所示:

Modbus组态串口屏modbus协议使用教程插图75

运行预览

根据画面配置和逻辑处理,结合modbus slave调试工具,当按下按钮控件(控件ID:1),从机设备的状态为关机。同理,按钮按下时还可以用于保存寄存器的变量设置,增量调节等功能,运行结果如下所示

Modbus组态串口屏modbus协议使用教程插图77

3.2 文本控件

【文本控件】画面,文本控件主要是用于显示绑定的变量值。对于线圈、保持寄存器等可读写类型的变量,可以设置“输入方式”为弹出系统键盘输入,通过弹出的键盘对绑定的变量值进行修改。另外可以绑定修改显示颜色、闪烁的逻辑处理

画面/逻辑配置

画面中添加一个文本控件(控件ID:1),作为显示电压值;输入方式为弹出键盘,添加以下逻辑处理:

第1条:用途为“控件绑定”,绑定变量“电压”

第2条:用途为“设置颜色”,颜色设置为红色(RGB(255,0,0)),执行条件为“设定电压”的值大于“250”

第3条:用途为“设置颜色”,颜色设置为黑色(RGB(0,0,0)),执行条件为“设定电压”的值小于等于“250”

第4条:用途为“文本闪烁”,执行条件为“设定电压”的值大于“250”

Modbus组态串口屏modbus协议使用教程插图79

运行预览

实时显示电流电压的数值。当“电压”的值大于250时,文本显示为红色并闪烁,如果“电压”的值小于等于250时,文本显示为黑色,并且不闪烁,如下所示:

Modbus组态串口屏modbus协议使用教程插图81

4 仪表、滑块和进度条控件

本章节主要介绍仪表控件、滑块控件、进度条控件在Modbus协议中常见的应用。其中简单的控件绑定变量,可以在组态配置页面关联,或者在【工具-协议与变量-逻辑处理】绑定变量

本章节屏幕当主站,读写从机指令,若屏幕当从站,仪表、滑块、进度条控件的应用一样,参考即可,本章节创建2个保存寄存器、2个输入寄存器,用于说明仪表控件、滑块控件、进度条应用,如下所示

Modbus组态串口屏modbus协议使用教程插图83

适用范围: 全系列

例程下载链接:《Modbus教程3-仪表、滑块及进度条控件V1.0》(点击跳转)

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

4.1 仪表控件

【仪表控件】画面主要对仪表控件的使用做示例说明。仪表控件反映用户主机上的数据变化,满足用户使用的仪器仪表界面

画面/逻辑配置

方法一:逻辑处理绑定

画面中添加一个仪表控件(控件ID:1),作为显示从机电压值,打开【工具-协议与变量】,添加1条逻辑处理

用途用于【控件绑定】,填写对应的画面ID1、仪表控件ID1,绑定的变量为【电压】,如下所示

Modbus组态串口屏modbus协议使用教程插图85
方法二:组态画面绑定

画面中添加一个仪表控件(控件ID:2),作为显示从机电流。且在其属性栏窗口中绑定“电流”变量,如下所示

Modbus组态串口屏modbus协议使用教程插图87

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机,仪表控件实时显示电压(控件ID:1)、电流(控件ID:2)的变化

Modbus组态串口屏modbus协议使用教程插图89

4.2 滑块和进度条控件

【进度条和滑块控件】画面,将进度条控件和滑块控件一起配合使用,进度条的通知为关联滑动条,主要是用于显示绑定的变量值,通过拖动滑块控件的游标,改变变量值

画面/逻辑配置

方法一:逻辑处理绑定

画面中添加进度条控件(控件ID:1)、滑块控件(控件ID:2)。在【协议与变量设置】中添加1条逻辑处理

用途用于【控件绑定】,填写对应的画面ID2、仪表控件ID2,绑定的变量为【设置温度】,如下所示

Modbus组态串口屏modbus协议使用教程插图91
方法二:组态软件绑定

画面中添加进度条控件(控件ID:3)、滑动条控件(控件ID:4)。滑块控件直接绑定【设置湿度】,配置如下所示

Modbus组态串口屏modbus协议使用教程插图93

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机。当变量的值发生变化时,滑块控件和进度条显示的状态也会相应的更新;通过鼠标点击滑块控件并拖动,变量的值也会相应变化更新

Modbus组态串口屏modbus协议使用教程插图95

5 菜单控件和滑动选择控件

本章节主要介绍滑动选择控件、菜单控件在Modbus协议中常见的应用。其中简单的控件绑定变量,可以在组态配置页面关联,或者在【工具-协议与变量-逻辑处理】绑定变量

本章节屏幕当主站,读写从机指令,若屏幕当从机,滑动选择控件、菜单控件的应用一样,参考即可,本章节创建2个保存寄存器,用于说明滑动选择控件、菜单控件的应用,如下所示

Modbus组态串口屏modbus协议使用教程插图97

使用范围:全系列

例程下载链接:《Modbus教程4_滑动选择和菜单选择控件V1.0.rar》

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

5.1 菜单控件

【菜单控件】画面主要对菜单控件的使用做示例说明,菜单控件的“风格”有两种:“弹出菜单”和“固定菜单”。此处主要做弹出菜单使用说明,“菜单风格”为“弹出菜单”,需要按钮控件将菜单控件和文本控件关联使用,点击按钮弹出菜单控件,选中菜单项后直接显示在文本控件中

画面/逻辑配置

方法一:逻辑处理绑定

画面中添加一个菜单控件(控件ID:2),作为控制从机开关机,详细配置如下所示

Modbus组态串口屏modbus协议使用教程插图99

在【协议与变量设置】中添加一条逻辑处理,该逻辑处理的用途为“控件绑定”,画面为“1”;控件为“2”;变量为“机组状态/开/关机”,如下所示

Modbus组态串口屏modbus协议使用教程插图101
方法二:组态画面绑定

画面中添加一个菜单控件(控件ID:5),作为控制从机风速。且在其属性栏窗口中绑定“设置温度”变量,详细配置如下所示

Modbus组态串口屏modbus协议使用教程插图103

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机,当按下按钮控件(控件ID:4),弹出菜单控件(控件ID:5),选择菜单控件的“一级”选项,直接“一级”将显示在文本控件(ID:6)中,且从机变量“设置风速”相应改变

Modbus组态串口屏modbus协议使用教程插图105

5.2 滑动选择控件

【滑动选择控件】画面,选择控件主要有两种用途:“滑动选择”和“状态显示”。“滑动选择”主要用于通过触摸屏滑动选择预设的选项;“状态显示”主要用于显示不同的预设选项,类似图标控件

画面/逻辑配置

方法一:逻辑处理绑定

画面中添加一个滑动选择控件(控件ID:1),作为显示风机状态;用途为“状态显示”,如下所示

Modbus组态串口屏modbus协议使用教程插图107

在【协议与变量设置】中添加1条逻辑处理:用途为“控件绑定”;画面为“2”;控件为“1”;变量为“机组状态/风机故障”。如下所示

Modbus组态串口屏modbus协议使用教程插图109
方法二:组态画面绑定

画面中添加一个菜单控件(控件ID:2),作为控制从机风速等级。在其属性栏窗口中绑定“设置风速”变量,如下所示

Modbus组态串口屏modbus协议使用教程插图111

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机。当变量“机组状态/风机故障”的值发生变化时, 滑动选择控件(控件ID:1)显示的状态也会相应的更新;通过鼠标点滑动选择控件(控件ID:2)并拖动,当拖动停止后,选中某个选项,同时变量“设置风速”的值也会变化更新

Modbus组态串口屏modbus协议使用教程插图113

6 曲线和历史曲线控件

本章节主要介绍曲线控件、历史曲线控件在Modbus协议中常见的应用。其中简单的控件绑定变量,可以在组态配置页面关联,或者在【工具-协议与变量-逻辑处理】绑定变量

本章节屏幕当主站,读写从机指令,若屏幕当从机,曲线控件、历史曲线控件的应用一样,参考即可,本章节创建2个保存寄存器,用于说明曲线,历史曲线的应用,如下所示

Modbus组态串口屏modbus协议使用教程插图115

适用范围:全系列

例程下载链接:《Modbus教程-5-曲线和历史曲线控件V1.0》

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

6.1 曲线控件

【曲线控件】画面,主要对曲线控件的使用做示例说明。MODBUS协议版本中,曲线控件用于显示关联的变量,曲线控件周期性的采样变量值, 然后将所有采样值绘制到曲线控件内,连接形成曲线;曲线控件的每个通道都可以关联一个变量,最多可以设置8个通道

画面/逻辑配置

画面中添加一个曲线控件(ID:1),作为显示从机“温度”值。同时添加两个按钮控件(ID为2和4)作为增减“温度”变量的控制,以及添加一个文本控件(ID:3),直接绑定“温度”,作为数值的显示。曲线控件的相关参数配置,如下所示

Modbus组态串口屏modbus协议使用教程插图117

在【协议与变量设置】中添加3条逻辑处理:

第1条:用途为“曲线绑定”,画面为“1”;控件为“1”;通道为“0”,变量为“温度”;采集周期为“1”

第2条:控制“温度”的增减。用途为【按钮按下】,填写画面ID为1,控件ID为2;执行动作为【增量调节】,变量为【温度】,调节步长为【1】,调节方式为【递减】;循环从0~100调节

第3条:控制“温度”的递增。用途为【按钮按下】,填写画面ID为1,控件ID为4;执行动作为【增量调节】,变量为【温度】,调节步长为【1】,调节方式为【递增】;循环从0~100调节。如下所示

Modbus组态串口屏modbus协议使用教程插图119

运行预览

此时,编译工程并下载到串口屏,和MODBUS Slave软件联机,曲线控件实时显示温度的变化。同时按下按钮控件(ID:2和ID:4)可以对“温度”变量的控制,曲线控件的显示也随着改变,如下所示

Modbus组态串口屏modbus协议使用教程插图121

6.2 历史曲线控件

【历史曲线控件】画面,主要对历史曲线控件的使用做示例说明。历史曲线控件和曲线控件都可以实时采样、显示绑定的变量值。不同处是历史曲线控件保存前期的数据,可以查看历史数据。MODBUS协议版本中,历史曲线控件用于显示关联的变量值,历史曲线控件周期性的采样变量值,然后将所有采样值绘制到历史曲线控件内,连接形成曲线;历史曲线控件的每个通道都可以关联一个变量,最多可以设置8个通道。

画面/逻辑配置

画面中添加一个历史曲线控件(ID:1),作为显示从机“湿度”值。同时添加两个按钮控件(ID为2和4)作为增减“湿度”变量的控制;以及添加一个文本控件(ID:3),直接绑定变量“湿度”,作为数值的显示。历史曲线控件的相关参数配置如下所示

Modbus组态串口屏modbus协议使用教程插图123

在【协议与变量设置】中添加3条逻辑处理:

第1条:用途为“曲线绑定”,画面为“2”;控件为“1”;通道为“0”,变量为“湿度”;采集周期为“1”

第2条:控制“湿度”的增减。用途为【按钮按下】,填写画面ID为2,控件ID为2;执行动作为【增量调节】,变量为【湿度】,调节步长为【1】,调节方式为【递减】;循环从0~100调节

第3条:控制“湿度”的递增。用途为【按钮按下】,填写画面ID为2,控件ID为4;执行动作为【增量调节】,变量为【湿度】,调节步长为【1】,调节方式为【递增】;循环从0~100调节。如下所示

Modbus组态串口屏modbus协议使用教程插图125

运行预览

此时,编译工程并下载到串口屏,和MODBUS Slave软件联机,历史曲线控件实时显示湿度的变化。当屏幕显示的采样点数大于设置的值(默认为 100),可以通过历史曲线控件上方的滚动条查看历史数据。同时按下按钮控件(ID:2和ID:4)可以对“湿度”变量的控制,历史曲线控件的显示也随着改变

Modbus组态串口屏modbus协议使用教程插图127

7 图标控件和动画控件

本章节主要介绍图标控件、动画控件在Modbus协议中常见的应用。其中简单的控件绑定变量,可以在组态配置页面关联,或者在【工具-协议与变量-逻辑处理】绑定变量

本章节屏幕当主站,读写从机指令,若屏幕当从机,图标控件、动画控件的应用一样,参考即可,本章节1组离散输入变量,2个输入寄存器用于说明图标控件和动画控件的应用,如下所示

Modbus组态串口屏modbus协议使用教程插图129

适用范围:全系列

例程下载链接:《Modbus教程7-图标和动画控件V1.0》

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

7.1 图标控件

【图标控件】画面,主要对图标控件的使用做示例说明。图标控件为GIF或ICON格式的动画文件,默认图标索引从0开始。在MODBUS协议中可以使用图标控件绑定变量,形象地显示设备的状态

画面/逻辑配置

方法一:逻辑处理绑定

画面中添加一个图标控件(控件ID:1),作为显示从机“机组故障/压缩机状态”,如下所示

控件ID:2配置同理

图标文件的生成,参考链接:《ICON控件应用》(点击跳转)

Modbus组态串口屏modbus协议使用教程插图131

在【协议与变量设置】中添加一条逻辑处理,该逻辑处理的用途为“控件绑定”,画面为“1”;控件为“1”;变量为“机组故障/压缩机低压”,如下所示

Modbus组态串口屏modbus协议使用教程插图133
方法二:组态画面绑定

画面中添加一个图标控件(控件ID:3),作为显示从机烟感报警状态。且在其属性栏窗口中绑定“机组故障/烟感报警”变量,详细配置如下所示

控件ID:4配置同理

Modbus组态串口屏modbus协议使用教程插图135

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机。当变量“机组故障”每一个节点的值不间断发生变化时, 图标控件(控件ID:1~ID4)显示的状态也会相应的更新

Modbus组态串口屏modbus协议使用教程插图137

7.2 动画控件

【动画控件】画面主要对动画控件的使用做示例说明,动画控件用于播放设置的GIF或ICON格式的动画文件,可以控制暂停或者播放

画面/逻辑配置

方法一:逻辑处理绑定

画面中添加一个动画控件(控件ID:1),作为显示控制从机“动画1”变量;同时添加两个按钮控件(ID为2和3)作为动画控件(控件ID1)的播放、暂停的控制,如下所示

Modbus组态串口屏modbus协议使用教程插图139

在【协议与变量设置】中添加3条逻辑处理 :

第1条:用途为“动画播放”,画面为“2”;控件为“1”;和“动画1“关联

第2条:控制“动画”的播放。用途为【按钮按下】,填写画面ID为2,控件ID为2;执行动作为【设置变量】,变量为【动画1】,设置值为1

第3条:控制“动画”的暂停。用途为【按钮按下】,填写画面ID为2,控件ID为3;执行动作为【设置变量】,变量为【动画1】,设置值为0

Modbus组态串口屏modbus协议使用教程插图141
方法二:组态画面绑定

画面中添加一个动画控件(控件ID:4),作为显示控制从机“动画2”变量。在其属性栏窗口中绑定“动画2”变量。添加一个按钮控件(ID:5),作为动画控件(控件ID4)的播放、暂停的控制,如下所示

Modbus组态串口屏modbus协议使用教程插图143

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机。当变量“动画1”的值不为“0”的时候,动画控件(控件ID:1)播放动画;同时点击按钮控件(控件ID:2或3),可以控制动画控件“播放”或者“停止”,同时变量“动画1”的值相应改变。同理,动画控件(控件ID:4)的现象和操作类似。

Modbus组态串口屏modbus协议使用教程插图145

8 二维码控件和RTC控件

本章节主要介绍二维码控件、RTC控件在Modbus协议中常见的应用。其中二维码控件只支持在【工具-协议与变量-逻辑处理】绑定变量

本章节屏幕当主站,本章节创建1个保存寄存器,用于二维码控件的应用,如下所示

Modbus组态串口屏modbus协议使用教程插图147

适用范围:基本型-二维码特殊支持,其他系列均支持

例程下载链接:《Modbus教程8-二维码控件和RTC控件V1.0》

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

8.1 二维码控件

【二维码】画面主要对二维码控件的使用做示例说明。二维码控件可以将设定的字符串以二维码的形式显示出来。可以被一些扫描仪器识别。

注意:基本型系列的串口屏使用二维码控件需要特殊的固件支持

画面/逻辑配置

画面中添加一个二维码控件(控件ID:1),控件属性配置,如下所示:

Modbus组态串口屏modbus协议使用教程插图149

在【协议与变量设置】中添加一个变量,变量类型为“字符串”,字符串长度为32,如下所示

Modbus组态串口屏modbus协议使用教程插图151

在【协议与变量设置】中添加一条逻辑处理,该逻辑处理的用途为“控件绑定”,画面为“1”;控件为“1”;变量为“二维码”,如下所示

Modbus组态串口屏modbus协议使用教程插图153

运行预览

此时,编译工程并运行虚拟串口屏,二维控件将字符串“VisualTFT”以二维码的形式显示出来,和Modbus Slave软件联机,二维控件控件显示对应字符串。

Modbus组态串口屏modbus协议使用教程插图155

8.2 RTC控件

【RTC控件】画面主要对RTC控件的使用做示例说明,当屏做主机时,修改从机RTC时间;从机创建固定地址的保持寄存器,用于存放时间变量,连续7个保持寄存器,分别存放年、月、星期、日、时、分、秒,屏幕周期性地把最新的时间通过0x10指令写从机寄存器

画面/逻辑配置

画面中添加一个RTC控件(控件ID:1),如下所示:

Modbus组态串口屏modbus协议使用教程插图157

在【协议与变量设置】中添加1条逻辑处理:用途为“写入时间”;从机地址为“1”;寄存器为“50”(10进制);周期为“10”(单位秒),如下所示:

Modbus组态串口屏modbus协议使用教程插图159

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机。主机每10S将RTC时间发送至从机。

Modbus组态串口屏modbus协议使用教程插图161

9 控件显示隐藏和多语言功能

本章节主要介绍控件的显示和隐藏、多语言的应用。其中组态控件才支持显示隐藏,组态控件类型可参考VisualTFT 工作界面介绍,支持多语言的控件有文字、按钮、菜单、滑动选择、数据记录(告警)等等

本章节屏幕当主站,本章节创建1个保存寄存器,用于控制组态控件的显示隐藏;创建一个系统变量,用于语言控制选择,如下所示

Modbus组态串口屏modbus协议使用教程插图163

适用范围:全系列

例程下载链接:《Modbus教程9-控件隐藏和多语言V1.0》

协议开启、变量相关说明,参考链接:《Modbus 基本参数说明》

9.1 控件显示隐藏

【显示隐藏控件功能】画面主要对显示隐藏控件功能的使用做示例说明。当需要在某个条件成立的情况下,隐藏或显示一个或一些控件的应用

画面/逻辑配置

画面中添加一个文本控件(控件ID:1),作为控制控件的隐藏和显示。添加一个进度条控件(控件ID:1)、一个仪表控件(控件ID:2)、一个文本控件(控件ID:3)作为被显示或被隐藏,如下所示

Modbus组态串口屏modbus协议使用教程插图165

在【协议与变量设置】中添加3条逻辑处理:第一条:用途为“控件显示”;画面为“1”;控件为“2”;执行条件为“变量 【控件显示】不为0”,同理,第2、3条设置类是

Modbus组态串口屏modbus协议使用教程插图167

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件建立联机。当变量“控件显示”的值为“0”,滑动条控件(控件ID:2)、仪表控件(控件ID:3)、文本控件(控件ID:4)被隐藏;当变量“控件显示”的值为“1”,这些控件显示出来。同时,点击文本控件(控件ID:1),弹出键盘输入“0”或“1”,控制控件显示或隐藏。

Modbus组态串口屏modbus协议使用教程插图169

9.2 多语言

【多语言功能】画面主要对多语言功能的使用做示例说明。针对面向不同的客户,需要多语言应用。屏支持文字、菜单控件和滑动选择控件的多语言设置。工程以3个按钮来控制文字、菜单控件和滑动选择控件的中文、英文、繁体的显示

画面/逻辑配置

画面中添加一个文字(ID:1)、滑动选择控件(控件ID:2)、菜单控件(控件ID:3),用于显示不同语言。以文字控件为例,控件属性设置如下所示

Modbus组态串口屏modbus协议使用教程插图171

画面中添加3个按钮控件(控件ID:4、5、6)用于控制显示不同的语言。以按钮控件ID4为例,控件属性配置如下所示

按钮控件ID4~6,做了互斥功能(同时只能选中一个,可参考《组态控件教程——按钮控件》1.3章节按钮互斥

Modbus组态串口屏modbus协议使用教程插图173

【协议与变量设置】中添加3条逻辑处理:第一条,用途为“按钮按下”;画面为“2”;控件为“4”;执行条件为“设置[系统语言]为0”,对应显示“语言1”。同理,第2、3条设置类是,如下所示

Modbus组态串口屏modbus协议使用教程插图175

运行预览

此时,编译工程并运行虚拟串口屏,和Modbus Slave软件联机。当按下按钮控件(控件ID:1)时显示中文;按下钮控件(控件ID:5)时显示“英文”;当按钮控件(控件ID:5)时显示“繁体”

Modbus组态串口屏modbus协议使用教程插图177

相关新闻

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

cloud@modbus.cn

QQ
微信