西门子PCS 7 如何根据用户需求定义导航区按钮

内容介绍工控人加入PLC工业自动化精英社群

PCS 7 系统 的一大优势在于可以根据SIMATIC Manager中的工厂层级自动创建OS的画面树结构并根据画面树生成区域按钮。

图1 -- 区域按钮示例

对于画面树和导航区按钮,PCS 7的新朋友可能会有如下的疑问:如何从指定的层级创建画面树?如何自定义区域按钮的排序?如何修改区域按钮的数量和排列?是否可以自定义画面树?OS编译中如何不覆盖手动创建的画面树结构?接下来我们围绕上述可能遇到的问题逐一展开解释。

02

如何从指定的层级生成画面树

实际项目的工厂层级通常基于ISA-88或ISA106标准创建不同的层级深度,这样就会面临生成画面树时根据哪个层级创建OS的画面树。

如下图所示,PCS 7 项目中包含若干层的深度,想要从指定层级深度(该示例中以第二级为例)生成画面树(即对应导航区按钮):

图2 -- 工厂视图

设置步骤如下:

图3 -- 工厂层级设置

图4 指定OS区域对于的工厂层级深度

最终实现效果如图:

图5 -- 区域按钮效果

03

如何指定区域按钮排序

细心的小伙伴应该一眼就看到图1和图5的区别在于区域按钮的排序不同,图1是我们最终想要实现的效果,而图5则是根据工厂层级默认生成的排序。想要正确达到图1效果的方式有如下几种方式:

方法1:

OS项目的工厂视图下要创建区域按钮的任一层级点击"右键"→选择"对象属性":

图6 -- 层级对象属性

切换到"控制和监视属性"→点击" 定制"→在弹出窗口根据实际需求调整排序:

图7 -- 设置画面顺序方式1

调整好顺序之后依次点击确定关闭窗口。

方法2:

另外一种方式可以使用POV(过程对象视图)中的层级文件夹选项栏设置画面排序。如下图所示,左侧选择要创建画面树的上一级层级文件夹,右侧切换到层级文件夹选项栏,然后在"画面顺序"列的下拉框中选择正确的顺序即可。

图8 -- 设置画面顺序方式2

通过上述两种方式的设置之后执行OS编译(需激活画面树),编译完成之后画面树自动修正为指定的顺序如下图所示:

图9 -- 画面树排序

OS项目编辑器中区域选项栏的排序同样跟随画面树的改变而改变(注:PCS 7 V9.0及之前的版本会自动跟随画面树而改变,PCS 7 V9.1亚洲版中此处可能不跟随画面树改变,此时需要手动调整):

图10 -- OS项目编辑器区域排序

方法3:

如果未通过工厂层级自动生成画面树,则可通过在画面树中设置正确的顺序即可,另外检查OS项目编辑中的区域是否按照画面树的相同顺序而改变。

04

如何指定区域按钮的数量

如图1所示,假设项目最终只包含4个画面区域需要切换,为了达到最佳的显示效果可设置区域按钮的数量,比如修改为2*2(即两行两列)的区域按钮布局。

图 11 -- 按钮区数量修改 图 11 -- 按钮区数量修改

设置方法如下:

打开OS项目编辑器,在"布局"选项栏点击"详细"按钮,弹窗窗口中设置区域按键数的水平和垂直数目(水平对应行数,垂直对应列数)。当然,还有更简单的方式直接点击"建议",系统自动根据画面树调整区域按键数。

图12 -- 区域按键数设置

05

如何定制区域按钮名称

通常情况下建议PCS 7的工厂层级采用英文名称,而区域按钮的名称通常根据用户需求需要显示中文名称。当然直接设置工厂层级为中文名称亦可实现区域按钮的中文显示,此时可能不满足工厂层级的英文名称建议。PCS 7 也充分考虑了此种需求,既可以保证层级采用英文同时区域按钮显示中文的需求。

如下图所示,对于层级文件夹的对象属性,切换到"控制和监视属性",在OS区域ID(A)中设置需要显示的中文名称即可。此处之所以在AS的层级文件夹中设置中文名称,是因为该项目OS的层级文件夹是AS层级文件夹同步创建的快捷方式,实际项目中设置对应的源层级文件夹即可。

上图中"在重命名层级文件夹时不做修改"复选框的含义为当修改层级文件夹名称时,OS区域ID(A)是否会自动跟随改变。

通过上述方式即可实现英文层级和中文区域按钮的效果。如下图所示,层级名称为英文,但是通过设置OS区域ID(A)为对应的中文名称,OS项目中的快捷文件夹的"OS区域ID(A)"自动跟随源层级文件夹的设置更改为中文名称。

图14 -- OS区域ID(A)和排序

执行OS编译后画面树和OS项目编辑器中的区域自动修改为中文名称,实际运行效果如下图所示:

图15 -- 区域按钮中文显示效果

06

如何指定义画面树

在一些项目中根据工厂层级所创建的画面树可能不能满足客户需求,而是希望能够像WinCC项目一样自己定义区域按钮。当然也包括单纯的WinCC项目不包含工厂层级想要实现和PCS 7一样的布局和区域按钮。通过自定义画面树的功能亦可轻松满足上述需求。

如下图所示,打开画面树管理器,左侧选择画面层级,右侧选择对应的画面则会自动创建容器并为容器分配画面。当然也可以手动创建容器,然后手动为容器分配画面。

图16 -- 自定义画面树

对于区域按钮的排序也可以直接在画面树中选择对应的容器,右键快捷菜单中通过上移和下移调整排序。

图17 -- 画面树排序

其中右移用于将某个层级移动到相邻上一层级的下级,作为下拉菜单。如上图所示,Help如果点击右移,则会移动到Presentation的下级。对于位于下级的容器,可以通过点击左移,移出子层级,和上一层级并列。

画面树创建完毕后点击保存,即可自动更新OS项目编辑器中对应的区域,打开OS项目编辑器可以进行验证(对于PCS 7 V9.1以上的亚洲版,目前排序可能与画面树不一致,此时需要手动调整)。
工控人加入PLC工业自动化精英社群

相关推荐
Hera_Yc.H7 小时前
数据结构之一:复杂度
数据结构
肥猪猪爸9 小时前
使用卡尔曼滤波器估计pybullet中的机器人位置
数据结构·人工智能·python·算法·机器人·卡尔曼滤波·pybullet
linux_carlos9 小时前
环形缓冲区
数据结构
readmancynn9 小时前
二分基本实现
数据结构·算法
Bucai_不才9 小时前
【数据结构】树——链式存储二叉树的基础
数据结构·二叉树
盼海9 小时前
排序算法(四)--快速排序
数据结构·算法·排序算法
一直学习永不止步9 小时前
LeetCode题练习与总结:最长回文串--409
java·数据结构·算法·leetcode·字符串·贪心·哈希表
珹洺10 小时前
C语言数据结构——详细讲解 双链表
c语言·开发语言·网络·数据结构·c++·算法·leetcode
几窗花鸢10 小时前
力扣面试经典 150(下)
数据结构·c++·算法·leetcode
.Cnn11 小时前
用邻接矩阵实现图的深度优先遍历
c语言·数据结构·算法·深度优先·图论