李雅紅 魏卿 張文浩
摘要:老人出行安全越來(lái)越受到人們的重視,所以為了老人出行的安全考慮,本課題研究了一款智能鞋,可以實(shí)時(shí)定位老人的位置信息。項(xiàng)目是將一個(gè)定位系統(tǒng)集成在老人鞋后跟底部分,通過(guò)定位系統(tǒng)與服務(wù)器端交互,實(shí)時(shí)傳輸老人出行信息,實(shí)現(xiàn)移動(dòng)客戶端對(duì)老人出行進(jìn)行跟蹤和監(jiān)護(hù)。本文對(duì)系統(tǒng)的功能設(shè)計(jì)、系統(tǒng)結(jié)構(gòu)設(shè)計(jì)、技術(shù)路線與關(guān)鍵問題進(jìn)行了深入的研究。在功能設(shè)計(jì)方面,對(duì)如何感知老人定位信息,老人出行數(shù)據(jù)的傳輸、處理以及實(shí)時(shí)定位顯示、電子圍欄報(bào)警的功能進(jìn)行了設(shè)計(jì);在結(jié)構(gòu)設(shè)計(jì)方面,構(gòu)建了老人出行信息采集、數(shù)據(jù)傳輸、數(shù)據(jù)處理和服務(wù)器交互以及實(shí)時(shí)定位、智能圍欄,形成了完整的系統(tǒng)開發(fā)結(jié)構(gòu)。
關(guān)鍵詞:智能老人鞋:實(shí)時(shí)定位:智能圍欄
0引言
近年來(lái),面對(duì)生活中老人走失狀況的時(shí)常發(fā)生,人們更加注重老年人行蹤?,F(xiàn)在的常規(guī)方案是讓老年人攜帶通信工具來(lái)獲取老人的行蹤。比較普遍的是手機(jī),但是年邁的老年人會(huì)經(jīng)常忘記帶手機(jī)或者無(wú)法有效使用時(shí)下的先進(jìn)智能手機(jī),因而難以達(dá)到監(jiān)護(hù)老年人的目的。
對(duì)于老年人來(lái)說(shuō),鞋子是出門必備品,將定位系統(tǒng)安插鞋底部分,通過(guò)ARM采集GPS定位信息,將獲得的GPS定位信息通過(guò)SIM模塊發(fā)送到遠(yuǎn)程服務(wù)器。遠(yuǎn)程服務(wù)器對(duì)采集到的數(shù)據(jù)進(jìn)行解析,并將解析后的數(shù)據(jù)傳遞給PC端和Android端進(jìn)行展示。
項(xiàng)目開發(fā)基于Android平臺(tái),使用GPs定位系統(tǒng)。通過(guò)智能鞋鞋子中GPs模塊采集老人出行信息,利用SIM中TCP通信模塊將定位信息發(fā)送給服務(wù)端,服務(wù)端對(duì)出行信息提供設(shè)計(jì)處理。而后再基于移動(dòng)互聯(lián)網(wǎng)絡(luò),將處理后的出行信息發(fā)送到手機(jī)移動(dòng)客戶端,從而實(shí)現(xiàn)移動(dòng)客戶端對(duì)老人出行的全程智能跟蹤與監(jiān)護(hù)。
1系統(tǒng)分析與總體設(shè)計(jì)
系統(tǒng)基于GPS和SIM模塊,具體可將老人出行信息通過(guò)GPS定位,并利用SIM模塊傳送到Web服務(wù)器上,而后則基于Socket通信技術(shù)再將定位信息重點(diǎn)存儲(chǔ)到數(shù)據(jù)庫(kù)中。系統(tǒng)Web服務(wù)器采用PHP技術(shù)訪問數(shù)據(jù)庫(kù)表中定位信息,經(jīng)過(guò)數(shù)據(jù)處理后,采用JsON格式以XML文件傳給手機(jī)端。
1.1系統(tǒng)結(jié)構(gòu)
通過(guò)老人鞋子底部的GPS和SIM芯片模塊,將老人定位信息的數(shù)據(jù)傳輸和數(shù)據(jù)的交互,利用手機(jī)移動(dòng)端研發(fā)掌控老人出行的跟蹤與監(jiān)護(hù),從而基于移動(dòng)端真正實(shí)現(xiàn)隨時(shí)隨地對(duì)老人的實(shí)時(shí)監(jiān)護(hù)。系統(tǒng)結(jié)構(gòu)如圖1所示。
該定位系統(tǒng)由控制端Arm9、數(shù)據(jù)采集端GBLOX GPS和數(shù)據(jù)傳輸端SIM900集結(jié)構(gòu)成,GPS通過(guò)衛(wèi)星采集當(dāng)前地理信息并將采集的數(shù)據(jù)發(fā)送到控制端,控制端接收數(shù)據(jù)后,會(huì)對(duì)數(shù)據(jù)進(jìn)行編碼,然后將數(shù)據(jù)發(fā)送給數(shù)據(jù)傳輸端,數(shù)據(jù)傳輸端將數(shù)據(jù)通過(guò)GPRS網(wǎng)絡(luò)發(fā)送給遠(yuǎn)程服務(wù)器。遠(yuǎn)程服務(wù)器對(duì)采集到的數(shù)據(jù)引入邏輯解析后,再將數(shù)據(jù)保存在數(shù)據(jù)庫(kù)中,供網(wǎng)絡(luò)地圖終端的調(diào)取使用。Android程序運(yùn)行時(shí),將會(huì)去請(qǐng)求遠(yuǎn)程服務(wù)器獲取當(dāng)前綁定設(shè)備的定位信息,遠(yuǎn)程服務(wù)器會(huì)將數(shù)據(jù)從數(shù)據(jù)庫(kù)中讀取出來(lái),轉(zhuǎn)發(fā)給Android端。
1.2系統(tǒng)功能模塊
系統(tǒng)功能主要分為5個(gè)模塊,系統(tǒng)功能結(jié)構(gòu)如圖2所示。這里,將針對(duì)每一部分給出功能設(shè)計(jì)論述。
1)GPS定位。定位模塊主要以一定的頻率不斷自動(dòng)接收鞋子的位置信息。系統(tǒng)采用ARM9作為控制端,系統(tǒng)上電后,首先初始化軟硬件環(huán)境,配置串口寄存器,檢測(cè)外部模塊是否正常工作,如果一切正常,會(huì)向GPRS模塊發(fā)送開始采集的指令。GPRS采集到定位信息后,即會(huì)將采集到的數(shù)據(jù)回顯給串口,此時(shí)將會(huì)觸發(fā)串口中斷,控制端調(diào)用中斷服務(wù)子程序,將采集到的數(shù)據(jù)進(jìn)行處理,用MINl2440開發(fā)板的串口發(fā)送GPS指令來(lái)協(xié)同定位信息的獲取與解析。
2)對(duì)定位信息的遠(yuǎn)程發(fā)送。MINl2440開發(fā)板通過(guò)串口與SIM模塊進(jìn)行通信,向SIM模塊發(fā)送AT指令集獲取SIM卡的IEMI,通過(guò)使用SIM模塊的TCP通信將獲得的GPS定位信息和IEMI按照事先規(guī)定的格式以數(shù)據(jù)包的形式發(fā)送給遠(yuǎn)程服務(wù)器。
3)服務(wù)器交互。服務(wù)器利用PHP技術(shù)和MySQL數(shù)據(jù)庫(kù)相連進(jìn)行數(shù)據(jù)存儲(chǔ)。服務(wù)器每隔一定時(shí)間即自動(dòng)獲取GPS采集設(shè)備的信息,將解析的數(shù)據(jù)存在指定數(shù)據(jù)表里。XML或JSON文件的解析和創(chuàng)建服務(wù)器端對(duì)得到的經(jīng)緯度研發(fā)設(shè)定JSON形式的文件封裝生成相應(yīng)的文件,發(fā)送給手機(jī)客戶端(Android),在Android端對(duì)服務(wù)器發(fā)來(lái)的JSON或XML格式的文件進(jìn)行解析,獲取服務(wù)器傳來(lái)的經(jīng)緯度顯示當(dāng)?shù)匚恢谩?/p>
4)實(shí)時(shí)定位。在Android端主要使用了一個(gè)瀏覽器控件來(lái)顯示定位地圖。通過(guò)運(yùn)用Baidu地圖配置提供的API來(lái)進(jìn)行移動(dòng)端的開發(fā)。通過(guò)已知的經(jīng)緯度信息,使用BMAP給出的定位方法,獲得經(jīng)緯度的地理編址和地圖的定位顯示。
5)智能圍欄。通過(guò)MAP地圖來(lái)規(guī)劃尋找路線,在手機(jī)上精準(zhǔn)顯示老人的位置并且利用手機(jī)的導(dǎo)航功能,以老人的地點(diǎn)為目的地,自動(dòng)選擇最快捷的方式以找到老人。同時(shí)支持在湖泊、銀行設(shè)置警戒區(qū)防止老人受到不必要的人身傷害和財(cái)產(chǎn)的侵害。
1.3系統(tǒng)主要解決問題
系統(tǒng)開發(fā)主要解決3部分問題,包括GPS信號(hào)的接收發(fā)送、服務(wù)器與采集端、手機(jī)端通信、手機(jī)移動(dòng)端顯示。具體內(nèi)容如下。
1)GPS信號(hào)處理。用MINl2440開發(fā)板的串口發(fā)送GPS指令來(lái)進(jìn)行定位信息的獲取與解析。MINl2440開發(fā)板通過(guò)串口與SIM模塊直接通信,并向SIM模塊發(fā)送AT指令集獲取SIM卡的IEMI,通過(guò)使用SIM模塊的TCP通信將獲得的GPS定位信息和IEMI按照事先規(guī)定的格式以數(shù)據(jù)包的形式發(fā)送給遠(yuǎn)程服務(wù)器。
2)服務(wù)器與采集端、手機(jī)端通信。服務(wù)器利用PHP技術(shù)和MySQL數(shù)據(jù)庫(kù)相連進(jìn)行數(shù)據(jù)存儲(chǔ)。服務(wù)器每隔一定時(shí)間來(lái)獲取GPS采集設(shè)備的信息,將解析的數(shù)據(jù)存在相應(yīng)的數(shù)據(jù)表里,以備日后查詢。XML或JSON文件的解析和創(chuàng)建服務(wù)器端對(duì)得到的經(jīng)緯度定義選取JSON形式的文件封裝生成相應(yīng)的文件,并發(fā)送給手機(jī)客戶端(Android),在Android端對(duì)服務(wù)器發(fā)來(lái)的JSON或XML格式的文件進(jìn)行解析,獲取服務(wù)器傳來(lái)的經(jīng)緯度,進(jìn)而顯示當(dāng)時(shí)位置。
3)手機(jī)移動(dòng)端顯示處理。在Android端的界面重點(diǎn)使用了一個(gè)WebView用來(lái)顯示定位地圖。在Java文件中主要運(yùn)用了Baidu地圖內(nèi)設(shè)提供的API來(lái)進(jìn)行移動(dòng)端的開發(fā)。使用LocationManager和location實(shí)現(xiàn)基本的定位功能。使用Handler類實(shí)現(xiàn)消息的傳遞,以及LatLng()實(shí)現(xiàn)地圖的定位,在此過(guò)程中還一并運(yùn)用了線程的知識(shí)以及ISON解析數(shù)據(jù)。通過(guò)一個(gè)已知的經(jīng)緯度信息,同時(shí)結(jié)合BMAP提供的方法Geocoder中的getLocaton來(lái)設(shè)計(jì)形成基于經(jīng)緯度的地理編址和地圖的定位顯示。以老人的地點(diǎn)為目的地,可以自動(dòng)選擇最快捷的方式以找到老人。
2通信功能設(shè)計(jì)與實(shí)現(xiàn)
GPS定位信息通過(guò)SIM模塊發(fā)送到服務(wù)器,服務(wù)器則接收、處理、存儲(chǔ)到數(shù)據(jù)表中,服務(wù)端PHP應(yīng)用程序通過(guò)訪問數(shù)據(jù)庫(kù)表,進(jìn)行處理實(shí)現(xiàn)與手機(jī)端數(shù)據(jù)通信。因此通信模塊的的研究設(shè)計(jì)將具有至關(guān)重要的地位與作用。