,2
基于STM32的騎行GPS軌跡記錄與車燈控制系統(tǒng)的研制?
歐陽雙慶1王子赟1,2
(1.江南大學物聯(lián)網(wǎng)工程學院自動化系無錫214122)(2.江南大學輕工過程先進控制教育部重點實驗室無錫214122)
隨著騎行愛好的推廣,為滿足愛好者的要求,設(shè)計一款簡單易用的GPS軌跡記錄與車燈控制綜合系統(tǒng)。該系統(tǒng)以STM32F103C8為核心,設(shè)計成主從機的形式,主機部分由UBLOX-NEO6M的GPS芯片,以及車燈控制電路、TF卡讀寫電路、供電電路、NRF24L01無線通信模塊組成,實現(xiàn)GPS信號接收處理與導出,以及車燈控制的功能。從機部分同樣以STM32F103C8為核心,加上OLED顯示模塊、功能按鍵電路、NRF24L01無線通信模塊,可以進行功能模式設(shè)定。MCU使用卡爾曼濾波算法對GPS接收信號處理,提高系統(tǒng)精度。TF卡上數(shù)據(jù)導出到計算機上,由Google Earth進行繪圖。
STM32;GPS;卡爾曼濾波;軌跡記錄與導出
隨著嵌入式微處理器的推廣,現(xiàn)國內(nèi)已逐步涌現(xiàn)很多GPS定位的設(shè)備的方案。基于51的GPS定位儀已有較多方案,但都是簡單定位顯示,不適宜做騎行GPS設(shè)備[1]。也有車輛定位導航專用GPS,設(shè)計成為整套的GPS的實時安全平臺系統(tǒng)[2]。諸多關(guān)于GPS的平臺設(shè)計都是應(yīng)用單一的定位功能,綜合來看GPS內(nèi)更多資源并未使用。
本設(shè)計采用動態(tài)GPS定位結(jié)合卡爾曼濾波算法對動態(tài)GPS接收數(shù)據(jù)進行分析,提取位置和時間數(shù)據(jù),分析實時位置與速度信息,將位置數(shù)據(jù)導出到TF卡存儲,將實時的動態(tài)數(shù)據(jù)通過低功耗NRF2401發(fā)送給從機進行數(shù)顯。同時,使用時間為基準結(jié)合按鍵設(shè)置,采取時段控制車燈和手動車燈控制結(jié)合,設(shè)定閾值,讀取加速度計信號判定車行方向,在停車以及減速時將尾燈全亮,前行時只點亮部分車燈以節(jié)省能耗。從機設(shè)計為低功耗OLED屏與按鍵電路,方便用戶操便捷作。
2.1系統(tǒng)總體框圖
系統(tǒng)總體結(jié)構(gòu)如圖1所示,STM32F103C8作為控制核心,通過NRF2401進行無線通信,與從機交換由GPS讀取并解析出來相關(guān)數(shù)據(jù)信息,用OLED屏顯示出來。人機交互通過鍵盤、顯示屏完成,實現(xiàn)目標預(yù)設(shè),顯示運動參量功能。主機讀取加速度計運動判斷車輛行進,控制紅色車尾燈。

圖1 系統(tǒng)總體結(jié)構(gòu)圖
2.2GPS模塊選型
本設(shè)計在選取GPS模塊上也有較多考慮,首先接收信號必須穩(wěn)定,抗干擾能力盡可能好,捕獲時間短,接口簡單易用,還有控制功耗,與性價比因素都需要考慮。綜合評估,UBLOX-NEO6M的GPS芯片性能優(yōu)秀,市場占據(jù)廣,基本要求符合。模塊使用TTL電平,兼容3.3V/5V系統(tǒng),波特率默認為9600,自帶IPX,SMA接口,可以連接各種有源天線,自帶可充電后備電池,可以掉電保存星歷數(shù)據(jù),實現(xiàn)熱啟動,自帶EEPROM,保存配置信息。捕獲時間上,冷啟動為27s(最快),熱啟動僅1s。

