相關(guān)鏈接: 中國安全網(wǎng) 中國質(zhì)量網(wǎng) 中國論文網(wǎng) 中國資訊網(wǎng)
肖曉蘭,黃海峰,劉利河,陳世光,陳城茂,賴國賓
(廣東工業(yè)大學(xué),廣東 廣州 510006)
摘要:設(shè)計(jì)了一種可自動(dòng)避障并且可以自動(dòng)跟隨主人行走的小車。該小車通過藍(lán)牙與安裝APP的安卓手機(jī)連接,當(dāng)APP軟件獲得手機(jī)的電子磁羅盤方位信息后,通過藍(lán)牙將信息發(fā)送出去。小車藍(lán)牙接收到手機(jī)方位信息再與自身攜帶的電子磁羅盤方位信息比較,經(jīng)過算法處理,控制小車的轉(zhuǎn)向角度和行走速度,從而實(shí)現(xiàn)小車跟隨手機(jī)移動(dòng)的功能。
關(guān)鍵詞:自動(dòng)跟隨小車;安卓APP軟件控制;藍(lán)牙 中圖分類號:TP273 文獻(xiàn)標(biāo)識碼:A
0 引言
目前已經(jīng)有很多關(guān)于智能跟蹤的產(chǎn)品,但是這些產(chǎn)品都還不成熟,它們大多是使用簡單的傳感器,不能跟隨特定的人,如Five Elements Robotics推出的Budgee機(jī)器人,是一款專門針對老年人和殘疾人的輕量級助力機(jī)器人,其最高速度為3.9 km/h左右,如果主人的行進(jìn)速度太快,它就會(huì)用消息推送的方式提醒主人慢一些;CaddyTrek推出的電動(dòng)高爾夫輪式機(jī)器人已經(jīng)能夠取代部分勞動(dòng)力,可帶著打球裝備跟隨運(yùn)動(dòng)員走,但它們身上需要佩帶特定的超音波發(fā)射器,易發(fā)出噪聲、易被外界干擾、且價(jià)格昂貴,針對此,本文設(shè)計(jì)的小車只需要手機(jī)即可進(jìn)行控制,僅需一次連接,無需后續(xù)操作便可讓小車一直跟隨著車主,當(dāng)人多路雜時(shí),車主還可以遙控小車前進(jìn)。
1跟隨原理和實(shí)現(xiàn)方式
小車以STM32F103為主控芯片,應(yīng)用到電子羅盤、藍(lán)牙模塊、超聲波測距傳感器、直流電機(jī)、舵機(jī)和LCD顯示屏等外設(shè)上。
1.1 主控芯片
STM32F103ZEV6芯片是以Cortex-M3為內(nèi)核,其最高工作主頻可達(dá)72 MHz,內(nèi)置高速存儲(chǔ)器(高達(dá)512 k B的閃存和64 k B的SRAM),采用哈佛結(jié)構(gòu),2.0 V~3.6 V供電電壓,具有豐富的外設(shè),2通道12位D/A轉(zhuǎn)換器,12通道DMA控制器,多達(dá)11個(gè)定時(shí)器,支持IIC、USART、SPI、CAN、USB等通訊協(xié)議。
1.2跟隨原理
當(dāng)安卓手機(jī)與小車建立連接之后,APP會(huì)自動(dòng)調(diào)用手機(jī)自身硬件電子磁羅盤的驅(qū)動(dòng)程序,獲得當(dāng)前手機(jī)的方位信息,然后通過藍(lán)牙將手機(jī)的方位信息發(fā)送出去。當(dāng)小車上的藍(lán)牙串口接收到手機(jī)的方位信息后,與小車自身的電子磁羅盤測得的方位信息作比較(求差),再通過PID調(diào)節(jié)器處理,控制舵機(jī)轉(zhuǎn)向從而控制小車轉(zhuǎn)向的角度。手機(jī)不斷地發(fā)送方位信息過來,小車不斷地接收并處理后,通過調(diào)節(jié)器控制舵機(jī)及時(shí)調(diào)整自身的轉(zhuǎn)向,并不斷逼近車主的方位。小車的轉(zhuǎn)向由舵機(jī)控制,小車的動(dòng)力由一個(gè)直流減速電機(jī)驅(qū)動(dòng),驅(qū)動(dòng)電機(jī)通過處理器的數(shù)字化處理實(shí)現(xiàn)PWM調(diào)速。小車上配置一個(gè)320×240液晶屏終端,以顯示小車當(dāng)前的各種狀態(tài)?刂圃斫Y(jié)構(gòu)框圖如圖1所示。
2 小車主要結(jié)構(gòu)模塊設(shè)計(jì)
2.1 電源模塊
小車的電源電路如圖2所示。電源采用7.4 V鋰電池,具有容量大、可反復(fù)多次充電的優(yōu)點(diǎn),并且放電電流相對較大,可以滿足小車驅(qū)動(dòng)電機(jī)所需要的2A放電電流。由于小車主控芯片的供電電壓和直流電機(jī)額定電壓不一致,故該小車設(shè)計(jì)應(yīng)用了兩組電源:一組經(jīng)過穩(wěn)壓濾波電路后輸出3.3 V的電壓,給主控芯片STM32F103ZEV6供電,采用的穩(wěn)壓芯片為LM1117- 3.3;另一組電壓也是由電池穩(wěn)壓后引出,但卻采用了 兩個(gè)LM7805穩(wěn)壓芯片并聯(lián)的方式穩(wěn)壓,因?yàn)閱蝹(gè)穩(wěn)壓芯片承受不了電機(jī)啟動(dòng)時(shí)流過的大電流,這會(huì)導(dǎo)致穩(wěn)壓芯片嚴(yán)重發(fā)熱,甚至燒毀。采用兩片穩(wěn)壓芯片并聯(lián)的連接方式,各自承擔(dān)一半的電流,避免了芯片的過度發(fā)熱。
2.2 電機(jī)驅(qū)動(dòng)模塊
BTN7971B是應(yīng)用于電機(jī)驅(qū)動(dòng)的大電流、半橋高集成芯片,它帶有一個(gè)P溝道的高邊MOSFET、一個(gè)N溝道的低邊MOSFET和一個(gè)驅(qū)動(dòng)IC。P溝道高邊開關(guān)省去了電荷泵的需求,因而減小了EMI(電磁干擾)。BTN7971B集成的驅(qū)動(dòng)IC具有邏輯電平輸入、電流診斷、斜率調(diào)節(jié)、死區(qū)時(shí)間產(chǎn)生和過溫、過壓、欠壓、過流及短路保護(hù)的功能。通態(tài)電阻典型值為16 mΩ,驅(qū)動(dòng)電流可達(dá)43 A。采用兩片BTN7971B構(gòu)成一個(gè)全橋驅(qū)動(dòng),驅(qū)動(dòng)電路如圖3所示。
小車采用MG995舵機(jī)來控制轉(zhuǎn)向。舵機(jī)(Ser-vo)是由直流電機(jī)、減速齒輪組、傳感器和控制電路組成的一套自動(dòng)控制系統(tǒng),通過發(fā)送信號,指定輸出軸旋轉(zhuǎn)角度。舵機(jī)一般而言都有最大旋轉(zhuǎn)角度(如1800),它與普通直流電機(jī)的區(qū)別主要在于直流電機(jī)是一圈圈轉(zhuǎn)動(dòng)的,而舵機(jī)只能在一定角度內(nèi)轉(zhuǎn)動(dòng),不能一圈圈地轉(zhuǎn)(數(shù)字舵機(jī)可以在舵機(jī)模式和電機(jī)模式中切換)。普通直流電機(jī)無法反饋轉(zhuǎn)動(dòng)的角度信息,而舵機(jī)可以,舵機(jī)的伺服系統(tǒng)由可變寬度的脈沖來控制,控制線用來傳送脈沖,脈沖的參數(shù)主要有最小值、最大值和頻率。一般而言,舵機(jī)基準(zhǔn)信號的周期都是20 ms,小車基準(zhǔn)信號定義的位置為中間位置,中間位置就是從定義位置到最大角度與最小角度的量完全一樣。不同舵機(jī)的最大轉(zhuǎn)動(dòng)角度可能不相同,但舵機(jī)中間位置的脈沖寬度是一定的,即1.5 ms。來自控制線的持續(xù)的脈沖產(chǎn)生轉(zhuǎn)動(dòng)角度,這種控制方法叫做脈沖調(diào)制,脈沖的長短決定舵機(jī)轉(zhuǎn)動(dòng)多大角度。當(dāng)控制系統(tǒng)發(fā)出指令時(shí),使舵機(jī)移動(dòng)到某一位置,并讓它保持這個(gè)角度,這時(shí)外力的影響不會(huì)使角度產(chǎn)生變化。當(dāng)舵機(jī)接收到一個(gè)小于1.5 ms的脈沖時(shí),輸出軸會(huì)以中間位置為標(biāo)準(zhǔn),逆時(shí)針旋轉(zhuǎn)一定角度;當(dāng)舵機(jī)接收到的脈沖大于1.5 ms,則順時(shí)針旋轉(zhuǎn)一定角度。不同品牌,甚至同一品牌的不同舵機(jī)都會(huì)有不同的脈沖最大值和最小值,一般而言,最小脈沖為1 ms,最大脈沖為2 ms。舵機(jī)的工作原理如圖4所示。
舵機(jī)驅(qū)動(dòng)芯片采用LN298N.L298N是一種雙H橋電機(jī)驅(qū)動(dòng)芯片,其中每個(gè)H橋可以提供2A的電流,功率部分的供電電壓范圍為2.5 V~48 V,邏輯部分為5 V供電,接收5 V TTL電平。一般情況下,功率部分的電壓應(yīng)大于6 V,否則芯片可能不能正常工作。舵機(jī)驅(qū)動(dòng)電路如圖5所示。
2.3 藍(lán)牙串口電路模塊
該模塊電路采用Max232作為電平轉(zhuǎn)換芯片,與藍(lán)牙串口連接,實(shí)現(xiàn)手機(jī)和小車的藍(lán)牙通訊。Max232芯片內(nèi)部含有一個(gè)電源電壓變換器,可以將輸入的+5V電源電壓變換成RS-232C所需的+10 V電壓。模塊芯片提供兩組接收器和驅(qū)動(dòng)器,而小車藍(lán)牙串口只需用其中的一組即可。藍(lán)牙串口電平轉(zhuǎn)換電路的工作原理如圖6所示。
2.4 電子磁羅盤模塊
電子磁羅盤,又稱3軸數(shù)字羅盤HMC5883L,是一種表面貼裝的高集成模塊,并帶有數(shù)字接口的弱磁傳感器芯片,應(yīng)用于低成本羅盤和磁場檢測領(lǐng)域。HMC5883L包括最先進(jìn)的高分辨率HMC118X系列磁阻傳感器,并附帶霍尼韋爾專利的集成電路,包括放大器、自動(dòng)消磁驅(qū)動(dòng)器、偏差校準(zhǔn)、能使羅盤精度控制在10~20的12位模數(shù)轉(zhuǎn)換器、簡易的I2C系列總線接口。
HMC5883L采用無鉛表面封裝技術(shù),帶有16引腳,尺寸為3.0 mm×3.0 mm×0.9 mm。其所應(yīng)用領(lǐng)域有手機(jī)、筆記本電腦、消費(fèi)類電子、汽車導(dǎo)航系統(tǒng)和個(gè)人導(dǎo)航系統(tǒng),可通過IIC數(shù)字接口通信,帶置位/復(fù)位償。電子磁羅盤電路圖如圖7所示。
2.5 安卓APP算法模塊
采用C語言編寫小車主程序代碼,通過AndroicSDK完成APP開發(fā)。安卓APP算法如圖8所示。采用MDK4. 6+Jlink V8仿真器作為軟件調(diào)試工具,硬件測試工具有萬用表、示波器等。小車在機(jī)主拿著手機(jī)正常步行的情況下,可以實(shí)現(xiàn)自動(dòng)跟隨的功能。小車通過一塊320×240液晶顯示當(dāng)前的狀態(tài)、方位等信息。
3結(jié)語
本文介紹了一種基于STM32控制的自動(dòng)跟隨小車的硬件電路和核心控制算法。小車可以連接主流安卓系統(tǒng),當(dāng)系統(tǒng)與手機(jī)匹配成功后,人帶著手機(jī)走到哪里,小車就會(huì)跟到哪里。該小車可以改裝成行李箱、超市的購物車以及老人的備忘箱,人們可以更加輕松愉快地享受保姆式跟隨小車帶來的許多樂趣。該自動(dòng)跟隨小車使用方便簡捷、成本低廉,有極大的應(yīng)用前景。