您现在的位置:智能制造网>技术首页>技术交流

快速入门 | 运动控制器ZHMI组态编程简介

2023年11月21日 11:51来源:深圳市正运动技术有限公司 >>进入该公司展台人气:267

今天我们来学习一下,运动控制器的ZHMI组态编程简介。本文主要从产品概述、控制器连接触摸屏使用、HMI编程方法以及组态示例程序等四方面来讲解。


01
产品概述


采用ZMC306X控制器连接ZHD400X触摸屏。

控制器参考配置如下图:

(一)ZMC306X控制器硬件介绍

ZMC306X系列控制器本体带6个脉冲轴,可通过CAN总线扩展脉冲轴,支持多达12轴直线插补、任意圆弧插补、空间圆弧、螺旋插补、电子凸轮、电子齿轮、同步跟随、虚拟轴设置等;采用优化的网络通讯协议可以实现实时的运动控制。

通讯接口包含RS232、RS485、RS422、以太网、U盘、CAN。

控制器的输入口0-1支持锁存功能,输出口0-1支持PWM功能;本身带两路模拟量输入和两路模拟量输出接口,12位精度,电压范围0-10V。

支持正运动技术XPLC的功能,使用ZDevelop软件的HMI编程开发组态程序,可以通过网络来做组态显示。

(二)ZHD400X

ZHD400X是一款网络显示的触摸屏示教盒,示教盒必须和支持ZHMI功能的控制器配合使用,触摸屏的组态程序开发使用ZDevelop的HMI编程开发方式,程序保存在控制器中。

示教盒带有一个USB口,一个U盘延长口,使用24V直流电源供电(可USB供电),带有800*480分辨率的真彩显示屏,本身带18个按键,配急停开关。

ZHD400X支持触摸屏,可以按键和触摸配合使用。

图片

屏幕边上的物理按键的编码规则参见《ZHD400X手持盒手册》说明,按键按下时,示教盒自动向控制器发送物理按键,控制器程序可以检测到物理按键,如果需要使用虚拟按键,需要在组态里面使用按键转换表,ZDevelop带有标准400X的按键转换表,可以根据具体情况或面膜修改按键转换表。


02
控制器连接触摸屏使用



触摸屏配一根网线,使用网线连接到控制器的EtherNET网口,网线水晶头边上引出三根线,分被是示教盒电源线和急停信号线,红色为24V电源正极,黑色为24V电源负极,紫色为急停信号线。

触摸屏和控制器的主电源可共用一个。

图片

使用步骤:

1.先使用ZDevelop软件编辑好HMI程序,连接控制器,将程序下载到ROM掉电保存,就可以断开控制器和ZDevelop的连接。然后给触摸屏上电。

2.直接使用配发的连接线将ZHD400X接到控制器的网口上,然后在屏上四个角,按画Z字顺序点击,连续2次,唤醒屏幕,弹出可以弹出设置窗口,可以进行触摸校正,控制器IP修改等。

图片

3.设置窗口如下,在弹出的窗口上自动获取到当前所连的控制器IP的地址,确认IP无误,点击Connect即可连接使用,此时触摸屏显示起始基本窗口的内容。

图片

4.若没有触摸屏,可将HMI程序下载到仿真器,在XPLC screen平台仿真。

图片

连接仿真器下载之后,点击“显示”按钮即可弹出仿真界面。

XPLC screen显示效果:

图片



03
HMI编程方法



HMI组态编程一般和Basic混合编程,将HMI要调用的寄存器和相关动作函数写在Basic内,在HMI文件内通过系统设置或元件调用Basic函数,被调用的Basic函数必须是全局的SUB过程。

注意要运行的组态文件一定要设置好自动运行任务号。

图片

编程参考流程:

1.新建项目和HMI文件,HMI文件建立之后会弹出“HMI系统设置”窗口,设置分辨率、主界面窗口等基本信息;

2.根据需求新建窗口,设置窗口属性;

3.在各个窗口内添加组态元件,设置元件属性;窗口的调用可在元件动作中设置,可直接打开或关闭窗口,或调用Basic函数使用指令打开或关闭窗口;

