李佳偉 呂東澔
摘 ?要:當(dāng)前由于人們對(duì)健步的喜愛(ài),急需一種既可以精確計(jì)步又可以在服健身服時(shí)被攜戴在身的裝置,一種基于單片機(jī)的便攜式多功能計(jì)步器便由此而生。本電子手表既可以實(shí)現(xiàn)精準(zhǔn)計(jì)步又可以顯示時(shí)間、日期和溫度,輔助以“千伐報(bào)步”、溫度預(yù)警和鬧鐘等功能。
關(guān)鍵詞:?jiǎn)纹瑱C(jī)計(jì)步器;可穿戴手表;步數(shù)檢測(cè);計(jì)步流程
1 ? 引言
當(dāng)今的人們正日益地重視自己的身體健康,比起以前的食不果腹和風(fēng)餐露宿,現(xiàn)在的人們反而多了幾分食不厭精與關(guān)心天氣溫度的喜好,因此人們正日益地注重對(duì)身體的呵護(hù)和體魄的鍛造。然而,散步是為了放松,跑步是為了釋放;醫(yī)學(xué)發(fā)現(xiàn)適當(dāng)?shù)慕〔侥艽龠M(jìn)人的身心健康,轉(zhuǎn)移人的注意力,緩解人的焦慮情緒和壓力,對(duì)焦慮癥、肥胖癥和體弱癥的治療有相當(dāng)好的輔助效果,是一種較好的健身方式。為了讓人們?cè)诮〔綍r(shí)體驗(yàn)到安靜、輕巧和精準(zhǔn)計(jì)步的效果,設(shè)計(jì)一款計(jì)步器很有必要。
2 ? 方案總述
本手表以市場(chǎng)上常見(jiàn)的學(xué)生手表為設(shè)計(jì)原模,并在此基礎(chǔ)上用計(jì)步功能代替其原本的計(jì)時(shí)功能,同時(shí)加入了溫度顯示功能、“千伐報(bào)步”功能、溫度預(yù)警功能以及總步數(shù)存取功能。它通過(guò)加速度傳感器對(duì)人體運(yùn)動(dòng)中的加速度信號(hào)進(jìn)行采集,經(jīng)過(guò)單片機(jī)的分析處理和判斷,整理出當(dāng)前的步數(shù),并根據(jù)人的需要對(duì)當(dāng)前的步數(shù)進(jìn)行存儲(chǔ)。
為實(shí)現(xiàn)以上要求,本產(chǎn)品的整個(gè)系統(tǒng)由[1]52單片機(jī)、加速度傳感器ADXL345、溫度傳感器DS18B20、四個(gè)獨(dú)立按鍵、顯示器LCD1602、單片機(jī)內(nèi)部ROM、蜂鳴器和時(shí)鐘芯片DS1302組成。
3 ? 步數(shù)檢測(cè)原理
當(dāng)人完成一次健步過(guò)程時(shí),其身體三個(gè)方向上的加速度的變化將呈現(xiàn)出一定的周期性,特別[4]是前向(X軸)和縱向(Z軸)的加速度的變化與步行周期中的各時(shí)期的變化有著確切的聯(lián)系,其三個(gè)方向上的加速度波形如圖1所示。若將人步行一步定義為一個(gè)周期,在步行的時(shí)候,由于人四肢的活動(dòng)最為顯著,因此此時(shí)人的手臂必會(huì)產(chǎn)生一個(gè)對(duì)應(yīng)的加速度,這時(shí),若將采集到的加速度信號(hào)還原成連續(xù)的波形信號(hào),則會(huì)發(fā)現(xiàn):人體在步行時(shí)所產(chǎn)生的加速度信號(hào)起伏顛簸且近似呈正弦波變化。因此,若能精準(zhǔn)地統(tǒng)計(jì)出這些周期數(shù),便可實(shí)現(xiàn)計(jì)步功能[2-4]。經(jīng)研究鑒定出:這些周期的時(shí)長(zhǎng)皆在0.2s~2s[2-4]之間,其半個(gè)周期時(shí)長(zhǎng)俱在0.1s~1s之間。
為了滿足精準(zhǔn)計(jì)步的要求,本設(shè)計(jì)首先將通過(guò)加速度傳感器采集到的前向加速度信號(hào)和采集到后并經(jīng)向下平移處理的縱向加速度信號(hào)合成為一個(gè)合成加速度。其合成的方法是[3-5]對(duì)前向和經(jīng)向下平移后的縱向加速度分別取平方,再求和最后再開(kāi)方。然后使用高斯濾波器對(duì)合成加速度進(jìn)行濾波。高斯濾波[5-6]是帶有權(quán)重的加權(quán)平均,它利用高斯分布來(lái)生成權(quán)重,令對(duì)稱中心的權(quán)重為最大,令越遠(yuǎn)離中心的點(diǎn)的權(quán)重越小,如此可以很好地消除脈沖干擾和毛刺,使波形充分正弦化。
經(jīng)實(shí)驗(yàn)發(fā)現(xiàn):經(jīng)濾波后的合成加速度為一正弦波。接著設(shè)立一個(gè)立足于實(shí)踐的合適的正半周閥值A(chǔ)(A>0)。當(dāng)被檢測(cè)到的合成加速度信號(hào)X1>=A時(shí)就表示信號(hào)到達(dá)了正半周,此時(shí)便記錄下這個(gè)X1,再根據(jù)人行走一步的前后和上下動(dòng)作的對(duì)稱原理,當(dāng)繼而檢測(cè)到另一個(gè)合成加速度信號(hào)X2滿足X2≈-X1且X2與X1的時(shí)間間隔正好在0.1s~1s之間時(shí),則表示已成功地“走了一步”。這里,若閾值A(chǔ)被設(shè)立得過(guò)大則容易導(dǎo)致步數(shù)被多計(jì),反之,若設(shè)立得過(guò)小則容易導(dǎo)致步數(shù)被少計(jì)。
4手表簡(jiǎn)介
本手表有4種模式,其中,模式0(引索為0)為正常時(shí)間顯示模式,每50毫秒刷新一次時(shí)間顯示。模式1(引索為1)為計(jì)步模式,在該模式下屏幕會(huì)一直保持同時(shí)顯示“當(dāng)前步數(shù)”和“總步數(shù)”。模式2(引索為2)為鬧鈴設(shè)置模式;模式3(引索為3)為時(shí)間設(shè)置模式,在該模式下,每修改一次參數(shù)就刷新這位的參數(shù)顯示。
電子表上共有四個(gè)鍵:左上角reserve鍵,保存鍵,用于顯示溫度和保存當(dāng)前步數(shù)到總步數(shù)。左下角mode鍵,模式鍵,點(diǎn)擊可以轉(zhuǎn)化不同的模式。右上角start鍵,開(kāi)始鍵,用于加減時(shí)間,在計(jì)步模式時(shí)用于啟停計(jì)步。右下鍵rest鍵,復(fù)位鍵,用于轉(zhuǎn)換下一個(gè)修改參數(shù),在計(jì)步模式中用于重置“當(dāng)前步數(shù)”。
5 ? 軟件設(shè)計(jì)
系統(tǒng)的主函數(shù)流程:開(kāi)始→所有模塊初始化→判斷模式的“引索”→進(jìn)入相應(yīng)模式→判斷是否有按鍵按下→執(zhí)行相應(yīng)的按鍵程序→返回到“判斷模式的‘引索”。
計(jì)步模式的子函數(shù)流程:進(jìn)入模式1→清屏→顯示當(dāng)前步數(shù)和總步數(shù)→(步四)來(lái)回顯示當(dāng)前步數(shù)并分別判斷是否有開(kāi)始鍵、復(fù)位鍵、保存鍵和模式鍵按下→若開(kāi)始鍵按下則進(jìn)入下一步,若復(fù)位鍵按下則重置當(dāng)前步數(shù)并返回到上一步,若保存鍵按下則加入當(dāng)前步數(shù)到總步數(shù)并刷新總步數(shù)顯示并返回到上一步,若模式鍵按下則中斷當(dāng)前模式1子函數(shù)并重置引索回到模式0→來(lái)回采集加速度信號(hào)當(dāng)加速度滿足指定的條件時(shí)則令當(dāng)前步數(shù)加一并刷新當(dāng)前步數(shù)顯示,并來(lái)回判斷是否有開(kāi)始鍵和模式鍵按下→若開(kāi)始鍵按下則跳轉(zhuǎn)到“步四”,若模式鍵按下則退出當(dāng)前模式1子函數(shù)并重置引索回到模式0。
參考文獻(xiàn)
[1] ?杜波,張卓,尹璐.基于單片機(jī)的簡(jiǎn)易計(jì)步器設(shè)計(jì)[J].科技創(chuàng)新與應(yīng)用,2015:19-20.
[2] ?薛娓娓,李娣娜,馬惠鋮.基于軸加速度傳感器的智能計(jì)步器設(shè)計(jì)[J].價(jià)值工程,2019:162-164.
[3] ?李雪梅,車(chē)愛(ài)靜,高煥.基于加速度傳感器的計(jì)步器設(shè)計(jì)[J].山東工業(yè)技術(shù).2019:142-143.
[4] ?付三麗,張楚楊,王英輝,黃恒一等.智能人體計(jì)步器的設(shè)計(jì)[J].智能處理與應(yīng)用,2020:80-85.
[5] ?黃豪杰.基于六軸加速度傳感器的計(jì)步算法研究[J].數(shù)字技術(shù)與應(yīng)用,2017:128-130.
[6] ?ZhaoN.Full-FeaturedPedometerDesignRealizedwith3-AxisDigitalAccelerometer[J]AnalogDialogue,2011,(06).
基金項(xiàng)目:內(nèi)蒙古科技大學(xué)教育教學(xué)改革研究項(xiàng)目(JY2019052)
作者簡(jiǎn)介:李佳偉(1997-),男,湖南衡陽(yáng)人,本科在讀,研究方向:主要從事plc系統(tǒng)、單片機(jī)系統(tǒng)、嵌入式系統(tǒng)方面的研究。