基于DM365的便攜監(jiān)控系統(tǒng)解決方案
引言
本文引用地址:http://m.butianyuan.cn/article/201610/309171.htm隨著人們安全意識的日益提高,監(jiān)控設(shè)備的需求量也逐步增加,越來越多的場合需要使用嵌入式監(jiān)控設(shè)備來進(jìn)行數(shù)據(jù)記錄和安全保障。采用嵌入式監(jiān)控設(shè)備,可以代替肉眼,實現(xiàn)全面、安全、穩(wěn)定的監(jiān)控。便攜嵌入式監(jiān)控設(shè)備屬于嵌入式監(jiān)控設(shè)備中特殊的一類,設(shè)備體積小、重量輕,具有隨身攜帶、工作快速、安全穩(wěn)定、長時間續(xù)航等特點。該設(shè)備多用于記錄執(zhí)法過程、突發(fā)交通事件等,以便得到及時、可靠的現(xiàn)場證據(jù),既避免了傳統(tǒng)監(jiān)控設(shè)備難以隨身攜帶、具有監(jiān)控死角的問題,又避免了由于缺乏足夠的現(xiàn)場證據(jù)而出現(xiàn)誤判的情況?;诒銛y嵌入式設(shè)備的特點,為其配備高效的通信技術(shù)可以增強設(shè)備的實際應(yīng)用價值。因此,基于TMS320DM365的便攜監(jiān)控系統(tǒng)解決方案具有一定實際意義。
1 硬件設(shè)計
1.1 硬件設(shè)備概述
嵌入式設(shè)備具有基本的硬件體系,大致包括以下3類組成部件:
①核心部件:微處理器、時鐘電路。
②主要部件:存儲器件、測試通道器件、人機接口部件、通信接口部件。
③基礎(chǔ)部件:電源供電電路、電路監(jiān)控電路、復(fù)位電路、電磁兼容與干擾抑制EMC/EMI電路等。
便攜嵌入式監(jiān)控設(shè)備選擇硬件時,要考慮到處理核心的運算能力是否滿足高清音頻與視頻的采集、處理需求;存儲設(shè)備是否有足夠空間容納數(shù)據(jù)量較大的高清音頻、視頻數(shù)據(jù);通信設(shè)備能否實現(xiàn)數(shù)字信號的高速、穩(wěn)定、安全傳輸。滿足上述功能的同時,因為便攜嵌入式監(jiān)控設(shè)備的特殊性,要盡量選擇功耗較低的硬件設(shè)備,并且在滿足基本需求后,應(yīng)對其他設(shè)備進(jìn)行裁剪,例如顯示/打印設(shè)備、鍵盤輸入設(shè)備等。
1.2 硬件設(shè)備設(shè)計方案
德州儀器公司的TMS320DM365(以下簡稱DM365)具有較快的運算速度,在編碼時可以使用協(xié)處理器進(jìn)行加速,且支持大容量存儲介質(zhì)等特點,在功能上足以滿足監(jiān)控設(shè)備的需求。同時,其外圍電路設(shè)計簡單,可以很大程度上縮小設(shè)備尺寸;處理核心為ARM內(nèi)核,功耗相對較低;內(nèi)存使用低功耗和小體積的mDDR作為內(nèi)存模塊;選用Micro SD卡作為存儲設(shè)備,用其代替NAND Flash來存儲系統(tǒng)及應(yīng)用程序;通信使用USB接口和WiFi模塊;視頻采集使用APTINA公司的AR0330模塊。硬件設(shè)計框圖如圖1所示。
2 軟件設(shè)計
2.1 軟件架構(gòu)設(shè)計
Linux系統(tǒng)是一種基于硬件設(shè)備的類Unix操作系統(tǒng),包含硬件驅(qū)動、電源管理、文件系統(tǒng)以及線程管理等模塊,提供基本的系統(tǒng)調(diào)用。Linux提供符合POSIX標(biāo)準(zhǔn)的C/C++運行庫,基于DM365硬件設(shè)備,需要使用UBL和Uboot來引導(dǎo)啟動Linux系統(tǒng),應(yīng)用軟件基于此系統(tǒng)設(shè)計。系統(tǒng)結(jié)構(gòu)圖如圖2所示。
便攜監(jiān)控系統(tǒng)應(yīng)用軟件建立在基本Linux系統(tǒng)上,包括主線程以及4個主要子線程,分別用于視頻處理、音頻處理、通信管理以及設(shè)備管理。軟件運行的流程圖如圖3所示。
2.2 音頻/視頻采集、編碼與存儲設(shè)計
音頻使用DM365處理器自帶的音頻采集方式,編碼采用AAC壓縮方式,使用了全新的算法進(jìn)行編碼,具有更高的性價比。利用AAC格式,可使聲音質(zhì)量沒有明顯降低的前提下,體積更小。在軟件實現(xiàn)過程中,使用TI公司結(jié)合Linux系統(tǒng)設(shè)計的API函數(shù);使用DRV_audioOpen()與DRV_audioRead()函數(shù)實現(xiàn)音頻硬件的初始化與讀入數(shù)據(jù);使用ALG_ audEncRun()函數(shù)進(jìn)行音頻的AAC編碼,并編寫程序,實現(xiàn)編碼后的數(shù)據(jù)存儲。在上述過程中,需要對API函數(shù)進(jìn)行參數(shù)配置。處理流程如圖4所示。
視頻的采集是通過I2C接口的圖像傳感器AR0330讀入視頻流信息,經(jīng)過片載ISP進(jìn)行自動白平衡,每次讀入1幀圖像,然后進(jìn)行圖像編碼并保存。視頻編碼采用JPEG方式,封裝為.jpg圖片文件進(jìn)行存儲。使用DRV_captureStart()函數(shù)實現(xiàn)攝像頭的初始化操作;調(diào)用ALG_aewbRun()函數(shù)進(jìn)行自動曝光與自動白平衡;使用DRV_ipipeGetRszBuf()函數(shù)讀入1幀圖像;將數(shù)據(jù)傳入SnapshotFrameDataEx()函數(shù),進(jìn)行JPEG編碼。程序會啟動存儲線程將編碼后的文件保存在存儲設(shè)備中,然后啟動上傳線程,將圖像上傳至客戶端。視頻處理序列圖如圖5所示。
2.3 通信方案設(shè)計
本方案使用基于WiFi技術(shù)的無線傳輸方式作為基礎(chǔ)媒介,利用軟件實現(xiàn)基于TCP/IP協(xié)議的Socket傳輸策略,在保證傳輸速度的同時,也保證了數(shù)據(jù)傳輸?shù)姆€(wěn)定性和安全性。實現(xiàn)無線網(wǎng)絡(luò)接入點(AP)的架設(shè),使其他設(shè)備(諸如計算機、手機、平板電腦等)可以通過WPA2加密方式連接到便攜監(jiān)控設(shè)備,在保證足夠安全性的同時實現(xiàn)數(shù)據(jù)的交換。
在實現(xiàn)AP的架設(shè)后,通過軟件實現(xiàn)Socket服務(wù)器,保證傳輸功能的完整實現(xiàn)。建立連接以后,使用單獨的線程完成監(jiān)控設(shè)備與客戶端設(shè)備的數(shù)據(jù)通信。
在該線程中,實現(xiàn)實時監(jiān)控數(shù)據(jù)的上傳與接收客戶端發(fā)來的控制指令并執(zhí)行的功能。通信線程序列圖如圖6所示。
2.4 系統(tǒng)運行方案設(shè)計
在監(jiān)控系統(tǒng)運行過程中,微處理器、存儲設(shè)備以及其他必要電路必須保持時刻供電狀態(tài),其他設(shè)備則可以依據(jù)使用情況進(jìn)行電源通斷的管理。因此,為了更好地控制功耗,需要在軟件上對視頻采集設(shè)備和通信設(shè)備進(jìn)行電源管理。
對于視頻采集設(shè)備而言,在便攜監(jiān)控設(shè)備運行過程中使用每秒拍照3次的運行方式,既可以保證監(jiān)控的連續(xù)性,又可以控制視頻采集設(shè)備以及圖像編碼器的功耗。在需要進(jìn)行拍照時,啟動視頻采集設(shè)備和圖像編碼加速器,進(jìn)行圖像采集與編碼。當(dāng)3次拍照結(jié)束后,暫停視頻采集設(shè)備,并關(guān)閉圖像編碼加速器的電源。本設(shè)計的圖像采集速度為30 fps,因此以上過程可以使得系統(tǒng)90%的時間處于低功耗狀態(tài),從而在很大程度上降低了系統(tǒng)的平均功耗。
對于通信設(shè)備而言,使用WiFi模塊進(jìn)行數(shù)據(jù)通信。在系統(tǒng)不需要對外發(fā)送數(shù)據(jù)時,通過軟件使WiFi設(shè)備的驅(qū)動處于卸載狀態(tài),此時WiFi設(shè)備的功耗很低。當(dāng)需要進(jìn)行數(shù)據(jù)通信時,加載WiFi設(shè)備的驅(qū)動以實現(xiàn)數(shù)據(jù)傳輸。傳輸完畢后,可關(guān)閉WiFi功能,卸載驅(qū)動,使WiFi設(shè)備恢復(fù)到低功耗狀態(tài)。
2.5 Android手機端方案設(shè)計
本文使用基于Android系統(tǒng)的手機軟件作為客戶端軟件,其與便攜監(jiān)控系統(tǒng)進(jìn)行通信,實現(xiàn)監(jiān)控畫面的實時顯示與存儲,并對其進(jìn)行控制。因此需要對Socket通信、圖片顯示與存儲、本地文件寫入與讀取以及界面繪制、線程操作等進(jìn)行設(shè)計。實現(xiàn)的具體功能有:①通過IP地址與端口號連接便攜監(jiān)控設(shè)備上的服務(wù)器;②接收并實時顯示監(jiān)控畫面,可選擇本地存儲收到的圖片;③對服務(wù)器的AP參數(shù)、系統(tǒng)時間進(jìn)行配置,并保存配置信息;④控制監(jiān)控系統(tǒng)對監(jiān)控畫面的存儲,查詢可用空間,格式化監(jiān)控系統(tǒng)的存儲區(qū)域。
客戶端軟件與便攜監(jiān)控設(shè)備上的服務(wù)器通過Socket進(jìn)行通信,并實現(xiàn)上述功能,因此需要建立簡單的通信協(xié)議。對于不同操作定義不同命令控制字,命令控制字占用4個字節(jié)。服務(wù)器接收到命令控制字后,對其合法性進(jìn)行判斷,并根據(jù)預(yù)設(shè)的對應(yīng)功能進(jìn)行執(zhí)行。客戶端通過接收并判斷服務(wù)器端返回的命令控制字來進(jìn)行下一步操作。
結(jié)語
設(shè)計并實現(xiàn)了便攜監(jiān)控系統(tǒng)的硬件設(shè)備,并對軟件方案進(jìn)行了測試。實驗結(jié)果表明,本文提出的基于DM365的便攜監(jiān)控系統(tǒng)解決方案可以有效減小硬件體積,并降低功耗。通過與其他便攜設(shè)備的交互,提高了設(shè)備的靈活性與可用件。
評論