基于UML的城市污水处理系统建模
扫描二维码
随时随地手机看文章
随着水资源的日益短缺和对环境污染的日益重视,污水处理越来越受到人们的关注。与其他工业处理系统相比,污水处理系统的整个处理过程由许多单元组成,在不同的单元有可能发生不同的反应,如化学、物理和生物反应,因此在研究污水处理过程中需要面向单元对象分析,而不能单纯进行系统的整体建模分析,同时提供优良的低端通用型语言支持、高效的数值程序以及优化工具也是仿真软件开发中的重要方向。基于UML的建模更能全面、准确地反映污水处理中的工艺细节和系统的对象(类)及其之间的交互,充分捕获用户的实际需求。
1统一建模语言(UML)及相关技术介绍面向对象的分析与设计(OOA Management Group)所接受,发布了UML的标准版。如今,UML已成为公认的最好的分析和设计面向对象软件的标准建模语言[1],而不是建模方法。它不包含任何具体的过程,即它并不讲述如何运用面向对象的概念与原则去进行系统建模[2],而只是定义了用于建模的各种元素,以及由这些元素所构成的各种图的构成规则。这使得UML作为一种建模工具,在面向对象领域有着广泛的用途,特别是针对城市污水处理这样一个复杂系统。Rational Rose是Rational公司推出的一款支持UML可视化建模的工具软件,它包括了用例、逻辑、组件和部署视图,支持面向对象分析和设计,在不同的视图中建立相应的UML图形,反应系统的不同特征。从UML建模应用的角度看[3],一个最大的特点就是在设计一个系统时采用面向对象技术,一般需要经过以下三个步骤:(1)功能需求的描述;(2)根据功能需求建立系统的静态模型;(3)在静态视图的基础上,分析和设计系统的动态行为。总的来说,UML是一种定义良好、易于表达、功能强大且普遍适用的建模语言。它融入了软件工程领域的新思想、新方法和新技术,而且它的作用域不限于支持面向对象的分析与设计,还支持从需求分析开始的软件开发的全过程[4].
2城市污水处理仿真软件的建模仿真
2.1用例建模
用例图(Use Case Diagrams)是由软件需求到最终实现的第一步,在UML中用例图用于对系统、子系统或类的行为的可视化,以便系统的用户更容易理解这些元素的用途,也便于软件开发人员最终实现这些元素。在UML建模过程中,可以使用用例图对系统的语境进行建模,强调系统外部的参与者。UML中的用例描述了一组用例、参与者以及它们之间的关系,因此用例图包括三方面内容:用例(Use Case);参与者(Actor);参与者之间的关系,包括泛化关系、包含关系、扩展关系等。(1)定义系统目标与角色:通过对污水仿真系统功能的分析,本系统的开发目标是提供一个运行稳定、仿真准确、功能完备的被控对象,主要使用者是验证控制方案的学生,因此学生是本仿真系统的主要角色;(2)分析角色与系统的交互,确定系统用例:一个良好的被控对象,仿真结果的准确性是最起码的要求,同时要求能够灵活设置参数,高效地进行过程控制,实时数据的趋势显示,仿真结果的数据存取。据此,污水处理系统的主要用例有7个,分别是:参数设置、历史趋势显示、数据存取、3D通讯、处理工程控制、重置冷态和转PLC外部控制。PLC外部控制是其下一步扩展功能,其主要职责是处理下位机的信号数据,用户还可以通过扩展的3D通讯接口实现逼真的现实模拟。图1描述了污水仿真软件总用例,其中描述的用例实际上就是污水仿真系统中的一个子系统功能,在实际的功能需求分析与设计中,用例粒度的大小根据实际的功能需求来界定。
2.2污水处理系统的业务流程分析与设计
用例图只是表达了系统的功能需求,没有描述系统随时间变化的行为,这些行为是用从静态视图中抽取系统的瞬间值的变化来描述的。UML时序图描述了对象之间传递消息的时间顺序,它用来表示用例中的行为顺序,是强调消息时间顺序的交互图。时序图包括4个元素:对象(Object)、生命线(Lifeline)、激活(Activation)和消息(Message)。污水处理系统的操作时序图如图2所示。这张操作时序图描述了污水仿真软件的一般性操作流程:首先登录仿真系统,验证用户名及其密码,经过后台验证后进入主界面;在操作主界面,用户可以使用默认的参数值,例如进水流量、曝气池容积、DO浓度、曝气空气流量、COD浓度等关键参数,也可以根据控制方案的需要修改初始参数值;用户可以配置运行环境,如仿真步长、仿真时间等参数;接着,封装为独立类的污水仿真引擎,对外表现为一个黑箱,仅开放接收数据和显示数据的接口,内部进行迭代仿真运算;用户此时可以从扩展的3D通讯接口观察实际处理效果或者通过趋势曲线观察,并可通过操作阀门开度及回流比,实时调整控制出水各组分浓度。由于采用了OO方法建立的污水仿真系统,其基本组成的元素为对象,而对象又是类的实例,所以采用静态视图描述类、对象和它们之间的关系。类是任何面向对象系统中最重要的构造块,也是一种重要的分类器,用来描述结构和行为特性的机制,包括类、接口、数据类型、信号、组件、节点、用例和子系统。类图是描述类、接口、协作以及它们之间关系的图,用来显示系统中各个类的静态结构。类图包含7个元素:类、接口、协作、依赖关系、泛化关系、实现关系以及关联关系。根据系统用例的功能研究分析,建立污水仿真系统主要类图如图3所示。(1)污水处理系统主程序类:这是污水仿真系统的主界面类,每次运行仅有一个主程序类,它是其他类的关联桥梁,依赖其他类暴露的接口进行数据传递、控制操作、数据显示。它是整个仿真软件的人机交互操作平台,从封装性角度考虑,其自身不具有数据处理功能;(2)用户类:用于存储用户名和用户密码,可扩展为链接底层数据库,管理员可设置对应操作权限及用户账户管理;(3)系统控制类:每当用户进行控制操作,如增大空气流量、增加或减小进水量、改变回流比时,该类通过暴露在主程序类的数据接口,获取阀门开度量或控制参数,处理后传递给仿真引擎进行数学迭代运算;(4)污水处理仿真引擎类:根据污水处理的数学模型,确定仿真系统采用国际水协发布的活性污泥ASM1数学模型,接收从主程序界面和控制类传来的组分数据、控制参数,内部进行迭代运算,实时通过数据接口外传各控制点数据。3城市污水处理的实现
参照北京市某大型污水处理厂的实际处理过程,仿真软件中数学模型采用活性污泥法。通过对溶解氧、污染物基质和异养菌生长三者关系分析,采用白箱建模的方法,从基本动力学方程出发进行了仿真研究,并对这一生化曝气过程进行了建模,利用UML建模工具Rational Rose根据系统类图自动翻译的系统框架代码及可执行程序,完成代码的编写,最终实现污水处理的系统功能。以上利用UML对城市污水处理仿真系统进行了建模分析。实践证明,UML在面向对象建模过程中效果显著,它是一种优秀的建模语言,适用于软件开发过程的各个阶段。它能准确反映出污水处理仿真系统的功能需求,为建模人员搭建了一个清晰的建模平台框架。整个仿真建模研究具有高度的透明性,其结果具有很高的可信度。无论用于理论上的污水建模研究,还是提供一个优良的被控对象,基于UML开发出的污水仿真产品无疑是让人放心的,也为今后污水仿真产品的研究提供了一个良好的思路。