WWcW_PLCJS_COM-PLC-技.术_网
摘要:本文对运行时组态的概念、优点、实现方法、发展趋势做了阐述。WWW_PLC※JS_COM-PmLC-技.术_网
一.前言
——可——编——程——控-制-器-技——术——门——户
运行时组态是组态软件新近提出的新的概念。运行时组态是在运行环境下对已有工程进行修改,添加新的功能。它不同于在线组态,在线组态是在工程运行的同时,进入组态环境,在组态环境中对工程进行修改。而运行时组态是在运行环境中直接修改工程。运行时组态改变了已往必须进入复杂的组态环境修改工程应用的历史,给组态软件带来了新的活力,并预示着组态软件新的发展方向。WWW_PLCJS@_COM%-PLC-技.术_网
为了说明什么是运行时组态让我们先打个比方。我们可以将工程组态比作是建造房屋。房屋在建造前先设计好图纸,然后按照图纸进行施工,工程验收后房屋的大小、结构就固定下来了。交付住户使用后,住户自己是不能轻易改变房屋的结构(除非他本人就是建筑师且有合法手续),更不能扩展房屋的大小。如果对房屋进行改造,必须请建筑师设计,由建筑工人来施工。WWW_PLC※JS_COM-PmLC-技.术_网
传统的组态与之类似,工程组态好并交付用户使用后,工程中包括的功能就固定不变了。如果要扩充、修改工程的功能,就必须请熟悉该工程的组态工程师进入组态环境进行修改。——可——编——程——控-制-器-技——术——门——户
如果房屋建好后,用户能够根据自己的需要方便的改变房间的内部结构,或者扩大房屋的空间,那将是多么惬意的事。假如建造师将房间的墙壁做成可移动、可拉伸的,并且预留了制作墙壁、门窗等构造房屋所需的机器,你就自己就可以将平房变成楼房,将楼房加高。当然建筑师很难为你制作出这样的设备,但是组态软件却可以做到这些。WWcW_PLCJS_COM-PLC-技.术_网
组态工程师可以在构建工程后,有预见的设计出该工程的扩展工具。扩展工具用来生成扩展工程时所需的画面、画面中的构件、连接的硬件设备、新的测点等。扩展工具完全是跟该工程或该应用领域相关,工具一般只包含针对该应用的有限的几种部件,但是却能够满足该工程以后扩展。因为让技术人员(非组态工程师)掌握这些工具比掌握包罗万象的开发环境要容易得多,因此用户自己稍加指导就很容易完成工程的后期维护工作了。另外由于扩展工具只提供有限的功能,让用户犯错误的机会也就小多了。WWW_PLC※JS_COM-PLC-技.术_网(可编程控※制器技术门户)
二.运行时组态的优点
- 缩短工期。对于一具体工程项目,如果能将项目中用到的模式归纳出来,做成模板(该模板可以通过前面提到的扩展工具运行时生成),那么我们无须等到整个工程做完就可以将其投入运行了。即只要工程中需要的制作工具完成后,你就可以让最终用户在运行时自己增加功能了。让用户在运行环境中修改和完善,直至整个工程完成。该工作模式充分发挥了组态工程师和技术工人自身的优势,快速完成工程项目。因为组态工程师对组态软件熟悉,而技术工人对其应用熟悉,让他们分工做自己熟悉的事情,项目进度当然就快了。
WW.W_PLC※JS_C,OM-PL,C-技.术_网
WW.W_PLC※JS_C,OM-PL,C-技.术_网
- 解决了设备、画面不确定问题。有些工程本来就存在这样的需求。如在煤矿安全监测中,作业现场具有流动性,其监测的设备是经常变化的。这就要求组态软件中的测点和监视画面根据情况不断调整。我们不可能用常规的办法将各种情况事先穷举出来,也不可能每次改变都要求现场的技术人员进入复杂的开发环境进行修改。而现场应用模式比较稳定,这样我们就易于建造其运行时扩展工具。运行时组态对此是非常适用的。
- 动态生成、精简画面。已往动态场景的实现需要在组态环境中必须一一罗列,然后在画面元素中加入隐藏、显现动画,制作维护非常繁琐。在运行时这些元素不管用到与否都要为其分配空间,造成一定浪费。动态生成技术可以在需要时创建,不但使画面简化,同时也减小了系统开销。
- 精简组态环境。动态生成点、画面所使用的构件都是与当前应用相关的,无关的构件不会出现在运行时的“组态”环境中。运行时的“组态”是为具体应用量身制作的。相对于开发环境中的组态要单一得多,工厂的技术人员也很容易掌握。这即保证了最终应用程序的可扩展性,又保证了运行“组态”的简单性、方便性。
- 维护方便。传统意义的组态是在工程组态完成后,应用程序的功能已经固化好了。如果需要修改或增加新功能,还必须进入开发环境重新配置。这一般需要精通开发环境,并且熟悉该工程的工程师来完成。如果工程不是本单位完成的,还要涉及到升级改造,甚至另立项目的费用。动态生成可以保证系统有一定程度的扩展性,并且可以由工厂的一般技术人员来完成。
- 利于组态软件向行业化发展。行业工程师可以针对自己的行业需求,配置运行时所需构件,让普通技术人员使用,这就形成了三级应用模式。软件工程师集中精力开发灵活的手段,行业工程师致力于行业构件的构建,最终技术人员实现自己的应用逻辑。三级应用模式将大大加速组态软件行业化进程。
三.安全性问题。
P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
如果在运行时可以随便增加、修改、删除工程中的画面、画面中的元素、数据库中的点。这岂不是很危险吗?是的,确实很危险。如果没有保护措施,运行时生成就会带来很多的麻烦。我们可以通过以下两项安全措施来保护运行时的工程。WWW_P※LCJS_CO※M-PLC-技-.术_网
1.系统保护措施:
- 只有具有特定权限的用户才能进行运行时组态。
- 只有画面的创建者可以修改画面元素,其他用户无权修改。
- 特权用户可以在工程完善后,禁止运行组态功能。
2.设计时保护
WW.W_PLC※JS_C,OM-PL,C-技.术_网
由于运行时的工具是由组态工程师生成的,因此运行时组态的自由度完全由组态工程师掌握。这就要求组态工程师对运行时提供的手段要加以限制,不要提供过多的、不必要的灵活性,同时对修改对象提供必要的保护措施。例如提供了运行时组态点的工具,就有必要对已有的点进行保护,同时对用户添加的点的数量要进行限制。同样对于画面修改也是如此,不需要运行时修改的画面就不要设置“运行时编辑”权限。WWW_PLCJS_COM-PLC-技.术_网
总之,组态人员既要给用户提供扩展功能的手段,又要对其加以足够的限制,以保证系统安全运行。P.L.C.技.术.网——可编程控制器技术门户
四.运行时组态的实现
WW.W_PLCJS_COM-PLC-技.术_网
目前,无论是国内还是国外组态软件对运行时组态支持都很少,尤其是运行时添加设备、添加变量等各家组态软件基本没有提供任何支持。对于支持VBA脚本的组态软件,虽然可通过编写程序实现画面的动态生成,但是这毕竟是非可视化的手段。紫金桥监控组态软件在这方面做了初步尝试。下面以紫金桥监控组态软件为例说明运行时组态的实现方法。WWW_PLCJS※COM-PLC-技.术_网(可※编程控※制器技术门户)
运行时组态包括运行时数据库组态和运行时图形组态两部分,下面分别说明:WW.W_PLCJS_COM-PLC-技.术_网
WWW_PLCJS※COM-PLC-技×术_网(可编程控※制器技术门户)
运行时数据库组态包括:对下列内容动态增加、删除和修改:P_L_C_技_术_网——可——编——程——控-制-器-技——术——门——户
- I/O设备。
- 数据库点。
- I/O连接项,网络连接。
- 历史保存项。
WWW_PLCJS@_COM%-PLC-技.术_网
界面中脚本支持以上操作,并且修改完上述内容后数据库不需要重新启动,马上就能生效,并且不会影响已有数据库点的正常运行。WW.W_PLC※JS_C,OM-PL,C-技.术_网
一般的应用中只会涉及到有限的几种设备类型和几种点类型。对于每种设备或点类型我们要在画面中建立相应的窗口,该窗口用于对I/O设备或点进行维护。下面是一简单的点定义窗口:WW.W_PLCJS_COM-PLC-技.术_网