溫芮,陳錦鴻,王麗
(華南理工大學(xué)廣州學(xué)院,廣東廣州 510800)
藍(lán)牙作為一種無(wú)線技術(shù)標(biāo)準(zhǔn),可實(shí)現(xiàn)固定設(shè)備、移動(dòng)設(shè)備間的短距離數(shù)據(jù)交換。當(dāng)今汽車(chē)車(chē)載藍(lán)牙應(yīng)用范圍越來(lái)越廣,移動(dòng)智能手機(jī)也給人類的生活帶來(lái)了便利。設(shè)計(jì)基于藍(lán)牙控制技術(shù)的智能小車(chē)控制系統(tǒng),可為車(chē)載藍(lán)牙與手機(jī)相結(jié)合的設(shè)計(jì)提供新的設(shè)計(jì)思維與方法,也為汽車(chē)無(wú)線遠(yuǎn)程控制的設(shè)計(jì)提供參考。
此設(shè)計(jì)以安卓手機(jī)作為控制端,以STC89C52單片機(jī)為藍(lán)牙信號(hào)接收控制核心。首先需要在安卓手機(jī)端安裝藍(lán)牙APP,利用APP作為平臺(tái)發(fā)送藍(lán)牙數(shù)據(jù),智能小車(chē)端的藍(lán)牙模塊把接收的數(shù)據(jù)通過(guò)單片機(jī)串口把數(shù)據(jù)傳給STC89C52單片機(jī),單片機(jī)處理判斷后作出反應(yīng),如此實(shí)現(xiàn)對(duì)智能小車(chē)的藍(lán)牙控制。智能小車(chē)主要實(shí)現(xiàn)以下功能:
(1)具有智能循跡,在簡(jiǎn)單環(huán)境中實(shí)現(xiàn)自動(dòng)避障功能;
(2)具有手機(jī)APP藍(lán)牙控制功能的智能小車(chē),可通過(guò)手機(jī)操作界面實(shí)現(xiàn)小車(chē)的前進(jìn)、后退、右轉(zhuǎn)彎、左轉(zhuǎn)彎等功能。
智能小車(chē)控制系統(tǒng)總體設(shè)計(jì)框圖如圖1所示。
主要工作原理為:裝有藍(lán)牙APP的安卓手機(jī)將控制命令發(fā)送給智能小車(chē)藍(lán)牙模塊,藍(lán)牙模塊把信號(hào)傳輸給單片機(jī)進(jìn)行處理,單片根據(jù)傳遞過(guò)來(lái)的指令運(yùn)行不同的子程序,控制電機(jī)驅(qū)動(dòng),實(shí)現(xiàn)對(duì)小車(chē)前進(jìn)、后退、右轉(zhuǎn)、左轉(zhuǎn)、停止的實(shí)時(shí)控制。
圖1 總體設(shè)計(jì)框圖
設(shè)計(jì)的控制系統(tǒng)采用STC89C52芯片,是一種低功耗、高性能CMOS 8位微控制器。STC89C52使用經(jīng)典的MCS-51內(nèi)核,結(jié)構(gòu)簡(jiǎn)單便于輸入與輸出,共有40個(gè)引腳,與STC89C51相比多了一個(gè)中斷源和定時(shí)計(jì)數(shù)器。該單片機(jī)具有讀取和采集小車(chē)數(shù)據(jù)的功能, 根據(jù)采集的信號(hào)進(jìn)行控制并針對(duì)小車(chē)的轉(zhuǎn)速、轉(zhuǎn)向和障礙進(jìn)行避障等控制。設(shè)計(jì)中,驅(qū)動(dòng)模塊運(yùn)用了P1.2-P1.7串口;超聲波模塊運(yùn)用了P2.0、P2.1串口;避障與循跡模塊運(yùn)用了P3.2、P3.3、P3.4、P3.5串口;藍(lán)牙模塊運(yùn)用了P3.0、P3.1串口,具體如圖2所示。
圖2 開(kāi)發(fā)板原理
設(shè)計(jì)中采用2節(jié)3.7 V可充鋰電池直接供電,由于小車(chē)各模塊需要5 V的恒壓電源供電,通過(guò)LM7805降壓IC把電池降壓輸出5 V;而電機(jī)驅(qū)動(dòng)電流較大,在設(shè)計(jì)過(guò)程中由驅(qū)動(dòng)模塊L293D驅(qū)動(dòng)芯片電池直接供電,可用PWM調(diào)整電機(jī)轉(zhuǎn)速。
設(shè)計(jì)中采用L293D驅(qū)動(dòng)芯片,它是一款雙橋驅(qū)動(dòng)芯片,可同時(shí)驅(qū)動(dòng)兩路直流電機(jī)或一路步進(jìn)電機(jī),輸出電流可達(dá)600 mA,峰值輸出電流可達(dá)1.2 A,內(nèi)部自帶ESD保護(hù),模塊工作電壓5 V,電機(jī)的驅(qū)動(dòng)電壓范圍為4.5~36 V,接線柱輸出,方便連接電機(jī)。小車(chē)通過(guò)開(kāi)發(fā)板輸出控制信號(hào)給L293D,由L293D驅(qū)動(dòng)左右兩個(gè)減速馬達(dá)正轉(zhuǎn)或反轉(zhuǎn)來(lái)實(shí)現(xiàn)小車(chē)的前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)的實(shí)時(shí)動(dòng)作。驅(qū)動(dòng)模塊原理如圖3所示。
圖3 驅(qū)動(dòng)模塊原理
設(shè)計(jì)中采用超聲波避障和紅外避障傳感器共同完成避障。采用前置超聲波探頭可以測(cè)0.2~5 m范圍內(nèi)是否存在障礙物,超聲波發(fā)射超聲波,如果遇到障礙物,超聲波反射回來(lái),發(fā)射波被超聲波回收裝置接收后會(huì)產(chǎn)生一個(gè)電信號(hào)然后被轉(zhuǎn)化為高、低電平信號(hào)反饋給單片機(jī),高電平則說(shuō)明遇到了障礙物,根據(jù)反饋信號(hào)自動(dòng)完成避障。超聲波發(fā)射器向某一方向發(fā)射超聲波,在發(fā)射時(shí)刻的同時(shí)開(kāi)始計(jì)時(shí),超聲波在空氣中傳播,途中碰到障礙物就立即返回來(lái),超聲波接收器收到反射波就立即停止計(jì)時(shí)。超聲波在空氣中的傳播速度為340 m/s,根據(jù)計(jì)時(shí)器記錄的時(shí)間t,就可以計(jì)算出發(fā)射點(diǎn)距障礙物的距離s,即:s=340t/2 。超聲波原理圖如圖4所示。
圖4 超聲波原理
紅外避障傳感器具有一對(duì)紅外信號(hào)發(fā)射與接收二極管,發(fā)射管發(fā)射一定頻率的紅外信號(hào),接收管接收這種頻率的紅外信號(hào),當(dāng)傳感器的檢測(cè)方向遇到障礙物時(shí),紅外信號(hào)反射回來(lái)被接收管接收,經(jīng)過(guò)運(yùn)算放大器的反向放大,信號(hào)輸出由默認(rèn)的高電平變?yōu)榈碗娖?。發(fā)光二極管產(chǎn)生了電壓差,所以信號(hào)指示燈亮,認(rèn)定前方有障礙,同時(shí)信號(hào)輸出給單片機(jī),單片機(jī)根據(jù)電平的變化控制電機(jī)工作實(shí)現(xiàn)避障。紅外接收原理圖如圖5所示。
圖5 紅外接收原理
此設(shè)計(jì)采用紅外循跡傳感器,當(dāng)檢測(cè)到障礙物時(shí),立即避開(kāi)行駛。黑線的檢測(cè)原理是紅外發(fā)射管發(fā)射光線到路面,紅外光遇到白底則被反射,接收管接收到反射光,經(jīng)施密特觸發(fā)器整形后輸出低電平;當(dāng)紅外光遇到黑線時(shí)則被吸收,接收管沒(méi)有接收到反射光,經(jīng)施密特觸發(fā)器整形后輸出高電平。產(chǎn)生的信號(hào)輸出給單片機(jī),單片機(jī)根據(jù)電平的變化控制電機(jī)工作實(shí)現(xiàn)避障。紅外避障與循跡反饋模塊原理如圖6所示。
圖6 紅外避障與循跡反饋模塊原理
此設(shè)計(jì)采用HC-06從機(jī)藍(lán)牙模塊,引出接口為VCC、GND、TXD、RXD、預(yù)留LED狀態(tài)輸出腳,單片機(jī)可以通過(guò)該腳判斷藍(lán)牙是否已經(jīng)連接,LED閃爍表示沒(méi)有藍(lán)牙連接,常亮表示藍(lán)牙已經(jīng)連接并打開(kāi)了端口。藍(lán)牙模塊TXD和RXD先不接,把小車(chē)端程序燒寫(xiě)進(jìn)開(kāi)發(fā)板后再接線,藍(lán)牙的TXD接開(kāi)發(fā)板P3.0,藍(lán)牙RXD接開(kāi)發(fā)板P3.1。通過(guò)手機(jī)的藍(lán)牙來(lái)控制小車(chē)的運(yùn)動(dòng),先在安卓手機(jī)上安裝藍(lán)牙APP,打開(kāi)藍(lán)牙功能且此時(shí)小車(chē)通電,搜索藍(lán)牙設(shè)備,小車(chē)上藍(lán)牙模塊的名稱為HC-06,選擇后進(jìn)行連接,連接成功后通過(guò)手機(jī)藍(lán)牙APP就可以控制小車(chē)。藍(lán)牙模塊原理如圖7所示,手機(jī)APP控制小車(chē)操作界面如圖8所示。
圖7 藍(lán)牙模塊原理
圖8 手機(jī)端操作界面
基于藍(lán)牙控制技術(shù)設(shè)計(jì)智能小車(chē)控制系統(tǒng),利用STC89C52芯片、電源模塊、驅(qū)動(dòng)模塊、避障模塊、循跡模塊、藍(lán)牙模塊,在裝有藍(lán)牙APP的安卓手機(jī)通過(guò)將控制命令發(fā)送給小車(chē)藍(lán)牙模塊,藍(lán)牙模塊把信號(hào)傳輸給單片機(jī)進(jìn)行處理,單片機(jī)根據(jù)傳遞過(guò)來(lái)的指令運(yùn)行不同的子程序,控制電機(jī)驅(qū)動(dòng),實(shí)現(xiàn)對(duì)小車(chē)前進(jìn)、后退、右轉(zhuǎn)、左轉(zhuǎn)、停止的實(shí)時(shí)控制。將手機(jī)變?yōu)檫b控器,為其他便利人們生活的智能設(shè)備的設(shè)計(jì)提供了參考。