广州大彩串口屏论坛_大彩开发者交流论坛

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 7746|回复: 0

大彩讲堂:VisualHMI-LUA教程-on_run回调函数使用指南

[复制链接]

136

主题

176

帖子

1万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
10465
发表于 2025-7-16 09:51:59 | 显示全部楼层 |阅读模式

一、适合范围

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

二、概述

on_run(screen)周期回调函数,用该回调函数,会根据设定的时间周期循环回调一次
• screen:当前画面
可以通过set_run_cycle(cycle) API 设置on_run的回调周期,毫秒单位
• cycle: 单位毫秒
重点:不要在on_run里面调用set_run_cycle(cycle)

三、教程实现

功能实现
首先建立一个HMI工程以DC80480M070为例,如3-1所示。

图3-1 新建工程

控件配置
1、运用on_run回调函数周期刷新设置好的值:如图3-2所示,在工程上放置三个数值控件绑定外部寄存器地址(4x1001-1003三个地址)跟一个位状态指示灯(绑定外部寄存器地址4x1000),分别代表设置电压,当前电压,频率,和开关。开脚本逻辑条件是先判断开关状态为开启的时候,和当前电压小于设置电压的话,频率的值就会被设置成10,因为是一秒回调一次,只要达到设置的条件,频率的值改成其他的也会被一秒回调一次后更改为10。具体可以参考以下lua脚本写法。

图3-2 控件配置

2、运用on_run回调函数制作简易定时器,如图3-3所示放置俩个数值控件地址绑定外部寄存器地址(4x1004和4x1005),在脚本里先获取到寄存器地址,根据设置的条件,给寄存器地址里写1,然后启动计时器开始以一秒加1的速度开始计时,给寄存器地址里写0,可以设置成0,具体可以参考以下脚本写法。

图3-3 控件配置(简易定时器)

Lua脚本预览





广州大彩光电科技有限公司(总部)
地址:广州市黄埔区科学城玉树工业园富康西街8号C栋销售与技术支持:(020)82186683-601


大彩深圳办事处
地址:深圳市宝安区新安街道华联城市全景花园G座1203室
(公共交通:地铁5号线洪浪北D出口,5号线或12号线灵芝站C1出口)
邮箱:fujq@gz-dc.com
销售与技术支持:付先生 13828461018

大彩成都办事处
地址:四川省成都市高新区天府大道中段500号东方希望天祥广场C座39楼3910号

邮箱:niesl@gz-dc.com
销售与技术支持:聂经理 18180927176

大彩上海办事处
地 址:上海市浦东新区长清路1200弄森宏旗臻商务楼39号813

邮箱:sales103@gz-dc.com
销售与技术支持:刘经理 13671882080

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
销售与技术支持:(020)82186683-601
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|广州大彩串口屏论坛_大彩开发者交流论坛

GMT+8, 2025-8-30 08:58 , Processed in 0.051598 second(s), 20 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表