王焮灝,程永強
(太原理工大學(xué) 信息工程學(xué)院,山西 太原 030024)
?
針對兒童安全及姿態(tài)的可穿戴設(shè)備設(shè)計
王焮灝,程永強
(太原理工大學(xué) 信息工程學(xué)院,山西 太原 030024)
針對兒童走失以及兒童坐姿不良這兩個問題,設(shè)計了一款基于STM32為控制核心的可穿戴設(shè)備。設(shè)計采用STM32作為主控芯片,采用SIM808模塊作為定位、無線網(wǎng)絡(luò)數(shù)據(jù)傳輸、一鍵求救短信發(fā)送模塊,將GPS定位數(shù)據(jù)通過GPRS網(wǎng)絡(luò)傳輸至Yeelink云平臺存儲,通過Yeelink云平臺手機或計算機客戶端追蹤查看歷史及實時運動軌跡。采用三軸數(shù)字加速度傳感器ADXL345和三軸陀螺儀傳感器ITG3205作為姿態(tài)數(shù)據(jù)采集芯片,利用四元數(shù)算法進行數(shù)據(jù)融合,得出精確的姿態(tài)俯仰角,通過2.4G模塊將姿態(tài)數(shù)據(jù)傳輸至主控模塊,用貼片電機進行姿態(tài)錯誤提醒。
兒童走失;可穿戴設(shè)備;STM32;SIM808;Yeelink云平臺;四元數(shù)算法
據(jù)不完全統(tǒng)計,中國每年失蹤兒童人數(shù)在20萬人左右,能找回來的大概只占0.1%。孩子在發(fā)育期間如果坐姿不正,很可能會導(dǎo)致眼睛近視、駝背、脊柱彎曲等諸多危害。因此,本文設(shè)計的具有兒童運動軌跡追蹤、緊急求救功能、姿態(tài)檢測及姿態(tài)錯誤提醒功能的兒童監(jiān)護系統(tǒng)對解決兒童走失及姿態(tài)不良問題具有非常重要的意義[1]。本系統(tǒng)體積小、功耗低,便于穿戴,可擴展,具有很高的實用性和很廣闊的市場前景。
系統(tǒng)主要是針對兒童的安全定位和兒童坐姿檢測設(shè)計的一套可穿戴設(shè)備[2]。安全定位方面,通過全球定位系統(tǒng)GPS(Global Positioning System)和基站定位LBS(Location Based Service)對兒童的實時位置進行定位,將定位得到的數(shù)據(jù)進行提取解析,通過通用分組無線業(yè)務(wù)GPRS(General Packet Radio Service)將數(shù)據(jù)的經(jīng)緯度、速度、海拔高度、速度數(shù)據(jù)傳輸至Yeelink云服務(wù)器存儲,用戶可以通過Yeelink云服務(wù)器手機客戶端和計算機Web端調(diào)取查看兒童運動軌跡,家長可以隨時隨地了解到孩子的位置信息。設(shè)備設(shè)有一鍵SOS呼救功能,當(dāng)兒童陷入危險狀況時,兒童可以長按3秒設(shè)備上的SOS求救按鍵,通過全球移動通信系統(tǒng)GSM(Global System for Mobile Communication)向親人發(fā)送求救短信,讓家人在第一時間提供幫助。
坐姿方面,采用三軸數(shù)字加速度計ADXL345和三軸陀螺儀傳感器ITG3205分別測出加速度和角速度值,使用四元數(shù)算法將兩組數(shù)據(jù)進行數(shù)據(jù)融合,去除噪聲,消除零漂,從而得出精確的坐姿俯仰角。使用2.4 GHz芯片NRF24L01將得到的精確姿態(tài)數(shù)據(jù)傳輸至主控模塊,主控模塊通過判斷坐姿是否錯誤,用PWM波形控制貼片電機轉(zhuǎn)動,當(dāng)姿態(tài)偏離越嚴重,PWM輸出波形的占空比增大,使得電機轉(zhuǎn)動越快,達到坐姿修正提醒的目的。在軟件方面應(yīng)用Keil uvision4軟件來完成程序的設(shè)計和編譯,使用C語言來完成程序編寫,使用ST-Link仿真器來完成仿真和程序下載,最終實現(xiàn)完整系統(tǒng)的設(shè)計。系統(tǒng)總體框圖如圖1所示。
圖1 系統(tǒng)總體設(shè)計框圖
系統(tǒng)硬件設(shè)計分為主控模塊設(shè)計和姿態(tài)模塊設(shè)計。設(shè)計在芯片選型以及電路設(shè)計上始終遵循合理、實用、低功耗、小體積的原則,使用Altium designer進行電路設(shè)計及PCB圖繪制。
主控模塊選用ST公司F4系列芯片STM32F405RGT6作為主控芯片[3],選用集成GPS的四頻GSM/GPRS模塊SIM808來實現(xiàn)系統(tǒng)的定位、SMS短消息發(fā)送以及GPRS無線網(wǎng)絡(luò)數(shù)據(jù)傳輸[4],選用0.96 in(1 in=2.54 cm)有機發(fā)光二極管OLED作為液晶顯示模塊[5],選用貼片電機來進行姿態(tài)錯誤提醒。系統(tǒng)采用3.7 V鋰電池供電,選用RT9193-33GB芯片作為電壓調(diào)整芯片。
2.2 姿態(tài)模塊設(shè)計
姿態(tài)模塊選用ST公司STM32F030F4P6芯片作為主控芯片,選用三軸數(shù)字加速度傳感器芯片ADXL345和三軸陀螺儀芯片ITG3205作為姿態(tài)數(shù)據(jù)采集芯片,選用2.4G芯片NRF24L01作為與主控模塊無線通信芯片。
2.3 Yeelink云平臺
Yeelink云平臺是個開放的通用物聯(lián)網(wǎng)平臺,主要提供數(shù)值型、圖像型及GPS型傳感器數(shù)據(jù)的接入、存儲以及展現(xiàn)服務(wù)。系統(tǒng)選用Yeelink云平臺不僅能實現(xiàn)對定位數(shù)據(jù)的云端保存,還能對歷史運動軌跡進行動態(tài)追蹤[6-7]。Yeelink云平臺支持手機和計算機客戶端。
系統(tǒng)的軟件設(shè)計采用模塊化設(shè)計應(yīng)用 Keil uvision4 軟件來完成程序的設(shè)計和編譯,使用C語言來完成編寫,用ST-Link仿真器來完成仿真和程序下載。系統(tǒng)軟件設(shè)計分為主控模塊軟件設(shè)計和姿態(tài)模塊軟件設(shè)計兩部分。主控模塊軟件主要完成GPS定位及數(shù)據(jù)解析任務(wù)、GPRS無線網(wǎng)絡(luò)傳輸任務(wù)、SMS短消息發(fā)送任務(wù)、OLED屏幕顯示任務(wù)、2.4G無線數(shù)據(jù)接收任務(wù)。姿態(tài)模塊軟件主要完成姿態(tài)原始數(shù)據(jù)采集、四元數(shù)算法數(shù)據(jù)融合以及2.4G無線數(shù)據(jù)發(fā)送。各任務(wù)之間通過FreeRTOS操作系統(tǒng)來進行多任務(wù)調(diào)度協(xié)調(diào)運行[8]。主控模塊軟件結(jié)構(gòu)如圖2所示,姿態(tài)模塊軟件結(jié)構(gòu)如圖3所示。
圖2 主控模塊軟件結(jié)構(gòu)圖
圖3 姿態(tài)模塊軟件結(jié)構(gòu)圖
3.1 GPS定位及數(shù)據(jù)解析
STM32通過串口USART3發(fā)送相關(guān)AT指令與GPS進行通信,通過串DUSART3(釆用中斷方式)接收GPS模塊的定位數(shù)據(jù)[9-10],接收到的定位數(shù)據(jù)中需要解析提取經(jīng)度、緯度、海拔高度、速度、日期和時間的數(shù)據(jù)。獲取的GPS原始數(shù)據(jù)格式為“+CGPSINF:
《湖北民族學(xué)院知識產(chǎn)權(quán)管理辦法》《湖北民族學(xué)院促進科技成果轉(zhuǎn)化試行辦法》《湖北民族學(xué)院橫向科研項目經(jīng)費管理實施細則(暫行)》《湖北民族學(xué)院橫向科研項目經(jīng)費代理記賬報銷細則(試行)》《湖北民族學(xué)院科研獎勵辦法》等規(guī)定、制度、管理辦法形成了學(xué)?,F(xiàn)行的專利管理制度體系。
3.2 GPRS無線數(shù)據(jù)傳輸
GPRS連接到網(wǎng)絡(luò)和數(shù)據(jù)的傳輸都是通過發(fā)送AT命令來實現(xiàn)的[11]。AT+CIPSTART命令用于建立TCP/UDP連接。建立TCP/UDP完整命令:
AT+CIPSTART="TCP","42.96. 164.52","80"
端口號為80,IP地址為42.96.164.52。上傳一組數(shù)據(jù)就是在Yeelink創(chuàng)建一個數(shù)據(jù)點datapoint,一個datapoint是由key和value組成的鍵值對,對URL為“http://api.Yeelink. net/v1.0/device/
3.3 四元數(shù)算法
本系統(tǒng)通過加速度計和陀螺儀兩個傳感器的結(jié)合對兒童姿態(tài)進行檢測。為了結(jié)合加速度計和陀螺儀的優(yōu)點,消除陀螺儀對角速度積分帶來的累積誤差,使得姿態(tài)檢測更加準確穩(wěn)定,系統(tǒng)使用四元數(shù)算法[12-13]將加速度計傳感器獲得的角度信息融合到陀螺儀中。四元數(shù)算法是一種單子樣算法,較適用于低速運載體的姿態(tài)解算,四元數(shù)算法具體實現(xiàn)步驟為:
1)初始化四元數(shù)。
2)獲取陀螺儀測得的角速度和加速度計獲取的加速度,將加速度計輸出的各軸加速度值進行歸一化。
3)由四元數(shù)計算得到余弦矩陣,該余弦矩陣第三列的元素實際上是當(dāng)前的歐拉角在機體坐標系上換算出來的重力單位向量,也就是陀螺儀積分后的姿態(tài)推算出的重力向量。
4)陀螺儀積分后的姿態(tài)推算出來的重力向量與加速度計測出來的重力向量進行向量叉積得到兩者的誤差。
5)對該誤差進行kp(比例增益)和ki(積分增益)后補償?shù)酵勇輧x的輸出值中,修正陀螺儀的零漂。
6)利用修正后的陀螺儀值更新四元數(shù)。
7)再將更新后的四元數(shù)歸一化處理。
8)通過四元數(shù)矩陣解算姿態(tài)角。
系統(tǒng)測試主要是對系統(tǒng)整體運行情況及主要功能測試為主。將主控模塊戴在手腕部位,姿態(tài)模塊掛在頸椎部位,系統(tǒng)上電,主控模塊成功讀取到了電池剩余電量及信號強度,校正了正確的GPS時間,與姿態(tài)模塊成功建立連接,并且接收到了姿態(tài)數(shù)據(jù)。改變坐姿,當(dāng)坐姿不良時,測得角度和正確坐姿下測得的角度相差大于15°,電機轉(zhuǎn)動,并且差值越大,電機轉(zhuǎn)動越快,震感越強,設(shè)備運行圖如圖4所示。穿戴好設(shè)備,環(huán)繞學(xué)校一周采集定位數(shù)據(jù)進行測試,通過Yeelink計算機客戶端查看到的運動軌跡追蹤圖如圖5所示。經(jīng)過系統(tǒng)整體測試和各個功能測試,系統(tǒng)整體運行正常,各個功能正常實現(xiàn),達到設(shè)計預(yù)期目的。
圖4 設(shè)備運行圖(照片)
圖5 運動軌跡追蹤圖(截圖)
系統(tǒng)誤差主要是GPS定位誤差和姿態(tài)模塊傳感器誤差。開啟GPS定位,通過Yeelink查看在同一個地方下多次定位位置偏移,結(jié)果顯示定位誤差大約為5 m。定位誤差是不可避免的,5 m之內(nèi)的定位精度滿足系統(tǒng)的要求。在靜止狀態(tài)下,將傳感器放置于桌面,獲取得到的姿態(tài)角度數(shù)據(jù)導(dǎo)入Excel表中進行分析,其中橫坐標代表采集次數(shù),縱坐標代表經(jīng)過加速度計和陀螺儀融合后的俯仰角數(shù)據(jù),結(jié)果如圖6所示。分析結(jié)果表明,經(jīng)過加速度計和陀螺儀融合后的輸出角度靜態(tài)誤差約0.2°,可以滿足頸部姿態(tài)測量的需求。
圖6 靜態(tài)俯仰角度值
本文描述了一個以STM32微控制器為控制核心,針對兒童安全防丟以及坐姿的可穿戴設(shè)備設(shè)計的實現(xiàn)。經(jīng)過長期測試,系統(tǒng)運行正常,各個功能能夠正常實現(xiàn)。本系統(tǒng)能夠讓家人對兒童進行全方位的安全監(jiān)護,能督促孩子時刻保持良好的坐姿,對兒童的健康成長起著很好的幫助作用。整個系統(tǒng)體積小、便于穿戴、功耗低、功能強、可擴展,不僅適合兒童,還適合老年人、寵物及物件的追蹤,具有很高的實用性和廣闊的市場前景。
[1]羅啟華,蔣雯.信息化時代下老年人可穿戴設(shè)備設(shè)計探究[J].電子制作,2015(18):18-19.
[2]李娟.基于通信網(wǎng)絡(luò)和GPS的兒童防走失系統(tǒng)的研究[J].信息通信,2015(1):74-75.
[3]劉軍,張洋.精通STM32F4(庫函數(shù)版)[M].北京:北京航空航天大學(xué)出版社,2015.
[4]郭堅.基于SIM908的無人機空氣質(zhì)量監(jiān)測系統(tǒng)設(shè)計與研究[D].天津:天津大學(xué),2013.
[5]趙展,魏雯.一種基于單片機的OLED驅(qū)動控制電路的設(shè)計[J].內(nèi)江科技.2013(5):62.
[6]杜一騰,遲宗濤.基于Arduino與yeelink平臺的實時環(huán)境監(jiān)測系統(tǒng)[J].單片機與嵌入式系統(tǒng)應(yīng)用,2014(10):27-28.
[7]余佳濱,陽泳,皺陸華,等.基于yeelink網(wǎng)絡(luò)平臺的智能農(nóng)業(yè)遠程控制[J].電子技術(shù)與軟件工程,2015(1):18.
[8]劉濱,王琦,劉麗麗.嵌入式操作系統(tǒng)FreeRTOS的原理與實現(xiàn)[J].單片機與嵌入式系統(tǒng)應(yīng)用,2005(7):8-11.
[9]張亮.基于GPS和GSM/GPRS的定位系統(tǒng)的設(shè)計與實現(xiàn)[D].北京:中國科學(xué)院計算技術(shù)研究所,2006.
[10]于鐵軍.基于ARM的GPS定位系統(tǒng)設(shè)計與實現(xiàn)[D].太原:中北大學(xué),2014.
[11]趙曉鳳,周璟瑜,王邦均,等.STM32控制下基于GPS與GPRS的軌跡跟蹤器[J].電子器件,2015(1):156-159.
[12]MADGWICK S O H. An efficient orientation Filter for inertial and inertial/ magnetic sensor arrays[EB/OL]. [2016-01-10]. http://forums.ni.com/ni/attachments/ni/170/825896/1/madgwick_internal_report.pdf.
[13]尹苗苗.捷聯(lián)慣性導(dǎo)航系統(tǒng)的姿態(tài)算法研究[D].上海:上海海事大學(xué),2007.
王焮灝(1992— ),碩士生,主研嵌入式系統(tǒng);
程永強(1969— ),博士,教授,碩士生導(dǎo)師,主要研究方向為圖像編碼處理及其嵌入式應(yīng)用。
責(zé)任編輯:薛 京
Wearable device designed for child safety and posture
WANG Xinhao,CHENG Yongqiang
(SchoolofInformationEngineering,TaiyuanUniversityofTechnology,Taiyuan030024,China)
A kind of wearable equipment which based on STM32 for solving the problem of children lost and their unhealthy posture is designed. The design chooses STM32 as the master chip, SIM808 as the module which is used for positioning, wireless data transmission and sending the SOS message with only one key. This module transfers GPS data to Yeelink cloud platform through GPRS network, tracks children’s track by Yeelink cloud server mobile client and Web client. In this design, three-axis digital acceleration sensor ADXL345 and three-axis gyroscope sensor ITG3205 are used to measure angular value and angular velocity value respectively, and quaternions algorithm is used to merge two groups of data. And then, the precise posture dump angle is obtained. Precise posture data is transmitted wirelessly to master control module by using 2.4G module NRF24L01.An SMD motor is used to remind the owner to correct posture.
children lost; wearable device; STM32; SIM808; Yeelink cloud platform; quaternions algorithm
王焮灝,程永強. 針對兒童安全及姿態(tài)的可穿戴設(shè)備設(shè)計[J]. 電視技術(shù),2016,40(11):35-38. WANG X H,CHENG Y Q. Wearable device designed for child safety and posture [J]. Video engineering,2016,40(11):35-38.
TN602
A
10.16280/j.videoe.2016.11.007
2016-02-29