本發(fā)明涉及體積測量系統(tǒng)技術(shù)領(lǐng)域,具體來說是一種用于體積測量系統(tǒng)的探測物體積計算方法。
背景技術(shù):
在快遞包裹分揀計費場合,快遞公司希望能夠通過體積測量系統(tǒng)獲得探測物(待測包裹)的三維尺寸信息,而非僅獲得探測物體積。如圖1所示,在目前常用的雙光幕的快遞包裹體積計量系統(tǒng)中,探測物2在傳送帶1上通過高度測量光幕4和寬度測量光幕3所組成的測量面6,相互垂直安裝的兩對測量光幕傳感器構(gòu)成了一個矩形測量平面,傳送帶1以速度v勻速推送探測物2通過測量平面,被測量平面截取一個矩形的待測截面。系統(tǒng)通過這種斷面掃描方式測量包裹體積,如下式所示:
式中T表示待測包裹通過測量平面的總時間,w(t)表示待測截面的寬度值,h(t)表示待測截面高度;v表示傳送帶速度。
通過分析,圖1的雙光幕體積測量系統(tǒng)的測量誤差σV可表示為:
由于在進行包裹體積測量過程中,一般包裹尺寸最小的邊會作為高度,以保證包裹穩(wěn)定放置。這導致上式第一項中,(h+σh)給整個系統(tǒng)的測量結(jié)果帶來較大的誤差。且上式σs為累加方式體積測量的算法誤差,存在極大的不可控性。特別是,分層累加算法無法獲得探測物(待測包裹)的三維尺寸信息,而是直接獲得體積信息,導致其誤差較大。
如何開發(fā)出一種獲取探測物三維尺寸信息的方法已經(jīng)成為急需解決的技術(shù)問題。
技術(shù)實現(xiàn)要素:
本發(fā)明的目的是為了解決現(xiàn)有技術(shù)中無法獲得探測物三維尺寸信息的缺陷,提供一種用于體積測量系統(tǒng)的探測物體積計算方法來解決上述問題。
為了實現(xiàn)上述目的,本發(fā)明的技術(shù)方案如下:
一種用于體積測量系統(tǒng)的探測物體積計算方法,包括以下步驟:
測量系統(tǒng)的預置,測量光幕以固定的時間間隔采集每一對紅外發(fā)射接收對管的阻擋狀況,并在極短的響應(yīng)時間內(nèi)上傳給上位機;
系統(tǒng)狀態(tài)的檢測,上位機通過實時監(jiān)測測量光幕測量值,判斷有無物體遮擋紅外發(fā)射接收對管所組成的通過體積測量平面;
探測物底面測量信息的獲取,當探測物通過測量平面時,上位機開始記錄測量光幕上傳的每一組數(shù)據(jù),存儲在預設(shè)的二維數(shù)組A(i,j)中,其中:i為探測物的高度信息,j為探測物的寬度信息;當探測物完全通過測量平面時,停止向二維數(shù)組A(i,j)中存放數(shù)據(jù),二維數(shù)組A(i,j)存儲了探測物的底面測量信息;
探測物底面的擬合與計算,通過在傳送帶平面上建立一個與探測物底面近似的解析模型,擬合出探測物底面,并通過解析模型計算出探測物的長、寬及面積;
探測物高度值的測量與計算,通過高度測量傳感器陣列,以固定時間間隔向上位機傳輸?shù)奶綔y物實時獲取高度測量值,對整個通過過程的探測物高度測量值求取平均值,得到探測物的高度值;
探測物體積的計算,將通過擬合底面計算獲得的底面積與高度值相乘,得到系統(tǒng)所求待測包裹體積Vpackage,其計算公式如下:
Vpackage=hwFlF=hSF
其中,h為高度測量傳感器陣列測量獲得的包裹高度平均值,lF、wF分別表示擬合計算得的探測物底面長與寬、SF表示擬合出的探測物底面面積。
所述的探測物底面的擬合與計算包括以下步驟:
根據(jù)二維數(shù)組A(i,j)在傳送帶平面建立直角坐標系,以二維數(shù)組A(i, j)中i的增漲方向作為x軸,其為傳送帶速度方向,以二維數(shù)組A(i,j)中j的增漲方向作為y軸,其為測量光幕紅外發(fā)射接受對管排列方向;
以i=0為x軸原點,其為首次產(chǎn)生遮擋位置;以傳送帶邊緣j=0為y軸原點,其為傳送帶邊緣;對探測物通過測量平面過程中所有被遮擋的紅外發(fā)射接受對管進行標定,形成底面標定圖;
去除探測物底面矩形內(nèi)部冗余點,提取邊緣點作為擬合算法的采樣點;
探測物底面坐標陣列點的獲取,根據(jù)采樣點對探測物底面矩形進行分割,獲得四組點陣坐標;
對四組點陣坐標進行線性回歸分析計算,擬合出邊緣直線,四條直線相交形成的范圍為探測物的擬合底面;
通過解析模型計算探測物擬合底面矩形的長寬及面積,其計算公式如下:
其中,x為直角坐標系的橫坐標,y為縱坐標,k表示矩形邊緣直線AB的斜率,b表示各組邊緣直線與y軸的截距,SF為四條直線所組成的擬合探測物底面的面積,lF、wF分別表示擬合計算得的探測物底面長與寬。
所述的探測物高度值的測量與計算包括以下步驟:
根據(jù)無探測物通過時,高度測量傳感器陣列的上傳值確定傳送帶平面位置,作為高度零點;
當探測物通過測量平面,高度測量傳感器陣列被包裹遮擋導致測量值減小,計算測量值改變量△hi;
當△hij大于5mm時,上位機存儲單元記錄連續(xù)的△hij值;當△hij小于5mm,停止記錄數(shù)據(jù);共獲得m個高度測量值;
計算探測物高度h,其計算公式如下:
所述的探測物底面坐標陣列點的獲取包括以下步驟:
對二維數(shù)組A(i,j)中的數(shù)據(jù)由i=0、j=0開始,對整個二維數(shù)組進行遍歷;
提取二維數(shù)組A(i,j)中待測物體底面的邊緣坐標值,并根據(jù)單增\單減原則分割坐標點陣,將其分為4部分,代表待測矩形包裹的四條邊;其具體步驟如下:
由i=0開始遍歷,判斷數(shù)組A(i,j)中A值為1的單元所對應(yīng)的j值;
增加i值,獲取到數(shù)組中A值為1的點有兩個,其對應(yīng)j值為j1、j2,其中j1表示待擬合矩陣的上邊緣LABC;j2表示待擬合矩陣的下邊緣LBCD;
持續(xù)遍歷,j1值呈先增大后減小,j2值先減小后增大;根據(jù)轉(zhuǎn)折點,將j1分為LAB與LBC,j2分為LCD與LDA,完成對數(shù)組A(i,j)元素的分割,獲得四條邊的測量點陣坐標。
有益效果
本發(fā)明的一種用于體積測量系統(tǒng)的探測物體積計算方法,與現(xiàn)有技術(shù)相比能夠精確獲取探測物三維尺寸信息,通過擬合算法建立模型,獲取三維尺寸信息再計算出探測物的體積,提高了測量精度與穩(wěn)定性。本發(fā)明通過底面擬合算法進行探測物底面建模,消除累加算法誤差σS,使底面積測量值SF更接近真實值。
附圖說明
圖1為現(xiàn)有技術(shù)中的雙光幕體積測量系統(tǒng);
圖2為改進后的體積計量系統(tǒng)
圖3為本發(fā)明的方法順序圖;
圖4為本發(fā)明中底面邊緣擬合過程示意圖;
其中,1-傳送帶、2-探測物、3-寬度測量光幕、4-高度測量光幕、5-高度測量傳感器陣列、6-測量面。
具體實施方式
為使對本發(fā)明的結(jié)構(gòu)特征及所達成的功效有更進一步的了解與認識,用以較佳的實施例及附圖配合詳細的說明,說明如下:
如圖3所示,本發(fā)明所述的一種用于體積測量系統(tǒng)的探測物體積計算方法,包括以下步驟:
第一步,測量系統(tǒng)的預置。測量光幕以固定的時間間隔采集每一對紅外發(fā)射接收對管的阻擋狀況,并在極短的響應(yīng)時間內(nèi)上傳給上位機。其中,測量光幕可以采用圖1所示的雙光幕體積測量系統(tǒng),基于本方法采用擬合出底面再計算體積的計算過程,其可以不基于高度測量光幕4的數(shù)據(jù)采集,采用高度測量傳感器代替,計算精度能夠得到大幅提升。而若依靠傳統(tǒng)的累加算法計算體積,其必須依靠高度測量光幕4的數(shù)據(jù)采集,無法使用高度測量傳感器陣列5代替高度測量光幕4,由于高度測量光幕4的精度低于高度測量傳感器陣列5,使得兩個方法在物理材質(zhì)的選擇上就產(chǎn)生了精度差別(測量誤差)。
如圖2所示,采用高度測量傳感器陣列5代替高度測量光幕4。高度測量傳感器陣列5的高度測量傳感器可以采用相位式激光位移傳感器(KLH-01T型激光位移傳感器)。相位激光位移傳感器作為一維測距器件,具有較高測量精度和抗干擾能力。KLH-01T型激光位移傳感器測量精度可達±1mm,采樣頻率10Hz。通過等間距排列的一組激光位移傳感器,可覆蓋寬度60cm的傳送帶,采集橫向尺寸不小于10cm的探測物的高度值。
在此情況下,高度測量誤差σh→0,則測量誤差σV化簡為:
如上式所示,通過高度測量傳感器陣列5采集探測物高度,極大地提高了整個系統(tǒng)的測量精度,通過擬合算法,能夠完全消除累加算法所帶來的測量誤 差。
第二步,系統(tǒng)狀態(tài)的檢測。上位機通過實時監(jiān)測測量光幕測量值,判斷有無物體遮擋紅外發(fā)射接收對管所組成的通過體積測量平面,以待準備獲取探測物底面測量信息。
第三步,探測物底面測量信息的獲取。當探測物通過測量平面時,上位機開始記錄測量光幕上傳的每一組數(shù)據(jù),存儲在預設(shè)的二維數(shù)組A(i,j)中。二維數(shù)組A(i,j)中,i為探測物的高度信息(二維平面中X的值),j為探測物的寬度信息(二維平面中Y的值),。當探測物完全通過測量平面時,停止向二維數(shù)組A(i,j)中存放數(shù)據(jù),二維數(shù)組A(i,j)存儲了探測物的底面測量信息。
第四步,探測物底面的擬合與計算。如圖4所示,通過在傳送帶平面上建立一個與探測物底面近似的解析模型,擬合出探測物底面,并通過解析模型計算出探測物的長、寬及面積。其具體步驟如下:
(1)根據(jù)二維數(shù)組A(i,j)在傳送帶平面建立直角坐標系,以二維數(shù)組A(i,j)中i的增漲方向作為x軸,其為傳送帶速度方向,以二維數(shù)組A(i,j)中j的增漲方向作為y軸,其為測量光幕紅外發(fā)射接受對管排列方向。
(2)以i=0為x軸原點,其為首次產(chǎn)生遮擋位置;以傳送帶邊緣j=0為y軸原點,其為傳送帶邊緣;對探測物通過測量平面過程中所有被遮擋的紅外發(fā)射接受對管進行標定,形成底面標定圖。如圖4的第一張圖所示,各點在y軸方向的間距為光幕的測量精度δw=10mm,x軸方向間距為光幕的采樣間隔vΔt=10mm。
(3)去除探測物底面矩形內(nèi)部冗余點,提取邊緣點作為擬合算法的采樣點。
(4)探測物底面坐標陣列點的獲取,根據(jù)采樣點對探測物底面矩形進行分割,獲得四組點陣坐標。其具體步驟如下:
A、對二維數(shù)組A(i,j)中的數(shù)據(jù)由i=0、j=0開始,對整個二維數(shù)組進行遍歷。
B、提取二維數(shù)組A(i,j)中待測物體底面的邊緣坐標值,并根據(jù)單增\ 單減原則分割坐標點陣,將其分為4部分,代表待測矩形包裹的四條邊;其具體步驟如下:
a、由i=0開始遍歷,判斷數(shù)組A(i,j)中A值為1的單元所對應(yīng)的j值;
b、增加i值,獲取到數(shù)組中A值為1的點有兩個,其對應(yīng)j值為j1、j2,其中j1表示待擬合矩陣的上邊緣LABC;j2表示待擬合矩陣的下邊緣LBCD;
c、持續(xù)遍歷,j1值呈先增大后減小,j2值先減小后增大;根據(jù)轉(zhuǎn)折點,將j1分為LAB與LBC,j2分為LCD與LDA,完成對數(shù)組A(i,j)元素的分割,獲得四條邊的測量點陣坐標。
(5)對四組點陣坐標進行線性回歸分析計算,擬合出邊緣直線,四條直線相交形成的范圍為探測物的擬合底面。在線性回歸技術(shù)中,最小絕對偏差法
(LAD)和最小二乘法(LS)常被用于進行回歸模型的統(tǒng)計分析。LAD無解析最優(yōu)解,在采樣數(shù)量較大時,計算量很大。相較于LAD,LS方法包含完善的理論和方差分析方法,并且可以獲得唯一的解析最優(yōu)解,計算簡單高效。同時,為防止光幕對矩形某對對邊采樣點過少導致底面擬合算法無解,可以添加鄰邊相互垂直約束。從而采用帶鄰邊正交約束的最小二乘擬合算法進行回歸分析實現(xiàn)矩形底面邊緣擬合。
(6)通過解析模型計算探測物擬合底面矩形的長寬及面積,其計算公式如下:
其中,x為直角坐標系的橫坐標,y為縱坐標,k表示矩形邊緣直線AB的斜率,b表示各組邊緣直線與y軸的截距,SF為四條直線所組成的擬合探測物底面的面積,lF、wF分別表示擬合計算得的探測物底面長與寬。
第五步,探測物高度值的測量與計算。通過高度測量傳感器陣列,以固定時間間隔向上位機傳輸?shù)奶綔y物實時獲取高度測量值,對整個通過過程的探測 物高度測量值求取平均值,得到探測物的高度值。其具體步驟如下:
(1)根據(jù)無探測物通過時,高度測量傳感器陣列的上傳值確定傳送帶平面位置,作為高度零點。
(2)當探測物通過測量平面,高度測量傳感器陣列被包裹遮擋導致測量值減小,計算測量值改變量△hi;
當△hij大于5mm時,上位機存儲單元記錄連續(xù)的△hij值;當△hij小于5mm,停止記錄數(shù)據(jù);總共可以獲得m個高度測量值。
(3)計算探測物高度h,其計算公式如下:
通過對i和j兩個值的雙累加運算,計算出探測物(包裹)高度h。
第六步,探測物體積的計算。將通過擬合底面計算獲得的底面積與高度值相乘,得到系統(tǒng)所求待測包裹體積Vpackage,其計算公式如下:
Vpackage=hwFlF=hSF
其中,h為高度測量傳感器陣列測量獲得的包裹高度平均值,lF、wF分別表示擬合計算得的探測物底面長與寬、SF表示擬合出的探測物底面面積。如圖4所示,通過底面擬合的方法,較好地消除了σs及Σσwi所導致的系統(tǒng)測量誤差,并進一步獲取模型的尺寸信息,實現(xiàn)獲取探測物(包裹)底面長度L、寬度W及底面積SF的目的。
以上顯示和描述了本發(fā)明的基本原理、主要特征和本發(fā)明的優(yōu)點。本行業(yè)的技術(shù)人員應(yīng)該了解,本發(fā)明不受上述實施例的限制,上述實施例和說明書中描述的只是本發(fā)明的原理,在不脫離本發(fā)明精神和范圍的前提下本發(fā)明還會有各種變化和改進,這些變化和改進都落入要求保護的本發(fā)明的范圍內(nèi)。本發(fā)明要求的保護范圍由所附的權(quán)利要求書及其等同物界定。