準確可靠地感測位置、方向和運動已經(jīng)成為許多細分市場(包括消費、工業(yè)和軍用/航空)各種應(yīng)用領(lǐng)域的必要需求。 要提供這種復(fù)雜的數(shù)據(jù),適用的傳感器系統(tǒng)除了整合來自基本的陀螺儀傳感器或加速計的結(jié)果外,還需其他方面的結(jié)果。
從這些單獨的傳感器獲得準確的讀數(shù)本身就很難,系統(tǒng)設(shè)計人員還需進一步組合多個傳感元件的輸出,并通過傳感器融合來整合其輸出。 然而,實施傳感器融合的復(fù)雜性極易造成系統(tǒng)開發(fā)停滯不前。
為此,設(shè)計人員可以轉(zhuǎn)而使用 Bosch Sensortec 的兩款方向傳感器器件。 這些器件提供了一種比定制傳感器融合設(shè)計更簡單的替代方案,通過現(xiàn)成的解決方案加快傳感器融合功能的開發(fā)。
傳感器融合的需求
感知方向和運動的能力在依賴虛擬或物理運動的應(yīng)用中起著至關(guān)重要的作用。 智能手機依靠這種能力來進行各種操作,簡單如縱向顯示切換到橫向顯示,復(fù)雜如無需 GPS 輔助即可操作的慣性導(dǎo)航應(yīng)用。 除了智能手機及許多其他消費品和工業(yè)物聯(lián)網(wǎng) (IoT) 產(chǎn)品外,醫(yī)療和汽車應(yīng)用越來越需要一定程度的方向感知功能。 雖然在實施具有方向感知的傳感器融合設(shè)計上會有所起伏,但這讓設(shè)計人員有機會提供與眾不同的設(shè)計。
在硬件層面,底層傳感系統(tǒng)用加速計檢測運動,用陀螺儀感測旋轉(zhuǎn),并用磁力儀識別航向。 理論上,這些傳感器可以提供確定方向、位置和航向所需的所有必要信息。
然而在實踐中,每種傳感器在其傳輸必要數(shù)據(jù)的能力方面都表現(xiàn)出嚴重的局限性。 加速計的高靈敏度會帶來高噪聲。 陀螺儀會隨時間產(chǎn)生漂移,因此不能提供絕對旋轉(zhuǎn)數(shù)據(jù)。 磁力儀會響應(yīng)所有磁場并會因給定設(shè)置中發(fā)現(xiàn)的磁性材料產(chǎn)生異常結(jié)果。
此外,這些傳感器類型中沒有一個能夠明確地測量偏航等更復(fù)雜的運動,更不用說根據(jù)地球的磁場識別傳感器的絕對方向。 要取得這些更復(fù)雜的結(jié)果,需要在所謂的“傳感器融合”的過程中組合傳感器數(shù)據(jù)。
傳感器融合方法
傳感器融合會合并來自多個傳感器的數(shù)據(jù),以得出從單個傳感器無法得出的結(jié)果。 方向和慣性導(dǎo)航專家采用為特定類別的應(yīng)用設(shè)計的一系列傳感器融合算法。 這些算法的細節(jié)不在本文的探討范圍內(nèi),但每種算法都力求優(yōu)化原始傳感器數(shù)據(jù)的合并,這些數(shù)據(jù)經(jīng)傳感器噪聲和精度等各種特性進行了靜態(tài)或動態(tài)加權(quán)。 結(jié)果是使用諸如歐拉角或四元數(shù)等抽象概念的方向和運動的數(shù)學(xué)投影。
幸運的是,開發(fā)人員不必成為傳感器融合算法的專家就能利用這些算法的功能。 在構(gòu)建傳感器融合應(yīng)用時,開發(fā)人員可以使用現(xiàn)有的軟件解決方案,如 NXP Semiconductors 傳感器融合庫。 設(shè)計用于在 Kinetis K20 之類的 MCU 上運行的 NXP 軟件可以組合使用由可編程增益放大器 (PGA)、比較器和模數(shù)轉(zhuǎn)換器 (ADC) 組成的 MCU 集成模擬信號鏈采集的傳感器數(shù)據(jù)。
這種基于 MCU 的方法在滿足特定應(yīng)用需求方面具有極大的靈活性。 沒有傳感器融合理論經(jīng)驗的開發(fā)人員可以使用現(xiàn)成的庫開發(fā)經(jīng)過優(yōu)化的系統(tǒng)。 希望實施更專業(yè)算法的專家可以在目標應(yīng)用程序中替換其代碼。 即使如此,所有開發(fā)人員在前端傳感器系統(tǒng)自身的設(shè)計上仍面臨重大挑戰(zhàn)。
不管算法如何,傳感器融合結(jié)果的精度很大程度上取決于底層傳感器設(shè)計。 作為傳感器融合的基本要求,傳感器測量值需要緊密/或足夠緊密地同步,以滿足時間分辨率的應(yīng)用要求。 目標傳感器的物理布局等問題會影響同步,特別是對于傳感器遠離傳感器處理設(shè)備的應(yīng)用而言。 在這些情況下,傳感器及其各自的信號處理鏈之間的不同時序路徑會導(dǎo)致同步中出現(xiàn)系統(tǒng)定時誤差。 雖然開發(fā)人員可以解釋這些差異,但基于集成傳感器的方法化解了這個問題。
集成傳感器模塊簡化了融合
集成傳感器器件將每個目標傳感器放置在同一個模塊上,消除了有關(guān)不同時序路徑的實際問題。 此外,使用這種器件,開發(fā)人員可以依賴于其傳感器模塊設(shè)計人員來盡量減少噪聲源或會影響傳感器精度的其他設(shè)計因素。 事實上,Bosch Sensortec 通過其 BMF055 9 軸方向傳感器使這種方法更進一步。 這種系統(tǒng)級封裝 (SiP) 器件將 Atmel ATSAMD20J18A 32 位 MCU 和與其 BMA280 加速計、BMG160 陀螺儀和 BMM150 地磁傳感器(圖 1)大致相當(dāng)?shù)膫鞲衅骷右约伞?(注意,BMF055 的傳感器在某些性能值方面與其獨立的等效產(chǎn)品有所不同。)

