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

AnyCAD控件在工件打磨軟件開發中的應用

2022-11-16 10:11:46吳焱明仲彥霖吳文淵朱文波岳東東
機械制造 2022年8期
關鍵詞:模型

□ 吳焱明 □ 仲彥霖 □ 丁 濤 □ 吳文淵 □ 朱文波 □ 岳東東

合肥工業大學 機械工程學院 合肥 230009

1 應用背景

全自動打磨系統需要解決的一個重要問題是自動獲取工件需要打磨的位置信息,然后將位置信息轉換為路徑信息。在現有研究中,路徑規劃主要采用計算機輔助設計、計算機輔助制造,以及基于手工示教的路徑規劃。

工業機器人的示教方式主要是示教盒示教,利用機械臂進行打磨,通過示教生成移動路徑上工業機器人的位置、姿態,記錄并上傳至工業機器人控制器。丁健偉[1]研究了工業機器人示教系統與示教交互管理軟件的開發,完善了傳統示教系統,增強了人機交互感。許揚[2]針對傳統示教編程的局限性,以及工業機器人快速工作這一目標,提出基于示范學習的示教方法,使工業機器人具備較強的學習能力和決策能力,但是交互方式不靈活,學習效率低,尚處于理論階段。以上對傳統示教方式的改進無法改變工業機器人需要隨著打磨對象的改變而頻繁示教的局限性。

謝小輝等[3]提出通過Unigraphics軟件二次開發接口,構造與Unigraphics軟件無縫集成的工業機器人打磨拋光離線編程系統。在Unigraphics 軟件中對工件進行離線打磨編程,將生成的數控加工代碼導出,進一步重組數據,轉換為工業機器人可以識別的數據格式。然后將程序導入工業機器人系統,實現打磨。李雙[4]應用SolidWorks軟件進行二次開發,搭建工業機器人離線編程系統,實現計算機輔助設計軟件、計算機輔助制造軟件與離線編程一體化。需要注意的,離線編程軟件的開發受到特定軟件的約束,在得出數控加工代碼后,要轉換為工業機器人系統能夠識別的代碼也不容易,不同品牌工業機器人的應用程序各不相同,想要設計出通用的轉換模塊難度較大。

無論是手工示教還是離線模式的路徑獲取,均需要操作人員有一定的工業機器人知識與編程能力。示教盒示教方式還需要操作人員接觸復雜、危險環境,這對于協作交互任務而言有很大限制。由此可見,傳統示教方式很難滿足中小型企業實際應用中對工件切換過程快速性、低成本及操作簡易性的要求。對此,筆者提出在工件打磨軟件開發中應用AnyCAD控件,通過AnyCAD控件三維引擎解析工件三維模型標準格式文件,獲取所需要的加工信息,自動確定打磨位置,處理為合適的路徑點,提供給機械臂進行加工。AnyCAD控件的基礎模塊包含模型顯示、幾何造型、數據交換等功能,AnyCAD控件的核心功能基于C++語言實現,二次開發接口支持.Net開發環境。

2 加工對象

箱體類鈑金焊接件表面打磨處如圖1所示,內部焊接處如圖2所示。箱體類鈑金焊接件在拐邊拼接處有長條型焊接面,有很多焊瘤和焊縫需要進行打磨處理。焊接點會造成箱體類鈑金焊接件內表面局部熱變形,產生斑點,這些地方同樣需要打磨。

▲圖2 箱體類鈑金焊接件內部焊接處

3 軟件功能