4.需要调用Basic函数时在工程项目下新建Basic文件,将组态元件要调用的函数编写成全局的SUB函数。

5.程序编写完成文件自动运行任务号,下载到控制器或仿真器,连接触摸屏显示或在XPLC screen显示。

(一)新建HMI文件

首先建立工程项目之后,新建HMI文件,默认新建的HMI程序带三个不同风格的键盘窗口6、7、8和一个基本窗口10,默认这个10号窗口作为触摸屏的主界面,可更改默认主界面(参见下页HMI系统设置)。 

图片

调用软键盘窗口输入数据:

点击可输入数据的组态元件后,就能打开软键盘窗口,如下图,在软键盘窗口输入数值之后点击Enter保存即可变更数据。

图片

(二)HMI系统设置

在编辑组态程序之前,选择HMI文件,首先要打开菜单栏“编辑”→“HMI系统设置”打开如下窗口。

图片

根据组态程序要应用的示教盒的尺寸,设置好水平分辨率和垂直分辨率(如上节10号窗口方框大小)。选择起始基本窗口(即触摸屏显示的初始界面),初始化函数和周期函数选择Basic里编写好的GLOBAL全局定义的SUB子函数。

初始化程序HMI上电后运行一次,周期函数周期循环扫描。

图片

(三)组态窗口

组态显示必须以一个基本窗口为底窗口,作为其他窗口的背景画面,元件需要依附窗口显示,一个组态文件下可新建多个不同类型的窗口。

新建窗口:菜单栏“元件”“新建窗口”打开如下窗口,输入窗口号和窗口名称后确认,注意窗口号不要重复。

窗口的属性和尺寸位置等信息均需要打开窗口“属性”修改。

图片


组态视图能显示全部窗口和各窗口下的元件,元件在窗口上添加,窗口或元件的属性在“属性”窗口修改。


点击组态窗口或元件便能打开属性窗口。

图片

窗口类型包含五种:基本窗口(Base Window),软键盘窗口(Keyboard Window),弹出窗口(Pop Window)、菜单窗口(Menu Window)、置顶窗口(Top Window)。

1.基本窗口(Base Window):组态显示必须以一个基本窗口为底窗口。只能显示一个基本窗口。基本窗口通过程序或元件操作进行切换,不能关闭。

2.软键盘窗口(Keyboard Window):用于需要输入数值的情况,元件:值显示value,元件属性内选择软件盘窗口,新建的HMI文件内置有三种软键盘窗口可供选择。

3.弹出窗口(Pop Window):Pop窗口需要通过程序或元件操作关闭,Pop窗口打开后,Pop区域范围外的元件仍可以触发,在Pop窗口属性里设置垄断后,只能操作当前Pop窗口内的元件。切换基本窗口后Pop/Menu窗口关闭

4.菜单窗口(Menu Window):Menu窗口属于Pop窗口,都是调用后弹出。不同之处是Menu窗口弹出后,获得操作权限,此时只能对Menu窗口进行操作。当点击到非Menu窗口区域时,Menu窗口将关闭。

5.置顶窗口(Top Window):总是在最前端显示的窗口,一般为一个小窗口,可以用来实现工具条等。切换基本窗口时,Top窗口仍会显示在最前端,不会关闭。

窗口打开或关闭的方法

1.功能键BUTTON调用Basic程序,在程序内编写HMI_SHOWWINDOW显示窗口,HMI_BASEWINDOW显示基本窗口,HMI_CLOSEWINDOW()关闭窗口,基本窗口不支持关闭。

图片图片


2.功能键属性-动作选择关闭或显示窗口。


选择“元件”→“位元件”→“功能键”,新建一个功能键按钮,打开元件的属性窗口,找到“动作”下拉列表。

图片

可以选择打开3种窗口类型base/top/pop,其中menu窗口属于Pop Window类型。

图片


选择Close可关闭当前窗口或关闭窗口号。


图片

(四)添加组态元件

HMI编程所需的窗口和元件在菜单栏“元件”里选择。窗口和各元件的详细使用说明参见HMI编程手册。

图片


