【導讀】最近在朋友圈里看到“2018年排名前十位關鍵詞:區(qū)塊鏈、人工智能、新零售、物聯網、共享經濟、普惠、大數據、無人駕駛、5G和生態(tài)”。“物聯網”擠進前四,足以說明它的火熱程度。但是這十個關鍵詞里,唯獨“物聯網”像是被炒冷飯給炒熱起來的。
早在2009年,“物聯網”在中國就曾經火熱過,之后一度沉寂到幾乎被遺忘。時隔近十年,物聯網這一次會不會又是虛火一場呢?
我們的判斷是:不會。
讓我們再來看看剛剛提到的前十位的關鍵詞:“人工智能”和“5G”,是物聯網的支撐技術;“新零售”、“共享經濟”和“無人駕駛”,會用到物聯網技術;物聯網是“大數據”的重要來源;健康的“生態(tài)”會構建于物聯網之上。物聯網不再是孤立的存在了,它會被新的技術革命、產業(yè)升級和需求升級裹挾著向前奔。回到物聯網應用本身,構成物聯網終端的關鍵技術在過去十年取得了長足進步:遠距和近距無線通信技術的性能提高、功耗大幅度降低,讓聯網不再是問題;物聯網感知層對傳感器高性能和超低功耗的要求也逐一被滿足,賦予“物”智能的同時,讓“物”也永遠在線。
物聯網應用中加速度傳感器的作用是什么?
加速度傳感器不僅可以檢測線性加速度,同時也測量地球引力產生的重力加速度。所以,在物聯網應用中,可以使用加速度傳感器感測“物”的加速度,算法對單個或連續(xù)數據分析處理后,可以感知
物體的運動狀態(tài)
物體的靜止狀態(tài)
加速度傳感器感知到“物”的靜止或運動的信息,數據在本地或連接到網絡處理后,實現智能化識別、追蹤、監(jiān)控和管理。
如何為物聯網應用選擇合適的加速度傳感器?
加速度傳感器在物聯網應用中扮演重要角色,對于應用開發(fā)者來說選擇一款合適的傳感器至關重要。相信大多數物聯網應用開發(fā)者對加速度傳感器并不陌生,智能手機里已經標配了。那么是不是直接選用一顆手機里使用的加速度傳感器就可以直接做物聯網應用了?當然不是,因為物聯網應用對功耗和傳感器性能的要求與智能手機截然不同。 而如下幾個方面是首先應該被考慮的:
1. 功耗要低,以延長電池的續(xù)航時間
2. 性能要足夠高,有用信號可以被完整采集,抗混疊,抗噪聲,以保證上層應用的精度
3.功能豐富靈活,以滿足各種場景的功能需求
Bosch Sensortec最近發(fā)布的超低功耗三軸加速度傳感器BMA400正是為物聯網應用而生。
功耗
物聯網應用中電池容量通常都很小,并且由于使用場景的限制不允許經常充電,產品開發(fā)中,功耗必然是第一優(yōu)先考慮因素。
BMA400在正常工作模式(normal mode)消耗的電流在可以低至3.5uA,同時提供高至800Hz的三軸加速度數據。
即當OSR=0 (Over Sampling Rate過采樣比率設置為等級0時),此時ODR(Output Data Rate輸出數據速率) 可以配置為12.5~800Hz,并不會影響耗電。如果為了提高抗噪聲的效果,可以進一步提高OSR的等級,相應的抗干擾性能會增強,耗電也會隨之增加。
BMA400在低功耗模式(low power mode)消耗的電流會更低,最低可以達到0.8uA (800nA,OSR=0) 。
下圖BMA400的單體實測數據。用戶可以根據自己的應用場景,以及對加速度信號的抗噪指標要求,來靈活選擇自己實際需要的抗噪等級及相應的功耗。這使得BMA400可以應用于在更廣泛的場景中。
BMA400即使工作在低功耗模式,仍然能輸出25Hz的數據,結合auto wake-up使用(后面會詳細解釋),有用的運動數據不會被漏掉。
傳感器自身功耗是一方面,從應用開發(fā)者角度來看,整個系統(tǒng)的功耗優(yōu)化可能更重要。BMA400通過集成的計步器、單擊雙擊檢測、方向識別、運動檢測、自由落體檢測等功能,把本來需要系統(tǒng)主處理器運算處理的任務下放到傳感器硬件中。系統(tǒng)在主處理器保持睡眠的狀態(tài)下,仍然可以做以上事件或狀態(tài)識別,必要的時候可以通過中斷喚醒主處理器來對事件或新的狀態(tài)做出響應。特別地,在BMA400中開啟step counter功能僅需要增加約0.8uA的電流(step counter工作在100Hz ODR)。
另外,BMA400提供了1024字節(jié)的FIFO,最多可以緩存146組12bit(3軸)的加速度數據,同時可以靈活選擇8bit數據模式,緩存數據可以提高到256組。這樣系統(tǒng)主處理器可以不用在每組數據更新的時候被喚醒或者被迫讀走數據做處理。
同時,BMA400 的FIFO還支持x,y,z一軸或多軸可選擇地存入FIFO,那可以用戶可以選擇自己關心的方向的數據存入FIFO,從而更大地延長MCU的睡眠時間。
進一步,BMA400提供了的自動喚醒(Auto Wakeup)和自動低功耗(Auto Low Power)功能,可以使得BMA400的本體功耗,乃至系統(tǒng)功耗都會降到更低的水平。
性能
過去大家可能會覺得物聯網應用中對加速度傳感器的性能要求不高,只要能識別物體大概狀態(tài)或姿態(tài)就夠了。所以,有些加速度傳感器會通過簡化濾波器的設計、降低采樣頻率、不連續(xù)采樣(duty cycling)等方式來降低功耗,當然,由此帶來的是高噪聲輸出、高aliasing(混疊)、強干擾引入等問題。
可是,如我們前述“加速度傳感器在物聯網應用中扮演重要角色”,傳感性能決定了系統(tǒng)能否基于傳感器做出精準的識別和決策。為了提高對原始信號的有效采集,并降低噪聲及高頻信號的干擾(混疊Aliasing),BMA400在正常工作模式下,采用了連續(xù)采樣和滑動低通濾波的方式。
下圖顯示了連續(xù)采樣(continuous sampling)和周期休眠(duty cycling)兩種不同的采樣模式對于高頻噪聲的抗干擾能力的顯著區(qū)別。
BMA400 采用了高采樣頻率的連續(xù)采樣模式以及持續(xù)的滑動濾波,從而可以有效地抑制串入的高頻噪聲,并真實還原原始的目標信號。而如果采用Duty Cycling采樣模式,就會直接把高頻噪聲引入進來,從而使得加速度計的輸出信號帶有噪聲信號并會引起step counter, double tap等模式識別的誤操作。
通常系統(tǒng)中的高頻噪聲源,有電氣信號類,比如傳感器的供電電壓的波動,電氣干擾等,以及機械振動類,比如板級電容振動,外部震動和撞擊等。這些干擾信號或者信號的高次諧波如果不能夠有效濾除,就會引起加速度傳感器輸出的畸變,并引起屏幕翻轉,計步器計步等誤操作。
功能
物聯網的應用通常不像智能手機一樣在終端配備高性能的處理器,所以對運動傳感器數據的處理不能完全依賴外部處理器的運算。針對物聯網應用特性而設計內置于傳感器內的功能,會幫助整個系統(tǒng)簡化設計、降低功耗、實時快速響應等。
BMA400內置的計步器功能可以基于自身的加速度數據進行高精度步伐的檢測和累加,在多場景中的精度都可以達到95%以上。此計步器的邏輯和算法是Bosch傳感器團隊自主研發(fā),投入了大量人力物力進行了各種場景的測試并多次優(yōu)化而成的,具有良好的穩(wěn)定性和準確率。
同時,還可以準確判斷用戶的當前狀態(tài),比如靜態(tài),走路,跑步等。這些功能是當前智能穿戴設備的標準配置,而計步器算法通常是運行在MCU端,而MCU一旦運轉,其功耗必然會遠大于加速度傳感器,這無形中會增加系統(tǒng)功耗,一般會 50uA~130uA。
而BMA400單體集成了這些功能,實際僅需要3.9uA的電流(配合低功耗模式的自動切換,還可以進一步降低),從而可以在滿足同等功能的情況下,顯著降低系統(tǒng)地總功耗,從而延長系統(tǒng)的待機時間。
BMA400內置的tap/double-tap功能可以實現用戶的單擊/雙擊(可配置)的交互輸入功能。由于單擊/雙擊的閾值等級可配,從而用戶可以根據自己需要的靈敏度等級來選擇。這個功能可用在穿戴耳機,手表,手環(huán)等上。BMA400的tap/double-tap功能是運行在ODR=200Hz的數據速率上,從而會保證非常高的準確率,以及實時性,避免誤觸發(fā)和誤操作。開啟tap/double tap功能的BMA400所需的電流僅為4.3uA。如果結合BMA400的自動睡眠和喚醒功能,實際的平均功耗會更低(50%以下)。
BMA400內置的通用中斷機(Generic Interrupt 1 & 2)具有非常靈活地中斷觸發(fā)機制,可以實時檢測器件的靜態(tài)姿態(tài),或者動態(tài)運動水平,并根據三軸的邏輯“或”或者邏輯“與“,而產生中斷。同時還可以結合Auto-LowPower 功能來自動切換normal或者low power模式。
BMA400內置的Orientation(方向傳感器)可以被靈活配置來檢測方向變化并產生中斷;Activity change功能可以評估用戶當前的活躍水平,如果超過設定的門限,則會中斷MCU;Free fall功能可以檢測器件是否處于失重狀態(tài),并產生中斷。此功能可以用在硬盤保護等地方。
結語
BMA400從產品定義和設計上充分考慮了物聯網應用的獨特性,兼顧功耗和性能,通過內置的功能簡化應用開發(fā)的難度。
推薦閱讀: