1.前言 本應用指南旨在幫助開發者了解羅姆集團旗下Kionix公司的KX13x系列三軸加速度傳感器搭載的獨有功能——高級數據路徑(Advanced Data Path,ADP)。ADP由用戶可定制的頻率濾波器和一個均方根(RMS)計算器組成,后者是提供所需帶寬內的加速度振幅。X、Y和Z軸的16位ADP輸出可以從專用輸出寄存器中讀取,存儲在512字節的FIFO緩存中,然后被路由至Wake-Up(喚醒)和Back-to-Sleep(返回睡眠)引擎。通過設置想要的閾值振幅和計數器值,可以針對特定的動作、旋轉或振動產生中斷。本文將通過介紹兩個簡單的示例來直觀地展示該新功能的優勢。 圖1:高級數據路徑(ADP)原理示意 現實世界中的加速度信息(左)由不同頻率和振幅混合而成,KX13x的ADP不僅可以捕獲這些信息,而且能夠輸出指定頻率范圍內的加速度振幅(右側列舉了各種情況示例)。 2.數據流 圖2所示的是一張普通數據流圖。該圖頂部的第一個方塊是數字加速度計的傳統數據路徑(Conventional Data Path,CDP)。CDP包含來自MEMS的模擬輸入、一個負責放大信號的模擬前端(AFE)、一個負責信號數字化的模數轉換器(ADC)以及一個負責進一步處理的數字信號處理(DSP)單元。高級數據路徑(ADP)包含一對高度可配置的數字濾波器——可用于低通和高通的組合濾波器,以及計算實時振幅的均方根(RMS)計算器。用戶可以靈活地對ADP濾波器進行訪問并設置。該濾波器可以設為Butterworth、Bessel、Chebyshev濾波器,甚至配置成自定義濾波器。ADP的輸出可以存儲在專用輸出寄存器,也可以被路由至內置的512字節FIFO緩存,也可以兩種方式同時實現。此外,ADP輸出可以作為一個輸入路由到內置的動作Wake-Up(喚醒)和Back-to-Sleep(返回睡眠)引擎。這些引擎可配置閾值和靈活的計數器,從而進一步限定信號。如果滿足輸入信號判定標準,那么器件中的中斷發生器將為主機產生一個物理中斷,并設置相應的狀態寄存器。圖2所示的是當檢測到“持續了Th時間的特定振動”時產生中斷的示例情況。 圖2:ADP數據流 3.應用實例 3.1.機器健康狀況 假設fop為機械系統(比如旋轉電機)的工作頻率,fe為系統的錯誤/故障模式頻率(圖3)。在此例中,fe低于fop并且在該圖中顯示,也就是說,由于機身松動,電機正在緩慢振動。對于傳統加速度傳感器,為了檢測這種故障模式,人們需要用MCU/DSP進行頻率分析。而MCU/DSP一直保持工作狀態,會導致額外的內存空間需求以及更高的功耗。 而KX13x的ADP僅使用加速度傳感器就能夠檢測到這種事件,而且,如果把ADP數字濾波器設置為帶通或低通濾波器,讓fe通過而消除fop,還能為主機MCU產生中斷。 圖3:正常系統動作和故障系統動作的頻率分析 在圖4中,請注意,ADP被配置為低通濾波器以消除fop,而且RMS計算引擎被配置為獲取所需故障模式信號的絕對值。動作引擎中的信號閾值(中間波形)用于限定事件。最后,圖下部的波形顯示了由運動引擎生成的真實信號。檢測到故障事件后,INS3寄存器中的WUFS位會被置位,而外部中斷引腳(如果已配置)則產生中斷信號。 圖4:ADP將目標信號從原始加速度數據中分離出來,并將振幅信息傳遞給運動引擎 3.2.包絡分析 包絡分析是一種周期性振動故障檢測的有效方法,比如減摩軸承失效。ADP可用于生成加速度數據的包絡線(* 1)。包絡波形的快速傅里葉變換(FFT)可以顯示振動周期,這有助于識別系統中的缺陷部件。在該例中,ADP濾波器應配置為“帶通”:同時包含振動頻率和誤差頻率,排除直流噪聲和高頻噪聲。 (*1)注:ADP輸出是偽包絡,不是希爾伯特變換結果。 圖5:軸承球體故障引起的周期性振動 包絡波形可以存儲在KX13x的512字節緩沖區中,也可發送到主機處理器進行FFT分析。 圖6:使用原始加速度數據及其包絡的FFT 有關KX13x ADP的更多詳細信息和用法,請聯系羅姆的銷售代表。 4.其他資源 KX13x系列頁面 https://www.kionix.com/product/KX132-1211 https://www.kionix.com/product/KX134-1211 |