參數化設計技術讓產品的圖形和設計參數聯系起來,方便修改,大大提高了設計和繪圖效率,筆者提出以Solid Edge軟件為開發(fā)平臺,以Visual Basic語言為開發(fā)工具,結合數據庫技術,變量表技術,開發(fā)ZDY系列減速器的參數化設計建模原型系統。對設計系統的具體功能進行分析,通過不同的功能模塊滿足不同的設計要求。
1 Solid Edge二次開發(fā)方法
可以利用Solid Edge提供的多種二次開發(fā)方案,開發(fā)出滿足特定功能的應用,或直接將Solid Edge集成到用戶的應用程序中。Solid Edge=次開發(fā)常用兩種途徑:①在Solid Edge環(huán)境中直接采用Solid Edge數據;②利用COM技術來擴展Solid Edge功能。針對第2種途徑,Solid Edge軟件開發(fā)包提供了一系列COM接口,允許用VB或VC++開發(fā)應用程序,此時可使用Solid Edge的全部API(Application Programming Interface)應用程序接口,其包含了很多功能函數,可以方便設計人員直接通過編程語言訪問Solid Edge軟件,從而控制實體造型。
1.1 Solid Edge變量表技術
1.1.1 變量表的結構
Solid Edge變量表主要包含類型、名稱、值和公式四個部分。若在“零件”環(huán)境中創(chuàng)建一個零件,并選擇主菜單[工具]→[變量],則可得到該零件的變量表,如圖1所示為自由鍛齒輪坯體變量表。尺寸的變量類型即類型,具有屬性,不允許修改,如Dim、Var等等。參數化設計就是采用編程的方法,在程序中修改變量表中各變量的數值,獲得滿足要求的零件特征造型,但是對定義了公式的變量,則其數值是通過不能人工或編程修改的。公式的作用是通過一定的公式來約束變量的值,對空白公式單元的變量,其值獨立于其他變量,對定義了數學表達式的變量,其值則通過數學表達式計算獲得。如圖1中變量Ct的值由公式int(0.35*B)定義,因此變量B的取值決定了變量C1的值,故B為獨立變量,C1為非獨立變量。
自由鍛齒輪坯體的變量表,與其對應的結構如圖2(a)所示。如果將圖1變量表中的變量名齒寬B的值修改為100、輪轂寬L的值修改為110、輪轂孔徑d的值修改為65、鍵槽寬b1的值修改為12、鍵槽深t1的值修改為71,則與之對應的結構如圖2(b)所示。這種快捷的對零件造型的改動正是工程設計人員所希望得到的,也是參數化編程容易實現的。
圖1 自由鍛齒輪坯體變量表
圖2 變量裹法在自由鍛齒輪坯體中的應用
1.1.2 變量表的自動操作
為了實現Solid Edge中變量的自動操作,必須訪問變量集合(Variables)和變量對象(Variable)。變量集合有兩大功能:①創(chuàng)建和訪問變量對象:既可采用Add方法創(chuàng)建新的變量對象,也可以采用標準方法遍歷集合中的成員。由于變量集合中變量的基本單位采用是毫米,而在VB直接調用Solid Edge命令建模時的基本單位采用是米,當兩種方法同時使用時要注意數值轉換。②把尺寸作為變量:變量集合提供多種方法操作尺寸,并可以創(chuàng)建控制尺寸值的規(guī)則(公式)?梢杂袃煞N外部資源-VB和與之鏈接的Excel電子表格來驅動變量和尺寸的值。
用VB驅動變量和尺寸值的思路為:首先采用人機交互方式構建三維模型,并對控制變量進行合理設計:再由編寫的VB程序,按一定的方法查詢模型中的控制變量,通過改變控制變量的數值,達到更新三維模型的目的。該方法具有編程簡單,通用性好的特點。此方法的基本原理有3點:
1)對特征的信息用創(chuàng)建的一張數據表存儲。
2)檢索查取零件數據文件中的特征值,以記錄的形式創(chuàng)建數據表。
3)按照零件表的格式,生成滿足要求的記錄值并激活,則記錄中的值將自動輸入到零件模型數據中,達到以指定值更新零件模型的目的。
采用該原理時,可以通過Solid Edge提供的函數來實現零件與數據表的連接。
1.2 VB中調用Solid Edge直接建模
該方法是通過設計參數在VB程序中處理,自動調用Solid Edge創(chuàng)建零件的三維實體模型,或在已有三維零件模型的基礎上,修改有關設計參數并自動更新實體模型。幾乎能實現Solid Edge環(huán)境中可以交互操作完成的所有工作,因此能按編程者的意愿自動完成建模任務。該方法的基本原理包括以下3點:
1)根據特征創(chuàng)建其2D輪廓,并定義其尺寸與位置約束。
2)采用拉伸、旋轉、放樣或掃掠等方法對特征的2D輪廓進行操作,構建滿足要求的三維零件模型。
3)修改模型特征屬性或特征的2D輪廓可實現對零件模型的編輯。
1.2.1 創(chuàng)建三維零件模型
①PartDocument(零件環(huán)境)對象的獲取
為得到Solid Edge.Application根對象(一般用變量objApp保存該對象),可采用VB的2個函數GetObjectO或CreateObjectO,在程序中具體應調用哪個函數,則需要用條件語句來判斷是否啟動了Solid Edge系統;然后,通過專用函數來獲取Solid Edge的PartDocument對象(通常用變量objDoc保存該對象)。如圖3所示為該對象的層次關系。
圖3 對象的層次關系
②2D特征輪廓的創(chuàng)建
對特征的2D輪廓(或稱草圖輪廓),其創(chuàng)建的方法主要包含有兩步:先定義草圖所在平面,再在該平面上進行幾何圖形特征的添加。
③幾何圖形約束關系的建立
為了保持用不同幾何對象構成的特征輪廓位置關系的正確性,必須定義相應的位置約束。用幾何圖形特征創(chuàng)建的相似方法可對幾何對象定義位置約束:首先,創(chuàng)建Relations2d關系集合對象,然后調用其定義關系方法來創(chuàng)建幾何圖形的位置約束。如:為了使兩個對象首尾相連,可調用AddKeypoint關系方法使關鍵點相連。
④零件模型的創(chuàng)建
為了在特征2D輪廓基礎上創(chuàng)建基礎特征,可調用集合對象Models中的各種Add方法。如AddFiniteExtrudeProtrusion-創(chuàng)建拉伸特征,AddLoftedProtrusion-創(chuàng)建放樣特征等。
調用集合對象Models下級對象Model支持的方法,可以在基礎特征之上再創(chuàng)建其他特征。如用ExtrudeCutouts.AddFinite-創(chuàng)建拉伸除料特征,LoftedCutouts.AddFinite-放樣除料特征等。
1.2.2 修改三維零件模型
對參數化模塊創(chuàng)建的模型自動更新是按照用戶的輸入設計參數進行的,主要包括2方面的內容:修改2D特征輪廓與修改3D零件模型特征。
①2D特征輪廓的修改
調用幾何圖形對象的方法或重新置對象的屬性;通過更改尺寸進行修改:利用設計變量進行修改。
②3D零件特征的修改
主要是通過對3D零件特征的屬性值進行重新設置來達到其修改目的。具體方法為:首先獲取Model對象下層相應特征的集合對象,并獲得具體的零件特征,然后重新對該特征對象的屬性進行賦值。
2 小結
對Solid Edge中二次開發(fā)的變量表技術與VB中直接調用Solid Edge建模技術進行探討,并研究其在參數化建模的原理與方法。將設計計算與建模有機結合協同處理,可以大大提高設計效率,同時也能將設計缺陷盡可能降到最低。為ZDY型標準減速器的參數化系統開發(fā)奠定基礎。
核心關注:拓步ERP系統平臺是覆蓋了眾多的業(yè)務領域、行業(yè)應用,蘊涵了豐富的ERP管理思想,集成了ERP軟件業(yè)務管理理念,功能涉及供應鏈、成本、制造、CRM、HR等眾多業(yè)務領域的管理,全面涵蓋了企業(yè)關注ERP管理系統的核心領域,是眾多中小企業(yè)信息化建設首選的ERP管理軟件信賴品牌。
轉載請注明出處:拓步ERP資訊網http://www.ezxoed.cn/