馬丹萍, 李 勇, 梁勤歐
(1.浙江師范大學(xué)地理與環(huán)境科學(xué)學(xué)院,浙江金華 321004;2.桂林電子科技大學(xué)電子工程與自動化學(xué)院,廣西桂林 541000)
無線遙控智能小車的運(yùn)動模擬及軌跡繪制*
馬丹萍1, 李 勇2, 梁勤歐1
(1.浙江師范大學(xué)地理與環(huán)境科學(xué)學(xué)院,浙江金華 321004;2.桂林電子科技大學(xué)電子工程與自動化學(xué)院,廣西桂林 541000)
為實現(xiàn)智能小車的全方位控制,以Atmega16A單片機(jī)為系統(tǒng)控制核心、安卓智能手機(jī)為遙控平臺、HC-06為車載藍(lán)牙模塊,設(shè)計了一款智能小車.利用LabVIEW制作人機(jī)交互界面,通過無線方式采集小車的運(yùn)動狀態(tài)數(shù)據(jù)來判斷小車的速度和方向.根據(jù)小車的狀態(tài)數(shù)據(jù),在人機(jī)交互界面中模擬小車的運(yùn)動.結(jié)果表明:該系統(tǒng)能監(jiān)測小車的運(yùn)動狀態(tài),實現(xiàn)運(yùn)動模擬及軌跡繪制,可為后期地質(zhì)災(zāi)害監(jiān)測應(yīng)用的研究奠定基礎(chǔ).
地質(zhì)災(zāi)害監(jiān)測;Atmega16;Android;藍(lán)牙;LabVIEW;運(yùn)動模擬;智能小車
無線遙控將是未來遙控領(lǐng)域的發(fā)展趨勢.市場上智能車的遙控器看似多種多樣,實際多為紅外遙控和無線電遙控.其中紅外遙控不能穿透障礙物,必須是直視距離;而無線電遙控容易干擾周圍電氣設(shè)備或被周圍所干擾.鑒于藍(lán)牙具有設(shè)備體積小、功耗低、通過調(diào)頻技術(shù)可消除其他無線設(shè)備的干擾建立臨時性的對等連接速度快等優(yōu)點(diǎn)[1],開發(fā)用于智能車遙控的APK(Android Package),可以使遙控器的使用更加方便可靠.
對物體進(jìn)行運(yùn)動狀態(tài)的模擬及運(yùn)動軌跡的繪制在地理信息系統(tǒng)(Geographical Information Systerm,GIS)中有重要應(yīng)用.盡管現(xiàn)今的遙感技術(shù)能做到對泥石流、山體滑坡等地質(zhì)災(zāi)害的實時監(jiān)測,但是得到的遙感圖像會伴隨海量數(shù)據(jù)的分析.并且遙感技術(shù)的軟硬件設(shè)施要求相對較高[2],不利于廣大民眾實時了解地質(zhì)災(zāi)害的狀況.通過傳感器測量運(yùn)動狀態(tài)的數(shù)據(jù),憑借藍(lán)牙無線傳遞給PC機(jī)終端,模擬出運(yùn)動物體的運(yùn)動狀態(tài),實現(xiàn)共享監(jiān)測數(shù)據(jù).對于泥石流、山體滑坡、洪水淹沒等地質(zhì)災(zāi)害的監(jiān)測,減少人員的傷亡和財產(chǎn)的損失等方面都有積極的作用.此外,通過藍(lán)牙無線傳遞的數(shù)據(jù),可加快GIS數(shù)據(jù)庫的建立.
智能小車系統(tǒng)以Atmega16A單片機(jī)為處理核心[3],通過藍(lán)牙進(jìn)行了無線遙控小車的前進(jìn)、加速、減速等運(yùn)動.通過LabVIEW無線采集小車的速度,建立數(shù)學(xué)模型,在人機(jī)交互界面中模擬小車的運(yùn)動,系統(tǒng)的整體框圖如圖1所示.

圖1 系統(tǒng)整體框圖
1)藍(lán)牙通信模塊采用HC-06,其有4個引腳,即:VCC,GND,TXD和RXD,輸出端為TTL電平,將外界的藍(lán)牙通信轉(zhuǎn)換為單片機(jī)的串口通信;顯示模塊采用LCD1602,第1行顯示小車速度,第2行顯示前方障礙物距離.超聲波測距模塊采用HC-SR04,其有4個引腳,即:VCC,TRIG,ECHO和GND,單片機(jī)PB7口接HC-SR04的控制使能端TRIG,PD6口連接ECHO端.由于ECHO高電平持續(xù)時間就是超聲波從發(fā)送到返回的時間,則測量距離公式表示為

