999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于NX/Open API與Grip技術(shù)的漸開線內(nèi)齒輪開發(fā)

2011-07-10 06:57:00劉軍輝
制造業(yè)自動(dòng)化 2011年15期
關(guān)鍵詞:二次開發(fā)界面設(shè)計(jì)

劉軍輝

(河源職業(yè)技術(shù)學(xué)院,河源 517000)

0 引言

Siemens NX 是一款集工程設(shè)計(jì)、制造和分析的綜合3D軟件,在機(jī)械領(lǐng)域發(fā)揮著重要作用。針對(duì)漸開線內(nèi)齒輪的設(shè)計(jì),NX并沒有現(xiàn)成的齒輪模塊,需要在齒輪技術(shù)參數(shù)的分析與計(jì)算基礎(chǔ)上,運(yùn)用基本的建模功能對(duì)其進(jìn)行繁瑣的漸開線繪制、齒輪參數(shù)表達(dá)式的建立和實(shí)體造型。設(shè)計(jì)步驟較為復(fù)雜,效率底下,且在進(jìn)行參數(shù)設(shè)計(jì)時(shí)容易出現(xiàn)錯(cuò)誤。因此,開發(fā)出獨(dú)立的齒輪模塊非常有必要,本文以NX/Open API和Grip編程技術(shù)開發(fā)出一具體的漸開線內(nèi)齒輪模塊,使內(nèi)齒輪的設(shè)計(jì)很好的傳承NX的“參數(shù)化設(shè)計(jì)”思想,通過輸入內(nèi)齒輪的參數(shù)就可以自動(dòng)設(shè)計(jì)出來。

1 二次開發(fā)的整體思路及內(nèi)齒輪參數(shù)分析

圖1 內(nèi)齒輪開發(fā)流程

在漸開線內(nèi)齒輪的二次開發(fā)過程中,需要設(shè)計(jì)菜單、用戶對(duì)話框和Grip程序。菜單的設(shè)計(jì)采取MenuScript腳本進(jìn)行設(shè)計(jì),用戶對(duì)話框UI界面的設(shè)計(jì)則運(yùn)用UG/Open,把內(nèi)齒輪的Grip編譯程序grx導(dǎo)入VC++ 6.0進(jìn)行處理,最終得到所需的漸開線內(nèi)齒輪模塊DLL文件,具體流程如圖1所示。

在進(jìn)行漸開線內(nèi)齒輪開發(fā)之前,需要分析它的漸開線方程和參數(shù)。漸開線對(duì)于齒輪有著重要的作用,它是齒輪的工作齒廓,它保證了齒輪傳動(dòng)具有瞬時(shí)傳動(dòng)比恒定、傳力方向恒定、傳動(dòng)中心距具有可分性等特點(diǎn)[1]。漸開線的參數(shù)方程為:

漸開線內(nèi)齒輪參數(shù)定義如下:

其中,rb為基圓半徑,Φ為形成漸開線的旋轉(zhuǎn)角度,m為模數(shù),z為齒數(shù),ha為齒頂高系數(shù),c為徑向間隙系數(shù),d為分度圓直徑,db為基圓直徑,da為齒徑圓直徑,df為齒根圓直徑,α為壓力角,s為分度圓上齒輪的厚度。

2 二次開發(fā)關(guān)鍵技術(shù)流程

在開發(fā)之前,首先確定齒輪開發(fā)的目錄:E:gear,并且在此目錄下創(chuàng)建文件夾startup和application,前者存放菜單文件(.men)和模塊動(dòng)態(tài)鏈接庫(kù)文件(.dll),后者存放UI交互界面文件(.dlg)。

2.1 菜單設(shè)計(jì)

用于NX菜單的設(shè)計(jì)語(yǔ)言為MenuScript腳本,它能方便的對(duì)NX菜單進(jìn)行更改和增減,本文在NX的菜單“窗口”前加入一個(gè)菜單“內(nèi)齒輪設(shè)計(jì)”,菜單文件命名為:gear.men,內(nèi)容如下所示:

VERSION 120

EDIT UG_GATEWAY_MAIN_MENUBAR

AFTER UG_APPLICATION

CASCADE_BUTTON gear_menu

LABEL 內(nèi)齒輪設(shè)計(jì)

END_OF_AFTER

MENU gear_menu

BUTTON gear

LABEL基于UG/Open 與Grip漸開線內(nèi)齒輪的二次開發(fā)

ACTIONS gear.dlg

END_OF_MENU

其中g(shù)ear.dlg為后續(xù)設(shè)計(jì)的UI交互界面名稱,它在點(diǎn)擊菜單后彈出。在啟動(dòng)NX前,添加一個(gè)設(shè)置環(huán)境變量UGII_USER_DIR= E:gear,啟動(dòng)NX如圖2所示。

圖2 菜單設(shè)計(jì)

