關 閉

        新聞中心

        EEPW首頁 > 工控自動化 > 設計應用 > 三軸加速度傳感器在跌倒檢測中的應用

        三軸加速度傳感器在跌倒檢測中的應用

        作者: 時間:2010-09-13 來源:網絡 收藏

        過程中的變化則完全不同。圖4給出的是意外過程中的變化曲線。通過圖4和圖3的比較,可以發現過程中的變化有4個主要特征,這可以作為跌倒的準則。這4個特這在圖4中以紅色的方框標注,下面將對其逐一進行詳細介紹。

        圖4 跌倒過程中的加速度變化曲線

        1. 失重:在跌倒的開始都會發生一定的失重現象。在自由落體的下降過程,這個現象會更加明顯,加速度的矢量和會降低到接近0g,持續時間與自由落體的高度有關。對于一般的跌倒,失重現象雖然不會有像自由落體那么明顯,但也會發生合加速度小于1g的情況(通常情況下合加速度應大于1g)。因此,這可以作為跌倒狀態的第一個判斷依據。可以由ADXL345的Free_Fall中斷來

        2. 撞擊:失重之后,人體發生跌倒的時候會與地面或其他物體發生撞擊,在加速度曲線中會產生一個很大的沖擊。這個沖擊可以通過ADXL345的Activity中斷來。因此,Free_Fall中斷之后,緊接著產生Activity中斷是跌倒狀態的第二個判斷依據。

        3. 靜止:通常,人體在跌倒后,也就是撞擊發生之后,不可能馬上起來,會有短暫的靜止狀態(如果人因為跌倒而導致昏迷,甚至可能是較長時間的靜止)。表現在加速度曲線上就是會有一段時間的平穩。這可以通過ADXL345的Inactivity中斷來檢測。因此,Activity中斷之后的Inactivity中斷是跌倒狀態的第三個判斷依據。

        4. 與初始狀態比較:跌倒之后,人體會發生翻轉,因此人體的方向會與原先靜止站立的姿態(初始狀態)不同。這使得跌倒之后的靜止狀態下的三軸加速度數值與初始狀態下的三軸加速度不同(見圖4)。假設跌倒檢測器固定在被測人體上的某個部位,這樣初始狀態下的三軸加速度數值可以認為是已知的(本例中,初始狀態為:X軸0g,Y軸-1g,Z軸0g)。讀取Inactivity中斷之后的三軸加速度數據,并與初始狀態進行比較。如圖4所示,重力加速度方向由Y軸上的-1g變為了Z軸上的1g,這說明人體發生了側向跌倒。因此,跌倒檢測的第四個依據就是跌倒后的靜止狀態下加速度值與初始狀態發生變化,且矢量變化超過一定的門限值(比如0.7g)。

        這四個判斷依據綜合在一起,構成了整個的跌倒檢測算法,可以對跌倒狀態給出報警。當然,還要注意各個中斷之間的時間間隔要在合理的范圍之內。比如,除非是從很高的樓頂掉下來,否則Free_Fall中斷(失重)和Activity中斷(撞擊)之間的時間間隔不會很長。同樣,通常情況下, Activity中斷(撞擊)和Inactivity中斷(靜止)之間的時間間隔也不會很長。本文接下來會通過一個具體實例給出一組合理的取值。當然,相關中斷的檢測門限以及時間參數也可以根據需要而靈活設置。

        另外,如果跌倒造成了嚴重的后果,比如,導致了人的昏迷。那么人體會在更常的一段時間內都保持靜止。這個狀態仍然可以通過Inactivity中斷來檢測。也就是說,如果發現在跌倒之后的很長時間內都保持Inactivity狀態,可以再次給出一個嚴重報警。

        典型電路連接
        ADXL345和微控制器之間的電路連接非常簡單。本文中的測試平臺由ADXL345和微控制器ADuC70262組成。圖5給出了ADXL345和ADuC70262之間的典型電路連接。ADXL345的CS管腳接高電平,表示ADXL345工作在I2C模式。SDA和SCL是I2C總線的數據線和時鐘線,分別連接到ADuC7026相應的I2C總線管腳。ADuC7026的一個GPIO管腳連接到ADXL345的ALT管腳,用來選擇ADXL345的I2C地址。ADXL345的INT1管腳連接到ADuC7026的IRQ輸入用來產生中斷信號。

        其他的單片機或者處理器都可以采用與圖5類似的電路與ADXL345進行連接。ADXL345還可以工作在SPI模式以獲得更高的數據傳輸速率。關于SPI工作模式的具體描述,請參考ADXL345數據手冊。

        圖5 ADXL345與微控制器之間的典型電路連接

        表1 ADXL345寄存器功能說明

        地址
        寄存器名稱
        類型
        默認值
        說明
        設置值
        設置的功能
        0DEVID只讀0xE5器件ID只讀
        1-1CReserved保留,不要操作保留
        1DTHRESH_TAP讀/寫0x00Tap的門限不使用
        1EOFSX讀/寫0x00X軸失調0x06補償X軸失調,通過初始化校正獲得
        1FOFSY讀/寫0x00Y軸失調0xF9補償Y軸失調,通過初始化校正獲得
        20OFSZ讀/寫0x00Z軸失調0xFC補償Z軸失調,通過初始化校正獲得
        21DUR讀/寫0x00Tap的持續時間不使用
        22LATENT讀/寫0x00Tap的延遲時間不使用
        23WINDOW讀/寫0x00Tap的時間窗不使用
        24THRESH_ACT讀/寫0x00Activity的門限0x20/0x08設置Activity的門限為2g或0.5g
        25THRESH_INACT讀/寫0x00Inactivity的門限0x03設置Inactivity的門限為0.1875g
        26TIME_INACT讀/寫0x00Inactivity的時間0x02/0x0A設置Inactivity的時間為2s或10s
        27ACT_INACT_CTL讀/寫0x00Activity/Inactivity使能控制0x7F/0xFF使能X、Y、Z三軸的Activity和Inactivity功能,其中Inactivity為AC coupled模式,Activity為DC coupled 或 AC coupled模式
        28THRESH_FF讀/寫0x00Free-Fall的門限0x0C設置Free-Fall的門限為0.75g
        29TIME_FF讀/寫0x00Free-Fall的時間0x06設置Free-Fall的時間為30ms
        2ATAP_AXES讀/寫0x00Tap/Double Tap使能控制不使用
        2BACT_TAP_STATUS只讀0x00Activity/Tap中斷軸指示只讀
        2CBW_RATE讀/寫0x0A采樣率和功耗模式控制0x0A設置采樣率為100Hz
        2DPOWER_CTL讀/寫0x00工作模式控制0x00設置為正常工作模式
        2EINT_ENABLE讀/寫0x00中斷使能控制0x1C使能Activity、Inactivity、Free-Fall中斷
        2FINT_MAP讀/寫0x00中斷影射控制0x00所有中斷影射到Int1管腳
        30INT_SOURCE只讀0x00中斷源指示只讀
        31DATA_FORMAT讀/寫0x00數據格式控制0x0B設置為+/-16g測量范圍,13bit右對齊模式,中斷為高電平觸發,使用I2C數據接口
        32DATAX0只讀0x00X軸數據只讀
        33DATAX1只讀0x00只讀
        34DATAY0只讀0x00Y軸數據只讀
        35DATAY1只讀0x00只讀
        36DATAZ0只讀0x00Z軸數據只讀
        37DATAZ1只讀0x00只讀
        38FIFO_CTL讀/寫0x00FIFO控制不使用
        39FIFO_STATUS只讀0x00FIFO狀態不使用


        評論


        相關推薦

        技術專區

        關閉
        主站蜘蛛池模板: 商水县| 安多县| 伽师县| 阳新县| 怀柔区| 叙永县| 永春县| 新源县| 澄城县| 太原市| 唐河县| 揭阳市| 堆龙德庆县| 吉木乃县| 闸北区| 江陵县| 清流县| 四平市| 观塘区| 旬邑县| 内黄县| 三门县| 页游| 新河县| 淳化县| 政和县| 若羌县| 绿春县| 寻乌县| 邢台县| 绥宁县| 五原县| 荆门市| 化隆| 尚志市| 武宣县| 尖扎县| 新巴尔虎右旗| 遂宁市| 林芝县| 黔西县|