大彩讲堂:VisualHMI-LUA教程-连续写多个寄存器函数的应用

描述

lua脚本

一、适合范围

本文档适用于VisualHMI平台,Lua脚本语言为V5.3版本,配合工程可以完成大部分的内部逻辑处理。
 


 

二、概述

set_uint16_ex(vtype, addr, value1,value2, …, value120)

vtype:数据类型

addr:变量起始地址,最大可以写120个连续寄存器

value1:寄存器1的值

value2:寄存器2的值

……

value120: 寄存器120的值

set_array(vtype, addr, buff)

vtype:数据类型

addr:变量起始地址,最大可以写120个连续寄存器

buff:word(字)数组,最大120个字


 

三、功能实现

1、Modbus寄存器应用

放置2个位状态指示灯,地址为LW1000对应写单个寄存器值,地址为LW1001对应以数组形式写寄存器值。放置4个数值控件,用以显示modbus协议保持寄存器值,如图3-1所示。

lua脚本

图3‑1  modbus寄存器读写配置


 

脚本运用函数说明

点击位状态指示灯 0x1000(LW 内存变量),触发on_update回调,set_uint16_ex(vtype, addr, value1,value2, …, value120)以单个寄存器批量设置4x0000—4x0003(保持寄存器的值)。

点击位状态指示灯 0x1001(LW 内存变量),触发on_update回调,set_array(vtype, addr, buff)以数组形式批量设置4x0000—4x0003(保持寄存器的值)。

Lua脚本预览,如图3-2所示

lua脚本

                                                                                                                 图3‑2  modbus寄存器读写 lua脚本预览

2、FX2N寄存器读写应用

放置2个位状态指示灯,地址为LW1111对应写单个寄存器值,地址为LW2222对应以数组形式写寄存器值。放置4个数值控件,用以显示FX2N协议D寄存器值,如图3-3所示。

lua脚本

图3‑3  FX2N寄存器读写配置


 

脚本运用函数说明

点击位状态指示灯 0x1111(LW 内存变量),触发on_update回调,set_uint16_ex(vtype, addr, value1,value2, …, value120)以单个寄存器批量设置4x0000—4x0003(D寄存器的值)。

点击位状态指示灯 0x2222(LW 内存变量),触发on_update回调,set_array(vtype, addr, buff)以数组形式批量设置0x0000—0x0003(D寄存器的值)。

注意FX2N地址为10进制!!

Lua脚本预览,如图3-4所示

lua脚本

图3‑4  FX2N寄存器读写 lua预览

 

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分