全自動打磨機軟件能夠讀取STEP或STP格式文件。STEP格式是一種產品數據模型交換標準,廣泛用于三維圖形的數據交換。讀取文件后,進行三維可視化,通過人機交互,可以直接觀察工件及所需要打磨區域的位置。通過AnyCAD控件三維引擎中的模型造型引擎AnyGeom進行幾何模型造型,通過AnyCAD控件三維引擎中的三維顯示引擎AnyViz進行三維可視化展示。要想獲得打磨區域的位置信息,可以通過算法自動得到交疊面,但是隨著工件數量的增加及復雜程度的提高,各工件的交疊面數量繁多且復雜,十分影響判斷,很難做到完全判斷出交疊處是否為確定的打磨面。在三維圖紙導入程序之前將需要打磨區域標注出來,然后通過所開發的軟件識別這些標注,實現打磨面的確定,這是一個很好的解決方法。打磨區域的標注方式是將打磨面標記特定顏色。程序能夠獲取模型表面的打磨面標注,即可以獲得需要的確切打磨區域位置信息。自動獲取工件打磨區域位置信息后,進行算法處理,得到最終所需要的路徑信息。工件打磨軟件流程如圖3所示。

▲圖3 工件打磨軟件流程

4 軟件功能模塊

4.1 三維模型

AnyCAD控件支持讀取IGES、STEP、DXF格式文件,不同格式文件的讀取方法不同,同一格式文件也可以采用不同的讀取方法,所能獲得的信息當然也不相同。AnyCAD控件數據交流模塊所提供的STEP格式文件讀取器可以讀取三維模型文件,想要讀取模型上的打磨面標注,需要對STEP格式文件讀取器的參數進行處理。模型讀取代碼如圖4所示。

▲圖4 模型讀取代碼

模型讀取代碼中,FileName為STEP格式文件名,brush的作用是收集TopoShape對象和模型面的屬性。ColorBrush類繼承TopoShapeReaderContext類,內部有兩個重要方法。方法OnSetFaceColor()可以依次用讀到的顏色創建FaceStyle對象,通過FaceStyle將對象打磨面的標注顏色傳遞至創建中的模型,未讀取的標注顏色添加至詞典faceStyleDictionary。方法OnFace()將當前讀取到的標注顏色賦值至模型對應的打磨面,同時將與特殊標注顏色匹配的打磨面及與之對應的場景節點存入詞典topo_Node中。在詞典對象Dictionary faceStyleDictionary中,鍵為RGB顏色值,值為FaceStyle對象,這一詞典用于存儲加載文件時模型的顏色。在詞典對象Dictionary topo_Node中,鍵為SceneNode對象,值為TopoShape對象,用于存儲場景節點和對應加入至此場景節點的TopoShape對象,在獲取打磨面信息過程中需要使用到。模型賦色和topo_Node獲取流程如圖5所示。

▲圖5 模型賦色和topo_Node獲取流程

4.2 可視化處理

三維可視化通過AnyCAD控件顯示引擎完成,工作原理為得到RenderWindow3d類實例化對象的屬性View3d,通過View3d類實例化對象獲取場景渲染器及場景節點,將待顯示的物體通過場景節點SceneNode類進行實例化,通過Geometry、Shape等相關類描述形狀,通過Material類描述外觀、材質等,并通過Matrix、Transform類管理物體位置及觀察視角[5]。渲染器及場景節點的獲取流程如圖6所示。將物體與指定場景節點綁定后,將場景節點加入場景管理器,通過場景管理器管理所有場景節點。

▲圖6 渲染器和場景節點獲取流程

只有已加入到場景管理器中的場景節點,才能夠被顯示引擎顯示,采用RenderWindow3d類實例化對象的ShowGeometry()方法可以完成這一步驟,同時可以獲得需要顯示的TopoShape對象所掛接的場景節點,并應用這一場景節點設置面的屬性。顯示模型并獲得場景節點代碼如圖7所示。

▲圖7 顯示模型并獲得場景節點代碼

三維可視化處理結果如圖8所示,標注的打磨區域用方框包圍。

▲圖8 三維可視化處理結果

對模型導入時獲取的詞典topo_Node的場景節點進行遍歷,找到符合標注條件的場景節點,獲得與之對應的topoShape對象。用TopoShapeProperty類實例化對象獲取topoShape對象的頂點坐標信息。Vector3是頂點的類型,包含空間坐標系的三個坐標分量。位置信息獲取代碼如圖9所示。

