東北師范大學(xué)人文學(xué)院理工學(xué)院汽車電子與服務(wù)工程系 梁龍凱 何文超 呂緒浩
基于STM32及物聯(lián)網(wǎng)的老年人追蹤定位系統(tǒng)設(shè)計(jì)
東北師范大學(xué)人文學(xué)院理工學(xué)院汽車電子與服務(wù)工程系 梁龍凱 何文超 呂緒浩
針對老年奧爾茨海默癥患者易走失的實(shí)現(xiàn)問題,基于STM32嵌入式系統(tǒng)及ONENET物聯(lián)網(wǎng)設(shè)計(jì)一套定位信息可在地圖上顯示的老年人定位追蹤系統(tǒng).該系統(tǒng)跟蹤端采用STM32嵌入式系統(tǒng)控制GSM芯片接入物聯(lián)網(wǎng)服務(wù)器并發(fā)送GPS定位數(shù)據(jù);接收端接收數(shù)據(jù)并在地圖上實(shí)時(shí)顯示GPS跟蹤端當(dāng)前位置;跟蹤端增設(shè)二維碼,可通過非接觸式掃描獲知攜帶者病史及家屬聯(lián)系方式,方便他人提供幫助.系統(tǒng)具有可視性好、針對性強(qiáng)、實(shí)用價(jià)值高等優(yōu)點(diǎn).
STM32;ONENET物聯(lián)網(wǎng);GPS;GSM
老年人離家走失、路邊暈倒事件已成為當(dāng)前社會熱點(diǎn)關(guān)注問題.失蹤事件的發(fā)生具有不可預(yù)測性,一旦走失搜尋范圍隨時(shí)間成指數(shù)倍增加,使搜尋難度增大.
本文設(shè)計(jì)一套針對老年人的定位追蹤及信息顯示系統(tǒng).其主要功能為:當(dāng)監(jiān)護(hù)人無法在視距范圍內(nèi)尋找到失蹤目標(biāo)時(shí),失蹤人員所攜帶的跟蹤設(shè)備因脫離監(jiān)護(hù)范圍而被啟動,自動發(fā)送定位信息;接收端顯示軟件實(shí)時(shí)顯示跟蹤設(shè)備的方位信息;針對老年人暈倒、迷路等特定情況,跟蹤設(shè)備可提供攜帶者的個(gè)人電子信息,如姓名、家庭住址、子女聯(lián)系方式、病史等,附近人員可通過手機(jī)掃描二維碼方式獲取信息并提供幫助.
目前市場上已有的定位設(shè)備多采用短信顯示經(jīng)緯度坐標(biāo)的方案,由于經(jīng)緯度信息不直觀,實(shí)用價(jià)值不高.本文設(shè)計(jì)系統(tǒng)引入物聯(lián)網(wǎng)及其手機(jī)應(yīng)用,在地圖上直觀表達(dá)地理信息;STM32嵌入系統(tǒng)可以有效管理跟蹤端GSM發(fā)送GPS信息,具有較高實(shí)用性.
系統(tǒng)采用嵌入式系統(tǒng)STM32、全球移動通信系統(tǒng)(Global System for Mobile Communication GSM)和全球定位系統(tǒng)(Global Positioning System GPS).總體框架如圖1所示,可實(shí)現(xiàn)老年人失蹤報(bào)警、定位及地圖實(shí)時(shí)顯示功能.
系統(tǒng)主要由三部分組成,跟蹤設(shè)備、接收設(shè)備和中國移動物聯(lián)網(wǎng)(ONENET).接收設(shè)備由監(jiān)護(hù)人員攜帶,在地圖上顯示GSM芯片發(fā)來的GPS定位信息,主要實(shí)現(xiàn)系統(tǒng)參數(shù)輸入、監(jiān)控跟蹤設(shè)備活動范圍、超范圍警報(bào)等功能;跟蹤設(shè)備端由老年人隨身攜帶,主要實(shí)現(xiàn)監(jiān)護(hù)范圍超越報(bào)警,發(fā)送定位信息,二維碼顯示等功能;物聯(lián)網(wǎng)主要實(shí)現(xiàn)定位信息的接收、解析、調(diào)用百度地圖API、方位顯示功能.
圖1 系統(tǒng)總體設(shè)計(jì)框圖
跟蹤端采用ST公司的STM32-F103ZET6型號芯片為核心控制器.該芯片為基于Cortex-M3內(nèi)核的32位微控制器,供電電壓在2.0~3.6V,最高工作頻率可達(dá)72MHz,帶有4個(gè)片選的靜態(tài)存儲器控制器,可支持CF卡、SRAM、PSRAM、NOR/NAND存儲器,3個(gè)12位模數(shù)轉(zhuǎn)換器(A/D),2通道12位數(shù)模轉(zhuǎn)換器(D/A),12通道DMA控制器,多達(dá)112個(gè)I/O端口,支持I2C、USART、SPI、CAN、USB等多種通信接口.
GPS+GSM芯片采用SIMCOM公司的SIM868模塊,支持短信、GPRS、DTMF、TTS、HTTP、FTP、彩信、GPS、藍(lán)牙等功能.工作頻段在850/900/1800/1900MHz,GPRS傳輸率上下行都為85.6kbps,高精度GPS,水平位置<2.5m CEP,工作電壓3.4~4.4V.
SIM868芯片在STM32-F103ZET6發(fā)來的AT指令控制下將GPS所接受到的衛(wèi)星定位信息通過通用分組無線服務(wù)技術(shù)(General Packet Radio Service GPRS)網(wǎng)絡(luò)發(fā)送出去.
圖2 1117穩(wěn)壓芯片原理圖
跟蹤端設(shè)備為方便攜帶,采用3.7V鋰電池作為供電電源.而STM32-F103ZET6芯片與SIM868模塊的工作電壓范圍不一致,需對電源進(jìn)行處理.
如圖2所示,采用LM1117-3.3穩(wěn)壓芯片將5V電壓轉(zhuǎn)換成3.3V為STM32-F103ZET6芯片供電.
結(jié)合實(shí)際應(yīng)用情況兩個(gè)電壓等級的電壓分配給不同的設(shè)備使用,保證系統(tǒng)的穩(wěn)定運(yùn)行.
串口通信可分為TTL標(biāo)準(zhǔn)和RS-232標(biāo)準(zhǔn).TTL標(biāo)準(zhǔn)2.4~5V表示二進(jìn)制邏輯1,而用0~0.5V表示邏輯0;RS-232標(biāo)準(zhǔn)為了遠(yuǎn)距離傳輸及增強(qiáng)抗干擾能力,用-3~-15V表示二進(jìn)制邏輯1,而用3~15V表示邏輯0.STM32芯片一般采用TTL電平標(biāo)準(zhǔn),本設(shè)計(jì)中采用MAX3232芯片對TTL及RS-232電平的信號進(jìn)行轉(zhuǎn)換.其原理圖如圖3所示
GPRS網(wǎng)絡(luò)方案:采用GPRS網(wǎng)絡(luò)傳送數(shù)據(jù)以取代短信可以增加信息傳輸量,已有的多數(shù)解決方案是創(chuàng)建服務(wù)器提供固定IP地址用以接收數(shù)據(jù),同時(shí)創(chuàng)建數(shù)據(jù)庫以保存數(shù)據(jù),監(jiān)護(hù)設(shè)備如果是移動上網(wǎng)設(shè)備,可隨時(shí)訪問固定IP地址的服務(wù)器,查詢數(shù)據(jù)庫來獲取跟蹤端發(fā)來的定位數(shù)據(jù).這種解決方案服務(wù)器的開發(fā)成本及運(yùn)行成本都比較高.
目前物聯(lián)網(wǎng)(Internet of Things IOT)平臺較多,本文選用ONENET作為物聯(lián)網(wǎng)接入平臺.ONENET是中國移動推出的物聯(lián)網(wǎng)開放平臺,提供全面完備的IOT云服務(wù).支持EDP、MQTT、HTTP、Modbus、JT/T808、TCP透傳六種網(wǎng)絡(luò)接入?yún)f(xié)議.并提供相應(yīng)的C語言版、Andriod版、Java版SDK.可創(chuàng)建觸發(fā)器、應(yīng)用及連接第三方開發(fā)平臺.
本文采用EDP協(xié)議及對應(yīng)的C語言版SDK,由STM32芯片控制SIM868通過GPRS方式接入物聯(lián)網(wǎng).
接入前需注冊O(shè)NENET用戶,創(chuàng)建設(shè)備、添加APIKEY.創(chuàng)建成功可獲得設(shè)備ID及APIKEY.這兩項(xiàng)是接入物聯(lián)網(wǎng)所必須的識別驗(yàn)證信息.
SIM868模塊發(fā)送短信、撥打電話、發(fā)送彩信、GPRS網(wǎng)絡(luò)鏈接等功能,是控制器通過串口發(fā)送AT指令實(shí)現(xiàn)的.STM32-F103ZET6芯片具備多個(gè)串口,ST公司為STM32提供的庫函數(shù)中有完整的可調(diào)用的串口庫函數(shù),輔助快速編程實(shí)現(xiàn)串口通信.
建立GPRS鏈接需要發(fā)送的AT指令步驟如下:
AT+CGCLASS="B" //設(shè)置移動臺類別為"B"
AT+CGDCONT=1,"IP","CMNET" // PDP上下 文標(biāo)識1,互聯(lián)網(wǎng)協(xié)議接入點(diǎn)名稱:CMNET
AT+CGATT=1 //附著 GPRS 網(wǎng)絡(luò)
AT+CIPCSGP=1,"CMNET" //設(shè)置為 GPRS 連接模式 ,接入點(diǎn)為CMNET
AT+CLPORT="TCP","2000" //獲取本地端口
AT+CIPMODE=1 //進(jìn)入透傳模式
AT+CIPSTART="TCP","183.230.40.39","876" //設(shè)置服務(wù)器IP和端口
上述AT指令中涉及到的IP地址"183.230.40.39"及端口號"876"是ONENET提供的EDP協(xié)議下的IP地址及端口號,若采用其他協(xié)議應(yīng)根據(jù)ONENET網(wǎng)站開發(fā)文檔做相應(yīng)修改.若AT+CIPSTART指令發(fā)出后,返回"OK","CONNECT"則說明連接成功,網(wǎng)絡(luò)已準(zhǔn)備好.
圖3 串口通信電平轉(zhuǎn)換電路原理圖
網(wǎng)絡(luò)準(zhǔn)備好后,調(diào)用SDK中的Connect_RequestType1()函數(shù),發(fā)送設(shè)備ID及APIKEY,請求物聯(lián)網(wǎng)設(shè)備的連接,若返回"0X20 0X02 0X00 0X00"說明連接設(shè)備成功.再調(diào)用PacketSavedataSimpleString()函數(shù),該函數(shù)的功能是以字符串形式輸入數(shù)據(jù),函數(shù)生成EDP協(xié)議格式的cJSON數(shù)據(jù)包.
實(shí)現(xiàn)ONENET物聯(lián)網(wǎng)上顯示地圖信息,需要上傳數(shù)據(jù)符合特定格式,開發(fā)文檔建議采用《設(shè)備終端接入?yún)f(xié)議-EDP》中TYPE1或TYPE3的方式上傳.本文采用TYPE1方式.具體發(fā)送字符格式為{"datastreams":[{"id":"location","datapoints":[{"value":{"lon":longi tude,"lat":latitude}}]}]}.其中l(wèi)ongitude是SIM868測得的經(jīng)度數(shù)據(jù),latitude是SIM868測得的緯度數(shù)據(jù).
數(shù)據(jù)接收:
控制SIM868模塊接收定位數(shù)據(jù)依然需要STM32通過串口發(fā)送AT指令完成,可以采用兩種命令語句獲得定位信息,第一種具體步驟如下:
AT+CGNSPWR=1 //打開GPS電源
AT+CGNSINF //接收GPS定位數(shù)據(jù)
返回+CGNSINF:<1>,<2>,<3>,<4>,<5>,<6>,<7>,
<8>,<9>,<10>,<11>,<12>,<13>,<14>,<15>,<16>,<17>,
<18>,<19>,
其中<1>表示GNSS運(yùn)行狀態(tài),值為1表示運(yùn)行,值為0表示未運(yùn)行;
<2>表示定位狀態(tài),值為1表示已經(jīng)定位,值為0表示尚未定位;
<3>表示UTC日期及時(shí)間;
<4>表示緯度;
<5>表示經(jīng)度.
若簡單應(yīng)用可只取前5個(gè)信息就能向物聯(lián)網(wǎng)平臺發(fā)送定位信息.
第二種具體步驟如下:
AT+CGNSPWR=1 //打開GPS電源
AT+CGNSTST=1 //接收NMEA-0183協(xié)議數(shù)據(jù)
返回為NMEA-0183協(xié)議數(shù)據(jù).
目前有多種二維碼生成工具,可指向文本、網(wǎng)址、名片、圖片、微信、程序等.本文應(yīng)用"草料二維碼"生成工具,生成一個(gè)指向文本的二維碼.文本內(nèi)容記錄攜帶者家屬聯(lián)系方式、病史、家庭住址等信息.如圖4所示:
圖4 二維碼生成器
采用單面膠紙打印,粘貼在跟蹤端固定位置,便于掃描.
本文設(shè)計(jì)了一套基于STM32及物聯(lián)網(wǎng)的老年人追蹤定位系統(tǒng),跟蹤端GSM芯片在STM32的控制下通過GPRS網(wǎng)絡(luò)發(fā)送GPS定位數(shù)據(jù)信息,并具備聲光報(bào)警及二維碼掃描功能;設(shè)備接入物聯(lián)網(wǎng),可存儲定位數(shù)據(jù),并在地圖上直觀顯示.綜合應(yīng)用新技術(shù)為老年人追蹤定位提供解決方案.
[1]毛亞青,張立,黃凱,等.基于Cortex-A9的車間生產(chǎn)過程跟蹤管控終端設(shè)計(jì)[J].電子技術(shù)應(yīng)用,2017,43(2):65-68.
[2]肖家問,茅勝榮,陳小平.低功耗遠(yuǎn)程煙霧報(bào)警系統(tǒng)設(shè)計(jì)[J].微型機(jī)與應(yīng)用,2017,36(2):96-99.
[3]譚欽紅,黃茂碟,張作運(yùn).基于Android的情報(bào)管理系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,2017,36(2):100-103.
[4]雷帆.基于GPRS網(wǎng)絡(luò)的智能閥門監(jiān)控系統(tǒng)[J].自動化與儀表,2015,30(5):29-31.
[5]百度地圖Android SDK概述[OL].http://developer.baidu.com/map/sdk-android.htm.
[6]陳強(qiáng).Android實(shí)例開發(fā)完全手冊[M].北京:人民郵電出版社,2012.
[7]王柯,張文詩,馬宏斌.基于Android平臺的移動GIS地圖服務(wù)模式研究[J].地理信息世界,2014,21(5):84-90.
吉林省教育廳"十二五"科學(xué)技術(shù)研究規(guī)劃項(xiàng)目(吉教科合字[2015] 第570號).
梁龍凱(1984-),男,碩士,助教,主要研究方向:檢測技術(shù)與自動控制.