搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

PCS7是西门子DCS,软件运行时,上面导航栏、项目名称、公司logo、报警控件,组确认,下面工具按钮,中间工业画面,看着比较舒服,其实在单Wincc的环境下,也可以做出那样的运行效果,本文就介绍如何在Wincc软件上实现。

 

一 设计规划

   假设有一个工厂有三个生产车间(生产车间一、生产车间二、生产车间三),每个生产车间由一副工艺画面描绘。我们希望点击导航栏可以切换不同的生产车间工艺画面,每个生产车间有三个模拟量报警和三个数字量报警,“组确认”按钮可以显示哪个车间有工艺参数报警,点击按钮可以确认报警。

1. 生产车间一

模拟量报警:A11、A12、A13   数字量报警 B11、B12、B13

2. 生产车间二

模拟量报警:A21、A22、A23  数字量报警 B21、B22、B23

3. 生产车间三

模拟量报警:A31、A32、A33 数字量报警 B31、B32、B33

 

二 画面制作

1. 在Wincc上新建三个画面,名字分别为Workshop1、Workshop2、Workshop3。打开画面宿管理器,在*容器下建立三个一级容器,名字分别为“一车间”、“二车间”、“三车间”,分别关联三个画面,如图所示:

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

设置完成后保存退出。

2.打开OS项目编辑器,找到“消息显示”选项卡,勾选 下面的“创建/更新组显示”,其他设置默认即可,有兴趣的可以自己琢磨一下每个设置项目是什么意思。点击确认按钮后,系统自动的重新规划页面布局,会有一段时间等待。等待完成后我们再次点击图形编辑器会发生系统自动生成了很多页面,都是@开头的。我们右键查看计算机属性也会发现系统自动修改了一些设置,启动画面也变成了@SCREEN.PDL。

3. 这个时候我们可以运行一下,初步效果出来了,页面有了PCS7风格,点击导航栏可以切换到不同的画面。

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

由于只是举例子,我并没有实际画工艺画面,所以画面显得有点单调。

 4. 接下来测试一下报警功能。打开wincc变量管理,会发现多出不少内部变量,这些内部变量的作用参考系统手册。新建三个32位无符号数变量Workshop1Alarm、Workshop2Alarm、Workshop3Alarm。

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

5. 打开报警记录,我们也会发现这个与以前wincc项目打开时报警记录不一样,多出很多消息类型。新建三个消息组:一车间、二车间、三车间。这三个消息组的状态变量分别连接Workshop1Alarm、Workshop2Alarm、Workshop3Alarm。

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

6. 在模拟消息中将前面的9个32位浮点数分别在“限制值”设置上限报警和下限报警,在“消息”页面消息组设置属于哪个车间的报警。

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

还可以设置消息文本等信息,不是此文重点,就不介绍了。

 

7. 因为这个演示没有实际连接PLC,在wincc页面上使用slider和按钮来模拟现场数值变化。以车间一页面为例如下:

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

三幅画面完成后保存,重新运行项目程序,切换到生产车间一,拖动滑块或者置位bool变量触发报警,可以看到页面上端的报警控件已经显示有报警了,但是导航栏旁边的组确认还是没有反应,这个和PCS7运行时不一样。

搬家第三天-46.Wincc V7.3模拟PCS7运行界面风格

这样显然是不能满许需求的。

 

打开@AreaButton.pdl页面,可以看到顶部的组确认按钮都在这个页面中,找到组确认控件@CSIGArea1,在其属性中我们可以看到消息类型是“位31 报警上限”,分配属性组中几个按钮的消息类型代码和Wincc项目管理器报警记录里面消息类型、代码完全不一致,而且无论修改@CSIGArea1消息类型代码,还是修改报警记录中消息类型代码,均无法使二者做到一致。这里@CSIGArea1消息类型是和真正PCS7中消息类型一致,不能直接使用系统生成的组确认控件,因此只能重新制作。

 

8. 组确认控件制作。通过测试可以知道,当一个消息组中报警任到来一个,那么相应的状态变量的0位就会置1,同时16位置1,如果报警消除,那么0位复位,只有报警控件上组确认按钮按下,16位才会复位(会另外写一篇博客介绍如何“发现”这个“规律”)。画一个矩形,覆盖@CSIGArea1位置,设置全局颜色为否,闪烁开关绑定workshop1alarm的0位,这样当生产车间1有变量发生报警时,导航栏旁的矩形就会闪烁。如果报警没有自己消除,那么即使切换到其他工艺画面,原导航栏旁边的矩形还是会闪烁。其他车间“组确认”功能按照这个思路制作即可。

 

这个功能知道怎么实现后,其实可以对消息组做细分的,比如在原来的一车间下面再建立二级分组“报警”、“警告”等等并结合相应的状态变量(32位无符号数),然后把变量报警划给细分的消息组类别,导航栏旁也可以按类别报警,还可以设置鼠标点击确认功能,这里就不再详细介绍了。

 

三 功能扩展

1. 替换公司标志。默认的公司标志是西门子wincc,如果希望展示自家公司logo,那么可以打开@Logo.pdl进行编辑,注意替换掉的logo大小不要超出原有大小,以免排版不好看。

2. 初始页面编辑。初始页面默认只有一个siemens wincc的logo,可以利用这个页面做一下工厂介绍或者项目介绍,页面是@Welcome.pdl,下面那个什么版权所有的,默认不会显示,可以删掉,哪个西门子logo也可以删掉,然后页面上写上自己的话就行了。

 

上一篇:牛客挑战赛46 D


下一篇:46. 全排列——回溯算法