曹 翀,陳 陽,劉振國,郭 瑞,李曉會
(北京機械工業自動化研究所有限公司,北京 100120)
隨著科學與技術的迅猛發展,對于產品焊后檢測的要求更加細致及規范,要求也不斷提高,設計人員及項目調試人員都希望能提供更加及時快捷方便的焊后檢測產品。但傳統的拍照視覺焊后檢測往往在以下幾方面困擾著工程師們:1)焊接時不可避免的會產生焊渣,細小的焊渣會影響產品的安全性和穩定性,但對于平面拍照檢測來說,很難將焊渣與產品表面的污漬、劃痕進行有效區分。2)很多焊接由于工藝要求,需在焊接過程中加入保護氣,而焊接過程中使用保護氣會在產品表面留下黑色痕跡,導致傳統的平面拍照檢測相片背景不干凈,結果不穩定。3)平面拍照檢測不能檢測焊接高度,所以也不能通過焊縫的體積來對焊接效果進行評估,得到焊接效果的評價。
采用新的焊后檢測系統,能夠及時、快速、準確地完成焊后檢測工作,對工業自動化焊接勢在必行。為應對系統使用方新的要求,開發一個新的焊后檢測系統成為必要。該系統的開發,汲取國內外先進焊后檢測系統的經驗與精華,以3D視覺為基礎,把焊接高度、焊接寬度、焊接長度、漏焊、缺焊等工作通過軟件快捷的實現,使焊后檢測變得精準直觀。
通過3D焊后檢測系統,工廠使用方可以直觀的在上位機界面看到焊接產品的3D模型結果,當有焊接不合格產品時,系統能自動紅燈報警,界面直接顯示不合格焊接點的位置,可單獨查看不合格焊接點的3D/2D檢測結果圖并紅色標注不合格原因及不合格區域,焊接信息上傳MES系統等功能模塊,將傳統的焊后檢測業務流程“一站式”實現,有效解決了傳統焊后系統檢測過程復雜、效率低、安全性差的缺陷,大大提高了檢測效率。
三維視覺技術主要包括雙目立體視覺和結構光三維視覺等。同時三維視覺技術依據使用場景的光照條件可以分為被動和主動兩類[1]。被動三維視覺技術是使用場景已有的光源設備對被拍物進行照明,而主動三維視覺技術是使用特殊的光源設備對被拍物進行照明。顯而易見的是被動三維視覺技術受外界光影響較大,適用于高度差較大的檢測工件。因為本系統檢測的焊點高度較小,約為0.5mm,故本系統采用主動三維視覺技術。主動三維視覺技術的基本思想是利用特定的、人工控制的光源和聲源照射目標,并根據目標表面的反射特性、光學特性和聲學特性獲得目標的三維信息[2]。
結構光三維視覺的原理是光學三角測量。如圖1所示,投影機將結構光投射到被檢測物體表面上,從而形成由被檢測物體的表面形狀調制的三維圖像。投射器在另一個位置檢測三維圖像,從而獲得燈條的二維失真圖像。當投影機和投射器之間的相對位置固定時,扭曲的二維失真圖像坐標可以再現物體表面的三維輪廓。結構光三維視覺系統由光學投影儀、攝像機和計算機系統組成[3]。
攝像機坐標系與模塊坐標系的空間位置關系可用下式表示:

其中(r1,r4,r7)、(r2,r5,r8)和(r3,r6,r9)分別表示坐標系OL-xLyLzL的xL軸,yL軸和zL軸的方向向量。
然而,上述公式不能從照相機的二維圖像點坐標(X,Y)中獲得唯一對應的三維物體點坐標(xL,yL,zL),并且需要方程的附加約束來消除這種模糊性。因此,模塊坐標系下的結構光平面方程(注意:其建立是任意的)設置如下:

通過以上推理,可以看出工件上任意點的不同高度在點結構光模式下形成許多相似的三角形幾何約束,并代表獨特的姿態。此外,該點可用于通過使二維光條圖像與高度扭曲的掃描工件相協調來重建物體表面的三維輪廓。
3D視覺焊后檢測系統主要由以下幾部分組成:固高三軸機器人本體與控制器,康耐視公司3D視覺DS1050R及控制器1套,西門子PLC S7-1200以及顯示器。本系統視覺采用移動式安裝,固定在三軸機器人手爪上跟隨手爪移動。系統通過PLC進行集成,實現系統控制,不同設備支持的通信協議(工業以太網、CC24等)不同,具體的通信方式需要根據實際情況選擇。硬件平臺如圖2所示。

