河北工業大學控制科學與工程學院 韓福長 彭一南 嚴 婷 張 萍
隨著生活水平的提高,出游的人數都在不斷激增,而隨之產生的行李箱失竊案件的比例也不斷上升[1]。傳統的防盜方法,無論密碼鎖還是機械鎖的效果都不佳。目前國內有研究行李箱防盜器的,比如香港創世樹公司推出的一種智能防盜行李箱,利用RFID射頻技術,時刻檢測行李箱與移動終端的距離還檢測是否被盜。[2]但是,這種報警器局限在于作為移動端的人一旦發生較大的移動就會產生誤報,人機交互性差,同時并未與箱體結合,集成度低。為此,設計一款能夠集成于行李箱內部,人機交互性強的行李箱防盜裝置是很有必要的。該產品基于陀螺儀加速計來檢測箱體運動狀態,傳回到內嵌單片機,利用智能算法精準定位行李箱移動情況,利用APP進行人機交互,同時集成語音報警模塊實時報警,最大限度地保證行李箱的安全。同原有一些產品比它解決了報警延時,精度低,限制大等缺點,大大提高了行李箱的安全性。
為減少功耗和封裝體積,本系統采用STM32單片機最小系統和MPU6050模塊,用于檢測行李箱的運動情況,LM317模塊為最小系統提供穩定電源。當APP通過藍牙向單片機發送警戒狀態信號后,一旦檢測到位移超過閾值及通過語音模塊和功放發出人聲警戒盜賊以及提醒物主。系統嵌套在行李箱內部,其系統整體結構框圖如圖1所示。
MPU6050模塊是InvenSense公司推出的一款6軸傳感器模塊。集成3軸MEMS陀螺儀,3軸MEMS加速度計,及一個可擴展的數字運動處理器DMP。
MPU-6050對陀螺儀和加速度計分別用了三個16位的ADC,將其測量的模擬量轉化為可輸出的數字量。為了精確跟蹤快速和慢速的運動,陀螺儀可測范圍為±250,±500,±1000,±2000°/秒(dps),加速度計可測范圍為±2,±4,±8,±16g。

圖1 系統結構框圖
一個片上1024字節的FIFO,有助于降低系統功耗。高分辨度、體積小、功耗低,這些特點使MPU6050非常適合于嵌入式設備應用。MPU6050電路原理圖如圖2所示。
STM32F103增強型系列由意法半導體集團設計,使用高性能的ARMCortex-M3,32位RISC內核,工作頻率72MHz,內置高速存儲器(高達128K字節的閃存和20K字節的SRAM),豐富的增強I/O端口和連接到兩條APB總線的外設。所有型號的器件都包含2個12位的ADC、3個通用16位定時器和1個PWM定時器,還包含標準和先進的通信接口。本系統選用STM32F103ZET6型號的芯片,具有執行效率高,穩定性強,功耗低和成本低的優點。

圖2 MPU6050電路原理圖
為保證系統的精確穩定性,對控制系統供電電源的質量要求較高。因此,針對供電電源進行穩壓處理,為此本系統采用LM317穩壓芯片。LM317是應用最為廣泛的電源集成電路之一,它不僅具有固定式三端穩壓電路的最簡單形式,又具備輸出電壓可調的特點。此外,還具有調壓范圍寬、穩壓性能好、噪聲低、紋波抑制比高等優點。系統電源模塊采用電池12V供電,經過LM317轉換5V為STM32最小系統供電,穩壓電路如圖3所示:

圖3 LM317模塊原理圖
ISD1700芯片是華邦公司推出的單片優質語音錄放電路,該芯片提供多項新功能,包括內置專利的多信息管理系統,新信息提示,雙運作模式,及可定制的信息操作指示音效。芯片內部包含有自動增益控制、麥克風前置擴大器、揚聲器驅動線路、振蕩器內存等的全方位整合系統功能。正是基于上述的優點,本系統決定采用此款芯片,具體電路如圖4所示。
物體移動后,物體離參考點的距離超過閾值距離,我們稱這種狀態為移動觸發[3]。行李箱的移動檢測通過MPU6050結合相應算法實現的。

圖4 ISD1700電路原理圖
因此,行李箱的擺放將影響MPU6050檢測到的初始加速度值。為了簡化問題。本文討論行李箱端正擺放,也就是MPU6050的Z軸是垂直于地面的,而X軸與Y軸與水平面平行,朝向隨機。

