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

二次開發技術在飛機機身結構零部件庫中的應用

2019-11-05 01:56:32林國斌劉向堯
貴州農機化 2019年3期
關鍵詞:二次開發程序飛機

林國斌,劉向堯

(貴州理工學院航空航天工程學院,貴州 貴陽 550003)

0 引言

飛機三維外形是飛機CAD中的一個重要組成部分。由于在概念設計階段飛機外形經常需要修改,因此如何快速地生成飛機三維外形模型是一個需要解決的問題。參數化設計工作為快速地生成飛機三維外形模型提供了一種有效的途徑[1]。參數化設計是指CAD通過尺寸驅動的方式,以獨立的幾何約束條件按既定的幾何參數生成一系列具有相同或相似幾何特征的二維或三維圖形的一種設計方法。從編程角度來看,實現參數化設計的途徑主要有三種:(1)基于圖形庫,如Open GL[2-3];(2)基于已有的CAD軟件進行二次開發?;趫D形庫的方法實現飛機三維外形建模相對復雜些;而基于CAD軟件的方法則可以省略圖形軟件的開發,同時可以利用已有CAD系統的強大功能和通用性[4-5]。(3)直接利用CAD的基礎理論進行建模編程。

本文應用Visual Basic 6.0(以下簡稱VB6.0)編程語言和CATIA二次開發技術進行實現飛機機身外形的參數化設計。首先分析不同類型的零部件設計方法,梳理在CATIA中的建模流程,再介紹VB6.0環境下CATIA二次開發的步驟,然后討論飛機參數化描述,最后以一個簡單的飛機機頭外形為例,說明基于CATIA二次開發實現飛機外形參數化設計的實現方法及可行性。

1 在VB6.0環境下的CATIA二次開發

1.1 CATIA 二次開發技術簡介

CATIA作為CAD/CAM/CAM/CAPP一體化的軟件,廣泛地應用于航空航天、汽車、船舶等行業。尤其在航空領域,航空企業普遍使用CATIA進行零部件的建模工作。然而由于用戶使用的側重點不同,功能再強大的軟件也不可能同時滿足各類用戶的需求。因此,對CATIA進行二次開發已經受到國內外許多企業及高校的重視。通過開發工具對CATIA的功能進行二次開發,可以開發出針對某一功能需求,甚至針對某一用戶的特定模塊,以方便用戶使用,其是對CATIA功能的深入挖掘和拓展[4]。CATIA二次開發的過程和意義如圖1所示。

圖1 CATIA二次開發的過程和意義

CATIA二次開發主要分為以下兩種方法:一種是采用C++作為開發工具、CAA二次開發技術,另一種是采用VB作為開發工具、Automation二次開發技術。

CAA是CATIA的一套C++函數庫,該函數庫在CATIA運行時加載,用戶可通過RADE模塊在VC++編程環境下編寫程序,與CATIA進行通信[5],一般在CATIA的低版本運行。

Automation其核心技術是允許外部程序操作CATIA。此技術并不是直接進行獲取處理CATIA數據,而是間接的通過調用CATIA類的對象和屬性,利用對象的方法和屬性來獲取、設置及處理數據。不足之處在于這種方法功能有限制,但入門輕松[6],比如可以采用API函數進行調用。Application對象結構圖如圖2所示。

1.2 CATIA二次開發的步驟

本文在此僅以VB6.0二次開發CATIA為例,敘述CATIA二次開發的一般步驟。通常情況下有以下幾個步驟:

(1)在CATIA中進行CAD建模,初始化COM庫,獲得模板文件。

(2)打開或新建一個全局對象Application。

(3)向Application中加入Document對象,注意類和對象的區別。以實現數據管理,如零件圖設計使用PartDocument,工程圖設計使用DrawingDocument。

圖2 Application對象結構圖

(4)聲明使用的對象,在模板上改寫對應參數,繪制二次開發后的幾何形體。

(5)保存CAD文件,關閉Application,釋放COM庫,關閉VB程序。

2 機身零部件庫系統的實現

2.1 程序界面

根據該程序要實現的功能及所需的輸入參數,可編制程序的運行界面如圖3所示。在這里坐標系采用y軸坐標為巡航方向,從機頭指向機尾的方向為正方向;x軸沿展向,指向艙門左側為正方向;z軸由x軸和y軸按右手法則確定。

2.2 程序結構

