基于A(yíng)rduino的遠程定位生理參數監測系統設計
3 軟件設計
本文引用地址:http://dyxdggzs.com/article/256090.htm主程序設計基于Arduino IDE的開(kāi)發(fā)平臺完成。由于Arduino平臺提供了GPS和GSM開(kāi)發(fā)的庫函數,大大降低了系統設計的難度。其流程如下:首先,完成初始化(中斷、LCD、ADXL345、串口、GSM/GPS等初始化)后,啟動(dòng)GPS/GSM模塊,進(jìn)入串口中斷等待;接著(zhù),查詢(xún)串口是否有數據。當查詢(xún)到串口中有數據傳來(lái)時(shí),就開(kāi)始判斷數據是否符合預先設定協(xié)議,如果符合微控制器跳轉到生理參數測量模塊之中讀取行走狀態(tài)、脈搏、呼吸頻率等相關(guān)數據,并進(jìn)行相應數據處理和顯示。處理完之后返回數據到主程序,對采集的數據進(jìn)行相應的處理。最后,將處理完的數據與預先設定的閥值進(jìn)行比較,如果未超出閥值則通過(guò)GSM返回正常標志數據,否則,轉入到GPS子程序(MXTOS2-200)之中,判斷校驗數據是否正確,若正確則進(jìn)行數據包的解析,獲取當時(shí)人的準確位置;若不正確則繼續等待校驗直到獲取準確位置。接著(zhù),執行GSM發(fā)送指令,發(fā)出經(jīng)緯度時(shí)間等信息到上位機,同時(shí)發(fā)出警報尋求救援;如果在閥值以?xún)葎t返回繼續監聽(tīng)串口數據,循環(huán)上述過(guò)程。主程序流程圖如圖4所示。
3.1 MXTOS2-200
MXTOS2-200支持以$GPGGA、$GPGSV、$GPGSA為主的16通信協(xié)議,通過(guò)相關(guān)協(xié)議設置可以獲取UTC時(shí)間、經(jīng)緯度、GPS狀態(tài)、正在使用的衛星數量、HDOP水平精度因子、海拔高度、差分時(shí)間及ID等等。本系統采用$GPGGA協(xié)議,通過(guò)串口數據來(lái)判斷和校驗,經(jīng)校驗后,接收數據(本系統主要提取時(shí)間、經(jīng)緯度、有效性)并進(jìn)行處理,最后保存返回數據給主程序。MXTOS2-200子程序流程圖如圖5所示。
評論