式(1)中:S表示測量距離;聲速為340 m/s.
電機(jī)驅(qū)動芯片采用L298N,產(chǎn)生PWM的PD7口同時接入L298N的ENA和ENB口;PD2,PD3, PD4和 PD5分別接 L298N的 IN1,IN2,IN3和IN4,控制小車加速、減速、前進(jìn)、左拐等動作.
2)測速電路.當(dāng)碼盤透光孔通過時,電壓比較器 LM393A的1引腳會輸出高電平;否則LM393A的1引腳輸出低電平.電路圖如圖2所示.通過檢測LM393A的1引腳高電平出現(xiàn)的次數(shù)實現(xiàn)對小車速度的測量,系統(tǒng)使用的測速碼盤一圈共包括20條透光孔.

圖2 測速電路
軟件設(shè)計包括ICCAVR編程,Android編程和LabVIEW編程.
總體程序結(jié)構(gòu)如圖3所示.

圖3 總體程序結(jié)構(gòu)
3.1 ICCAVR編程
Atmega16A單片機(jī)的程序流程圖如圖4所示.

圖4 Atmega16A單片機(jī)程序流程
3.2 Android編程
遙控器界面設(shè)計.在Android編程中,Activity表示一個應(yīng)用程序的組件,代表用來和用戶交互的界面[4].在布局文件中添加所需的前進(jìn)、倒車、加速、減速等按鈕,整體布局如圖5所示.然后通過5個編程步驟實現(xiàn)Android藍(lán)牙的通信:1)開啟藍(lán)牙;2)搜索可用設(shè)備;3)創(chuàng)建藍(lán)牙socket,獲取輸入輸出流;4)讀取和寫入設(shè)備;5)斷開連接關(guān)閉藍(lán)牙[5].最后將布局文件中的控件通過調(diào)用findViewById()方法實現(xiàn)實例化.對按鈕添加監(jiān)聽,當(dāng)發(fā)生按鍵事件時發(fā)送相應(yīng)的控制信號,實現(xiàn)對小車運(yùn)動的控制.

圖5 遙控器界面布局

圖6 運(yùn)動模擬及軌跡繪制程序結(jié)構(gòu)
3.3 LabVIEW編程
3.3.1 LabVIEW程序中的線程
LabVIEW是自動多線程語言,只要VI的代碼可以并行執(zhí)行,LabVIEW就會將它們分配到多個執(zhí)行線程內(nèi)同時執(zhí)行[6].所以,在編程時那些可以并行運(yùn)行的模塊就并排擺放.運(yùn)動模擬及軌跡繪制程序結(jié)構(gòu)框圖如圖6所示.
3.3.2 運(yùn)動模擬的數(shù)學(xué)模型
采用二維圖標(biāo)的運(yùn)動表示實物的運(yùn)動,用二維圖中繪制的直線表示軌跡,建立相關(guān)的數(shù)學(xué)模型.設(shè)置750×1 000的二維圖片,圖片原點(diǎn)坐標(biāo)在左上頂角.小車的圖標(biāo)為50×30的圓角矩形.設(shè)小車圖標(biāo)在圖片中的中心點(diǎn)坐標(biāo)為(X0,Y0),則小車圖標(biāo)垂直放置時,在圖片中的任一位置可以表示成(L,R,T,B),其中L表示水平坐標(biāo)左邊界,R表示水平坐標(biāo)右邊界,T表示垂直坐標(biāo)頂邊界,B表示垂直坐標(biāo)底部邊界.在圖片中小車圖標(biāo)有4種運(yùn)動方向:垂直向上、垂直向下、水平向左和水平向右,如圖7所示.

圖7 運(yùn)動模擬數(shù)學(xué)模型
3.3.3 運(yùn)動模擬相關(guān)算法
設(shè)(500,750)為模擬運(yùn)動起始坐標(biāo).垂直方向上的圖標(biāo)運(yùn)動可以表示為

同理,水平方向上圖標(biāo)的運(yùn)動可以表示為

式(2)~式(3)中:v表示與實際小車運(yùn)動速度成比例的模擬運(yùn)動速度;t為時間;vt的單位是像素.
在二維圖片中繪制直線,模擬小車的運(yùn)動軌跡,直線起點(diǎn)坐標(biāo)為小車圖標(biāo)在某一位置時的中心點(diǎn)坐標(biāo),即(X0,Y0),設(shè)終點(diǎn)坐標(biāo)為(Xt,Yt).當(dāng)在垂直方向運(yùn)動時終點(diǎn)坐標(biāo)可以用下式表示

當(dāng)沿水平方向運(yùn)動時終點(diǎn)坐標(biāo)可以用下式表示:

將模擬運(yùn)動的4個狀態(tài)連接起來實現(xiàn)對實際小車的運(yùn)動模擬,連接的節(jié)點(diǎn)為小車在改變運(yùn)動狀態(tài)時小車圖標(biāo)中心點(diǎn)的坐標(biāo)值(X0,Y0).綜上,連續(xù)運(yùn)動的小車在LabVIEW人機(jī)交互界面中能夠?qū)崿F(xiàn)小車運(yùn)動模擬和路徑的繪制,效果如圖8所示.

