伍開宇, 朱海清, 沈曉東, 沈 偉, 方 明
(1. 江南大學機械工程學院, 江蘇無錫214122; 2. 嘉興市計量檢定測試院, 浙江嘉興314001)
指針式壓力表由于結構簡單、抗干擾能力強,在眾多行業(yè)得到廣泛應用, 為了保證其測量精度穩(wěn)定可靠, 需進行定期檢驗(檢定)。傳統(tǒng)的手工操作,目視讀表的指針壓力表檢定方法不僅效率低,檢定精度及可靠性易受主觀因素影響, 且存在檢定數(shù)據(jù)無法自動記錄,也無法進行核驗與追溯等問題[1,2], 已經越來越難以適應計量檢定行業(yè)的發(fā)展需求。隨著人工智能技術的快速發(fā)展, 機器視覺技術逐漸發(fā)展成為了現(xiàn)代工業(yè)測量中的重要方法[3~7],采用圖像識別技術替代人工來自動讀取指針式壓力表的示值已經成為共識, 且已經取得了相當多的研究成果[8~15]。但目前采用機器視覺技術的指針式壓力表自動檢定設備目前還處于初級階段,設備多為雙工位設計, 最多同時檢定2塊壓力表, 工作效率沒有得到顯著提升, 且價格昂貴, 迄今仍未能得到市場的廣泛認可[11,15]。
本文通過優(yōu)化算法、提高圖像解析過程的速度與適應能力, 結合計算機自動控制與信息化技術, 設計了一套基于機器視覺的指針壓力表智能檢定系統(tǒng)(以下簡稱:系統(tǒng)), 實現(xiàn)了用單臺普通64位PC算力對多表(2~10塊)進行自動檢定, 并能對檢定數(shù)據(jù)進行方便快捷的監(jiān)測與復核, 從而使指針式壓力表檢定的工作效率與規(guī)范性得到了提升。
系統(tǒng)硬件搭配:??低昅V-CE060-10UC工業(yè)相機加MVL-HF0824M-10MP鏡頭作為視覺傳感器, 每個被檢表與標準表前各安裝1個; 西門子S7-1200 PLC,由1214C-DC CPU模塊、CM1241-232通訊模塊與SM1231模擬量輸入模塊組成, 與所需的低壓電器等組成計算機自動控制模塊(簡稱:自控模塊), 通過RS232串口與上位機通訊進行數(shù)據(jù)交互; 0.05%精度數(shù)顯壓力表作為系統(tǒng)標準器, RS485壓力信號輸出接入自控模塊作為控制信號; 系統(tǒng)壓力源采用2.5 MPa外接氣源, 如伺服控制的氣缸或油缸提供中低壓到高壓的壓力源, 由電磁閥控制氣體介質通、斷; 氣缸與伺服電機組成的伺服控制模塊控制介質壓力精確地升、降到各檢定點壓力并滿足保壓要求; 上位機CPU為i7-10700頻率2.9 GHz, 內存8 GB; 光源系統(tǒng)用來穩(wěn)定光照環(huán)境,保證圖像采集質量。
圖1 系統(tǒng)原理圖Fig.1 System schematic diagram
系統(tǒng)原理如圖1所示。系統(tǒng)C-S模式的上位機軟件采用C#語言編寫; 圖像識別算法采用C++編程, 調用OpenCV庫函數(shù), 實現(xiàn)對圖像的處理與解析, 并將其封裝成動態(tài)鏈接庫嵌入上位機軟件; 軟件后臺連接MYSQL數(shù)據(jù)庫實現(xiàn)檢定數(shù)據(jù)的存儲與查詢。軟件用于檢定任務管理、人機交互、圖像處理與檢定過程的自動控制。
2.2.1 圖像處理與指針識別
對圖像進行預處理以抑制噪聲,并保留指針及刻度邊緣特征。采用中值濾波器對圖像進行濾波處理,用一個預定義的像素領域中的灰度中值來替代該像素點的值, 以降低圖像中椒鹽噪聲數(shù)量, 即:
(1)
如圖2(a)所示, 由于檢定過程中壓力表圖像只有指針旋轉這一個動態(tài)特征, 故采用幀差法對2個不同檢定點圖像進行異或運算提取出指針區(qū)域:
I(x,y)=f1(x,y)-f2(x,y)
(2)
式中:f1(x,y),f2(x,y)分別為圖像f1、f2在(x,y)處的像素值;I(x,y)為圖像I在(x,y)處的像素值。
圖2 指針特征圖像Fig.2 Pointer feature image
P2(k)(m2(k)-mG)2
(3)
式中:P1(k)、P2(k)分別為像素在區(qū)間[0,k]與 [k+1,255]的概率;m1(k)、m2(k)分別為區(qū)間[0,k]與[k+1,255]間像素的平均灰度值;mG為圖像的平均灰度。其中:
(4)
(5)
mG=P1(k)m1(k)+P2(k)m2(k)
(6)
將P1(k)、P2(k)與mG代入式(3),可得到最大類間方差計算公式:
(7)
(8)
對于指針邊界存在噪聲干擾或者因其他目標遮蓋而引起指針圖像發(fā)生間斷問題, 可采用累計概率霍夫變換把圖像空間中的檢測問題轉換到參數(shù)空間的方法, 并在進行直線檢測前先對指針做細化處理提取出指針骨架如圖3(a)所示, 這樣不僅可得到較好的容錯性和魯棒性, 而且能大幅度地縮短運行時間。最終, 得到圖3(b)所示的2條不同位置的指針擬合直線與圓心。
圖3 指針檢測Fig.3 Pointer feature image
2.2.2 刻度線識別與示值讀取
首先, 通過查找刻度線輪廓分割刻度線對象[17]獲取刻度線輪廓點集的最小外接矩形如圖4所示, 并將最小外接矩形的中心{Pi[xi,yi]}作為刻度線的質心,其中i=1,2,…,n,n為刻度線數(shù)量。
圖4 刻度識別Fig.4 Scale identification image
然后, 以指針旋轉中心O[xO,yO]為極點, 圖像坐標系縱軸正方向為極軸方向, 角度取順時針方向為正, 建立極坐標系, 并將刻度線質心位置與指針位置從圖像坐標系轉換為極坐標。{Pi[xi,yi]}轉換為{Pi[ρi,θi]}; 指針擬合直線方程y=kx+b轉換為ρ=x·cosφ+y·sinφ。
當指針處于第i與i+1刻度線之間時, 可由式(9)計算出讀數(shù)r。
(9)
式中:m為表的量程;φ為指針擬合直線與極軸夾角角度;θi、θi+1分別為指針相鄰2刻度線質心與指針旋轉中心的連線和極軸夾角角度。
本文提出的讀數(shù)方法相較傳統(tǒng)可以降低壓力表零位縮格以及刻度線非線性分布所產生的累計誤差。
系統(tǒng)采用帶RS485壓力信號輸出、精度為0.05%的數(shù)顯壓力表作為控制信號源, 用西門子S7-1200 PLC搭建的控制模塊,C#編寫的上位機程序與MYSQL數(shù)據(jù)庫搭建的控制與任務管理系統(tǒng)來實現(xiàn)對全過程的自動控制, 圖5所示為檢定過程流程圖。
圖5 系統(tǒng)控制流程圖Fig.5 System control flow chart
系統(tǒng)采用伺服系統(tǒng)對校驗介質壓力進行精確控制, 使升壓、保壓、降壓過程完全執(zhí)行壓力表計量檢定規(guī)程中的規(guī)定。2個相鄰檢定點之間的升壓(卸壓)時間間隔控制在20~30 s; 壓力到達各個檢定點時進行3~4 s保壓, 以完成被檢表與數(shù)顯標準表的圖像采集、輕敲動作操作, 壓力達到最大量程時保壓3 min, 進行耐壓檢定, 保壓時的壓力精度可達0.05%。
檢定過程及檢定完成后, 由于數(shù)顯標準表與被檢表在各個檢定點(含輕敲)的圖像被同步采集并保存在指定位置, 通過上位機程序可隨時將圖像與檢定數(shù)據(jù)進行比對。
檢定過程中, 在程序檢定界面, 雙擊檢定數(shù)據(jù)所在的單元格, 對應的被檢表圖像將彈出, 檢定數(shù)據(jù)是否準確可快速得到確認。檢定結束后, 檢驗員提交審核以及后續(xù)對檢定證書進行審核審批時, 同樣可快捷地對檢定數(shù)據(jù)的可靠性(精度)進行復核。在程序歷史任務查詢界面, 選擇需要審核的檢定任務, 界面列表中顯示該表在各檢定點的測試數(shù)據(jù); 雙擊某個數(shù)據(jù)所在的單元格, 被檢表在該檢定點的實時照片就將彈出, 檢定數(shù)據(jù)是否準確就有了可復核的原始憑證。
本文基于VS 2019和OpenCV庫為開發(fā)平臺對圖像處理算法進行了開發(fā), 系統(tǒng)硬件環(huán)境為i7-10700@2.9 GHz CPU, 8 GB運行內存; 測試對象為0.4級2.5 MPa精密壓力表、1.6級2.5 MPa一般壓力表。
圖6所示為圖像解析結果的實例, 紅色線條為圖像解析得到的刻度線、黃點為指針旋轉中心、綠色線條為擬合指針線??梢钥闯?通過本文算法能夠獲得理想的擬合結果, 這從直觀上說明了本文算法對于壓力表指針檢測、指針旋心擬合與刻度線識別的有效性。
圖6 特征識別結果Fig.6 Feature recognition result
在相同的測試條件下進行本系統(tǒng)算法,已成熟的基于Hough圓檢測及Hough直線檢測的指針式儀表讀數(shù)方法[18]與人工目視檢定的對比實驗, 重復多次檢定流程, 分別記錄其圖像處理耗時、檢定速度與檢定數(shù)據(jù)。系統(tǒng)讀數(shù)識別圖像處理每幀平均耗時為467 ms, Hough圓檢測法平均耗時為1 232 ms/幀; 系統(tǒng)最高檢定速度可達40塊/h, 人工檢定速度為12塊/h。
2.5 MPa精密壓力表檢定數(shù)據(jù)如表1所示,以人工讀數(shù)結果為參照, 在不同檢定點處, Hough檢測法絕對誤差δH分布范圍為±0.003 MPa之間, 相對誤差為0.12%, 系統(tǒng)讀數(shù)絕對誤差δs集中分布在±0.002 MPa以內, 讀數(shù)識別相對誤差為0.08%。
對于2.5 MPa一般壓力表, 檢定數(shù)據(jù)如表2所示, Hough檢測法絕對誤差分布范圍為±0.009 MPa之間, 相對誤差為0.36%, 系統(tǒng)讀數(shù)絕對誤差集中分布在±0.005 MPa以內, 相對誤差為0.2%。
本文讀數(shù)識別算法相較Hough檢測法, 圖像解析速度提升62.1%, 且誤差分布范圍更小, 讀數(shù)精度提升33.3%。對于精密壓力表讀數(shù)誤差小于最小分度值的1/10, 對于一般壓力表讀數(shù)誤差小于最小分度值的1/5, 因此系統(tǒng)滿足壓力表計量檢定要求。
本文利用自控模塊實現(xiàn)對檢定過程中壓力升降的自動控制; 到達檢定點時并利用工業(yè)相機自動采集被檢壓力表表盤圖像, 結合一系列算法對圖像進行濾波、二值分割、指針檢測、指針旋心擬合與刻度線識別, 實現(xiàn)對壓力表指針示值的自動讀取。
表12.5 MPa精密壓力表檢定結果Tab.1 Verification results of 2.5 MPa precision pressure gauge MPa
表22.5 MPa一般壓力表檢定結果Tab.2 Verification results of 2.5 MPa general pressure gauge MPa
1) 系統(tǒng)可同時完成10塊檢定點相同壓力表的計量檢定, 且檢定過程完全自動化;最高檢定速度可達40塊/h, 工作效率較傳統(tǒng)的人工檢定方法提高2倍以上。
2) 檢定數(shù)據(jù)能實現(xiàn)快速的追溯與復核, 改變傳統(tǒng)的檢定方法靠檢驗員目視讀表、檢定數(shù)據(jù)無法自動記錄與難以追溯的問題; 同時, 也使得質檢、計量等相關機構能快速對該系統(tǒng)的可靠性作出評價。
3) 提出基于機器視覺的指針式壓力表讀數(shù)識別方法,圖像解析速度為每幀平均耗時467 ms, 對于精密壓力表與一般壓力表讀數(shù)精度分別為0.08%和0.2%,精度滿足壓力表計量檢定規(guī)程要求。本文方法相較Hough檢測法圖像解析速度提升62.1%, 讀數(shù)精度提升33.3%, 并可推廣應用至指針式真空表、真空壓力表等圓盤指針式儀表的讀數(shù)識別。