0 引言
软PLC的市场需求量在不断的增长。典型的软PLC应用产品有:①SOFTPLC公司的softPLC。soft—PLC是基于PC的开放式控制软件,具有开放的控制平台,用户能够根据自己的需求来选择硬件。②SIE—MENS公司的SIMATIC WinAc。SIMATIC WinAc是基于windows平台的控制软件,具有可视化人机界面,它将控制、数据处理、通信等技术集于一体,采用了实时操作系统作为Windows NT的扩展,具有“硬实时”的特性。③CJ International公司的ISaGRAF。ISaGRAF能够在多种操作系统下运行,具有良好的网络通讯能力。在国内,吕涌等开发的面向DCS控制组态软件中包含一些软PLC功能,它只是DCS系统的一部分,不能独立运行心’。李左章等对软PLC技术进行了大量的研究,其开发的数控内嵌式PLC具有软PLC的特点,但功能单一,不能作为独立系统运行,且无联网通讯能力。
基于上述产品的特点以及不足,本文主要研究基于Qt平台的中央空调控制系统中的软PLC控制软件的开发,其对于降低大型中央空调能耗,缓解我国因不断增长的能源需求所带来的能源压力和环境压力具有重要的意义。
1 图形元件类需求分析与实现策略
1.1 图形元件类需求分析
采用梯形图语言设计顺序控制逻辑,具有方便直观的优点,且梯形图程序由若干图形元件按逻辑规则连接而成,编译顺序是从上到下,从左到右。将控制
系统的开关量逻辑与状态表示成梯形图,有利于系统维护与快速故障诊断。通过对梯形图及其设计规则的分析,用梯形图语言编制程序的过程实质上是一个用梯形图图符来表示操作指令、用图符的串并联及位置顺序来表示操作指令之间逻辑关系的过程。由此,一个梯形图可以看作是由梯形图图符和连接符组合而成。为实现软PLC控制软件功能,其编辑模块应包括指令的类设计与实现、梯形图的生成、显示和修改功能的实现,并为用户提供友好的操作界面和良好的编程环境,提高软PLC编辑模块的可靠性和可用性的功能。对于元件的操作,应实现元件复制、粘贴、剪切、添加、删除、元件属性编辑等操作。在软PLC控制软件编辑模块中,元件类必须符合以下要求:
(1)为减少系统代码冗余,缩短运行时间,元件代码必须要高效、合理、精简。操作过程中,要实现元件的灵活拖放,并保证系统稳定。
(2)元件必须能够准确、完整、快速地保存数据。并且在系统运行时,及时保存并更新数据。
(3)元件必须具备出错处理功能,并能够判别其使用环境,当两个元件不能同时使用时,需要有相应的提示。
1.2 图形元件实现策略
依据《Logix5550控制器指令集参考手册》,指令主要分为8大类,分别是位操作类、计时器/计数器类、比较类、计算类、传送与逻辑类、程序控制类、终止循环类、滤波类。文献[7]中定义了一个EClass建模类,它指定属性和参数以描述元件图形、图像化的数据。此方法可以降低工作量,减小代码冗余。但是在具体实现过程中,各个元件的图形、图像化参数存在差异,所要呈现的视觉效果不同,此方法无法满足系统对指令图形多样化的需求。DrawObject基类来描述所有元件图形化的共同属性和行为,把元件的图形化和逻辑功能封装在一起,简化了编程过程。在本系统构架中,定义ClogicElement为元件库模型的基类,它是从梯形图编程系统所支持的所有元件抽象出来的一个类,它定义了其他类的共有操作接口和属性,是其他图形元件类的父类。模块中所有的元件子类都依据继承机制继承了基类的属性,并根据自己支持的图形元件有选择地重载基类相应的操作,以满足子类的需求p1。如图1,为其逻辑功能模块类结构。
图1逻辑功能模块类结构
图形元件是实现对象的模型,它不仅是实现对象的图形表示,而且还要包括与现实对象相关的一些主要属性、数据和行为。因此,必须将图形元件智能化。Qt具有很好的平台移植性,采用面向对象语言,易于扩展,并且允许组件编程。另外,使用Qt编写的程序在嵌入式系统上运行时问性能高,占用系统资源少,能保证该系统移植到嵌入式系统以后的顺畅运行。因此,本系统在Qt平台上进行开发。