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

基于UG二次開發的榴彈外形結構設計系統關鍵技術研究

2019-04-15 05:22:12劉松健趙捍東曹紅松
測試技術學報 2019年3期
關鍵詞:二次開發程序特征

劉松健, 趙捍東, 曹紅松, 劉 闖, 劉 勝

(中北大學 機電工程學院, 山西 太原 030051)

0 引 言

榴彈作為構成火炮彈藥的基本彈種, 在殺傷敵人有生力量, 摧毀敵人防御工事、武器裝備及其它軍事設施上有著不可替代的作用. 在現代戰爭中, 對榴彈的戰術技術要求越來越越具體化和多樣化, 榴彈的設計要迅速反映現代戰爭的需求[1]. 隨著計算機技術的發展, 數字化設計技術在彈藥設計工作中有著越來越廣泛的應用. 大量的專家學者已經在彈藥的數字化設計系統研究上取得了顯著成果[2-5].

目前, 各類彈藥數字化設計系統所采用的參數化建模技術主要為基于交互式運行模式的UG二次開發技術. 該模式允許開發人員直接添加菜單項, 從用戶對菜單的交互操作中調用程序, 實現和UG界面的無縫集成并擴充成所需的特定功能. 采用該技術的UG二次開發應用程序開發簡單、操作靈活, 執行時的每個步驟都能從UG的客戶窗口中得到動態反映, 能方便地通過UI界面對象來實現與用戶的交互、屏幕選取等復雜操作[6,7]. 然而基于該模式的應用程序必須在UG框架內執行, 導致該類方法存在集成于某一設計系統中時會出現數據交互不便, 無法同時對多個零件進行批量操作等缺陷. 本文為了使UG二次開發應用程序能夠獨立運行, 適合集成在數字化設計系統中, 實現對多個部件進行快速操作等功能, 在榴彈外形結構設計系統中采用了基于批處理運行模式的UG二次開發方法.

1 系統構成

該系統由C#語言在 Visual Studio 2012(以下簡稱VS2012)環境下進行開發, 總體架構為典型的4層體系結構, 包括用戶層、應用層、數據層及驅動層, 系統框架如圖 1 所示.

用戶層是軟件的交互界面, 用戶通過由C#編寫的可視化界面調用系統的各功能模塊完成設計工作.

應用層主要由榴彈設計和快速建模兩個功能模塊構成. 其中, 榴彈設計模塊分為口徑及用途選擇模塊、榴彈質量初步選擇模塊、榴彈外形設計、榴彈內腔設計和榴彈裝藥選擇5個子模塊; 快速建模模塊分為引信建模、彈體建模、彈帶建模、藥柱建模和榴彈裝配5個子模塊.

數據層即為軟件的數據庫, 由各類數據文件組成. 系統通過讀取相應的數據文件得到設計工作中所需的各項參數, 并將設計結果保存在新建的數據文件中, 各功能模塊通過對該數據文件進行讀寫完成數據交互.

驅動層是在VS2012環境下, 將程序進行編譯, 完成各模塊功能的實現. 系統通過NXOpenAPI函數從后臺調用UG, 完成對模型的快速操作.

圖 1 系統框架圖Fig.1 System frame diagram

2 榴彈的參數化模型

榴彈的參數化模型根據功能模塊的設計結果生成. 三維模型的建立流程如圖 2 所示.

圖 2 榴彈的三維模型建立過程Fig.2 Three-dimensional modeling process of grenade

2.1 榴彈模型的設計流程

榴彈模型的設計流程由榴彈設計功能模塊實現, 該模塊程序根據相關彈藥設計理論知識整理得到. 模塊功能涵蓋了榴彈設計過程中給定最大射程、榴彈口徑選擇、引信選擇、榴彈質量初步設計、榴彈外形設計、彈帶設計、榴彈內腔設計和榴彈裝藥選擇等主要內容[8,9].

模塊程序通過對外彈道數據文件和各項設計參數文件的讀取完成設計工作中對部分外彈道設計參數的查詢及各步驟中所需設計參數的調用, 并完成相關計算工作. 榴彈模型的設計結果被儲存在新建的ini文件中, 建模模塊通過讀取ini文件調用相應的UG二次開發應用程序完成三維模型的繪制, 設計功能模塊的主界面及設計結果如圖 3 所示.

圖 3 榴彈的設計結果Fig.3 The result of shell design

2.2 榴彈的參數化模型

榴彈的參數化模型如圖 4 所示. UG在建立三維模型時需要先繪制草圖, 而繪制該草圖的過程即為榴彈的參數化模型. 建模模塊根據不同類型的設計結果調用相應的建模程序模板, 將設計結果中的參數帶入至建模程序中, 驅動建模程序完成草圖的繪制. 設計結果中各參數與榴彈參數化模型中的參數對應如表 1 所示.

