Modbus구성(SCADA)시리얼 HMImodbus프로토콜使用튜토리얼

무료무료 기술 자료

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

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

1 Modbus 基本매개변수설명

Modbus프로토콜的적용,本章节主要从以下几部分설명

  1. 开启프로토콜
  2. 설정主从机
  3. 创建변수
  4. 변수주소和值的关系
  5. 逻辑处理

1.1 开启프로토콜

Modbus 프로토콜的설정界面在VisualTFT 上位机的菜单栏【도구】→【프로토콜与변수设置…】,클릭左侧文件路径,在右侧的프로토콜设置栏,设置프로토콜유형,如选择Modbus主机,활성화프로토콜,如下所示

modbus프로토콜开启后,在구성(SCADA)界面上,控件才能显示【关联변수】

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

1.2 설정主从机

主机모드

Modbus主机的설정,매개변수如下所示

Modbus组态串口屏modbus协议使用教程插图1
  1. 활성화프로토콜:需要활성화프로토콜,才支持Modbus프로토콜
  2. 프로토콜유형:选择Modbus主机
  3. 轮询周期:无效매개변수,不用设置
  4. 轮询延时:屏作主机时,보내기请求指令,到屏幕应答后,대기보내기下一条请求指令的时间
  5. 应答超时:屏作主机时,允许从机的最大延时,默认100毫秒
  6. 连续읽기:设置连续주소변수的最大읽기数
  7. 优化읽기:开启优化읽기后,只읽기与当前화면相关的변수
  8. 存储设置 :开启存储后,Flash주소0~2048,约2K为Modbus변수存储所有,其他存储应规避此주소!!!不存储:不存储,断电重启后변수恢复默认值전체存储:不推荐,因为频繁存储会导致FLASH坏块추가存储指定변수:推荐使用,一般用来存储很少更改的系统설정매개변수
  9. 存储기호:识别存储在屏幕中的데이터버전기호, 当存储데이터형식发生改动时,一般需要手动修改此存储기호值
Modbus组态串口屏modbus协议使用教程插图2

从机모드

  1. 활성화프로토콜:需要활성화프로토콜,才支持Modbus프로토콜
  2. 프로토콜유형:选择Modbus从机
  3. 从机주소:默认为1
  4. 存储设置 :开启存储后,Flash주소0~2048,约2K为Modbus변수存储所私有,其他存储应规避此주소!!!不存储:不存储,断电重启后변수恢复默认值전체存储:不推荐,因为频繁存储会导致FLASH坏块추가存储指定변수:推荐使用,一般用来存储很少更改的系统설정매개변수
  5. 存储기호:识别存储在屏幕中的데이터버전기호,当存储데이터형식发生改动时,一般需要手动修改此存储기호值
Modbus组态串口屏modbus协议使用教程插图3

1.3 변수定义

클릭【변수定义】,在클릭【추가】,即可추가一个변수,如下所示

Modbus组态串口屏modbus协议使用教程插图4
변수定义

详细변수분석如下,如下所示

Modbus组态串口屏modbus协议使用教程插图5
  1. 名称:默认的변수名称为“Varialbe1、Varialbe2、Varialbe3……”,可以定义有意义的名称,如:机组状态;如果需要对변수分bit含义,默认的名称为“Field1、Field2、Field3……”, 可以定义有意义的名称,如:开/关机、运行/정지
  2. 형식:支持短整形、长整型、单精度浮点数、문자串
  3. 符号:可设置无符号、有符号
  4. 读写设置:设置변수的读写权限,支持可读写、只읽기、只쓰기
  5. 默认值:默认显示值
  6. 数值转换:对변수进行转换,例如:实际值=原始值*缩放+平移
  7. 표시 형식:设置整数和小数部分的位数
  8. 数组유형:开启数组유형,从该변수的주소开始,操作连续N个레지스터
  9. 是否储存:当在설정Modbus主/从프로토콜时开启存储设置,此处若选择存储,可掉电저장데이터
매개변수

详细매개변수设置분석如下所示

Modbus组态串口屏modbus协议使用教程插图6
  1. 변수유형:코일、이산 입력、유지 레지스터、입력 레지스터、内存변수、系统변수
  2. 从机주소:屏作主机时,才需要设置
  3. 변수주소:변수(或레지스터)的주소,16진법填写
  4. 初始化从机:屏作主机时,屏上电后,把변수的值쓰기从机设备
  5. 읽기失败归零:屏作主机时,当변수읽기失败时,변수的值归零

