面向对象方法在造纸机PLC程序中的应用

2015-03-09 02:31ApplicationoftheObjectorientedMethodinthePaperMachinePLCProgram
自动化仪表 2015年3期
关键词:面向对象传动系统程序设计

Application of the Object-oriented Method in the Paper Machine PLC Program

孟彦京 王佳宁 段明亮

(陕西科技大学电气与信息工程学院,陕西 西安 710021)

面向对象方法在造纸机PLC程序中的应用

Application of the Object-oriented Method in the Paper Machine PLC Program

孟彦京王佳宁段明亮

(陕西科技大学电气与信息工程学院,陕西 西安710021)

摘要:将面向对象的方法应用在造纸机传动系统的PLC程序设计中,结合造纸机的工艺特点,使用统一建模语言(UML)建立传动系统的模型,实现对系统的抽象与类的封装;并用构件图描述系统的结构与功能,最终使得面向对象的设计思想在PLC程序中得以体现。经过设计实践,运用面向对象方法进行PLC编程不仅极大提高了编程效率,并且使造纸机的PLC程序更易读、易修改、复用性更强。

关键词:面向对象造纸机UMLPLC类图构件图

Abstract:Combining with the characteristics of technological process of paper machine, the object-oriented method is applied in designing PLC program for drive train of paper machine, and the model of drive train is established by using unified modeling language (UML) to realize the system abstract and the class encapsulation; and the structure and functions of the system are described using component diagram, to make object oriented design concept can be implemented in PLC program. Through the practicing of design, it is found that applying object oriented method for PLC programming, the programming efficiency is greatly increased, and the PLC program of paper machine is more easier to read and modificate and possesses strong reusability.

Keywords:Object-orientedPaper machineUMLPLCClass diagramComponent diagram

0引言

如今现代造纸机正朝着大型化、高速化的方向发展,可编程逻辑控制器(programmable logic controller,PLC)已经在造纸机的传动控制系统中得到普遍使用,PLC程序的设计也越来越受到重视。随着造纸机控制功能更加全面、数据处理量和通信功能的增加等,PLC程序设计的难度也随之增加。人们也希望PLC程序能够具有较强的可读性和通用性,方便造纸机PLC控制系统后期的维护、升级与改造。显然传统的PLC程序设计方法已无法满足人们的要求。本文针对造纸机工艺控制的要求,使用面向对象的方法对造纸机的PLC控制系统进行程序设计,提高了程序的可读性和复用性。

1面向对象方法理论分析

面向对象程序设计方法直接以现实世界的实体或者概念为中心来思考问题,根据事物的本质特征把它们抽象为对象,作为构建软件系统的基础。也就是说,面向对象是对复杂事物简单化,将具有相同或相似结构、操作、约束条件以及具有相同数据的对象进行合理的集合归类,不同类之间采用入口参数判别方法加以区分,并建立起类的数据结构;而后将类的属性和方法封装到具有适当定义的接口容器;最后将不同的类通过消息实现联系通信。这样就将系统流程的实现变成封装模块的简单调用。

统一建模语言(unified modeling language,UML)是一种通用的可视化建模语言,被广泛应用于面向对象的系统分析和设计。在使用面向对象方法设计软件程序时,UML模型能够合理地封装系统中的对象,隔离对象的内部活动和外部的联系。UML使用类图表示对象的结构,使用状态图表示对象的内部活动,使用活动图等精确描述对象之间的关系,同时还可以详细表示对象的继承关系、静态结构、动态特性以及相互协作等[1]。这样就掩盖了软件程序的具体细节,简化了程序设计过程,同时使得软件程序具有更好的可读性和复用性。

UML模型用标准的图形来描述系统的功能和形态,主要包括用例图、静态模型、动态模型和实现模型。造纸机传动系统动态调节反应较快,系统启动后能够快速地运行在稳定状态。

本文只针对造纸机传动系统PLC程序的用例图、静态模型和实现模型进行分析。