圖2 UBLOX-NEO6M模塊
2.3通信模塊選型
考慮到設(shè)備需要使用內(nèi)置鋰電池供電,功耗限制要求,并且主從設(shè)備采用分置方式,作為相對獨立的部分。所以選擇一款近距離的超低功耗并且通信方式簡單的無線通信最為合適。NRF2401作為一款射頻IC(集成電路)芯片工作于2.4GHz全球開放ISM頻段125個頻道,滿足多點通信和跳頻通信需要,工作速率0Mb/s~1Mb/s,最大發(fā)射功率0dBm,外圍元件極少,內(nèi)置硬件CRC(循環(huán)冗余校驗)和點對多點通信地址控制,待機狀態(tài)下,電流僅22μA,掉電狀態(tài)下,電流900nA,非常可靠穩(wěn)定[3]。

圖3 NRF2401模塊
2.4TF卡存儲模塊
TF卡是一種全新的超小型大容量移動存儲卡。可以隨意將文件儲存在TF卡中;也可以通過SD卡適配器與電腦連接,從電腦中將文件拷在卡中,傳輸非常方便,隨時都能擴展收集的記憶容量[4~5]。TF卡采用的SPI接口,盡可能節(jié)省控制器IO口的使用,使用TF卡槽即可設(shè)計電路。
2.5顯示屏選型
針對系統(tǒng)的能耗問題,考慮到眾多屏幕顯示背光耗電嚴重,為了延長系統(tǒng)續(xù)航能力以及提升顯示效果,OLED屏幕具有較強的優(yōu)勢。相比于傳統(tǒng)的LCD顯示,有機電激發(fā)光二極管(Organic Light-Emitting Diode,UIV OLED)同時具備自發(fā)光,不需背光源、對比度高、厚度薄、視角廣、反應(yīng)速度快、使用溫度范圍廣、能夠在陽光下使用等優(yōu)異之特性。OLED屏價格上會比傳統(tǒng)LCD屏貴一些,但是使用壽命會延長,更適合作為本設(shè)計的屏幕。

圖4 TF卡連接電路

圖5 OLED顯示屏
2.6核心MCU選型
單片機選擇STM32F103C8,性價比高。具有多路PWM輸出通道,多個輸入捕獲通道。接口豐富IIC、SPI、USART等,完全滿足設(shè)計要求[6]。STM32F103C8最小系統(tǒng)如圖6所示。
2.7加速度計選型
普通加速度計足以滿足需求,選擇MPU6050合適,體積小,功耗低,使用方便,接口簡單,因此選擇MPU6050作為本設(shè)計加速度計。

圖7 MPU6050模塊
3.1主機主程序
主機主程序主要完成各個模塊的配置,主從機通信等功能,具體控制在中斷程序中,主程序框圖如圖8所示。

圖8 主機程序流程圖
主程序開始,首先是對單片機工作模式的設(shè)置,包括GPIO的輸入輸出方向、方式設(shè)定、定時器初值,無線通信模塊配置,加速度計配置等,用以完成復雜的工作。配置完成后開啟中斷,程序便開始正常工作。從中斷程序中讀取到的數(shù)據(jù)會被發(fā)送到從機上,發(fā)送程序放置于主程序是為了保證GPS信號讀取完成。
3.2主機中斷子程序
定時中斷程序主要完成GPS信號接收與加速度計信號采集以及車尾燈控制。具體功能框圖如圖9所示。

