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

基于UG二次開發干涉避障仿真研究

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

方瑞 陳岳坪

摘 ? ?要:在實際的加工檢測過程中,對復雜曲面生成的測點依次進行檢測,檢測過程中可能會因為路徑規劃或者曲面曲率大小問題導致測頭碰撞工件,為了防止在線檢測過程中測頭測針與工件產生干涉,需要對UG干涉模塊進行二次開發.在簡要闡述了UG二次開發基礎以及UG自帶的干涉模塊分析基礎上,基于UG平臺,將Visual Studio與UG函數進行關聯,利用UG中的UISTyler和MenuSeript開發工具,實現了在線檢測中的干擾檢測和避障.

關鍵詞:UG二次開發;干涉檢測;避障

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

引言

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

1 ? ?UG二次開發基礎

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

2 ? ?干涉檢查模塊的應用分析

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

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

3 ? ?干涉避障模塊的二次開發分析

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

1)測頭運動仿真模塊參數設置

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

2)曲面信息的抓取

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

3)曲面測點生成模塊

該模塊可以根據獲取的曲面信息,根據曲面上的法失,利用等弧長方式對曲面自適應地生成一系列測點.

4)導入測點數據模塊

該模塊在曲面測點生成完成和對測針參數設置完畢之后,將需要檢測的數據點導入到系統當中進行檢測.

5)干涉檢查模塊

此模塊是檢查在檢測過程中是否會出現干涉情況,以免在實際操作過程中發生危險.

6)自動避障模塊

此模塊是根據干涉模塊延伸出來的,當測針與物體發生干涉時,測針會自動規劃路徑尋找最優點,達到防止測針與物體相撞功能.

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

3.1 ? 用戶菜單及對話框創建

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

菜單腳本代碼如下:

VERSION 120

EDIT UG_GATEWAY_MAIN_MENUBAR

HIDE UG_HELP

!一級菜單編輯

BEFORE UG_HELP

CASCADE_BUTTON MENU_ID_1

LABEL 數控機床在線檢測系統

END_OF_BEFORE

!二級菜單編輯

MENU MENU_ID_1

BUTTON MENU_ID_1_2

LABEL 檢測代碼生成與數據處理

ACTIONS UFDLG_1

END_OF_MENU

!三級菜單編輯

MENU MENU_ID_1

BUTTON MENU_ID_1_3

LABEL 在線檢測仿真系統

ACTIONS UFDLG_2

END_OF_MENU

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

為了方便操作UG與用戶開發程序之間的互通,利用樣式編輯器創建用戶對話框,將生成結束的對話框產生的.dlg文件保存于application文件夾中.

3.2 ? 測頭運動仿真研究

實現干涉碰撞仿真之前,需要對測頭進行運動仿真,測頭從P1運動到M,再返回P1,再進行下一個點檢測,從P1運動到P2,再從P2運動到N,返回P2.測頭運動的原理如圖5所示.

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

測頭從檢測點M運動到檢測點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);

逼近測點:

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);

測量點:

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);

回退點:

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);

在線檢測仿真系統界面如圖6所示.

3.3 ? 測頭干涉避障功能

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

干涉檢驗及避障的部分函數代碼如下:

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); }

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

4 ? ?結束語

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

參考文獻

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

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

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

[4] 裘祖榮,石照耀,李巖.機械制造領域測量技術的發展研究[J].機械工程學報,2010,46(14):1-11.

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

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

[7] 衡思迎,常青,鄧磊,等.基于UG二次開發的沖壓模具靜態干涉檢查研究[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

(責任編輯:黎 ? 婭)

主站蜘蛛池模板: 久久免费看片| 久久青草免费91观看| 国产一国产一有一级毛片视频| 国产簧片免费在线播放| 国产成人精品在线| 国产福利不卡视频| 成人免费视频一区| 日日摸夜夜爽无码| 男女精品视频| 黄色网站不卡无码| 欧美精品导航| 欧美在线观看不卡| 久久青草精品一区二区三区| 亚洲手机在线| 国产午夜看片| 国产91丝袜在线播放动漫 | 99国产精品一区二区| 久久综合色天堂av| 日韩在线视频网站| 欧美激情网址| 无码国产伊人| 蜜桃视频一区| 国产一级裸网站| 成人精品视频一区二区在线| 麻豆精品在线| 亚洲人成电影在线播放| 日本a∨在线观看| 欧美日韩导航| 亚洲一级无毛片无码在线免费视频| 日韩黄色大片免费看| 亚洲电影天堂在线国语对白| www精品久久| 丁香五月亚洲综合在线| 国产精品亚洲五月天高清| 久久久久免费看成人影片| 九色视频线上播放| 伦精品一区二区三区视频| 青草娱乐极品免费视频| 久久久国产精品免费视频| 日韩欧美网址| 好久久免费视频高清| 免费99精品国产自在现线| 伊人91在线| 成人精品午夜福利在线播放| 国产成人精品一区二区不卡| 国产成人精品日本亚洲77美色| 日本午夜三级| 午夜爽爽视频| 日本免费a视频| 久久人与动人物A级毛片| 国产一级特黄aa级特黄裸毛片| 亚洲色图在线观看| 色婷婷狠狠干| 天堂岛国av无码免费无禁网站| 狼友视频一区二区三区| 国产真实二区一区在线亚洲| 亚洲国产成人在线| 国产成人在线无码免费视频| 久久婷婷色综合老司机| 精品精品国产高清A毛片| 色窝窝免费一区二区三区| 国内a级毛片| 久久青草精品一区二区三区| 日本亚洲欧美在线| 手机精品福利在线观看| 国产农村妇女精品一二区| 中文纯内无码H| 欧美国产三级| 国产在线第二页| 欧美日韩高清| 国产人免费人成免费视频| 欧美性猛交一区二区三区| 乱人伦99久久| 国产精品爆乳99久久| 97视频免费在线观看| 精品久久国产综合精麻豆| 亚洲人成网站在线观看播放不卡| 国产成人福利在线| 黄色网页在线观看| 亚洲系列无码专区偷窥无码| 美女被躁出白浆视频播放| 玩两个丰满老熟女久久网|