国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

基于UG的汽車覆蓋件小圓角識別二次開發(fā)

2019-03-06 12:41李麗芳陳開朗溫媛媛
模具制造 2019年12期
關(guān)鍵詞:弧長圓角二次開發(fā)

李麗芳,王 燕,陳開朗,溫媛媛,郭 杰

上汽通用汽車有限公司(上海 201208)

1 引言

汽車外覆蓋件大都設(shè)計了棱線特征,一方面,棱線有調(diào)節(jié)風阻的作用,汽車高速行駛時,氣流能通過這些棱線增加行駛的穩(wěn)定性;另一方面,棱線有增加剛度的作用,零件受到外力作用時,不會輕易發(fā)生變形褶皺。最重要的是,棱線設(shè)計對車的顏值有所影響,剛毅的棱線讓汽車充滿力量,流暢的棱線則彰顯運動等等,美觀的棱線設(shè)計會讓人眼前一亮。

但是弧長偏小且夾角偏大的棱線采用常規(guī)的模具制造工藝不夠清晰美觀,不能很好的體現(xiàn)造型設(shè)計的意圖,因此需采用特殊的制造工藝,沖壓同步工程階段需把這種棱線識別出來,本文稱之為小圓角識別。一般情況下,需要肉眼識別分界點,使用UG自帶命令在分界點處測量弧長和夾角,手動將測量結(jié)果輸入報告,并根據(jù)測量結(jié)果標示紅(特殊制造工藝)、黃(過渡)、綠(普通制造工藝),效率和準確率都較低。本文使用Visual Studio等二次開發(fā)工具,在UG中建立了快速測量和自動生成報告的人機交互界面,提高了小圓角識別的效率和準確率。

2 開發(fā)需求

UG打開零件片體,輸入判斷準則:夾角>X值,弧長<Y值,兩條件同時滿足呈現(xiàn)紅色,反之呈現(xiàn)綠色。將以下結(jié)果輸出到EXCEL當中,同一個項目的零件測量結(jié)果輸出到同一個EXCEL,每個零件占用一個工作表。

2.1 輸出圖片

每個零件的棱線編號按照字母順序設(shè)置,每條棱線的測量點按照棱線編號+數(shù)字設(shè)置,包括2個端點和2個過渡點,如圖1所示。為避免每條棱線分段過多,最終只呈現(xiàn)4種狀態(tài)中的一種:全紅、全綠、紅黃綠、紅黃綠黃紅(綠黃紅黃綠)。其中,紅色代表滿足判斷準則,綠色代表不滿足判斷準則,黃色為100mm長的過渡段。同時,為避免出現(xiàn)由于剛好處于臨界值導致的紅綠點交替現(xiàn)象,人機交互界面需給出夾角和弧長的公差設(shè)定窗口。

圖1 棱線編號

2.2 輸出數(shù)值

根據(jù)棱線上的編號點,將測量結(jié)果填到模板指定的單元格中。其中,2個端點填入夾角值和弧長值,2個過渡點填入坐標值,如圖2所示。

圖2 輸出的數(shù)值

3 界面設(shè)計

界面設(shè)計主要考慮簡潔、信息顯示全面,方便操作等等,從而提高小圓角識別的效率。

首先選擇測量的零件,可以選擇1個,也可以選擇多個;接著設(shè)置夾角的公差、弧長的公差以及過渡段的長度;接著輸入每個零件的參數(shù),包括料厚、所有的棱線、整個片體、測量取點的間隔等等;然后開始計算,如圖3所示。

圖3 輸入界面

計算完畢后,選擇需要輸出的零件,接著選擇零件中想要輸出的顏色球和輸出間隔,接著可以選擇渲染模式、整車截圖、想要輸出到的文件等等,然后創(chuàng)建報告,如圖4所示。

圖4 輸出界面

4 開發(fā)流程