1.4 변수주소和值的关系

코일/离散데이터

创建一个코일或离散입력 레지스터,변수형식为短整型,则里面含有16个코일(从上到下,依次为bit0….bit15),假设该변수주소为0x0000,那么변수包含0x0000~0x000F주소范围内的변수,一个bit对应一个코일,如下所示

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

문자串유형

创建一个저장레지스터,변수형식为문자串유형(默认32个문자),假设该변수的주소为0x0000,那么此문자串对应包含0x0000~0x000F주소范围内的변수,一个주소对应两个문자

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

假设저장레지스터주소0,值为‘abcdefghij’,如下所示

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

数组

创建一个입력 레지스터,且为数组유형(默认数组大小为10,下标从0开始),假设该변수的주소为0x0000,那么此변수表示从0x0000开始的连续10个변수,数组下标对应一个변수

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

假设创建一个입력 레지스터为Voltage的변수,数组유형,大小为10,则对应关系如下所示

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

1.5 逻辑处理

选择左侧“逻辑处理”节点,클릭도구栏버튼“추가”逻辑处理。如下图所示,选择所示新建的逻辑关系,然后通过属性窗口进行设置

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

通用属性매개변수介绍:

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

1.5.1 控件绑定

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

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

使用VisualTFT软件V3.0.0.765及以上버전,也可直接在구성(SCADA)控件属性窗口设置关联변수名称,如下所示,버튼控件绑定一个변수

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

1.5.2 控件显示

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

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

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协议使用教程插图16

1.5.13 蜂鸣器控制

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

  • 모드:可设置为“单次”鸣叫或周期性鸣叫
  • 控制:对于周期性모드,可以设置为开始鸣叫、종료鸣叫、由条件控制
  • 时间:对于“单次”모드,可以设置鸣叫时间길이
  • 周期:对于“周期”모드,可以设置鸣叫的周期
Modbus组态串口屏modbus协议使用教程插图17

1.5.14 外接矩阵键盘

该功能为定制功能,常规버전不支持

1.5.15 쓰기时间

屏做主机时,可以定时写指定레지스터,设置从机时间

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

2 如何创建关联변수

大彩시리얼 HMImodbus 프로토콜可支持创建코일、이산 입력、유지 레지스터、입력 레지스터、콘텐츠변수、系统변수,如下所示

Modbus组态串口屏modbus协议使用教程插图19
변수유형相关설명
코일(Coils)参与通讯:0x01/0x05/0x0F
이산 입력(Discrete Input)参与通讯:0x02
유지 레지스터(Holding 회원가입)参与通讯:0x03/0x06/0x10
입력 레지스터(Input 회원가입)参与通讯:0x04
内存변수不参与通讯:用于做中间변수、记录一些信息等
系统변수不参与通讯:如系统통신 속도、运行时间等等

本章节屏幕설정为主机모드,介绍코일、이산 입력、유지 레지스터、입력 레지스터、系统변수的创建和绑定

适用范围: 全시리즈

例程下载链接:《Modbus튜토리얼1_入门튜토리얼V1.0》(클릭跳转)

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

2.1 코일

【코일】화면是对MODBUS프로토콜中“코일”변수的状态显示和控制,버튼控件直接绑定“코일”유형的변수。코일的状态为0或1,对应버튼的弹起(0)、按下(1)。运行后,当该주소的“코일”值发生变化后,버튼控件状态实时改变。同理,通过클릭버튼,可以改变从机中코일변수유형对应주소的状态

변수설정

添建立“机组状态”변수,변수유형设置为“코일”,추가子节点“开/关机”、“运行/ 정지”,설정변수주소为0x0000,详细设置설명参考Modbus 基本매개변수설명,如下所示

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

화면설정

화면中추가一个버튼控件(控件ID:1),在버튼控件的属性栏,设置关联변수“机组状态/开/关机”,버튼的操作风格为开关,如下所示

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

运行预览

