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

基于UG二次開發(fā)干涉避障仿真研究

2019-09-10 07:22:44方瑞陳岳坪
廣西科技大學(xué)學(xué)報 2019年3期

方瑞 陳岳坪

摘 ? ?要:在實(shí)際的加工檢測過程中,對復(fù)雜曲面生成的測點(diǎn)依次進(jìn)行檢測,檢測過程中可能會因?yàn)槁窂揭?guī)劃或者曲面曲率大小問題導(dǎo)致測頭碰撞工件,為了防止在線檢測過程中測頭測針與工件產(chǎn)生干涉,需要對UG干涉模塊進(jìn)行二次開發(fā).在簡要闡述了UG二次開發(fā)基礎(chǔ)以及UG自帶的干涉模塊分析基礎(chǔ)上,基于UG平臺,將Visual Studio與UG函數(shù)進(jìn)行關(guān)聯(lián),利用UG中的UISTyler和MenuSeript開發(fā)工具,實(shí)現(xiàn)了在線檢測中的干擾檢測和避障.

關(guān)鍵詞:UG二次開發(fā);干涉檢測;避障

中圖分類號:TH16;TP391.7 ? ? ?DOI:10.16375/j.cnki.cn45-1395/t.2019.03.011

引言

在復(fù)雜曲面零件的加工檢測過程中,需要用相應(yīng)的檢測技術(shù)來檢測和控制加工精度[1-2].基于坐標(biāo)測量機(jī)[3](CMM)的檢測技術(shù)一般情況下用于精密零件的形狀與位置精度檢測,但對工件產(chǎn)生了二次裝夾定位誤差的問題以及對大型零部件測量的一些局限性問題.在數(shù)控機(jī)床上對零部件直接進(jìn)行加工精度的在線檢測,使加工、測量與補(bǔ)償形成一體化的檢測系統(tǒng),是近幾年國內(nèi)外對在線檢測研究領(lǐng)域的研究熱點(diǎn)[4-5].為了能順利實(shí)現(xiàn)數(shù)控機(jī)床的在線檢測,首先需要對所加工的零件進(jìn)行檢測仿真實(shí)驗(yàn),以免實(shí)際操作過程中出現(xiàn)測頭碰撞問題.雖然現(xiàn)在有許多帶有干涉檢查模塊的CAD軟件,如UG、Catia以及SolidWorks等,但專業(yè)性較差,過程繁瑣容易出錯,影響設(shè)計(jì)人員判斷,降低了干涉檢驗(yàn)的工作效率,浪費(fèi)大量的人力物力[6].目前,對于干涉檢測技術(shù),靜態(tài)干涉檢測研究較多.衡思迎等[7]對沖壓模具中的靜態(tài)干涉問題進(jìn)行了分析,提出一種基于坐標(biāo)極值來確認(rèn)實(shí)體非干涉的算法.郜亮等[6]對UG的干涉檢驗(yàn)?zāi)K進(jìn)行了分析,并針對檢測效率低的問題,對UG干涉模塊進(jìn)行二次開發(fā),相比傳統(tǒng)的UG自帶的干涉模塊,需要手動方式選擇需要干涉的每個部位,其開發(fā)的干涉功能可以自動實(shí)現(xiàn)干涉檢測,提高了檢測效率.以UG6.0為開發(fā)平臺,針對UG運(yùn)動仿真方面,對動態(tài)干涉檢驗(yàn)以及實(shí)現(xiàn)避障功能做了一定的研究.

1 ? ?UG二次開發(fā)基礎(chǔ)

UG的二次開發(fā)是基于UG軟件,利用UG軟件自帶的一些函數(shù),使用戶可以很方便的利用C語言的編程,調(diào)用UG軟件自帶的函數(shù),實(shí)現(xiàn)用戶對于產(chǎn)品設(shè)計(jì)的某種特殊需求.UG二次開發(fā)中的API函數(shù)可以作為外部應(yīng)用程序與UG應(yīng)用軟件之間銜接的橋梁,該函數(shù)可以實(shí)現(xiàn)對UG模型的控制以及對于用戶的某種特殊需求.UG軟件中,有一個菜單模塊與樣式編輯模塊,它們可以用來定制用戶的專用菜單并使用戶創(chuàng)建的對話框樣式與UG軟件風(fēng)格形成一致.利用樣式編輯模塊創(chuàng)建的對話框在存儲的時候,將會自動生成相對應(yīng)的.c文件以及.h文件,將這兩種文件復(fù)制到C語言開發(fā)程序當(dāng)中,用戶將節(jié)省很多的開發(fā)時間.

