摘要:本文是我学习台达人机的个人总结,通过一个简单的实例,形象的描述了自动供水的过程。案例形式讨论了画面编辑、宏程序编写、配方操作、历史资料等。今天于初学者分享。望有兴趣的高手指点。
实例简介:在画面制作一个水箱,用一台水泵加水和一个阀门放水。由于硬件限制,本文利用计时虚拟了水箱水位及其它变量值。水箱容水位=$100、加水=$200、放水=$300。启动画面系统检测水箱水位,水位低于下限值$101,水泵启动自动抽水,当水位达到上限$102停止抽水。阀门可任意时刻放水,当水被放至水箱下限值,水泵自动启动,加水至水箱上限。……。
目录:学习过程由浅到深分两步进行。
熟悉软件、编辑画面、编写宏、离线模拟。
配方应用、报警、曲线图。了解系统控制区和系统状态区。
第一步
新建项目——监控画面:下载软件Screen Editor 1.05.75,安装、启动、新建。在新建对话匡里,新建项目名“HMI自动供水”,选择机型DOP-A75CSTD 256 Colors(7.5寸触摸屏),确定。新建项目窗口完成。在右侧列表头修改画面名称——监控画面,属性不用管它,画面背景颜色——选择自己喜爱的演色。我选(180,252,252)色。指定保存路径——保存。
编辑画面:在监控画面建立一个水罐(管状图2),设置读取寄存器地址=$100。上水管用2#管道,读取寄存器地址=$200。水泵要用其它绘图工具绘制三个BMP图片(见图1、2、3),导入图形库。方法:选项——图形库——新增图形库名1——导入图片。制作旋转的轮子模拟水泵运行。在画面建立“状态图显示”,地址=$200,从图形库调入图片,设置新增状态总数=3,自动变换图形=YES。放水管用1#管道,地址=$300。阀门可用静态绘图制作。安装一个开关模拟放水,建立保持型按钮,地址$300.0 。好了监控画面完成了,试试看画面状态会不会动?在画面建立3个设常数值按钮,分别将$200(管道值)设定为“0”“1”“2”。在建立1对“+”“-”值按钮,地址=$100 加减值范围=10 最大值=100(水罐$100最大默认值=100)。编译——离线模拟——点击按钮——怎么样?(监控画面见图4)。
管道特性:当管道地址值=1,管道显示正向流水。当值=2,管道显示反向流水。值=0停止。
状态图显示:地址=0 显示静态图形,地址=1 根据设置变换图形。
管状图2内水位随地址值变化。
宏的编辑:只有编写了宏它才能自动运行。首先看看宏的种类(见表宏的种类)。我们现在用程序Clock宏,呼叫子宏编辑。内容如下:
$102=90(水位上限=90)
$101=10(水位下限=10)
IF 1 == $200 THEN CALL 1 (如果水泵启动,呼叫子宏1)
IF 1 == $300 THEN CALL 3(如果阀门打开,呼叫子宏2)
IF $100 < $101 THEN GOTO LABEL 2(如果水位小于下水位,程序跳到标签2执行)
IF $100 > $102 THEN GOTO LABEL 3(如果水位大于上水位,程序跳到标签3执行)
GOTO LABEL 1(程序强制跳到标签1执行,跳过不执行程序)
LABEL 2(标签2)
SETB $200.0(锁定水泵,$200=1)
GOTO LABEL 1(程序强制跳到标签1执行,跳过不执行程序)
LABEL 3(标签3)
CLRB $200.0(解锁水泵,$200=0)
LABEL 1(标签1)
子宏1——水泵抽水量:
Delay(100)(系统延迟时间,100毫秒)
$100=$100+4(原值+4。水泵每100毫秒抽水单位=4)
$100 = $100 + $200(水箱水位=原水位在宏程序的每个扫描循环+水泵流量)
子宏2——阀门放水量:
Delay(100)(系统延迟时间,100毫秒)
$100 = $100 -1(原值-1。阀门每100毫秒放水单位=1。)
注:这里只是1个简单的说明,具体应用请参照手册,本人归纳宏的功能见表——宏的应用。(配方画面见图5)
第二步
系统控制区:系统控制区是一个以word为单位的连续资料区域,使用者可自行定义控制区寄存器的地址,来控制人机的动作模式。目前可定义最大长度是8 words,实际必须的长度是随着所使用到的功能由使用者来决定(例如,使用配方功能时,长度最少须为7 words )。长度设为0 即关闭系统控制区功能。若是系统控制区开启,人机将藉由快速不断的读取此区
设置系统控制区:起始地址Dn,长度大于7,配方控制区地址Dn+5。
当,Dn+5=2 配方由PLC上传HMI。例如:$5.1=1
当,Dn+5=4 配方由HMI下载PLC。例如:$5.2=1
系统状态区:设计的目的是提供使用者藉由【状态区】来得知人机目前的动作模式。使用者可由此区域,判断人机目前已完成的控制。系统状态区是一个以word 为单位的连续资料区域,使用者可自行定义状态区的寄存器地址,目前的长度固定是8 words。系统控制区若关闭,系统状态区功能也随之关闭。特别要注意的是,系统控制区与系统状态区的地址不可設定為相同地址。
配方:在项目点击“新画面”建立“配方画面”。增加画面切换按钮。点击“选项”——“设定模组参数”。设定系统控制区地址=DO、长度=7、动作完成清除旗标、确定。在点击“工具”——“配方”。启动配方功能、设定配方地址=$101、长度=2、组数=2、输入(填写配方值)、确定。这时,水位上下限值可以从配方功能调入。进入宏,将头两句删除($101=10、$102=90)。(配方画面见图5)
填写配方值对应配方寄存器值如下:
1#配方组值:RCP2=10 RCP3=90
2#配方组值:RCP4=15 RCP5=95
当配方组数RCPNO=1时,当前配方值:RCP0=10 RCP1=90
当配方组数RCPNO=2时,当前配方值:RCP0=15 RCP1=95
报警设定:点击“选项”——“报警设定”。报警设定、读取地址=$200(水泵运行报警)、确定。建立历史报警表,设置属性。这时水泵运行就有提示(报警)。
曲线图:新建一个曲线图画面。通过曲线图观察水位变化,就要启动历史缓冲区。选项——历史缓冲区设定,增加。地址=$100、数值单位=10、取样周期=1000ms、点数=10、记录时间、确定。在画面建立历史趋势图和历史数值资料表。设定值中,历史缓冲区编号=1(与增加的$100地址记录对应)先使用默认值运行一下,不满意再根据个人喜好修改。(曲线图画面见图6)。
本项目编辑也只是走了一下过程,有好多东西我说不清,无法细谈。对照手册边学边做。多动手才能进一步的熟悉人机。
QQ:360833566
配方功能也很简单。实际上就是把配方寄存器里的数据按设定顺序复制出来(下载)或写进去(上传)。
1、启动系统控制区:设定系统控制区地址,可以任意设,例如我用$0做控制区起始地址,那么$5就是配方控制区地址。$5=2 上传,$5=4下载。手册里有详细说明。
2、启动配方:配方寄存器地址是RCP以0开始。设定长度和组数决定RCP的位置。例如:长度=2、组数=2,那么RCP0 RCP1是将要上传或下载的寄存器值。RCP2和RCP3是第一组(RCPON=1,RCP0 =RCP2、RCP1=RCP3)。RCP4和RCP5是第二组(RCPON=2,RCP0 =RCP4、RCP1=RCP5)。