基于DM365的便攜監控系統解決方案
引言
本文引用地址:http://www.104case.com/article/201610/309171.htm隨著人們安全意識的日益提高,監控設備的需求量也逐步增加,越來越多的場合需要使用嵌入式監控設備來進行數據記錄和安全保障。采用嵌入式監控設備,可以代替肉眼,實現全面、安全、穩定的監控。便攜嵌入式監控設備屬于嵌入式監控設備中特殊的一類,設備體積小、重量輕,具有隨身攜帶、工作快速、安全穩定、長時間續航等特點。該設備多用于記錄執法過程、突發交通事件等,以便得到及時、可靠的現場證據,既避免了傳統監控設備難以隨身攜帶、具有監控死角的問題,又避免了由于缺乏足夠的現場證據而出現誤判的情況。基于便攜嵌入式設備的特點,為其配備高效的通信技術可以增強設備的實際應用價值。因此,基于TMS320DM365的便攜監控系統解決方案具有一定實際意義。
1 硬件設計
1.1 硬件設備概述
嵌入式設備具有基本的硬件體系,大致包括以下3類組成部件:
①核心部件:微處理器、時鐘電路。
②主要部件:存儲器件、測試通道器件、人機接口部件、通信接口部件。
③基礎部件:電源供電電路、電路監控電路、復位電路、電磁兼容與干擾抑制EMC/EMI電路等。
便攜嵌入式監控設備選擇硬件時,要考慮到處理核心的運算能力是否滿足高清音頻與視頻的采集、處理需求;存儲設備是否有足夠空間容納數據量較大的高清音頻、視頻數據;通信設備能否實現數字信號的高速、穩定、安全傳輸。滿足上述功能的同時,因為便攜嵌入式監控設備的特殊性,要盡量選擇功耗較低的硬件設備,并且在滿足基本需求后,應對其他設備進行裁剪,例如顯示/打印設備、鍵盤輸入設備等。
1.2 硬件設備設計方案
德州儀器公司的TMS320DM365(以下簡稱DM365)具有較快的運算速度,在編碼時可以使用協處理器進行加速,且支持大容量存儲介質等特點,在功能上足以滿足監控設備的需求。同時,其外圍電路設計簡單,可以很大程度上縮小設備尺寸;處理核心為ARM內核,功耗相對較低;內存使用低功耗和小體積的mDDR作為內存模塊;選用Micro SD卡作為存儲設備,用其代替NAND Flash來存儲系統及應用程序;通信使用USB接口和WiFi模塊;視頻采集使用APTINA公司的AR0330模塊。硬件設計框圖如圖1所示。

2 軟件設計
2.1 軟件架構設計
Linux系統是一種基于硬件設備的類Unix操作系統,包含硬件驅動、電源管理、文件系統以及線程管理等模塊,提供基本的系統調用。Linux提供符合POSIX標準的C/C++運行庫,基于DM365硬件設備,需要使用UBL和Uboot來引導啟動Linux系統,應用軟件基于此系統設計。系統結構圖如圖2所示。

便攜監控系統應用軟件建立在基本Linux系統上,包括主線程以及4個主要子線程,分別用于視頻處理、音頻處理、通信管理以及設備管理。軟件運行的流程圖如圖3所示。

2.2 音頻/視頻采集、編碼與存儲設計
音頻使用DM365處理器自帶的音頻采集方式,編碼采用AAC壓縮方式,使用了全新的算法進行編碼,具有更高的性價比。利用AAC格式,可使聲音質量沒有明顯降低的前提下,體積更小。在軟件實現過程中,使用TI公司結合Linux系統設計的API函數;使用DRV_audioOpen()與DRV_audioRead()函數實現音頻硬件的初始化與讀入數據;使用ALG_ audEncRun()函數進行音頻的AAC編碼,并編寫程序,實現編碼后的數據存儲。在上述過程中,需要對API函數進行參數配置。處理流程如圖4所示。

