王小龍+黃志強+張詩瑤++李林+張旺
摘 要:為解決類人機器人雙機械臂抓取目標過程中,存在目標識別不準確、目標識別單一、雙機械臂運動不協(xié)調(diào)等問題,文章設(shè)計了一款基于OV7670彩色攝像機視覺系統(tǒng)及高仿真機械臂的類人機器人。通過OV7670和STM32主控模塊對圖像信息進行采集與處理,使用RGB-SHL顏色空間轉(zhuǎn)換模型提取目標對象的圖像特征,產(chǎn)生控制指令,然后將協(xié)調(diào)控制每一個舵機的運動參數(shù)發(fā)送給舵機驅(qū)動模塊,以實現(xiàn)類人機器人識別目標、定位目標、協(xié)調(diào)運動和精確控制等功能。通過實驗驗證和參加華北五?。ㄊ?、自治區(qū))大學(xué)生機器人大賽,表明該機器人具有對目標識別準確、協(xié)調(diào)運動精確可靠的優(yōu)點。
關(guān)鍵詞:類人機器人;識別定位;RGB-SHL顏色空間;彩色攝像機
引言
類人機器人利用傳感器獲取信息從而控制機器人的動作[1]。目前,簡易類人機器人主要是利用紅外、超聲波、線性CCD等傳感器作為識別系統(tǒng),以完成尋跡、避障、抓取等功能。例如,部分DARwIn系列類人機器人采用紅外傳感器,此類機器人的識別模式較為單一:紅外、超聲波只能對物體進行探測且多用于尋跡和避障;線性CCD通過灰度值來檢測目標,但是受環(huán)境的光照因素影響較大,且圖像采集的范圍極其有限,不利于機器人在未知環(huán)境中感知與行動。本文將介紹一種基于OV7670彩色攝像機視覺系統(tǒng)的類人機器人,該機器人可對目標的顏色、形狀進行識別,并可對圖像信息進行二次開發(fā),建立以機器人為原點的坐標系,從而得到目標的距離、位置、形狀等信息,實現(xiàn)尋跡、避障、抓取等功能。
1 系統(tǒng)總體設(shè)計
該設(shè)計從底層硬件設(shè)計入手:搭建經(jīng)典的簡易類人機器人平臺;將其與自主設(shè)計的仿人機械手臂融合;在機器人的頭部安裝OV7670彩色攝像機,用舵機控制其轉(zhuǎn)動;在機器人胸部安裝STM32F103ZET6主控板,從而完成硬件設(shè)計。進一步是上層的軟件設(shè)計:以STM32F103ZET6主控板為平臺,RGB-SHL顏色空間轉(zhuǎn)換公式為核心,通過對攝像機采集的圖像信息進行處理,得出目標的坐標信息,產(chǎn)生控制指令,向舵機驅(qū)動模塊發(fā)送相應(yīng)的舵機控制參數(shù),以控制機器人協(xié)調(diào)運動和精確操作。結(jié)構(gòu)框圖如圖1所示。
圖1 系統(tǒng)總體框圖
2 硬件系統(tǒng)設(shè)計
2.1 類人機器人本體設(shè)計
類人機器人本體是機器人的執(zhí)行機構(gòu),主要由頭部、身軀、雙足、雙臂、雙爪等機械結(jié)構(gòu)組成。各部分由鋁合金散件和雙軸數(shù)字舵機相互連接構(gòu)成。
仿生手爪設(shè)計:每個都有五根手指,每根手指有三個指節(jié),指節(jié)中空,每根手指通過扎帶聯(lián)接固定于一個力矩為15KG的舵機上,通過舵機轉(zhuǎn)動改變扎帶的松緊程度,從而使機械手爪自由“松-握”,達到抓放的目的。
2.2 OV7670模塊
該機器人由OV7670攝像機和一自由度的伺服單元構(gòu)成視覺系統(tǒng),OV7670攝像機的所有圖像處理功能過程包括伽馬曲線、白平衡、度、色調(diào)等都可以通過SCCB接口編程。
2.3 MCU模塊
該機器人的決策控制系統(tǒng)由STM32F103ZET6為核心的主控模塊構(gòu)成,主控模塊的作用是將視覺系統(tǒng)采集的圖像信息進行處理,根據(jù)目標的位置及自身的位姿,產(chǎn)生控制指令,通過串口將對應(yīng)的控制參數(shù)傳送到舵機驅(qū)動模塊,控制類人機器人本體執(zhí)行相應(yīng)的動作。
2.4 人機交互顯示模塊
該機器人使用OV7670攝像機的QVGA格式(320*240)輸出,與所使用的TFTLCD顯示屏的最大分辨率保持一致。采集的圖像實時顯示在顯示屏上,并且可以在顯示的圖像上標記出被識別的目標。結(jié)合獨立按鍵,可以改變圖像的白平衡、度、色調(diào),從而可以根據(jù)不同的環(huán)境選擇不同的圖像輸出模式。
2.5 舵機驅(qū)動模塊
舵機驅(qū)動模塊采用32位ARM內(nèi)核的處理器芯片以及USB和UART通訊接口,通過接收MCU控制信號產(chǎn)生PWM信號驅(qū)動各關(guān)節(jié)舵機,使機器人執(zhí)行規(guī)定動作,電壓過低時具有自動斷電和報警功能,防止舵機損壞。
3 軟件系統(tǒng)設(shè)計
本文研究的對象是基于OV7670視覺系統(tǒng)的類人機器人協(xié)調(diào)運動控制,此處以機器人對投籃項目的實現(xiàn)過程進行算法分析。
3.1 控制策略概述
開啟該系統(tǒng)后,系統(tǒng)首先初始化各個模塊,然后進入拾球循環(huán)。攝像機采集圖像數(shù)據(jù),經(jīng)圖像處理后得到機器人距籃球的距離和籃球偏離機器人正豎直中垂線的程度,當偏離程度大于規(guī)定值時,控制機器人轉(zhuǎn)向減小偏離程度,當距離大于拾球距離時,控制機器人直走減小距離。當?shù)竭_拾球距離后,控制機器人拾起籃球,然后進入投籃循環(huán)。同樣攝像機采集圖像數(shù)據(jù),經(jīng)圖像處理后得到機器人距籃框的距離和籃框偏離機器人正豎直中垂線的程度,當偏離程度大于規(guī)定值時,控制機器人轉(zhuǎn)向減小偏離程度,當距離大于投籃距離時,控制機器人直走減小距離。當?shù)竭_投籃距離后,控制機器人投籃,程序結(jié)束。具體的程序流程框圖如圖2所示。
3.2 顏色空間及其轉(zhuǎn)換
OV7670彩色攝像機輸出的圖像格式是RGB565,即RGB顏色空間[2]。在該設(shè)計的研究制作過程中,發(fā)現(xiàn)采用RGB顏色空間識別目標,易受環(huán)境如光照的影響,導(dǎo)致目標識別不準確;采用SHL顏色空間[3]則有效的解決了上述問題。以下是RGB-SHL顏色空間轉(zhuǎn)換公式。
3.3 識別算法設(shè)計
MCU接收OV7670采集的RGB圖像并對該圖像的像素點進行逐行掃描,每掃過一個像素點(該機器人采用隔點掃描)都計算出該像素點的SHL值,與預(yù)定顏色的SHL值作比較,在允許的誤差范圍內(nèi),即認為該像素點是預(yù)定顏色的像素點,對其進行標記,同理可標記出目標的其他像素點,形成顏色域,從而確定目標在機器人整個視野中的位置及形狀。通過查詢,預(yù)定顏色的SHL值:黃色 S:55 H:40 L:52;綠色 S:100 H:120 L:45;品紅:S:100 H:339 L:47等。
3.4 定位算法設(shè)計
機器人視覺系統(tǒng)所采用的單攝像機只可采集二維平面圖像,但是要實現(xiàn)機器人對空間內(nèi)球體的抓取和投遞,必須要判斷機器人到空間球體的距離。在已知球體半徑R,攝像機安裝高度H及攝像機視野俯角α、β,攝像機豎排像素點總數(shù)為N,并對球體顏色識別度較高的情況下,球中心距底邊為X個像素點,θ為攝像機到球心中點連線的俯角,可通過以下公式計算機器人到空間球體的距離D。
3.5 協(xié)調(diào)運動算法設(shè)計
機器人執(zhí)行的動作是對環(huán)境反映的直接輸出結(jié)果,步態(tài)規(guī)劃[4]對類人機器人的雙臂協(xié)調(diào)運動十分重要。直線行走,左轉(zhuǎn)20度,右轉(zhuǎn)20度、蹲下、抱球、投球等動作的不同使得每個自由度的運動參數(shù)大有不同,但設(shè)計中考慮的中心思想是每個動作在執(zhí)行中與執(zhí)行后的機器人的重心都要保持在合理的范圍內(nèi),使其具有良好的穩(wěn)定性。
類人機器人步態(tài)設(shè)計、雙臂協(xié)調(diào)運動設(shè)計都是通過上位機軟件設(shè)置與調(diào)試的。其中直線行走要確保左右邁出的步伐距離相同。左右轉(zhuǎn)彎有兩種轉(zhuǎn)彎方式,即邊前進邊轉(zhuǎn)彎和原地轉(zhuǎn)彎的方式。由于考慮到機器人對環(huán)境掃描做出的反饋的準確性,該機器人采用原地轉(zhuǎn)彎的方式。在設(shè)計轉(zhuǎn)彎時,通過改變轉(zhuǎn)彎腳劃出的距離大小與其執(zhí)行時間長短來達到理想的轉(zhuǎn)彎動作。抱球動作的設(shè)計主要考慮兩點,其一是球位置的不確定性,設(shè)計時要盡量擴大抓球的區(qū)域面積;其二是球容易滾動,設(shè)計時要確保球在機械爪上受力合理。抱球后的行走、轉(zhuǎn)彎類似于沒有抱球的情況,需要強調(diào)的是由于球和機械手臂前移時使重心整體前移,設(shè)計動作時可以后仰以達到抵消重心前移目的。投球要確保雙臂對球的作用力大小相近,方向一致,而且執(zhí)行動作時間要短,動作完成后要穩(wěn)。
4 實驗分析
該機器人設(shè)計完成后,參加了華北五?。ㄊ?、自治區(qū))大學(xué)生機器人大賽,驗證了該機器人的性能。實踐證明,該系統(tǒng)能夠準確識別籃球與籃筐、定位籃球與籃筐,從而產(chǎn)生控制指令,控制機器人準確完成任務(wù)。
5 結(jié)束語
本文設(shè)計了基于OV7670視覺系統(tǒng)及仿真機械臂的類人機器人。通過實踐,證明該機器人具有目標識別準確、步態(tài)穩(wěn)定性好、操作準確可靠等優(yōu)勢。在對多種不同顏色、形狀的目標(籃球和球筐)的識別過程中,該機器人視覺系統(tǒng)都發(fā)揮出了其準確的識別性能,配合仿真機械臂精確地完成了抓取投放任務(wù)。該機器人在2016年華北五?。ㄊ小⒆灾螀^(qū))大學(xué)生機器人大賽天津分賽區(qū)獲得籃球項目第一名,北京總決賽籃球項目第一名。
參考文獻
[1]馮占英,李勇霞,盛洪.自主機器人制定顏色形狀屬性物體的識別方法[J].北京聯(lián)合大學(xué)學(xué)報:自然科學(xué)版,2011(3).
[2]蔡詠梅,郭文強,張琳琳,等.RG B空間平均顏色矢量法在顏色識別中的研究[J].計算機應(yīng)用與軟件,2014(5):177-179.DOI:10.3969/j.issn.1000-386x.2014.05.045.
[3]袁奮杰,周曉,丁軍,等.基于FPGA的RGB和HSV色空間轉(zhuǎn)換算法實現(xiàn)[J].電子器件,2010,33(4):493-497.DOI:10.3969/j.issn.1005-9490.2010.04.023.
[4]湯中華,劉莉,陳懇,等.類人機器人耦合步態(tài)規(guī)劃與實驗研究[J].機械設(shè)計與制造,2013(1):52-54.DOI:10.3969/j.issn.1001-3997.201
3.01.019.
作者簡介:王小龍(1995-),男,漢族,云南省曲靖市,中國民航大學(xué),本科在讀,電氣工程及其自動化。