论文部分内容阅读
为了克服传统工业控制软件柔性差、开发周期长、不易维护、重复使用率低且价格昂贵等缺点,本文研究监控组态软件的关键技术,在Windows环境下,以VC7.0作为主要开发工具,完成了其中图形组态模块、数据采集存储模块、数据存储模块的设计与实现。本文采用设计模式中工厂模式来设计组态软件图形组态模块。设计模式是面向对象技术的实际应用。在实际软件项目中,工厂模式(Factory Method)是应用最广泛的设计模式。工厂模式定义一个用于创建对象的接口,让子类决定实例化哪一个类。工厂模式的应用使本系统的结构精巧简洁、易于理解。在以后维护中,很容易找到需要修改的地方,减少了维护的工作量。在需要添加新增功能时,也只需编写新的功能的代码,而不用去修改以前的逻辑,减少了新添加功能时带来的工作量。本文就图元的创建、保存、修改、绘图界面闪烁等项目中遇到的基本问题进行了详尽描述。数据采集模块收集数据处理单元通过以太网发送上来的实时数据,只在运行状态时运行。它采集工业实时数据,放入内存以供View模块访问,如实时趋势。数据采集模块利用共享“内存映像文件”即FileMapping技术,解决组态软件与下位机数据处理单元的交互通信问题。数据采集模块还对采集来的数据按照历史库、SOE、报警等业务逻辑进行处理。本文引入数据库缓冲访问技术,解决数据库访问慢和缓冲数据。数据库缓冲访问是通过多个进程可访问的队列来实现的。该队列利用内存映像文件实现,由于该队列有几个不同的线程会同时访问,本论文采用Windows内核对象:互斥量、信标实现同步。需要访问数据库的进程将数据库访问请求放入队列中,由另一个数据库访问模块进行实际的读取数据操作。该技术的应用,提高了数据库访问速度,提高了本系统可采集点的数目,可达到4万个点的采集。