為了實現飛機機身零部件的參數化設計系統,將該系統劃分為一個主模塊和若干個子模塊:

1)長桁類零件的設計

2)隔板類零件的設計

3)蒙皮類零件的設計

4)艙門類零件的設計

5)其他機身零件的設計

程序總體結構如圖4所示。

圖3 程序的運行界面

圖4 程序的總體結構

2.3 程序功用

程序主界面程序是按照應用人員要求輸入符合國家、企業標準的3D零件圖的參數,經過程序內運算得到宏程序參數。

獲取保存路徑界面程序是為了方便應用人員,將生成的宏程序和零件圖按照自定義的宏程序文件名稱、宏程序文件格式、零件名稱、零件格式到應用人員指定的路徑進行保存,并按照經過程序主界面運算得到的宏程序參數,傳入至宏文件中,生成符合應用人員的宏程序文件和零件圖。

2.4 實現生成零部件圖的一般步驟

從任務的角度來解釋,不同的零部件有不同的模板,比如長桁零件中的截面長度、高度、厚度、倒圓和整個零件的長度等工作就對應著不同的零件模板。為了切合使用者的使用情況,為使用者提供準確的數值,令使用者達到滿意,在簡單的操作下將零件圖繪制到符合要求。以長桁為例生成零件圖的步驟如下圖5所示。

圖5 生成零件圖的步驟

2.5 流程分析

CATIA提供了完整的參數化建模及數據管理手段,其參數化設計過程可為產品結構的全部數據提供參數輸入和函數關系式,所有飛機結構理論站位可依靠總體坐標系、飛機總體設計人員發布理論外形面并通過參數轉換生成,直接提供窗框、地板、門框、前起后端框、前起艙側壁的骨架模型元素,并提取與理論外形相關的站位布局。機頭結構布置設計首先要解決全局理論數據和結構站位的協調關系,確定全過程設計需求的特征面, 特征線、特征點。然后為模型建立一個總的布局樹,結構站位遞歸關系一目了然。這樣既為后續關聯設計骨架模型定義打下基礎,也可以有效防止數據的循環引用,使錯誤數據鏈的發生概率降到最低,同時也能快速響應上游總體專業參數化理論外形的設計變化,實現飛機結構方案設計階段上下游專業設計輸入與輸出之間更改影響的自動傳遞、自動更新,保證設計數據的有效性、唯一性和一致性。

2.6 前置處理的實現

(1)讀取分析宏程序內的參數

打開錄制的宏程序文件,查找文件內有利用價值的參數值。機身信息如表1所示。

表1 機身信息

(2)讀取分析宏程序編譯規則

根據V5Automation.chm分析宏程序編譯規則;

例如:圓弧的定義

Func CreateCircle( double iCenterX,

double iCenterY,

double iRadius,

double iStartParam,

double iEndParam) As Circle2D

進行創建并返回一個2D圓弧

(3)讀取分析剩余未確定數值函數表達式

分析出已有確切數值后,對未確切數值進行分析,建立對應的函數表達式。

(4)將確切數值及表達式轉換成VB語言

為使程序能夠正常運行,進行將所有參數值利用表達式轉換成VB程序語言,需要進行格式的統一,便于CATIA軟件的識別。對于復雜函數,利用變量進行運算。在部分處理中,VB中沒有直接的數學函數表達式,采用自編函數的方式進行解決,比如arcsin函數。同樣地,創建的平面和拉伸的凸臺與凹槽的距離,是不能確定的值,也不能利用函數進行表達,但可以利用判斷更改其值。所以針對該種參數值編寫函數進行表達。

2.7 腳本運行方式

在使用VB應用程序時,可以使用以下語法:

(1)如果CATIA已經在運行,那么宏應該使用GetObject方法連接到CATIA。

(2)如果CATIA還沒有運行,宏應該使用CreateObject方法啟動CATIA。

一般把兩種方法合在一起,這樣訪問CATIA的時候就不會出問題。

2.8 將參數傳送到宏程序中

(1)得到一個未使用的文件號

Dim FileNumber1, FileNumber2, Stri As String

FileNumber1 = FreeFile '

(2)打開要讀取的文件

Open App.Path & "/macro737-0005-parts1_I.CATScript" For Input As #FileNumber1 ' FileNumber2 = FreeFile

(3)打開要寫入的文件

Open Dir1.Path & "/" & Text2.Text & Combo1.Text For Output As #FileNumber2 '

