proe技術(shù)-炮用發(fā)射藥筒快速設(shè)計

2013-05-18  by:廣州有限元分析、培訓(xùn)中心-1CAE.COM  來源:仿真在線

CAD世界網(wǎng)
關(guān)鍵字:注冊文件 藥筒 特征 快速建模
本文介紹了以C,C++語言為工具,在proeNGINEER上利用Pro/TOOLKIT進(jìn)行藥筒快速建模二次開發(fā)的方法,并給出了藥筒快速建??焖僭O(shè)計應(yīng)用實(shí)例。

1 引言 
  
傳統(tǒng)的藥筒設(shè)計是一個相當(dāng)煩瑣的過程,設(shè)計人員被動地往返于公式和手冊之間,借助計算器一點(diǎn)一點(diǎn)地計算。這當(dāng)中有任何失誤都必須從頭再來,即使計算過程中沒有任何失誤,當(dāng)計算結(jié)果不合適時,一切也必須從頭再來。一個熟練的設(shè)計人員,在藥筒設(shè)計過程中,簡單的計算一遍就需要一個星期以上時間。如何使這一設(shè)計過程變的簡單、直觀,對設(shè)計人員來說十分迫切。針對這一問題,本文給出了基于proeNGINEER快速建模并結(jié)合炮用發(fā)射藥筒理論設(shè)計的約束條件,給出了快速設(shè)計的方法及實(shí)例。
  
    2 炮用發(fā)射藥筒結(jié)構(gòu)分析及建模的約束方程 
  
藥筒的設(shè)計與火炮、彈丸及裝藥設(shè)計密切相關(guān)。本文以配制式火炮為例。藥筒的設(shè)計主要受藥室形狀及彈丸結(jié)構(gòu)限制[1]。
   

proe技術(shù)-炮用發(fā)射藥筒快速設(shè)計proe應(yīng)用技術(shù)圖片圖片1
    圖 1 火炮藥室結(jié)構(gòu)示意圖

   
    主要結(jié)構(gòu)尺寸計算公式如下:
  
    f1 : Dk=Dd-2U0k f2 : Lk=(0.20 ~ 0.30)d f3 : d k=Dk-2tk
    f4 : Dy=Dj f7 : Dj=Da-2U0j f8 : Ly=La
    f9 : td=(0.06 ~ 0.15)Dj f10 : ty=Sp-x0
   
    式中:
   
    Dk-筒口部外徑; U0k-口部初始間隙;
    dk-口部內(nèi)徑; la -接際部初始間隙;
    Dj-接際部直徑; Lk-口部長度
    U0j-接際部初始間隙; Ly-筒體外部長度
    td-底部厚度; ty.-底緣厚度;
    Sp-炮栓鏡面至藥室尾端面距離; x0-藥筒地平面與栓體鏡面的初始間隙; 
   
這些方程中共有12個已知參數(shù)(Dd、U0k、d、Dj、U0x、lb、la、Da 、U0j 、La、Sp、x0)和8個未知參數(shù)(Dk、dk、Dy、Dj、Ly、td、ty、Lk),已知參數(shù)由設(shè)計者給定。當(dāng)改變了已知參數(shù)時未知參數(shù)也隨之改變。 
   
可以通過約束圖利用圖解法解出未知變量[2]。藥筒的結(jié)構(gòu)尺寸示意圖如圖3所示。
    

proe技術(shù)-炮用發(fā)射藥筒快速設(shè)計proe技術(shù)圖片2
    圖2 方程約束網(wǎng)絡(luò)圖
   

proe技術(shù)-炮用發(fā)射藥筒快速設(shè)計proe技術(shù)圖片3
    圖3 藥筒的結(jié)構(gòu)尺寸示意圖

   
    3 快速建模實(shí)現(xiàn)方法 
  
快速建模就是通過輸入?yún)?shù),由proeNGINEER系統(tǒng)快速產(chǎn)生模型的過程,模型的相關(guān)屬性也可自動給出。proeNGINEER提供了強(qiáng)大的用戶二次開發(fā)程序包Pro/Toolkit,通過它可以直接對proeNGINEER的數(shù)據(jù)庫進(jìn)行操作。本文即以Pro/Toolkit為開發(fā)工具,實(shí)現(xiàn)了藥筒的快速設(shè)計與建模。proeNGINEER的快速建模二次開發(fā)包括以下幾部分[3]。
  
    3.1 用戶接口 
   
用戶接口是人機(jī)交互的界面,它包括菜單及菜單文件兩部分。菜單文件擴(kuò)展名為*.mnu或*.aux。*.mnu菜單完全獨(dú)立于已有菜單,*.aux則附加于已有菜單。菜單文件有固定格式,每組數(shù)據(jù)分三行,每一個菜單按鈕對應(yīng)一組數(shù)據(jù)。菜單文件為純文本文件。
   
    3.2 信息文件 
   
信息文件包括了類型無關(guān)菜單以及數(shù)據(jù)輸入提示等所有文本信息,它和菜單文件一樣,也是使用表單的形式,每四行為一組。使用表結(jié)構(gòu)的好處是當(dāng)需要改動程序顯示時,可以只改動信息文件,而不必改動原程序。
   
    3.3 程序接口
   
    在Pro/Toolkit中,其函數(shù)結(jié)構(gòu)一般如下:
   
    User_Appone() { } 用戶功能函數(shù)
    User_Apptwo() { }
    ......
    User_initialize() { ...... } 程序入口
    User_terminate() { ...... } 程序出口
   
    其中,入口函數(shù)和出口函數(shù)是必須的,其他函數(shù)則是用戶定義函數(shù),用以實(shí)現(xiàn)一定的功能。

