楊 陽
(南京機電職業(yè)技術(shù)學(xué)院,211135)
自第一臺工業(yè)機器人誕生以來,機器人的發(fā)展已經(jīng)遍及機械、電子、交通、宇航、國防等相關(guān)領(lǐng)域。近幾年來機器人的智能水平不斷加以提高,并且迅速地改變著人們的生活方式。隨著科學(xué)技術(shù)的發(fā)展,感應(yīng)機器人的傳感器種類越來越多,其中視覺傳感器成為自動行走和駕駛的重要部件。視覺傳感器的核心器件是CCD 或攝像管,目前的CCD 已能做到自動聚焦,但CCD 傳感器在體積、價格和使用方式上并不占優(yōu)勢,因此在不要求清晰圖像只需要粗略感覺的系統(tǒng)中考慮使用接近視覺傳感器是一種實用有效的方法。
機器人要實現(xiàn)自動導(dǎo)引功能和避障功能就必須要感知導(dǎo)引線和障礙物,感知導(dǎo)引線相當(dāng)給機器人一個視覺功能。避障控制系統(tǒng)是基于自動導(dǎo)引小車(AVG—auto-guide vehicle)系統(tǒng),基于它的智能小車實現(xiàn)自動識別路線,判斷并自動避開障礙,選擇正確的行進路線,使用傳感器感知路線和障礙并作出判斷和相應(yīng)的執(zhí)行動作,故本文設(shè)計了一種在ZedBoard 平臺下按預(yù)設(shè)軌道運行的智能小車,取得了很好地效果。
本設(shè)計的主控板為zedboard 開發(fā)板,主芯片Zynq-7000 結(jié)合高性能雙核ARM Cortex A9 MPCore 處理系統(tǒng)和可編程邏輯于一體,見圖1,系統(tǒng)主要功能是:
1)通過攝像頭視頻完成數(shù)字識別
2)利用超聲波傳感器完成自動避障
3)利用光電傳感器完成自動尋線運動
4)LCD 顯示溫度和數(shù)字

圖1 zedboard 小車系統(tǒng)結(jié)構(gòu)框圖
通過zedboard 上的Pmod 接口實現(xiàn)硬件的物理連接,zedboard 上 的4 個Pmod 接 口(JA,JB,JC,JD)支 持LVCMOS3.3V和LVTTL3.3V 信號,JA4 和JA10 分別接兩個舵機,JB1 和JB8接電機,JB7 和JB2 接PWM 發(fā)生器,JD1P,JD2P,JD3P 分別接三個超聲波。為了避免短路電流和靜電,Pmod 接口電路設(shè)計中為每個信號端增加了一個靜電保護二極管和串接了1 個200 歐的電阻,Pmod 接口電路設(shè)計如圖2 所示。