2 ? ?干涉檢查模塊的應(yīng)用分析

UG中,干涉分為靜態(tài)干涉與動態(tài)干涉.靜態(tài)干涉主要是針對零件各個位置度以及零件之間的公差配合等方面進(jìn)行檢測,從而判斷是否發(fā)生干涉.動態(tài)干涉是對于零件在運(yùn)動過程中,分析其運(yùn)動過程,判斷零件在空間運(yùn)行時是否發(fā)生干涉.在UG中,靜態(tài)干擾是檢查UG組件之間的間隙.在UG6.0版本基礎(chǔ)上,針對一個復(fù)雜曲面模型進(jìn)行簡單的干涉檢驗(yàn)分析.首先,打開模型圖;然后,選擇菜單欄分析下拉菜單的簡單干涉,彈出簡單干涉對話框,選擇需要干涉的兩個體,在干涉檢查結(jié)果一欄,選擇結(jié)果對象為“高亮顯示的面對”,輸出干涉結(jié)果.圖1為簡單干涉界面.

如圖1所示,使用簡單干涉時每次檢查干涉,只能選擇兩個組件進(jìn)行干涉,并且在檢查干涉情況下,只能選擇可見的零部件,在部件較多的時候,或者部件運(yùn)動過程中,很難判斷干涉情況.相比圖1所示的簡單干涉,另外一種是檢查間隙.在菜單選項(xiàng)中選擇菜單欄中分析下拉菜單的裝配間隙,此方法可以對多個部件一起進(jìn)行干涉檢查,當(dāng)間隙小于默認(rèn)安全區(qū)域時,則確認(rèn)部件間為干涉,這時需要對裝配進(jìn)行修改如圖2所示.但對于測桿運(yùn)動,這兩種干涉仍無法進(jìn)行判斷干涉.綜上所述,UG中的干涉檢測模塊存在著不足之處.為了解決運(yùn)動體的干涉問題,本文利用UG的二次開發(fā)技術(shù)對此模塊進(jìn)行二次開發(fā),并在實(shí)現(xiàn)干涉碰撞之后,可以實(shí)現(xiàn)自動避障功能.

3 ? ?干涉避障模塊的二次開發(fā)分析

基于UG干涉檢測仿真系統(tǒng)包括以下幾個模塊:

1)測頭運(yùn)動仿真模塊參數(shù)設(shè)置

該模塊可以根據(jù)實(shí)際在線檢測過程中使用的測頭大小以及在測頭運(yùn)動過程中需要的測量速度、非測量速度以及回退距離進(jìn)行設(shè)置.

2)曲面信息的抓取

該模塊可以根據(jù)曲線上的法失,自動抓取需要檢測的曲面信息,為后面測點(diǎn)生成以及需要干涉的曲面做鋪墊.

3)曲面測點(diǎn)生成模塊

該模塊可以根據(jù)獲取的曲面信息,根據(jù)曲面上的法失,利用等弧長方式對曲面自適應(yīng)地生成一系列測點(diǎn).

4)導(dǎo)入測點(diǎn)數(shù)據(jù)模塊

該模塊在曲面測點(diǎn)生成完成和對測針參數(shù)設(shè)置完畢之后,將需要檢測的數(shù)據(jù)點(diǎn)導(dǎo)入到系統(tǒng)當(dāng)中進(jìn)行檢測.

5)干涉檢查模塊

此模塊是檢查在檢測過程中是否會出現(xiàn)干涉情況,以免在實(shí)際操作過程中發(fā)生危險.

6)自動避障模塊

此模塊是根據(jù)干涉模塊延伸出來的,當(dāng)測針與物體發(fā)生干涉時,測針會自動規(guī)劃路徑尋找最優(yōu)點(diǎn),達(dá)到防止測針與物體相撞功能.

軟件操作流程圖如圖3所示.

3.1 ? 用戶菜單及對話框創(chuàng)建

