面向?qū)ο蟮囊簤合到y(tǒng)分析研究--2
二、液壓系統(tǒng)面向?qū)ο蟮姆治?
1. 問(wèn)題描述
液壓系統(tǒng)分為液壓傳動(dòng)系統(tǒng)和液壓控制系統(tǒng)兩種類(lèi)型,本文的研究對(duì)象是液壓傳動(dòng)系統(tǒng)。液壓系統(tǒng)是能實(shí)現(xiàn)系統(tǒng)功能的液壓回路的總和。液壓回路又是能實(shí)現(xiàn)某種規(guī)定功能的液壓元件的組合。液壓元件是組成液壓系統(tǒng)的基本單元。主要的液壓元件有液壓泵、執(zhí)行元件(液壓缸、液壓馬達(dá))、液壓控制閥(壓力控制閥、流量控制閥、方向控制閥等)、液壓輔件(密封圈、濾油器、蓄能器、油箱及其附件、管件、熱交換器等)。液壓控制閥按照其安裝形式的不同又可分為普通閥、疊加閥、插裝閥。液壓回路是液壓元件組成的功能單元。液壓回路主要有壓力控制回路、流量(速度)控制回路、方向控制回路、安全回路、定位回路、同步回路、順序動(dòng)作回路等。以上分類(lèi)只是粗略分類(lèi),限于篇幅,詳細(xì)分類(lèi)此處不一一列出。液壓系統(tǒng)設(shè)計(jì)就是根據(jù)機(jī)械師提出的主機(jī)的動(dòng)作循環(huán)要求、靜、動(dòng)態(tài)性能及液壓系統(tǒng)工作環(huán)境等方面的要求,進(jìn)行系統(tǒng)的工況分析,確定主要參數(shù)(包括系統(tǒng)壓力、系統(tǒng)流量、液壓執(zhí)行元件類(lèi)型及主要參數(shù)等),選擇合理的液壓回路和液壓元件,設(shè)計(jì)工作的最終形式是液壓系統(tǒng)原理圖和各種技術(shù)文件。
2. 標(biāo)識(shí)類(lèi)和對(duì)象
類(lèi)和對(duì)象是對(duì)應(yīng)用論域中的概念的標(biāo)識(shí),是系統(tǒng)分析的基礎(chǔ)。這一過(guò)程要考慮許多情況,以形成軟件復(fù)用的基礎(chǔ)。類(lèi)和對(duì)象的標(biāo)識(shí)是從對(duì)問(wèn)題描述的分析開(kāi)始的。在液壓系統(tǒng)中抽取出如下對(duì)象(本文的類(lèi)即對(duì)象都是以大寫(xiě)字母表示):
液壓系統(tǒng)(HYDRAULIC SYSTEM)、執(zhí)行元件(ACTUATOR)、液壓缸(CYLINDER)、液壓馬達(dá)(MOTOR)、液壓回路(CIRCUIT)、壓力控制回路(PRESSURE CONTROL)、流量(速度)控制回路(SPEED CONTROL)、方向控制回路(DIRECTIONAL VALVE CONTROL)、安全回路(SECURITY CONTROL)、定位回路(POSITION CONTROL)、同步回路(SYNCHRONISE CIRCUIT)、順序動(dòng)作回路(SEQUEUNT CIRCUIT)、液壓泵(PUMP)、閥(VALVE)、壓力控制閥(PRESSURE VALVE)、流量控制閥(FLOW VALVE)、
方向控制閥(DIRECTIONAL VALVE)、液壓輔件(ACCESSORY)……普通閥(COMMON VALVE)、插裝閥(CARTRIDGE VALVE)、疊加閥(SUPERIMPOSED VALVE)……。
因?yàn)橐簤合到y(tǒng)是一個(gè)很復(fù)雜的系統(tǒng),在此不可能將所有的對(duì)象都列出,本文只列出了部分對(duì)象,為下文繼續(xù)分析提供依據(jù)。
3. 標(biāo)識(shí)結(jié)構(gòu)
結(jié)構(gòu)層反映了對(duì)象之間的組裝及繼承關(guān)系。整體-部分結(jié)構(gòu)標(biāo)識(shí)了組裝結(jié)構(gòu),泛化-特化關(guān)系反映了繼承關(guān)系。如果父對(duì)象,或泛化對(duì)象的屬性或特征可為其所有的子對(duì)象,或特化對(duì)象共享,就建立起了泛化-特化關(guān)系。父對(duì)象和子對(duì)象的這種屬性共享就稱(chēng)之為繼承性。父對(duì)象是由若干子對(duì)象以某種方式組裝而成的,就構(gòu)成了整體-部分關(guān)系。這種關(guān)系一般建立在物理組裝的基礎(chǔ)上。雖然整體-部分關(guān)系不象泛化-特化關(guān)系那樣具有繼承性,但它們也同樣有重復(fù)度和參與度特征。重復(fù)度是指組成一個(gè)父對(duì)象的子對(duì)象的數(shù)量。(例如,一個(gè)液壓系統(tǒng)中有若干個(gè)調(diào)速回路。)參與度是指父對(duì)象或子對(duì)象是否都必須在整體-部分關(guān)系中出現(xiàn)。(例如,一個(gè)液壓系統(tǒng)有若干個(gè)調(diào)速回路,而一個(gè)調(diào)速回路并不一定是一個(gè)液壓系統(tǒng)的一部分。)
在液壓系統(tǒng)中,由于液壓回路組成了液壓系統(tǒng),液壓元件組成了液壓回路,所以整體-部分結(jié)構(gòu)較容易標(biāo)識(shí)。以液壓回路組成液壓系統(tǒng)為例,可得到圖3所示的組裝結(jié)構(gòu)。
圖3 液壓系統(tǒng)的組裝結(jié)構(gòu)示例
圖中數(shù)字表示了整體與部分之間的數(shù)量關(guān)系。1,m表示一個(gè)液壓系統(tǒng)可由一個(gè)或多個(gè)泵源回路組成;0,m表示一個(gè)液壓系統(tǒng)可以包含零個(gè)或多個(gè)相應(yīng)回路;0,1表示該回路可以不作為該液壓系統(tǒng)的組成回路,也可以作為該液壓系統(tǒng)的組成回路。
泛化-特化關(guān)系在液壓系統(tǒng)中也是廣泛存在的。以閥的泛化-特化關(guān)系為例,可得到如圖4所示繼承關(guān)系。
圖4 泛化---特化結(jié)構(gòu)示例
4.標(biāo)識(shí)主題
過(guò)去的結(jié)構(gòu)化模型的特征之一就是層次分解。而大多數(shù)OOA模型的結(jié)構(gòu)都相對(duì)平坦,除非應(yīng)用論域使用泛化-特化結(jié)構(gòu)或整體-部分結(jié)構(gòu)。事實(shí)上,可以通過(guò)建立多個(gè)主題來(lái)處理規(guī)模比較大的復(fù)雜模型。每個(gè)主題可以看作一個(gè)子系統(tǒng)。主題的概念是從觀察者的角度來(lái)看的。分析員可以依據(jù)子論域、子系統(tǒng),甚至組織或地域等來(lái)區(qū)分主題,只要運(yùn)用得當(dāng),所有這些規(guī)則都有助于主題劃分。
本文討論的液壓系統(tǒng)根據(jù)子系統(tǒng)原則劃分為三個(gè)主題層。組成液壓系統(tǒng)的液壓回路對(duì)象及其對(duì)象之間的聯(lián)系構(gòu)成了回路層;組成液壓回路的液壓元件對(duì)象及其之間的聯(lián)系構(gòu)成了元件層。各主題層內(nèi)對(duì)象之間與主題層間的對(duì)象之間都存在著實(shí)例連接和消息通信。兩個(gè)主題層共同構(gòu)成了一個(gè)復(fù)雜的液壓系統(tǒng)。液壓系統(tǒng)主題層如圖5所示。
圖5 主題層示例
5.標(biāo)識(shí)屬性及實(shí)例連接
OOA模型的屬性層包括對(duì)象屬性和對(duì)象之間的關(guān)系(實(shí)例連接)。對(duì)象屬性即對(duì)象內(nèi)部封裝的數(shù)據(jù)。實(shí)例連接可以看作是一種事務(wù)規(guī)則或應(yīng)用論域約束,這些連接表明一個(gè)類(lèi)中的對(duì)象如何與另一個(gè)類(lèi)中的對(duì)象相關(guān)聯(lián)的。
標(biāo)識(shí)屬性的目的就是為前面已經(jīng)確立的各個(gè)對(duì)象建立一系列屬性。本文的屬性均以小寫(xiě)字母來(lái)表示。標(biāo)識(shí)屬性的基本做法是:標(biāo)識(shí)屬性、修改OOA模型的其它層以適應(yīng)這些屬性,如果有必要的話修改對(duì)象,然后重復(fù)這個(gè)過(guò)程。之所以有時(shí)會(huì)有修改對(duì)象的可能,是因?yàn)樵诒硎緦?duì)象時(shí)發(fā)現(xiàn)有的屬性對(duì)于某些對(duì)象不適合。例如,在為液壓缸(CYLINDER)標(biāo)識(shí)屬性輸出力(output_force)時(shí),發(fā)現(xiàn)該屬性不適合于擺動(dòng)式液壓缸,因此發(fā)現(xiàn)CYLINDER這個(gè)對(duì)象需要細(xì)化為直線型液壓缸(LINEAR CYLINDER)和擺動(dòng)式液壓缸(ROTARY CYLINDER)。其相應(yīng)屬性分別為output_force和output_torque。
本文討論的液壓系統(tǒng)的屬性標(biāo)識(shí)的一部分如表1所示。
表1 液壓系統(tǒng)屬性標(biāo)識(shí)示例
系統(tǒng)的實(shí)例連接示例如圖6所示(為簡(jiǎn)單起見(jiàn),圖中略去了屬性標(biāo)識(shí))。
圖6 實(shí)例連接示例
6.標(biāo)識(shí)服務(wù)及消息通信
前面討論的均是應(yīng)用論域的某個(gè)靜態(tài)方面。對(duì)象之間的動(dòng)態(tài)關(guān)系可以表示為對(duì)象所執(zhí)行的服務(wù)以及對(duì)象之間傳遞的消息。建立動(dòng)態(tài)關(guān)系是為了說(shuō)明所標(biāo)識(shí)的各種對(duì)象是如何共同協(xié)作,使系統(tǒng)運(yùn)作起來(lái)的。通常的步驟是,首先標(biāo)識(shí)在每個(gè)對(duì)象中必須封裝的一組服務(wù);然后將服務(wù)與對(duì)象的屬性相比較,驗(yàn)證其一致性。如果已經(jīng)標(biāo)識(shí)了某個(gè)對(duì)象的屬性,那么每個(gè)屬性就必須關(guān)聯(lián)到某個(gè)服務(wù),否則這個(gè)屬性對(duì)于這個(gè)對(duì)象來(lái)說(shuō)就形同虛設(shè),永遠(yuǎn)不可能被訪問(wèn)。然后畫(huà)出對(duì)象之間的消息通信路徑,協(xié)調(diào)系統(tǒng)的行為。
以“液壓系統(tǒng)”這個(gè)最上層的類(lèi)-對(duì)象為例,它有五個(gè)屬性(system_name,pressure_level,designer,pressure,max_flow_quantity)!耙簤合到y(tǒng)”具有的行為:Set_Name , Get_Name , Set_System_Level , Get_System_Level , Set_Pressure_Level , Get_Pressure_Level , Set_Designer , Get_Designer , Set_Pressure , Get_Pressure , Set_Max_Flow_Quantity , Get_Max_Flow_Quantity!耙簤合到y(tǒng)”與其它許多類(lèi)--對(duì)象之間都有消息通信。以“液壓系統(tǒng)”與“執(zhí)行元件”之間的消息通信為例!耙簤合到y(tǒng)”在計(jì)算系統(tǒng)壓力(pressure)和系統(tǒng)最大流量(max_flow_quantity)時(shí),需要各個(gè)執(zhí)行元件的壓力和流量參數(shù),因此“液壓系統(tǒng)”在計(jì)算系統(tǒng)壓力和流量時(shí),向“執(zhí)行元件”發(fā)送消息,請(qǐng)求提供相關(guān)參數(shù)。兩個(gè)對(duì)象及其消息通信如圖7所示。
圖7 服務(wù)及消息通信示例
圖中“執(zhí)行元件”只有類(lèi)邊界而沒(méi)有實(shí)例邊界,因?yàn)樵诂F(xiàn)實(shí)世界中它需要以“液壓缸”和“液壓馬達(dá)”的形式出現(xiàn)。
第 [1] 2 [3] 頁(yè)
|