圖9 主機中斷子程序流程圖
在中斷服務(wù)子程序中,要對GPS信號進行分析,需要了解GPS的相關(guān)資料,UBLOX-NEO6M支持NMEA-0183協(xié)議,$GPRMC命令推薦定位信息是要讀取的關(guān)鍵信息。接受到位置信號經(jīng)處理后需要進行卡爾曼濾波處理,來提高定位精度,以便準確定位與計算運動參數(shù)。卡爾曼濾波算法作為一種利用線性系統(tǒng)狀態(tài)方程,對系統(tǒng)輸入輸出進行觀測數(shù)據(jù),對系統(tǒng)狀態(tài)進行最優(yōu)估計的自適應(yīng)算法[7]。由于觀測數(shù)據(jù)中包括系統(tǒng)中的噪聲和干擾的影響,所以最優(yōu)估計也可看作是濾波過程。由于該模塊屬自主定位,在協(xié)議命令中地面速度測算不準確,因此不使用該數(shù)據(jù)。然后執(zhí)行讀取加速度計數(shù)據(jù)進行處理,分析當前運動狀態(tài)與GPS讀取的時間信息,減速或長期停止時將車尾警示燈全開,反之控制部分車燈打開。
3.3從機主程序
從機程序主要是進行循環(huán)發(fā)送與接收數(shù)據(jù)信息,執(zhí)行的任務(wù)較主機輕松。在程序啟動后開始進行相應(yīng)的顯示屏初始化、中斷定時器初始設(shè)置,以及NRF2401通信模塊配置。此后與主機間進行循環(huán)通信。
3.4從機中斷子程序
從機的中斷服務(wù)子程序時間上更為頻繁,保持對OLED顯示屏的持續(xù)刷新,保證屏幕顯示穩(wěn)定。程序執(zhí)行時,先進行按鍵掃描,根據(jù)選擇對設(shè)置進行修改,然后執(zhí)行屏幕刷新操作,中斷結(jié)束。

