卓鄭安,周 順,阮海宇
(上海工程技術大學 電子電氣工程學院,上海 201620)
地震準確預報是世界性難題,而地震預警提供了為逃生避險贏得寶貴瞬間[1]。隨著地震預警研究的深入,融入了更多新科技,如基于雙頻GPS衛星的地震預報系統等[2]。但有科學家認為,地震預警系統設備的廉價和可靠性,比精確性更重要。應該大量布設這些小型分立的地震報警設備并使信息共享,使之便宜并讓用戶容易獲得,從而彌補大型地震研究機構在信息傳遞方面的延遲性[3]。
地震縱波傳播的速度快于地震橫波的速度,而光的傳播速度遠大于地震波速度。地震預警技術就是利用縱波和橫波、光波和地震波的速度差,當破壞性地震尚未來襲的數秒至數十秒前發出預警。本文依據震級與加速度關系,開發了一款基于單片機的普及型地震報警器,對防災減災有積極的意義。
地震發生時,地面由于運動而產生加速度,其大小反映了運動的激烈程度[4]。根據低重力(或振動)加速度傳感器的地震波檢測技術,采用三軸加速度傳感器(MMA8451Q)、單片機(MC9S12XS128)、液晶顯示器(LCD5110)、時鐘芯片(DS1302)等功能模塊,設計了地震檢測報警系統。地震波中橫波與縱波的傳播速度不同,危害程度也不同。用三軸加速度傳感器分別檢測橫波和縱波,解決了地震報警系統成本高、不適合廣泛普及的問題[5]。報警系統工作原理如圖1所示。

圖1 報警系統工作原理
三軸加速度傳感器將檢測到的三軸(水平分量X軸、Y軸,垂直分量Z軸)地震加速度,分別轉換成14位數字編碼,通過I2C數據總線傳遞給單片機處理;系統運行自主編寫的程序后,對三軸加速度作矢量合成并獲得對應震級。根據震級烈度表,驅動單片機產生不同的占空比去驅動蜂鳴器發出不同的報警音,液晶顯示器顯示地震發生時間及震級。用戶通過按鍵與報警系統交互,如調整時間或終止錯誤報警等。
單片機模塊與加速度傳感器模塊、液晶顯示模塊串行通信,減少了IO口的使用,有利于二次開發及靈活應用各種調試手段[6]。硬件系統接線如圖2所示。
通過測量三軸重力加速度間接獲得對應震級。表1是國家質量技術監督局發布的《中國地震烈度表》[7]。

表1 中國地震烈度表

圖2 硬件系統接線圖
報警系統中主控單片機要控制的外部接口較多,但自帶64KB的Flash存儲空間。加入所有接口程序的同時也把表1加入到程序查詢表中。插值法精度高且穩定,占用系統資源少。為了直觀顯示采樣點震級與加速度值關系,用插值法擬合表1中數據,得到圖3所示的震級與地震加速度關系仿真圖。

圖3 震級與地震加速度關系仿真圖
按照電路功能模塊在系統中的作用,合理選擇芯片并設計控制方法。單片機控制系統外部接口并協調各個模塊工作、處理信息數據、實現各類報警功能。
選用的單片機系統資源豐富,開發軟件功能強大。所用的16MHz外部無源晶振不但準確還可超頻運行,加快了程序響應時間[8]。單片機控制模塊接線圖[9]見圖4。

圖4 單片機控制模塊接線圖
選用的三軸加速度傳感器有±2g/±4g/±8g動態量程選擇;使用I2C數字輸出接口,最高傳輸頻率為2.25MHz,保證了系統的實時性。有良好的靜態偏壓穩定性和靈敏度,無需使用額外的溫度補償電路,最大限度地減少量化誤差的非線性[10]。
加速度傳感器模塊接線圖見圖5。模塊由穩壓電源(MIC5205)供電;傳感器SCL腳與SDA腳為I2C通信口,按標準接上拉電阻;與外部相連的IO口都串聯1kΩ電阻做過流保護。

圖5 加速度傳感器模塊接線圖
人機交互模塊有液晶顯示屏和4個功能按鍵。顯示屏自帶PCD8544控制器,實時顯示當前震級、當前時間、電池剩余量。用字模提取軟件制作了漢字及圖形的單片機顯示字庫,圖6為字模提取軟件界面。液晶屏分辨率為48像素×84像素,采用英文字母為5像素×8像素、漢字為12像素×16像素就可清楚顯示。程序處理時根據其顯示控制器尋址原理倒序,8位為一列的編碼形式輸出;通信時使用PCD8544控制器指定的串行通信方式[11]。

圖6 字模提取軟件界面
聲音報警模塊由單片機PWM輸出口、NPN型三極管、蜂鳴器組成。根據音調越高對應地震烈度越強的編程思想,占空比由編寫的程序根據對應震級范圍查表得到。單片機IO口輸出不同頻率到三極管基極使蜂鳴器發出不同音調。同時,單片機記錄震動時間并由時鐘芯片顯示。該時鐘芯片自帶三線接口與CPU同步通信,一次傳送多字節時鐘信號。
單片機軟件程序流程圖如圖7所示。
系統初始化:向時鐘寄存器寫入初始時間;對傳感器設置工作方式;液晶屏清零并寫入初始震級0.0和當前時間;報警模塊定義程序運行中用到的各類數組。
系統主循環:三軸加速度模塊完成數據轉換后向單片機發送數據,程序利用采樣數值計算對應震級并保存到數組中。當液晶顯示器定時刷新中斷溢出時程序跳入中斷程序,屏幕顯示震級、地震時間、電池剩余量等。
執行鍵盤掃描程序:無按鍵操作直接跳過剩下部分;按鍵按下才按照其功能處理,并進入新一輪循環。
震級轉換程序流程圖如圖8所示。