2造纸机面向对象方法的PLC程序设计

造纸机电气传动控制系统性能的好坏是决定一台造纸机能否高效率、高质量进行生产的前提,为保证其连续地高效率、高质量进行生产,传动系统的PLC控制程序就显得尤为重要。本文以某造纸厂为例,该造纸机共设计有21个传动点,主要包括网部、压榨部、烘干部、施胶部和卷取部。若要完成各分部的功能实现,就需要合理、有效地控制驱动各个传动点的交流电机,使其协调运行,这样才能保证整个传动系统高效、稳定地运行。造纸机的传动点主要包括真空伏辊、驱网辊、导网辊、真空吸移、压榨辊、烘缸、施胶、卷取等[2]。在造纸机工作时,不仅要求传动点可以顺序启停,并且需要传动点之间进行速度链的传递和负荷的分配。

该造纸机传动系统速度链的传递与负荷分配如图1所示。

图1 系统速度链的传递与负荷分配示意图

图1中,虚线箭头表示负荷分配,实线箭头表示仅具有速度控制。速度链就是传动系统中各相邻传动点之间速度保持一定的比例,且在车速调整中不影响前一级速度,只影响本级和本级以后车速的一种速度信号传递的链式结构。负荷分配的实质就是速度控制与转矩控制的结合,要求系统某些分部之间不仅速度同步,而且负载率均衡[3]。

2.1 UML模型的建立

2.1.1功能模型用例图

系统功能模型用例图如图2所示。

(5)Because he is too busy to have a good rest,he feels tired of his life.

图2 系统功能模型用例图

用例图是软件需求分析到最终实现的第一步,主要用来描述用户、需求、系统功能单元之间的关系。它展示了一个外部用户能够观察到的系统功能模型图。用例图从用户的角度来展现系统的功能,便于软件开发人员最终实现这些功能[4]。UML的用例模型不仅能够展现系统功能需求,还能够更加清楚地描述系统的参与者,即外部执行者和系统之间的交互关系以及参与者之间的关系。

造纸机传动控制系统的参与者一般包括操作员、管理员、数据库、文件管理、PLC、变频器、人机交互等。其中PLC、变频器和人机交互可以总结为系统的硬件设计。系统的用户包括操作员和管理员,分别通过人机交互实现对造纸机传动系统的控制[5]。

2.1.2静态模型

静态模型类图如图3所示。

图3 造纸机传动系统静态模型类图

类图是面向对象系统建模中的核心视图,以反映类的结构(属性、操作)以及类之间的关系为主要目的一种静态模型。类图中的类与面向对象语言中的类的概念是对应的,是对事物的抽象归类[6]。这里运用类图建立造纸机传动系统的静态模型。

在面向对象方法编程中,对系统类的划分有很多不同的分法。划分类的不同使得系统的实现模型不同,从而使程序设计也会有很大的差异。结合造纸机传动系统传动点多、速度链的传递和负荷分配的特点,本文采用按照系统功能类型进行分类。这与按照对象分类的不同之处在于,按照功能类型进行分类可以针对一组控制算法,将具有相同或相似功能的操作对象归为一类,将每一个算法封装到具有共同接口的独立的类中,从而使得对控制算法的增减、修改都不会影响其他的对象,形成了有效隔离。按照这种方法,抽象类可以归结为通信类、电机操作类、实际工作参数类和参数给定类。

2.1.3实现模型

UML建模中的构件是系统中可以替换的代码模块,每个构件都体现了系统设计中的类的实现。构件图是从软件结构的角度来描述一个系统的主要功能[7],可以清楚地看出系统程序的结构和功能。定义良好的构件不直接依赖于其他构件而是依赖于所支持的接口,这样就可以避免系统的各个构件之间发生依赖关系,有利于新构件的替换。造纸机传动系统的程序构件图如图4所示。

图4 造纸机传动控制系统构件图