其中, 口螺處的半徑R2按照螺紋的內徑選取. 外圓弧與內圓弧需要根據其圓心坐標、半徑以及起止位置的角度確定.

圖 4 榴彈參數化模型Fig.4 Parametric model of grenade

圓弧起始角度

圓弧停止角度

圓柱部定心部寬度L2,L4等長, 彈帶槽寬L5根據所選彈帶確定;

非定心部段長度

L3=L13-L2-L4-L5.

非定心部段半徑R7略小于定心部處半徑R6, 與尾柱部半徑R8相等;

彈底半徑R11=R8-L7×tanθ2;

彈丸內腔圓柱部半徑

截錐部長

L11=L13-L8-L9-L10-L12.

彈底半徑

R5=R4-L11×tanθ1.

當修改榴彈設計參數時, 模型中對應參數也會隨之變化, 以此來達到快速修改榴彈模型的效果.

表 1 模型參數與設計參數對應關系Tab.1 The correspondence between model parameters and design parameters

3 參數化建模方法

3.1 程序模板配置

本文采用的平臺為UG NX10.0與VS2012. 將UG的根文件夾NX10.0下的UGOPEN文件夾中vs_files里的VC#文件夾復制到VS2012根文件夾Microsoft Visual Studio 11.0完成開發環境的搭建. 在VS2012中新建UG10開發模板并在設置向導中選擇外部類型, 再向所配置的開發模板中添加根據設計結果繪制榴彈模型的操作步驟代碼, 最后將模板發布為exe文件, 以供建模模塊調用.

3.2 快速建模方法

本文通過VS2012編寫NX OpenAPI程序從外部驅動UG完成建模的各個步驟. NX OpenAPI是一個允許程序訪問并改變UG對象模型的程序集, 并且封裝了近2 000個UG操作函數[10]. 它是VS2012與UG的接口, 通過它可以對UG的圖形終端進行操作[11].

3.2.1 彈體的創建

榴彈彈體作為回轉體, 在建模過程中, 可以通過草圖繪制母線, 再通過建立回轉特征得到. 榴彈彈體母線的構成元素主要包含直線和圓弧.

1) 直線元素的添加通過函數CreateLine()繪制再用函數AddGeometry()添加至草圖中.

2) 圓弧元素的繪制通過函數CreateArc()完成, 函數所需的參數有圓心坐標、圓弧半徑和起止弧度. 再通過函數AddGeometry()添加至草圖中.

3) 回轉特征的構建由回轉特征構造器RevolveBuilder實現, 建立回轉特征需要的參數有: 構造器所使用的截面Section、用于生成回轉特征的截面線Geometry、回轉方向以及回轉軸線Axis, 由構造器的CommitFeature()函數提交特征, 完成對回轉特征的構建.

3.2.2 口螺的創建

榴彈彈體與引信的連接通過口螺實現, 因此在建模過程中需要對口螺進行繪制. 在UG的API函數庫中, 并無用于直接創建螺紋類特征的API函數, 所以需要通過掃掠特征和切除運算模擬機加工中對螺紋的切制來實現口螺的創建, 具體步驟如下:

1) 根據螺紋的牙型添加需切除部分的草圖, 添加方法與上文相同.

2) 創建螺旋線, 螺旋線由構造器HelixBuilder進行創建, 并根據螺紋的參數對構造器中的Value(直徑)、PitchLaw(螺距)、StartLimit(起始位置)、EndLimit(終止位置)4個成員進行設置, 確定螺旋線的尺寸, 再通過設置CoordinateSystem(坐標系統)成員確定螺旋線的位置與方向.

3) 創建掃掠特征, 掃掠特征由構造器SweptBuilder進行創建, 建立掃掠特征所需的參數有: 構造器所使用的截面Section、用于生成掃掠特征的截面線Geometry(通過選取草圖中的所有曲線)、 用于生成掃掠特征的引導線Spline(通過選取構成螺旋線的樣條曲線)以及掃掠過程的定位方法OrientationMethod. 由構造器的Commit()函數提交特征, 完成掃掠特征的創建.

4) 布爾運算切除, 將回轉特征作為參數代至構造器BooleanBuilder中的Add()函數中, 完成將彈體作為目標體的操作, 選取掃掠特征為函數CreateRuleBodyDumb()的參數完成對工件具體的選取; 由構造器的Commit()函數提交特征, 完成對口螺的切制.

3.2.3 彈體、引信、彈帶的裝配

榴彈的各部分三維模型繪制完成后, 裝配工作同樣可以由API函數完成. 通過API函數進行裝配時, 各組件的定位方式均為絕對原點. 二次開發程序根據各組件在裝配體中的位置以及自身尺寸, 計算裝配時所需的偏移量和旋轉量, 并以此為參數添加到裝配體中.

