IT世界的工程师真的是一个很辛苦的职业,网上流传着他们的逼疯的故事—频繁变更的需求、架构的调整,甚至推倒重来,难道自动化行业就没有这样的事情吗?
大家都认为IT的程序结构复杂,自动化行业主要是顺序逻辑控制,结构肯定没有那么复杂---如果你这么想,大概是说的20年前的可编程“逻辑”控制器的年代,现在的机器哪里只有逻辑那么简单,运动控制、总线、HMI、安全、液压、行业工艺算法……。
今天就说一个“简单点”的事情—HMI的画面编辑。
看上去你把很牛的算法都写完了,也把运动控制功能调通了,温度的PID也自整定了—可是,对于HMI的开发而言,你还有很多需要面对的痛苦:
(1)经常变更的HMI设计—这是让程序员疯掉的事情。
(2)设计的显示控件总是被抱怨太丑,高大上的HMI就像别人家的孩子?
(3)程序变更就得改HMI的显示,但是,程序的确经常在改。
工程师有时候会抱怨,出差半天就为了去现场给客户改一下程序,花费半天把程序里的变量与HMI的显示关联起来。
据估算,为了实现User-Friendly的HMI设计,程序员需要在HMI画面上花费大约30%的时间,这本身也是一种巨大的浪费。
解决问题的思路—关注点分离(SoC)
软件工程中有非常重要的方法称为“关注点分离”,即SoC(Separation ofConcerns),通过SoC可以实现高内聚、低耦合的软件架构设计。对于面向服务的架构SoA而言,关注点分离是实现这一架构的重要途径。
由于PLC中运行的程序和产生的数据在HMI上访问是一种变量的绑定关系,因此,如果在HMI上的画面进行了修改,那么与之对应的程序也要进行调整,而另一方面,由于程序的变化导致了数据显示的问题,也必须在HMI上进行调整,包括显示的位置、单位、上下限的变化。
实现通道:OPC UA的应用
OPC UA就可以帮助我们实现应用程序与HMI显示的“关注点分离”,图2的架构让我们看到他们之间的关系:
由于OPC UA采用了统一标准的数据对象,包括对象所对应的结构与语义,比如:温度的数据和单位(摄氏度),而这些都可以被存储在OPC UA Server的地址空间里,这就像一个共享内存或者物理上的双口RAM,应用程序的数据可以被写入至这个共享区间,而OPC UA Client则通过Http方式来访问这个地址空间的数据。
这样就可以实现:
(1)程序中的数据变化进入共享区间,而HMI同时会更新数据而无需干预,因为HMI访问的是地址对应的参数。
(2)不同的HMI,如不同级别的用户(操作员、工程师、电气经理、总经理)通过IE、Andriod的浏览器可以访问同一个应用而无需开发不同的画面。
图1-通过OPC UA实现关注点分离的简图
如图1-原有的HMI与程序的绑定造成了无法分离,HMI与PLC程序修改必然会导致对方的修改,而采用图1右侧的架构则可以看出,无论程序和HMI怎么修改,都相互不影响,HMI仅访问标准格式下的数据对象,而对于程序而言,也仅需往OPC UA服务器的地址空间按标准写数据即可。
这样即实现了HMI数据访问与应用程序的脱离,双方仅需访问中间的共享区域即可。
OPC UA即扮演这样的角色。
mappVIEW
贝加莱的mappVIEW即按照“SoC”的思想所设计,mappVIEW的架构如下图
图2-mappVIEW的实现原理
如图2所示,mappVIEW是在PLC上集成OPC UA Server,然后由支持HTML5、Javascript、CSS的终端来访问,例如iPhone、iPAD、Andriod平台的智能手机,支持各种浏览器例如:IE、Google的Chrome、Apple的Safari等,包括Automation Panel、Power Panel T系列等贝加莱自主的HMI产品,均可访问控制器(PLC/PC均可)。
mappVIEW还提供众多的控件给用户使用
图3-mappVIEW也支持多点触摸的控件
图4-mappVIEW为不同的用户不同终端提供访问能力
HMI支持更多的媒体形式啦!
OPC UA支持Web Service使得通过OPC UA来访问的底层控制器上的数据类型也可以多种多样:
(1)PDF文件:对于满足FDA Gamp认证的的制药行业而言,不可篡改的PDF电子文档能够确保数据报表满足审计要求。当然,在线提供一个PDF文档作为帮助文件,对于今天基于Windows平台的Panel PC或PC已经不新鲜。
(2)动画:采用动画可以直观的反应设备的运行状态,可以提供更为简单易用的画面设计,让操作人员更为简单的理解机器的运营。
(3)视频:如果需要传播机器现场的视频,这也是可以的,当然,希望你用一个比较小的格式,免得网络带宽耗费太大。
图5-mappVIEW的画面设计
机器也可以有高大上的画面啦!
图6-报表功能就像IT世界的一样精美直观
易用性
提供直接登录互联网的技术方式
无需网络开发的专业知识,mappVIEW是自动化工程师有力直观的HMI开发工具
100%借力网络标准化,可以在任何输出设备上完美显示内容
所有GUI功能封装在功能块中,动动鼠标就能完成配置
内容和设计完全分开,最大成都满足客户的定制需求
机器控制器和HMI应用完全分开,可重复使用和修改HMI软件或单独GUI部件
降低维护费用,提高整体质量
mappVIEW举例:韩国Woojin的HMI画面设计
基于mappVIEW开发的韩国Woojin的注塑机HMI画面,采用了精致的基于Web风格的画面,并采用了OPC UA来访问控制器的模式,可以实现非常便利的画面适应力。