圖 1: Bosch Sensortec BMF055 將傳感器與基于Atmel Cortex-M0 + 的 MCU 相結(jié)合,收集原始傳感器數(shù)據(jù)并執(zhí)行傳感器融合,簡化了方向和慣性測量應(yīng)用的傳感器系統(tǒng)設(shè)計。 (圖片: Bosch Sensortec)
基于 ARM? Cortex?-M0+ 內(nèi)核的內(nèi)置 Atmel ATSAMD20J18A MCU 集成了 32 KB 的 SRAM 和 256 KB 的閃存。 它用作本地主機,通過 SPI 總線獲取原始傳感器數(shù)據(jù),并在模塊內(nèi)執(zhí)行傳感器融合軟件算法。 反過來,Atmel MCU 通過 USART 接口與外部主機通信,以傳輸最終的傳感器融合結(jié)果。
硬件設(shè)計簡單明了。 BMF055 只需要一個外部 32 KHz 晶體和電容即可完成傳感器融合設(shè)計(圖 2)。 事實上,Bosch Sensortec BMF055 評估套件提供了一個簡單的即用型開發(fā)平臺,將分線板與包含 BMF055 和所有必要組件的小板組合在一起。

圖 2: Bosch Sensortec BMF055 幾乎不需要額外組件來實施方向傳感器系統(tǒng),并提供串行接口用于開發(fā)及將傳感器融合結(jié)果傳輸?shù)街鳈C系統(tǒng)。 (圖片: Bosch Sensortec)
BMF055 SiP 消除了傳感器融合設(shè)計硬件實施的重大障礙。 需要自行編寫傳感器融合算法的開發(fā)人員可以使用 BMF055 作為集成替代方案,不用再創(chuàng)建基于 MCU 的傳感器融合設(shè)計。 事實上,Bosch Sensortec 在基于 Atmel 軟件框架 (ASF) 的分層架構(gòu)中提供了 BSX-Lite 傳感器融合庫。
該軟件包在每一層上都公開了一系列 API,用于訪問 BSX-Lite 庫、傳感器驅(qū)動程序和底層 ASF 驅(qū)動程序(圖 3)。 實際的運行時間代碼駐留在隨分發(fā)包提供的封裝庫中。 開發(fā)人員可以在提供的堆棧上快速構(gòu)建其應(yīng)用程序,根據(jù)特定應(yīng)用程序需求替換自己的專有傳感器融合庫。

