proe二次開發(fā)的叉車門架數(shù)字化虛擬制造
2013-07-27 by:廣州有限元培訓(xùn)實(shí)踐中心 來源:仿真在線
proe二次開發(fā)的叉車門架數(shù)字化虛擬制造
隨著計(jì)算機(jī)技術(shù)的快速發(fā)展,輔助設(shè)計(jì)、虛擬制造、數(shù)字樣機(jī)等各種數(shù)字化工程得以大量運(yùn)用,極大地促進(jìn)了企業(yè)產(chǎn)品技術(shù)性能的提高,縮短了更新?lián)Q代的周期。但各種通用的CAD軟件在完成從產(chǎn)品的設(shè)計(jì)計(jì)算到結(jié)構(gòu)圖形的全部數(shù)字化過程中,需要設(shè)計(jì)人員熟悉掌握相關(guān)軟件的運(yùn)用技巧,甚至要通過自行編程才能完成有關(guān)計(jì)算任務(wù)。即使這樣費(fèi)力地完成設(shè)計(jì),而一旦發(fā)現(xiàn)某環(huán)節(jié)出錯(cuò),修改時(shí)又涉及裝配體中諸多因素而產(chǎn)生幾何關(guān)系失調(diào)問題,這樣繁雜的操作環(huán)境極大制約了技術(shù)人員的使用。因此針對具體產(chǎn)品通過二次開發(fā)實(shí)現(xiàn)專業(yè)級的CAD應(yīng)用十分必要。本文闡述以proe為平臺、VC++為開發(fā)工具、Pro/TOOLKIT工具包作橋梁的叉車門架變量化設(shè)計(jì)計(jì)算和三維虛擬制造的全程數(shù)字化解決方案,以推動和提高工程車輛制造行業(yè)產(chǎn)品開發(fā)設(shè)計(jì)CAD方法的應(yīng)用水平。
1 叉車門架二次開發(fā)的思路與步驟
1.1基本思路
Pro/TOOLKIT二次開發(fā)技術(shù)基于特征數(shù)據(jù)庫的編程。每種特征對應(yīng)1個(gè)元素樹,元素樹中定義特征的類型、參照信息、草繪截面、尺寸信息、位置關(guān)系等屬性。完全通過編程定義幾何特征構(gòu)建三維模型,工作量大且較困難,因此一般先建立實(shí)體三維模型作模板,然后對其形成的特征庫進(jìn)行添加、刪除、修改等方式的讀寫訪問,以獲取新的滿足用戶要求的模型。本文以proe交互式圖形系統(tǒng)為支撐建立門架的三維構(gòu)造實(shí)體模型,依托VC++程序開發(fā)系統(tǒng),通過調(diào)Pro/TOOLKIT提供的功能函數(shù),實(shí)現(xiàn)對門架結(jié)構(gòu)特征數(shù)據(jù)庫的操作,完成開發(fā)集數(shù)字化設(shè)計(jì)、元件裝配、結(jié)構(gòu)強(qiáng)度剛度的有限元分析為一體的門架CAE軟件系統(tǒng)。
1.2特征建模
叉車門架是叉車叉取貨物的起升工作裝置,各種叉車門架的基本構(gòu)造都是相似的,而且以垂直中心面對稱。這些構(gòu)造方面的特性分析顯示,叉車門架系統(tǒng)實(shí)現(xiàn)CAD變量化系列設(shè)計(jì)有許多可以利用的構(gòu)造特征要素,因此交互建立門架模型時(shí)要合理規(guī)劃“特征”元組,以方便運(yùn)行程序的操縱控制。
產(chǎn)品設(shè)計(jì)中的“特征”是指結(jié)構(gòu)組成的I組具有特定含義的圖元,表示產(chǎn)品一定的幾何構(gòu)型。依據(jù)形成實(shí)體的方式方法、位置關(guān)系等特點(diǎn),通常分為拉伸、旋轉(zhuǎn)、掃描形成的基本實(shí)體特征,基于實(shí)體上的孔、倒角、筋等附屬特征。利用實(shí)體的對稱性通過復(fù)制、鏡像、陣列得到的圖元編輯特征,以及反映圖元位置的基準(zhǔn)特征,其間按先后的依附性又可建立特征的父子關(guān)聯(lián)關(guān)系。1個(gè)三維實(shí)體模型就是由數(shù)量眾多的特征以“搭積木”的方式組織起來,因此特征是模型構(gòu)成的基本單位,模型創(chuàng)建過程也就是按一定順序依次添加各類特征的過程。這種特征建模的思想為操作修改和管理實(shí)體結(jié)構(gòu)的圖元提供了極大的方便。
合理有效地創(chuàng)建“特征”圖元,并盡可能減少構(gòu)成整個(gè)模型的特征數(shù)量,往往關(guān)系到二次開發(fā)系統(tǒng)程序運(yùn)行的穩(wěn)定性。減少特征數(shù)量具有以下優(yōu)點(diǎn):
(1)提高模型重繪速度再生模型時(shí)需要根據(jù)特征創(chuàng)建的先后順序重繪各個(gè)特征。因此,特征越少再生重繪速度越快。
(2)模型數(shù)據(jù)庫文件減小特征少,模型數(shù)據(jù)庫文件相對較小,便于文件的存儲和訪問。
(3)方便特征的查詢與修改特征越少,模型的層次結(jié)構(gòu)更清晰,模型內(nèi)部特征依存的關(guān)系越簡單。這有利于對模型特征的更新編輯,同時(shí)能較大程度降低模型再生失敗的幾率。因此在使用proe進(jìn)行三維實(shí)體建模時(shí),一般應(yīng)在滿足結(jié)構(gòu)設(shè)計(jì)要求的前提下盡量減少模型中特征的數(shù)量,方法是:
1)分析模型,選擇適宜的基準(zhǔn),將多個(gè)簡單特征的草繪截面合并為1個(gè)整體閉合曲面,從而盡可能使復(fù)雜實(shí)體特征通過創(chuàng)建完善的草繪截面一次拉伸形成,以減少特征數(shù)量。
2)一次特征創(chuàng)建中盡量合并參數(shù)相同的圖元為1個(gè)特征或利用約束條件合理建立圖元參數(shù)的依存關(guān)系。如在創(chuàng)建倒圓角時(shí),如果一些棱邊處的圓角半徑相同,則應(yīng)將其歸并為1個(gè)特征。
3)針對結(jié)構(gòu)幾何形狀的對稱性與重復(fù)性,使用復(fù)制、陣列和鏡像等方法創(chuàng)建特征。叉車門架是涉及眾多零部件的裝配系統(tǒng),如果零件的尺寸發(fā)生改變,那么它在裝配體中與其他零件間的位置關(guān)系必然發(fā)生改變,裝配體模型中的尺寸鏈也需要作相應(yīng)修改,這是數(shù)字化虛擬裝配設(shè)計(jì)中較難處理的問題之一。
由于叉車的內(nèi)外門架、叉架、貨叉、起升與傾斜液壓缸的布置均按其垂直中心面對稱布置,因此建模時(shí)須結(jié)合編程控制的需求分析,根據(jù)門架變化設(shè)計(jì)的需求,充分利用這些特性規(guī)劃零部件依存的尺寸關(guān)系鏈,使更改設(shè)計(jì)后的模型能保持協(xié)調(diào)一致性,從而降低編程的難度,提高程序運(yùn)行的質(zhì)量。所建立的門架構(gòu)造模板如圖l所示。
2 關(guān)鍵函數(shù)與程序構(gòu)造
proe圖形數(shù)據(jù)結(jié)構(gòu)不同于VC++規(guī)定的格式,不能用c方法直接訪問,需要通過Pro/TOOL廣KIT提供的C函數(shù)來訪問。程序設(shè)計(jì)者需要建立符合proe環(huán)境運(yùn)行要求的接口程序,并按功能需求設(shè)計(jì)應(yīng)用程序主體代碼。程序結(jié)構(gòu)如下:
#include”stdafx.h”
//引入Pro/TOOLKIT的頭文件
#include”ProMenu.h”
#include”ProUtil.h”
#include”ProMenubar.h”
#include”ProWindows.h”
//用戶自定義函數(shù)
int ShowMessageTest();//“f-j架設(shè)計(jì)”菜單響應(yīng)函數(shù)
void ShowDrawing();//“三維圖修改”菜單響應(yīng)函數(shù)
CSWMJiaApp theApp;//應(yīng)用程序類聲明
//初始化接口函數(shù)
extern”C”int user_initialize()
{ProError status;
ProFileName message_file;
uiCmdCmdId cmd_id;
//添加菜單欄菜單“叉車設(shè)計(jì)”
status=ProMenubarMenuAdd(“叉車設(shè)計(jì)”,“叉車設(shè)計(jì)”,“Utilities”,PRO_B_TRUE,ProStringToWstring(message—file,“Message2.txt”));
//添加菜單項(xiàng)菜單動作函數(shù)ShowMessageTest:
status=ProCmdActionAdd(“ShowTest”,
(uiCmdCmdActFn)ShowMessageTest,uiCmdPrioDefauh,AccessDefauh,
PRO_B_TRUE,PRO_B_TRUE,&cmd_id);
//添加菜單按鈕“門架設(shè)計(jì)”:
status=ProMenubarmenuPushbuttonAdd(”叉車設(shè)計(jì)”,“門架設(shè)計(jì)”,“門架設(shè)計(jì)”,
“Active ShowMessageTest menu”,NULL。
PRO_B_TRUE,cmd—id,ProString,ToW—string(message_file,“Message2.txt”));
//添加動作函數(shù)ShowDrawing:
status=ProCmdActionAdd(“ShowDrawing”,(uiCmdCmdActFn)ShowDrawing分頁
uiCmdPrioDefauh.AccessDefault。PRO_B_TRUE,PRO_B_TRUE,&cmd—id);
......
retum status;
}
//應(yīng)用程序終止退出函數(shù)
extem“C”void user_terminate(1
{
AFX—MANAGE—STATE(AfxGetStaticModuleState());
//模式切換
if(sheetwindow!=NULL)
delete sheetwindow;//用戶填加的釋放動態(tài)內(nèi)存
....
}
函數(shù)user—initialize()是Pro//TOOLKIT應(yīng)用程序的初始化入口,其中大量調(diào)用的是用戶自定義或系統(tǒng)庫函數(shù),相當(dāng)于C中的主函數(shù)。任何同步模式的應(yīng)用程序要在proe系統(tǒng)中加載都必須包含該函數(shù);user—terminate()在終止Pro/TOOLKIT應(yīng)用程序時(shí)調(diào)用,相當(dāng)于C中的解析函數(shù)釋放動態(tài)內(nèi)存,也可以不執(zhí)行任何動作。這2個(gè)函數(shù)都放在VC++的應(yīng)用程序類中,格式固定不變。
3 應(yīng)用實(shí)例
創(chuàng)建叉車門架數(shù)字化設(shè)計(jì)系統(tǒng)的目的是將門架的初始設(shè)計(jì)計(jì)算,三維零件與裝配模型,強(qiáng)度、剛度的有限元分析等集成一體,實(shí)現(xiàn)快速化虛擬制造過程。圖2為主控制流程圖。以3 t叉車門架設(shè)計(jì)為例,輸入基本參數(shù),見圖3。按“確定”按鈕,進(jìn)入“選擇計(jì)算內(nèi)容”對話框,結(jié)果以文本文件形式保存,按照窗口提示分別選擇貨叉計(jì)算、叉架計(jì)算、門架計(jì)算,輸入貨叉、叉架、門架基本結(jié)構(gòu)數(shù)據(jù),系統(tǒng)初步確定零部件構(gòu)造與裝配尺寸大小,寫入繪圖數(shù)據(jù)文件中。
選擇主菜單“叉車設(shè)計(jì)”下的“修改三維圖形”進(jìn)入三維繪圖建模階段。這個(gè)階段首先從計(jì)算形成的數(shù)據(jù)文件中讀取參數(shù),用其置換所示門架模型模板中對應(yīng)的特征數(shù)據(jù)。門架模板模型創(chuàng)建的優(yōu)劣不僅影響特征數(shù)據(jù)的查詢,而且關(guān)系到模型尺寸鏈的正確性,也是門架二次開發(fā)成功與否的重要環(huán)節(jié)。為此在程序設(shè)計(jì)中除軟件自身嚴(yán)格的數(shù)據(jù)檢查外,還設(shè)計(jì)有人工修正數(shù)據(jù)的輸入窗,可以反復(fù)進(jìn)行“數(shù)據(jù)修改與模型生成”操作,直到結(jié)果滿意。按上述計(jì)算結(jié)果由圖1模板生成3 t門架模型。
通過proe與ANSYS的接口,將所建模型直接導(dǎo)入有限元模型完成結(jié)構(gòu)體的靜動力計(jì)算與機(jī)構(gòu)動態(tài)性能分析,得到貨叉應(yīng)力分布圖和內(nèi)門架立柱位移圖。有限元計(jì)算分析表明,設(shè)計(jì)結(jié)果可靠可行。
相關(guān)標(biāo)簽搜索:proe二次開發(fā)的叉車門架數(shù)字化虛擬制造 proe二次開發(fā)的叉車門架數(shù)字化虛擬制造 Fluent、CFX流體分析 HFSS電磁分析 Ansys培訓(xùn) Abaqus培訓(xùn) Autoform培訓(xùn) 有限元培訓(xùn) Solidworks培訓(xùn) UG模具培訓(xùn) PROE培訓(xùn) 運(yùn)動仿真