论文部分内容阅读
随着工业生产规模的日益扩大,集散控制系统(DCS)在工业过程控制领域的应用越来越广泛。DCS系统的组态软件是运行在工程师站和操作员站、用于过程监视与控制的应用软件,是DCS系统集中操作和管理的体现。集散控制系统配以成熟的组态软件,是目前控制领域发展的一个重要方向,因此本课题研究具有重要的理论意义和实际价值。本文首先介绍了基于CAN总线的新型DCS系统的体系结构。其次,根据新型DCS系统要求和特点,在对组态软件进行需求分析的基础上,研究了组态软件的体系结构,将组态软件分为开发环境和运行环境两部分,并运用模块化思想将组态软件划分成若干功能模块。最后,研究了组态软件的框架和数据库系统,并根据功能模块划分,采用面向对象的程序设计方法,在Windows平台下利用Visual C++6.0开发工具,重点研究并实现了组态软件的数据库系统,开发了负责组态软件与现场控制站通信的I/O驱动程序,完成了组态软件可视化环境的设计与实现。框架设计是组态软件开发的第一步,本文首先从体系结构、软件各部分协调工作的功能图和功能模块划分三方面对软件框架进行了详细阐述。然后集成组态软件的各功能模块,实现了包括开发环境和运行环境在内的软件框架的可视化设计。基于文件和数据库的数据管理机制实现了数据信息从组态到运行的传递。分析了开发环境下的组态流程和运行环境下各模块间的通信机制。数据库系统是组态软件的核心,在对数据库系统的总体需求和系统结构进行分析的基础上,将数据库系统分为组态数据库和实时运行数据库两部分。组态数据库用来保存系统组态信息,对组态数据库的数据结构进行描述,完成组态数据库的设计和实现。重点论述了基于SQL Server 2000的实时运行数据库的设计思路和实现方法。采用面向对象设计方法对实时数据建模,借鉴内存数据库的设计思想,并将AVL搜索树、基于锁的并发控制等一系列技术应用到实时运行数据库的设计中,提高了实时性能,满足新型DCS系统实时性要求。详细论述了实时数据在内存中的数据结构及存储方式。面向对象的实时数据模型巧妙实现了实时运行数据库与关系数据库的映射,使得实时运行数据库的历史数据保存和查询可以利用SQL Server 2000完成。实现了数据库系统与其它功能模块之间基于组件对象模型(COM)的数据交换接口。I/O驱动程序基于动态链接库技术和多线程技术实现,这样的设计方便驱动程序调度,优化了资源配置,提高了系统的实时性。驱动程序利用Socket实现TCP/IP网络通信,完成组态软件通过工业以太网对现场实时数据进行分布式采集的功能。文中详细论述了驱动程序的体系结构和工作过程,阐明了实时运行数据库系统对驱动程序的调度机制。