為了能實(shí)現(xiàn)UG動態(tài)仿真干涉實(shí)驗(yàn)研究,需要先設(shè)定UG與Visual Studio之間的環(huán)境變量,并利用UG/Open MenuSeript創(chuàng)建用戶菜單,用戶便可以很方便地使用腳本文件編輯自己的開發(fā)程序.創(chuàng)建菜單腳本文件是先新建一個記事本,并用ASCALL碼編寫菜單腳本文件,最后將腳本文件放入startup目錄下,后綴名為*.men.

菜單腳本代碼如下:

VERSION 120

EDIT UG_GATEWAY_MAIN_MENUBAR

HIDE UG_HELP

!一級菜單編輯

BEFORE UG_HELP

CASCADE_BUTTON MENU_ID_1

LABEL 數(shù)控機(jī)床在線檢測系統(tǒng)

END_OF_BEFORE

!二級菜單編輯

MENU MENU_ID_1

BUTTON MENU_ID_1_2

LABEL 檢測代碼生成與數(shù)據(jù)處理

ACTIONS UFDLG_1

END_OF_MENU

!三級菜單編輯

MENU MENU_ID_1

BUTTON MENU_ID_1_3

LABEL 在線檢測仿真系統(tǒng)

ACTIONS UFDLG_2

END_OF_MENU

其中CASCADE_BUTTON MENU_ID_1代表一級菜單名稱,對在線檢測仿真系統(tǒng)添加按鈕并產(chǎn)生響應(yīng),使用BUTTON以及ACTIONS.菜單添加后如圖4所示.

為了方便操作UG與用戶開發(fā)程序之間的互通,利用樣式編輯器創(chuàng)建用戶對話框,將生成結(jié)束的對話框產(chǎn)生的.dlg文件保存于application文件夾中.

3.2 ? 測頭運(yùn)動仿真研究

實(shí)現(xiàn)干涉碰撞仿真之前,需要對測頭進(jìn)行運(yùn)動仿真,測頭從P1運(yùn)動到M,再返回P1,再進(jìn)行下一個點(diǎn)檢測,從P1運(yùn)動到P2,再從P2運(yùn)動到N,返回P2.測頭運(yùn)動的原理如圖5所示.

數(shù)控機(jī)床在線檢測過程中,測頭所進(jìn)行的每一步運(yùn)動都可被簡化為直線運(yùn)動,也稱平移運(yùn)動.所用到的函數(shù)為:平移矩陣函數(shù)uf5943(translation,matrix)和平移運(yùn)動函數(shù)UF_MODL_transform_entities(2,entities, matrix).

測頭從檢測點(diǎn)M運(yùn)動到檢測點(diǎn)N,測頭需要分為五步進(jìn)行運(yùn)動.每個點(diǎn)是相同的程序和相同的循環(huán),其代碼如下:

回退至測量點(diǎn)安全點(diǎn):

translation[0] =xx[pointcount]+uu[pointcount]*t+translation1[0];

translation[1] =yy[pointcount]+oo[pointcount]*t+translation1[1];

translation[2] =zz[pointcount]+pp[pointcount]*t+translation1[2];

uf5943(translation,matrix);

UF_MODL_transform_entities(2, entities,matrix);

逼近測點(diǎn):

translation[0] = (-uu[pointcount]*(t-5));

translation[1] = (-oo[pointcount]*(t-5));

translation[2] = (-pp[pointcount]*(t-5));

uf5943(translation,matrix);

UF_MODL_transform_entities(2, entities,matrix);

測量點(diǎn):

translation[0] = (-uu[pointcount]*5);

translation[1] = (-oo[pointcount]*5);

translation[2] = (-pp[pointcount]*5);

uf5943(translation,matrix);

UF_MODL_transform_entities(2, entities,matrix);

回退點(diǎn):

translation[0] = (uu[pointcount]*t);

translation[1] = (oo[pointcount]*t);

translation[2] = (pp[pointcount]*t);

uf5943(translation,matrix);

UF_MODL_transform_entities(2, entities,matrix);

在線檢測仿真系統(tǒng)界面如圖6所示.

3.3 ? 測頭干涉避障功能