通过以上两步,控件ID为1的버튼控件与변수“机组状态/开/关机”建立起了关联。此时,编译엔지니어링并运行虚拟시리얼 HMI,和MODBUS Slave软件建立연결。버튼控件显示“机组状态/开/关机”的状态。同时클릭버튼控件,更改변수“机组状态/ 开/关机”的状态。同理,控件ID为2的버튼控件通过以上方法,与변수关联后,实现相应的状态显示和控制功能。如下所示

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

2.2 이산 입력

【이산 입력】화면是对MODBUS프로토콜中“이산 입력”변수的状态显示,图标控件直接绑定“이산 입력”유형的변수。图标控件将显示변수的状态,当该주소 “이산 입력”值发生变化后,图标控件对应发生变化

변수설정

추가변수:建立“机组故障”변수,추가子节点“压缩机低压”,변수유형设置为“이산 입력”,설정변수주소为0x0000,详细设置설명参考Modbus 基本매개변수설명,如下所示

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

화면설정

화면中추가一个图标控件(控件ID:1),在图标控件的属性栏,设置关联변수“机组故障/压缩机低压”,同理ID2~4的图标控件绑定对应的변수。制作参考《구성(SCADA)控件튜토리얼-图标控件》,如下所示

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

运行预览

通过以上两步,控件ID为1的图标控件与변수“机组故障/压缩机低压”建立起了关联。此时,编译엔지니어링并运行虚拟屏시리얼 HMI,和MODBUS Slave软件建立연결。图标控件显示변수“机组故障/压缩机低压”的状态。同理,控件ID为2、3、4的图标控件通过以上方法,分别与不同的변수关联后,便可显示相应주소변수的状态,如下所示

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

2.3 유지 레지스터

【유지 레지스터】화면是对MODBUS프로토콜中“유지 레지스터”변수的数值直接显示,文本控件直接绑定“유지 레지스터”유형的변수。文本控件将显示변수的值,当该주소的“유지 레지스터”值发生变化后,文本控件对应发生变化

변수설정

추가변수:创建“设定온도”변수,변수유형设置为“유지 레지스터”,설정변수주소为0x0000,如该변수表示온도,从机传输值为225℃,实际온도为22.50℃,则实际值和传输值缩放比例为0.1,偏移值为0。则:设置“数值转换”为“是”,“缩放”为 “0 .1”,平移为“0”,详细设置설명参考Modbus 基本매개변수설명,如下所示

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

화면설정

화면中추가一个文本控件(控件ID:1),如图4‑14所示,在文本控件的属性栏,设置关联변수“设定온도”,입력방식为“弹出系统键盘입력(用户主机可입력)”모드,如下所示

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

运行预览

通过以上两步,控件ID为1的文本控件与변수“设定온도”便建立起了关联。此时,编译엔지니어링并运行虚拟시리얼 HMI,和MODBUS Slave软件建立연결,文本控件便显示변수“设定온도”的数值,클릭文本控件,弹出键盘,可对변수“设定온도”设置值。同理控件ID为2、3、4的文本控件通过以上方法分别与不同的변수关联后,实现相应的数值显示和控制功能,运行效果如下所示

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

2.4 입력 레지스터

【입력 레지스터】화면是对MODBUS프로토콜中“입력 레지스터”변수数值的直接显示,文本控件直接绑定“입력 레지스터”유형的변수,文本控件将显示변수的值,当该주소的“입력 레지스터”值发生变化后,文本控件对应发生变化

변수설정

创建“온도”변수,변수유형设置为“입력 레지스터”,설정변수주소为0x0000,如下所示

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

화면설정

화면中추가一个文本控件(控件ID:1),在文本控件的属性栏,设置关联변수“온도”,如下所示

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

运行预览

通过以上两步,控件ID为1的文本控件与0x0000주소的“온도”便建立起了关联。此时,编译엔지니어링并运行虚拟시리얼 HMI,和MODBUS Slave软件建立연결,文本控件便显示 0x0000 주소的유지 레지스터的数值。同理,控件ID为2、3、4的文本控件通过以上方法分别与不同的변수关联后,便可显示相应주소的변수值,如下所示

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

2.5 系统변수

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

변수설정

추가변수:创建“背光亮度”변수,변수유형设置为“系统변수”,系统변수매개변수为“背光亮度”,详细设置설명参考Modbus 基本매개변수설명,如下所示

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

