,,, ,
(廣東工業大學 機電工程學院,廣東 廣州 510006)
目前汽車精沖工件的檢驗方式是靠人工采用專用量具進行檢驗。例如,簡單形狀的沖壓件的檢測,通常采用通用檢測器具如量規、卡尺等進行檢測。對復雜零部件的檢測需要采用如樣板檢具、投影儀等進行檢測。這些檢具存在著諸多功能限制,往往造成復雜零部件的某些部位不能精確檢測。專用檢具不具有通用性,不但增加了生產成本,而且對于復雜的曲面基本無能為力。
為此國內有學者對此類檢測進行了大量研究改進。文獻[1-3] 探討了機器視覺檢測技術,文獻[4]則提出了一種視覺檢測平臺的設計。
本文基于機器視覺、激光檢測、數字控制、DXF圖紙解析、智能路徑算法、圖像拼接等技術,通過軟硬件設計研發了一種新型檢測技術及裝備,能有效解決目前復雜零件精密測量難題。
本文研究的測量對象是尺寸范圍在600 mm*600 mm*8 mm的復雜精沖件,采用固定檢測對象,移動相機對準采樣點進行采樣的方案。為達到高精度的要求,在運動控制上使用X-Y-Z3個方向的精密伺服控制器,每個軸都安裝了光柵尺,精度為2 μm/脈沖;X-Y平面測量采用500百萬像素工業相機,設置的局部視場大小達到精度0.01 mm/像素;Z方向測量使用分辨率為5 μm的激光位置傳感器;平臺基底使用形變極小的標準大理石裝夾水平臺。系統整體設計如圖1所示,其硬件架構如圖2。
圖1 整體設計
圖2 硬件架構
檢測流程大致為:
1) 導入并解析需要檢測零件對應的DXF圖紙文件(在缺少圖紙文件時,為方便檢測輸入,設計了簡單圖形的手工繪制界面);
2) 依據相機視場大小和待采集參數,計算出每個采樣點的坐標,通過X-Y軸精密伺服運動機構定位固定在Z軸上的檢測頭(相機和激光傳感器)至采樣點,依次進行拍照或者測距(或粗糙度);
3) 結合光柵反饋的位置坐標進行圖像拼接,調用對應圖像處理算法計算出尺寸參數,對比圖紙文件中的標注信息計算誤差并生成檢測報表;
4) 將檢測結果寫入歷史數據庫,刷新SPC控制圖。
由于需要照片分辨精度達到至少0.01 mm,即在使用分辨率為2 560*1 920像素的相機條件下,其寬度方向上的單像素識別精度應該≦0.01 mm,那么根據公式(1)可以得到相機采樣視場:
h≤1 920*0.01=19.2 mm
w≤2 560*0.01=25.6 mm
(1)
由于相機不可避免存在鏡頭畸變,越靠近視場外沿畸變越大,并且畸變校正也會產生誤差,所以為了后期處理使用畸變較小的圖樣,同時盡可能覆蓋到更多零件信息,截取最大內接正方形80%的視場范圍是比較合理的,那么有效采樣視場利用公式(2)算出:
l有效=19.2*0.8=15.36 mm
(2)
即最大有效視場為15.36 mm*15.36 mm。
當采集大尺寸參數時,一個視場并不能完全覆蓋,此時需要移動相機拍攝多幅照片,然后拼接出整體圖像。
下面兩幅圖中矩形框代表一張采樣照片的有效視場,照片的中心(焦點)對準邊緣上的采樣點,每張照片的中心坐標可以通過光柵尺反饋得到,此坐標即作為照片拼接的依據。
拼接原理如圖3所展示。
圖3 采集照片拼接示意
圖3中有一個大尺寸參數需要檢測,分析可知需要采集至少4幅照片,同時得到4個光柵反饋坐標,經過相機標定后可以得到光柵坐標與像素的轉換比從而得到像素坐標,最后用像素坐標在空白畫布上拼接合成檢測對象的完整照片,得到整個邊緣對象。
在得到檢測對象完整照片后,經多次實驗,應用灰度拉伸、二值化、濾波、邊緣提取等基本圖像處理算法后[5],可以提取出比較理想的基本圖元(直線、圓、弧等),處理效果如圖4所示。
圖4 照片(左)與處理圖(右)
單獨的檢測對象,如半徑、直線度、線長等其本身參數獲取不依賴于相對坐標,可以直接擬合得到。但對于線線距離、點線距離、圓心距離、線段夾角等復合檢測對象,需要先測算了其中每一個基本對象的參數后才能得到整個復合對象的參數,即依賴基本對象間的相對坐標。
圖5展示了圓心到直線的距離測算依據:
圖5 孔到線距離測算依據
A為一張照片拍攝的孔,其擬合圓心對于照片左上角的相對坐標為(Δx,Δy);B為兩張照片拼接成的直線邊緣(垂直于坐標系),其擬合直線到照片左側距離為Δl。設照片A的光柵坐標為(xA,yA),照片B的光柵坐標為(xB,yB),那么孔到線的距離L由公式(3)可算出:
L=y=|(yA+Δy)-(yB+Δl)|
(3)
圖6展示了兩線夾角的測算依據:
圖6 線與線夾角測算
在線與線夾角的測算中不需要完全擬合兩條直線,只需要得到其端點,即可利用“兩點一線”計算出其夾角,與孔到線距離測算類似可得到圖7中的4個端點:P1(x1,y1)、P2(x2,y2)、P3(x3,y3)、P4(x4,y4)。然后利用公式(4)算出夾角:
(4)
Z方向高度可直接讀取激光傳感器,要測量零件的Δh(高度或粗糙度),必須首先標定基準平面(大理石載物臺)h0,然后計算測量差值即可,如公式(5),公式中的H為讀取激光傳感器的值:
Δh=H-h0
(5)
激光傳感器的中心(打光點)與相機視場中心不可避免存在偏移,而所有測量點都是對準視場中心的,那么基于視場中心的采樣點坐標就不適用于激光傳感器,必須進行X-Y運動修正,又因為相機焦距是固定為C的,激光傳感器測量范圍在L±l,所以不能在同一高度進行測量,需要Z方向的運動修正,圖7展示了這些坐標偏差:
圖7 相機與激光傳感器坐標偏差
假設圖7中激光中心到視場中心的偏差為Δx、Δy,那么設定采樣點坐標(x,y)與激光測量實際坐標(xl,yl,zl)的關系如公式(4):
xl=x+Δx
yl=y+Δy
zl=C-L
(4)
在進行激光測量時使用公式(4)計算出的坐標進行修正即可。
檢測頭的定位坐標如果是由人工計算輸入的,那么當采樣點數較多時操作量會變得特別大,這就降低了檢測平臺的速度,所以需要配套設計一種自動得到定位坐標的方法。
得到的定位點都是散點,而相機拍攝時要求相關聯的檢測對象必須連續拍照,所以還要對這些散點進行排序優化,使路徑在盡量短的同時滿足拍攝條件。
一般的零件加工都依據其CAD設計圖紙,那么CAD圖紙文件里包含了零件所有的形位信息,就可以根據這些信息來確定采樣點坐標。[2]
DXF是CAD的一種數據交換格式,以帶標記數據形式表示AutoCAD圖形文件中包含的所有信息,參考DXF開發手冊,可知帶標記數據是指文件中每個數據元素前面都帶有一個稱為組碼的整數——指出了數據元素類型以及對于給定對象的含義,如表1所示。
表1 圓圖元組碼含義
因為零件圖紙的各個圖元信息都按此規則儲存,所以可以很方便地設計出提取程序,流程圖如圖8所示。
圖8 圖元信息提取流程
3.1.1 圓或圓弧的解析
得到圓心、半徑、開合角后就得到了圓或圓弧的輪廓,在輪廓軌跡上可確定相機定位坐標,依據公式(6)、(7):
n=|(B-A)/Δθ|
(6)
(7)
公式(6)中的r與R分別代表相機視場半徑與圓半徑,A、B代表圓弧起始角與終止角;公式(7)計算出了輪廓上每個定位點的坐標。
3.1.2 橢圓或橢圓弧的解析
由于橢圓的曲率半徑是變化的,所以無法直接套用公式(6)來得到步進角Δθ,擬用最大的R值來代替,定位坐標同樣利用公式(7)可得。
3.1.3 多段線的解析
多段線其實就是多條線段相連組成的整體,可以提取到每條線段的起點和終點,分別計算單段的定位點然后整合即可,單段計算公式如(8)、(9):
可用于圖書館導航、入館教育、參考咨詢、快速找書、館藏揭示等,目前國內圖書館研究討論的多,實現的少;國外圖書館實現的多。
n=|L/2*r|
(8)
(9)
公式(8)中的L代表線段長度;公式(9)中的α代表線段與X軸夾角。
3.1.4 標注信息
標注的組碼中,有測量標注和文字標注兩類。測量標注是在繪制時按照實際值自動產生的標注,文字標注則是用戶自行輸入的字符,其中測量標注是可選的,即在沒有測量標注的情況下會使用文字標注,但由于文字標注并不對應實際尺寸,所以一般只需要提取測量標注。
在圖紙解析得到定位點的過程中,圖元間定位的順序依賴于圖紙文件中數據的排序,也就是繪圖的順序,這個順序是隨機的,并不滿足圖像視覺處理的順序——圖元關聯順序,而且不拍照的運動間隙時間也影響著實時性,所以要求相機跨越圖元間距離盡可能短。
對于跨越距離短的要求,可以用貪心算法來解決,如圖9,從起點A去遍歷其余4個節點,每個節點的編號代表其默認排序,虛線箭頭則為其默認路徑:
圖9 隨機排序的路徑
圖10是使用了貪心算法后得到的路徑,從A節點開始,只尋找距離最近的下一個節點:
圖10 隨機排序的路徑
實際上,圖9和圖10中的每個節點都是單個或者多個聯合圖元上的定位點集合,不能簡單的進行連接,以下分情況討論:
1)兩個節點都是單圖元集合的連接
每個集合都有首尾,共有4種連接方式,即首-首、首-尾、尾-尾和尾-首,找到其中最短連接即可,如圖11,兩個單線段圖元以尾-尾連接最短:
圖11 兩個單線段圖元的連接
2)一個節點是單圖元、另一個是多圖元的連接
例如,在兩線夾角檢測中涉及了兩條直線,那么這樣一個檢測項目就包含了兩個圖元,也就是在一個節點中含有兩個圖元——聯合圖元,這樣的聯合圖元首先內部排序必須滿足圖像處理要求,在內部排序完畢后,再將其作為一個整體圖元與另外的圖元按照分類1)的方法連接。
圖12展示了一個“夾角圖元”與另一個單線段圖元的連接:
圖12 “夾角”與線段的連接
3)兩個節點都是多圖元集合的連接
與方法2) 大致相同,遵守表2中的規則。
表2 多圖元內部排序規則
最后對某常用檢測件進行圖紙解析測試,得到下圖13中的路徑,圖中紫色為設定原點,藍色為檢測對象參數,十字標記了采樣點位置,虛線表明路徑方向:
圖13 智能路徑算法效果
使用經過標定后的前文所提工件,分別測量其上臂寬(圖14)和右孔距(圖15)各3次,取其平均測量結果,如表3所示。
圖14 上臂寬測量標示
圖15 右孔距測量標示
由表3數據可初步判定,檢測精度達到了±0.010 mm的范圍。
表3 測量報告
本文主要研究開發了一種基于機器視覺、激光測量等技術的新型智能化大尺寸復雜精沖零件檢測平臺。經初步運行結果表明,系統在測量600*600*8 mm復雜精沖件時精度達到±0.010 mm。
本設計的實現,不僅可以滿足精沖零件檢測領域提出的便捷、快速、精確、智能化等全新要求,而且具備強大的拓展性能。在軟硬件上皆可快速部署并應用到其他大尺寸零件的檢測和復雜曲面的加工,例如雕刻加工。
[1] 劉霞. 工業零件形狀尺寸的機器視覺檢測系統的研究[D]. 哈爾濱:哈爾濱理工大學, 2009.
[2] 梁艷青. 基于DXF文件的數控自動編程系統的設計與實現[D]. 沈陽:中國科學院沈陽計算技術研究所,2015.
[3] 鄧小峰. 基于機器視覺的零件識別和測量系統研究[D]. 南京:南京航空航天大學, 2014.
[4] 葉 鵬,高興宇. 基于機器視覺的工業零件通用檢測平臺[J]. 桂林電子科技大學學報,2016,36(3):227-230.
[5] 付 泰,王桂棠,程書豪,等. 基于機器視覺的復雜平面零件尺寸精密檢測[J]. 機電工程技術,2016,45(08):7-9.
[6] 伍濟鋼. 薄片零件尺寸機器視覺檢測系統關鍵技術研究[D]. 武漢:華中科技大學,2008.
[7] Liu Y Q. Design and implementation of motion control system based on motion control card[J]. Microcomputer Information, 2010.
[8] Yang G, Xu F. Research and analysis of Image edge detection algorithm Based on the MATLAB[J]. Procedia Engineering, 2011, 15(1):1313-1318.