在“元件”菜单栏添加元件后,将元件放置于组态窗口尺寸范围内,打开元件属性设置元件相关参数,如下图,拖拽元件选择放置的位置,或在属性的尺寸和位置栏设置。


图片


不同的元件属性会有差异,但也有共性,一般需要调用Basic函数执行的场合选择“功能键Button”,需要控制寄存器状态时选择“位元件”或“字元件”,显示文本使用“字符显示”,使用“值显示”元件调用软键盘窗口用于在触摸屏上输入数值。


图片


1.元件通用属性

属性

功能

说明

元件编号

/

/

元件名称

/

/

显示层次

选择元件显示层次

TopLayer:表层,显示在最外层,覆盖底下控件

MidLayer:中间层

BottomLayer:底层(默认)

有效显示

选择元件是否显示

默认True,选择False时,元件不显示且无功能作用

采用有效控制

通过寄存器控制元件是否显示

默认False,选择Ture通过寄存器控制元件是否显示

设备编号

设备编号

默认local

寄存器类型

选择寄存器类型

多种寄存器下拉列表选择

寄存器编号

选择寄存器编号

寄存器值为0时不显示,非0时使用

是否图片化

控件变为图片的形式

默认False

文本库

文本库的名称

不设置文本库显示格式文本

格式文本0/1

打开格式文本设置控件要显示的文本

默认显示文本0,按下时显示文本1

点击调用函数

按键按下时调用函数

下拉框选择可以调用的函数名

水平位置

元件的水平起始位置

不要超出水平分辨率

垂直位置

元件的垂直起始位置

不要超出垂直分辨率

宽度

元件的宽度

/

高度

元件的高度

/


2.寄存器

大部分的元件都包含“寄存器类型”这一属性,用来与各类寄存器建立数据联系,寄存器可选系统自带的寄存器或自定义变量、数组。

如下图,位状态切换元件按下将位寄存器M10的值置1,同时显示格式文本0;松开M10置0,同时显示格式文本1。

图片

3.动作

通过动作下拉列表,不同的元件可选择的动作有所差异,常见可选打开或关闭窗口、调用Basic的全局SUB函数等,默认按下生效。

如下图,功能键的动作选择调用函数,函数选择onrun()。

图片



04
组态示例程序



此例程为单轴运动例程,包含两个文件,Basic的程序由HMI调用执行。

图片


HMI组态界面:


先选择要运动的轴号,X轴或Y轴,不选择轴号无法运动,再选择运动方向和运动模式,若选择运动模式为寸动,还需要设置寸动距离。

上方的基本轴参数可自定义设置或采用默认值,调用软键盘窗口自定义输入值,以上设置完成后,可点击运动让轴运动起来,运行的速度SPEED和轴位置DPOS分被获取到值显示元件1和2动态显示。

按下停止按钮立即停止当前运动,按下位置清零按钮清零DPOS。

图片


Basic程序界面:


图片


Basic程序:

global sub main_int()  'HMI初始化函数

  global  str(20)      '轴状态,值显示元件11调用

  str="未选择"         '值显示元件11显示内容:未选择

  global  state(20)    '运行状态

  state="停止"

  global  axisnum    '轴选择

  axisnum=0          '1 X轴,2 Y轴....

  intaxis()          '初始化轴参数,默认值

  dpos=0

  units = table(0)   'HMI界面手动设置值,保存在table

  lspeed = table(1)

  speed = table(2)

  accel = table(3)

  decel = table(4)

  sramp = table(5)

  table(10)=0          '当前位置,值显示元件1调用  

  table(11)=0          '当前速度,值显示元件2调用  

  table(15)=0          '寸动距离,值显示元件28调用  

  RAPIDSTOP(2)

end sub

global sub main_scan()  'HMI周期函数

  slcaxis()             '选择轴

  if idle=-1 then      '只有在停止状态,轴参数才生效

    setaxis()

  endif

  table(10)=DPOS        '动态获取显示

  table(11)=MSPEED

  if idle=-1 then

    state="停止"      

  endif

end sub

sub intaxis()          '轴参数初始化  

  table(0)=10          'units  脉冲当量

  table(1)=10          'lspeed 起始速度

  table(2)=100         'speed  运行速度

  table(3)=1000        'accel  加速度

  table(4)=1000        'decel  减速度

  table(5)=10          'sramp  s曲线时间

