應(yīng)用說明AN-602檢查了使用ADI公司的加速度計制作簡單但相對準(zhǔn)確的計步器。從那時起,引入了更新的設(shè)備,允許在更加成本敏感的應(yīng)用中使用加速度計。因此,諸如計步器之類的應(yīng)用在諸如蜂窩手機(jī)之類的許多消費(fèi)設(shè)備中發(fā)現(xiàn)。
鑒于這種趨勢,使用單個加速度計對計步器進(jìn)行了更仔細(xì)的檢查。實(shí)施AN-602技術(shù)是為了復(fù)制其結(jié)果。盡管該算法表現(xiàn)良好,但相同的準(zhǔn)確度并未重復(fù)。特別是,人與人之間的變化比預(yù)期的更大,以及當(dāng)一個人使用不同的步速和步幅時。這導(dǎo)致了對算法潛在改進(jìn)的調(diào)查。
使用帶有ARM7內(nèi)核的ADuC7020精密模擬微控制器和兩個不同的計步器測試板進(jìn)行測試:一個帶有2軸ADXL323加速度計,另一個帶有3軸ADXL330加速度計。首先使用ADuC7020和ADXL323評估板,增加了16×2 LCD顯示屏。第二個使用定制板。
AN-602方法
AN-602中使用的技術(shù)基于以下原則:一步中的垂直“反彈”直接與步長,如圖1所示。
角度α和θ相等,因此步幅可以顯示為最大垂直位移的倍數(shù)。給定相同的角度,對于較高或較矮的人來說,垂直位移會更大或更小,從而解決了腿長的差異。
不幸的是,加速度計測量的是加速度而不是位移的變化。必須先將加速度轉(zhuǎn)換為距離才能使用。在AN-602設(shè)置中,有限的計算能力要求使用簡單的公式來近似將加速度轉(zhuǎn)換為距離所需的雙積分。
ADuC7020具有充足的處理能力,本實(shí)驗(yàn)嘗試直接計算離散積分。選擇一種簡單的方法來做到這一點(diǎn)。在確定每個步驟之后,添加該步驟中的所有加速度樣本以獲得一組速度樣本。將每個步驟的速度樣品歸一化,使得最終樣品為零。然后將它們加在一起以獲得位移值。
最初,這項(xiàng)技術(shù)看起來很有希望,因?yàn)闇y量距離對于一個多次走路的受試者來說是相對一致的。不幸的是,人與人之間的差異加劇了,一個主題在不同節(jié)奏下的差異也在加劇。這導(dǎo)致調(diào)查問題是否與模型本身有關(guān)。
理解模型
這個模型有兩個主要假設(shè):腳實(shí)際上是單個點(diǎn)(或者球),每只腳在地面上的沖擊是完全有彈性的。然而,這些假設(shè)都不是這樣?;谶@些實(shí)驗(yàn),可以肯定地說,這些假設(shè)和現(xiàn)實(shí)之間的差異解釋了大部分遇到的變化。
要理解這一點(diǎn),有助于查看幾個步驟的測量加速度,如圖所示在圖2中顯示了一個步驟中“彈簧”的不同來源。
圖2顯示了嘗試將測量的加速度精確轉(zhuǎn)換為距離時遇到的問題。使用峰峰值變化的方法 - 甚至那些整合數(shù)據(jù)的方法 - 都會遇到這樣的數(shù)據(jù)問題。造成這種困難的原因是不同人的步驟在春季從一種測量到另一種測量的變化,或者是一個人使用不同步幅的步驟。
圖3顯示了相同的主體,步伐越來越快。峰峰值加速度差異較大,各種彈簧點(diǎn)看起來不同。 “彈簧”數(shù)據(jù)與“實(shí)際”數(shù)據(jù)的數(shù)量與圖2中的不同。但算法僅看到一組加速度測量,并且不知道這些測量的上下文。因此,問題是在不刪除有用數(shù)據(jù)的情況下消除彈簧在主體步驟中的影響。
兩個圖之間存在重要差異:在圖3中,底部是每個步驟的曲線略窄于圖2的曲線,并且曲線的頂部更一致,具有更少的獨(dú)特峰值。與最小和最大樣本值相比,這些差異導(dǎo)致更高的平均值。
為了進(jìn)行比較,圖4顯示了不同個體的數(shù)據(jù)圖。步幅長度與圖2中的主題非常相似。然而,數(shù)據(jù)本身看起來非常不同。
這個主題的步幅比圖2所示的更多,但是這兩組數(shù)據(jù)代表了大致相同的距離。因此,僅根據(jù)峰值計算距離將產(chǎn)生廣泛變化的結(jié)果。使用簡單的雙重集成會遇到同樣的問題。
解決彈簧問題
所有使用直接計算得出解決這個問題的方法都有同樣的問題,導(dǎo)致一系列失敗的嘗試以消除彈簧的方式規(guī)范化數(shù)據(jù)。主要原因似乎是他們需要一些關(guān)于數(shù)據(jù)上下文的知識,但在實(shí)際使用中,系統(tǒng)不知道外面發(fā)生了什么。它只有數(shù)據(jù)點(diǎn)。我們的解決方案需要能夠在沒有上下文的情況下對數(shù)據(jù)進(jìn)行操作。
在一段令人沮喪的情況下,這個問題的可能解決方案就出現(xiàn)了。如前所述,數(shù)據(jù)在從較慢到較快的速度變化時會發(fā)生變化,但由于彈簧發(fā)生的變化較小,步幅更長,速度更快。結(jié)果是相對于數(shù)據(jù)最小值和最大值的平均值更高。但是這會阻礙新的數(shù)據(jù)嗎?
在視覺上,由于圖4所示的步驟反彈量,很難確定這一點(diǎn)。但是計算表明平均值與峰值之間的關(guān)系因此,確定步行距離的簡單算法的候選者是:
這個計算是針對每個步驟完成的,由不同的步驟決定 - 尋找算法。步進(jìn)算法使用8點(diǎn)移動平均值來平滑數(shù)據(jù)。它搜索最大峰值,然后搜索最小值。當(dāng)移動平均值越過零點(diǎn)時計算步長,該零點(diǎn)是該步驟的總體平均值。距離算法中使用的數(shù)據(jù)考慮了移動平均值的4點(diǎn)延遲。
這個簡單的解決方案在第一個主題上適用于各種步幅。對于其他科目,它也做得相當(dāng)好。但是一些受試者產(chǎn)生的距離與該組的平均測量距離相差10%。這不在±7.5%誤差范圍內(nèi),該誤差范圍是未校準(zhǔn)測量的目標(biāo)。需要另一種解決方案。
盡管如此,上一次測試中使用的比率似乎反映了不同受試者步驟的彈簧差異。嘗試結(jié)合我們在這里研究的兩種方法是有意義的?;氐绞褂秒p積分的最初想法,使用該比率作為校正因子進(jìn)行計算以去除彈簧數(shù)據(jù)。得到的公式是:
其中:
d是計算的距離
k是常數(shù)乘數(shù)
max是在此步驟中測量的最大加速度
min是在此步驟中測量的最小加速度avg是步長的平均加速度值
accel表示步驟的所有測量加速度值
此算法適用于各種主題和步調(diào),變化約+ 6%/ -4%。該算法通過調(diào)整乘數(shù)k,可以輕松校準(zhǔn)特定個體和速度。該代碼還可以在步幅長度上執(zhí)行平均值以平滑逐步變化。這里提到的結(jié)果不包括使用這種平均值。
在這個實(shí)驗(yàn)中,只使用了X軸和Y軸。如果需要所有三個軸,則選擇3軸加速度計以獲得靈活性。發(fā)現(xiàn)兩個軸足以完成任務(wù),因此可以使用ADXL323代替ADXL330。由于引腳配置與Z軸輸出相同,所以可以使用相同的布局。
該實(shí)驗(yàn)專注于為計步器的距離測量獲得良好的結(jié)果。步數(shù)計算算法的評估僅足以確保它在行走或跑步時運(yùn)作良好。在數(shù)百個步行或跑步步驟中,測量的步數(shù)落在實(shí)際數(shù)量的一個或兩個步驟內(nèi)。然而不幸的是,這種簡單的算法可能會受到非步行運(yùn)動的欺騙。 AN-602中描述的時間窗口功能可用于通過忽略在預(yù)期時間窗口之外發(fā)生的錯誤步驟來最小化錯誤計數(shù),同時保留在用戶改變速度時適應(yīng)的能力。
-
微控制器
+關(guān)注
關(guān)注
48文章
7844瀏覽量
153389 -
加速度計
+關(guān)注
關(guān)注
6文章
709瀏覽量
46484 -
計步器
+關(guān)注
關(guān)注
4文章
76瀏覽量
20174
發(fā)布評論請先 登錄
相關(guān)推薦
高性能石英加速度計,滿足最嚴(yán)苛應(yīng)用需求
ADXL345超低功耗3軸加速度計中文手冊
MEMS加速度計的工作原理是什么
PCB Piezotronics推出357A67型三軸電荷輸出加速度計

EPSON工業(yè)級加速度計選型

e2studio開發(fā)三軸加速度計LIS2DW12(2)----基于中斷信號獲取加速度數(shù)據(jù)

三軸加速度計LIS2DUX12開發(fā)(3)----計步器

三軸加速度計LIS2DUX12開發(fā)(2)----靜態(tài)校準(zhǔn)

e2studio開發(fā)三軸加速度計LIS2DW12(2)----基于中斷信號獲取加速度數(shù)據(jù)

微納光柵MOEMS加速度計的工作原理及仿真設(shè)計

三軸加速度計LIS2DW12開發(fā)(4)----測量傾斜度

評論