화면설정

화면中추가进度条控件(控件ID:2)、滑动条控件(控件ID:3)。进度条控件属性栏,设置滑动通知为“关联滑动条”;滑动条控件属性栏,设置关联변수为“背光亮度”。滑块控件和进度条控件的具体적용参考 구성(SCADA)控件튜토리얼 - 滑块控件 튜토리얼,如下所示

运行预览

通过以上两步,控件ID为2的滑动条控件与内存변수“背光亮度”建立起了关联;此时,编译엔지니어링并运行虚拟시리얼 HMI,滑动“滑动条控件”的游标可控制屏幕的背光亮度。同理,其他控件ID绑定对应的文本控件或버튼控件,通过以上方法分别与不同的변수关联后,便可显示或控制系统변수的변수值,如下所示

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

3 버튼控件和文本控件

本章节主要介绍버튼控件、文本控件在Modbus프로토콜中常见的적용。其中简单的控件绑定변수,可以在구성(SCADA)설정页面关联,或者在【도구-프로토콜与변수-逻辑处理】绑定변수

本章节屏幕当마스터,读写从机指令,若屏幕当슬레이브,文本、버튼控件的적용一样,参考即可,本章节创建2个코일、4个저장레지스터,用于설명버튼控件、文本控件的적용,如下所示

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

适用范围: 全시리즈

例程下载链接:《Modbus튜토리얼1_入门튜토리얼V1.0》(클릭跳转)

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

3.1 버튼控件

【버튼控件】화면,当MODBUS프로토콜버전中,버튼按下或弹起时可以执行一些预设的逻辑操作

화면/逻辑설정

设置关机

【버튼控件】화면,버튼控件ID1,구성(SCADA)界面不直接关联控件,,추가以下逻辑处理

추가逻辑处理:用途用于【控件绑定】,填写对应的화면ID1、버튼控件ID1,변수为【机组状态/开/关机】

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

【버튼控件】화면,버튼控件ID2、文本控件ID3,구성(SCADA)界面不直接关联控件,추가以下逻辑处理

第1条:用途用于【버튼按下】,填写对应的화면ID1、버튼控件ID2,执行动作为【设置변수】 ,设置【设置湿度】为40

第2条:用途用于【控件绑定】,填写对应的화면ID1、文本控件ID3,변수为【设置湿度】,绑定的변수为【设置湿度】

如下所示:

Modbus组态串口屏modbus协议使用教程插图36
设置온도

【버튼控件】화면,버튼控件ID4和ID6、文本控件ID5,구성(SCADA)界面不直接关联控件,추가以下逻辑处理

第1条:用途用于【버튼按下】,填写对应的화면ID1、버튼控件ID4,执行动作为【增量调节】 、调节的변수为【设置온도】、调节1步长为【1】(步长只能为整数),调节방식为【递减】

第2条:用途用于【控件绑定】,填写对应的화면ID1、文本控件ID5,绑定的변수为【设置온도】

第3条:用途用于【버튼按下】,填写对应的화면ID1、버튼控件ID6,执行动作为【增量调节】 、调节的변수为【设置온도】、调节1步长为【1】(步长只能为整数),调节방식为【递增】

如下所示:

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

运行预览

根据화면설정和逻辑处理,结合modbus slave디버깅 도구,当按下버튼控件(控件ID:1),从机设备的状态为关机。同理,버튼按下时还可以用于저장레지스터的변수设置,增量调节等功能,运行结果如下所示

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

3.2 文本控件

【文本控件】화면,文本控件主要是用于显示绑定的변수值。对于코일、유지 레지스터等可读写유형的변수,可以设置“입력방식”为弹出系统键盘입력,通过弹出的键盘对绑定的변수值进行修改。另外可以绑定修改显示颜色、闪烁的逻辑处理

화면/逻辑설정

화면中추가一个文本控件(控件ID:1),作为显示电压值;입력방식为弹出键盘,추가以下逻辑处理:

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

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

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

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

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

运行预览

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

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

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

本章节主要介绍仪表控件、滑块控件、进度条控件在Modbus프로토콜中常见的적용。其中简单的控件绑定변수,可以在구성(SCADA)설정页面关联,或者在【도구-프로토콜与변수-逻辑处理】绑定변수

