服务热线:
您当前的位置:首页 > 世纪星月刊 > 第2期 (2011年2月)

【专题 技术】未来组态新方式——运行时组态

2011/9/30 13:34:36

 

作者:研发部 周明锋



 

摘要:本文对运行时组态的概念、优点、实现方法、发展趋势做了阐述。

 

关键词:组态软件、运行时组态、在线组态、I O 设备。

  

1 前言

  

  运行时组态是在运行环境下对已有工程进行修改,添 加新的功能。它不同于在线组态,在线组态是在工程运 行的同时,进入组态环境,在组态环境中对工程进行修 改。而运行时组态是在运行环境中直接修改工程。运行 时组态改变了已往必须进入复杂的组态环境修改工程应用 的历史,给组态软件带来了新的活力,并预示着组态软 件新的发展方向。

   打个比方,我们可以将工程组态比作是建造房屋。 房屋在建造前先设计好图纸,然后按照图纸进行施工, 工程验收后房屋的大小、结构就固定下来了。交付住户 使用后,住户自己是不能轻易改变房屋的结构(除非他 本人就是建筑师且有合法手续),更不能扩展房屋的大 小。如果对房屋进行改造,必须请建筑师设计,由建筑 工人来施工。

  传统的组态与之类似,工程组态好并交付用户使用 后,工程中包括的功能就固定不变了。如果要扩充、修 改工程的功能,就必须请熟悉该工程的组态工程师进入组 态环境进行修改。

  如果房屋建好后,用户能够根据自己的需要方便的改 变房间的内部结构,或者扩大房屋的空间,那将是多么 惬意的事。假如建造师将房间的墙壁做成可移动、可拉 伸的,并且预留了制作墙壁、门窗等构造房屋所需的机 器,你就自己就可以将平房变成楼房,将楼房加高。当 然建筑师很难为你制作出这样的设备,但是组态软件却可 以做到这些。

  组态工程师可以在构建工程后,有预见的设计出该工 程的扩展工具。扩展工具用来生成扩展工程时所需的画 面、画面中的构件、连接的硬件设备、新的测点等。扩 展工具完全是跟该工程或该应用领域相关,工具一般只包 含针对该应用的有限的几种部件,但是却能够满足该工程 以后扩展。因为让技术人员(非组态工程师)掌握这些 工具比掌握包罗万象的开发环境要容易得多,因此用户自 己稍加指导就很容易完成工程的后期维护工作了。另外由 于扩展工具只提供有限的功能,让用户犯错误的机会也就 小多了。

  

2 运行时组态的优点

 

  2.1 缩短工期 

  对于一具体工程项目,如果能将项目中用到的模式归 纳出来,做成模板(该模板可以通过前面提到的扩展工 具运行时生成),那么我们无须等到整个工程做完就可以 将其投入运行了。即只要工程中需要的制作工具完成后, 你就可以让最终用户在运行时自己增加功能了。让用户在 运行环境中修改和完善,直至整个工程完成。该工作模 式充分发挥了组态工程师和技术工人自身的优势,快速完 成工程项目。因为组态工程师对组态软件熟悉,而技术 工人对其应用熟悉,让他们分工做自己熟悉的事情,项 目进度当然就快了。

  2.2解决了设备

  画面不确定问题 有些工程本来就存在这样的需求。如在煤矿安全监测 中,作业现场具有流动性,其监测的设备是经常变化 的。这就要求组态软件中的测点和监视画面根据情况不断 调整。我们不可能用常规的办法将各种情况事先穷举出 来,也不可能每次改变都要求现场的技术人员进入复杂的 开发环境进行修改。而现场应用模式比较稳定,这样我 们就易于建造其运行时扩展工具。运行时组态对此是非常 适用的。

  2.3动态生成、精简画面

   已往动态场景的实现需要在组态环境中必须一一罗 列,然后在画面元素中加入隐藏、显现动画,制作维护 非常繁琐。在运行时这些元素不管用到与否都要为其分配 空间,造成一定浪费。动态生成技术可以在需要时创 建,不但使画面简化,同时也减小了系统开销。

  2.4 精简组态环境

   动态生成点、画面所使用的构件都是与当前应用相关 的,无关的构件不会出现在运行时的“组态”环境中。 运行时的“组态”是为具体应用量身制作的。相对于开 发环境中的组态要单一得多,工厂的技术人员也很容易掌 握。这即保证了最终应用程序的可扩展性,又保证了运 行“组态”的简单性、方便性。

  2.5 维护方便

   传统意义的组态是在工程组态完成后,应用程序的功 能已经固化好了。如果需要修改或增加新功能,还必须 进入开发环境重新配置。这一般需要精通开发环境,并 且熟悉该工程的工程师来完成。如果工程不是本单位完成 的,还要涉及到升级改造,甚至另立项目的费用。动态 生成可以保证系统有一定程度的扩展性,并且可以由工厂 的一般技术人员来完成。

  2.6 利于组态软件向行业化发展

   行业工程师可以针对自己的行业需求,配置运行时所 需构件,让普通技术人员使用,这就形成了三级应用模 式。软件工程师集中精力开发灵活的手段,行业工程师 致力于行业构件的构建,最终技术人员实现自己的应用逻 辑。三级应用模式将大大加速组态软件行业化进程。

  