圖8 小車運(yùn)動狀態(tài)的模擬
3.3.4 數(shù)據(jù)存儲
數(shù)據(jù)庫采用Microsoft Access系統(tǒng),由于Lab-VIEW本身并不具備數(shù)據(jù)庫訪問功能,因此用到LabSQL工具包.LabSQL利用Microsoft ADO對象和SQL語言來完成對數(shù)據(jù)庫的訪問[6],將復(fù)雜的底層ADO及SQL操作封裝成一系列的LabSQL VIs.圖8所對應(yīng)的部分?jǐn)?shù)據(jù)存儲信息見表1.

表1 數(shù)據(jù)存儲
本文介紹了無線遙控智能小車的運(yùn)動模擬及軌跡繪制的軟、硬件設(shè)計,實現(xiàn)了對智能小車全方位立體控制.在PC機(jī)模擬階段,小車各個運(yùn)動狀態(tài)間任意轉(zhuǎn)換的同時,伴隨著相關(guān)數(shù)據(jù)的傳遞.在軟件編程階段,通過數(shù)學(xué)模型確立模擬運(yùn)動的算法,保證模擬運(yùn)動的連貫性.
位移監(jiān)測是山體滑坡和泥石流等地質(zhì)災(zāi)害的常規(guī)監(jiān)測技術(shù)之一[7].本系統(tǒng)PC機(jī)端模擬的是運(yùn)動小車的軌跡,然而,在未來研究中可以將智能小車轉(zhuǎn)換為運(yùn)動傳感器,以實現(xiàn)山體滑坡和泥石流災(zāi)害的動態(tài)監(jiān)測.其實際應(yīng)用表現(xiàn)在:將運(yùn)動傳感器固定在易發(fā)生泥石流或山體滑坡的危險地帶,以無線方式傳遞運(yùn)動傳感器滾動速度和方向的相關(guān)數(shù)據(jù),在終端,系統(tǒng)模擬泥石流等地質(zhì)災(zāi)害的動態(tài),結(jié)合GIS系統(tǒng)可以實時快速監(jiān)測災(zāi)害狀況[8].同時,憑借藍(lán)牙技術(shù)可實現(xiàn)監(jiān)測數(shù)據(jù)的共享,方便周邊民眾對災(zāi)害狀況的了解.GIS技術(shù)和無線藍(lán)牙通訊的結(jié)合,對地質(zhì)災(zāi)害的監(jiān)測有深遠(yuǎn)積極的影響.
[1]嚴(yán)紫建,劉元安.藍(lán)牙技術(shù)[M].北京:北京郵電大學(xué)出版社,2001:1-5.
[2]張占睦,芮杰.遙感技術(shù)基礎(chǔ)[M].北京:科學(xué)出版社,2007:5-12;74-76.
[3]周興華.AVR單片機(jī)C語言高級編程設(shè)計[M].北京:中國電力出版社,2011.
[4]王小科,冠長梅.Android入門經(jīng)典[M].北京:機(jī)械工業(yè)出版社,2013:158-174.
[5]薛顯亮.Android SDK[M].北京:中國鐵道出版社,2012:205-216.
[6]雷振山,肖成勇.LabVIEW高級編程與虛擬器工程應(yīng)用[M].北京:中國鐵道出版社,2013:61-69;101-110.
[7]仝興華,薛世峰,單新建.山體滑坡和泥石流災(zāi)害動態(tài)監(jiān)測技術(shù)研究[J].油氣儲運(yùn),2006,25(10):7-10.
[8]Longley P A,Goodchild M F,Maguire D J,et al.地理信息系統(tǒng):下卷管理與應(yīng)用[M].唐中實,賈海峰,辛宇,等,譯.北京:電子工業(yè)出版社,2004:383-390.
(責(zé)任編輯 杜利民)
Motion simulation and trajectory drawing of the intelligent vehicle with wireless remote control
MA Danping1, LI Yong2, LIANG Qin'ou1
(1.College of Geography and Environment Sciences,Zhejiang Normal University,Jinhua Zhejiang 321004,China;2.College of Electronic Engineering and Automation,Guilin University of Electronic Technology,Guilin Guangxi541000,China)
An intelligent vehicle was designed with Atmega16A single chip as the control core,with Android smart mobile phone as the remote control platform,using HC-06 as the Bluetooth module.A human-computer interaction interface was made by LabVIEW,collected the intelligent vehicle's movement state data to judge the speed and direction of its motion by wireless way.According to the state data of the vehicle,it was simulated the motion of the vehicle in the human-computer interaction interface.The experimental results showed that the system could monitor the motion state of the vehicle,realized the motion simulation and trajectory mapping,and laid a foundation for the later research of geological disastermonitoring application.
geological disaster monitoring;Atmega16;Android;Bluetooth;LabVIEW;motion simulation; intelligent vehicle
TP29
A
1001-5051(2015)01-0116-05
?:2014-06-20;
2014-09-17
國家自然科學(xué)基金資助項目(70773089)
馬丹萍(1990-),女,河南義馬人,碩士研究生.研究方向:地理信息系統(tǒng)與遙感應(yīng)用.
梁勤歐.E-mail:qoliang@sina.com
10.16218/j.issn.1001-5051.2015.01.019