本章节屏幕当마스터,读写从机指令,若屏幕当슬레이브,仪表、滑块、进度条控件的적용一样,参考即可,本章节创建2个저장레지스터、2个입력 레지스터,用于설명仪表控件、滑块控件、进度条적용,如下所示

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

适用范围: 全시리즈

例程下载链接:《Modbus튜토리얼3-仪表、滑块及进度条控件V1.0》(클릭跳转)

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

4.1 仪表控件

【仪表控件】화면主要对仪表控件的使用做예제설명。仪表控件反映用户主机上的데이터变化,满足用户使用的仪器仪表界面

화면/逻辑설정

方法一:逻辑处理绑定

화면中추가一个仪表控件(控件ID:1),作为显示从机电压值,열기【도구-프로토콜与변수】,추가1条逻辑处理

用途用于【控件绑定】,填写对应的화면ID1、仪表控件ID1,绑定的변수为【电压】,如下所示

Modbus组态串口屏modbus协议使用教程插图42
方法二:구성(SCADA)화면绑定

화면中추가一个仪表控件(控件ID:2),作为显示从机电流。且在其属性栏窗口中绑定“电流”변수,如下所示

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机,仪表控件实时显示电压(控件ID:1)、电流(控件ID:2)的变化

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

4.2 滑块和进度条控件

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

화면/逻辑설정

方法一:逻辑处理绑定

화면中추가进度条控件(控件ID:1)、滑块控件(控件ID:2)。在【프로토콜与변수设置】中추가1条逻辑处理

用途用于【控件绑定】,填写对应的화면ID2、仪表控件ID2,绑定的변수为【设置온도】,如下所示

Modbus组态串口屏modbus协议使用教程插图45
方法二:구성(SCADA)软件绑定

화면中추가进度条控件(控件ID:3)、滑动条控件(控件ID:4)。滑块控件直接绑定【设置湿度】,설정如下所示

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机。当변수的值发生变化时,滑块控件和进度条显示的状态也会相应的更新;通过鼠标클릭滑块控件并拖动,변수的值也会相应变化更新

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

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

本章节主要介绍滑动选择控件、菜单控件在Modbus프로토콜中常见的적용。其中简单的控件绑定변수,可以在구성(SCADA)설정页面关联,或者在【도구-프로토콜与변수-逻辑处理】绑定변수

本章节屏幕当마스터,读写从机指令,若屏幕当从机,滑动选择控件、菜单控件的적용一样,参考即可,本章节创建2个저장레지스터,用于설명滑动选择控件、菜单控件的적용,如下所示

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

使用范围:全시리즈

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

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

5.1 菜单控件

【菜单控件】화면主要对菜单控件的使用做예제설명,菜单控件的“风格”有两种:“弹出菜单”和“固定菜单”。此处主要做弹出菜单使用설명,“菜单风格”为“弹出菜单”,需要버튼控件将菜单控件和文本控件关联使用,클릭버튼弹出菜单控件,选中菜单项后直接显示在文本控件中

화면/逻辑설정

方法一:逻辑处理绑定

화면中추가一个菜单控件(控件ID:2),作为控制从机开关机,详细설정如下所示

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

在【프로토콜与변수设置】中추가一条逻辑处理,该逻辑处理的用途为“控件绑定”,화면为“1”;控件为“2”;변수为“机组状态/开/关机”,如下所示

Modbus组态串口屏modbus协议使用教程插图50
方法二:구성(SCADA)화면绑定

화면中추가一个菜单控件(控件ID:5),作为控制从机风速。且在其属性栏窗口中绑定“设置온도”변수,详细설정如下所示

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机,当按下버튼控件(控件ID:4),弹出菜单控件(控件ID:5),选择菜单控件的“一级”选项,直接“一级”将显示在文本控件(ID:6)中,且从机변수“设置风速”相应改变

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

5.2 滑动选择控件

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

화면/逻辑설정

方法一:逻辑处理绑定

화면中추가一个滑动选择控件(控件ID:1),作为显示风机状态;用途为“状态显示”,如下所示

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

在【프로토콜与변수设置】中추가1条逻辑处理:用途为“控件绑定”;화면为“2”;控件为“1”;변수为“机组状态/风机故障”。如下所示

Modbus组态串口屏modbus协议使用教程插图54
方法二:구성(SCADA)화면绑定