2.2 UI交互界面設(shè)計(jì)

在設(shè)計(jì)UI交互界面時(shí),利用NX集成的UIStyler進(jìn)行,它是一種所見即所得的模式,可以方便快速的設(shè)計(jì)出用戶對(duì)話框窗口。在界面設(shè)計(jì)前先分析漸開線內(nèi)齒輪的關(guān)鍵輸入數(shù)據(jù),通過這些數(shù)據(jù)可以唯一的決定內(nèi)齒輪規(guī)格。按照內(nèi)齒輪的參數(shù)要求,有如下數(shù)據(jù)需要選取:內(nèi)齒輪外徑、模數(shù)、齒數(shù)、壓力角、齒頂高系數(shù)、徑向間隙系數(shù)和齒寬,其中只有齒數(shù)為整數(shù)類型Interger,其余全部為Real類型。

啟動(dòng)NX進(jìn)入“樣式編輯器模式”,選擇“確定和取消”按鈕類型,加入上述輸入?yún)?shù)的元素,并對(duì)其輸入名稱,如圖3、4所示。

圖3 UI界面

圖4 UI屬性框

保存后形成3個(gè)文件:頭文件(.h)、C文件(.c)和界面文件(.dlg),在進(jìn)行界面與Grip程序數(shù)據(jù)互通時(shí)需要在C文件上編寫相應(yīng)的功能代碼,將dlg文件拷貝到startup文件下供菜單調(diào)用。

2.3 Grip建模程序設(shè)計(jì)

漸開線內(nèi)齒輪的設(shè)計(jì),先要繪制出基圓、分度圓、齒頂圓和齒根圓曲線,再依據(jù)參數(shù)決定的漸開線進(jìn)行齒廓曲線繪制,其余齒廓曲線采取環(huán)形陣列的方式完成,創(chuàng)建完曲線之后利用齒頂圓曲線進(jìn)行實(shí)體拉伸,用齒根圓曲線進(jìn)行實(shí)體剪切,最后用漸開線齒廓曲線進(jìn)行齒剪切成形。在對(duì)Grip進(jìn)行程序設(shè)計(jì)時(shí),為了防止內(nèi)齒輪生成失敗,必須加入條件判斷,限制不合理的數(shù)據(jù)輸入,如齒頂圓不能小于基圓。Grip關(guān)鍵代碼如下:

number/dd,m,z,a,ha,c,w $$ 定義齒輪參數(shù)數(shù)據(jù);

……

$$ 數(shù)據(jù)合理性判斷;

ifthen/da<db

$$ 漸開線曲線方程如上述漸開線內(nèi)齒輪參數(shù)的定義

$$ 運(yùn)用創(chuàng)建的曲線進(jìn)行實(shí)體建模

編寫完成后運(yùn)用NX自帶的編譯工具進(jìn)行編譯,得到內(nèi)齒輪建模文件gear.grx。

2.4 UI界面與Grip數(shù)據(jù)傳遞程序設(shè)計(jì)

啟動(dòng)VC++ 6.0,對(duì)其開發(fā)環(huán)境進(jìn)行設(shè)置,在【Project】/【Setting】的【Link】選項(xiàng)卡中添加:libufun.lib和libugopenint.lib兩個(gè)庫(kù)文件[2],把前面步形成的gear.c更改為c++程序:gear.cpp,并且把它與gear.h加載進(jìn)VC。在針對(duì)gear.cpp的程序編寫中,主要是編寫相應(yīng)“確定”按鈕的回調(diào)函數(shù)int GEAR_ok ( int dialog_id, void * client_data,UF_STYLER_item_value_type_p_t callback_data)。為了讀取UI界面數(shù)據(jù)程序的清晰,設(shè)計(jì)參數(shù)讀取函數(shù):void Read_para(int dialog_id),其中關(guān)鍵代碼如下:

……

UF_STYLER_item_value_type_t data[7];//data[7]為UI界面操作的結(jié)構(gòu)體數(shù)據(jù)類型;

……

data[0].item_attr=UF_STYLER_VALUE;//獲取UI整體界面屬性;

data[0].item_id= GEAR_D;//獲取內(nèi)齒輪外徑元素屬性;

UF_STYLER_ask_value(dialog_id,&data[0]);//獲取內(nèi)齒輪外徑數(shù)據(jù)并存入&data[0]中;

……

回調(diào)函數(shù)GEAR_ok通過調(diào)用Read_para建立UI界面與Grip 程序的數(shù)據(jù)傳遞,關(guān)鍵代碼如下:

完成gear.cpp的編程后,對(duì)其進(jìn)行編譯連接,生成對(duì)應(yīng)的gear.dll,將它拷貝到application文件夾下,啟動(dòng)NX,運(yùn)行結(jié)果如圖5所示。

圖5 內(nèi)齒輪

