这一篇学习笔记我在新浪博客记录过,地址是Citect2018R2使用报警页面功能做操作记录1_来自金沙江的小鱼_新浪博客 (sina.com.cn)
这两天练习了做报警页面,稍微扩展一下,可以做操作记录功能。
使用unity v13.1新建一个项目,简单配置一下硬件,新建变量:
新建程序段
这个练习主要是上位机功能,PLC程序不严密,仅作配合作用。
在citect2018R2新建一个项目程序,使用通讯想到连接PLC模拟器。 新建变量表如下:
定义四种字体
定义两种报警分类4和5
报警摘要格式为
{DATE,12}^t{TIME,10}^t{TAG,20}^t{NAME,20}^t{SumState,10}^t{Type,14} 以此为日期、时间、报警标签、报警名称、状态、是否确认。 新建报警变量,其中Alarm1至Alarm32为类别5,按钮为类别4
新建一个页面“泵操作页面”用于操作水泵,放置几个按钮用于两个泵的启动停止操作以及页面跳转。
泵操作按钮当鼠标按下时,对应泵动作变量为1,鼠标松开时,泵动作按钮对应变量为0
新建一个cicode函数,用于报警过滤
FUNCTION MyAlarmFilter(INT myAN,STRING class) INT grp1=GrpOpen("AlarmFilter1",1) StrToGrp(grp1,class) AlarmSetInfo(myAN,2,class) GrpClose(grp1) END 新建一个页面,名字叫做“报警记录”,最终通过上面的页面按钮弹出这个页面。而面上放置20个cicode控件和6个静态文本,两个按钮,用于翻页,第1个cicode编号是10
第1个cicode控件的函数是
AlarmDsp(10,20,10); 表示从编号为10的控件开始连续20个显示报警信息。 “报警记录”页面的事件“在页面显示时”调用这个函数 MyAlarmFilter(10,5) 表示从编号为10的cicode控件开始,只显示分类为5的报警信息(只显示报警,不显示按钮操作记录) “泵操作画面”的“查看报警记录”按钮的鼠标点击事件写下面的脚本 PagePopUp("报警记录"); WinPos(340,40); 表示弹出画面,弹出的画面左上角位置在340,40 新建一个页面,叫做“操作记录”页面,同样放置20个cicode控件和6个静态文本。
第1个cicode脚本为
AlarmDsp(10,20,10); 每一个cicode控件的LBUTTON_UP事件脚本为 AlarmAck(0,0); 表示报警确认 该页面的“在页面显示时”事件调用这个函数 MyAlarmFilter(10,4) 表示从编号为10的cicode控件开始,只显示分类为4的报警标签。 “上一页”按钮的鼠标点击事件脚本为 AlarmDspPrev(10); “下一页”按钮鼠标点击事件脚本为 AlarmDspNext(10); 在“泵操作画面”的“查看操作记录”按钮的鼠标点击事件写下面的脚本 PagePopUp("操作记录"); WinPos(340,40); 表示弹出画面“操作记录”,左上角位置是340,40 运行一下计算机设置向导,将“泵操作页面”设置为起始画面。 保存、编译、运行。 点击几下泵操作按钮,在操作记录可以看到,在PLC模拟器触发报警,在报警记录画面可以看到报警记录。在操作记录里面可以看到操作记录。
操作记录初步练习就做到这里。我把例子放进了我的百度网盘,地址是
链接:https://pan.baidu.com/s/1xI2FPvZFQcbG9rgJMO5W_A 提取码:1234标签:Citect2018R2,记录,报警,按钮,操作,页面,10 From: https://www.cnblogs.com/fishingsriver/p/17402957.html