当前位置:首页 > 嵌入式 > 嵌入式硬件
[导读]利用Rational Rose工具创建UML模型,以城市污水处理过程为建模对象,从软件开发的整体高度,再现污水处理过程的框架及其步骤,为此,进行了用例图、活动图和时序图的建模分析设计,用于辅助研发污水处理仿真软件。同时介绍了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开发出的污水仿真产品无疑是让人放心的,也为今后污水仿真产品的研究提供了一个良好的思路。

本站声明: 本文章由作者或相关机构授权发布,目的在于传递更多信息,并不代表本站赞同其观点,本站亦不保证或承诺内容真实性等。需要转载请联系该专栏作者,如若文章内容侵犯您的权益,请及时联系本站删除。
换一批
延伸阅读

在嵌入式系统开发、调试和测试过程中,J-Link作为一种高效的调试工具,为开发者提供了极大的便利。然而,要想充分发挥J-Link的功能,首先需要正确安装其驱动程序。本文将详细介绍J-Link驱动的安装过程,并深入解析其中...

关键字: jlink 嵌入式系统 嵌入式开发

与谷歌的合作使 Nordic 能够在 nRF Connect SDK 中嵌入开发人员软件,以构建与安卓移动设备兼容的谷歌Find My Device和未知跟踪器警报服务

关键字: 谷歌 SoC 嵌入式开发

嵌入式开发作为当今电子工程和信息技术领域的核心分支,涵盖了广泛的软硬件技术和系统集成方法,用于构建高性能、低成本、低功耗、体积小巧且功能专一的嵌入式系统。这些系统无处不在,从微型传感器节点到复杂的工业控制设备,从日常使用...

关键字: 嵌入式开发 Python

嵌入式开发是当今信息技术领域不可或缺的一部分,它融合了硬件设计、软件开发和系统集成等多个学科,专门用于创建那些被嵌入到特定设备或系统中的专用计算机系统。嵌入式开发的主要过程包括利用分立元件或集成器件进行电路设计、结构设计...

关键字: 嵌入式开发 硬件设计 软件开发

嵌入式开发作为一种专业且技术密集型的领域,涵盖了从硬件底层驱动、中间件到应用层软件开发等多个层面的工作,其所需的工具种类繁多,各有针对性,旨在提升开发效率、保证代码质量以及简化调试过程。

关键字: 嵌入式开发 keil

嵌入式开发作为信息技术领域的重要分支,其涉及的语言种类繁多,各具特色。这些语言的选择取决于目标平台的特性、性能需求、开发者的熟练程度以及项目的具体要求。本文将详细介绍几种常见的嵌入式开发语言,包括C语言、C++、汇编语言...

关键字: 嵌入式开发 C语言

嵌入式开发是一项综合了硬件设计、软件编程以及系统整合的技术活动,其目的是为了创造出能够在特定环境中高效、稳定运行的嵌入式系统。这一流程涵盖了多个紧密关联且不可或缺的阶段,从最初的客户需求分析到最终的产品测试和交付,每个环...

关键字: 嵌入式开发 硬件设计

嵌入式开发作为一个融合了计算机软硬件和系统工程的综合性领域,其成功与否往往取决于三个核心要素的有效整合与协调。这三个要素分别是:硬件平台的选择与设计、软件开发及其优化、以及系统级的设计与集成。深入理解并熟练掌握这三个方面...

关键字: 嵌入式开发 ARM

嵌入式开发作为信息技术的关键支柱,在全球数字化转型浪潮中扮演着无可替代的角色。从传统的嵌入式微控制器到如今先进的片上系统(SoC),再到与云计算、人工智能深度融合的智能终端,嵌入式系统的演进与发展始终紧跟时代脉搏。本文将...

关键字: 嵌入式开发 智能应用

嵌入式开发是一种专门针对特定硬件平台设计和实现软件系统的工程实践,它涵盖了从需求分析、系统设计、编程实现、调试测试直到产品部署及维护的全过程。本文将深入探讨嵌入式开发的主要阶段,分解其流程并阐述每个步骤的关键要点,以便于...

关键字: 嵌入式开发 嵌入式软件
关闭
关闭