利用等弧長方法生成曲面測點(diǎn),測頭進(jìn)行運(yùn)動仿真時,需要檢測該曲面測點(diǎn)與測頭是否會發(fā)生干涉.本文針對復(fù)雜曲面所研究的干涉會出現(xiàn)兩種:一種是曲率干涉,表明測針檢測工件時,曲面曲率較小,導(dǎo)致測頭與曲面發(fā)生碰撞;另一種是測頭從圖5所示P1到P2運(yùn)動干涉,表明測頭從當(dāng)前點(diǎn)運(yùn)動到下一個點(diǎn)時,測頭與曲面之間抬高的距離不夠,則測頭會與工件產(chǎn)生碰撞.當(dāng)測頭與曲面發(fā)生干涉時,會出現(xiàn)干涉提示,此時,利用最小距離法進(jìn)行安全避障,設(shè)定測球與曲面最小距離不能大于0.000 1,如果大于此公差,需要重新進(jìn)行判斷,直到公差小于0.000 1,所用到的干涉函數(shù)為UF_MODL_check_interference以及最小距離函數(shù)為UF_MODL_ask_minimum_dist.

干涉檢驗(yàn)及避障的部分函數(shù)代碼如下:

UF_MODL_check_interference(object_tag,1,&entities[0],&results);

if (results ==1)

{uc1601("有干涉?",1);

int results;

tag_t body_1 = object_tag;

tag_t body_tool = entities[0];

UF_MODL_check_interference(body_1,1,&body_tool,&results);

UF_MODL_ask_minimum_dist(body_1,body_tool,0,guess1,0,guess2,&min_dist,pt_on_ent1,pt_on_ent2);

while(min_dist >= 0.0001)

{double translation [ 3 ] = {0,0,-min_dist};

uf5943(translation,matrix);

uf5947(matrix,&body_tool,&objects,&move,&layer,&trace_curves,&body_tag2,NULL,&status);

dist3 -= min_dist;

UF_MODL_ask_minimum_dist(body_1,body_tool,0,guess1,0,guess2,&min_dist,pt_on_ent1, pt_on_ent2); }

首先設(shè)置好測頭參數(shù),導(dǎo)入測點(diǎn).當(dāng)測頭進(jìn)行仿真運(yùn)行時,從第一個接觸點(diǎn)開始進(jìn)行自動判斷.如果沒有發(fā)生干涉,測頭從圖5所示P1到P2運(yùn)動到下一個點(diǎn),當(dāng)下一個點(diǎn)產(chǎn)生圖7所示曲率干涉時,會出現(xiàn)提示有干涉.此時,將測頭抬高,自動尋找當(dāng)前點(diǎn)旁邊坐標(biāo)的最優(yōu)點(diǎn),判斷測頭與工件接觸時,在沒有出現(xiàn)干涉情況下,與工件之間的最小距離間隙.當(dāng)最小間隙滿足所設(shè)定的公差范圍,即該點(diǎn)定義為當(dāng)前坐標(biāo)檢測最優(yōu)點(diǎn),調(diào)整測頭與當(dāng)前點(diǎn)之間間隙如圖8所示,當(dāng)間隙在公差范圍之內(nèi),進(jìn)行下一個點(diǎn)檢測.

4 ? ?結(jié)束語

本文介紹了UG二次開發(fā)的基礎(chǔ)知識以及UG自帶的干涉檢查模塊分析,并將UG與Visual Studio開發(fā)軟件相結(jié)合,對UG運(yùn)動仿真以及干涉避障模塊進(jìn)行二次開發(fā),解決了UG中干涉檢查模塊不可以判斷運(yùn)動物體之間的干涉情況以及需要手動選擇干涉的部位的弊端,為后續(xù)進(jìn)行在線檢測實(shí)驗(yàn)做了鋪墊,以防測頭運(yùn)行過程中出現(xiàn)撞針.

參考文獻(xiàn)

[1] 劉彥臣,李戰(zhàn)芬,李彩霞,等.基于加工文件的復(fù)雜曲面反求研究[J].中北大學(xué)學(xué)報(自然科學(xué)版),2011,32(2):154-157.

[2] 陳祥林,丁天懷.曲面間隙測量電渦流傳感器探頭的性能研究[J].測試技術(shù)學(xué)報,2005,19(4):437-441.

[3] 湯慧,陳岳坪,陳大偉,等.復(fù)雜曲面的加工誤差分析[J].廣西科技大學(xué)學(xué)報,2016,27(3):17-20.

[4] 裘祖榮,石照耀,李巖.機(jī)械制造領(lǐng)域測量技術(shù)的發(fā)展研究[J].機(jī)械工程學(xué)報,2010,46(14):1-11.

[5] 白瑞平,王愛玲.基于數(shù)控機(jī)床的齒輪超聲自動檢測技術(shù)[J].中北大學(xué)學(xué)報(自然科學(xué)版),2008,29(5):413-416.

[6] 郜亮,侯開虎.基于UG的二次開發(fā)在裝配干涉檢測中的應(yīng)用[J].中國制造業(yè)信息化,2012,41(9):69-71,75.

[7] 衡思迎,常青,鄧?yán)?,?基于UG二次開發(fā)的沖壓模具靜態(tài)干涉檢查研究[J].模具制造,2017(10):24-26.