3 結(jié)束語(yǔ)

NX功能的強(qiáng)大,不僅僅體現(xiàn)在它本身內(nèi)置的一些功能,還體現(xiàn)在它對(duì)二次開發(fā)的強(qiáng)大支持上,只有充分的挖掘NX的潛能,定制具有專業(yè)特色領(lǐng)域的NX功能,才能更高效準(zhǔn)確的進(jìn)行設(shè)計(jì)。本文很好的闡述了運(yùn)用NX/Open API與Grip技術(shù)進(jìn)行漸開線的內(nèi)齒輪開發(fā),利用這種開發(fā)思路可以開發(fā)出其余種類的齒輪,為機(jī)械齒輪領(lǐng)域的NX參數(shù)化設(shè)計(jì)提供了條件。

[1] 張志強(qiáng),夏尊鳳,許焰.任意轉(zhuǎn)角位置的漸開線齒輪齒面參數(shù)方程的研究[J].機(jī)械設(shè)計(jì)與制造,2005,8(8):52-54.

[2] 夏天,吳立軍.UG二次開發(fā)技術(shù)基礎(chǔ)[M].電子工業(yè)出版社,2005:89-90.

猜你喜歡
二次開發(fā)界面設(shè)計(jì)
國(guó)企黨委前置研究的“四個(gè)界面”
淺談基于Revit平臺(tái)的二次開發(fā)
甘肅科技(2020年20期)2020-04-13 00:30:02
淺談Mastercam后處理器的二次開發(fā)
模具制造(2019年3期)2019-06-06 02:11:02
瞞天過海——仿生設(shè)計(jì)萌到家
基于FANUC PICTURE的虛擬軸坐標(biāo)顯示界面開發(fā)方法研究
西門子Easy Screen對(duì)倒棱機(jī)床界面二次開發(fā)
設(shè)計(jì)秀
海峽姐妹(2017年7期)2017-07-31 19:08:17
有種設(shè)計(jì)叫而專
Coco薇(2017年5期)2017-06-05 08:53:16
人機(jī)交互界面發(fā)展趨勢(shì)研究
手機(jī)界面中圖形符號(hào)的發(fā)展趨向
新聞傳播(2015年11期)2015-07-18 11:15:04
主站蜘蛛池模板: 国产一级做美女做受视频| 亚洲久悠悠色悠在线播放| 久久99精品久久久大学生| 黄色成年视频| 9cao视频精品| 久久人人97超碰人人澡爱香蕉 | 欧美特黄一级大黄录像| 日韩精品专区免费无码aⅴ| 久久www视频| 第一页亚洲| 91破解版在线亚洲| 欧美黄网在线| 色九九视频| 亚洲熟女偷拍| 99热这里只有精品在线播放| 欧美日韩午夜| 女人18毛片一级毛片在线 | 久久综合亚洲色一区二区三区| 免费无码又爽又黄又刺激网站| 萌白酱国产一区二区| 免费人成视网站在线不卡| 欧美在线网| www亚洲天堂| 欧美另类精品一区二区三区| 色婷婷综合在线| 国产精品久久久久久久久kt| 国产精品页| 五月婷婷丁香综合| 五月激情婷婷综合| 亚洲黄色成人| 在线不卡免费视频| 日韩欧美中文字幕一本 | 无码高潮喷水在线观看| 九九精品在线观看| 一级在线毛片| 99视频免费观看| av大片在线无码免费| 九色在线视频导航91| 日韩国产高清无码| 亚洲美女视频一区| 亚洲成网777777国产精品| 亚洲最大福利网站| 中国一级特黄大片在线观看| 国产精品福利导航| 亚洲高清无码久久久| 国产91久久久久久| 国产精品私拍99pans大尺度| 亚洲精品第一在线观看视频| 99这里只有精品在线| 亚洲人成人无码www| 嫩草在线视频| 2021最新国产精品网站| 欧美日韩亚洲综合在线观看| 国产在线视频欧美亚综合| 欧美亚洲欧美| 国产成在线观看免费视频| 8090成人午夜精品| 亚洲伊人电影| 国产午夜人做人免费视频中文| 国产av色站网站| 亚洲一级毛片免费观看| 日韩欧美一区在线观看| 日韩国产综合精选| 久久无码av三级| 久精品色妇丰满人妻| 亚洲黄色成人| 亚洲系列中文字幕一区二区| 少妇被粗大的猛烈进出免费视频| 真实国产乱子伦视频| 又粗又硬又大又爽免费视频播放| 国产美女精品在线| 老司机午夜精品网站在线观看 | 成年人国产网站| 亚洲高清免费在线观看| 激情综合图区| 搞黄网站免费观看| 亚洲天堂网2014| 老色鬼久久亚洲AV综合| 国产免费自拍视频| 伊人久久婷婷| 国产噜噜噜| 国产成人夜色91|