3.4 注冊文件 
   
注冊文件用以指明程序運(yùn)行模式、資源位置以及程序運(yùn)行版本等。其中,運(yùn)行方式包括多線程和動態(tài)連接庫兩種。第一種方法的好處是調(diào)試比較容易。第二種方法的優(yōu)點(diǎn)是運(yùn)行速度較快,生成的文件比較小。 
   
3.5 編譯平臺 
   
程序的編譯需要第三方編譯平臺,如TC、Mircosoft C等。選用了Mircosoft公司的Visual C++ 6.0作為編譯平臺。利用Visual C++ 6.0的強(qiáng)大功能使得數(shù)據(jù)管理方便,調(diào)試輕松直觀[4]。 
   
4 藥筒的快速建模
   
    (1)在參數(shù)輸入方面,使用了菜單結(jié)合對話框的方式,參數(shù)輸入方便直觀。菜單結(jié)構(gòu)如圖4所示。Yaotong Design是在proeNGINEER的Part菜單上添加的系統(tǒng)菜單,這樣既可以實(shí)現(xiàn)用戶特定功能,又可以利用proeNGINEER平臺的強(qiáng)大功能,方便用戶設(shè)計。在模型的實(shí)現(xiàn)方面,采用了基于UDF的二次開發(fā)技術(shù),可以顯著地降低開發(fā)的工作量,提高開發(fā)靈活性。
   
    圖4 藥筒設(shè)計菜單系統(tǒng)
   
(2)模型的接口程序和實(shí)現(xiàn)程序。以下為藥筒快速建模程序入口和出口,它注冊了菜單文件以及響應(yīng)函數(shù)。
   
    user_initialize()
    { int menu_id ,err;
    ProMenuFileRegister("PART","part. mnu",&menu_id);
    ProMenuAuxfileRegister("PART","part.aux",&menu_id);
    err=ProMenubuttonActionSet("part","_YaotongDesign",(ProMenubuttonAction)UserYaotongSystem,NULL,0);
    return(0); }
    void user_terminate(){} ;
   
    以下為藥筒建模實(shí)現(xiàn)程序,它定義了UDF文件及驅(qū)動參數(shù)等。
   
    UserYaotongCreate(){ ......
    ProStringToWstring(data.name,"yaotongudf.gph"); 指定UDF文件
    data.n_var_dims=15;
    data.var_dims=(Pro_udf_var_dim*)calloc(15,sizeof(Pro_udf_var_dim));
    ProStringToWstring(data.var_dims[0].name,"YTJ_zg"); 變量賦值
    data.var_dims[0].type=PROUDFVAR_DIM;
    data.var_dims[0].value=_YTJ_zg;
    ......
    data.n_references=0; 指定參考基準(zhǔn)
    data.dependency=PROUDFDEP_INDEPENDENT; 指定模型獨(dú)立性
    prodb_create_group(p_model,&data,NULL,NULL,0); 創(chuàng)建模型
    ProWindowRepaint(PRO_VALUE_UNUSED); 顯示模型
    free(data.var_dims);
    return(0); }
   
    通過以上方法產(chǎn)生的模型如圖5所示。
   

proe技術(shù)-炮用發(fā)射藥筒快速設(shè)計proe技術(shù)圖片4
    圖5 藥筒實(shí)體模型

proe技術(shù)-炮用發(fā)射藥筒快速設(shè)計proe技術(shù)圖片5
    圖6 藥筒幾何參數(shù)輸入界面

    
在藥筒模型生成以后,可以通過以下兩種方法修改編輯藥筒的尺寸:(1)可以直接用鼠標(biāo)雙擊需要修改的特征,選中需要修改的尺寸即可進(jìn)行交互式尺寸修改和編輯。修改后的效果可以迅速從模型上反映出來。(2)通過幾何參數(shù)輸入對話框輸入要修改結(jié)構(gòu)的尺寸數(shù)值來完成對尺寸的修改。參數(shù)輸入對話框如圖6所示,直接輸入需要修改參數(shù)的新數(shù)值即可。 
   
5 結(jié)束語 
   
利用快速建模技術(shù),可以大幅度提高設(shè)計效率,減輕設(shè)計人員的勞動強(qiáng)度,縮短產(chǎn)品設(shè)計周期,可使產(chǎn)品的設(shè)計變的直觀、輕松,可在產(chǎn)品設(shè)計的初期易于發(fā)現(xiàn)設(shè)計缺陷。產(chǎn)品可以方便地通過PDM系統(tǒng)進(jìn)行管理。


開放分享:優(yōu)質(zhì)有限元技術(shù)文章,助你自學(xué)成才

相關(guān)標(biāo)簽搜索:proe技術(shù)-炮用發(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)動仿真 

編輯
在線報名:
  • 客服在線請直接聯(lián)系我們的客服,您也可以通過下面的方式進(jìn)行在線報名,我們會及時給您回復(fù)電話,謝謝!
驗(yàn)證碼

全國服務(wù)熱線

1358-032-9919

廣州公司:
廣州市環(huán)市中路306號金鷹大廈3800
電話:13580329919
          135-8032-9919
培訓(xùn)QQ咨詢:點(diǎn)擊咨詢 點(diǎn)擊咨詢
項目QQ咨詢:點(diǎn)擊咨詢
email:kf@1cae.com