화면中추가一个菜单控件(控件ID:2),作为控制从机风速等级。在其属性栏窗口中绑定“设置风速”변수,如下所示

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机。当변수“机组状态/风机故障”的值发生变化时, 滑动选择控件(控件ID:1)显示的状态也会相应的更新;通过鼠标点滑动选择控件(控件ID:2)并拖动,当拖动정지后,选中某个选项,同时변수“设置风速”的值也会变化更新

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

6 曲线和历史曲线控件

本章节主要介绍曲线控件、历史曲线控件在Modbus프로토콜中常见的적용。其中简单的控件绑定변수,可以在구성(SCADA)설정页面关联,或者在【도구-프로토콜与변수-逻辑处理】绑定변수

本章节屏幕当마스터,读写从机指令,若屏幕当从机,曲线控件、历史曲线控件的적용一样,参考即可,本章节创建2个저장레지스터,用于설명曲线,历史曲线的적용,如下所示

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

适用范围:全시리즈

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

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

6.1 曲线控件

【曲线控件】화면,主要对曲线控件的使用做예제설명。MODBUS프로토콜버전中,曲线控件用于显示关联的변수,曲线控件周期性的采样변수值, 然后将所有采样值绘制到曲线控件内,연결形成曲线;曲线控件的每个通道都可以关联一个변수,最多可以设置8个通道

화면/逻辑설정

화면中추가一个曲线控件(ID:1),作为显示从机“온도”值。同时추가两个버튼控件(ID为2和4)作为增减“온도”변수的控制,以及추가一个文本控件(ID:3),直接绑定“온도”,作为数值的显示。曲线控件的相关매개변수설정,如下所示

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

在【프로토콜与변수设置】中추가3条逻辑处理:

第1条:用途为“曲线绑定”,화면为“1”;控件为“1”;通道为“0”,변수为“온도”;采集周期为“1”

第2条:控制“온도”的增减。用途为【버튼按下】,填写화면ID为1,控件ID为2;执行动作为【增量调节】,변수为【온도】,调节步长为【1】,调节방식为【递减】;循环从0~100调节

第3条:控制“온도”的递增。用途为【버튼按下】,填写화면ID为1,控件ID为4;执行动作为【增量调节】,변수为【온도】,调节步长为【1】,调节방식为【递增】;循环从0~100调节。如下所示

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

运行预览

此时,编译엔지니어링并下载到시리얼 HMI,和MODBUS Slave软件联机,曲线控件实时显示온도的变化。同时按下버튼控件(ID:2和ID:4)可以对“온도”변수的控制,曲线控件的显示也随着改变,如下所示

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

6.2 历史曲线控件

【历史曲线控件】화면,主要对历史曲线控件的使用做예제설명。历史曲线控件和曲线控件都可以实时采样、显示绑定的변수值。不同处是历史曲线控件저장前期的데이터,可以보기历史데이터。MODBUS프로토콜버전中,历史曲线控件用于显示关联的변수值,历史曲线控件周期性的采样변수值,然后将所有采样值绘制到历史曲线控件内,연결形成曲线;历史曲线控件的每个通道都可以关联一个변수,最多可以设置8个通道。

화면/逻辑설정

화면中추가一个历史曲线控件(ID:1),作为显示从机“湿度”值。同时추가两个버튼控件(ID为2和4)作为增减“湿度”변수的控制;以及추가一个文本控件(ID:3),直接绑定변수“湿度”,作为数值的显示。历史曲线控件的相关매개변수설정如下所示

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

在【프로토콜与변수设置】中추가3条逻辑处理:

第1条:用途为“曲线绑定”,화면为“2”;控件为“1”;通道为“0”,변수为“湿度”;采集周期为“1”

第2条:控制“湿度”的增减。用途为【버튼按下】,填写화면ID为2,控件ID为2;执行动作为【增量调节】,변수为【湿度】,调节步长为【1】,调节방식为【递减】;循环从0~100调节

第3条:控制“湿度”的递增。用途为【버튼按下】,填写화면ID为2,控件ID为4;执行动作为【增量调节】,변수为【湿度】,调节步长为【1】,调节방식为【递增】;循环从0~100调节。如下所示

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

运行预览