3 安全性问题

 

  如果在运行时可以随便增加、修改、删除工程中的 画面、画面中的元素、数据库中的点。这岂不是很危险吗?是的,确实很危险。如果没有保护措施,运行时生 成就会带来很多的麻烦。我们可以通过以下两项安全措施 来保护运行时的工程。

  3.1 系统保护措施

  * 只有具有特定权限的用户才能进行运行时组态。 * 只有画面的创建者可以修改画面元素,其他用户无 权修改。 * 特权用户可以在工程完善后,禁止运行组态功能。

  3.2 设计时保护

  由于运行时的工具是由组态工程师生成的,因此运行时组态的自由度完全由组态工程师掌握。这就要求组态工 程师对运行时提供的手段要加以限制,不要提供过多的、 不必要的灵活性,同时对修改对象提供必要的保护措施。 例如提供了运行时组态点的工具,就有必要对已有的点进 行保护,同时对用户添加的点的数量要进行限制。同样 对于画面修改也是如此,不需要运行时修改的画面就不要设置“运行时编辑”权限。

  总之,组态人员既要给用户提供扩展功能的手段, 又要对其加以足够的限制,以保证系统安全运行。

  

4 发展方向

 

  组态软件行一般称为通用组态软件。“通用”一词表示它可以适合各种应用领域。不同的应用领域虽然存在许多共性的东西,但是行业的差异是客观存在的。差异表现在画面的组织形式,组成部件,构建逻辑。如果让组态软件能够包罗万象来适应各行各业,那么呈现给用户的软件将过于复杂,最终会使得组态软件本身的友好性太差,失去其存在的意义。如前所述,运行时动态生成的元素是在组态环境下生成的。行业工程师可以在组态环境下构建其应用领域所需模件,然后让专业技术人员运用自己熟知的构件在运行时搭建自己的应用。这样就使组态软件形成三级应用模式:软件工程师-行业工程师-专业技术人员。软件工程师注重的是给行业工程师提供灵活的手段,行业工程师构件行业模件,专业技术人员构件最终的应用。这才会使组态软件深入到行业,这也正式组态软件未来发展之道。

  

5 结束语

 

  目前,无论是国内还是国外组态软件对运行时组态支持都很少,尤其是运行时添加设备、添加变量等各家组态软件基本没有提供任何支持。对于支持VBA脚本的组态软件,虽然可通过编写程序实现画面的动态生成,但是这毕竟是非可视化的手段。

 

 


 


企业邮箱  |  法律公告  |  隐私保护  |  联系我们  |