梁衛(wèi)鴿,郝衛(wèi)東,李 靜
(桂林電子科技大學(xué) 機(jī)電工程學(xué)院,廣西 桂林 541004)
自動機(jī)器人要在跑道上自動識別路線行駛,那么檢測路面信息是實現(xiàn)機(jī)器人巡線功能的前提。只有準(zhǔn)確收集路面信息,快速做出判斷,才能更加穩(wěn)定快速地在路徑上前進(jìn)。因此機(jī)器人視覺系統(tǒng)是整個控制系統(tǒng)中的關(guān)鍵,其主要功能是對機(jī)器人尋線的準(zhǔn)確性進(jìn)行控制,通過判斷機(jī)器人距離路徑中心的距離,調(diào)整機(jī)器人位置,保證機(jī)器人按照中心線行走。
路徑識別方案的好壞,直接關(guān)系到機(jī)器人系統(tǒng)性能的優(yōu)劣。常用技術(shù)有:采用CCD 傳感器[1]循線、光電管陣列[1-3]、可見光、紅外傳感器循線技術(shù)等。各種檢測方法都有相應(yīng)的優(yōu)缺點。光電傳感器受外界光線影響大,難以達(dá)到較高的精度;紅外線精度較高,但不具備提前預(yù)知賽道的能力;CCD 傳感器循跡雖然信號處理比較復(fù)雜,但可以更遠(yuǎn)且更早地感知賽道的變化,采集圖像分辨率較高,路線跟蹤精度高,不易受環(huán)境干擾,因此選擇CCD 攝像頭識別路線。
由位于機(jī)器人上方的CCD 攝像頭檢測白色路線的當(dāng)前位置,并把數(shù)據(jù)傳送給AVR 單片機(jī)ATMEGA8,用8 個發(fā)光二極管顯示采集到的信息,然后將采集到的數(shù)據(jù)傳送給主單片機(jī)ATMEGA32,根據(jù)程序判斷機(jī)器人是否行走在路徑中間,若已偏離路徑,則通過電機(jī)驅(qū)動器控制電機(jī),改變左右輪的速度,從而調(diào)節(jié)機(jī)器人的運(yùn)動方向[4]。系統(tǒng)的基本原理框圖如圖1 所示。
圖1 機(jī)器人視覺系統(tǒng)的基本原理框圖
單片機(jī)ATMEGA8 把CCD 采集到的圖像進(jìn)行處理,包括A/D 轉(zhuǎn)化和二值化等,然后把處理后的信息交給主控單片機(jī)ATMEGA32 進(jìn)行電機(jī)控制。
普通CCD 圖像傳感器通過行掃描方式,將圖像信息轉(zhuǎn)換為一維的視頻模擬信號輸出。CCD 輸出的信號變化較快,比如PAL 制式的視頻信號,每秒輸出50幀圖像信息,每幀圖像312.5 行,每行圖像信號時間為64 μs,其中有效的圖像信號約為56 μs。相比之下,ATMEGA8 的 A/D 轉(zhuǎn)換器采集速度較低:根據(jù)ATMEGA8器件手冊[3],進(jìn)行10 位A/D 轉(zhuǎn)換所需的時間為7 μs。這樣,采集的圖像每行只能有8 個像素,水平分辨率較低。另一方面,每場圖像可采集約300 行的圖像信息,所以圖像垂直分辨率相對較高[5]。從這種水平分辨率低、垂直分辨率高的圖像中,無法獲取具有足夠精度的路徑信息。
為此,針對大賽采用跑道的形狀特點:跑道都是由寬30 cm 的白色直線組成,檢測機(jī)器人前方一段路線參數(shù),只需得到中心線上3 ~5 個點的位置信息就可以估算出路徑參數(shù)。這些點的位置,通過圖像中若干行信息就可以檢出,如圖2 所示。因此,所需檢測圖像應(yīng)該是水平分辨率高、垂直分辨率低[6]。
圖2 賽道形狀和賽道中心線檢測位置
將ATMEGA8 單片機(jī)采集的圖像分辨率特點,與賽道檢測對圖像分辨率的要求進(jìn)行對比,可以發(fā)現(xiàn),在安裝CCD 攝像頭時,只要將其旋轉(zhuǎn)90°,輸出的圖像信息也相應(yīng)旋轉(zhuǎn)90°。這樣,ATMEGA8 中A/D 轉(zhuǎn)換器采集的圖像信息,水平分辨率與垂直分辨率就會互換,原水平分辨率低、垂直分辨率高的圖像,就會變成水平分辨率高、垂直分辨率低的實際圖像,以滿足道路參數(shù)檢測要求[7]。路線圖像以及攝像頭旋轉(zhuǎn)90°后的賽道圖像如圖3 所示。
圖3 路線圖像以及攝像頭旋轉(zhuǎn)90°后的賽道圖像
為采集圖像信息,CPU 需要根據(jù)行、場同步信號啟動A/D 轉(zhuǎn)換器,采集穩(wěn)定的圖像。由于視頻信號的變化快,所以需要另外設(shè)計同步分離電路。使用LM1881視頻同步分離集成塊,獲取視頻同步信號,將此同步信號連到單片機(jī)的中斷輸入端口。除此之外,一般CCD輸出視頻信號的峰峰值約在1 V,可以不經(jīng)過放大直接連接到單片機(jī)的A/D 輸入端口進(jìn)行采集,也可以把視頻信號適當(dāng)放大后將信號的峰峰值提高到34 V 輸入到單片機(jī)。CCD 器件工作電壓12 V,為此,需要在系統(tǒng)電路設(shè)計中,增加獨(dú)立12 V 電源模塊[8-9]?;蛞部刹捎脭夭ㄉ龎旱姆绞将@得12 V 電壓,硬件原理如圖4所示。
圖4 單片機(jī)采集圖像系統(tǒng)原理框圖
圖中包括有ATMEGA8 單片機(jī)最小系統(tǒng)、同步分離電路、5 V 穩(wěn)壓電路、12 V 斬波升壓電路等。其中ATMEGA8 單片機(jī)端口資源配置為:(1)A/D 輸入端口PAD02。輸入視頻模擬信號。(2)外部中斷口IRQ。輸入視頻行同步信號。(3)數(shù)字IO 口PM1。輸入奇偶場信號。(4)PWM 輸出端口。PWM2 12 V 斬波升壓控制信號。(5)二極管顯示輸出端口。
圖像采集采用中斷方式進(jìn)行,采用72×24 分辨率的圖像,由于采集到的圖像由綠色背景和白色中心線組成,所以檢測每一行路徑中心線位置可以通過閾值比較計算出來[10]。軟件設(shè)計主要包括圖像采集模塊和圖像處理模塊,其中圖像采集模塊的主要包括:(1)系統(tǒng)初始化。A/D 轉(zhuǎn)換器初始化、外部中斷初始化。(2)外部中斷響應(yīng)模塊。判斷是否幀圖像開始、判斷是否采集該行圖像、啟動A/D 轉(zhuǎn)換、標(biāo)示圖像采集完畢。(3)A/D 轉(zhuǎn)換中斷響應(yīng)模塊。采集固定數(shù)目的圖像數(shù)據(jù)。上位機(jī)處理圖像流程如圖5 所示。
圖5 上位機(jī)處理圖像流程圖
調(diào)試過程中,為更好地觀察路線是否偏移,將采集到的圖像分為8 組,每組用1 個發(fā)光二極管亮滅顯示采集的圖像是否為白色路線。若最左邊的二極管亮,說明白線在最左邊,則機(jī)器人的位置偏右,需要調(diào)整左右輪的轉(zhuǎn)速。在行駛過程中要保證中間的二極管亮,即機(jī)器人一直行走在路線中間。CCD 攝像頭和制作的視覺系統(tǒng)控制板如圖6 所示。
ATMEGA8 單片機(jī)采集到并通過串口傳送到微機(jī)顯示的前方直線路徑中心線的圖像部分?jǐn)?shù)據(jù),如表1所示。
圖6 CCD 攝像頭和視覺系統(tǒng)控制板
表1 采集到的圖像部分?jǐn)?shù)據(jù)
從表1 中可以觀察出,中間5 列數(shù)據(jù)值較大,兩邊數(shù)據(jù)較小。數(shù)據(jù)值較大的位置即為識別到的白線,數(shù)據(jù)值較小的位置為綠色背景。因白色的線反光度大,所以數(shù)值也較大。從上表也可看出,設(shè)計的視覺系統(tǒng)可以可靠地識別出場地里的白線。同時,通過閾值比較方式,即可以將每行中心線位置計算出來,處理時間約為8 μs 左右。上述CCD 檢測方法可以有效的獲取路徑圖像信息,并計算出其中的參數(shù)。
設(shè)計通過合理放置CCD 攝像頭,并且充分利用ATMEGA8 單片機(jī)內(nèi)部的硬件資源,可獲取滿足路徑參數(shù)檢測需要的圖形數(shù)據(jù),進(jìn)而可通過圖像處理算法,得到路徑參數(shù)。當(dāng)然,利用CCD 檢測路徑參數(shù)也存在一些缺點:比如占用RAM 資源比較多、道路信息檢測速率受到限制、檢測有延時等,需要進(jìn)一步改進(jìn)。
[1] 叢爽,李澤湘.實用運(yùn)動控制技術(shù)[M].北京:電子工業(yè)出版社,2006.
[2] 高國富,謝少榮,羅均.機(jī)器人傳感器及其應(yīng)用[M].北京:化學(xué)工業(yè)出版社,2005.
[3] 黃開勝,金華民,蔣狄南.韓國智能模型車技術(shù)方案分析[J].電子產(chǎn)品世界,2006(3):150-152.
[4] 張運(yùn)楚,梁自澤,譚民.架空電力線路巡線機(jī)器人的研究綜述[J].機(jī)器人,2004,26(5):467-473.
[5] 王慶有.圖像傳感器應(yīng)用技術(shù)[M].2 版.北京:電子工業(yè)出版社,2013.
[6] 李強(qiáng),張鈸.一種基于圖像灰度的快速匹配算法[J].軟件學(xué)報,2006,17(2):216-222.
[7] 許松清,吳海彬,林宜,等.基于DSP 的半自主移動機(jī)器人遠(yuǎn)程控制系統(tǒng)[J].單片機(jī)與嵌入式系統(tǒng)應(yīng)用,2005,56(8):58-60,70.
[8] 王世一.數(shù)字信號處理[M].北京:北京理工大學(xué)出版社,1997.
[9] 莊健.基于視覺伺服智能移動機(jī)器人的研究[D].西安:西安交通大學(xué),2002.
[10]劉溯奇,郝衛(wèi)東,林添成,等.基于嵌入式的視覺巡線機(jī)器人系統(tǒng)設(shè)計[J].工程設(shè)計學(xué)報,2008,15(2):94-96,108.