鄭晨旭 李 亞
(天津科技大學(xué)天津市輕工與食品工程機械裝備集成設(shè)計與在線監(jiān)控重點實驗室,天津 300222)
為迎合市場需求,以巧克力為核心的產(chǎn)品也走向了多元化,其中帶有塑料手柄的巧克力棒產(chǎn)品以其新穎的外形和干凈衛(wèi)生的食用體驗受到市場青睞。由于其制作工藝需要在巧克力澆筑前將塑料手柄放入模具中,目前傳統(tǒng)的生產(chǎn)線主要依靠人力擺放,勞動力成本高,效率低下。少數(shù)企業(yè)采用自動化設(shè)備上料擺放,但由于巧克力塑料手柄外型的多樣性與不規(guī)則性,上料錯誤率較高。近年來,機器視覺技術(shù)逐漸被應(yīng)用于物體識別與引導(dǎo)機器人完成抓取[1-2],海潮等[3]提出了基于機器視覺的在線監(jiān)測技術(shù);邱素貞等[4]設(shè)計了基于機器視覺的碼垛機器人控制系統(tǒng);楊新海[5]提出了生產(chǎn)線目標同步抓取的方法。上述研究機器視覺均基于面陣相機,對線陣相機配合機器人抓取的系統(tǒng)研究不足。
相較于面陣相機,線陣相機檢測精度更高,拍照速度更快,更適用于一維動態(tài)目標[6]。試驗擬以某巧克力生產(chǎn)線為例,結(jié)合現(xiàn)場實際需求,設(shè)計基于線陣相機的巧克力棒自動上料擺放系統(tǒng)。針對線陣相機難以進行手眼標定的問題,提出利用傳動帶運動掃描成像的手眼標定思路;為提高生產(chǎn)效率,設(shè)計多目標抓取的機器人末端手爪,優(yōu)化追蹤路線以提高追蹤效率。
通過對現(xiàn)場情況和實際需求的調(diào)研,明確系統(tǒng)需要滿足以下幾點要求:① 確保巧克力塑料手柄上料擺放準確率;② 與現(xiàn)場流水線節(jié)奏配合;③ 每盤模具(8個工位)完成時間<10 s。根據(jù)以上要求對系統(tǒng)進行設(shè)計選型。
系統(tǒng)采用模塊化設(shè)計,系統(tǒng)架構(gòu)如圖1所示。振動給料盤將巧克力塑料手柄輸送到傳送帶上,工業(yè)相機拍照獲取圖像通過GigE接口發(fā)送給上位工控機,上位機界面采用QT開發(fā),經(jīng)過特征檢測和模板匹配原理獲得巧克力塑料手柄實時位姿信息,通過TCP協(xié)議與下位機通訊,將結(jié)果發(fā)送給下位機機器人,驅(qū)動機器人進行追蹤抓取,機器人對現(xiàn)場流水線情況判斷后,最終擺放到模具中,系統(tǒng)工作流程如圖2所示。
圖2 系統(tǒng)工作流程圖Figure 2 System work flow diagram
給料模塊由振動給料盤和傳送帶組成。由于振動給料盤可能出現(xiàn)上料速度不勻的情況,為保證擺放質(zhì)量,上料留有30%余量,設(shè)定振動給料盤出料速度為90個/min。線陣相機成像依賴物體與相機相對運動,成像質(zhì)量與傳送帶速度有關(guān),故傳動帶采用步進電機驅(qū)動,且電機驅(qū)動器采用專用電機控制DSP芯片和應(yīng)用矢量型閉環(huán)控制技術(shù)以保證傳動帶運行速度的穩(wěn)定性。為避免巧克力塑料手柄在傳送帶上發(fā)生堆疊,根據(jù)塑料手柄尺寸計算選定傳送帶速度為1 m/s。
1.SCARA機器人 2.條形光源 3.工業(yè)相機 4.編碼器 5.振動給料盤 6.傳送帶 7.暗箱 8.四工位手爪 9.目標圖1 系統(tǒng)架構(gòu)圖Figure 1 System architecture diagram
視覺采集模塊包括工業(yè)相機、光源、圖像采集卡、編碼器等硬件。線陣相機工作區(qū)域?qū)挾仍O(shè)定為300 mm,檢測精度設(shè)定為0.2 mm,相機與傳送帶距離約為300 mm。根據(jù)條件選擇2K分辨率線陣相機,型號為大恒公司的 LA-GC-02K05B-00-R,幀頻為26 kHz,鏡頭焦距選擇為16 mm,光源采用條形LED光源。當線陣相機圖像拼接方向與傳送帶運行方向不同或相機采集頻率與傳送帶速度不匹配時均會影響相機成像[7],兩種情況下拼接得到的標定板圖像如圖3和圖4所示。
圖3 傳送帶速度與采集頻率不符導(dǎo)致圖像壓縮Figure 3 Image compression due to the inconsistency between the conveyor belt speed and the acquisition frequency
圖4 傳送帶與相機有夾角導(dǎo)致圖像平移Figure 4 Image translation due to the included angle between the conveyor belt and the camera
故相機在安裝時需垂直傳送帶方向安裝,使相機傳感器Yc軸與傳送帶運行方向一致。相機拍照通過傳送帶編碼器進行外觸發(fā),為保證圖像不被壓縮,圖片縱向分辨率與橫向分辨率相等,可得:
(1)
式中:
Px、Py——圖像橫向、縱向分辨率,m/pix;
V——傳送帶運行速度,m/s;
Vc——相機拍照頻率,Hz;
T、Tc——掃描一幀圖像傳送帶運行時間和相機拍照時間,s。
根據(jù)傳送帶實際運行速度與相機參數(shù)計算求得相機拍照頻率。
抓取模塊由SCARA機器人和機器人控制器組成。機器人大臂最大運動速度為375°/s,抓取與擺放時大臂角度間隔約為90°,由于每盤模具工位較多,往返耗時較長,故根據(jù)模具尺寸設(shè)計由4個氣缸組成的氣動手爪,實現(xiàn)多個巧克力塑料手柄的抓取,減少機器人往復(fù)次數(shù),提高上料效率。機器人控制器與現(xiàn)場PLC連接獲取現(xiàn)場流水線運動狀態(tài)。機器人抓取邏輯圖如圖5所示。
圖5 抓取邏輯圖Figure 5 Grab logic diagram
手眼標定是為了獲得像素坐標系與機器人坐標系之間的轉(zhuǎn)換關(guān)系,使圖像處理結(jié)果能夠以機器人坐標系的形式發(fā)送給機器人,通常的手眼標定都通過相機視野與機器人工作空間交集內(nèi)的點來求得二者的映射關(guān)系,由于線陣相機獲得的是一維圖像,無法獲得與機器人末端交集的特征點,故提出一種利用傳動帶運動掃描成像進行線陣相機與機器人的手眼標定方法。設(shè)定傳送帶所在平面為基準平面,以傳送帶運動方向為圖像坐標系Yi軸方向,通過傳送帶使標定板與相機產(chǎn)生相對運動進行標定,建立手眼標定模型,如圖6所示。
圖6 手眼標定模型Figure 6 Hand-eye calibration model
鏡頭在制造過程中的精度誤差會使直線投影發(fā)生偏移產(chǎn)生畸變[8-9],由于線陣相機畸變較面陣相機更小,且目標集中在圖像中間區(qū)域,可忽略相機畸變帶來的影響??梢詫⒕€陣相機看作是面陣相機圖像中的一列,根據(jù)相機成像原理建立像素坐標系(UOV)、圖像坐標系(XiOiYi)、相機坐標系(XcOcYc)和世界坐標系(XwOwYw)的坐標關(guān)系,為方便理解計算,將圖像坐標系倒立翻轉(zhuǎn)投影至與相機坐標系同側(cè),如圖7所示。
圖7 成像原理與坐標系關(guān)系Figure 7 Imaging principle and coordinate system relation
光源發(fā)出的光線照到巧克力塑料手柄上的點P后經(jīng)過光心將圖像投影到像平面上形成像點Pi,經(jīng)過CMOS感光元件將光信號轉(zhuǎn)化為電信號后形成一維圖像,將一維圖像按幀排列拼接得到二維圖像。
(2)
式中:
dxi——像素在Xi方向上物理尺寸;
Syi——縮放比例因子(由傳送帶運行速度和相機拍照頻率獲得)。
(3)
式中:
Syc——比例因子;
Zc——光心到傳送帶平面的距離(忽略誤差將其看作固定值),mm。
將傳送帶運動切向方向設(shè)定為Xw正方向,取圖像中心點為世界坐標系原點Ow,安裝時調(diào)整相機平面與傳送帶水平面平行,可得相機坐標系與世界坐標系的變換關(guān)系為:
(4)
式中:
r3×3——矩陣旋轉(zhuǎn)向量;
t1×3——矩陣平移向量。
合并得到像素坐標系到世界坐標系的轉(zhuǎn)換矩陣:
(5)
得到物像之間變換關(guān)系,通過移動標定板獲取多組數(shù)據(jù),根據(jù)待定系數(shù)法可求得相機內(nèi)外參數(shù)。
相機與機器人的標定本質(zhì)是求相機坐標系(XcOcYc)與機器人坐標系(XrOrYr)的轉(zhuǎn)換矩陣,而相機坐標系與世界坐標系的關(guān)系已在相機標定中得到結(jié)果,接下來求解世界坐標系與機器人坐標系之間的關(guān)系。通過傳送帶的運動將標定板送至機器人的工作區(qū)域內(nèi),拼接后得到二維圖像,通過相機標定結(jié)果可得到圖像中標定板每個點在世界坐標系坐標(xci,yci),依次將機器人末端指向標定板上每個點并記錄其在機器人坐標系的坐標(xri,yri)。由于機器人和傳送帶都在水平面上安裝,將機器人坐標系與世界坐標系看作同一平面,根據(jù)標定板上的點分別在兩個坐標系內(nèi)的坐標可求解得轉(zhuǎn)換矩陣:
(6)
式中:
θ——機器人與傳送帶間的夾角,rad;
Tx、Ty、Tz——Xw、Yw、Zw軸方向上的平移距離,mm。
整理得到手眼標定的轉(zhuǎn)換結(jié)果:
(7)
圖像處理的任務(wù)是為了定位巧克力塑料手柄的位姿信息,發(fā)送給機器人進行抓取。先對圖像進行預(yù)處理消除圖像噪聲后,采用基于幾何形狀特征的模板匹配找到巧克力塑料手柄的位置與姿態(tài)。
工業(yè)相機采集的圖像會因為光照、現(xiàn)場干擾等因素產(chǎn)生噪聲[10-11]。將RGB通道下的圖像經(jīng)過平均法獲得灰度圖像后,以式(8)為高斯低通濾波器對得到的灰度圖像進行卷積,可以有效消除噪聲干擾。
(8)
式中:
σ——標準偏差。
標準偏差決定了濾波通帶的寬度,取σ2為10,最后進行對比度增強突出目標輪廓。
模板匹配算法是通過創(chuàng)建圖像模板,移動模板遍歷整個圖像,通過相似度函數(shù)判斷后獲取目標位置的一種算法[12]。首先建立圖像模板,通過Canny算子獲取目標輪廓,由于巧克力塑料手柄是厚度相同的均勻目標,對塑料手柄輪廓坐標進行積分可以獲得質(zhì)心坐標[13],以其質(zhì)心與外接最小矩形短邊方向為正方向,獲取目標與像素坐標系夾角,對模板圖像進行仿射變換得到角度為0的模板圖像,如圖8所示。
圖8 模板圖像的建立Figure 8 The establishment of template image
巧克力塑料手柄從振動給料盤傳輸?shù)絺魉蛶系奈恢煤徒嵌仁请S機的,所以需從模板圖像的不同角度創(chuàng)建模板用來搜索不同位姿的目標。由于使用模板遍歷原圖像時,每個位置都會產(chǎn)生一個ROI圖像,完全遍歷原圖像耗時較長,故采用基于圖像金字塔的模板匹配方法。經(jīng)效率對比,設(shè)置圖像金字塔層數(shù)為4層,創(chuàng)建對應(yīng)的金字塔圖像,采用均值波對創(chuàng)建好的圖像進行平滑處理以消除采樣形成的鋸齒。利用Sobel算子分別計算圖像橫向與縱向邊緣特征點梯度向量:
(9)
(10)
將得到的u,v方向的邊緣梯度向量合并為單位向量,得:
(11)
記ROI圖像輪廓的梯度單位向量為td(ui,vi),選取N個模板特征點,通過模板圖像和ROI圖像梯度單位向量的內(nèi)積衡量二者之間的匹配度,則:
(12)
遍歷圖像后得到每個目標的位置與姿態(tài),放入隊列中等待發(fā)送給機器人實施抓取,圖像處理結(jié)果如圖9所示。
圖9 圖像處理結(jié)果Figure 9 Image processing results
根據(jù)圖像處理的結(jié)果與編碼器的反饋,可對目標計算得到其實時位置,當滿足在工作空間且機器人有需求時,控制系統(tǒng)發(fā)送目標位姿信息至機械臂,機械臂開始執(zhí)行追蹤過程。由于傳送帶在不斷運動,取追蹤過程中任意時刻t為例,如圖10所示,實時反饋的追蹤算法的速度分量時刻指向當前時刻目標位置,由于目標的移動和反饋的滯后性,實時反饋追蹤不斷更新塑料手柄的實時位置并進行逆運動學(xué)求解,計算量大而且追蹤路徑變長,影響抓取效率。文章采用一種對目標位置的階段式預(yù)測攔截算法進行抓取。
圖10 追蹤示意圖Figure 10 Tracing diagram
由于機器人運動軌跡與加速度曲線參數(shù)很難精確獲取,難以由機器人運動軌跡結(jié)合目標運動軌跡預(yù)測出實際抓取點,但傳送帶采用步進電機驅(qū)動,傳送帶速度V比較平穩(wěn),且利用機器人控制器的時鐘可獲取機器人到達當前點的時刻記為T,末端執(zhí)行器在上一個點的時刻為Ti-1,移動到當前點的時刻記為Ti,則下一個追蹤點相對當前點的偏移S為:
(13)
由于傳送帶坐標系和機械臂坐標系存在角度θ,則在機器人坐標系X軸與Y軸的偏移分別為Scosθ和Ssinθ。機器人要在兩個維度計算偏移量,為了提高執(zhí)行效率,在機器人工作空間以三點法建立工件坐標系(XuOuYu),工件坐標系Xu、Yu軸方向與傳送帶坐標系Xc、Yc軸一致,將發(fā)送至機器人的坐標轉(zhuǎn)換至工件坐標系上。由此當機器人移動到發(fā)送點并開始追蹤時,由于傳送帶方向與機器人工件坐標系方向一致,則只需X軸一個維度的計算量,降低了程序冗余。
追蹤第一階段是機器人末端未進入傳送帶上方空間時,提前預(yù)測目標將要到達的大致位置,將機器人開始追蹤時刻目標坐標加追蹤偏移量得到位置如式(14)所示。
X1=xt1+D1,
(14)
式中:
X1——追蹤第一階段位移,mm。
xt1——目標發(fā)送時的坐標;
D1——超前偏移量(根據(jù)經(jīng)驗得到)。
追蹤第二階段是機器人末端靠近目標后,利用編碼器反饋提高抓取精度,但由于反饋的滯后性,在反饋的坐標后加入速度積分補償?shù)玫阶粉欬c坐標如式(15)所示。
(15)
式中:
X2——追蹤第二階段位移,mm。
xt——根據(jù)編碼器返回的目標實時坐標;
V——傳送帶運行速度,mm/s;
T——當前時刻時鐘數(shù)值,s;
T0——機器人進入第二段追蹤時的時刻,s。
機器人末端執(zhí)行器經(jīng)過兩個階段追蹤攔截到目標,在抓取等待點經(jīng)過位移X1+X2到達捕獲點。
為驗證系統(tǒng)的效率與精度,搭建試驗平臺,固定模具位置。對傳動帶上的巧克力塑料手柄進行抓取擺放試驗,通過目標擺放結(jié)果驗證系統(tǒng)精度和穩(wěn)定性。對塑料手柄質(zhì)心進行標記,記錄抓取后機器人末端與理論抓取位置之間的誤差,并通過定時器記錄機器人一個抓取周期的時間,共進行20盤擺放試驗,對每盤模具數(shù)據(jù)平均后得到試驗結(jié)果,見圖11。
圖11 試驗結(jié)果數(shù)據(jù)Figure 11 Experimental data
由圖11可知,系統(tǒng)抓取誤差<0.5 mm,誤差主要來源于坐標系平面不完全平行等因素;系統(tǒng)每盤完成時間<7 s,滿足企業(yè)需求。通過目標擺放是否到位驗證系統(tǒng)精度和穩(wěn)定性,共統(tǒng)計20盤(160個工位),擺放成功個數(shù)為154個,其成功率>95%。
系統(tǒng)將視覺系統(tǒng)與控制系統(tǒng)相結(jié)合,提出了線陣相機手眼標定思路,優(yōu)化了追蹤軌跡算法,實現(xiàn)巧克力塑料手柄的自動上料擺放。經(jīng)大量樣本試驗結(jié)果表明,系統(tǒng)擺放成功率>95%,平均每盤擺放時間相較企業(yè)生產(chǎn)要求時間10 s縮短至7 s以內(nèi),符合生產(chǎn)需求。而且系統(tǒng)具有良好的可移植性,基于模板匹配的物體識別算法具有很好的開放性,可以勝任其他領(lǐng)域目標抓取工作。