此时,编译엔지니어링并下载到시리얼 HMI,和MODBUS Slave软件联机,历史曲线控件实时显示湿度的变化。当屏幕显示的采样点数大于设置的值(默认为 100),可以通过历史曲线控件上方的滚动条보기历史데이터。同时按下버튼控件(ID:2和ID:4)可以对“湿度”변수的控制,历史曲线控件的显示也随着改变

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

7 图标控件和动画控件

本章节主要介绍图标控件、动画控件在Modbus프로토콜中常见的적용。其中简单的控件绑定변수,可以在구성(SCADA)설정页面关联,或者在【도구-프로토콜与변수-逻辑处理】绑定변수

本章节屏幕当마스터,读写从机指令,若屏幕当从机,图标控件、动画控件的적용一样,参考即可,本章节1组이산 입력변수,2个입력 레지스터用于설명图标控件和动画控件的적용,如下所示

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

适用范围:全시리즈

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

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

7.1 图标控件

【图标控件】화면,主要对图标控件的使用做예제설명。图标控件为GIF或ICON형식的动画文件,默认图标索引从0开始。在MODBUS프로토콜中可以使用图标控件绑定변수,形象地표시 장치的状态

화면/逻辑설정

方法一:逻辑处理绑定

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

控件ID:2설정同理

图标文件的生成,参考链接:《ICON控件적용》(클릭跳转)

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

在【프로토콜与변수设置】中추가一条逻辑处理,该逻辑处理的用途为“控件绑定”,화면为“1”;控件为“1”;변수为“机组故障/压缩机低压”,如下所示

Modbus组态串口屏modbus协议使用教程插图66
方法二:구성(SCADA)화면绑定

화면中추가一个图标控件(控件ID:3),作为显示从机烟感报警状态。且在其属性栏窗口中绑定“机组故障/烟感报警”변수,详细설정如下所示

控件ID:4설정同理

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机。当변수“机组故障”每一个节点的值不间断发生变化时, 图标控件(控件ID:1~ID4)显示的状态也会相应的更新

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

7.2 动画控件

【动画控件】화면主要对动画控件的使用做예제설명,动画控件用于播放设置的GIF或ICON형식的动画文件,可以控制暂停或者播放

화면/逻辑설정

方法一:逻辑处理绑定

화면中추가一个动画控件(控件ID:1),作为显示控制从机“动画1”변수;同时추가两个버튼控件(ID为2和3)作为动画控件(控件ID1)的播放、暂停的控制,如下所示

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

在【프로토콜与변수设置】中추가3条逻辑处理 :

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

第2条:控制“动画”的播放。用途为【버튼按下】,填写화면ID为2,控件ID为2;执行动作为【设置변수】,변수为【动画1】,设置值为1

第3条:控制“动画”的暂停。用途为【버튼按下】,填写화면ID为2,控件ID为3;执行动作为【设置변수】,변수为【动画1】,设置值为0

Modbus组态串口屏modbus协议使用教程插图70
方法二:구성(SCADA)화면绑定

화면中추가一个动画控件(控件ID:4),作为显示控制从机“动画2”변수。在其属性栏窗口中绑定“动画2”변수。추가一个버튼控件(ID:5),作为动画控件(控件ID4)的播放、暂停的控制,如下所示

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机。当변수“动画1”的值不为“0”的时候,动画控件(控件ID:1)播放动画;同时클릭버튼控件(控件ID:2或3),可以控制动画控件“播放”或者“정지”,同时변수“动画1”的值相应改变。同理,动画控件(控件ID:4)的现象和操作类似。

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

8 二维码控件和RTC控件

本章节主要介绍二维码控件、RTC控件在Modbus프로토콜中常见的적용。其中二维码控件只支持在【도구-프로토콜与변수-逻辑处理】绑定변수

本章节屏幕当마스터,本章节创建1个저장레지스터,用于二维码控件的적용,如下所示

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

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

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

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

8.1 二维码控件

【二维码】화면主要对二维码控件的使用做예제설명。二维码控件可以将设定的문자串以二维码的形式显示出来。可以被一些扫描仪器识别。

注意:基本型시리즈的시리얼 HMI使用二维码控件需要特殊的固件支持

화면/逻辑설정

화면中추가一个二维码控件(控件ID:1),控件属性설정,如下所示:

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