▲圖9 位置信息獲取代碼

5 頂點擬合

每個加工面上通過ExplorVertices()方法獲得的頂點數量未知,原因是一條邊不是單純的直線線段,或邊線與其它邊線有交點。根據對加工對象進行分析,一些距離很小的頂點沒有必要同時存在,因此對這些點進行擬合非常有必要。將盤型磨具端面看作一個有一定直徑的虛擬圓,參照虛擬圓的尺寸對所有面進行歸類擬合。因為加工對象是斑點狀及帶狀條形打磨面,所以歸類為Ⅰ型面和Ⅱ型面。PointLocation類用于獲取擬合后的頂點,對每一個打磨面進行頂點擬合后,所有頂點存入對應的List集合中。

對于可用盤型磨具端面全覆蓋的Ⅰ型面點狀區域,當盤型磨具端面尺寸確定后,虛擬圓直徑也就確定,可以被虛擬圓完全覆蓋的凸多邊形面可以看作一個點。對一些面積較小且形狀不規則的待打磨面進行標注時,用規則的矩形進行標注。由此Ⅰ型面的確定條件為一個面對應的頂點集合中距離最遠的兩個點之間的距離小于虛擬圓直徑。矩形最小覆蓋圓如圖10所示,矩形對角線為最小覆蓋圓的直徑。

▲圖10 矩形最小覆蓋圓

對于可以看作一條線的Ⅱ型面帶狀區域,如圖11所示,當四邊形中兩條邊的長度小于虛擬圓直徑,但又不滿足Ⅰ型面的條件時,可以將這兩條邊擬合為一個點,這樣保存兩個頂點即可。這兩個頂點就是將這個打磨面看作一條線后的兩個端點。

▲圖11 Ⅱ型面帶狀區域

6 路徑規劃

6.1 建模

獲取各打磨區域的頂點坐標后,需要對打磨區域進行路徑規劃。機械臂打磨的整體路徑要盡可能短,如果將所有打磨區域看作一個點,那么這一問題可以抽象為旅行商問題[6],即給定一系列城市和兩兩城市之間的距離,求解旅行商訪問每一座城市一次并回到起始城市的最短路徑問題。對于這一問題,國內外很多學者進行了研究,利用蟻群算法[7]、布谷鳥搜索算法[8]、粒子群算法[9]、遺傳算法[10]等進行求解。

從基于笛卡爾空間的路徑規劃角度看,在打磨面的三維坐標已經確定的情況下,要求從起始點開始到走完所有打磨面后的距離之和最短。但是對于箱體類工件而言,在三維空間中進行旅行商問題求解時,由于存在地形限制,兩點之間的距離并非簡單求出兩點的歐氏距離。考慮以上因素,將三維模型展開,轉換為二維平面進行旅行商問題求解。以頂面為基礎面,將其它面展開加入頂面的方法有四種,按照實際走刀順序,每種展開又有兩種走向。箱體展開如圖12所示。如對于展開方式1,實際走刀順序有5、1、2、3、4和5、1、4、3、2兩種。

▲圖12 箱體展開

展開后平面上的打磨點二維坐標為Pi(xi,yi),i為1、2、…、n,此時路徑規劃目標就是使目標函數值L最小,函數為:

(1)

6.2 算法

借鑒模糊聚類[11]思想,并結合貪心算法[12]思想,對整體加工路徑點進行排序,以獲得一個距離為L的最優解或次優解。將打磨對象分為五個部分,考慮每個部分的點、線數量,對每個部分內部點、線采用貪心算法排序。完成各部分內部排序之后,再對五個部分按照展開方式進行排序連接,最終得到整體加工路徑點順序。

詳細算法步驟如下:

(3) 按照貪心算法思想找到面5各點、線中與隊列尾部點距離最短的點,添加入隊列,直至面5中各點、線全部添加完成;

(4) 將隊列反轉,得到正確順序;

(8) 復制隊列,保存;