end sub

sub setaxis()           '轴参数设置

  units = table(0)

  lspeed = table(1)

  speed = table(2)

  accel = table(3)

  decel = table(4)

  sramp = table(5)

end sub

global sub slcaxis()       '轴选择函数

  if MODBUS_BIT(0)=1 then  'modbus_bit(0)对应hmi界面的X轴选择按钮

    cancel(2) axis(1)      '更换选择的轴时,停止Y轴axis1的运动   

    str="X轴"                 '显示内容为:X轴

    axisnum=1

    base(0)                    '选定X轴

  elseif MODBUS_BIT(1)=1 then  'modbus_bit(1)对应hmi界面的Y轴选择按钮

    cancel(2) axis(0)          '更换选择的轴时,停止X轴Axis0的运动    

    str="Y轴"                  '显示内容为:Y轴

    axisnum=2

    base(1)                    '选定Y轴

  endif  

end sub

global sub onrun()               '运动功能键调用

  if axisnum=0 then

    return                        'axisnum=0未选择轴号

  elseif MODBUS_BIT(20)=0 then    'modbus_bit(20)对应hmi界面的运动模式按钮,等于0为持续     

    if MODBUS_BIT(10)=0 then      'modbus_bit(10)对应hmi界面的方向选择按钮  

      vmove(1)

    elseif MODBUS_BIT(10)=1 then

      VMOVE(-1)

    endif    

  elseif MODBUS_BIT(20)=1 then       '运动模式,等于1为寸动

    move(table(15))                  '寸动距离,值显示元件28

  endif  

  if idle=0 then

    state="运动"

  endif

end sub

global sub onstop()     '停止功能键调用

  state="停止"

  RAPIDSTOP(2)

end sub

global sub clear_dpos()  '位置清零功能键调用

  dpos=0  

end sub

《快速入门|篇二十一:正运动技术运动控制器ZHMI组态编程简介一》就讲到这里。更多学习视频及图文详解请关注我们的公众号“正运动小助手”。

本文由正运动技术原创,欢迎大家转载,共同学习,一起提高中国智能制造水平。文章版权归正运动技术所有,如有转载请注明文章来源。

关键词:控制器触摸屏
全年征稿/资讯合作 联系邮箱:1271141964@qq.com
  • 凡本网注明"来源:智能制造网"的所有作品,版权均属于智能制造网,转载请必须注明智能制造网,https://www.gkzhan.com。违反者本网将追究相关法律责任。
  • 企业发布的公司新闻、技术文章、资料下载等内容,如涉及侵权、违规遭投诉的,一律由发布企业自行承担责任,本网有权删除内容并追溯责任。
  • 本网转载并注明自其它来源的作品,目的在于传递更多信息,并不代表本网赞同其观点或证实其内容的真实性,不承担此类作品侵权行为的直接责任及连带责任。其他媒体、网站或个人从本网转载时,必须保留本网注明的作品来源,并自负版权等法律责任。
  • 如涉及作品内容、版权等问题,请在作品发表之日起一周内与本网联系,否则视为放弃相关权利。


编辑精选

更多


宣传样本推荐图书

旗下子站

工控网机器人仪器仪表物联网3D打印工业软件金属加工机械包装机械印刷机械农业机械食品加工设备制药设备仓储物流环保设备造纸机械工程机械纺织机械化工设备电子加工设备水泥设备海洋水利装备矿冶设备新能源设备服装机械印染机械制鞋机械玻璃机械陶瓷设备橡塑设备船舶设备电子元器件电气设备



关于我们|本站服务|会员服务|企业建站|旗下网站|友情链接| 兴旺通| 产品分类浏览|产品sitemap

智能制造网 - 工业4.0时代智能制造领域“互联网+”服务平台

Copyright gkzhan.comAll Rights Reserved法律顾问:浙江天册律师事务所 贾熙明律师

客服热线:0571-87756395加盟热线:0571-87759904媒体合作:0571-89719789

客服部:编辑部:展会合作:市场部:

关闭