徐 斌,裴曉芳,2,3,李太云
(1.南京信息工程大學 電子與信息工程學院,江蘇 南京 210044;2.江蘇省氣象探測與信息處理重點實驗室,江蘇 南京 210044;3.南京信息工程大學 大氣環(huán)境與裝備技術(shù)協(xié)同創(chuàng)新中心,江蘇 南京 210044)
?
穿戴式智能計步器設(shè)計
徐斌1,裴曉芳1,2,3,李太云1
(1.南京信息工程大學 電子與信息工程學院,江蘇 南京210044;2.江蘇省氣象探測與信息處理重點實驗室,江蘇 南京210044;3.南京信息工程大學 大氣環(huán)境與裝備技術(shù)協(xié)同創(chuàng)新中心,江蘇 南京210044)
摘要文中基于高精度三軸加速度/角速度傳感器MPU6050的計步器設(shè)計,采用MSP430F149單片機為主控制器、MPU6050為核心采集模塊,通過采集人體姿態(tài)數(shù)據(jù),經(jīng)由算法識別判斷人體運動行為,并結(jié)合安卓智能手機客戶端進行運動實時監(jiān)測。使用者可實時掌握步行數(shù)據(jù)以及卡路里消耗;采集模塊與主控電路經(jīng)藍牙模塊發(fā)送運動數(shù)據(jù)到安卓手機客戶端;該設(shè)計同時還具有仰臥起坐陪練功能供選擇。經(jīng)PCB開發(fā)研制和功能調(diào)試,結(jié)果表明該設(shè)計具有多功能,易攜帶,功耗低,且運行穩(wěn)定等特點。
關(guān)鍵詞計步器;仰臥起坐陪練器;MSP430F149;MPU6050;卡路里消耗
Design of Wearable Smart Pedometer
XU Bin1,PEI Xiaofang1,2,3,LI Taiyun1
(1.School of Electronic and Information Engineering,Nanjing University of Information Science and Technology,Nanjing 210044,China;2.Jiangsu Key Laboratory of Meteorological Observation and Information Processing,Nanjing 210044,China;3.Jiangsu Collaborative Innovation Center of Atmospheric Environment and Equipment Technology,
Nanjing University of Information Science and Technology,Nanjing 210044,China)
AbstractThis paper discusses the design of Pedometer based on high-precision triaxial accelerometer/angular velocity sensor MPU6050.With MSP430F149 MCU as master controller and MPU6050 as core acquisition module,the exerciser can real-time grasp performance and calories burned.The Bluetooth module is used to transmit data between MSP430 and acquisition module.The Sit-UP Partner function has been added to the system for exercisers.The test shows that the design is feasible and easy to carry.
Keywordspedometer;sit-up partner;MSP430F149;MPU6050;calories burned
隨著人們生活水平的提高和對健康情況的重視,步行作為一種最常見且有效的鍛煉方式被廣泛使用。計步器作為一種常用的鍛煉設(shè)備也有了飛速的發(fā)展。從最開始的2D機械計步器,然后發(fā)展到以加速度傳感器為核心的電子計步器,到現(xiàn)在更為集成化的智能手環(huán),計步器的精度大幅提高,體積大幅縮小,用戶體驗也逐漸優(yōu)化[1-3]。
本文旨在在前人設(shè)計經(jīng)驗的基礎(chǔ)上開發(fā)一套精度較高且便攜的智能計步器系統(tǒng)。同時采用Android智能手機作為計步器系統(tǒng)上位機,提升用戶體驗。用戶可通過Android智能手機實時獲得運動信息。特別地,系統(tǒng)融入了仰臥起坐陪練器功能,實現(xiàn)了系統(tǒng)功能多樣化,充分利用了軟硬件資源[4-5]。
1系統(tǒng)總體設(shè)計
1.1系統(tǒng)工作原理
本智能陪練器融合了仰臥起坐陪練和計步兩種功能,由下位機和安卓智能手機組成。下位機主要包括單片機最小系統(tǒng)、加速度傳感器、藍牙模塊和鋰電池供電模塊。在下位機端,MCU上電后系統(tǒng)處于功能選擇模式,默認為計步器模式。功能切換是利用上位機進行的,上位機通過藍牙模塊發(fā)送功能切換指令,由下位機的藍牙模塊接收指令,通過單片機識別指令,進行功能切換[6-8]。
下位機工作時,首先用加速度傳感器進行數(shù)據(jù)采集,然后在MCU中進行數(shù)據(jù)處理。MCU首先對采集數(shù)據(jù)進行濾波,然后根據(jù)不同的鍛煉功能采用相應(yīng)的運動姿態(tài)識別算法。單片機根據(jù)算法進行數(shù)據(jù)計算,獲得實時的運動效果數(shù)據(jù)。最后由藍牙模塊將處理后的數(shù)據(jù)發(fā)送至手機客戶端,在手機上顯示并存儲運動數(shù)據(jù)[9-11]。
1.2系統(tǒng)總體結(jié)構(gòu)框圖
系統(tǒng)采用模塊化設(shè)計,主要包括鋰電池供電模塊、傳感器模塊、藍牙模塊和安卓上位機。
圖1系統(tǒng)總體框圖
如圖1所示,MSP430作為核心處理器,第一個作用是接收加速度傳感器的數(shù)據(jù)并進行處理;第二個作用是與安卓上位機進行數(shù)據(jù)傳輸與交互,其間的數(shù)據(jù)交互通過藍牙模塊實現(xiàn)。值得注意的是,藍牙模塊并不是直接與Android上位機進行數(shù)據(jù)傳輸?shù)?而是通過與Android智能機本身的藍牙模塊進行數(shù)據(jù)傳輸?shù)腫12]。
MSP430發(fā)送的數(shù)據(jù)是經(jīng)過單片機算法處理后的結(jié)果,上位機反映這些結(jié)果并將這些結(jié)果顯示在Android界面中;而Android發(fā)送給430的數(shù)據(jù)主要是指鍛煉功能切換指令。鋰電池模塊充當電源作用,本設(shè)計的工作電壓為3.3~3.7 V。
2硬件設(shè)計
2.1MCU方案
設(shè)計采用TI公司的16位超低功耗單片機MSP430F149作為主控芯片。430在設(shè)計中接收加速度傳感器數(shù)據(jù),處理數(shù)據(jù)并將數(shù)據(jù)傳輸?shù)剿{牙模塊實現(xiàn)與Android上位機通信的功能。
2.2加速度傳感器模塊方案
系統(tǒng)使用MPU6050加速度傳感器采集人體運動信息。MPU6050具備三軸加速度傳感器和三軸陀螺儀。內(nèi)部具備16位ADC,輸出量為數(shù)字信號。同時功耗較低[13]。
2.3藍牙模塊方案
藍牙模塊作為上下位機通信的橋梁。單片機通過下位機藍牙模塊與Android智能手機的藍牙模塊進行數(shù)據(jù)傳輸。
設(shè)計采用HC-06串口藍牙模塊作為下位機藍牙模塊。該藍牙模塊具有體積小、功耗低、外圍電路簡單的優(yōu)勢。同時,模塊具備內(nèi)置天線,用戶無需自行調(diào)試天線。該藍牙模塊采用HCI接口設(shè)計,即藍牙模塊與單片機的連接只需要利用單片機的一個串口即可[14]。
2.4鋰電池供電方案
系統(tǒng)采用鋰電池進行供電。系統(tǒng)的額定電壓為3.3 V。藍牙模塊,加速度傳感器以及MSP430均為低電壓供電。鋰電池選用自帶充電保護電路的3.7 V鋰電池,容量為2 100 mAh。在充電時,只需將5 V電源直接連接鋰電池的正負極即可。經(jīng)過電池實測,系統(tǒng)運行正常。
2.5PCB設(shè)計
本設(shè)計采用雙層電路板。成品電路板如圖2所示。在進行PCB設(shè)計時,著重考慮如下幾點:(1)在PCB設(shè)計時,考慮到本設(shè)計并不使用單片機片內(nèi)ADC,因此模擬地和數(shù)字地不加區(qū)別,設(shè)計時定為同一電位;(2)為調(diào)試的方便,PCB另外加入JTAG口,在成品階段可移去JTAG口減小體積;(3)設(shè)計使用的無極性電容和電阻全部使用0805封裝,目的也是為了減小系統(tǒng)體積;(4)值得注意的是,由于藍牙模塊屬于高速電路,因此在設(shè)計PCB時將藍牙模塊盡量靠邊排布,并盡可能遠離電源。為了達到更穩(wěn)定的效果,采用了雙層鋪地。PCB實物圖如圖3所示;(5)為了方便系統(tǒng)調(diào)試,設(shè)計除了可單鋰電池供電,還另外引出5 V和3.3 V兩個電源端;(6)考慮調(diào)試和維護的需要,核心芯片封裝設(shè)計為直插式,方便布線。
圖2 PCB圖
3軟件設(shè)計
3.1姿態(tài)判別算法設(shè)計
3.1.1仰臥起坐姿態(tài)檢測原理
MPU6050傳感器模塊可佩戴于腰腹處,根據(jù)其與人體的關(guān)系,傳感器模塊的軸方向如圖3所示。檢測當前三軸的加速度從而確定人體的姿態(tài)。假設(shè)傳感器的Y軸與人體脊椎平行,而Z軸正方向為人體正前方,則在人體平躺時,Az=1g,Ay=0g,其中g(shù)為重力加速度;相對的,當人體豎起時,Az=0g,Ay=1g。假設(shè)人體與水平夾角為X度,用角度分量分析,則Az=gcosX,Ay=gsinX;反之,通過對應(yīng)軸上的加速度也可確定X。以上即為依靠加速度判定人體姿態(tài)的原理[15-16]。
圖3 MPU6050三軸方向示意圖
3.1.2仰臥起坐能量消耗判據(jù)
運動消耗的熱量可通過式(1)計算
E=m∑aΔt
(1)
其中,m為練習者質(zhì)量;a為運動加速度;t為運動時間。在MCU進行處理時,可選定自由選定Δt,進行累加運算以得出鍛煉者消耗的卡路里。通過式(1)計算得到仰臥起坐過程中人體消耗熱量的估算值,練習者以此為參考來衡量運動效果。
3.1.3計步器步數(shù)判別原理
在人體平穩(wěn)行走過程中,人體垂直加速度和前向加速度有著較為明顯的周期性規(guī)律。在本設(shè)計中,系統(tǒng)充當計步器時不規(guī)定放置角度,則檢測步數(shù)時就不能以單軸數(shù)據(jù)作為判據(jù)。根據(jù)三軸耦合關(guān)系,A=Ax+Ay+Az作為一個判據(jù),當A隨著步態(tài)出現(xiàn)明顯周期性變化時,即可用A作為步態(tài)判據(jù)。
3.1.4原始數(shù)據(jù)濾波算法
在實際使用情況下,加速度傳感器輸出數(shù)據(jù)的波形會出現(xiàn)抖動和毛刺,解決辦法就是濾波。本設(shè)計考慮的濾波算法是滑動均值濾波算法。滑動均值濾波算法是對近N次采樣數(shù)據(jù)做一個平均處理,因運算的數(shù)據(jù)總是近N次數(shù)據(jù),因此可認為其是實時的。從直觀上,取均值的算法可有效削弱尖峰和毛刺的影響。不僅如此,滑動均值濾波法是一種不損失采樣點的數(shù)字濾波算法。滑動均值濾波算法實現(xiàn)軟件濾波,MSP430能滿足其運算要求,參與運算的數(shù)據(jù)是最新的N個采樣數(shù)據(jù),因此具有較好的實時性能。值得注意的是,對于長度為N的選擇不能過長也不能過短,過短則起不到較好的濾波作用;若過長,則有較大的延時,實時性變差,波形幅值過于平坦。文中經(jīng)過實際測試發(fā)現(xiàn)N的取值在5~8時,濾波效果較好。
3.2Android上位機程序設(shè)計
本設(shè)計自定義了一個圓形進度條控件作為核心顯示控件,圓形進度條動態(tài)地顯示用戶完成任務(wù)的進度。在實現(xiàn)自定義控件時,需要用到Canvas控件。要在畫布上繪制出一定尺寸的圓環(huán),以及字母和數(shù)字。而進度的表示則是通過圓環(huán)的填充進行,在完成一定程度的鍛煉后,會以一種與原本有區(qū)別的顏色覆蓋相應(yīng)的圓環(huán)區(qū)域,達到顯示進度的效果。制作好的UI界面,如圖4所示。
圖4 上位機界面
3.3客戶端運行流程
安卓客戶端軟件運行流程,如圖5所示。在打開APP后,軟件首先會檢測本地藍牙設(shè)備,若智能手機的藍牙正常啟動,那軟件會自動打開藍牙,若本地藍牙設(shè)備有故障,則APP會彈出無法檢測到藍牙的提示。如果檢測藍牙失敗,用戶可重啟APP嘗試重新檢測。
圖5 客戶端流程圖
在藍牙打開后,點擊APP界面中的連接按鈕,稍后會彈出一個檢測到的外部藍牙設(shè)備的列表。在設(shè)計中連接HC-06這個下位機藍牙模塊,若運行正常,APP會提示用戶連接成功。
在連接成功后,默認啟動計步器功能,用戶佩戴下位機步行時,APP會同步實時顯示步數(shù)。
在需要進行仰臥起坐鍛煉時,點擊切換按鍵,下位機會進入仰臥起坐模式。這時用戶進行仰臥起坐運動時,仰臥起坐的運動數(shù)據(jù)同樣會顯示在上位機上。用戶可按下保存按鍵,以保存本次運動結(jié)果。
4實驗測試與數(shù)據(jù)分析
圖6 實物圖
系統(tǒng)供電電壓為3.3 V,PCB中額外具有5 V電源端,這樣做的好處是:(1)方便使用5 V電源進行調(diào)試;(2)作為鋰電池模塊的充電端,在需要充電時,將鋰電池 接5 V電源端即可。PCB的下端是藍牙模塊,使用表貼封裝;右上方為MPU6050模塊,采用直插式封裝;MSP430F149采用轉(zhuǎn)接板封裝。左下方是復位按鍵和JTAG口,整個下位機系統(tǒng)的尺寸約為8 cm×7 cm。
MSP430系統(tǒng)采用JTAG進行仿真與程序的燒錄。進行上位機與下位機聯(lián)合測試,在用戶手持移動終端,而將下位機系統(tǒng)佩戴于身上或者置于口袋內(nèi)時,藍牙模塊將測試結(jié)果發(fā)送到手機。
計步器功能的實驗測試:佩戴下位機系統(tǒng)步行,實測效果如表1所示。
表1 計步實測結(jié)果
仰臥起坐功能的測試:仰臥起坐是一種規(guī)范動作,其計數(shù)精度主要取決于被試者的動作是否規(guī)范。將下位機固定在腰間,在動作規(guī)范的前提下,一組測試結(jié)果如表2所示。
表2 仰臥起坐實測結(jié)果
從原理上講,仰臥起坐動作的準確度應(yīng)為100%,但由于傳感器擺放位置的差異,被試者動作過快可能會導致波形偏離閾值,而引起漏計。另外,若采樣率較低,則這樣的誤差會更頻繁發(fā)生。
通過表1和表2,觀察到仰臥起坐的記錄精度比較好,然而計步器的效果相對并不理想。本文判斷計步器系統(tǒng)的誤差主要來源于計步算法的誤差,步行實際波形的復雜性,系統(tǒng)可能會出現(xiàn)多記或漏記的情況。
在進行多次的修改后,發(fā)現(xiàn)改進后的動態(tài)閾值法還是峰谷值判別法,均不能使精度達到理想值。通過查閱器件手冊發(fā)現(xiàn),問題出在傳感器的采樣率上。20 Hz的采樣率完全滿足采樣定理,但對于步行這種不確定的,較為復雜的波形信號,在細節(jié)的體現(xiàn)上會顯得不足。對這樣的信號即使采取小波分析也難以達到理想效果。通過實驗比較,發(fā)現(xiàn)在115 200 bit·s-1的情況下,傳感器能夠以100 Hz的采樣率進行數(shù)據(jù)采集。重新計算并配置了430的UART1串口,使其波特率從9 600 bit·s-1變?yōu)?15 200 bit·s-1。同時通過上位機修改了傳感器的采樣率,使得采樣率達到100 Hz。
在不修改計步算法程序的前提下,進行了另一組測試,測試結(jié)果如表3所示。
表3 修改采樣率后步行測試結(jié)果
計步精度有了明顯提升,能較準確地記錄步數(shù)。
功率測試:對串聯(lián)電流表進行實驗觀測,得到電流平均為60 mA。實測在2 100 mAh鋰電池供電下,可穩(wěn)定運行超過12 h。在整個系統(tǒng)中最耗費電流的是藍牙模塊,在技術(shù)不斷發(fā)展的當今,藍牙模塊也會逐漸向低功耗化發(fā)展,功耗將進一步降低。
5結(jié)束語
本文設(shè)計了一種以Android智能手機作為上位機的智能計步器。該計步器具備計步和仰臥起坐陪練功能。對兩種功能分別采用精確的姿態(tài)判別算法,經(jīng)過測試可實現(xiàn)較高的精度要求。Android上位機系統(tǒng)是本設(shè)計的亮點,Android上位機使得系統(tǒng)具有較好的用戶體驗和實用性。系統(tǒng)完成了以下位機為數(shù)據(jù)處理核心,Android上位機為控制核心的結(jié)構(gòu),符合可穿戴系統(tǒng)的設(shè)計思路。
參考文獻
[1]陳聰,尚無憂.便攜式多功能仰臥起坐計數(shù)器材[J].信息通信,2014(8):35-36.
[2]趙安慶,寧遼貞.一分鐘仰臥起坐多路電子自動測試儀系統(tǒng)設(shè)計[J].現(xiàn)代科學儀器,2010(2):79-83.
[3]肖寧博.基于單片機的仰臥起坐計數(shù)器[J].電子設(shè)計工程,2014(18):113-116.
[4]謝如花.步數(shù)檢測方法及在手腕式計步器中的應(yīng)用研究[D].蘭州:蘭州交通大學,2013.
[5]戴劍松,李靖,顧忠科,等.步行和日常體力活動能量消耗的推算[J].體育科學,2006(11):91-95.
[6]嚴志航.基于小波變換和動態(tài)時間規(guī)整的計步器算法設(shè)計[D].南京:南京理工大學,2014.
[7]宋浩然,廖文帥,趙一鳴.基于加速度傳感器ADXL330的高精度計步器[J].傳感技術(shù)學報,2006,19(4):1005-1008.
[8]范晨燦.基于藍牙4.0傳輸?shù)腁ndroid手機心電監(jiān)護系統(tǒng)[D].杭州:浙江大學,2013.
[9]邢秀玉.基于加速度傳感器的人體步態(tài)模式分類研究[D].太原:中北大學,2013.
[10]李月香,劉燕,袁濤,等.基于加速度信號的走路模式多級分類算法[J].電子學報,2009(8):1794-1798.
[11]熊獅,吳效明.基于Android系統(tǒng)的生理數(shù)據(jù)藍牙傳輸技術(shù)[J].中國醫(yī)學物理學雜志,2012(6):3801-3803.
[12]Zhenyu He,Lianwen Jin.Gesture recognition based on 3D accelerometer for cell phones interaction[C].Thailand:IEEE Asia Pacific Conference on Circuits and Systems,2008.
[13]Kern N,Schiele B,Schmidt A.Multi-sensor activity context detection for wearable computing.proc[C].New York:EUSAI,2003.
[14]Ermes M,P Rkk J,M Ntyj Rvi J,et al.Detection of daily activities and sports with wear-able sensors in controlled and uncontrolled condi tions[J].IEEE Transactions on Information Technology in Biomedcine,2008(6):39-44.
[15]Yosuke Yamada,Keiichi Yokoyama,Risa Noriyasu,et al.Light-intensity activities are important for estimating physical activity energy expenditure using uniaxial and triaxial accelerometers[J].European Journal of Applied Physiology,2009(1):291-297.
[16]Tapia E M,Intille S S,Larson K.Activity recognition in the home setting using simple and ubiquitous sensors[C].Nanjing:Proceedings of Pervasive 2004.
中圖分類號TP274
文獻標識碼A
文章編號1007-7820(2016)03-178-05
doi:10.16180/j.cnki.issn1007-7820.2016.03.047
作者簡介:徐斌(1993—),男,本科。研究方向:電子線路設(shè)計。裴曉芳(1978—),女,副教授。研究方向:信號理處,儀器儀表設(shè)計。
收稿日期:2015- 07- 17