在農機產品生產中,工藝裝備的設計和制造在整個生產準備過程中周期最長,它實際決定了農機生產的工藝準備周期。近年來,我國的新機研制、系列改型任務繁重,產品更新速度快,客觀上要求采用新的設計手段和工藝方法來縮短生產準備周期。從設計角度來看,采用數(shù)字化技術進行工藝裝備設計,增強工藝裝備設計過程的柔性,提高對已有設計資源的可重用性,是縮短工藝裝備設計周期的重要途徑。在農機產品CAPP系統(tǒng)開發(fā)過程中,各模塊對系統(tǒng)的要求可以說是多種多樣的,利用對象建模技術對CAPP系統(tǒng)進行設計和開發(fā),可以保證系統(tǒng)的可重用性、易維護性、獨立性和互操作性。CAPP系統(tǒng)是一個采用數(shù)據(jù)庫存儲和管理大量工藝卡及其相關數(shù)據(jù)的系統(tǒng)。該文采用非面向對象的關系數(shù)據(jù)庫管理系統(tǒng)Sybase加上面向對象的開發(fā)工具PowerBuilder來實現(xiàn)面向對象的設計,從而將對象的屬性和操作分離,所開發(fā)的CAPP系統(tǒng)在農機產品的工藝設計中得到了良好應用。
1 基于對象建模的CAPP系統(tǒng)模型
1.1 CAPP系統(tǒng)的對象模型
對象建模技術在面向對象分析時,首先將工藝人員看到的各種表格,如工藝過程卡、生產進度表、材料明細表、材料匯總表等所有數(shù)據(jù)項看成為初始對象,將表達對象之間的關系抽象成初始對象之間的關聯(lián),由此得到CAPP系統(tǒng)設計的一般對象圖(圖1)。
圖1 表與操作分離時的CAPP一般對象模型圖
由于CAPP系統(tǒng)中很大部分任務是對工藝卡內容數(shù)據(jù)以及生成工藝卡的支撐數(shù)據(jù)的存儲與管理,因此圖1中的對象為表對象,它們是CAPP系統(tǒng)的對象的主體部分,基于對象模型,各個表對象類Xi的存儲等基本操作均可以共用。
1.2 對象模型的實現(xiàn)過程
在面向對象的系統(tǒng)中,系統(tǒng)的運行是靠事件來驅動的。CAPP系統(tǒng)開發(fā)時將對象、關聯(lián)及操作等映射成數(shù)據(jù)庫表和程序實體,其具體實現(xiàn)過程是:
①把數(shù)據(jù)對象X1,X2,X3等映射成相應的數(shù)據(jù)庫表、視圖。在定義這些表與視圖的同時也定義了相應的驗證規(guī)則和缺省數(shù)據(jù),它們作為數(shù)據(jù)庫的一部分與表、視圖保存在一起。②把關聯(lián)Dij映射成表或表的一部分,而對于多對多關聯(lián),可把該關聯(lián)映射成獨立的表。③將操作OPij映射成對應的操作窗口,并將操作OPij關聯(lián)到對象Xi,最終映射成Powerbuilder的數(shù)據(jù)窗口和事件驅動下的程序。
2 對象模型在CAPP系統(tǒng)中的實現(xiàn)
2.1 工藝過程卡對象模型的實現(xiàn)流程
CAPP系統(tǒng)設計中,最重要的對象就是工藝過程卡,其實現(xiàn)流程如下:
(1)第1步:定義一個“工藝過程卡”對象。
該對象的屬性包括:①外觀屬性:邊框、標題、表格等。每一個屬性還可以繼續(xù)細分下去,比如邊框可以繼續(xù)分解成起點、終點、線型、線寬等。標題可以繼續(xù)分解成文本、字號、字體等;②內容屬性:零部件圖號、零部件名稱、零部件材料、編制者、編制日期、序號、工種、工步內容、車間、設備、工裝、額定工時、準備工時等。
(2)該對象的操作包括:
①自身約束操作——有效性檢測、默認值設置等;②其他操作——新建工藝卡、修改工藝卡、保存工藝卡、檢索工藝卡、刪除一行工藝卡內容、插入一行工藝卡內容、恢復一行工藝卡內容、指針定位到工藝卡第一行、指針定位到工藝卡最末行、指針上移一行、指針下移一行等。
對象的屬性、對象的操作(或稱方法)構成了對象模型。
第2步:考察“工藝卡對象”與系統(tǒng)其他對象的關聯(lián)。根據(jù)工藝卡對象屬性的取值的數(shù)目,工藝卡屬性可以劃分為兩部分。一種是該屬性在一個對象中只能有一個取值,這種屬性如零部件圖號、零部件名稱、零部件材料、編制者、編制日期等;另一種是該屬性在一個對象中可以有多個取值,這種屬性如序號、工種、工步內容、車間、設備、工裝、額定工時、準備工時等。
基于上述分析,可將工藝卡對象拆分為兩個相互關聯(lián)的新對象,一個稱“工藝卡主表”,一個稱“工藝卡副表”。“工藝卡主表”對象包含原工藝卡對象中所有取值數(shù)目只能為一的屬性;“工藝卡副表”對象包含原工藝卡對象中所有取值數(shù)目可能大于一的屬性。其中“工藝卡主表”中的屬性還可以分成兩類:一類是“工藝卡主表”本身特有的屬性,如編制者、編制日期等;另一類并非“工藝卡主表”本身特有的屬性而是存在于其他對象中只是反映在工藝卡主表中的屬性,比如零部件圖號、零部件名稱、零部件材料,這些屬性存在于“產品零部件明細表”中,工藝卡主表中相應的屬性只是對它的一種再現(xiàn)。最終得到“工藝卡主表”、“工藝卡副表”、“產品零部件明細表”之間的關聯(lián)(圖2)。
圖2 工藝卡主衰、工藝卡副表、產品零部件明細表之間的關聯(lián)
第3步:將用戶的“工藝卡”在系統(tǒng)中映射成一個視圖。
映射視圖的定義為:
第4步:將各個對象的自身約束操作映射成各數(shù)據(jù)庫表的有效性規(guī)則和默認值,這在定義數(shù)據(jù)庫表時作為表的一部分被同時定義,對于更復雜的規(guī)則可以通過把它們映射成“存儲過程( stored procedure)”或“觸發(fā)器(trigger)”來實現(xiàn)。
第5步:將對象的其他操作映射成相應的事件驅動下的消息處理程序。如“保存工藝卡”操作被映射成消息處理程序ue_save()。
第6步:實現(xiàn)各消息處理程序。
至此,實現(xiàn)了CAPP系統(tǒng)的“工藝卡”對象的具體應用。2.2 CAPP系統(tǒng)的域分析所謂CAPP域,就是CAPP系統(tǒng),應用需求的問題及其背景知識。域分析的主要任務是針對單個或一族相似的域,以重用為目標,尋找并挖掘域或域族中能夠公用的部分。
在CAPP系統(tǒng)中,所有數(shù)據(jù)都以數(shù)據(jù)庫表的形式存放在計算機中,這些數(shù)據(jù)庫表可以分為這樣幾類:一類是CAPP系統(tǒng)的輸出結果,主要是工藝卡主表和工藝卡副表;另一類是CAPP系統(tǒng)運行的支撐數(shù)據(jù)庫,如零部件明細表,車間設備表,工時系數(shù)表,零件工裝表,型鋼規(guī)格表,知識庫等。
圖3 工藝過程卡
對于所有這些數(shù)據(jù)庫表,系統(tǒng)都必須向用戶提供完善的數(shù)據(jù)庫維護的功能,即提供錄入、刪除、修改、插入、檢索、打印等功能。所有這些操作的實現(xiàn)都是相同的,所不同的只是操作實施的對象。如果對每一個數(shù)據(jù)庫表都設計一個維護窗口,不僅增加CAPP系統(tǒng)開發(fā)的工作量,而且對系統(tǒng)的可靠性和可維護性都將帶來不利的影響。
基于軟件重用的思想,在CAPP系統(tǒng)中設計了一個通用的數(shù)據(jù)庫維護窗口,內含一個抽象的數(shù)據(jù)庫表,在其基礎之上實現(xiàn)數(shù)據(jù)庫維護的功能。對應于具體的某個數(shù)據(jù)庫表,只須在運行時將通用數(shù)據(jù)庫維護窗口和它相連即可。這樣就實現(xiàn)了所有的數(shù)據(jù)庫表共用一個數(shù)據(jù)庫維護窗口,操作與操作的對象分離。數(shù)據(jù)庫表的改動不影響數(shù)據(jù)庫維護窗口,反之亦然。這給CAPP的實現(xiàn)與維護帶來極大的便利。
CAPP系統(tǒng)的選單設計中采用對象建模技術實現(xiàn)選單的重用,整個系統(tǒng)盡管功能復雜,但選單數(shù)目卻只有3個,圖3即采用對象建模技術開發(fā)的農機產品CAPP系統(tǒng)工藝過程卡選單。
3 結論
采用基于對象模型方法進行CAPP系統(tǒng)的設計,實現(xiàn)簡單,系統(tǒng)功能的可擴充性與可維護性都比較強,并可提高選單的可重用性,即CAPP系統(tǒng)開發(fā)過程中,只需開發(fā)一個編輯窗口,而非對應每一個數(shù)據(jù)表開發(fā)相應的編輯窗口。當數(shù)據(jù)表發(fā)生結構改變時可通過修改數(shù)據(jù)窗口來實現(xiàn)。采用這種方法,同一個選單就可以被不同的窗口所共用,系統(tǒng)的開發(fā)效率大大提高,同時系統(tǒng)的結構也非常合理,根據(jù)作業(yè)機的主體結構相似性,可應用于各類農機制造的工藝設計過程。
核心關注:拓步ERP系統(tǒng)平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統(tǒng)的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網(wǎng)http://www.ezxoed.cn/
本文標題:基于對象建模的農機產品CAPP系統(tǒng)設計與應用
本文網(wǎng)址:http://www.ezxoed.cn/html/solutions/1401939253.html