山 峰,謝少榮,鄭麗麗,羅 均
(上海大學(xué) 機電工程與自動化學(xué)院,上海 200072)
仿生眼系統(tǒng)是近年來國內(nèi)外研究的熱點[1],它可以根據(jù)攝像頭采集回來的圖像信息以及各傳感器的信號,不斷調(diào)整運動跟蹤平臺的轉(zhuǎn)動,使攝像頭視軸跟蹤目標(biāo)物體運動。通過一定的仿生模型,可以使仿生眼系統(tǒng)模仿人眼的前庭動眼反射、視動反射、平滑追蹤以及急動等功能。
鑒于仿生眼系統(tǒng)體積小、重量輕,可以搭載在各種移動機器人、水下機器人以及飛行器上,用于交通、軍事、反恐防暴、勘察、救災(zāi)等多種危險或者不適合人近距離觀察的環(huán)境。
本文設(shè)計了一個仿生眼的運動控制系統(tǒng),實現(xiàn)了與課題組其他成員所設(shè)計的眼球機構(gòu)控制單元和圖像處理系統(tǒng)的接口對接。通過實驗調(diào)試,驗證了系統(tǒng)可以滿足仿生眼運動控制的實時性要求。
人們通過支配6條眼外肌使之產(chǎn)生協(xié)調(diào)運動,使目標(biāo)物體在視網(wǎng)膜的中央凹上成像。該類運動可視為視覺-眼動系統(tǒng)在一定刺激下的輸出,表現(xiàn)為不斷地視軸運動。

圖1 單眼眼動簡化模型
根據(jù)人眼的運動模型[2]提取出單眼運動的簡化模型如圖1所示。
整套仿生眼系統(tǒng)由控制系統(tǒng)、圖像處理系統(tǒng)、眼球機構(gòu)、三軸陀螺儀、無線通信模塊組成。

圖2 硬件系統(tǒng)圖
微型攝像頭置于眼球內(nèi),該機構(gòu)具有兩個自由度的轉(zhuǎn)動[3]。
利用兩臺舵機控制眼球的轉(zhuǎn)動。這里選用韓國HiTEC公司型號為HSG-5084MG的舵機作為眼球機構(gòu)的驅(qū)動器。該舵機采用4.8V電源供電,最高可輸出1.5kg.cm的扭矩,空載轉(zhuǎn)速達(dá)到0.07s/60°,體積為29×13×30mm,滿足了對運動機構(gòu)的微型化和高速響應(yīng)的要求。

圖3 眼球機構(gòu)原理圖
采用Silicon Laboratories公司的C8051F023單片機作為運動控制系統(tǒng)的核心處理器。C8051F023是完全集成的混合信號系統(tǒng)級MCU芯片[4],其內(nèi)核采用流水線結(jié)構(gòu),70%的指令的執(zhí)行時間只需要1個或2個系統(tǒng)時鐘周期,加上C8051F023最高可達(dá)25MHz的系統(tǒng)時鐘頻率,與標(biāo)準(zhǔn)的8051結(jié)構(gòu)相比處理速度大大提高。同時C8051F023內(nèi)置64K字節(jié)的程序存儲器和4352字節(jié)的數(shù)據(jù)存儲器,在大多數(shù)的應(yīng)用中無需再另外擴展存儲器。
在控制系統(tǒng)中,利用UART,通過MAX3232進(jìn)行電平轉(zhuǎn)換,與外部的三軸陀螺儀、圖像處理系統(tǒng)以及無線通信模塊進(jìn)行通信連接。由于C8051F023內(nèi)部只帶有2個UART,因此,還需要擴展一個UART。這里采用軟件UART,下文會有詳細(xì)論述。
采用周期為20ms的PWM對舵機進(jìn)行控制。本文中所使用的HSG-5084MG舵機,PWM控制信號的高電平時長為1.1ms~1.9ms,對應(yīng)于舵機的轉(zhuǎn)動角度-35°~+35°。當(dāng)高電平時長為1.5ms時,舵機的轉(zhuǎn)角位于中心位置。
除此之外,還預(yù)留了2個SPI接口和2個ADC輸入通道,用于系統(tǒng)將來的擴展。如可利用SPI與所搭載的機體的控制器進(jìn)行通信;也可利用ADC來觀測供電電池的電壓信號,可在電壓不足的情況下進(jìn)行報警。
本控制系統(tǒng)中,由于C8051F023本身只帶有2個UART接口,但系統(tǒng)的應(yīng)用中卻需要3個UART,因此還需要另行擴展一個UART。
擴展UART的方法不外乎兩種:使用擴展芯片或者軟件模擬。采用擴展芯片方式增加UART最大的缺點就是需要增加成本,這在成本敏感的項目里面是不可取的。通過充分挖掘MCU片上硬件資源,使用軟件模擬方式生成UART,不但能夠降低成本,還能簡化電路。考慮到C8051F023本身自帶的PCA(可編程計數(shù)器陣列)就能為軟件UART提供一個很好的解決方案[5],因為PCA計數(shù)器在產(chǎn)生中斷的情況下不會停止計數(shù),即不會因為中斷而產(chǎn)生延時的積累,利用這一點能夠產(chǎn)生精確波特率,這是傳統(tǒng)的使用定時器產(chǎn)生軟件UART的波特率所不能比擬的。
在這里利用兩個PCA模塊分別產(chǎn)生軟件UART的接收和發(fā)送波特率,并利用PCA的下降沿捕獲功能判斷數(shù)據(jù)接收的起始位。所有的接收和發(fā)送過程是在PCA中斷服務(wù)程序內(nèi)完成的。