電機模塊:本設(shè)計所用電機為帶減速的直流電機,帶減速的電機就是在普通電機上加了減速箱,這樣便降低了轉(zhuǎn)速,增大了扭力,使得普通電機有更廣泛的使用空間。帶減速的電機由于降低了轉(zhuǎn)速,增大了扭力,此電機的控制采用了H 橋電路方案,用L298 芯片組成的電路進行控制,能實現(xiàn)PWM(脈寬調(diào)制)調(diào)速,控制上采用FPGA 進行PWM 調(diào)速控制,PWM 控制可以方便的控制小車整體速度。
環(huán)境光強傳感器模塊:本設(shè)計所使用的光電傳感器為5 路槽型光電傳感器模塊,每路模塊是由一個光發(fā)射器和一個接收器面對面的裝在一個槽的兩側(cè)組成。發(fā)光器能發(fā)出紅外光,檢測地面光強,在無阻情況下光接收器能收到光。但當(dāng)被檢測物體從槽中通過時,光被遮擋,光電開關(guān)便開始工作,輸出一個開關(guān)控制信號,切斷或接通負載電流,從而完成一次控制動作,槽形開關(guān)的檢測距離因受整體結(jié)構(gòu)的限制一般只有幾厘米,因此將此模塊應(yīng)用在小車底盤進行多路循跡,能大大的增強小車的循跡精度。
1602 液晶顯示模塊:將此次設(shè)計過程中所需要的數(shù)據(jù)反饋到顯示屏上來,直觀簡潔,它是一種專門用來顯示字母、數(shù)字、符號等的點陣型液晶模塊。
溫度傳感器模塊:本設(shè)計所使用溫度傳感器模塊為TCN75AVUA,用于溫度采集。TCN75AVUA 是串行可編程溫度傳感器,當(dāng)周圍溫度超過用戶編定的設(shè)定點時,它可通知主機控制器滯后,也是可編程的INT/CMPTR 輸出端,可通過編程用作自動調(diào)溫器工作中的一個簡單的比較器或用作一個溫度事件中斷與TCN75 的通信。
超聲波模塊:用于設(shè)計中的測距,避障等,使小車按預(yù)設(shè)軌道前行。
VIVADO:一般情況下,對于單純的FPGA,VIVADO 是將硬件描述語言(Verilog 或者VHDL)描述的功能模塊進行綜合實現(xiàn),并生成FPGA 可以上電后能夠加載的BIT 流。而針對我們的Zedboard 上的zynq 芯片,vivado 除了生成了PL(即FPGA)部分的BIT 流,還生成PS(即ARM)的一些配置文件(比如在生成xparameters.h 里面的宏,ARM 的某些管腳第二功能:串口,IIC,SPI,Ethernet 等的配置文件等)等。所以可以這么理解,所有和硬件相關(guān)的(AXI_GPIO,Motor 之類的外設(shè)IP 核)必須在VIVADO 中完成。
SDK:SDK 是Software Development Kit 的 簡 稱,基 于Eclipse。我們是將VIVADO 的硬件工程導(dǎo)入到SDK,使用SDK 進行軟件的編寫(Linux 除外)。而這個硬件工程可以是你自己使用VIVADO 做的,也可以是別人使用VIVADO 做好的。
根據(jù)智能循跡小車需要,zedboard 控制板的任務(wù)是控制和調(diào)用采集傳感器進行數(shù)據(jù)的采集和各個模塊的調(diào)用。本次智能小車的設(shè)計包含超聲波模塊,1602 液晶顯示模塊,溫度傳感器模塊,光電循跡模塊,攝像頭,電機,舵機。在循跡過程中,會對各種事件做出應(yīng)答,執(zhí)行相應(yīng)的任務(wù),并將任務(wù)結(jié)果反饋到控制中心。軟件設(shè)計過程中采用模塊化編程,將各個功能模塊以子函數(shù)的形式展現(xiàn),利于書寫和查看,使任務(wù)目標(biāo)直觀化,更加效率,且在平臺的移植上易于修改。

中央控制模塊主要是將各模塊進行協(xié)調(diào)處理和實現(xiàn)數(shù)據(jù)交互。
軟件設(shè)計主流程圖見圖3。

實際中zedboard 智能小車的正確識別率在98%以上,操作過程中發(fā)現(xiàn),影響小車正常辨別的因素主要由紅外傳感器的質(zhì)量和賽道寬度決定,另該小車采用了高精度超聲波避障系統(tǒng),提高小車行駛的安全性,采用功能強大的ARM 系統(tǒng)進行模塊化設(shè)計,有利于小車功能的進一步延生開發(fā),提高了系統(tǒng)設(shè)計效率,本系統(tǒng)可以作為移動機器人的載體,在技術(shù)成熟以后可以應(yīng)用于工業(yè)、農(nóng)業(yè)、國防軍事等領(lǐng)域,具有廣闊的市場潛力和美好的應(yīng)用前景。
[1] 侯益坤,侯聰玲,劉益標(biāo),基于 ARM 嵌入式的智能小車的控制系統(tǒng)設(shè)計[J],廣東工貿(mào)職業(yè)技術(shù)學(xué)院,2010
[2] 蘇蕊,基于ARM 芯片的嵌入式運動控制系統(tǒng)設(shè)計[J], 微計算機信息, 2008(11)
[3] 董濤,劉進英,蔣蘇,基于單片機的智能小車的設(shè)計與制作[J],計算機測量與控制,2009(02)
[4] 徐開蕓,韋樹成,汪木蘭,丁左武,基于AVR 單片機的太陽能智能小車控制系統(tǒng)設(shè)計[J],機電產(chǎn)品開發(fā)與創(chuàng)新,2010(01)
[5] 安巖,自動循跡智能小車的設(shè)計[J],蘇州科技學(xué)院學(xué)報(工程技術(shù)版), 2010(01)
[6] 陳素華,方旭,司宏昌,基于ARM 和FPGA 的智能小車監(jiān)控系統(tǒng),許昌學(xué)院電氣信息工程學(xué)院,2010