作者:江金春 字数:2956 点击:

摘 要:计算机控制系统的设计与实现目前主要采用组态软件的方法。面对组态软件在体系结构设计和数据结构设计上的不足,本文利用面向对象方法进行组态的思想,对计算机控制系统进行了面向对象分析与设计并建立相关模型。

关键词:面向对象建模技术;计算机控制系统;组态软件;分析与设计;UML

随着计算机网络与嵌人式系统的发展,将组态软件应用到计算机控制中已成为最新的研究动向。”组态”(Configuration)的概念是伴随着集散型控制系统DCS的出现.才开始被广大的生产过程自动化技术人员所熟知的。与硬件生产相对照,组态与组装类似。组态就是用应用软件中提供的工具、方法、完成工程中某一具体任务的过程。在组态概念出现之前。要实现某一任务.都是通过编写程序(如使用BASIC,C,FORTRAN等)来实现的。编写程序不但工作量大、周期长,,而且容易犯错误,不能保证工期。组态软件的出现,解决了这个问题。组态软件是一种数据采集与过程控制相结合的专用软件.在自动控制系统监控层一级的软件平台和开发环境中.用户可采用灵活的组态方式,快速构建工业自动控制系统。它以计算机为基本工具,为实施数据采集、过程监控、生产控制提供了基础平台和开发环境。计算机控

制系统的设计与实现目前主要采用组态软件的方法。

1 组态软件的主要特点和不足

组态(Configurafion)为模块化任意组合。通用组态软件的主要特点:(1)最突出的特点是实时多任务。例如,数据采集与输出、数据处理与算法实现、图形显示及人机对话、实时数据的存储、检索管理、实时通信等多个任务要在同一台计算机上同时运行。(2)高可靠性。(3)封装性(易学易用)。(4)通用性。利用通用组态软件提供的底层设备(PLC、智能仪表、智能模块、板卡、变频器等)的I/O Driver、开放式的数据库和界面制作工具,就能完成一个具有动画效果、实时数据处理、历史数据和曲线并存、具有多媒体功能和网络功能的工程.不受行业限制。(5)延续性和可扩展性。用通用组态软件开发的应用程序。当现场(包括硬件设各或系统结构)或用户需求发生改变时,不需作很多修改而方便地完成软件的更新和升级。组态控制技术是计算机控制技术发展的结果。采用组态控制技术的计算机控制系统最大的特点是从硬件到软件开发都具有组态性。因此系统的可靠性和开发速率提高了,开发难度却下降了。但对于现有的组态软件还存在如下不足:(1)面向过程分析,面向功能设计。(2)解问题空间和实际系统脱离。(3)数据和算法分离,不便于数据实现和操作。(4)对于一些复杂的过程控制问题,难以实现复杂算法和复杂控制规律。(5)一般有开发环境和运行环境两类独立的环境,使用不便;(6)有自己的脚本语言,设计者需要编制一定程序等等。本文利用面向对象方法进行组态的思想,对于计算机控制系统进行了面向对象分析和设计,并建立相关模型。

2 计算机控制系统的面向对象分析与设计

计算机控制系统有其自己的显著特点。可以采用面向对象方法学的思想进行分析和设计。在整个面向对象分析中.有三个主要活动:(1)分析计算机控制系统的特点;(2)根据系统的需求分析.建立用例模型,用UML创建用例图;(3)通过所建立的用例模型,针对计算机控制系统的通用性,抽象出了各种实体类、接口类和控制类,并给出了它们的基本属性和操作.建立了静态模型和动态模型,创建了类图、顺序图、合作图、活动图和状态图。在整个面向对象设计中有四个主要活动:设计问题域部分、设计人机交互部分、设计任务管理部分、设计数据管理部分。其中设计问题域部分实质上是面向对象分析工作的进一步延伸,在面向对象分析工作基础上进行。

2.1 系统的总体结构设计

该系统分为两个子系统:设计子系统和监控子系统。设计子系统需要数据库接口、图形用户接口完成计算机控制系统的设计和保存:监控子系统需要通讯接口、数据库接口和图形用户接口完成计算机控制系统的软件和硬件通讯、数据的存储和运行信息的查看等功能。计算机控制系统的设计子系统和监控子系统是通过对象列表实现信息的共享,把软件中表示硬件的控件和现场硬件联系起来并加以控制。

2.2 人机交互界面的理想设计

人机交互部分突出人如何命令系统及系统如何向用户提交信息,其目的是设计出方便、友好的用户界面,这一部分的设计可使用如下策略:(1)对人分类。因为不同的人对于系统的要求是不同的.他们利用系统完成的工作往往也不同。(2)描述人和他们的任务脚本。(3)设计命令层次。(4)设计详细的交互。(5)继续做原型。从面向对象分析就开始做原型。现在还要继续做。人需要对提出的交互活动进行体验、实地操作,并把它们精化成一致的模式。(6)设计人机接口类。(7)根据图形用户界面GUI(如果可用的话)进行设计。该系统用户就分为设计人员和操作人员两类。设计人员完成计算机控制系统的设计工作.即利用系统使表示硬件的控件和现场的设备进行通讯:操作人员完成计算机控制系统运行中的监控工作,即运行系统,并可查看运行信息,如曲线图、报表及报警信息。

2.3 任务管理设计

任务是进程的别称,任务管理部分用来管理任务的运行、交互等。任务管理部分的设计可采用如下的策略:识别事件驱动任务;识别时钟驱动任务;识别优先任务和关键任务;识别协调者:定义每个任务。该系统中任务管理应根据系统所实现的功能分为两部分:设计部分和控制部分。设计部分中任务管理主要完成的任务是绘图以及控件信息的数据存储:控制部分的任务则比较复杂,有事件的并发驱动,时钟驱动,优先任务等。因此,我们将主要分析计算计控制系统的运行任务管理。

2.4 数据管理设计

大部分实用的系统都要面对处理数据的永久存储问题。数据管理部分提供了在数据管理系统中存储和检索对象的基本结构。该系统中的数据管理主要是针对两个部分:一个是设计过程中的控件信息数据管理,目的是设计图的保存和读取;另一个就是控制过程中物理量的数据管理,目的是历史曲线图、报表以及报警信息的查看和存储。(1)控件信息的数据管理。在设计过程中,针对世面上广泛应用的和已存在的硬件设备建立与其对应的数据库实现控件对象的具体化。当创建某一具体型号的设备时,可直接调用数据库信息,提取属性值。这样设计人员不必再另行设置属性。如果要创建数据库中未存在的控件,不再实时保存控件的信息到数据库,采用对象列表动态存取各个控件对象的属性。在退出系统和关闭设计窗口时保存设计图。(2)物理量的数据管理。根据设计过程中对历史信息设计生成相应的表格在控制过程中按照设置好的历史信息的时问问隔直接进行存储。如果没有要求保存物理量,则不需要实时保存到数据库中去。

参考文献

[1] 熊杰;刘湘伟;陈根忠;杜红兵;;基于UML和OCPN的军事电子信息系统建模[J];火力与指挥控制;2011年06期

[2] 於宇琛;杨传将;谭明波;;面向对象思想在升船机主提升控制系统中的应用研究[J];船电技术;2011年08期

[3] 黄涛;贾涛;张志勇;;一种基于角色-活动的工作流系统访问控制模型[J];网络安全技术与应用;2011年07期