基于Arduino的遠程定位生理參數監測系統設計
編者按:基于Arduino平臺采用提供高精度三維位置的MXTOS2-200模塊,設計了一種體積小巧的遠程定位生理參數監測儀。利用獨特的過采樣技術和低功耗的傳感模塊,結合Arduino開源環境對人體脈搏、呼吸頻率、行走狀況(跌倒)等生理狀態參數的實時采集測量,與正常生理參數范圍做比較,進行預警動作。實驗表明,該監測儀可以對生理參數進行實時采集,得到精確的測量數據進行生理判斷;Arduino平臺提供GSM、GPS以及常用生理參數傳感器的庫函數可大大降低設計難度;系統具有設計簡單、低功耗、低成本的優點。
3 軟件設計
本文引用地址:http://www.104case.com/article/256090.htm主程序設計基于Arduino IDE的開發平臺完成。由于Arduino平臺提供了GPS和GSM開發的庫函數,大大降低了系統設計的難度。其流程如下:首先,完成初始化(中斷、LCD、ADXL345、串口、GSM/GPS等初始化)后,啟動GPS/GSM模塊,進入串口中斷等待;接著,查詢串口是否有數據。當查詢到串口中有數據傳來時,就開始判斷數據是否符合預先設定協議,如果符合微控制器跳轉到生理參數測量模塊之中讀取行走狀態、脈搏、呼吸頻率等相關數據,并進行相應數據處理和顯示。處理完之后返回數據到主程序,對采集的數據進行相應的處理。最后,將處理完的數據與預先設定的閥值進行比較,如果未超出閥值則通過GSM返回正常標志數據,否則,轉入到GPS子程序(MXTOS2-200)之中,判斷校驗數據是否正確,若正確則進行數據包的解析,獲取當時人的準確位置;若不正確則繼續等待校驗直到獲取準確位置。接著,執行GSM發送指令,發出經緯度時間等信息到上位機,同時發出警報尋求救援;如果在閥值以內則返回繼續監聽串口數據,循環上述過程。主程序流程圖如圖4所示。
3.1 MXTOS2-200
MXTOS2-200支持以$GPGGA、$GPGSV、$GPGSA為主的16通信協議,通過相關協議設置可以獲取UTC時間、經緯度、GPS狀態、正在使用的衛星數量、HDOP水平精度因子、海拔高度、差分時間及ID等等。本系統采用$GPGGA協議,通過串口數據來判斷和校驗,經校驗后,接收數據(本系統主要提取時間、經緯度、有效性)并進行處理,最后保存返回數據給主程序。MXTOS2-200子程序流程圖如圖5所示。
評論