(9) 按照第(6)步~第(8)步依次完成面2、面3的添加;

(11) 對第(8)步的復制隊列繼續排列,按照第(9)步、第(10)步依次完成面4、面3、面2的添加;

(12) 依照剩余三種展開方式,按照第(1)步~第(11)完成排列,比較八種排列順序總路程的長短,取總路程最短的排列順序為最終加工路徑規劃方案。

7 結束語

筆者以全自動打磨系統為研究對象,分析全自動打磨機軟件的需求,包括造型顯示、自動獲取加工面位置信息,以及對位置信息進行處理,提出應用AnyCAD控件進行工件打磨軟件的開發。介紹了造型顯示原理、獲取打磨面標注信息原理,根據實際打磨情況,對獲得的被標注打磨面進行頂點擬合,同時給出路徑規劃算法。對于中小型企業加工批量少、樣式更換頻繁的工件而言,這是一個良好的解決方案,并且可以解決加工環境惡劣、專業人員不足的問題。

猜你喜歡
模型
一半模型
一種去中心化的域名服務本地化模型
適用于BDS-3 PPP的隨機模型
提煉模型 突破難點
函數模型及應用
p150Glued在帕金森病模型中的表達及分布
函數模型及應用
重要模型『一線三等角』
重尾非線性自回歸模型自加權M-估計的漸近分布
3D打印中的模型分割與打包
主站蜘蛛池模板: 久久网欧美| 亚洲三级色| 国产凹凸视频在线观看| 刘亦菲一区二区在线观看| 日本亚洲欧美在线| 国产成人精品第一区二区| 99re这里只有国产中文精品国产精品 | 无码精油按摩潮喷在线播放| 久久77777| 久青草免费在线视频| 在线观看视频一区二区| 九九九久久国产精品| 精品小视频在线观看| 国产成人无码Av在线播放无广告| 91伊人国产| 中文字幕人妻av一区二区| 亚洲精品动漫| 欧美日韩国产系列在线观看| 久久久久人妻一区精品色奶水| 日韩欧美中文字幕在线韩免费| 爽爽影院十八禁在线观看| 國產尤物AV尤物在線觀看| 手机在线免费毛片| 欧美亚洲一区二区三区导航 | 三级视频中文字幕| 久久频这里精品99香蕉久网址| 欧美久久网| 国产亚洲精| 国产尤物jk自慰制服喷水| 欧美综合激情| 国产91精品最新在线播放| 国产成本人片免费a∨短片| 亚洲大学生视频在线播放 | 伊人久久精品无码麻豆精品| 久久国产精品影院| www.亚洲一区| 成人在线亚洲| 一级爱做片免费观看久久| 亚洲欧美激情另类| 国产人成在线视频| 久爱午夜精品免费视频| 亚洲欧美日韩成人在线| 国产精品美女免费视频大全| 99这里只有精品免费视频| 无套av在线| 欧美日韩导航| 久久久无码人妻精品无码| 久久国产高潮流白浆免费观看| 日韩久久精品无码aV| 日韩精品少妇无码受不了| 日韩欧美中文| 激情六月丁香婷婷四房播| 久夜色精品国产噜噜| 国内精品久久久久久久久久影视| 99国产精品国产| 另类综合视频| 亚洲综合一区国产精品| www亚洲精品| 国产一区二区三区在线观看免费| 中国一级特黄大片在线观看| 亚洲欧洲日韩国产综合在线二区| 成人午夜视频在线| 国产成人艳妇AA视频在线| 无码专区在线观看| 在线免费无码视频| 91尤物国产尤物福利在线| 欧美精品三级在线| 91小视频在线| 欧美午夜网| 精品一区国产精品| 欧美精品啪啪一区二区三区| 日韩久草视频| 婷婷丁香色| a级毛片视频免费观看| 国产av色站网站| 2021精品国产自在现线看| 亚洲第一视频网| www亚洲天堂| 91精品国产一区| 美女被躁出白浆视频播放| 午夜不卡视频| 永久在线播放|