<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 基于DM365的便攜監(jiān)控系統(tǒng)解決方案

          基于DM365的便攜監(jiān)控系統(tǒng)解決方案

          作者: 時(shí)間:2016-10-22 來源:網(wǎng)絡(luò) 收藏

          引言

          本文引用地址:http://www.ex-cimer.com/article/201610/309171.htm

          隨著人們安全意識(shí)的日益提高,監(jiān)控設(shè)備的需求量也逐步增加,越來越多的場合需要使用嵌入式監(jiān)控設(shè)備來進(jìn)行數(shù)據(jù)記錄和安全保障。采用嵌入式監(jiān)控設(shè)備,可以代替肉眼,實(shí)現(xiàn)全面、安全、穩(wěn)定的監(jiān)控。便攜嵌入式監(jiān)控設(shè)備屬于嵌入式監(jiān)控設(shè)備中特殊的一類,設(shè)備體積小、重量輕,具有隨身攜帶、工作快速、安全穩(wěn)定、長時(shí)間續(xù)航等特點(diǎn)。該設(shè)備多用于記錄執(zhí)法過程、突發(fā)交通事件等,以便得到及時(shí)、可靠的現(xiàn)場證據(jù),既避免了傳統(tǒng)監(jiān)控設(shè)備難以隨身攜帶、具有監(jiān)控死角的問題,又避免了由于缺乏足夠的現(xiàn)場證據(jù)而出現(xiàn)誤判的情況。基于便攜嵌入式設(shè)備的特點(diǎn),為其配備高效的通信技術(shù)可以增強(qiáng)設(shè)備的實(shí)際應(yīng)用價(jià)值。因此,基于解決方案具有一定實(shí)際意義。

          1 硬件設(shè)計(jì)

          1.1 硬件設(shè)備概述

          嵌入式設(shè)備具有基本的硬件體系,大致包括以下3類組成部件:

          ①核心部件:微處理器、時(shí)鐘電路。

          ②主要部件:存儲(chǔ)器件、測試通道器件、人機(jī)接口部件、通信接口部件。

          ③基礎(chǔ)部件:電源供電電路、電路監(jiān)控電路、復(fù)位電路、電磁兼容與干擾抑制EMC/EMI電路等。

          便攜嵌入式監(jiān)控設(shè)備選擇硬件時(shí),要考慮到處理核心的運(yùn)算能力是否滿足高清音頻與視頻的采集、處理需求;存儲(chǔ)設(shè)備是否有足夠空間容納數(shù)據(jù)量較大的高清音頻、視頻數(shù)據(jù);通信設(shè)備能否實(shí)現(xiàn)數(shù)字信號(hào)的高速、穩(wěn)定、安全傳輸。滿足上述功能的同時(shí),因?yàn)楸銛y嵌入式監(jiān)控設(shè)備的特殊性,要盡量選擇功耗較低的硬件設(shè)備,并且在滿足基本需求后,應(yīng)對(duì)其他設(shè)備進(jìn)行裁剪,例如顯示/打印設(shè)備、鍵盤輸入設(shè)備等。

          1.2 硬件設(shè)備設(shè)計(jì)方案

          德州儀器公司的(以下簡稱DM365)具有較快的運(yùn)算速度,在編碼時(shí)可以使用協(xié)處理器進(jìn)行加速,且支持大容量存儲(chǔ)介質(zhì)等特點(diǎn),在功能上足以滿足監(jiān)控設(shè)備的需求。同時(shí),其外圍電路設(shè)計(jì)簡單,可以很大程度上縮小設(shè)備尺寸;處理核心為ARM內(nèi)核,功耗相對(duì)較低;內(nèi)存使用低功耗和小體積的mDDR作為內(nèi)存模塊;選用Micro SD卡作為存儲(chǔ)設(shè)備,用其代替NAND Flash來存儲(chǔ)系統(tǒng)及應(yīng)用程序;通信使用USB接口和WiFi模塊;視頻采集使用APTINA公司的AR0330模塊。硬件設(shè)計(jì)框圖如圖1所示。

          a.jpg

          2 軟件設(shè)計(jì)

          2.1 軟件架構(gòu)設(shè)計(jì)

          Linux系統(tǒng)是一種基于硬件設(shè)備的類Unix操作系統(tǒng),包含硬件驅(qū)動(dòng)、、文件系統(tǒng)以及線程管理等模塊,提供基本的系統(tǒng)調(diào)用。Linux提供符合POSIX標(biāo)準(zhǔn)的C/C++運(yùn)行庫,基于DM365硬件設(shè)備,需要使用UBL和Uboot來引導(dǎo)啟動(dòng)Linux系統(tǒng),應(yīng)用軟件基于此系統(tǒng)設(shè)計(jì)。系統(tǒng)結(jié)構(gòu)圖如圖2所示。

          b.jpg

          應(yīng)用軟件建立在基本Linux系統(tǒng)上,包括主線程以及4個(gè)主要子線程,分別用于視頻處理、音頻處理、通信管理以及設(shè)備管理。軟件運(yùn)行的流程圖如圖3所示。

          c.jpg

          2.2 音頻/視頻采集、編碼與存儲(chǔ)設(shè)計(jì)

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

          d.jpg

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

          e.jpg

          2.3 通信方案設(shè)計(jì)

          本方案使用基于WiFi技術(shù)的無線傳輸方式作為基礎(chǔ)媒介,利用軟件實(shí)現(xiàn)基于TCP/IP協(xié)議的Socket傳輸策略,在保證傳輸速度的同時(shí),也保證了數(shù)據(jù)傳輸?shù)姆€(wěn)定性和安全性。實(shí)現(xiàn)無線網(wǎng)絡(luò)接入點(diǎn)(AP)的架設(shè),使其他設(shè)備(諸如計(jì)算機(jī)、手機(jī)、平板電腦等)可以通過WPA2加密方式連接到便攜監(jiān)控設(shè)備,在保證足夠安全性的同時(shí)實(shí)現(xiàn)數(shù)據(jù)的交換。

          在實(shí)現(xiàn)AP的架設(shè)后,通過軟件實(shí)現(xiàn)Socket服務(wù)器,保證傳輸功能的完整實(shí)現(xiàn)。建立連接以后,使用單獨(dú)的線程完成監(jiān)控設(shè)備與客戶端設(shè)備的數(shù)據(jù)通信。

          在該線程中,實(shí)現(xiàn)實(shí)時(shí)監(jiān)控?cái)?shù)據(jù)的上傳與接收客戶端發(fā)來的控制指令并執(zhí)行的功能。通信線程序列圖如圖6所示。

          f.jpg

          2.4 系統(tǒng)運(yùn)行方案設(shè)計(jì)

          在監(jiān)控系統(tǒng)運(yùn)行過程中,微處理器、存儲(chǔ)設(shè)備以及其他必要電路必須保持時(shí)刻供電狀態(tài),其他設(shè)備則可以依據(jù)使用情況進(jìn)行電源通斷的管理。因此,為了更好地控制功耗,需要在軟件上對(duì)視頻采集設(shè)備和通信設(shè)備進(jìn)行

          對(duì)于視頻采集設(shè)備而言,在便攜監(jiān)控設(shè)備運(yùn)行過程中使用每秒拍照3次的運(yùn)行方式,既可以保證監(jiān)控的連續(xù)性,又可以控制視頻采集設(shè)備以及圖像編碼器的功耗。在需要進(jìn)行拍照時(shí),啟動(dòng)視頻采集設(shè)備和圖像編碼加速器,進(jìn)行圖像采集與編碼。當(dāng)3次拍照結(jié)束后,暫停視頻采集設(shè)備,并關(guān)閉圖像編碼加速器的電源。本設(shè)計(jì)的圖像采集速度為30 fps,因此以上過程可以使得系統(tǒng)90%的時(shí)間處于低功耗狀態(tài),從而在很大程度上降低了系統(tǒng)的平均功耗。

          對(duì)于通信設(shè)備而言,使用WiFi模塊進(jìn)行數(shù)據(jù)通信。在系統(tǒng)不需要對(duì)外發(fā)送數(shù)據(jù)時(shí),通過軟件使WiFi設(shè)備的驅(qū)動(dòng)處于卸載狀態(tài),此時(shí)WiFi設(shè)備的功耗很低。當(dāng)需要進(jìn)行數(shù)據(jù)通信時(shí),加載WiFi設(shè)備的驅(qū)動(dòng)以實(shí)現(xiàn)數(shù)據(jù)傳輸。傳輸完畢后,可關(guān)閉WiFi功能,卸載驅(qū)動(dòng),使WiFi設(shè)備恢復(fù)到低功耗狀態(tài)。

          2.5 手機(jī)端方案設(shè)計(jì)

          本文使用基于系統(tǒng)的手機(jī)軟件作為客戶端軟件,其與進(jìn)行通信,實(shí)現(xiàn)監(jiān)控畫面的實(shí)時(shí)顯示與存儲(chǔ),并對(duì)其進(jìn)行控制。因此需要對(duì)Socket通信、圖片顯示與存儲(chǔ)、本地文件寫入與讀取以及界面繪制、線程操作等進(jìn)行設(shè)計(jì)。實(shí)現(xiàn)的具體功能有:①通過IP地址與端口號(hào)連接便攜監(jiān)控設(shè)備上的服務(wù)器;②接收并實(shí)時(shí)顯示監(jiān)控畫面,可選擇本地存儲(chǔ)收到的圖片;③對(duì)服務(wù)器的AP參數(shù)、系統(tǒng)時(shí)間進(jìn)行配置,并保存配置信息;④控制監(jiān)控系統(tǒng)對(duì)監(jiān)控畫面的存儲(chǔ),查詢可用空間,格式化監(jiān)控系統(tǒng)的存儲(chǔ)區(qū)域。

          客戶端軟件與便攜監(jiān)控設(shè)備上的服務(wù)器通過Socket進(jìn)行通信,并實(shí)現(xiàn)上述功能,因此需要建立簡單的通信協(xié)議。對(duì)于不同操作定義不同命令控制字,命令控制字占用4個(gè)字節(jié)。服務(wù)器接收到命令控制字后,對(duì)其合法性進(jìn)行判斷,并根據(jù)預(yù)設(shè)的對(duì)應(yīng)功能進(jìn)行執(zhí)行。客戶端通過接收并判斷服務(wù)器端返回的命令控制字來進(jìn)行下一步操作。

          結(jié)語

          設(shè)計(jì)并實(shí)現(xiàn)了便攜監(jiān)控系統(tǒng)的硬件設(shè)備,并對(duì)軟件方案進(jìn)行了測試。實(shí)驗(yàn)結(jié)果表明,本文提出的基于DM365的便攜監(jiān)控系統(tǒng)解決方案可以有效減小硬件體積,并降低功耗。通過與其他便攜設(shè)備的交互,提高了設(shè)備的靈活性與可用件。



          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();