Abstract:In the actual processing and testing process, the measuring points generated by the complex curved surface are inspected in turn. During the inspection process, the probe may collide with the workpiece due to the path planning or surface curvature problem. In order to prevent the probe stylus and workpiece from interfering during the online inspection process, the UG interference module needs to be redeveloped. Presenting the basic knowledge of UG secondary development and built-in interference module analysis, associating Visual Studio with the UG function based on the UG platform, this paper uses UISTyler and MenuSeript development tools to implement interference inspection and obstacle avoidance in online detection.

Key words:UG secondary development; interference inspection; obstacle avoidance

(責(zé)任編輯:黎 ? 婭)

主站蜘蛛池模板: 日本高清有码人妻| 亚洲一区二区三区麻豆| 高清色本在线www| 国产一区亚洲一区| 欧美 亚洲 日韩 国产| 国产精品私拍在线爆乳| 日韩人妻精品一区| 国产精品区视频中文字幕 | 波多野结衣一级毛片| 日本中文字幕久久网站| 免费观看成人久久网免费观看| 99热这里只有成人精品国产| 国产一级视频久久| 免费 国产 无码久久久| 91毛片网| 91精品国产丝袜| 国产精品一线天| 国产 在线视频无码| 亚洲国产无码有码| 亚洲狠狠婷婷综合久久久久| 2021亚洲精品不卡a| 97超碰精品成人国产| 久久久久久午夜精品| 99久久无色码中文字幕| 国产福利微拍精品一区二区| 鲁鲁鲁爽爽爽在线视频观看| 真人高潮娇喘嗯啊在线观看| 日韩无码黄色| 国产成人高清精品免费软件 | 第九色区aⅴ天堂久久香| 乱人伦中文视频在线观看免费| 国产女人在线视频| 欧美另类图片视频无弹跳第一页| 国产精品一区二区不卡的视频| 青青草一区二区免费精品| 老熟妇喷水一区二区三区| 国产69精品久久久久孕妇大杂乱 | 国产精品对白刺激| 国产午夜福利片在线观看| 国产视频你懂得| 国产91熟女高潮一区二区| 色综合a怡红院怡红院首页| 国产成人欧美| 国产福利小视频高清在线观看| 国产麻豆91网在线看| 一区二区三区四区精品视频| 伊人久久综在合线亚洲2019| 2021最新国产精品网站| 日韩专区第一页| 国产精品原创不卡在线| 中国一级毛片免费观看| 9999在线视频| 久久综合九色综合97网| 欧美日韩国产在线播放| 国产成人在线小视频| 国产96在线 | 88av在线播放| 中文字幕无码制服中字| 国产91蝌蚪窝| 欧美色视频日本| 免费观看三级毛片| 91在线播放免费不卡无毒| 视频二区国产精品职场同事| 免费观看国产小粉嫩喷水| 国产日韩精品欧美一区灰| 幺女国产一级毛片| 国产欧美在线| 99视频免费观看| 久久久久久久蜜桃| 91在线精品免费免费播放| 伊人久久久大香线蕉综合直播| 国产无人区一区二区三区| 国产免费精彩视频| 日本午夜在线视频| 中文字幕天无码久久精品视频免费| 国产喷水视频| 国产打屁股免费区网站| 亚洲三级a| 亚洲欧美另类日本| 亚洲男人的天堂在线| 亚洲二区视频| 9久久伊人精品综合|