坐標偏移存放在變量Point3d(X,Y,Z)中, 旋轉方向存放在變量Matrix3x3(Xx,Xy,Xz,Yx,Yy,Yz,Zx,Zy,Zz)中. UG二次開發應用程序通過坐標偏移和方向旋轉的方式完成各組件的裝配. 各部件的加載操作則由函數OpenBase()完成, 二次開發程序將部件的路徑filePath作為參數代入至函數OpenBase(), 再由函數AddComponent()根據坐標偏移和旋轉方向將組件添加至裝配體中. 最終三維模型如圖 5 所示.

圖 5 榴彈的三維模型Fig.5 The three-dimensional model of the shell

因此, UG二次開發程序可以通過多次調用函數OpenBase()在一個程序中多次打開不同的三維模型, 再通過調用不同的API函數對打開的三維模型進行快速操作, 以此來實現在一個應用程序中對多個模型進行快速操作. 另一方面, 當面對較為復雜的模型時, 亦可以將模型拆分為數個外形較為簡單的組件, 通過執行一個或多個UG二次開發應用程序完成對各組件的操作, 再利用OpenBase()與AddComponent()函數將組件進行裝配, 完成對一些外形較為復雜的模型的參數化設計.

4 結 論

本文在榴彈設計理論研究的基礎上, 將基于批處理模式的UG二次開發技術與參數化設計方法相結合, 開發了一種榴彈外形結構參數化設計系統. 根據可視化界面的設計內容, 建立了榴彈彈體的三維CAD參數化模型, 通過NXOpenAPI函數從后臺調用UG完成系統三維模型的快速操作, 彌補了基于交互式運行模式的UG二次開發應用程序必須在UG框架內執行, 集成于某一設計系統中時會出現數據交互不便, 無法同時對多個零件進行批量操作等缺陷. 為今后相關數字化設計平臺的集成及復雜模型的參數化設計提供了參考.

猜你喜歡
二次開發程序特征
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
如何表達“特征”
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
不忠誠的四個特征
當代陜西(2019年10期)2019-06-03 10:12:04
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
西門子Easy Screen對倒棱機床界面二次開發
“程序猿”的生活什么樣
抓住特征巧觀察
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
創衛暗訪程序有待改進
中國衛生(2015年3期)2015-11-19 02:53:32
主站蜘蛛池模板: 熟女成人国产精品视频| 亚洲色图在线观看| 成人福利在线看| 嫩草国产在线| 国产午夜福利在线小视频| 欧美日韩第三页| 国产无码高清视频不卡| 伦伦影院精品一区| 成人韩免费网站| 日本在线亚洲| 国产午夜一级毛片| 亚洲精品福利网站| 久草青青在线视频| 手机在线免费毛片| 性欧美在线| 亚洲中文在线看视频一区| 国产精品露脸视频| 国产精品第一区| 日本久久网站| 在线一级毛片| 成人无码一区二区三区视频在线观看| 中文字幕资源站| 91亚洲精选| 18禁影院亚洲专区| 9啪在线视频| 亚洲AⅤ波多系列中文字幕| 夜夜爽免费视频| 亚洲成在人线av品善网好看| 亚洲欧美自拍视频| 久久久久九九精品影院| 福利国产微拍广场一区视频在线| yjizz国产在线视频网| 久久五月天国产自| 亚洲视频影院| 国禁国产you女视频网站| 亚洲国语自产一区第二页| 欧洲一区二区三区无码| 国产免费黄| 999在线免费视频| 日韩视频免费| 免费看a级毛片| 国产激情无码一区二区APP | 四虎国产永久在线观看| 久久午夜夜伦鲁鲁片不卡| 996免费视频国产在线播放| 国产大片喷水在线在线视频| 一级看片免费视频| 久久这里只有精品66| 久久99精品久久久久纯品| 久久精品亚洲中文字幕乱码| 99中文字幕亚洲一区二区| 亚洲精品国偷自产在线91正片| 久久综合色88| 亚洲中文无码av永久伊人| 2024av在线无码中文最新| 亚洲AⅤ无码日韩AV无码网站| 毛片a级毛片免费观看免下载| 国产精品女人呻吟在线观看| 日韩在线视频网| 欧美激情一区二区三区成人| 狠狠色婷婷丁香综合久久韩国| 精品综合久久久久久97超人| 欧美成人a∨视频免费观看| 99热这里只有精品免费| 一本视频精品中文字幕| 一本久道热中字伊人| 久久亚洲美女精品国产精品| 久久精品欧美一区二区| 92精品国产自产在线观看| 99久久人妻精品免费二区| 视频二区亚洲精品| 婷婷六月在线| a级毛片一区二区免费视频| 亚洲区一区| 欧美精品另类| 国产成人久久综合777777麻豆| 久久96热在精品国产高清| 波多野结衣亚洲一区| 亚洲国产日韩视频观看| 4虎影视国产在线观看精品| 国产在线一区视频| 亚卅精品无码久久毛片乌克兰|