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
神奇飛機變變變
主站蜘蛛池模板: 国产精品尤物在线| 99热这里只有免费国产精品 | 亚洲美女高潮久久久久久久| 亚洲天堂网在线视频| 国产精品一区二区不卡的视频| 国产欧美日韩另类| 91精品免费高清在线| 中国特黄美女一级视频| 亚洲三级片在线看| 国产丝袜第一页| 久久国产热| 国内精品久久人妻无码大片高| 国产手机在线观看| 国产精品永久不卡免费视频| 全部免费特黄特色大片视频| 国产在线八区| 最新痴汉在线无码AV| 亚洲人成成无码网WWW| 国产成人一区二区| 综合色区亚洲熟妇在线| 欧亚日韩Av| 国国产a国产片免费麻豆| 亚洲综合二区| 日本午夜网站| 高清亚洲欧美在线看| 欧美另类一区| 伊人天堂网| 香蕉久久国产精品免| 精品国产Av电影无码久久久| 强奷白丝美女在线观看| 亚洲天堂福利视频| 91色在线观看| 色欲不卡无码一区二区| 99激情网| 日本国产在线| 天堂网亚洲系列亚洲系列| 午夜视频免费试看| 国产成人综合欧美精品久久| 在线亚洲精品福利网址导航| 亚洲 欧美 偷自乱 图片| 亚洲精品无码久久毛片波多野吉| 91精品国产无线乱码在线| 亚洲国产中文综合专区在| 久久国产亚洲欧美日韩精品| 亚洲天堂高清| 亚洲日本中文字幕天堂网| 久久久久久久久18禁秘| 成年人视频一区二区| www.日韩三级| 国产精品久线在线观看| 色综合成人| 亚洲成人高清无码| 黄色网页在线播放| 欧美一级在线播放| 国产成人精品第一区二区| 欧美一区二区福利视频| 视频二区欧美| 亚洲日本中文综合在线| 国产一二三区在线| 在线国产91| 在线精品视频成人网| 五月婷婷综合网| 波多野结衣无码AV在线| 99视频在线看| 久久成人国产精品免费软件 | 国产网站一区二区三区| 久久9966精品国产免费| 中国精品自拍| 欧美乱妇高清无乱码免费| A级毛片无码久久精品免费| 中文字幕调教一区二区视频| 日韩毛片免费观看| 欧美在线精品怡红院| 91国语视频| 亚洲一区无码在线| 久久精品嫩草研究院| 亚洲第一成网站| 久久一本精品久久久ー99| 99精品伊人久久久大香线蕉| 久久久久国产精品熟女影院| 伊人久综合| 思思热精品在线8|