根据系统静态模型中的分类,使用4个构件实现系统的功能,21个传动点可以重复调用通信构件、电机控制构件、实际参数构件和参数给定构件。造纸机传动系统的速度链的传递与负荷分配也可以用这4个构件实现。按照这个方法,后期如果需要对系统进行升级或者程序移植,只需要增加或删减传动点,修改传动点的入口参数即可,使得程序具有更好的可读性和复用性。

2.2 PLC编程实现

本系统采用西门子S7-300 PLC,程序编写在Step7中进行。用户程序主要由组织块(organization block,OB)、功能(function,FC)、功能块(function block,FB)、数据块(data block,DB)组成。经过UML对造纸机的传动系统进行建模后,这里使用功能块(FB)来对建模中的类的程序进行封装,当编写设备的具体程序时,只需要调用该类的FB即可,同时也会为其配置一个背景数据块[8-10]。

造纸传动系统由21个传动点组成,每个传动点都通过调用封装通信构件、电机控制构件、实际参数构件和参数给定构件这4个构件的FB块即可实现各个传动点的控制程序的编写。这样就可以使传动系统的PLC程序更加容易修改,提高了程序的复用性。调用FB块示意图如图5所示。

图5 调用FB块示意图

3结束语

本文将面向对象的方法应用在造纸机传动系统的PLC程序设计中。使用UML对传动系统进行了建模,不仅对系统进行了抽象与类的封装,并且用构件图描述了系统的结构与功能。在最后的程序实现时,这种面向对象的PLC编程方法不但提高了编程效率,而且使造纸机系统的程序更易于阅读和修改,对造纸机控制系统的生产和维护具有很大的指导和借鉴价值。

参考文献

[1] 张崇明,汪春梅,周毅,等.一种面向对象的PLC程序设计方法[J].计算机工程与应用,2007,43(21):106-107.

[2] 孟彦京.造纸机变频传动的原理与设计[M].西安:陕西人民出版社,2002.

[3] 王志军,张池.造纸机负荷分配产生的原因与控制[J].中国造纸,2009,28(9):58-60.

[4] 黄咏,庄诚,高东杰.输送系统的UML建模、优化与实现[J].控制工程,2006,13(1):55-59.

[5] 杜清.基于UML的工业软控制器的建模[D].汕头:汕头大学,2006.

[6] 周元芳.结构化及面向对象的程序设计方法在PLC编程中的应用[J].浙江工学院学报,2003,31(3):264-267.

[7] 周珂,李子丰.基于UML构件分析的软件复用技术[J].航空计算技术,2004,34(2):51-53.

[8] 陈娟,周猛.面向对象的程序设计方法在PLC程序设计中的应用[J].电气自动化,2001,23(3):55-57.

[9] 杨英成.面向对象方法在PLC程序设计中的应用研究[D].太原:太原科技大学,2011.

[10]孟彦京,薛宁.造纸机PLC程序的结构化设计研究[J].自动化仪表,2014,35(3):49-51.

中图分类号:TP273

文献标志码:A

DOI:10.16086/j.cnki.issn1000-0380.201503008

修改稿收到日期:2014-08-20。

第一作者孟彦京(1956-),男,2012年毕业于陕西科技大学纸浆造纸工程专业,获博士学位,教授;主要从事电力电子与电力传动、风力发电、光伏发电、电机软启动器等方面的研究。

猜你喜欢
面向对象传动系统程序设计
佛兰德传动系统有限公司
GEE平台下利用物候特征进行面向对象的水稻种植分布提取
汽车的大动脉
拖拉机内燃电传动系统
医学专业“Python程序设计”课程教学改革总结与思考
基于Visual Studio Code的C语言程序设计实践教学探索
从细节入手,谈PLC程序设计技巧
面向对象方法在水蓄冷PLC编程中应用分析
ACS6000中压传动系统在钢管轧制中的应用
高职高专院校C语言程序设计教学改革探索