摘 要 该文首先简要介绍了
UML 技术及其在开发应用程序中的一般框架,并以此为依据,结合 南京依维柯汽车有限公司 机器人焊接生产线参数监控系统开发实例,使用
UML 对该系统进行建模,给出了基于 UML 的机器人焊接生产线参数监控系统分析阶段描述。
关键词 UML ,系统建模,参数监控;
1. 引言
随着工业生产规模日益扩大,生产过程复杂度日益提高,机器人在汽车工业中得到了广泛的应用,采用工业机器人可以大大提高企业的生产效率和经济效益,然而对于多个机器人的生产线系统,存在着诸如如何协调多台机器人工作,减少故障排除时间,使得管理人员能够及时了解生产线场运行情况等问题。大量的工程实践证明,对机器人生产线进行监控可以有效的解决或缓解上述问题。由于系统的结构比较复杂,包括多个分系统,为了保证系统结构设计良好,同时也为了降低软件开发的风险,必须采用科学、高效的建模方法。统一建模语言
UML(Unified Modeling Language ,简称 UML) 是 OMG 组织确定的面向对象的标准建模语言,它是一种可视化的建模语言,它能让系统构建者用标准的、易于理解的方式建立起能够表达出他们想法的系统蓝图,并提供了一种机制,以便于不同的人之间有效地共享和交流设计成果。
UML 使用面向对象的概念来分析、描述软件系统并构造系统模型,是一种在大型复杂系统的建模领域中得到普遍认可的优秀软件工程方法
[1] 。因此,本文尝试用 UML 来对监控系统软件进行建模。
2.
采用 UML 对软件系统进行建模的基本框架
UML 包括一些可以相互组合为图标的图形元素,
通过提供不同形式的图形来表述从软件分析开始的软件开发全过程的描述,一个图就是系统架构在某个侧面的表示,所有的图组成了系统的完整视图。
UML 主要提供了以下五类图:
( 1 )第一类是用例图(
Use Case Diagram ),从用户角度描述系统功能,并指出参与者 , 用例图用来从用户的角度收集系统的需求。
( 2 )第二类是静态图(
Static Diagram ),包括类图、对象图和包图。其中类图描述系统中类的静态结构。对象图是类图的实例。包图由包或类组成,表示包与包之间的关系。包图用于描述系统的分层结构。
( 3 )第三类是行为图(
Behavior Diagram ),描述系统的动态模型和组成对象间的交互关系。其中状态图描述类的对象所有可能的状态以及状态之间的转换,并给出状态变化序列的起点和终点。而活动图描述满足用例要求所要进行的活动以及活动间的约束关系,有利于识别并行活动。
( 4 )第四类是交互图(
Interactive Diagram ),描述对象间的交互关系。其中顺序图显示对象之间的动态合作关系,它强调对象之间消息发送的顺序,同时显示对象之间的交互;协作图描述对象间的协作关系,与顺序图相似,显示对象间的动态合作关系。除显示信息交换外,协作图还显示对象以及它们之间的关系。
( 5 )第五类是实现图(
Implementation Diagram )。其中构件图描述代码部件的物理结构及各部件之间的依赖关系。它包含逻辑类或实现类的有关信息。部署图显示了基于计算机系统的物理体系结构。它可以描述计算机,展示它们直接的连接,以及驻留在每台机器中的软件。每台计算机用一个立方体表示,立方体之间的连线表示这些计算机之间的赖性。
这些基本图示符号为系统的分析、设计建模提供了十分方便的可视化手段。采用
UML 对软件系统进行建模,就是用上述的五类图将软件开发过程中的各个步骤可视化地表现出来。由于
UML 仅仅是一种建模语言,而不是一个标准的开发过程,它完全独立于开发过程,因而在实际的运用过程中,必须要同一定的软件开发过程结合起来。但仅从面向对象分析设计的角度考虑,软件建模的一般过程是首先描述需求,次之根据需求建立系统的静态模型,以构造系统的结构,第三步是建立动态模型,描述系统的行为。
UML 分别提供不同的图来实现上述建模需求,其建模的基本框架如图 1 所示。
其中 UML
提供用例图、类图(包括包图)、对象图、构件图和配置图等六种图来描述系统的结构,这些图构成了标准建模语言
UML 的静态建模机制。而顺序图、合作图、状态图和活动图等四种图则用于描述执行时的时序状态或交互关系,构成了标准建模语言
UML 的动态建模机制。
由图 1 也可以看出,使用
UML 建模语言对系统建模也可以是一个反复迭代的过程,发现需求、静态建模和动态建模都是相互影响,相互作用的。初步的需求可以进行静态和动态建模,在对系统进行静态和动态建模时,还可以进一步捕获需求,再进行建模,如此迭代递增。
3.
基于 UML 的监控软件建模
机器人焊接监控系统是一个分布式的复杂人机信息系统。由于现场参数比较多,变化比较快,
因此系统必须要具有很强的实时性,该控制软件要具有很强的信息处理能力,同时要具备分布性,并行性能力,才能满足系统的性能要求。
UML 的建模能力比其它面向对象方法更强,不仅适合于一般系统的开发,更擅长于并行、分布式系统的建模,因而采用
UML 对监控软件进行建模是一种有效的手段和方法。
应用 UML
开发应用系统基本框架来对机器人焊接生产线中监控软件进行建模,首先进行需求分析,理解机器人焊接生产线监控系统所需要完成的功能及其软件要达到的设计目标;其次进行静态建模,用
UML 的静态图描述监控软件的功能、类及其相互间的联系;最后进行动态建模,用 UML 的动态图描述
机器人焊接生产线监控软件中对象之间的交互关系。
UML 作为一种优秀的建模语言,适用于软件开发过程的需求、分析、设计、编码测试等各个阶段,下面将以初始分析阶段为主,用
UML 对监控软件开发进行建模。
3.1
理解需求
机器人焊接生产线参数监控系统是以参数来反映系统状态并以直观的方式表现出来,及时了解被监视对象的状态和状态的变化情况。其主要目标是为了达到减少生产线的处理时间,降低故障率,缩短故障排除时间,从而提高生产线的生产效率和效益,同时提高生产管理水平的目标。
生产线中需要监测的对象有:机器人、焊接控制器、工件传输线以及气源、水源和电源。整个监控软件主要有七部分组成。
(1) 权限管理模块:权限管理模块包括添加用户、删除用户和密码修改三部分,其中添加用户和删除用户只能由管理员使用,其余用户不能使用。当登录成功后,用户可使用密码修改功能来更改自己的密码。
(2) 系统设置界面模块
: 系统设置界面模块主要包括 OPC 树设置和参数树设置两部分。
OPC 树设置 主要是为管理员了解并配置 PLC底层数据源中的数据,PLC的数据在第一次使用该系统时数据库表里并没有,需要管理员或编程人员将其导入数据库中,并在界面上显示。因为PLC的数据由OPC
SCOUNT生成并保存在一个文本文件中,由于数据量比较大,若手工输入到数据库表中,不仅浪费时间,而且不能保证输入的正确性,所以我们用导入文本文件的方式来保存数据到数据库中。
参数树设置可由人工添加、删除、修改参数项及目录项。参数树中的参数项和目录项可动态拖动,如参数自动选择状态原属于外部条件目录项,可以用鼠标选中自动选择状态参数项,按住鼠标左健将其拖到任何目录下或其它参数旁均可,当然,目录项也可像参数项一样的托动,若拖动成功,则拖动的目录项将与接收的目录项同级。
(3)主界面模块:主界面模块是登录成功后的默认界面,主要包括开机检查、夹具信息、参数值查询以及重要参数的实时监视等内容。开机检查包括在生产线启动前几个参数指标的查询。夹具信息是生产线上工位的夹具信息,分为夹紧和松开两种信息,若工位上有工件,则在工件上显示当前车型。参数值查询是当用户想查看单个参数或多参数的多个属性时可以通过选择参数树上的参数来获得。主界面上的大部分空间为重要参数的显示。
(4)查询与统计模块:查询与统计模块包括历史数据查询、年月日报表以及故障统计,该模块对生产管理与调度以及企业层领导了解生产线状况起着重要的作用。
(5)辅助界面模块:辅助界面模块是为了用户能够更清晰的了解当前生产线的状况而设置,主要包括连锁、报警以及车型三个界面。
(6)机器人模块:机器人模块将每台机器人单独作为一个界面,包括了机器人的所有信息,还包括一个FTP客户端,供管理员进行服务器和客户端文件的上传下载使用。
(7) 帮助模块:帮助模块主要是为了方便用户使用监控软件而设置的帮助信息。
3.2
静态建模
根据上述需求,可以首先绘制出用例图,如图 2 所示,用例图是站在用户的角度上理解机器人焊接生产线参数监控系
统所要完成的功能;其次,根据用例图,进行领域概念分析,可以找出监控控制软件中概念性的类及它们之间的相互关系。如果类很多,还可从功能的角度建立逻辑包,绘制包图。在分析阶段用
UML 进行静态建模时,建立用例图、类图就基本能够描述系统,如果需要,也可建立包图和对象图。而构件图和配置图是在设计、实现阶段所必需的。
3.3
动态建模
建立好系统的静态模型之后
,开始进行系统的动态建模。对于动态模型,主要是建立系统的顺序图、协作图和状态图。 图 3 是管理员登录使用时的顺序框图例子。首先管理员进入用户的登录窗口,经用户合法性验证后,进入系统主界面,然后进入系统配置模块,进行相应的设置。如果不是管理员登录,一般用户是没有设置权限的,一般用户只有查询和浏览的权限。提交查询请求,
系统会把相关的信息显示出来,并对生产量等情况生成报表供打印输出
4.
结束语
通过以上的步骤,初步建立了机器人焊接生产线监控系统的需求模型,我们是先进行需求分析,再建立静态模型和动态模型。该机器人焊接生产线参数监控系统的
最大的特点在于:能够满足用户实时了解各参数值的要求,界面简洁,操作简单方便。采用 UML 对监控软件进行建模,可以将复杂的监控系统用简单明了的可视化图形表示出来,对整个监控软件的开发提供灵活、一致、易读的表达,不仅可以解决监控软件开发中不同领域人员之间难以互相交流理解的难题,为系统的分析、设计、维护及扩展提供了有利的条件,还可提高系统的可重用性和可维护性,具有广泛的应用前景。 |