本二次開發(fā)的過程主要是通過用戶對不同零件的選擇,以及對選擇零件判斷準則的輸入,計算棱線的夾角和弧長。通過用戶在人機交互界面上對顯示內(nèi)容的設(shè)置以及輸出設(shè)置,使得用戶可以獲得詳盡清晰的EXCEL模板報告,大大提高了用戶手動操作的工作效率。整個核心流程圖如圖5所示。

圖5 核心流程圖

5 編寫代碼

本文使用C++語言結(jié)合2000多個API函數(shù)開發(fā)出想要的UG界面,開發(fā)時首先要創(chuàng)建NXOpenWizard,在Visual Studio環(huán)境中創(chuàng)建程序,鏈接UGNX,進行編譯和調(diào)試,生成后綴名為dll的文件,在UG界面NXOpen中運行該文件,實現(xiàn)UG界面的二次開發(fā)。整個過程Visual Studio和UG的版本配置很重要,本文使用的是Visual Studio2013和NX11.0。

C++程序語言的書寫格式自由度高,靈活性強,隨意性大。為了提高程序的可讀性,編寫代碼要規(guī)范,使程序結(jié)構(gòu)清晰、明了,程序代碼緊湊。本文整個程序的主要函數(shù)有:棱線連接、棱線和圓弧面的匹配、A面識別、求交線、求交點、符合性判斷、輸出報告設(shè)置等等。部分代碼如下所示:

void PAT_BE209::CreateCheckReport()

{

//新建報告;

CString template_excel;

template_excel=CString(moduledir)+"Template\

PAT_BE209_Sharp_Feature_Line_Check_Report.xlsx";

int ExistOrNot=::GetFileAttributes(template_excel);

if(ExistOrNot==-1)

{

uc1601("template lost!",1);

return;

}

else

{

CoInitialize(NULL);

//創(chuàng)建Excel服務(wù)

CApplication app;

if(!app.CreateDispatch(_T("Excel.Application")))

{

uc1601("Unable to create Excel app!",1);

return;

}

//app.put_Visible(TRUE);

app.put_Visible(FALSE);

app.put_UserControl(TRUE);

//打開模板;

CWorkbook book;CWorkbooks books;CWorksheet sheet;CWorksheets sheets;

CRange range;CRange rColums;CRange rUsed;CRangeCell;CRanges ranges;

CExcelFont font;CBorders borders;CBorder border;CRangecols;

CRange column;CRange row;Cnterior interior;

COleVariant covOptional((long)

DISP_E_PARAMNOTFOUND,VT_ERROR);

books.AttachDispatch(app.get_Workbooks());

LPDISPATCH lpDisp=books.Open(template_excel,

covOptional,covOptional,covOptional,covOptional,covOptional,covOptional,covOptional,

covOptional,covOptional,covOptional,covOptional,covOptional,covOptional,covOptional);

book.AttachDispatch(lpDisp);

}

6 結(jié)束語

本文通過Visual Studio2013搭建了NX的二次開發(fā)環(huán)境,并使用C++語言結(jié)合多個API函數(shù)開發(fā)出小圓角識別的UG界面。輸入零件的棱線關(guān)鍵參數(shù)和判斷準則,就可以自動取點測量并自動輸出報告,不僅提高了識別的準確性,而且每個零件的識別時間從原來的45min縮短到了5min,大大提高了工作效率,為企業(yè)后續(xù)借助已有的標準和軟件資源,拓展應用范圍做出重要的鋪墊。

猜你喜歡
弧長圓角二次開發(fā)
強間斷多介質(zhì)流的高精度偽弧長方法
入風口端蓋開倒角與圓角對牽引電機溫度的影響
三角函數(shù)的有關(guān)概念(弧長、面積)
CAD直接建模中圓角特征識別技術(shù)的研究與應用
三角函數(shù)的有關(guān)概念(弧長、面積)
淺談CAD軟件二次開發(fā)的方法及工具
淺談產(chǎn)品手繪教學中圓角的便捷處理方法
弧長和扇形面積教學設(shè)計
例談?wù)n本習題的“二次開發(fā)”
巧用圓角方格展示圖片