圖2 焊后檢測系統硬件平臺
固高三軸機器人作為負載3D掃描槍的機構,除了在工作時負載3D視覺采集器運動,采集圖像數據以外,還需要控制器的伺服驅動器能夠實時向視覺控制器傳送ABZ的相位差信號,來確定視覺控制器運動距離。視覺控制器通過接收Y軸伺服控制器的信號來處理掃描圖像組成。
Cognex公司的DS1050傳感器負責對焊接后的電池模組進行掃描圖像,通過紅外掃描后的反光,得到工件表面的高度差信息,通過每條線的高度差信息組成了整個工件焊接表面的圖像信息。同時該傳感器可處理對分辨率要求高且需要擴大測量范圍的各種多樣化三維應用。DS1050在包含2D視覺工具的基礎上又提供了檢測三維高度、體積等三維工具。通過上述工具將復雜的機器視覺需求轉化為易于維護的解決方案。客戶在沒有熟練程序員的幫助下能夠以目前最快的速度為最具挑戰性的三維應用創建和部署完整的解決方案。
三維傳感器上的三維位移傳感器采用激光三角技術來獲取掃描部件的三維信息。無論對比度或照明條件如何,位移傳感器都可以對部件進行精確檢測。從而保證了整個焊后系統照片采樣的穩定性。
配套的檢測系統控制器選用Cognex VC5視覺控制器,最多可控制四個三維傳感器并且能夠在車間內實現通信。控制器預裝易于配置的全新軟件架構Cognex Designer?,能簡化三維應用開發又可以創建專業化外觀的圖形用戶界面。
西門子PLC負責向三軸機器人和視覺控制器傳遞工件到位信號,接收采集圖片完成信號以及將最后采集的結果上傳至MES系統中。通訊方式方面:西門子PLC通過PROFINET協議與固高控制器進行通訊,西門子PLC通過CC24通訊與相機DS1050控制器進行通訊。

圖3 系統結構圖
3.2.1 PLC交互數據功能模塊
該模塊在每天開機后先接收觸摸屏發出的初始化位指令,調動三軸機器人回原點,對程序中的標志位統一進行清除。初始化完成后,向觸摸屏傳遞初始化完成信息。當PLC傳輸過來工件到位信號時,系統控制三軸機器人按照程序運動,采集工件焊接信息,當工件上所有的焊接點信息采集完畢后,交互數據功能模塊將采集到的焊接檢測信息通過PLC上傳MES,同時發送檢測完畢信號。
3.2.2 圖像處理模塊
圖像處理模塊可以對采集到的圖像進行保存,并能對圖像進行平滑性處理。由于實際焊接中焊點圖像由于保護氣及產品材質原因,常有黑色痕跡產生,導致拍照圖像灰度值不一。通過cogtoolFix算法對圖像上每個3×3矩陣像素進行均值處理,工件采集照片中差異不大的灰度值會被過濾掉。使得圖像背景更為干凈,測量結果更加準確。
3.2.3 焊接點圖像檢測模塊
首先對圖像處理模塊處理好的工件圖像進行分割,查找到工件上12個銅排焊接區域。將查找到的12個焊接區域每個區域分割成單獨待檢測的模塊,并按照Y軸坐標從小到大依次排列。然后對每一個單獨的焊接點圖像通過特征圖形進行查找是否有漏焊,缺焊現象。如果有漏焊,缺焊現象,相機直接將區域缺焊信息上傳MES,進行錯誤信息記錄并報警。如果沒有檢測到漏焊缺焊現象,則開始記錄焊接高度,測量焊縫寬度是否符合系統界面設定的焊接寬度輸入區間。如果寬度不符合,作為錯誤信息,報警且上傳MES。高度,寬度信息檢測后,系統通過焊縫與焊接標志位的距離測量來比對是否有焊偏,通過對高度和陰影的檢測,確認焊縫中是否有毛刺現象。如果有焊偏,毛刺現象,相機直接將錯誤信息上傳MES,進行錯誤信息記錄并報警,同時將問題圖片上傳至界面供工人查看。圖4為焊縫的高度檢測,通過高度檢測結果可以直觀的得出,此焊縫的最大高度為0.269mm,最小高度為0.267mm。圖5為焊縫的寬度檢測,通過寬度檢測結果可以直觀的得出,圖示取樣的位置寬度為2.51mm。
3D視覺焊后檢測系統上位機界面開發是在Linux環境中進行,主要由于Linux操作系統占內存少、精簡、穩定、適合開發等優點。界面運用Qt使用C++語言進行編程。

