文獻標識碼: A
DOI:10.16157/j.issn.0258-7998.2015.07.008
中文引用格式: 勇婭詢,,劉維亭,,劉懷芝,等. 基于ARM9和Linux的風暴潮監(jiān)控系統(tǒng)設計[J].電子技術(shù)應用,,2015,,41(7):30-32,36.
英文引用格式: Yong Yaxun,,Liu Weiting,,Liu Huaizhi,et al. The design of storm surge monitoring system based on ARM9 and Linux[J].Application of Electronic Technique,,2015,,41(7):30-32,36.
0 引言
風暴潮指由強烈大氣擾動,如熱帶氣旋(臺風,、颶風)、溫帶氣旋(寒潮)等引起的海面異常升降現(xiàn)象,。有人稱風暴潮為“風暴海嘯”或“氣象海嘯”,,在我國歷史文獻中多稱為“海溢”、“海侵”,、“海嘯”及“大海潮”等,,所以又把風暴潮災害稱為“潮災”。風暴潮的空間范圍一般由幾十公里至上千公里,,時間尺度或周期約為1~100 h,,介于地震海嘯和低頻天文潮波之間。較大的風暴潮,,特別是風暴潮和天文潮高潮疊加時,,會引起沿海水位暴漲,海水倒灌,,狂濤惡浪,,沖毀海堤海塘,吞噬碼頭,、工廠,、城鎮(zhèn)和村莊,使物資不得轉(zhuǎn)移,,人畜不得逃生,,從而釀成巨大災難[1-2]。
平潭,、霞浦兩地位于福建省沿海地區(qū),,處于南亞熱帶北界,,以平潭為例,在季風環(huán)流影響下,,全年大于等于8級的大風日數(shù),,中部有90天左右,沿海有130天左右,。每年影響平潭的臺風有3~5次,,最多達11次,強度大,,速度常達40 m/s以上,,可以說幾乎一年四季都有大風出現(xiàn)。特殊的地理位置與氣候環(huán)境使得兩地存在風暴潮的威脅,,因而建立風暴潮監(jiān)控系統(tǒng)勢在必行,。
1 系統(tǒng)的整體設計
系統(tǒng)需實時顯示目標海堤視頻信息,且對接收的數(shù)據(jù)進行查詢,、分析,、管理及顯示等。系統(tǒng)示意圖如圖1所示[3],。
系統(tǒng)流程:控制器定時讀取傳感器以及波浪儀數(shù)據(jù),,保存在SD卡中,并定時上傳數(shù)據(jù)至主臺保存;光控開關(guān)在天氣照度比較弱的情況下自動打開,,因為光控設備有壽命,,因而同時設置軟件判斷程序,設置定時開關(guān)時間,使照明系統(tǒng)打開,以確保攝像頭在黑暗情況下能夠拍攝到清晰的圖像,;所有數(shù)據(jù)經(jīng)過交換機接入因特網(wǎng),,通過因特網(wǎng)將數(shù)據(jù)上傳至主站或者PC主機,可以遠程登錄該系統(tǒng)進行相關(guān)操作,。
1.1 系統(tǒng)的硬件設計
綜合考慮系統(tǒng)功能的實現(xiàn)和當今嵌入式系統(tǒng)的發(fā)展趨勢,,在硬件平臺的構(gòu)建上,MCU采用Atmel公司AT91SAM9G35,,系統(tǒng)的硬件框圖如圖2所示[4],。
AT91SAM9G35采用ARM926EJ-S ARM Thumb核,其主要資源有1個LCD控制器以及觸摸板控制,、高速USB2.0,、10/100 Mb/s以太網(wǎng)控制器,支持SD卡SDIO模式等,,主頻為400 MHz,,適用于樓宇自動化、數(shù)據(jù)記錄儀,、POS機,、報警系統(tǒng)和醫(yī)療設備等,。
1.2 外接設備與主要模塊功能的實現(xiàn)
1.2.1 供電系統(tǒng)照明系統(tǒng)
供電系統(tǒng)采用市電和太陽能發(fā)電互補,主電采用交流220 V市電,,副電采用太陽能發(fā)電,,通過自動切換開關(guān)進行切換,保證在無市電的情況下本系統(tǒng)能可靠運行,。交流電經(jīng)過防雷防浪涌器件接入系統(tǒng),,把外部干擾降至最低。
為確保攝像頭在黑暗情況下能夠拍攝到清晰的圖像,,在設計過程中,,硬件上采用光敏電阻,在軟件上,,針對設備光線阻擋干擾問題進行算法編寫,,定時檢測A/D采樣數(shù)據(jù),光控開關(guān)在天氣照度比較弱且持續(xù)超過設定時間的情況下自動打開,,照明系統(tǒng)隨之打開,。照明系統(tǒng)的燈采用節(jié)能LED燈,功率為30 W,,在保證光照度夠用的情況下最大限度節(jié)能,。
1.2.2 數(shù)據(jù)存儲部分
視頻數(shù)據(jù)存儲采用硬盤,硬盤容量為2 T,,可以連續(xù)保存100天錄像數(shù)據(jù)。海洋要素信息保存至SD卡,,每分鐘保存一次數(shù)據(jù),,SD卡采用16 GB容量卡,可以保存5年以上的數(shù)據(jù),。只要網(wǎng)絡暢通,保存的數(shù)據(jù)就能實時上傳到主機,。
1.2.3 傳感器與波浪儀的選擇
風速風向數(shù)據(jù)采集采用美R.M.YOUNG公司生產(chǎn)的05103L型標準海洋型風速風向傳感器。風速風向傳感器傳輸采用標準的兩線制方式,,輸出信號為標準的4~20 mA模擬量信號,,其抗干擾能力好,傳輸距離長,。前級信號通過LC電路濾波,,濾除干擾;采樣電路采用高精度低溫漂的采樣電阻,,保證采樣精度可靠精確,;后級信號采用運放跟隨接法,提高輸入阻抗,,降低輸出阻抗,,保證信號可靠準確,,最后進入高精度A/D轉(zhuǎn)換模塊進行轉(zhuǎn)換。
氣壓傳感器采用美國Setra 278型號的優(yōu)質(zhì)傳感器,,氣壓傳感器輸出信號為0~5 V的氣壓信號,,輸出電壓范圍較寬,超出A/D轉(zhuǎn)換器量程,,因此采用高精度低溫漂的電阻進行分壓,,分壓后信號經(jīng)過運放跟隨,最后進入高精度A/D轉(zhuǎn)換模塊進行轉(zhuǎn)換,。信號前級采用阻容濾波,,傳感器直接就近安裝,縮短引線,,保證采樣信號準確可靠,。
電路設計為避免傳感器短路故障而影響系統(tǒng)工作,在供電部分加入了自恢復保險絲,,提高了系統(tǒng)運行的可靠性,。
波浪儀采用SBY1-1 型壓力式波浪儀,其具有精度高,、穩(wěn)定性好,、抗腐蝕、抗磨損和抗沖擊性好等優(yōu)點,。由于測量膜片表面平整,,直接與海水大面積接觸,有效地避免了傳壓孔被泥沙堵塞的問題,。它的工作原理是在一定水深范圍內(nèi),,海面波高的變化會引起水壓的變化。因此,,在某一深度上可以用壓力傳感器測出其壓力的變化,,并由壓力的變化反推出表面波的變化。
2 系統(tǒng)的軟件設計
根據(jù)ARM9處理器及其各種外圍硬件資源的特性,,軟件部分主要包含圖像釆集,、壓縮編碼、數(shù)據(jù)處理及本地存儲,、網(wǎng)絡通信的設計,,驅(qū)動部分主要包括USB攝像頭的驅(qū)動等。圖3為整個系統(tǒng)的軟件框架[5],。
2.1 嵌入式軟件平臺的構(gòu)建
在裁減和定制Linux,、運用嵌入式系統(tǒng)之前,由于嵌入式開發(fā)系統(tǒng)存儲大小有限,通常需要在PC上建立一個用于目標板的交叉編譯環(huán)境,。在創(chuàng)建交叉編譯環(huán)境后,,從u-boot官網(wǎng)上面下載u-boot源碼包,進行u-boot移植[6],。完成u-boot的移植之后,,就可以開始創(chuàng)建嵌入式Linux系統(tǒng)了,一個完整的嵌入式Linux系統(tǒng)包括Linux內(nèi)核,、根文件系統(tǒng)以及應用程序等[7],。
根據(jù)Linux的結(jié)構(gòu)編寫風暴潮監(jiān)控系統(tǒng)的應用程序,數(shù)據(jù)采集處理程序的流程圖如圖4左半邊,。系統(tǒng)在傳感器,、波浪儀采集到數(shù)據(jù)以后,定時計數(shù)器也同步啟動,,將設定時間內(nèi)所采集到的數(shù)據(jù)全部都存入SD卡中,,對于異常數(shù)據(jù)進行處理,將這些數(shù)據(jù)中的最小值和最大值刪除然后取平均,。數(shù)據(jù)處理流程圖如圖4右邊所示,。
2.2 視頻采集模塊和編解碼設計
視頻采集模塊的功能是從USB攝像頭設備中讀取視頻幀數(shù)據(jù),并以一定格式保存。USB攝像頭屬于視頻類設備,,在目前的Linux核心中,,視頻部分的標準是video for Linux(簡稱v4L)。這個標準定義了一套接口,,內(nèi)核,、驅(qū)動、應用程序以這個接口為標準進行交流[8],。在Linux中,,視頻設備文件可以像普通文件一樣對其進行讀寫,視頻采集流程序框圖如圖5所示[9],。
在嵌入式編解碼軟件設計上,,應用開源FFmpeg方案實現(xiàn)視頻壓縮編碼,。FFmpeg是在Linux平臺下開發(fā)的音視頻編解碼庫,,提供了錄制、轉(zhuǎn)換以及流化音視頻的完整解決方案,,且具有跨平臺的特性,,廣泛應用于嵌入式設備中。當前主流的視頻壓縮技術(shù)主要有3種,,分別為JPEG標準,、MPEG標準、H.26X標準[10],。表1列出了3種標準的壓縮比,、應用場合和采用的主要編碼技術(shù),。
由表1可知,從壓縮比率上看,,JPEG壓縮比為30~50,,MPEG-4為100~150,H.264為200,,H.264標準能達到較高的壓縮比率,。因為視頻監(jiān)控要求壓縮比最高,且能夠在有限的存儲空間內(nèi)盡可能多地存放視頻信息。所以,系統(tǒng)選用H.264標準作為壓縮方案,。
由于視頻流對數(shù)據(jù)傳輸設備信號要求高,,所以采用有線傳輸方式,將數(shù)據(jù)通過以太網(wǎng)傳輸至主機進行最終的分析和處理,。
3 數(shù)據(jù)分析與界面顯示
完成交叉編譯平臺的搭建,構(gòu)建u-boot的移植,、內(nèi)核的移植、根文件系統(tǒng),,然后運行PC上的Linux操作系統(tǒng),,得到的結(jié)果如圖6所示平臺界面。
圖6是上位機顯示界面,。從圖6可以看出界面實時顯示最新的數(shù)據(jù)時間以及風速,、風速等級、風向,、氣壓的最新數(shù)據(jù)值,。顯示海浪的最新數(shù)據(jù)時間以及最大波高、波周期,,1/10波高,、波周期,1/3波高,、波周期和平均波高,、波周期。顯示所觀測點的實時視頻,,其中控制功能包括:連接視頻,、焦距調(diào)整、視頻圖片抓取,、視頻錄像,、預設置點的包存及載入等。其中視頻圖片抓取功能為選擇保存圖片文件的位置及文件名稱,,程序自動抓取當前的最新視頻,,保存為JPG格式的圖片文件;視頻錄像功能為點擊開始錄像,系統(tǒng)自動保存實時視頻為視頻文件,,視頻格式為mp4標準壓縮格式,,可以選擇常用的視頻播放工具來播放該視頻錄像文件。
4 結(jié)束語
本文針對平潭和霞浦的地形,,設計了風暴潮監(jiān)控系統(tǒng),,通過測試該系統(tǒng)實現(xiàn)了現(xiàn)場高清、高幀數(shù)視頻流數(shù)據(jù)的獲取與存儲,,視頻流資料的實時傳輸與監(jiān)控,,接收端視頻流資料的自動獲取、存儲,、查詢等功能,;進行了平臺數(shù)據(jù)集成管理,平臺軟件采用可視化管理,,可通過視頻實時看到現(xiàn)場海浪情況并實現(xiàn)了集成數(shù)據(jù)結(jié)果顯示,,如坡前波浪信息、氣象,、海洋站潮位資料等,,整個系統(tǒng)適用于沿海地區(qū)對風暴潮的監(jiān)控,易于推廣,。
參考文獻
[1] 葉琳,,于福江.我國風暴潮災的長期變化與預測[J].海洋預報,2002,,19(1):89-96.
[2] 楊桂山.中國沿海風暴潮災害的歷史變化及未來趨向[J].自然災害學報,,2000,9(3):24-30.
[3] 陽韜.基于ARM的無線視頻監(jiān)控系統(tǒng)設計[D].北京:北京交通大學,,2013.
[4] 彭鐵剛,,劉國繁,曹少坤,,等.基于ARM的嵌入式視頻監(jiān)控系統(tǒng)的設計[J].計算機工程與設計,,2010,31(6):1191-1194.
[5] 丁秩.基于嵌入式的無線圖像監(jiān)控系統(tǒng)的設計與實現(xiàn)[D].武漢:武漢理工大學,,2006.
[6] 周鵬.嵌入式Linux基礎教程[M].北京:人民郵電出版社,,2012.
[7] 陳賾,秦貴,,徐華中,,等.ARM9嵌入式技術(shù)及Linux高級實踐教程[M].北京:北京航空航天大學出版社,,2005.
[8] 段智文,,陳惠.基于video for Linux內(nèi)核的USB攝像頭視頻信號采集實現(xiàn)[J].價值工程,2011,30(5):152-153.
[9] 金余義.基于ARM和嵌入式Linux船舶氣象儀的數(shù)據(jù)采集處理系統(tǒng)的開發(fā)[D].山東:中國海洋大學,,2010.
[10] 路錦正.MPEG-4/H.264視頻編解碼工程實踐[M].北京:電子工業(yè)出版社,,2011.