圖7 單片機軟件程序流程圖

圖8 震級轉換程序流程圖
單片機用普通IO口方式,用編程模擬I2C總線時序與加速度傳感器。上電時配置傳感器內部寄存器,設定為14位精度、2g量程;啟動傳感器內部的數據采集完成初始化。
震級轉換程序等待加速度傳感器完成一次數據采集后,通過程序轉換成對應三軸加速度并矢量合成[12],與前次加速度矢量比較,計算出地震產生的加速度;轉換成地震烈度后,保存在程序中的地震烈度變量內。
鍵盤掃描及設定程序流程圖見圖9。
若無按鍵按下則返回主程序;若按鍵按下則查詢按鍵編號及對應功能;若錯誤報警可按鍵停止;若按下時間設置鍵,可設置時間并寫入時鐘寄存器;若都不是則為誤操作而返回主程序。
液晶顯示的作用是直接觀察其他器件調試結果。對液晶屏定時全屏掃描保證信息實時更新,但占用系統資源多使系統性能下降;屏幕頻繁閃爍使顯示內容不易看清。為此,研發了“定時按需刷新”方法,即刷新前簡單判斷:如果下一次顯示內容與原先一致就保留,而僅在主程序中循環刷新時間顯示。液晶顯示程序流程圖如圖10所示。

圖9 鍵盤掃描及設定程序流程圖
液晶顯示器刷新程序寫在定時器中斷服務程序中。若定時器無溢出而產生中斷則不刷新;反之,則程序跳到定時器中斷服務程序內,將溢出清零后開啟下一次定時。再檢查本次要刷新震級與上次已顯示震級是否一樣,是則就不刷新;否則先檢查個位數,由整數確定地震烈度并由報警程序語音報警。此后,在液晶顯示器上刷新震級得出相應震級條形圖;震級顯示后再顯示當前電池容量與刷新時間等。

圖10 液晶顯示程序流程圖
將加速度傳感器靜置與桌面上,測得無明顯震動(靜態)時的重力加速度時間曲線見圖11。測得有明顯震動(動態)時的重力加速度時間曲線見圖12[13]。

圖11 60s內重力加速度時間曲線(無明顯震動)

圖12 30s內重力加速度時間曲線(有明顯震動)
一般的地震波傳播頻率較低,將圖11與圖12對比,震動信號強度差別明顯。例如,選擇圖11所示的重力加速度值0.012g作為加速度閾值,通過軟件低通濾波,濾除偶然的尖峰或其他干擾信號后,就能獲取正確的地震波信號;然后,再進行數據處理并轉換得到震級信息,提高報警有效性。
(1)地震報警器安置在普通住房里。實驗證明,模擬地震活動時報警器實現了聲音報警;同時,比較精確地記錄和顯示出震級大小及地震時間等信息。
(2)利用地震三軸加速度與震級之間關系進行地震預警,是切實可行的有效方法,對于在地震預報不成熟的情況下減輕地震災害,具有積極的現實意義。
(3)地震報警器設計新穎,靈敏度較高,不需復雜調試即可使用。
(4)后續研制可開發系列應急功能,如接入應急照明和樓宇報警系統等。
(
)
[1]周發江.地震危害及地震預警研究[J].改革與開放,2010(4):108.
[2]孫長圣,高軍,馬玉春.普及型地震報警系統的研究[J].學術問題研究:綜合版,2010(2):72-74.
[3]袁志祥,單修政,徐世芳,等.地震預警技術綜述[J].自然災害學報,2007(12):216-222.
[4]付小寧,嚴正國.加速度過阻尼地震檢波器測量的研究[J].傳感器技術,2004,23(9):16-17.
[5]宗赤.基于加速度傳感器的地震檢波器設計[J].新器件新技術,2011(1):49-51.
[6]陳軍統,潘再平,楊舒捷.基于9S12XS128單片機煤氣報警器設計[J].制造業自動化,2012(3下):132-135.
[7]國家質量技術監督局.GB/T 17742—2008中國地震烈度表[S].北京:中國標準出版社,2008.
[8]王軍琴,李會武.基于 MC9S12XS128的單片機開發板的設計[J].現代電子技術,2011(7):65-67.
[9]王宜懷,曹金華.嵌入式系統設計實戰:基于飛思卡爾S12X微控制器[M].北京:北京航空航天大學出版社,2011.
[10]石云波,趙悅,唐軍,等.單片三軸大量程加速度傳感器性能測試與分析[J].傳感技術學報 ,2012(9):1236-1241.
[11]許洪光,李發明,陳春雨,等.NOKIA移動電話液晶顯示模塊LPH7366原理及其應用[J].國外電子元器件,2004(2):54-57.
[12]張鑫,孫新香.基于MMA7260QT三軸加速度傳感器的跌倒探測儀的研制[J].世界電子元器件,2008(1):89-94.
[13]王榮,章韻,陳建新.基于三軸加速度傳感器的人體跌倒檢測系統設計與實現[J].計算機應用,2012(5):259-261.