圖10 從機中斷子程序流程圖
騎行GPS系統(tǒng)綜合了眾多低功耗設(shè)備方案,結(jié)合時下熱門的ARM-Cortex M處理器,與GPS導航定位系統(tǒng),卡爾曼濾波運算,而提出一套易實現(xiàn)的能滿足騎行用戶需求的低功耗,低成本的方案。總體上,本設(shè)計具有無線通信,GPS導航通信,屏幕顯示與車燈控制的基本功能。使用上,該系統(tǒng)設(shè)計實現(xiàn)了定位,時間,運動信息實時顯示,導出定位信息到TF卡便于對接計算機使用Google Earth進行軌跡測繪,車尾燈的智能控制。其中,低成本、低功耗、方便易用正是本文設(shè)計騎行GPS軌跡記錄與車燈控制系統(tǒng)的目的所在。
[1]白書華.基于一種單片機的GPS定位控制系統(tǒng)的設(shè)計與分析[J].電子測試,2016(9):24-26.
BAI Shuhua.Design and analysis of GPS positioning con?trol system based on single chip microcomputer[J].Elec?tronic Test,2016(9):24-26.
[2]許軍廠.車輛GPS實時安全監(jiān)控平臺的建立與應(yīng)用[J].商情,2013(18):239.
XU Junchang.Establishment and Application of Vehicle GPS Real-time Security Monitoring Platform[J].Business Information,2013(18):239.
[3]陳麗娟,常丹華.基于nRF2401芯片的無線數(shù)據(jù)通信[J].電子器件,2006,29(1):248-250.
CHEN Lijuan,CHANG Danhua.Wireless Data Communi?cation Based on nRF2401 Chip[J].Chinese Journal of Electron Device,2006,29(1):248-250.
[4]陳海生.基于STM32的TransFlash卡讀寫技術(shù)研究[D].哈爾濱:哈爾濱工業(yè)大學,2009.CHEN Haisheng.Research on Transflash Card Reading and Writing Technology Based on STM32[D].Harbin:Harbin Institue of Technology,2009.
[5]左源,劉新寧,師超,等.一種SD卡控制器的硬件實現(xiàn)[J].電子器件,2007,30(2):643-645,650.
ZOU Yuan,LIU Xinning,SHI Chao,et al.Hardware Im?plementation of SD Card Controller[J].Electronic Devic?es,2007,30(2):643-645,650.
[6]蔡昌盛,羅小敏,朱建軍,等.一種改進的GPS/GLONASS組合精密單點定位算法在露天礦區(qū)測量中的應(yīng)用[J].中國有色金屬學報(英文版),2014,24(5):1547-1553.
CAI Changsheng,LUO Xiangming,ZHU Jianjun,et al. AnImprovedGPS/GLONASSCombinationPrecision Point Positioning Algorithm for Opencast Mining[J]. Transactions of Nonferrous Metals Society of China(Eng?lish Edition),2014,24(5):1547-1553.
[7]姜洋,張和芬,汪精華,等.GPS+BDS組合的實時定軌技術(shù)[J].南京航空航天大學學報,2015,47(6):842-847. JIANG Yang,ZHANG Hefen,WANG Jinghua.Realtime Orbit Determination of GPS+BDS Combination[J]. Journal of Nanjing University of Aeronautics&Astronau?tics,2015,47(6):842-847.
[8]孫書鷹,陳志佳,寇超,等.新一代嵌入式微處理器STM32F103開發(fā)與應(yīng)用[J].微計算機應(yīng)用,2010,31(12):59-63.
SUN Yingchao,CHEN Zhijia,KOU Chao,et al.Develop?ment and Application of a New Generation of Embedded Microprocessor STM32F103[J].Microcomputer Applica?tions,2010,31(12):59-63.
[9]房澤平.基于雙MCU和nRF2401的無線傳感器網(wǎng)絡(luò)系統(tǒng)[J].自動化儀表,2009,30(8):25-27.
FANG Zeping.A Wireless Sensor Network System Based on Dual MCU and nRF2401[J].自動化儀表,2009,30(8):25-27.
[10]HTE Shambaky,MR Kaloop.Study of the variance ratio effect to improve conventional Kalman filter applications in vehicle navigation system[J].Ksce Journal of Civil Engineering,2016:1-10.
Research and Design of Riding GPS Track Record and Headlight Control System Based on STM32
OUYANG Shuangqing1WANG Ziyun1,2
(1.Department of Automation,School of IOT Engineering,Jiangnan University,Wuxi214122)(2.Key Laboratory of Advanced Process Control for Lighe Indusery Ministry of Education,Jiangnan University,Wuxi214122)
With the promotion of riding hobbies,a simple GPS track record and headlight integrated control system is de?signed,in order to meet the requirements of riding enthusiasts.This system takes the STM32F103C8 as the core,designed as the master-slave form.The host part is composed of UBLOX-NEO6M GPS chip,headlight control circuit,TF card read and write cir?cuit,power supply circuit and NRF24L01 wireless communication module,to processing GPS signal and export,and control head?light.As for slave part the core also use STM32F103C8,together with the OLED display module,function key circuit,NRF24L01 wireless communication module,and function mode can be set.MCU uses Kalman filter algorithm for GPS receiver signal process?ing to improve system accuracy.TF card data can be exported to the computer for drawing by Google Earth.
STM32,GPS,Kalman filter,track recording and export
TP391
10.3969/j.issn.1672-9730.2017.05.021
1 引言
2016年11月13日,
2016年12月20日
國家863項目(編號:2014AA041505);國家自然科學基金(編號:61572238);江南大學自主科研基金(編號:JUSRP115A30);江蘇高校品牌專業(yè)建設(shè)工程項目(編號:PPZY2015A036)資助。
歐陽雙慶,男,研究方向:單片機系統(tǒng)控制、算法分析。王子赟,男,博士,講師,研究方向:傳感器技術(shù)、電力變換技術(shù)。高,而低檔次的產(chǎn)品不能滿足愛好者的基本需求,定位漂移較大,信號易丟失,功能單一等問題比較突出。這些問題不利于推進騎行設(shè)備智能化,目前在國內(nèi)這一塊騎行設(shè)備智能產(chǎn)品還可以有很大提升。
Class NumberTP391
近年來科技飛速發(fā)展,越來越多的智能化設(shè)備涌入人們的生活之中,從身邊掀起了一股智能化的風潮。在國家低碳環(huán)保的相關(guān)政策推動下,越來越多的人們選擇使用自行車出行,節(jié)能環(huán)保還能鍛煉身體,于是騎行族開始逐步壯大起來。而GPS的使用現(xiàn)在已經(jīng)非常普及,大到航空航海系統(tǒng),小到個人移動設(shè)備,都有著它的身影。隨著GPS的民用化與成本的降低,已經(jīng)走入了人們的日常生活中,很多手機、PDA等手持設(shè)備都配備GPS功能。當前市場也出現(xiàn)了一些GPS的定軌儀器,但是普遍價位