關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 采用3軸加速度計ADXL345的全功能計步器方案設計

        采用3軸加速度計ADXL345的全功能計步器方案設計

        作者: 時間:2012-06-04 來源:網絡 收藏

        本文引用地址:http://www.104case.com/article/160507.htm

        動態閾值和動態精度:系統持續更新3軸加速度的最大值和最小值,每采樣50次更新一次。平均值(Max + Min)/2稱為“動態閾值”。接下來的50次采樣利用此閾值判斷個體是否邁出步伐。由于此閾值每50次采樣更新一次,因此它是動態的。這種選擇具有自適應性,并且足夠快。除動態閾值外,還利用動態精度來執行進一步濾波,如圖6所示。

        圖6. 動態閾值和動態精度

        利用一個線性移位寄存器和動態閾值判斷個體是否有效地邁出一步。該線性移位寄存器含有2個寄存器:sample_new寄存器和sample_old寄存器。這些寄存器中的數據分別稱為sample_new和sample_old。當新采樣數據到來時,sample_new無條件移入sample_old寄存器。然而,sample_result是否移入sample_new寄存器取決于下述條件:如果加速度變化大于預定義精度,則最新的采樣結果sample_result移入sample_new寄存器,否則sample_new寄存器保持不變。因此,移位寄存器組可以消除高頻噪聲,從而保證結果更加精確。

        步伐邁出的條件定義為:當加速度曲線跨過動態閾值下方時,加速度曲線的斜率為負值(sample_new sample_old)。 .

        峰值檢測:步伐計數器根據x、y、z三軸中加速度變化最大的一個軸計算步數。如果加速度變化太小,步伐計數器將忽略。

        步伐計數器利用此算法可以很好地工作,但有時顯得太敏感。當因為步行或跑步之外的原因而非常迅速或非常緩慢地振動時,步伐計數器也會認為它是步伐。為了找到真正的有節奏的步伐,必須排除這種無效振動。利用“時間窗口”和“計數規則”可以解決這個問題。

        “時間窗口”用于排除無效振動。假設人們最快的跑步速度為每秒5步,最慢的步行速度為每2秒1步。這樣,兩個有效步伐的時間間隔在時間窗口[0.2 s - 2.0 s]之內,時間間隔超出該時間窗口的所有步伐都應被排除。

        的用戶可選輸出數據速率特性有助于實現時間窗口。表1列出了TA = 25°C, VS = 2.5 V, and VDD I/O = 1.8 V時的可配置數據速率(以及功耗)。

        表1. 數據速率和功耗

        輸出數據 速率 (Hz)帶寬 (Hz)速率 代碼IDD (µA)
        320016001111146
        16008001110100
        8004001101145
        4002001100145
        2001001011145
        100501010145
        50251001100
        2512.5100065
        12.56.25011155
        6.253.125011040

        此算法使用50 Hz數據速率(20 ms)。interval的寄存器記錄兩步之間的數據更新次數。如果間隔值在10與100之間,則說明兩步之間的時間在有效窗口之內;否則,時間間隔在時間窗口之外,步伐無效。

        “計數規則” 用于確定步伐是否是一個節奏模式的一部分。步伐計數器有兩個工作狀態:搜索規則和確認規則。步伐計數器以搜索規則模式開始工作。假設經過四個連續有效步伐之后,發現存在某種規則(in regulation),那么步伐計數器就會刷新和顯示結果,并進入“確認規則”工作模式。在這種模式下工作時,每經過一個有效步伐,步伐計數器就會更新一次。但是,如果發現哪怕一個無效步伐,步伐計數器就會返回搜索規則模式,重新搜索四個連續有效步伐。

        圖7顯示了步伐參數的算法流程圖。

        圖7. 步伐參數算法流程圖

        加速度計相關文章:加速度計原理


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 澄江县| 江达县| 新郑市| 曲周县| 勐海县| 广昌县| 麦盖提县| 湖南省| 双流县| 阿坝县| 阿合奇县| 安图县| 高邮市| 肥东县| 乐安县| 通许县| 永康市| 淳安县| 普兰店市| 鸡西市| 花莲县| 松桃| 汉中市| 黎川县| 太仆寺旗| 铁岭县| 平谷区| 西昌市| 蚌埠市| 阿拉尔市| 沈丘县| 玛曲县| 绍兴县| 城固县| 四平市| 安溪县| 大新县| 布拖县| 迭部县| 边坝县| 宜兰市|