□ 楊 振 □ 樊瑜瑾 □ 周 巍 □ 鄭淮河
1.昆明理工大學(xué) 機(jī)電工程學(xué)院 昆明 650500
2.昆明昆開(kāi)專用數(shù)控設(shè)備有限責(zé)任公司 昆明 650106
基于UML的母線沖壓機(jī)床需求分析與建模
□ 楊 振1□ 樊瑜瑾1□ 周 巍1□ 鄭淮河2
1.昆明理工大學(xué) 機(jī)電工程學(xué)院 昆明 650500
2.昆明昆開(kāi)專用數(shù)控設(shè)備有限責(zé)任公司 昆明 650106
統(tǒng)一建模語(yǔ)言UML是一種定義良好、易于表達(dá)、功能強(qiáng)大的圖形化建模語(yǔ)言,它的目標(biāo)是以面向?qū)ο蟮姆绞絹?lái)描述任何類型的系統(tǒng)。由于它得到Rational Rose等Case軟件的支持,不但用于建立軟件系統(tǒng)的模型,還可以用于描述非軟件領(lǐng)域的系統(tǒng),如機(jī)械系統(tǒng)、企業(yè)機(jī)構(gòu)或業(yè)務(wù)過(guò)程等?;赨ML,以昆明昆開(kāi)專用數(shù)控設(shè)備有限責(zé)任公司研發(fā)的數(shù)控母線沖壓機(jī)床的設(shè)計(jì)要求為對(duì)象,對(duì)數(shù)控母線機(jī)床系統(tǒng)進(jìn)行建模,并對(duì)其進(jìn)行需求分析,以利于機(jī)床的后續(xù)研發(fā)。
UML 建模 Rational Rose 母線沖壓機(jī)床
隨著我國(guó)經(jīng)濟(jì)的快速發(fā)展,對(duì)各行各業(yè)都提出了更高的技術(shù)要求,這對(duì)電器控制柜行業(yè)的發(fā)展起到了很大的促進(jìn)作用。由于母線主要用于高危的電力行業(yè),如質(zhì)量得不到保證,將會(huì)導(dǎo)致漏電,甚至引發(fā)火災(zāi),嚴(yán)重威脅到人類的生命及財(cái)產(chǎn)安全。目前傳統(tǒng)的母線加工設(shè)備已很難滿足社會(huì)發(fā)展的需求,國(guó)外的母線加工設(shè)備雖然加工精度及設(shè)備質(zhì)量本身相比國(guó)內(nèi)要好,但其價(jià)格也非常昂貴,所以有必要研發(fā)一種能夠滿足我國(guó)生產(chǎn)加工要求的母線加工設(shè)備。國(guó)內(nèi)已有許多公司獨(dú)立或?qū)で蟾咝:献鲗?duì)母線沖壓機(jī)床進(jìn)行開(kāi)發(fā),將需求分析作為系統(tǒng)開(kāi)發(fā)的基礎(chǔ)工作,對(duì)整個(gè)開(kāi)發(fā)過(guò)程有著重要的影響。統(tǒng)一建模語(yǔ)言UML是始于1997年的一個(gè)OMG(對(duì)象管理組織)標(biāo)準(zhǔn),它不僅統(tǒng)一了Booch、Rumbaugh和Jacobson的表示方法,而且對(duì)其作了進(jìn)一步的拓展,并最終成為被大眾所接受的標(biāo)準(zhǔn)建模語(yǔ)言。UML作為一種面向?qū)ο蟮膱D形建模語(yǔ)言,能夠直觀簡(jiǎn)潔地對(duì)系統(tǒng)進(jìn)行描述,可以對(duì)任何具有靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為的系統(tǒng)進(jìn)行建模分析,它從不同的角度出發(fā),分別定義了用例圖、類圖、狀態(tài)圖、時(shí)序圖等,通過(guò)這些圖的可視化描述及相互之間有效地結(jié)合,可以為系統(tǒng)建立一個(gè)易于理解的現(xiàn)實(shí)模型,即系統(tǒng)的需求分析。筆者以昆明昆開(kāi)專用數(shù)控設(shè)備有限責(zé)任公司研發(fā)的數(shù)控母線沖壓機(jī)床為對(duì)象,以統(tǒng)一建模語(yǔ)言UML為工具,運(yùn)用IBM公司的Rational Rose軟件對(duì)數(shù)控母線沖壓機(jī)床進(jìn)行需求分析建模。
UML是一種面向?qū)ο蟮目梢暬瘶?biāo)準(zhǔn)建模語(yǔ)言,采用圖形符號(hào)來(lái)表示系統(tǒng)中的對(duì)象和關(guān)系,從不同的角度描述待開(kāi)發(fā)系統(tǒng),它為開(kāi)發(fā)人員更好地理解系統(tǒng)的組成以及工作狀態(tài)提供了有效的交流方式。一個(gè)系統(tǒng)應(yīng)有功能、靜態(tài)結(jié)構(gòu)和動(dòng)態(tài)行為所組成,因此,要建立一個(gè)系統(tǒng)模型主要需要以下3類模型。
(1)功能模型。從用戶的角度描述系統(tǒng)的功能,即系統(tǒng)應(yīng)該做什么,功能模型用例圖來(lái)表示。
(2)靜態(tài)結(jié)構(gòu)模型。描述系統(tǒng)的靜態(tài)結(jié)構(gòu),要在功能模型中表達(dá)功能由誰(shuí)來(lái)完成,主要表示類與類之間的關(guān)系,用類圖來(lái)表示。
(3)動(dòng)態(tài)模型。描述系統(tǒng)的動(dòng)態(tài)行為,即功能如何完成,什么時(shí)間完成,包括對(duì)象的事件序列、狀態(tài)和操作等,主要用狀態(tài)圖、時(shí)序圖、協(xié)作圖來(lái)表示。
功能模型是系統(tǒng)的核心,建模流程是:首先從功能需求出發(fā),建立系統(tǒng)功能模型;其次建立系統(tǒng)的靜態(tài)結(jié)構(gòu)模型;然后將系統(tǒng)要完成的功能在系統(tǒng)結(jié)構(gòu)上進(jìn)行分配,建立系統(tǒng)動(dòng)態(tài)模型。
上述3類模型既有各自不同的特點(diǎn),又相互存在著內(nèi)在的聯(lián)系。用上述3類模型對(duì)整個(gè)系統(tǒng)進(jìn)行描述,能使機(jī)床研發(fā)人員在較短的時(shí)間內(nèi)對(duì)母線沖壓機(jī)床的功能、硬件結(jié)構(gòu)以及工作狀態(tài)有一個(gè)直觀的認(rèn)識(shí)。圖1為系統(tǒng)建模流程圖。
▲圖1 系統(tǒng)建模流程圖
功能分析即用來(lái)描述系統(tǒng)的外部功能,UML為用
戶提供了用例圖描述系統(tǒng)的外部功能。用例圖與傳統(tǒng)文字性的分析說(shuō)明相比較,具有直觀、規(guī)范等優(yōu)點(diǎn),是面向?qū)ο箝_(kāi)發(fā)中進(jìn)行功能分析的一種有效手段。用例圖是向外界用戶展示系統(tǒng)的功能,通常應(yīng)先找出外界參與者與子系統(tǒng)的關(guān)系。
該系統(tǒng)的用例圖如圖2所示,從圖中可以看出,該母線沖壓機(jī)床分為4個(gè)子系統(tǒng),分別是送料子系統(tǒng)、出料子系統(tǒng)、沖剪子系統(tǒng)和折彎子系統(tǒng)。送料和出料工序是由伺服電機(jī)來(lái)實(shí)現(xiàn)的;沖剪和折彎工序是由液壓缸驅(qū)動(dòng)來(lái)完成的,其動(dòng)力來(lái)自液壓系統(tǒng)。將參與者分為操作人員和維修人員,操作人員對(duì)4個(gè)子系統(tǒng)進(jìn)行操作,維修人員對(duì)4個(gè)子系統(tǒng)進(jìn)行維修。從圖2還可以清晰地看出,沖壓機(jī)床對(duì)于外界操作者所具有的功能,它是以一種可視化的方式來(lái)幫助開(kāi)發(fā)團(tuán)隊(duì)了解系統(tǒng)的功能需求。
▲圖2 用例圖
對(duì)任何一個(gè)系統(tǒng)建模,對(duì)其靜態(tài)結(jié)構(gòu)的分析是必不可少的。在UML圖形建模語(yǔ)言中,用類圖去描述系統(tǒng)的靜態(tài)結(jié)構(gòu),它是根據(jù)系統(tǒng)中的類以及各個(gè)類之間的關(guān)系來(lái)描述系統(tǒng)的靜態(tài)視圖,可以使系統(tǒng)開(kāi)發(fā)人員快速了解系統(tǒng)結(jié)構(gòu),該沖壓機(jī)床的類圖如圖3所示。
該類圖是從沖壓機(jī)床的整體類與部分類之間的聚合關(guān)系來(lái)描述沖壓機(jī)床的靜態(tài)結(jié)構(gòu),從圖3可以看出,沖壓機(jī)床系統(tǒng)由折彎裝置、沖剪裝置、送料裝置、出料裝置以及PLC控制系統(tǒng)構(gòu)成,折彎裝置和沖剪裝置由液壓缸和模具構(gòu)成,液壓缸的動(dòng)力來(lái)自液壓系統(tǒng),模具是由凸模和凹模構(gòu)成,送料裝置和出料裝置由機(jī)械手和伺服電機(jī)組成。整個(gè)圖由部分類指向整體類,對(duì)系統(tǒng)的結(jié)構(gòu)描述十分清晰。
▲圖3 類圖
任何系統(tǒng)都具有動(dòng)態(tài)行為,因此,僅描述系統(tǒng)功能和結(jié)構(gòu)并不能將系統(tǒng)完整地表達(dá)出來(lái)。UML提供了狀態(tài)圖、活動(dòng)圖、時(shí)序圖以及協(xié)作圖用來(lái)描述系統(tǒng)動(dòng)態(tài)行為,筆者選取狀態(tài)圖、時(shí)序圖以及協(xié)作圖。狀態(tài)圖是展示狀態(tài)與狀態(tài)的轉(zhuǎn)換圖,它通過(guò)建立對(duì)象的生存周期模型來(lái)描述對(duì)象是隨時(shí)間和事件變化的動(dòng)態(tài)行為。在UML中,一個(gè)狀態(tài)圖依附于一個(gè)類的實(shí)例(對(duì)象),狀態(tài)圖包含了一個(gè)類的對(duì)象在其生命期間所有狀態(tài)的序列以及對(duì)象對(duì)接收到的事件所產(chǎn)生的反應(yīng),它是用來(lái)描述系統(tǒng)當(dāng)中某一個(gè)對(duì)象的狀態(tài)與狀態(tài)之間的控制流,狀態(tài)圖由狀態(tài)、轉(zhuǎn)換、事件、活動(dòng)和動(dòng)作5部分組成。沖壓機(jī)床系統(tǒng)中的送料機(jī)械手在送料過(guò)程中的狀態(tài)變化如圖4所示。
▲圖4 狀態(tài)圖
送料機(jī)械手在初始狀態(tài)時(shí)是松開(kāi)的,此時(shí)電磁閥失電,通過(guò)PLC控制裝置發(fā)出的指令與機(jī)械手的光電編碼器(該系統(tǒng)位置傳感器采用光電編碼器)反饋的信息比較后驅(qū)動(dòng)伺服電機(jī),機(jī)械手運(yùn)動(dòng)到取料位置;電磁閥得電,機(jī)械手完成夾料動(dòng)作;夾料后機(jī)械手運(yùn)動(dòng)到指定位置,電磁閥失電,機(jī)械手松開(kāi),完成卸料動(dòng)作。通過(guò)整個(gè)狀態(tài)圖的描述,反映出送料機(jī)械手在整個(gè)送料過(guò)程中自身狀態(tài)的變化過(guò)程。
狀態(tài)圖只表達(dá)了系統(tǒng)中單個(gè)對(duì)象在響應(yīng)時(shí)間和事件過(guò)程中對(duì)自身狀態(tài)做出的改變,但是在機(jī)床系統(tǒng)整個(gè)工作過(guò)程中,各部分的交互存在于整個(gè)工作周期,所以,還需要描述系統(tǒng)內(nèi)部各個(gè)對(duì)象之間的交互過(guò)程,UML用時(shí)序圖和協(xié)作圖來(lái)描述對(duì)象間的動(dòng)態(tài)交互過(guò)程。在UML中,時(shí)序圖將交互關(guān)系表示為二維圖,該數(shù)控沖壓機(jī)床的時(shí)序交互關(guān)系如圖5所示,縱軸是生命線,生命線代表時(shí)間,用一條向下延伸的虛線表示。生命線上的矩形表示激活,矩形長(zhǎng)度表示對(duì)象被激活的時(shí)間長(zhǎng)短,激活表示該對(duì)象被占用以完成某個(gè)任務(wù)。橫軸代表了在交互過(guò)程中的對(duì)象。
從圖5中可以看出,機(jī)床各對(duì)象的功能、完成此功
能系統(tǒng)的執(zhí)行機(jī)構(gòu)以及完成此功能時(shí)間上的相互關(guān)系。當(dāng)操作人員發(fā)送對(duì)母線加工的指令后,PLC開(kāi)始工作,將信息發(fā)送至送料裝置、沖剪裝置、折彎裝置、出料裝置,以上裝置完成工作任務(wù)后再將信息反饋到PLC。至此,整個(gè)加工過(guò)程完成。
雖然在UML中的協(xié)作圖和時(shí)序圖一樣,都是用來(lái)描述對(duì)象之間的交互過(guò)程,并且兩種圖形可以進(jìn)行等價(jià)轉(zhuǎn)換,但是兩種圖形所描述的側(cè)重點(diǎn)還是有差異的。時(shí)序圖主要用來(lái)強(qiáng)調(diào)整個(gè)交互過(guò)程中的時(shí)間順序,而協(xié)作圖則主要強(qiáng)調(diào)交互過(guò)程中的信息。為了在協(xié)作圖中也能夠表達(dá)出交互順序,人們常在信息前面加上序號(hào),如圖6所示的協(xié)作圖。
▲圖5 時(shí)序圖
▲圖6 協(xié)作圖
UML作為一種圖形化建模語(yǔ)言,雖然其最主要的應(yīng)用領(lǐng)域是軟件開(kāi)發(fā),但它的建模范圍卻十分寬泛。筆者借助于UML提供的可視化建模功能,將其應(yīng)用于母線沖壓機(jī)床的研發(fā)中,分別用UML提供的用例圖、類圖、狀態(tài)圖、時(shí)序圖、協(xié)作圖建立了機(jī)床的功能模型、靜態(tài)結(jié)構(gòu)模型以及動(dòng)態(tài)行為模型。通過(guò)對(duì)沖壓機(jī)床不同側(cè)面的描述來(lái)完成系統(tǒng)的需求分析,使研發(fā)人員能夠在短時(shí)間內(nèi)對(duì)機(jī)床的功能、結(jié)構(gòu)到行為有一個(gè)直觀的認(rèn)識(shí)。這不僅對(duì)研發(fā)人員有積極的指導(dǎo)作用,更是為后續(xù)的研發(fā)工作做好準(zhǔn)備,提高研發(fā)效率,縮短研發(fā)周期,減少研發(fā)過(guò)程中可能發(fā)生的錯(cuò)誤,為整個(gè)研發(fā)過(guò)程降低了勞動(dòng)成本。也希望能夠通過(guò)本文能夠使讀者對(duì)UML有一個(gè)更加全面的了解,充分發(fā)揮其圖形化語(yǔ)言的特點(diǎn),并應(yīng)用到不同領(lǐng)域的建模工作中。
[1]蔡敏,徐慧慧,黃炳強(qiáng).UML技術(shù)與Rose建模教程[M].北京:人民郵電出版社,2006.
[2]施穆勒.UML基礎(chǔ)、案例與應(yīng)用(第三版)[M].北京:人民郵電出版社,2004.
[3]邱郁惠.UML那些事兒[M].北京:機(jī)械工業(yè)出版社,2008.
[4]龍克濱.UML應(yīng)用建模實(shí)踐過(guò)程[M].北京:機(jī)械工業(yè)出版社,2003.
[5]邵維忠,蔣嚴(yán)冰,麻志毅.UML現(xiàn)存問(wèn)題和發(fā)展道路[J].計(jì)算機(jī)研究與發(fā)展,2003(4):509-516.
[6]孔軍,孫怡寧,蔣敏,等.基于UML的系統(tǒng)需求分析[J].計(jì)算機(jī)工程與應(yīng)用,2003(15):217-219.
[7]周巍,樊瑜瑾,王為達(dá),等.基于PLC的數(shù)控母線沖壓機(jī)床控制系統(tǒng)研究[J].新技術(shù)新工藝,2014(11):12-14.
[8]邱仲潘.UML與Rational Rose2002從入門到精通 [M].北京:電子工業(yè)出版社,2002.
[9]張龍祥.UML與系統(tǒng)分析設(shè)計(jì)[M].北京:人民郵電出版社,2001.
[10]Coad P,Yourdon E.Object-oriented Analysis[M].NewYork:Prentice-Hall,1991.
[11]Booch G,Rumbaugh J,Jacobson I.The Unified Modeling Language User Guide[M].MA:Addison-Wesley,1999.
(編輯 美 華)
中亞機(jī)床公司成功研制大型高端數(shù)控折彎?rùn)C(jī)
近日,馬鞍山市中亞機(jī)床有限公司與合肥工業(yè)大學(xué)共同研制的6 400 t/20 m大型折彎?rùn)C(jī)在博望區(qū)成功下線,成為安徽省雙機(jī)最大噸位的折彎?rùn)C(jī),填補(bǔ)了安徽省在該噸位領(lǐng)域里的空白。該機(jī)采用電液伺服數(shù)控系統(tǒng),一次試車成功,其各項(xiàng)技術(shù)參數(shù)和性能達(dá)到國(guó)內(nèi)領(lǐng)先水平。
中亞機(jī)床公司是生產(chǎn)折彎?rùn)C(jī)、卷板機(jī)的專業(yè)廠,多年來(lái),在許齊寶董事長(zhǎng)為首的領(lǐng)導(dǎo)班子帶領(lǐng)下,致力于技術(shù)創(chuàng)新和自主研發(fā);同時(shí),公司善于與高??蒲性核?lián)合,進(jìn)行技術(shù)攻關(guān)和產(chǎn)品升級(jí)。公司在“十二五”期間進(jìn)行技術(shù)改造,建有高大廠房,購(gòu)置先進(jìn)設(shè)備,為發(fā)展大型高端機(jī)床創(chuàng)造了條件。
此項(xiàng)產(chǎn)品為山東晟合交通電力公司供貨,用戶表示滿意,也為中亞機(jī)床公司進(jìn)軍大型高端機(jī)床開(kāi)辟了新路。
(徐斌)
TH312
A
1000-4998(2015)09-0029-03
2015年4月