在【프로토콜与변수设置】中추가一个변수,변수유형为“문자串”,문자串길이为32,如下所示

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

在【프로토콜与변수设置】中추가一条逻辑处理,该逻辑处理的用途为“控件绑定”,화면为“1”;控件为“1”;변수为“二维码”,如下所示

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,二维控件将문자串“VisualTFT”以二维码的形式显示出来,和Modbus Slave软件联机,二维控件控件显示对应문자串。

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

8.2 RTC控件

【RTC控件】화면主要对RTC控件的使用做예제설명,当屏做主机时,修改从机RTC时间;从机创建固定주소的유지 레지스터,用于存放时间변수,连续7个유지 레지스터,分别存放年、月、星期、日、时、分、秒,屏幕周期性地把最新的时间通过0x10指令写从机레지스터

화면/逻辑설정

화면中추가一个RTC控件(控件ID:1),如下所示:

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

在【프로토콜与변수设置】中추가1条逻辑处理:用途为“쓰기时间”;从机주소为“1”;레지스터为“50”(10진법);周期为“10”(单位秒),如下所示:

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机。主机每10S将RTC时间보내기至从机。

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

9 控件显示隐藏和多언어功能

本章节主要介绍控件的显示和隐藏、多언어的적용。其中구성(SCADA)控件才支持显示隐藏,구성(SCADA)控件유형可参考VisualTFT 工作界面介绍,支持多언어的控件有文字、버튼、菜单、滑动选择、데이터记录(告警)等等

本章节屏幕当마스터,本章节创建1个저장레지스터,用于控制구성(SCADA)控件的显示隐藏;创建一个系统변수,用于언어控制选择,如下所示

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

适用范围:全시리즈

例程下载链接:《Modbus튜토리얼9-控件隐藏和多언어V1.0》

프로토콜开启、변수相关설명,参考链接:《Modbus 基本매개변수설명》

9.1 控件显示隐藏

【显示隐藏控件功能】화면主要对显示隐藏控件功能的使用做예제설명。当需要在某个条件成立的情况下,隐藏或显示一个或一些控件的적용

화면/逻辑설정

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

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

在【프로토콜与변수设置】中추가3条逻辑处理:第一条:用途为“控件显示”;화면为“1”;控件为“2”;执行条件为“변수 【控件显示】不为0”,同理,第2、3条设置类是

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件建立联机。当변수“控件显示”的值为“0”,滑动条控件(控件ID:2)、仪表控件(控件ID:3)、文本控件(控件ID:4)被隐藏;当변수“控件显示”的值为“1”,这些控件显示出来。同时,클릭文本控件(控件ID:1),弹出键盘입력“0”或“1”,控制控件显示或隐藏。

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

9.2 多언어

【多언어功能】화면主要对多언어功能的使用做예제설명。针对面向不同的客户,需要多언어적용。屏支持文字、菜单控件和滑动选择控件的多언어设置。엔지니어링以3个버튼来控制文字、菜单控件和滑动选择控件的중국어、英文、繁体的显示

화면/逻辑설정

화면中추가一个文字(ID:1)、滑动选择控件(控件ID:2)、菜单控件(控件ID:3),用于显示不同언어。以文字控件为例,控件属性设置如下所示

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

화면中추가3个버튼控件(控件ID:4、5、6)用于控制显示不同的언어。以버튼控件ID4为例,控件属性설정如下所示

버튼控件ID4~6,做了互斥功能(同时只能选中一个,可参考《구성(SCADA)控件튜토리얼——버튼控件》1.3章节버튼互斥)

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

【프로토콜与변수设置】中추가3条逻辑处理:第一条,用途为“버튼按下”;화면为“2”;控件为“4”;执行条件为“设置[系统언어]为0”,对应显示“언어1”。同理,第2、3条设置类是,如下所示

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

运行预览

此时,编译엔지니어링并运行虚拟시리얼 HMI,和Modbus Slave软件联机。当按下버튼控件(控件ID:1)时显示중국어;按下钮控件(控件ID:5)时显示“英文”;当버튼控件(控件ID:5)时显示“繁体”

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

실제 프로젝트에 이 자료를 활용하시겠습니까?

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

엔지니어 회원

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

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

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

답글 작성

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