论文部分内容阅读
监控组态软件是工业过程控制系统中数据采集与监视控制的专业软件。实时数据库作为其核心部分,是数据交换的中心,完成数据采集与判断、运算与处理、报警处理、数据传送等功能。在工业自动化领域中,实时数据库为先进控制软件进行在线优化、模型辨识、多变量预测控制、软测量等提供了数据支持。因此如何保证数据的实时性,是实时数据库研究的重点内容。本文设计了实时数据库系统的总体框架,给出了各子系统的详细结构和功能描述。系统分为五部分:初始化子系统、数据接口子系统、运行管理子系统、数据管理子系统和应用程序接口子系统。这五部分相互联系,共同完成数据的采集、处理与存储等功能。为保证数据的实时性,实时数据库常驻内存。根据变量的不同属性,将数据对象分为模拟量、开关量和字符型量。实时数据库内核主要由模拟量数组、开关量数组和字符型量数组构成,数组存储变量的属性,包括变量名、数据类型、数据原始值、数据过程值等。初始化子系统将存有用户I/O变量的表装入实时数据库不同内存数组中,并提供用户对变量表进行增加、删除、修改等编辑功能。数据接口子系统采用OPC、DDE、I/O通信应用编程、I/O驱动程序等方式采集数据,在数据采集过程中,给出了数据状态标识来判断数据是否采集到,并根据变量名将采集的数据存入内存数组中。运行管理子系统定时将内存中的实时数据保存到关系数据库中,防止系统在运行过程中发生意外情况丢失数据,系统重新启动后可以载入之前存储在关系数据库中的实时数据,从而增强了系统的可用性。数据管理子系统完成报警处理和历史数据处理的功能。在报警处理中给出了报警条件、报警类别和报警级别等内容,设计了报警的处理流程,并定义了不同数据对象的报警信息存储格式。在历史数据处理中,由于采样周期比存盘周期短,存在着数据存盘时已经采集了多个数据的情况,于是分别给出了模拟量、开关量和字符型量数据对象存盘时存储哪一个数据的方法。应用程序接口子系统为用户提供接口函数,用于调用实时数据库中的实时数据、历史数据和报警数据,设计了读数据函数、写数据函数、获取变量属性函数和读取报警数据函数等。用C#作为开发工具,编程实现了实时数据库系统中各子系统的主要功能,包括变量表的装入和编辑、数据采集、数据管理、数据存储等功能,选用OPC方式采集数据,选用Access关系数据库存储系统中的数据,并将实时数据库系统以动态链接库的形式发布。最后以某水泥项目为例,选用ABB公司的AC800M为下位机,用C#开发的图形界面调用实时数据库系统,实现了系统的应用。