胡曉兵,田 昆,霍云亮,鄧 希
(四川大學(xué) 制造科學(xué)與工程學(xué)院,成都 610065)
工程實(shí)際中,多焊接件大型裝配體存在一些共性:規(guī)格上屬于大型或超大型件;承載量巨大且安全性能要求嚴(yán)格;零部件眾多且裝配關(guān)系繁雜等。以升船機(jī)主提升機(jī)構(gòu)作為多焊接件大型裝配體的研究對(duì)象,通過(guò)搭建數(shù)字化設(shè)計(jì)平臺(tái),實(shí)現(xiàn)依據(jù)客戶或合同信息的錄入自動(dòng)進(jìn)行各零部件的選型與裝配體的驅(qū)動(dòng)。從升船機(jī)主提升機(jī)構(gòu)的設(shè)計(jì)特點(diǎn)出發(fā),采用自上而下的模塊劃分設(shè)計(jì)方法將繁多的零部件進(jìn)行分門別類有序管理,基于Inventor[1]三維軟件的二次開發(fā)技術(shù)以Visual Studio集成開發(fā)環(huán)境[2]為平臺(tái),對(duì)主提升機(jī)構(gòu)各模塊進(jìn)行參數(shù)化設(shè)計(jì);同時(shí)依據(jù)模塊的劃分建立主提升機(jī)構(gòu)各零部件的模型模板庫(kù),應(yīng)用SQL Sever數(shù)據(jù)庫(kù)管理系統(tǒng)[3]對(duì)模板庫(kù)零部件信息及各參數(shù)關(guān)聯(lián)信息進(jìn)行有序高效管理;基于Inventor API技術(shù)、ADO.NET技術(shù)及COM開發(fā)組件等技術(shù)實(shí)現(xiàn)開發(fā)環(huán)境、三維軟件及數(shù)據(jù)庫(kù)的互聯(lián)互通,打造出高效易操作的數(shù)字化軟件系統(tǒng)。以此可顯著提高多焊接件大型裝配體的生產(chǎn)設(shè)計(jì)效率,大幅減小生產(chǎn)制造周期,合理選擇鋼材用量,降低生產(chǎn)制造成本,多方面提高制造企業(yè)競(jìng)爭(zhēng)力。
參數(shù)化設(shè)計(jì)實(shí)質(zhì)上是在可變參數(shù)變動(dòng)的情況下,平臺(tái)可自動(dòng)維護(hù)不變參數(shù),即體現(xiàn)出工程人員設(shè)計(jì)意圖?;贗nventor進(jìn)行參數(shù)化建模有三種功能特點(diǎn):基于特征、全尺寸約束、尺寸驅(qū)動(dòng)。
基于特征,通過(guò)將顯著的幾何形狀定義為特征,全部尺寸作為可調(diào)參數(shù),從而生成實(shí)體。此方法主要用于復(fù)雜件的建模,比如航空用渦輪渦扇的建模,它能夠傳達(dá)產(chǎn)品完整的形狀及工程信息,同時(shí),復(fù)雜度高也是其弊端;全尺寸約束同時(shí)考慮到尺寸、形狀兩因素,由尺寸約束控制幾何形狀,全尺寸約束要求不能欠約束、漏約束,通過(guò)尺寸及形位的約束方式將幾何形狀鎖定起來(lái),有利于解決自由建模的無(wú)約束問(wèn)題;尺寸驅(qū)動(dòng),通過(guò)改變某些尺寸參數(shù),引起所有相關(guān)參數(shù)的變化,從而驅(qū)動(dòng)幾何形狀的更新變化,由于缺少模型間的幾何約束關(guān)系,故此方法僅可改變模型尺寸的大小,不能變更元素間的約束關(guān)系。
針對(duì)主提升機(jī)構(gòu)的設(shè)計(jì)流程特點(diǎn),本文基于Inventor二次開發(fā)技術(shù)[4],采用自上而下設(shè)計(jì)分類中的布局法,先定義總體布局草圖并確定圖塊之間的裝配關(guān)系,然后把結(jié)構(gòu)形狀及主要參數(shù)傳達(dá)與零件,最后匯總成裝配體。由于總體布局圖已設(shè)定模型間的坐標(biāo)系幾何約束,故在參數(shù)化建模過(guò)程中,可采用尺寸驅(qū)動(dòng)法建模,通過(guò)在模板庫(kù)中搜尋到同型零部件,程序通過(guò)inventor API函數(shù)[5]將同名參數(shù)的值賦值到用戶參數(shù)進(jìn)而修改模型尺寸,從而生成新的零部件[6]。
Inventor二次開發(fā)的過(guò)程是一個(gè)外部應(yīng)用程序訪問(wèn)控制Inventor的內(nèi)部應(yīng)用程序。這兩個(gè)應(yīng)用程序間的互通對(duì)話是通過(guò)基于COM技術(shù)開發(fā)出的一系列組件實(shí)現(xiàn)的[7]。COM(Component Object Model)即組件對(duì)象模型,是微軟推出的旨在更好服務(wù)于客服/服務(wù)器的軟件開發(fā)技術(shù)[8-9]?;贑OM的框架,可開發(fā)出多種具有明確功能的組件,針對(duì)Inventor二次開發(fā)的特點(diǎn),可應(yīng)用Add-In(插件)、Standalone EXE和Apprentice Server(學(xué)徒服務(wù)器)3種組件方式,各組件與Inventor的關(guān)系如圖1所示。
圖1 基于COM組件的Inventor開發(fā)框圖
Add-In既可作為服務(wù)器,也可當(dāng)做客戶端,具有兩種運(yùn)作形式,一種作為進(jìn)程內(nèi)組件,以dll形式存儲(chǔ),在inventor運(yùn)行時(shí)與之處于同一個(gè)進(jìn)程,故有高的運(yùn)行效率,然而,由于同處一個(gè)進(jìn)程,這種插件的穩(wěn)定性會(huì)影響到inventor平臺(tái)的運(yùn)作。第二種是以EXE形式存在的進(jìn)程外組件,運(yùn)行在獨(dú)立于inventor的處理空間中。Standalone EXE(獨(dú)立的EXE)為可獨(dú)立運(yùn)行的進(jìn)程外組件,當(dāng)執(zhí)行該程序時(shí),inventor自動(dòng)啟動(dòng)并創(chuàng)建相應(yīng)文檔,但該程序的運(yùn)行效率低于作為程序內(nèi)組件的dll。Apprentice Server(學(xué)徒服務(wù)器),屬于ActiveX服務(wù)器的一種,外部應(yīng)用程序通過(guò)它可訪問(wèn)inventor的數(shù)據(jù),其優(yōu)勢(shì)在于可獲取inventor的完整文檔信息。由于運(yùn)行時(shí)處于用戶自己的程序內(nèi),且沒有自己的操作窗口界面,故運(yùn)行的效率較高。
Inventor API(應(yīng)用程序編程接口)是二次開發(fā)程序與軟件內(nèi)部程序鏈接的通道,通過(guò)它可將新的開發(fā)功能無(wú)縫集成到現(xiàn)有功能上,任何支持對(duì)象嵌入與鏈接的編程工具,如Visual C#.NET、Visual C++、VBA、Dephi等,均可使用該通道對(duì)Inventor進(jìn)行二次開發(fā),開發(fā)方式即上節(jié)所述基于COM技術(shù)開發(fā)的三個(gè)組件,Inventor API向用戶提供了Inventor的所有對(duì)象及其內(nèi)在屬性和方法,用戶通過(guò)對(duì)這些對(duì)象的屬性及方法的操作來(lái)實(shí)現(xiàn)定制功能。
因此,調(diào)用Inventor API就是指調(diào)用Inventor對(duì)象的屬性、方法及相關(guān)功能,Inventor API對(duì)象間存在一種自上而下的包含關(guān)系,如圖2所示,當(dāng)對(duì)下層對(duì)象進(jìn)行調(diào)用時(shí),必須先從其上一層對(duì)象的調(diào)用開始,由圖知應(yīng)用程序(Application)處于最頂層,故調(diào)用其他對(duì)象必須由此開始,不可跨越層級(jí)進(jìn)行,因?yàn)樯弦粚蛹?jí)包含了下一層級(jí)的屬性和方法,下一層級(jí)并不是對(duì)上一層級(jí)的繼承,跨越層級(jí)調(diào)用會(huì)導(dǎo)致程序出錯(cuò)。
圖2 Inventor API對(duì)象關(guān)系圖
升船機(jī)主提升系統(tǒng)含有大量的零部件,將零部件數(shù)據(jù)獨(dú)立出CAD系統(tǒng)可大大提高設(shè)計(jì)效率,有利于不同的應(yīng)用程序借助同一數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)信息的交流。本文采用關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)SQL Sever進(jìn)行數(shù)據(jù)管理[10]。在升船機(jī)主提升系統(tǒng)數(shù)字化設(shè)計(jì)過(guò)程中需要達(dá)到C#程序、Inventor與SQL Sever數(shù)據(jù)庫(kù)的互聯(lián),采用Visual Studio開發(fā)平臺(tái)中集成的ADO(ActiveX Data Objects).NET[11]作為連接通道,以便對(duì)SQL Sever數(shù)據(jù)庫(kù)訪問(wèn)。ADO.NET這一面向?qū)ο蟮木幊探涌?,它使?shù)據(jù)的訪問(wèn)具有多平臺(tái)相互操作性及可伸縮性,其具體結(jié)構(gòu)如圖3所示。
圖3 ADO.NET結(jié)構(gòu)
ADO.NET使用多個(gè)對(duì)象對(duì)數(shù)據(jù)庫(kù)進(jìn)行訪問(wèn),如圖3所示,連接對(duì)象的作用是連接數(shù)據(jù)庫(kù)的數(shù)據(jù)源,也是第一個(gè)與數(shù)據(jù)庫(kù)交互的對(duì)象;命令對(duì)象用于操作數(shù)據(jù)庫(kù),可創(chuàng)建SQL命令;數(shù)據(jù)閱讀器為ADO.NET中的“快捷鍵”對(duì)象,可從數(shù)據(jù)庫(kù)中快速讀取只讀數(shù)據(jù)且每次僅讀取一行記錄,減少了系統(tǒng)開銷,有利于增強(qiáng)應(yīng)用程序性能;數(shù)據(jù)集對(duì)象為ADO.NET的核心部分,ADO.NET從數(shù)據(jù)庫(kù)中獲取的數(shù)據(jù)存放在數(shù)據(jù)集中并以XML的格式存在,XML文檔可導(dǎo)入、導(dǎo)出數(shù)據(jù)集,使跨越平臺(tái)交流成為可能,具有獨(dú)立于各數(shù)據(jù)源、可以離線形式操作數(shù)據(jù)庫(kù)中數(shù)據(jù)的突出特點(diǎn);數(shù)據(jù)適配器主要起到連接數(shù)據(jù)存儲(chǔ)與DataSet的作用。
升船機(jī)主提升系統(tǒng)數(shù)字化設(shè)計(jì)是一個(gè)耦合工程人員設(shè)計(jì)思想、CAD技術(shù)、語(yǔ)言編程及數(shù)據(jù)庫(kù)訪問(wèn)技術(shù)為一體的互聯(lián)互通系統(tǒng),系統(tǒng)最終可達(dá)到根據(jù)輸入的一些主要參數(shù)高效快速地生成整套升船機(jī)主提升系統(tǒng)三維模型及詳細(xì)的數(shù)據(jù)信息。
系統(tǒng)基于工程人員的設(shè)計(jì)思想,使用人機(jī)交互模式,使用戶根據(jù)逐層次的提示,在計(jì)算機(jī)上進(jìn)行全部設(shè)計(jì)工作。使整個(gè)操作流程盡可能達(dá)到:具有簡(jiǎn)潔、邏輯清晰的操作界面;菜單、按鈕工具欄的命名言簡(jiǎn)意賅;對(duì)螺母、墊圈、軸承、聯(lián)軸器等標(biāo)準(zhǔn)件無(wú)需建立參數(shù),可在標(biāo)準(zhǔn)件庫(kù)選擇標(biāo)號(hào)調(diào)用;建立卷筒、制動(dòng)盤、鋼絲繩、電機(jī)等機(jī)構(gòu)的數(shù)據(jù)庫(kù),便于驅(qū)動(dòng)程序的快速調(diào)用;建立具有清晰層次的模板庫(kù),緊密配合數(shù)據(jù)庫(kù)各零部件屬性信息;出具詳細(xì)說(shuō)明書便于系統(tǒng)后期維護(hù)及開發(fā)。
升船機(jī)主提升機(jī)構(gòu)是零部件眾多、結(jié)構(gòu)復(fù)雜的裝配體,在數(shù)字化設(shè)計(jì)過(guò)程中每一步驟都緊密聯(lián)系編程語(yǔ)言的復(fù)雜程度,關(guān)系到整個(gè)系統(tǒng)開發(fā)的邏輯性、層次性及難易程度。對(duì)升船機(jī)主提升機(jī)構(gòu)進(jìn)行模塊劃分[12],使其不僅切合設(shè)計(jì)人員的設(shè)計(jì)思路,同時(shí)滿足系統(tǒng)開發(fā)過(guò)程中的邏輯性、層次性的需求,是保證升船機(jī)主提升機(jī)構(gòu)數(shù)字化設(shè)計(jì)順利進(jìn)行的重要前提。
對(duì)復(fù)雜裝配體進(jìn)行模塊化劃分,應(yīng)綜合考慮其結(jié)構(gòu)特點(diǎn)及功能作用對(duì)其進(jìn)行分級(jí)劃分。結(jié)構(gòu)特點(diǎn)上,多個(gè)單一零件組成組件,多個(gè)組件組成一套裝配體;功能作用上,整體功能由多個(gè)子功能有機(jī)耦合而成,子功能又是多個(gè)單一功能的綜合。從而基于結(jié)構(gòu)特點(diǎn)及功能作用的共性邏輯對(duì)裝配體進(jìn)行樹狀結(jié)構(gòu)的模塊劃分。
基于上述思想,將升船機(jī)主提升機(jī)構(gòu)劃分為8大模塊:卷筒組、鋼絲繩模塊、減速器模塊、電機(jī)組、滑輪組、制動(dòng)器模塊、聯(lián)軸器模塊及標(biāo)準(zhǔn)件。模塊劃分具體信息如圖4所示。
圖4 升船機(jī)主提升機(jī)構(gòu)模塊劃分
升船機(jī)主提升系統(tǒng)數(shù)字化設(shè)計(jì)在功能邏輯層面上采用客戶端/服務(wù)器(C/S)[13]的開發(fā)模式,即分布式的計(jì)算機(jī)處理模式,如圖5所示,以數(shù)據(jù)庫(kù)服務(wù)器程序?yàn)楹诵牡姆?wù)器啟動(dòng)后,就處于一種響應(yīng)狀態(tài),隨時(shí)根據(jù)客戶程序的請(qǐng)求做出回應(yīng)。這種功能邏輯結(jié)構(gòu)有以下優(yōu)點(diǎn):一是可使任務(wù)的執(zhí)行有序分?jǐn)偟娇蛻舳思胺?wù)器之上,客戶端提交請(qǐng)求,服務(wù)器做出響應(yīng)返回結(jié)果;二是數(shù)據(jù)庫(kù)服務(wù)器可獨(dú)立存在、集中管理,客戶端根據(jù)需求使用SQL語(yǔ)句訪問(wèn)數(shù)據(jù),使得數(shù)據(jù)庫(kù)可獨(dú)立于客戶端程序,具有靈活的可移植性。
圖5 客戶端/服務(wù)器開發(fā)模式
基于C/S開發(fā)模式,升船機(jī)主提升機(jī)構(gòu)的數(shù)字化設(shè)計(jì)主要由客戶層和數(shù)據(jù)層構(gòu)成??蛻魧又饕瓿赡P万?qū)動(dòng)、信息管理及參數(shù)計(jì)算。其中模型驅(qū)動(dòng)部分主要完成升船機(jī)主提升機(jī)構(gòu)的三維模型驅(qū)動(dòng)生成,其主要參數(shù)依據(jù)合同信息輸入;信息管理及參數(shù)計(jì)算部分主要完成升船機(jī)主提升機(jī)構(gòu)各模塊主要參數(shù)的輸入及相關(guān)聯(lián)參數(shù)的計(jì)算、總體布局模板庫(kù)及零部件模板庫(kù)的管理。數(shù)據(jù)層主要用于對(duì)各模塊相應(yīng)數(shù)據(jù)信息進(jìn)行存儲(chǔ)。系統(tǒng)的功能邏輯如圖6所示。
圖6 系統(tǒng)功能邏輯圖
用戶界面模塊:此模塊可提供人機(jī)交互的界面,便于數(shù)據(jù)庫(kù)管理、各模塊主要參數(shù)設(shè)計(jì)及其他需要用戶給出的數(shù)據(jù)。用戶界面設(shè)計(jì)采用了Inventor自帶的Inventor IStyler和Visual Studio界面耦合的編程技術(shù),利用MFC類與Inventor API相關(guān)技術(shù),達(dá)到了數(shù)據(jù)庫(kù)、客戶端之間的融合。
參數(shù)計(jì)算模塊:此模塊是數(shù)字化設(shè)計(jì)核心內(nèi)容之一,根據(jù)用戶界面?zhèn)鬟f的用戶參數(shù)(合同參數(shù)),基于各零部件的參數(shù)關(guān)聯(lián)及相關(guān)準(zhǔn)則進(jìn)行驅(qū)動(dòng)參數(shù)的計(jì)算,為驅(qū)動(dòng)模型的生成提供數(shù)據(jù)支持。
模型驅(qū)動(dòng)模塊:該模塊亦是數(shù)字化設(shè)計(jì)核心內(nèi)容之一,客戶應(yīng)用程序在Inventor API和ADO.NET等技術(shù)支撐下,從數(shù)據(jù)庫(kù)獲取相應(yīng)參數(shù)并返回給Inventor IStyler界面,同時(shí)參數(shù)又傳遞到模型驅(qū)動(dòng)程序,進(jìn)而驅(qū)動(dòng)模型生成。
升船機(jī)主提升機(jī)構(gòu)數(shù)字化設(shè)計(jì)的功能邏輯結(jié)構(gòu)的確定,明確了數(shù)字化開發(fā)設(shè)計(jì)的邏輯思想,指明了開發(fā)方向。下一步基于此思想進(jìn)行系統(tǒng)運(yùn)行框架的搭建,使各開發(fā)層次間有明確的運(yùn)行步驟,保證數(shù)字化設(shè)計(jì)系統(tǒng)有序高效地運(yùn)行。
首先,根據(jù)客戶(合同書)提供的主要參數(shù)信息確定總體布局形式,同時(shí)檢索以往項(xiàng)目中是否有同型實(shí)例可用,若有,則可直接借用,否則進(jìn)行參數(shù)化設(shè)計(jì);其次,根據(jù)總體布局及主要參數(shù)信息確定各劃分模塊的數(shù)據(jù)信息,并依據(jù)參數(shù)關(guān)聯(lián)方程計(jì)算出零部件其他尺寸參數(shù);再次,基于各參數(shù)的信息選取零部件模板,并將此作為所求新模型的驅(qū)動(dòng)基礎(chǔ);最后,基于具體的參數(shù)信息,客戶端通過(guò)程序驅(qū)動(dòng)各模板生成所需的零部件,并按照總體布局形式完成替換裝配。系統(tǒng)的運(yùn)行框架如圖7所示。
圖7 系統(tǒng)運(yùn)行框架圖
數(shù)字化系統(tǒng)的開發(fā)目標(biāo)是根據(jù)用戶(合同書)主要參數(shù),通過(guò)人機(jī)交互界面,實(shí)現(xiàn)模型實(shí)體的自動(dòng)生成,得到所需的產(chǎn)品。依據(jù)上節(jié)數(shù)字化設(shè)計(jì)系統(tǒng)的功能邏輯框架與運(yùn)行框架原理,開發(fā)數(shù)字化設(shè)計(jì)軟件平臺(tái)。軟件體系結(jié)構(gòu)簡(jiǎn)圖如圖8所示。
圖8 軟件結(jié)構(gòu)體系
系統(tǒng)軟件界面按鈕部分:負(fù)責(zé)在Visual Studio 2015集成開發(fā)環(huán)境中加載進(jìn)合同信息、結(jié)構(gòu)形式、總體布局方案及各模塊零部件參數(shù)化界面的按鈕,該功能通過(guò)Add-In插件的方式,以菜單欄和工具條的形式加載。
數(shù)據(jù)庫(kù)部分:依據(jù)模塊劃分的層次錄入各模塊零部件基礎(chǔ)數(shù)據(jù)信息,為第三方軟件提供數(shù)據(jù)的讀取、存儲(chǔ)、刪除等交流功能,是模型參數(shù)化驅(qū)動(dòng)的數(shù)據(jù)基礎(chǔ)。
靶向模板部分:某模塊零部件型號(hào)選定后,根據(jù)數(shù)據(jù)庫(kù)里此零部件基礎(chǔ)數(shù)據(jù)信息,在模板庫(kù)里找到相應(yīng)的同型號(hào)模板并打開。
模型驅(qū)動(dòng)部分:通過(guò)數(shù)據(jù)庫(kù)獲取各模塊零部件參數(shù)并基于關(guān)聯(lián)參數(shù)的對(duì)應(yīng)關(guān)系,將其賦予靶向模板,利用Inventor的實(shí)體造型部分,驅(qū)動(dòng)模板生成新的模型并命名及存儲(chǔ)。
以Visual Studio 2015集成開發(fā)環(huán)境作為軟件開發(fā)平臺(tái),采用C#語(yǔ)言進(jìn)行應(yīng)用程序的編寫,通過(guò)Inventor API技術(shù)與Inventor內(nèi)部程序進(jìn)行交流,通過(guò)ADO.NET技術(shù)訪問(wèn)數(shù)據(jù)庫(kù)信息,最終實(shí)現(xiàn)升船機(jī)主提升機(jī)構(gòu)數(shù)字化設(shè)計(jì)系統(tǒng)的開發(fā)。
模板庫(kù)是系統(tǒng)驅(qū)動(dòng)模型生成的基礎(chǔ)源頭,與升船機(jī)主提升機(jī)構(gòu)各模塊的零部件一一對(duì)應(yīng),建立零部件所有類型的模板,使數(shù)據(jù)庫(kù)讀取的參數(shù)信息能對(duì)應(yīng)到相應(yīng)模板上,從而保證模型驅(qū)動(dòng)的順利進(jìn)行[14]。這一過(guò)程工作量龐大且程序復(fù)雜,對(duì)每個(gè)零部件的建模應(yīng)確定明確的關(guān)鍵幾何參數(shù)與非關(guān)鍵幾何參數(shù),并建立二者間的對(duì)應(yīng)關(guān)系,使關(guān)鍵幾何參數(shù)的改變帶動(dòng)非關(guān)鍵幾何參數(shù)的相應(yīng)改變,這一過(guò)程完成后要通過(guò)實(shí)際改變關(guān)鍵幾何參數(shù)去驗(yàn)證,保證模板庫(kù)對(duì)應(yīng)的準(zhǔn)確性[15]。以卷筒為例說(shuō)明零件模板庫(kù)建立的注意事項(xiàng):卷筒組因提升繩、平衡繩的數(shù)量不同劃分為三提升繩卷筒及四提升繩卷筒兩大類,盡管提升繩的數(shù)量可用同一參數(shù)進(jìn)行表示,但每類模型壓板孔的定位尺寸很難確定,導(dǎo)致參數(shù)化實(shí)施困難。故將三提升繩卷筒及四提升繩卷筒劃分為兩類模板,使其容易選型及正確參數(shù)化建模,為模型力學(xué)分析的無(wú)縫銜接帶來(lái)方便。
升船機(jī)主提升機(jī)構(gòu)數(shù)字化設(shè)計(jì)采用SQL Sever作為各模塊零部件的數(shù)據(jù)庫(kù)管理系統(tǒng),為前臺(tái)程序參數(shù)的傳遞及后臺(tái)模型尺寸的驅(qū)動(dòng)提供數(shù)據(jù)支持。SQL Sever數(shù)據(jù)庫(kù)管理系統(tǒng)具有支持多客戶訪問(wèn)的編程接口,客戶不僅可對(duì)其中數(shù)據(jù)進(jìn)行訪問(wèn),還可對(duì)數(shù)據(jù)進(jìn)行查詢、刪除及插入等編輯操作,具有良好的圖形用戶界面,方便數(shù)據(jù)的可視化管理。升船機(jī)主提升機(jī)構(gòu)具有繁多的零部件數(shù)據(jù)信息,在Inventor二次開發(fā)過(guò)程中將數(shù)據(jù)信息獨(dú)立出來(lái)進(jìn)行分類分層次管理并借助SQL Sever數(shù)據(jù)庫(kù)管理系統(tǒng)的強(qiáng)大功能,可實(shí)現(xiàn)數(shù)據(jù)的高效利用,便于數(shù)據(jù)的即時(shí)管理。
升船機(jī)主提升機(jī)構(gòu)含有卷筒組、鋼絲繩模塊、減速器模塊、電機(jī)組、滑輪組、制動(dòng)器模塊、聯(lián)軸器模塊及其他標(biāo)件八大模塊,不同模塊下的同一零件含有多種系列,在數(shù)據(jù)庫(kù)中對(duì)應(yīng)每種系列均需建立一張數(shù)據(jù)表。以自動(dòng)盤模塊的各系列為例展示SQL Sever數(shù)據(jù)模型樹及數(shù)據(jù)表明細(xì)如圖9所示。
圖9 SQL Sever中制動(dòng)盤模塊系列型號(hào)
打開Visual Studio 2015集成開發(fā)環(huán)境下編寫的應(yīng)用程序,如圖10所示,展示的是快速設(shè)計(jì)系統(tǒng)功能下的應(yīng)用程序界面,同樣地在卷筒計(jì)算、SQL_search、參數(shù)化與裝配功能模塊下也對(duì)應(yīng)著完整的開發(fā)程序。點(diǎn)擊啟動(dòng),則開始執(zhí)行設(shè)計(jì)程序,如圖所示,首先進(jìn)入登錄界面,設(shè)置此界面是保證信息安全性的基礎(chǔ)條件之一,只有在正確的用戶名及密碼輸入的情況下才可繼續(xù)執(zhí)行程序進(jìn)入設(shè)計(jì)界面。
圖10 系統(tǒng)入口界面
登錄成功后方可開始新項(xiàng)目的設(shè)計(jì),按照開發(fā)人員習(xí)慣性設(shè)計(jì)流程,在設(shè)計(jì)前需確定下來(lái)新項(xiàng)目的名稱、產(chǎn)品編號(hào)、設(shè)計(jì)部門、參與人員、交付單位等明細(xì),并設(shè)置項(xiàng)目存儲(chǔ)路徑以便于項(xiàng)目的進(jìn)一步管理,如圖11所示,為保證必要信息的填寫完整,設(shè)定了約束提醒,信息填寫完備方可進(jìn)入下一步流程。
圖11 新項(xiàng)目錄入界面
主要參數(shù)及結(jié)構(gòu)總布局界面的實(shí)現(xiàn):上節(jié)中,項(xiàng)目明細(xì)界面預(yù)留出了界面跳轉(zhuǎn)按鈕“合同信息”,點(diǎn)擊后則進(jìn)入合同信息錄入界面,即主參數(shù)(合同參數(shù))的輸入窗口。如圖12左圖所示,為方便工程人員有條理性地錄入?yún)?shù),對(duì)參數(shù)類別進(jìn)行了界面分層,與相對(duì)位置信息有關(guān)的參數(shù)歸為一層次,與載荷信息有關(guān)的參數(shù)歸為另一層次,這一界面所有數(shù)據(jù)的錄入均為合同信息所提供。保存合同信息錄入的數(shù)據(jù)后,界面自動(dòng)跳轉(zhuǎn)至結(jié)構(gòu)總布局界面,如圖12右圖所示,此處將卷筒模塊、減速器模塊、電機(jī)組、滑輪組、制動(dòng)器模塊等需求數(shù)量或基本形式進(jìn)行錄入,以確定結(jié)構(gòu)基本布局,為接下來(lái)各零部件信息的細(xì)化及相關(guān)參數(shù)的計(jì)算提供依據(jù)。
圖12 主要參數(shù)錄入界面
各模塊零部件信息錄入及相關(guān)參數(shù)計(jì)算界面:依據(jù)升船機(jī)主提升機(jī)構(gòu)合同的基本信息及結(jié)構(gòu)布局的設(shè)定,進(jìn)行每一模塊的詳細(xì)信息錄入,即確定主要參數(shù)和關(guān)聯(lián)參數(shù)的計(jì)算,各模塊以快捷菜單形式集中排列于界面上端,下一模塊的信息錄入界面會(huì)在上一模塊錄入完成后自動(dòng)跳轉(zhuǎn),直至驅(qū)動(dòng)界面。首先進(jìn)行鋼絲繩信息的錄入,可根據(jù)其直徑、材料、最大拉力等多種特性進(jìn)行選型;其次依次進(jìn)行電機(jī)、減速器、制動(dòng)器及聯(lián)軸器的信息錄入;再次依據(jù)相關(guān)信息進(jìn)行卷筒厚度的計(jì)算及選型,并確定滑輪組的動(dòng)定信息;最后進(jìn)入驅(qū)動(dòng)界面進(jìn)行模型驅(qū)動(dòng)前的相對(duì)位置信息調(diào)整。如圖13所示,展示出部分模塊信息錄入時(shí)的界面。
圖13 模塊信息錄入界面
待各模塊主要參數(shù)信息錄入及相關(guān)計(jì)算完成后,依據(jù)自上而下的設(shè)計(jì)流程進(jìn)行模型的驅(qū)動(dòng)生成,如圖14所示,展示出總布局草圖與模型生成的界面。
圖14 模型驅(qū)動(dòng)生成界面
針對(duì)多焊接件大型裝配體在生產(chǎn)制造過(guò)程中的共性特點(diǎn),以升船機(jī)主提升機(jī)構(gòu)為研究對(duì)象,搭建起數(shù)字化設(shè)計(jì)平臺(tái),得出:
①自上而下的設(shè)計(jì)方法及模塊分組劃分使焊接零部件繁多的升船機(jī)主提升機(jī)構(gòu)易于歸類有序管理、層次分明;
②焊接零部件模板庫(kù)的建立工作量大、信息量多,采用SQL Sever數(shù)據(jù)庫(kù)管理系統(tǒng)將各模塊零部件信息及關(guān)聯(lián)參數(shù)信息獨(dú)立出來(lái)統(tǒng)一管理,可正確高效地在驅(qū)動(dòng)端與響應(yīng)端之間調(diào)用;
③在Inventor API技術(shù)、COM開發(fā)組件技術(shù)及ADO.NET技術(shù)支撐下可高效靈活地在程序驅(qū)動(dòng)端、軟件響應(yīng)端及客戶數(shù)據(jù)端之間建立互聯(lián)互通路徑;
④升船機(jī)主提升機(jī)構(gòu)數(shù)字化設(shè)計(jì)系統(tǒng)可很好地進(jìn)行運(yùn)行,以顯示化界面為主要信息錄入或計(jì)算向?qū)В敝硫?qū)動(dòng)模型的生成,體現(xiàn)出系統(tǒng)選型計(jì)算及模型驅(qū)動(dòng)的高效性。
組合機(jī)床與自動(dòng)化加工技術(shù)2019年3期