視頻的采集是通過I2C接口的圖像傳感器AR0330讀入視頻流信息,經過片載ISP進行自動白平衡,每次讀入1幀圖像,然后進行圖像編碼并保存。視頻編碼采用JPEG方式,封裝為.jpg圖片文件進行存儲。使用DRV_captureStart()函數實現攝像頭的初始化操作;調用ALG_aewbRun()函數進行自動曝光與自動白平衡;使用DRV_ipipeGetRszBuf()函數讀入1幀圖像;將數據傳入SnapshotFrameDataEx()函數,進行JPEG編碼。程序會啟動存儲線程將編碼后的文件保存在存儲設備中,然后啟動上傳線程,將圖像上傳至客戶端。視頻處理序列圖如圖5所示。

2.3 通信方案設計
本方案使用基于WiFi技術的無線傳輸方式作為基礎媒介,利用軟件實現基于TCP/IP協議的Socket傳輸策略,在保證傳輸速度的同時,也保證了數據傳輸的穩定性和安全性。實現無線網絡接入點(AP)的架設,使其他設備(諸如計算機、手機、平板電腦等)可以通過WPA2加密方式連接到便攜監控設備,在保證足夠安全性的同時實現數據的交換。
在實現AP的架設后,通過軟件實現Socket服務器,保證傳輸功能的完整實現。建立連接以后,使用單獨的線程完成監控設備與客戶端設備的數據通信。
在該線程中,實現實時監控數據的上傳與接收客戶端發來的控制指令并執行的功能。通信線程序列圖如圖6所示。

2.4 系統運行方案設計
在監控系統運行過程中,微處理器、存儲設備以及其他必要電路必須保持時刻供電狀態,其他設備則可以依據使用情況進行電源通斷的管理。因此,為了更好地控制功耗,需要在軟件上對視頻采集設備和通信設備進行電源管理。
對于視頻采集設備而言,在便攜監控設備運行過程中使用每秒拍照3次的運行方式,既可以保證監控的連續性,又可以控制視頻采集設備以及圖像編碼器的功耗。在需要進行拍照時,啟動視頻采集設備和圖像編碼加速器,進行圖像采集與編碼。當3次拍照結束后,暫停視頻采集設備,并關閉圖像編碼加速器的電源。本設計的圖像采集速度為30 fps,因此以上過程可以使得系統90%的時間處于低功耗狀態,從而在很大程度上降低了系統的平均功耗。
對于通信設備而言,使用WiFi模塊進行數據通信。在系統不需要對外發送數據時,通過軟件使WiFi設備的驅動處于卸載狀態,此時WiFi設備的功耗很低。當需要進行數據通信時,加載WiFi設備的驅動以實現數據傳輸。傳輸完畢后,可關閉WiFi功能,卸載驅動,使WiFi設備恢復到低功耗狀態。
2.5 Android手機端方案設計
本文使用基于Android系統的手機軟件作為客戶端軟件,其與便攜監控系統進行通信,實現監控畫面的實時顯示與存儲,并對其進行控制。因此需要對Socket通信、圖片顯示與存儲、本地文件寫入與讀取以及界面繪制、線程操作等進行設計。實現的具體功能有:①通過IP地址與端口號連接便攜監控設備上的服務器;②接收并實時顯示監控畫面,可選擇本地存儲收到的圖片;③對服務器的AP參數、系統時間進行配置,并保存配置信息;④控制監控系統對監控畫面的存儲,查詢可用空間,格式化監控系統的存儲區域。
客戶端軟件與便攜監控設備上的服務器通過Socket進行通信,并實現上述功能,因此需要建立簡單的通信協議。對于不同操作定義不同命令控制字,命令控制字占用4個字節。服務器接收到命令控制字后,對其合法性進行判斷,并根據預設的對應功能進行執行。客戶端通過接收并判斷服務器端返回的命令控制字來進行下一步操作。
結語
設計并實現了便攜監控系統的硬件設備,并對軟件方案進行了測試。實驗結果表明,本文提出的基于DM365的便攜監控系統解決方案可以有效減小硬件體積,并降低功耗。通過與其他便攜設備的交互,提高了設備的靈活性與可用件。
評論