(4)按行讀取文件,直到最后一行

Line Input #FileNumber1, Stri '

While Not EOF(1) '

(5)'寫入替換后的內容

Print #FileNumber2, Stri

(6)關閉文件

2.9 繪制機頭零部件

當程序將參數的運算結果傳入宏程序文件后,按照模板進行更改參數,利用語句進行在CATIA環境中自動打開指定路徑的宏程序文件。繪制的機頭零部件圖如圖6所示。

圖6 機頭零部件圖

3 結語

CATIA的二次開發在開發完成后,需要應用人員利用圖紙在程序中查找相對應類型的零部件,將零件圖圖紙的參數,輸入至程序中,按照規定的步驟即可得到符合要求的三維機身零件圖。同時完善二次開發相關功能使用戶體驗佳。

本文以CATIA二次開發的問題為導向,提高效率為目標,設計了程序,并采用CATIA和VB進行實現。希望本探索能有效地幫助設計人員高效率地開展零部件設計的工作。

猜你喜歡
二次開發程序飛機
飛機失蹤
環球時報(2022-05-30)2022-05-30 15:16:57
淺談基于Revit平臺的二次開發
甘肅科技(2020年20期)2020-04-13 00:30:02
“拼座飛機”迎風飛揚
當代陜西(2019年11期)2019-06-24 03:40:28
淺談Mastercam后處理器的二次開發
模具制造(2019年3期)2019-06-06 02:11:02
試論我國未決羈押程序的立法完善
人大建設(2019年12期)2019-05-21 02:55:44
西門子Easy Screen對倒棱機床界面二次開發
“程序猿”的生活什么樣
乘坐飛機
英國與歐盟正式啟動“離婚”程序程序
環球時報(2017-03-30)2017-03-30 06:44:45
神奇飛機變變變
主站蜘蛛池模板: 日本高清有码人妻| 亚洲嫩模喷白浆| 日本精品视频一区二区| 日本亚洲国产一区二区三区| 欧美成人二区| 亚洲人成电影在线播放| 国产成年女人特黄特色毛片免 | jizz国产视频| 国产精品手机视频一区二区| 免费aa毛片| 日本一区二区不卡视频| 久草视频精品| 成人免费黄色小视频| 国产白浆在线| 在线观看视频99| 久久鸭综合久久国产| 99热免费在线| 欧美曰批视频免费播放免费| 欧美a√在线| 一本色道久久88| 亚洲天堂视频在线免费观看| 无码一区二区波多野结衣播放搜索| 91小视频版在线观看www| 风韵丰满熟妇啪啪区老熟熟女| 日韩欧美国产中文| 亚洲欧洲天堂色AV| 国产在线视频福利资源站| 91视频区| 国语少妇高潮| 亚洲第一色网站| 精品福利视频导航| 国产精品lululu在线观看| 毛片久久久| 香蕉久人久人青草青草| 国产自无码视频在线观看| 国产精品私拍99pans大尺度| 久青草国产高清在线视频| 婷婷午夜影院| 欧美中文字幕在线播放| 午夜人性色福利无码视频在线观看| 99热这里只有精品2| 国产精品久久久久久久久| 福利一区三区| 亚洲日韩国产精品综合在线观看| 日韩资源站| 欧美成人h精品网站| 永久免费精品视频| 久久无码高潮喷水| 亚洲无线视频| 欧美在线一二区| 精品国产免费观看一区| 国产精品免费福利久久播放| 中文字幕佐山爱一区二区免费| 美女毛片在线| 在线观看91精品国产剧情免费| 日韩精品专区免费无码aⅴ| 国产第二十一页| 欧美色视频日本| 狠狠干综合| 色天天综合| 亚洲自偷自拍另类小说| 亚洲无码精彩视频在线观看 | 成人无码一区二区三区视频在线观看| 亚洲伊人天堂| 国产精品成人第一区| 国产中文一区二区苍井空| 四虎免费视频网站| 国产香蕉在线| 99re在线观看视频| 4虎影视国产在线观看精品| 伊人AV天堂| 免费国产小视频在线观看| 免费看美女毛片| a级毛片免费网站| 国产午夜小视频| 华人在线亚洲欧美精品| av性天堂网| 亚洲天堂区| a级毛片免费在线观看| av在线无码浏览| 欧美日韩亚洲国产| 精品国产成人三级在线观看|