圖4 焊縫高度檢測

圖5 焊縫寬度檢測
界面分為主頁面、詳細結果頁面、工具頁面和結果頁面。用戶可通過鼠標點擊對應頁面的按鈕直達想要查看的頁面。
4.2.1 主頁面
開機后顯示的第一個界面即為主界面。點擊主頁面下按鈕可進入功能界面。按鈕上方兩組藍色方框,當有工件掃描之后,掃描出來的3D照片會顯示在藍色方框中。鼠標指針停留在照片上的位置,會以藍色方框下的XYZ坐標值的方式顯示。綠色小圓點0~11代表工件上的12個焊接點,當檢測出焊接點問題時,綠色圓點會變紅。右側上方是檢測參數調整框,當有參數調整需求時,可以直接在方框內輸入要更改的數值。右側下方的結果框,當檢測一個工件整體,發現有問題時,對應的焊接問題右邊的綠色指示燈會變紅。點擊詳細結果按鈕會查看到24個焊接點中,每個焊接點的詳細信息。
4.2.2 詳細結果頁面
在此頁面中,用戶可在左側看到24個焊接點的焊接錯誤信息,每當有焊接問題檢測到時,對應的焊接問題指示燈變紅。3D焊后檢測系統能檢測到漏焊、焊穿、焊偏、焊接寬度和高度,共五種問題。用戶可以清楚直觀地看到,當有焊點錯誤出現時,問題焊點位置,焊點具體問題。并可以通過工具頁面對有問題的工件直接查看焊點圖片。
4.2.3 工具頁面
在圖像保存設置欄中,勾選保存圖像框或保存結果數據框,則系統可以自動將采集到的照片或最后結果數據信息保存到指定的文件夾中。如果想更改保存路徑,則點擊右側的瀏覽按鈕,重新選擇照片保存的文件夾。點擊清空結果,則保存路徑文件框中當前顯示的文件夾里,所有照片和數據都會被刪除。如果想將數據輸出到其他存儲設備,則選擇輸出CSV按鈕,選擇存儲設備路徑,進行文件轉移。離線仿真設置框主要用于查看以前工件的信息。勾選仿真器后,每次運行都會讀取圖像文件名欄顯示的文件。勾選測試全部極柱,則將12個焊接點都檢測一遍。如果不勾選,則檢測測試極柱號欄中的極柱號焊接點。參數設置欄中黑斑閾值是用來檢測焊穿孔信息。白斑閾值是用來檢測缺焊信息。
4.2.4 結果頁面
當檢測完成時,系統會將檢測到的焊接點信息按照編號,將焊接問題、測量的焊接長度和寬度通過PLC進行上傳。在結果頁面中,通過工件上二維碼的信息查詢可以直接調出該工件進行焊后檢測時上傳的測量信息,問題信息,方便用戶回溯問題工件信息記錄。同時根據工件二維碼可以在照片記錄文件夾中通過查詢功能找到保存的工件焊后檢測圖片。通過圖片仿真功能,用戶可以調出工件采集的照片進行重新分析,修改參數。
三軸機器人攜帶3D視覺采集頭對工件表面掃描,從而得到工件焊接點所在表面圖像,將整體圖像按照焊接點分割為24個小圖像,對小圖像進行圖像處理,去除干擾因素,直接對焊接點進行檢測,當檢測到漏焊、焊穿、焊偏、焊接寬度和高度五種問題,直接界面標注,檢測結果上傳MES。經過工件反復檢驗與算法的反復驗證,焊后檢測系統的檢測結果可靠有效,靈敏程度和穩定性可以保證。