圖4 軟件UART程序流程圖
圖像處理是仿生眼系統(tǒng)的核心[6]。通過圖像處理,可以獲取運動的目標(biāo)物體與圖像中心的偏角,并把偏角數(shù)據(jù)通過RS-232C傳給運動控制系統(tǒng)。運動控制系統(tǒng)根據(jù)所收到的數(shù)據(jù)信息,再控制眼球機構(gòu)的轉(zhuǎn)動,使目標(biāo)物體始終處于圖像中央。
當(dāng)仿生眼系統(tǒng)搭載在非固定機體上時,由于機體自身受到發(fā)動機振動、空氣阻力等外界因素的影響使得的機體自身姿態(tài)發(fā)生改變,這勢必嚴(yán)重影響對移動目標(biāo)視頻跟蹤的穩(wěn)定性。所以需要能夠?qū)崟r的采集到機體姿態(tài)的變化,并根據(jù)采集到的變化量給予反向控制,從而減少機體姿態(tài)對跟蹤仿生眼系統(tǒng)的影響,避免了跟蹤攝像頭視軸經(jīng)常偏移移動目標(biāo)。
本系統(tǒng)中考慮到控制跟蹤的連續(xù)性和穩(wěn)定性,采用了具有高速度、高精度、多功能的傳感器3DMGX1[7]。3DM-GX1可以綜合三個角速率陀螺儀,三個正交的加速度計和三個正交的磁力計的測量數(shù)據(jù),從而在靜止或動態(tài)的條件下提供穩(wěn)定的方向信息。當(dāng)三個軸都在360°的范圍內(nèi)進(jìn)行旋轉(zhuǎn)時,該產(chǎn)品可以輸出為矩陣、四元數(shù)或歐拉角度方程格式的方向信息;它的數(shù)字式連續(xù)輸出還可以為所有傳感器提供溫度補償信號;其擁有一個嵌入式處理器,自帶了可調(diào)濾除算法,以提供穩(wěn)定的輸出信號;內(nèi)置RS-232C接口。
由于仿生眼系統(tǒng)是搭載在移動機器人、水下機器人或飛行器上的,它與上位機勢必只能通過無線通信取得聯(lián)系。
無線通信模塊連接機載的跟蹤控制系統(tǒng)和地面控制站,在向地面發(fā)送實時的跟蹤數(shù)據(jù)的同時,實現(xiàn)地面操作人員對跟蹤控制系統(tǒng)的遠(yuǎn)程操作和人工干預(yù)。根據(jù)其工作任務(wù)和環(huán)境特點,要求無線通信模塊串口傳輸、通信距離遠(yuǎn)、功耗低、穩(wěn)定可靠。為此,選用了可工作在900Mhz或2.4Ghz不需認(rèn)證的ISM波段的XStream-PKG-R[8]無線數(shù)傳電臺,它具有如下主要功能:
支持RS-232/485(多端口總線)協(xié)議;
與主機接口波特率 :1200bps~57.6Kbps,空中傳輸速率9600bps或19.2Kbps,戶外傳輸距離可達(dá)11km。
控制系統(tǒng)主要實現(xiàn)的功能如下:
1)與上位機進(jìn)行無線通信,獲取命令數(shù)據(jù);
2)與圖像處理系統(tǒng)進(jìn)行通信,獲得攝像頭視角偏移數(shù)據(jù);
3)獲取仿生眼所搭載的機體的姿態(tài)變化率;
4)實現(xiàn)對眼球機構(gòu)的運動控制率。