圖 3: Bosch Sensortec 提供傳感器融合軟件包,允許通過 API 訪問 BSX-Lite 傳感器融合庫、傳感器和 Atmel 軟件框架 (ASF)。 (圖片: Bosch Sensortec)
Bosch Sensortec 軟件包甚至包含示例代碼,該代碼能展現(xiàn)用于執(zhí)行各種器件操作(代碼列表)的高級調(diào)用。 軟件為每個傳感器提供了分類,因此從特定傳感器讀取數(shù)據(jù)就像為相應(yīng)類別的實例調(diào)用適當(dāng)?shù)姆椒ㄒ粯雍唵巍?傳感器支持庫中的低級例程執(zhí)行必要的總線讀取,由嵌入式 MCU 執(zhí)行,以通過 SiP 模塊的內(nèi)部 SPI 總線訪問傳感器器件寄存器。
void bmf055_sensors_initialize (void)
{
/* Initialize BMA280 */
bma_init();
/*BMA settings for running BSXLite: Range = 2G, BW = 62.5Hz*/
bma2x2_set_range(BMA2x2_RANGE_2G);
bma2x2_set_bw(BMA2x2_BW_62_50HZ);
/* Initialize BMG160 */
bmg_init();
/* BMG settings for running BSXLite: Range = 500dps, BW = 64Hz*/
bmg160_set_range_reg(0x02);
bmg160_set_bw(0x06);
/* Initialize BMM150 */
bmm_init();
/*BMM settings for running BSXLite: Preset mode = Regular, Functional state = Forced mode*/
bmm050_set_presetmode(BMM050_PRESETMODE_REGULAR);
bmm050_set_functional_state(BMM050_FORCED_MODE);
}
代碼列表。 BMF055 軟件包含有示例例程,展示了如何使用高級例程進行一些操作,例如對器件的三個集成傳感器進行初始化。 (代碼來源: Atmel/Bosch Sensortec)
直接替代型解決方案
憑借完整的可編程性,BMF055 為需要定制功能,甚至專門的傳感器融合計算的應(yīng)用提供了有效的解決方案。 對于尋求快速直接替代型解決方案的開發(fā)人員,Bosch Sensortec BNO055 將傳感器融合固件與傳感器和 MCU 集成,直接輸出固件所生成的高級信息。 BNO055 使用基于寄存器的方法,能讓主機獲得最終的結(jié)果,包括加速度、線性加速度、重力矢量、磁場強度、角速率、溫度,以及歐拉角或四元數(shù)的方向。
對于硬件集成,模塊提供 I2C 和 UART 端口用于連接到主機,并需要與 BMF055 相同的基本晶體和電容器補充。 與 BMF055 一樣,Bosch Sensortec 還提供了一個 BNO055 開發(fā)板,其中包括該器件和所有必需的組件。
因為 BNO055 執(zhí)行傳感器融合計算并提供最終結(jié)果,所以軟件界面相對簡單。 基本器件驅(qū)動程序處理外部主機通過 I2C 或 UART 硬件接口訪問器件所需的總線讀寫操作。
低級軟件例程會訪問 BNO055 的專用寄存器來檢索特定的傳感器融合結(jié)果。 例如,驅(qū)動程序例程 bno055_read_accel_xyz() 會讀取原始線性加速度數(shù)據(jù),bno055_convert_float_accel_xyz_msq() 函數(shù)會將數(shù)據(jù)轉(zhuǎn)換為以 m/s2 為單位的浮點值。
總結(jié)
增強現(xiàn)實、無人機和智能手機等應(yīng)用依賴于確定方向和運動的能力。 傳感器融合基于不能單獨生成信息或者不能明確和快速生成信息的傳感器來提供這些信息。 對于設(shè)計人員來說,創(chuàng)建合適的傳感器解決方案在硬件設(shè)計和軟件開發(fā)方面都面臨重大挑戰(zhàn)。
BMF055 和 BNO055 器件能滿足快速開發(fā)傳感器融合設(shè)計的定制和直接替代型解決方案的需求。
-
傳感器
+關(guān)注
關(guān)注
2577文章
55180瀏覽量
792415 -
BOSCH
+關(guān)注
關(guān)注
14文章
65瀏覽量
55466 -
BMA280
+關(guān)注
關(guān)注
0文章
3瀏覽量
11303
發(fā)布評論請先 登錄
從單一傳感器到多技術(shù)融合 藍鵬打造工業(yè)測量一站式解決方案
打破汽車動態(tài)測量困局, 虹科OMS光學(xué)傳感器重塑汽車測試精度標桿
填補國產(chǎn)高端傳感器空白!中國首款全數(shù)字伺服電路石英加計落地!天羿領(lǐng)航推動高精度慣性測量技術(shù)邁入“
【干貨】北斗三號+ MEMS慣性傳感器:國產(chǎn)高精度導(dǎo)航的突圍路徑
霍爾傳感器在智慧小區(qū)燃氣聯(lián)網(wǎng)監(jiān)測中的應(yīng)用方案與解析
A股力傳感器龍頭柯力傳感再投資一家慣性傳感器公司無錫北微傳感科技有限公司
博世推出首款高性能六軸慣性傳感器
Analog Devices Inc. ADIS16550六自由度慣性傳感器數(shù)據(jù)手冊
Bosch Sensortec最新推出BMI330慣性測量單元
瑞士IST氣體流量傳感器FS7.0—為工業(yè)應(yīng)用提供精準可靠的流量測量解決方案
7天內(nèi)2家傳感器公司獲數(shù)千萬元融資,這條傳感器賽道國產(chǎn)化率不足10%?!
簡化慣性測量傳感器系統(tǒng)設(shè)計方案
評論