基于TMS320 DM355監(jiān)控服務器設計與實現(xiàn)
發(fā)布時間:2009/1/13 0:00:00 訪問次數(shù):593
1.引言
多媒體監(jiān)控一直是人們關注的應用技術熱點之一,它以直觀、方便、信息內(nèi)容豐富等特點被廣泛應用于許多場合。而隨著嵌入式系統(tǒng)和視頻壓縮技術的不斷發(fā)展,基于嵌入式技術的視頻監(jiān)控系統(tǒng)也得到了快速的發(fā)展與應用。其通過把攝像機輸出的模擬信號轉(zhuǎn)化為數(shù)字信號,再經(jīng)過嵌入式系統(tǒng)編碼和傳輸。在客戶端,通過安裝監(jiān)控軟件,或者直接通過web進行監(jiān)控。采用嵌入式linux操作系統(tǒng)的視頻監(jiān)控系統(tǒng)具備編碼處理、網(wǎng)絡通信、自動控制等強大功能,直接支持網(wǎng)絡傳輸和網(wǎng)絡管理,使得監(jiān)控范圍達到了一定的廣度。
此外,嵌入式處理器的發(fā)展也日新月異,有專注于控制的arm系列處理器,擅長快速計算的dsp處理器,還有一些針對性非常強的處理器,可以實現(xiàn)硬件視頻編解碼等。而德州儀器(ti)新近推出的針對便攜式高清(hd)視頻產(chǎn)品市場的達芬奇(davinci)處理器tms320dm355處理器,結合了它們的特長。其內(nèi)部具有一個arm9ej-s的主處理器,負責整個系統(tǒng)的控制,同時也集成了一個mpeg/jpeg協(xié)處理器,專注于mpeg/jpeg算法的實現(xiàn)。其內(nèi)部的視頻處理子系統(tǒng)(vpss)及其它外設可方便快速的實現(xiàn)視頻的采集、預處理、顯示、網(wǎng)絡傳輸?shù)裙δ。同時,其低廉的價格也為用戶降低了成本。而本設計即選用此處理器。
2.視頻監(jiān)控系統(tǒng)整體框架
本嵌入式網(wǎng)絡視頻監(jiān)控系統(tǒng)由視頻服務器、網(wǎng)絡傳輸鏈路、客戶監(jiān)控端等3部分組成。視頻服務器負責音視頻等數(shù)據(jù)的采集、壓縮處理等,網(wǎng)絡傳輸鏈路將視頻服務器壓縮和發(fā)送的多媒體數(shù)據(jù)進行傳輸,而客戶端監(jiān)控部分接收音視頻數(shù)據(jù),進行解壓、顯示以及對視頻服務器的控制等。整個系統(tǒng)的示意圖如圖1所示。
圖1視頻監(jiān)控系統(tǒng)示意圖
2.1.視頻服務器
視頻服務器采用德州儀器(ti)新近推出的達芬奇(davinci)系列處理器tms320dm355作為主處理器,接收ccd攝像頭采集的視頻信號,進行預處理及mpeg4壓縮,然后將壓縮后的數(shù)據(jù)通過網(wǎng)絡傳輸。同時,接收上位機發(fā)送的命令,解析并且執(zhí)行。每個設備都具有唯一的id,當客戶端進行連接時,服務器會首先檢查id號是否匹配,以防止惡意連接。此外,當視頻服務器運行異常時,其內(nèi)部的守護進程會進行監(jiān)視,適當?shù)臅r候進行重啟。
2.2.網(wǎng)絡傳輸鏈路
網(wǎng)絡傳輸鏈路負責多媒體數(shù)據(jù)的傳輸。此處,可以根據(jù)實際需求,進行網(wǎng)絡傳輸鏈路的選擇。局域網(wǎng)(lan)、無線局域網(wǎng)(wlan)、internet、cdma、3g等都是可供選擇的傳輸鏈路。其中,局域網(wǎng)(lan)和無線局域網(wǎng)(wlan)帶寬充足、穩(wěn)定,并且設備簡單,易于實現(xiàn),但會受到距離的限制。internet和cdma網(wǎng)絡可以使監(jiān)控距離得到擴展,但是其帶寬受限,圖像質(zhì)量會受到影響。而最新的3g網(wǎng)絡也是一個不錯的選擇,帶寬在靜止狀態(tài)下可以達到2mbps,但是其在穩(wěn)定性方面還待測試。用戶可以根據(jù)自己的需求進行選擇,或者直接搭建專線網(wǎng)絡,以實現(xiàn)各自的監(jiān)控指標。
2.3.客戶監(jiān)控端
客戶端主要與各個視頻服務器進行連接,以實現(xiàn)監(jiān)控?蛻舳丝梢圆捎胮c機或者便攜式設備,與網(wǎng)絡傳輸鏈路相連,通過上位機軟件與視頻服務器連接,接收視頻服務器發(fā)送的多媒體數(shù)據(jù),進行解碼,然后在上位機顯示。同時,向視頻服務器發(fā)送控制命令,實現(xiàn)云臺、鏡頭等的控制。
3.視頻服務器硬件設計
3.1.整體框架視頻服務器完成視頻的采集、mpeg4壓縮和網(wǎng)絡傳輸,以及云臺、鏡頭等的控制。其硬件結構框圖如圖2所示。
圖2視頻服務器硬件結構框圖
4.1.系統(tǒng)上電及引導程序
系統(tǒng)上電時,是由dm355的輸入引腳btsel[1:0]來決定從rom或者aemif啟動。此設計處選擇從rom啟動。此時,系統(tǒng)直接跳轉(zhuǎn)到內(nèi)部rom的起始地址(0x00008000)執(zhí)行指令。內(nèi)嵌的rom啟動代碼(rbl)進行一些配置操作,然后讀取bootcfg寄存器來決定是從nand、mmc/sd或者uart啟動。本設計選擇nand啟動。nandflash里預先燒寫好了u-boot、linux內(nèi)核以及根文件系統(tǒng)。nand啟動以后,會讀取bootloader的stage1部分的指令對系統(tǒng)進行必要的設置,然后將stage2部分的代碼搬移到sdram中進行執(zhí)行。當用戶選擇啟動內(nèi)核時,bootloader將內(nèi)核從nandflash里搬運到sdram,然后跳轉(zhuǎn)到內(nèi)核的起始地址進行執(zhí)行,啟動內(nèi)核。
4.2.嵌入式linux操作系統(tǒng)
嵌入式linux操作系統(tǒng)是針對不同的應用需求,對linux內(nèi)核進行裁剪修改使之能在嵌入式計算機系統(tǒng)上運行的一種操作系統(tǒng)。它開放源碼,內(nèi)核小、效率高,適用于多種cpu和硬件平臺,性能穩(wěn)定,可移植性好等特點為其開辟了一片屬于自己的空間。
本設計選擇嵌入式linux操作系統(tǒng)作為軟件平臺,實現(xiàn)各硬
1.引言
多媒體監(jiān)控一直是人們關注的應用技術熱點之一,它以直觀、方便、信息內(nèi)容豐富等特點被廣泛應用于許多場合。而隨著嵌入式系統(tǒng)和視頻壓縮技術的不斷發(fā)展,基于嵌入式技術的視頻監(jiān)控系統(tǒng)也得到了快速的發(fā)展與應用。其通過把攝像機輸出的模擬信號轉(zhuǎn)化為數(shù)字信號,再經(jīng)過嵌入式系統(tǒng)編碼和傳輸。在客戶端,通過安裝監(jiān)控軟件,或者直接通過web進行監(jiān)控。采用嵌入式linux操作系統(tǒng)的視頻監(jiān)控系統(tǒng)具備編碼處理、網(wǎng)絡通信、自動控制等強大功能,直接支持網(wǎng)絡傳輸和網(wǎng)絡管理,使得監(jiān)控范圍達到了一定的廣度。
此外,嵌入式處理器的發(fā)展也日新月異,有專注于控制的arm系列處理器,擅長快速計算的dsp處理器,還有一些針對性非常強的處理器,可以實現(xiàn)硬件視頻編解碼等。而德州儀器(ti)新近推出的針對便攜式高清(hd)視頻產(chǎn)品市場的達芬奇(davinci)處理器tms320dm355處理器,結合了它們的特長。其內(nèi)部具有一個arm9ej-s的主處理器,負責整個系統(tǒng)的控制,同時也集成了一個mpeg/jpeg協(xié)處理器,專注于mpeg/jpeg算法的實現(xiàn)。其內(nèi)部的視頻處理子系統(tǒng)(vpss)及其它外設可方便快速的實現(xiàn)視頻的采集、預處理、顯示、網(wǎng)絡傳輸?shù)裙δ。同時,其低廉的價格也為用戶降低了成本。而本設計即選用此處理器。
2.視頻監(jiān)控系統(tǒng)整體框架
本嵌入式網(wǎng)絡視頻監(jiān)控系統(tǒng)由視頻服務器、網(wǎng)絡傳輸鏈路、客戶監(jiān)控端等3部分組成。視頻服務器負責音視頻等數(shù)據(jù)的采集、壓縮處理等,網(wǎng)絡傳輸鏈路將視頻服務器壓縮和發(fā)送的多媒體數(shù)據(jù)進行傳輸,而客戶端監(jiān)控部分接收音視頻數(shù)據(jù),進行解壓、顯示以及對視頻服務器的控制等。整個系統(tǒng)的示意圖如圖1所示。
圖1視頻監(jiān)控系統(tǒng)示意圖
2.1.視頻服務器
視頻服務器采用德州儀器(ti)新近推出的達芬奇(davinci)系列處理器tms320dm355作為主處理器,接收ccd攝像頭采集的視頻信號,進行預處理及mpeg4壓縮,然后將壓縮后的數(shù)據(jù)通過網(wǎng)絡傳輸。同時,接收上位機發(fā)送的命令,解析并且執(zhí)行。每個設備都具有唯一的id,當客戶端進行連接時,服務器會首先檢查id號是否匹配,以防止惡意連接。此外,當視頻服務器運行異常時,其內(nèi)部的守護進程會進行監(jiān)視,適當?shù)臅r候進行重啟。
2.2.網(wǎng)絡傳輸鏈路
網(wǎng)絡傳輸鏈路負責多媒體數(shù)據(jù)的傳輸。此處,可以根據(jù)實際需求,進行網(wǎng)絡傳輸鏈路的選擇。局域網(wǎng)(lan)、無線局域網(wǎng)(wlan)、internet、cdma、3g等都是可供選擇的傳輸鏈路。其中,局域網(wǎng)(lan)和無線局域網(wǎng)(wlan)帶寬充足、穩(wěn)定,并且設備簡單,易于實現(xiàn),但會受到距離的限制。internet和cdma網(wǎng)絡可以使監(jiān)控距離得到擴展,但是其帶寬受限,圖像質(zhì)量會受到影響。而最新的3g網(wǎng)絡也是一個不錯的選擇,帶寬在靜止狀態(tài)下可以達到2mbps,但是其在穩(wěn)定性方面還待測試。用戶可以根據(jù)自己的需求進行選擇,或者直接搭建專線網(wǎng)絡,以實現(xiàn)各自的監(jiān)控指標。
2.3.客戶監(jiān)控端
客戶端主要與各個視頻服務器進行連接,以實現(xiàn)監(jiān)控。客戶端可以采用pc機或者便攜式設備,與網(wǎng)絡傳輸鏈路相連,通過上位機軟件與視頻服務器連接,接收視頻服務器發(fā)送的多媒體數(shù)據(jù),進行解碼,然后在上位機顯示。同時,向視頻服務器發(fā)送控制命令,實現(xiàn)云臺、鏡頭等的控制。
3.視頻服務器硬件設計
3.1.整體框架視頻服務器完成視頻的采集、mpeg4壓縮和網(wǎng)絡傳輸,以及云臺、鏡頭等的控制。其硬件結構框圖如圖2所示。
圖2視頻服務器硬件結構框圖
4.1.系統(tǒng)上電及引導程序
系統(tǒng)上電時,是由dm355的輸入引腳btsel[1:0]來決定從rom或者aemif啟動。此設計處選擇從rom啟動。此時,系統(tǒng)直接跳轉(zhuǎn)到內(nèi)部rom的起始地址(0x00008000)執(zhí)行指令。內(nèi)嵌的rom啟動代碼(rbl)進行一些配置操作,然后讀取bootcfg寄存器來決定是從nand、mmc/sd或者uart啟動。本設計選擇nand啟動。nandflash里預先燒寫好了u-boot、linux內(nèi)核以及根文件系統(tǒng)。nand啟動以后,會讀取bootloader的stage1部分的指令對系統(tǒng)進行必要的設置,然后將stage2部分的代碼搬移到sdram中進行執(zhí)行。當用戶選擇啟動內(nèi)核時,bootloader將內(nèi)核從nandflash里搬運到sdram,然后跳轉(zhuǎn)到內(nèi)核的起始地址進行執(zhí)行,啟動內(nèi)核。
4.2.嵌入式linux操作系統(tǒng)
嵌入式linux操作系統(tǒng)是針對不同的應用需求,對linux內(nèi)核進行裁剪修改使之能在嵌入式計算機系統(tǒng)上運行的一種操作系統(tǒng)。它開放源碼,內(nèi)核小、效率高,適用于多種cpu和硬件平臺,性能穩(wěn)定,可移植性好等特點為其開辟了一片屬于自己的空間。
本設計選擇嵌入式linux操作系統(tǒng)作為軟件平臺,實現(xiàn)各硬