圖5 系統(tǒng)軟件流程圖
主要從軟件UART和控制系統(tǒng)兩個方面進(jìn)行了實驗。
由于本系統(tǒng)中采用軟件模擬方式擴展了UART,而軟件UART的運行需要占用一定的機時,因此需要平衡通信速度和硬件機時占用。
實驗條件:跟蹤控制板上采用了22.1184Mhz的晶振。
實驗方法:上位機對控制板的軟件UART連續(xù)不間斷地發(fā)送數(shù)據(jù)。MCU采用查詢方式,軟件UART在接收到每個字節(jié)數(shù)據(jù)的同時,把接收到的每個字節(jié)數(shù)據(jù)立即用軟件UART的發(fā)送端回發(fā)給上位機,然后對比上位機發(fā)送的數(shù)據(jù)和接收到數(shù)據(jù)。如圖6所示。
根據(jù)實驗結(jié)果可知,在時鐘頻率為22.1184Mhz的條件下,該軟件UART可對絕大多數(shù)的應(yīng)用提供全雙工模式下38.4Kbps的波特率支持。
而本系統(tǒng)對系統(tǒng)的實時性要求很高,為此,將此軟件UART配置給數(shù)據(jù)傳輸壓力最小的無線通信模塊,同時將波特率設(shè)為19.2Kbps,以滿足系統(tǒng)的響應(yīng)速度。

圖6 實驗時用到的串口調(diào)試器

表1 實驗結(jié)果表
控制板的調(diào)試采用上位機定時發(fā)送目標(biāo)偏角數(shù)據(jù)給跟蹤控制系統(tǒng),由控制系統(tǒng)根據(jù)偏角數(shù)據(jù)控制舵機的轉(zhuǎn)動。
考慮到我國電視采用PAL制式,每秒鐘能產(chǎn)生25幀圖像。這里就假設(shè)圖像處理系統(tǒng)能夠每秒處理25幀圖像,即每秒鐘給出25組目標(biāo)物體的偏角數(shù)據(jù)。
實驗方法:上位機每隔40ms發(fā)送一組偏轉(zhuǎn)數(shù)據(jù)給運動跟蹤控制板,觀察舵機的運動。
結(jié)果表明,舵機反應(yīng)迅速,無滯后響應(yīng)現(xiàn)象。

圖7 運動跟蹤控制板
結(jié)合仿生眼運動的建模和對模型的離散化控制,該系統(tǒng)能夠很好模仿人眼的運動,且能夠達(dá)到很高的精度。同時通過實驗,初步表明,該跟蹤控制系統(tǒng)能夠滿足仿生眼系統(tǒng)對實時性的要求。
[1] 鄒海榮,龔振邦,羅均.仿生眼的研究現(xiàn)狀與發(fā)展趨勢[J].機器人,2005,27(5):469-474.
[2] Zhang X L,Wakamatsu H. An Unified Adaptive Oculomotor Control Model[J].International Journal of Adaptive Control and Signal Processing,2001,15(7):697-713.
[3] 傅湘國.地面目標(biāo)低空跟蹤伺服云臺控制系統(tǒng)研究[D].上海:上海大學(xué),2007.
[4] 潘琢金.C8051F020/1/2/3混合信號ISP FLASH微控制器數(shù)據(jù)手冊[Z].Rev 1.4.新華龍電子有限公司.2005.
[5] 潘琢金,孫德龍,夏秀峰.C8051F單片機應(yīng)用解析[M].北京:北京航空航天大學(xué)出版社,2002.
[6] Xie S R,Gong Z B,Ding W,et al.Detection and Tracking of Moving object in Visual Tracking from a Low-Altitude Flying Helicopter[A].Proceedings of the 2007 IEEE International Conference on Robotics and Biomimetics[C].Sanya:IEEE,2007:178-182.
[7] MicroStrain Inc.3DM-GX1 Datasheet[Z].2005.
[8] MaxStream Inc.XStream-PKG-RTM RS-232/485 RF Modem Product Manual[Z]. 2006.