【插针机HMI开发】用AWTK开发人机界面

描述

插针机中有两个重要的部件HMI和PLC,HMI提供用户操作和界面显示,而PLC则控制电机的运动逻辑。致远电子的ZTP800和AWTK-HMI解决方案可以快速开发插针机或其他设备的HMI界面。

 

HMI  AWTK介绍致远电子的AWTK是开源GUI引擎,提供了AWTK-C、AWTK-MVVM和AWTK-HMI等多种解决方案来实现界面编程。其中AWTK-C解决方案使用C语言来开发GUI,灵活度最高,但是学习使用门槛也较高。AWTK-MVVM解决方案则进一步简化C的编程,支持控件与变量绑定联动,让界面和业务开发分离。而AWTK-HMI解决方案使用最简单,内置Modbus通信模块,不用写C代码,只需使用AWStudio软件拖拽控件和配置属性即可实现HMI界面,因此本次也是使用AWTK-HMI方案来实现插针机的上位机。

 


HMI  插针机系统介绍

本次使用 ZTP800 作为插针机的HMI设备,中间使用Modbus协议与PLC通信。ZTP800中内置的AWTK-HMI运行时引擎,让用户无需额外编写C代码即可实现插针机的人机交互界面。

HMI

图2  插针机系统介绍

注:AWTK-HMI是开源的HMI运行时引擎,如想了解编译方法请参考AWTK-HMI仓库的说明文档,在ZTP800的部署AWTK可以参考ZTP800在线文档的AWTK移植章节。


HMI  插针机HMI开发流程

只需要3步:

在PC配置好Modbus的通信点表文件;

使用AWStudio软件通过简单拖拽做界面设计;

最后把工程下载到ZTP800运行。

1. 定义Modbus寄存器点表先定义一个Modbus寄存器点表来约定HMI和PLC的通信规范,HMI作为Modbus主机,PLC作为从机。该表格需要根据插针机的需求来定,例如:手动移动托板,手动移动主轴,调整主轴/托板速度等。HMI图3  Modbus 寄存器只读表格图

HMI

图4  Modbus 寄存器写入表格图22. 创建AWTK-HMI的Modbus配置文件

AWTK-HMI要使用Modbus通信功能,需要用户创建一个配置文件modbus_model.json。

HMI

图5  modbus_model.json配置文件

modbus_model.json主要用于配置Modbus通信的寄存器和AWTK变量对象的映射关系,每个channel(通道)用于表示一片读写Modbus寄存器区域,而variables定义了AWTK变量对象和channel的关系。3. AWTK-HMI界面开发

在AWStudio创建一个新AWTK工程,如下图:

HMI

图6  插针机首页开发界面

把需要显示的控件从工具栏拖放到页面上:

HMI

图7  插针机操作界面

首先,需要给窗口配置v-model属性,启用Modbus功能。在窗口增加一个自定义属性v-model,属性值设置为【modbus_client(name=modbus_model,share=true)】,代表该页面使用modbus_model.json的通信配置。如下图:HMI

图8  变量绑定规则界面

下一步,把上面modbus_model.json映射好的变量绑定到控件上面,让Label控件根据变量当前值自动改变显示内容,或自动把Edit控件设置的参数下发给下位机。

例如要让Label控件显示补针状态,可以给这个Label控件添加自定义属性【v-data:text】,属性值设置为【g_is_needle_model?”补针状态”:”非补针状态”】,代表控件的text属性会跟随g_is_needle_model变量变化。如下图:

HMI图9  添加自定义属性界面例如要把设置托板速度的Edit控件的输入数值下发到下位机,可以给这个Edit控件添加自定义属性【v-data:text】,属性值设置为【g_plane_speed】,代表控件的text属性改变后会立即更新g_plane_speed变量。如下图:HMI图10  添加自定义属性界面2

Modbus模块会自动同步g_is_needle_model、g_plane_speed等变量,并周期读写从机,因此上面控件显示就会周期性的更新,或周期性的把输入值写入从机。
用户甚至可以把变量值立即写入从机,在控件的事件响应脚本中增加代码【exec('update', 'write_registers')】即可,其中write_registers就是modbus_model.json定义的通道名。

4. AWTK-HMI工程下载运行

上面的工程开发完成后,点击AWStudio上的打包按钮,在工程目录下会生成出一个res文件夹,如下图所示。把res文件夹的内容下载到ZTP800的AWTK-HMI运行时程序的对应位置,重启设备就可以顺利启动我们新开发的HMI界面。

HMI

图11  res文件夹HMI图12  运行效果

 

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

全部0条评论

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

×
20
完善资料,
赚取积分