圖5 行李箱擺放示意圖
做物體移動數據采集實驗。實驗時MPU6050的朝向為Z軸垂直于水平面。而X軸和Y軸平行于水平面隨機朝向。指定具體的方向,讓人拖著檢測裝置沿指定方向在水平面上拖行指定距離。這里距離設定為1m,拖行速度與人拖行行李箱的速度相仿。

圖6 實驗拖行示意圖
實驗距離1m內采集到的數據是不能完全體現物體移動時加速度的變化的,用Newton插值法對采集到的加速度數列插值,使加速度數列能更準確的描述物體加速度的變化。令插值節點與函數值的對應關系如下:

Newton插值使n次多項式插值,其思路使將待求得n次插值多項式寫成逐次生成的形式[4]。

用Pn(x)插值時,首先計算各階商,各階商可歸結為一階差商的逐次計算,一般地:

上面時插值多項式節點任意分布的情況。而在加速度數列中,我們遇到的是等距節點。于是Newton前插公式可變為:

經牛頓插值法處理后的加速度數列能更準確的描述物體移動的狀態。
在實驗中得到一系列加速度數據,ax和ay。根據物理定律可計算各采樣時刻的物理運動速度。對與離散的加速度數據,可通過的方法處理。對速度作積分可得位移,離散的速度數據可通過矩形法得到[5]。矩形法計算示意圖如圖7所示:

圖7 矩形法距離計算
X方向位移計算公式:

同理可計算y方向的位移。X方向位移和Y方向位移因為垂直的關系,因此物體的實際移動距離為。

圖8 實驗物體X,Y方向位移和移動距離關系
初級距離計算方法使用的是通過直接使用采集到的加速度數據計算得到的。但這種方法不能排除信號漂移干擾和環境變化干擾[6]。
改進原因:物體在不光滑的地面拖動時會發生抖動。這些抖動是瞬間的,觀察MPU6050采集到的加速度也能發現,在抖動時檢測到的加速度存在突變現象,并導致加速度隨時間的曲線出現尖峰[7]。這些抖動尖峰往往是瞬間的,但離散的加速度采樣系統采集到尖峰的加速度后會認為該加速度將一直維持到下一次采樣開始。這將放大抖動時采集到的尖峰加速度,后續的積分運算也將放大該誤差,通過算數濾波能減緩這些突變加速度的干擾[8]。
濾波算法的選取:使用MPU6050采集信號過程中,硬件自身及周邊環境都是干擾源。因此采集的加速度值與實際值之間是有一定偏差的。而產生偏差的主要原因是加速度漂移現象和加速度突變的脈沖噪聲,通過數字濾波的方法能有效的降低這些誤差對結果的影響[9],數字濾波主要有以下幾種:
(1)算術平均濾波
算術平均濾波算法就是連續取n次采樣值作算數平均計算。表達式為:

對于隨機干擾的信號,其特點是這種信號有一個平均值,信號在該平均值上下波動。
(2)中位值平均濾波算法
中位值平均濾波算法相當于“中位值濾波算法”+“算數平均濾波算法”。它匯集了兩種算法的優點:一是可消除大服務脈沖干擾引起的采樣偏差,二是對周期性隨機噪聲有良好的抑制作用,三是其濾波后平滑度高,適用高頻濾波系統。中位值平均濾波的算法流程圖9所示。
對MPU6050采集到的x方向和y方向的兩組組加速度別使用中位值平均濾波算法進行濾波,濾波前后對比圖可見,加速度突變和漂移現象在濾波后得到有效削弱,結果如圖10所示。
濾波前后的距離計算結果及對應的誤差結果見表2。由此可見,中位值平均濾波算法能有效削弱抖動時加速度突變造成的誤差。

表2 濾波前后距離與誤差結果

圖9 中位值平均濾波流程圖

圖10 加速度濾波前后對比圖
更安全更智能的行李箱是未來的發展趨勢。本設計在未來行李箱防盜技術方面作了初探,具備參考意義。
行李箱防盜系統的距離檢測算法通過中位值平均濾波法削弱了加速度值的漂移誤差和脈沖突變誤差,并將誤差從21.88%控制到14.05%內,大大降低了行李箱安全狀態的誤判。
本防盜系統的算法局限性在于不能計算角速度等次要因素對測量結果的影響。但實際情況如火車轉彎,行駛震動等都會帶來角速度變化的影響,實際應用時安全狀態誤判的概率將會上升[10]。為此,行李箱防盜系統下一步將研究加速度與角速度帶來的綜合影響,以降低安全誤判的概率。