基于RS-485總線的計算機視頻監(jiān)控系統(tǒng)設(shè)計
RS-485總線采用平衡發(fā)送和差分接收方式實現(xiàn)通信:發(fā)送端將串行口的TTL電平信號轉(zhuǎn)換成差分信號A,B兩路輸出,經(jīng)過線纜傳輸之后在接收端將差分信號還原成TTL電平信號。由于傳輸線通常使用雙絞線,又是差分傳輸,所以又極強的抗共模干擾的能力,總線收發(fā)器靈敏度很高,可以檢測到低至200mV電壓。故傳輸信號在千米之外都是可以恢復(fù)。RS-485總線最大的通信距離約為1219M,最大傳輸速率為10Mb/S,傳輸速率與傳輸距離成反比,在100Kb/S的傳輸速率下,才可以達到最大的通信距離,如果需傳輸更長的距離,需要加485中繼器。RS-485采用半雙工工作方式,支持多點數(shù)據(jù)通信。RS-485總線網(wǎng)絡(luò)拓?fù)湟话悴捎媒K端匹配的總線型結(jié)構(gòu)。即采用一條總線將各個節(jié)點串接起來,不支持環(huán)形或星型網(wǎng)絡(luò)。如果需要使用星型結(jié)構(gòu),就必須使用485中繼器或者485集線器才可以。RS-485總線總線一般最大支持32個節(jié)點,如果使用特制的485芯片,可以達到128個或者256個節(jié)點,最大的可以支持到400個節(jié)點。
1 視頻監(jiān)控系統(tǒng)的組成
本監(jiān)控系統(tǒng)的一臺主機和多臺從機組成,如圖1所示。主機為工控機,內(nèi)含高速RS-485通信卡,主要完成監(jiān)控系統(tǒng)的控制、管理和圖像數(shù)據(jù)的后期處理等任務(wù)。從機為便攜式圖像壓縮終端,該終端以TI公司的TMS320VC5402數(shù)字信號處理器為核心,擴展一些外圍器件組成一個獨立的視頻圖像壓縮和傳輸設(shè)備,主要完成視頻圖像的實時采集、變換編碼和傳輸控制。主機與從機之間通過RS-485總線進行通信。主要啟動并控制網(wǎng)上每一次通信,每個從機有一個唯一的地址,只有被尋址的從機響應(yīng)主機的命令并向主機發(fā)回信息幀。當(dāng)從機數(shù)量超過64個或與主機距離超過120m時,應(yīng)在網(wǎng)絡(luò)上加裝中繼器以保證通信速率達到1Mbps。
2 便攜式圖像壓縮終端簡介
壓縮終端是本系統(tǒng)的關(guān)鍵部件,組成框圖如圖2所示。它以TMS320VC5402 DSP為處理器,擴展了視頻器、行場分離電路、幀緩沖器、程序存儲器、串行通信接口芯片和RS-485總線接口芯片。
2.1 TMS320VC5402 DSP簡介
TMS320VC5402 DSP(以下簡稱C5402)是TI公司生產(chǎn)的新一代定點DSP芯片,C5402是C5000系列中性價比較高的一顆芯片。獨特的6總線哈佛結(jié)構(gòu),使其能夠6條流水線同時工作,工作頻率達到100MHz。VC5402除了使用VC54x系列中常用的通用I/O口(GeneralPurposeI/O,簡稱GPIO)外,還為用戶提供了多個可選的GPIO:HPI-8和McBSP。
C5402主要特點有 :
?。?)操作速率達1 0 0MIPS ;
?。?)具有先進的多總線結(jié)構(gòu) (1條程序總線、3條數(shù)據(jù)總線和 4條地址總線 ) ;
?。?) 40位算術(shù)邏輯運算單元 (ALU) ,包括 1個 40位桶形移位寄存器和 2個獨立的 40位累加器 ;
?。?)17位 17位并行乘法器與 40位專用加法器相連,用于非流水式單周期乘法 /累加 (MAC)運算 ;
?。?)雙地址生成器 ,包括 8個輔助寄存器和 2個輔助寄存器算術(shù)運算單元 (ARAU) ;
?。?)數(shù)據(jù) /程序?qū)ぶ房臻g 1M 1 6bit,內(nèi)存 4K 1 6bitROM和 1 6K 1 6bit雙存取RAM ;
?。?)內(nèi)置可編程等待狀態(tài)發(fā)生器、鎖相環(huán) (PLL)時鐘發(fā)生器、2個多通道緩沖串行口、1個 8位并行與外部處理器通信的HPI口、2個 1 6位定時器以及 6通道DMA控制器 ;
?。?)低功耗 ,工作電源 3 . 3V和1 .8V(內(nèi)核 ) 。
2.2 視頻采集電路
視頻圖像信號采集由視頻緩沖器、高速A/D轉(zhuǎn)換器和行、場同步分離電路組成。A/D轉(zhuǎn)換器采用TI公司的TLV5510芯片,TLV5510為8bit、10Msps的高速并行A/D轉(zhuǎn)換器,本電路中將TLV5510作為C5402的一個擴展的并行輸入口,C5402的R/W信號作為轉(zhuǎn)換時鐘信號,讀該端口時啟動A/D轉(zhuǎn)換。行、場同步分離電路輸出行同步信號、垂直同步信號和奇、偶場信號作為C5402的外部中斷輸入信號。C5402采用中斷響應(yīng)方式采集一幀圖像的奇場數(shù)據(jù)和偶場數(shù)據(jù)。
2.3 存儲器配置
480KB的幀緩沖器用來存放原始圖像數(shù)據(jù)和壓縮后的圖像數(shù)據(jù),32KB的FlashROM用來存放應(yīng)用程序,二者都映射到C5402的外部數(shù)據(jù)空間。由于C5402的數(shù)據(jù)空間僅為64KW,因此采用內(nèi)存頁擴展技術(shù),將外部數(shù)據(jù)空間擴展為16頁,每頁32KB。使用C5402的一個擴展輸出口作為擴展內(nèi)存的頁選擇信號,分別選擇0~16頁,并且將C5402的A15腳與擴展靜態(tài)RAM的使能端相連,當(dāng)A15=0時選擇片內(nèi)RAM,當(dāng)A15=1時選擇片外RAM。因此本系統(tǒng)的數(shù)據(jù)存儲器配置如下:
系統(tǒng)硬件復(fù)位時,頁選擇信號被自動清零,F(xiàn)lashROM映射到數(shù)據(jù)空間,C5402將FlashROM中的應(yīng)用程序加載到片內(nèi)DARAM中。
2.4 數(shù)據(jù)傳輸電路
數(shù)據(jù)傳輸使用了TI公司的異步串行收發(fā)器TL16C550和MAXIM公司的MAX3485E。TL16C550含16bit的FIFO,通信速率達1Mbps。MAX3485E是半雙工RS-485總線接口芯片,傳輸速率達12Mbps,傳輸距離達4000英尺。
2.5 軟件實現(xiàn)
C54x DSP集成開發(fā)工具支持C語言和匯編語言編程,為了提高代碼執(zhí)行效率,滿足圖像實時壓縮和傳輸?shù)男枰捎脜R編語言編程。主程序可分成以下幾個部分:
(1)初始化C5402,接受上位機的命令幀,做好采集圖像的準(zhǔn)備工作;
?。?)開放奇場中斷(INT1),關(guān)閉偶場中斷(INT2)和行中斷(INT3);
(3)當(dāng)奇場同步信號到來時,C5402進入奇場中斷服務(wù)子程序,開放行中斷做好采集奇場數(shù)據(jù)的準(zhǔn)備。當(dāng)行同步信號以來時,C5402進入行中斷服務(wù)子程序,連續(xù)采集一行圖像數(shù)據(jù)。當(dāng)各行圖像數(shù)據(jù)采集完畢后,關(guān)閉行中斷;
?。?)當(dāng)偶場同步信號到來時,C5402進入偶場中斷服務(wù)子程序,開放行中斷做好采集偶場數(shù)據(jù)的準(zhǔn)備。當(dāng)行同步信號到來時,C5402進入行中斷服務(wù)子程序,連續(xù)采集一行圖像數(shù)據(jù)。當(dāng)各行圖像數(shù)據(jù)采集完畢后,關(guān)閉行中斷和奇、偶場中斷;
(5)將圖像數(shù)據(jù)分成一系列的8×8塊,先對第一個數(shù)據(jù)塊進行DCT變換、量化、Huffman編碼,然后開放串行口中斷(INT0),將壓縮后的圖像數(shù)據(jù)發(fā)送給上位機。重復(fù)執(zhí)行這個編碼和傳輸過程,直到全部圖像數(shù)據(jù)處理結(jié)束。最后關(guān)閉串行發(fā)送中斷,開始下一幀圖像的處理。
3 通信軟件設(shè)計
本系統(tǒng)為主從式監(jiān)控系統(tǒng),由主機啟動并控制網(wǎng)上的每一次通信。主機先向從機下達采集圖像的命令,然后接收從機傳來的壓縮圖像數(shù)據(jù)。從機接受主機的命令,按命令要求調(diào)整攝象機的焦距和鏡頭方向、修改圖像大小和采樣速率,最后進行圖像采集、壓縮和傳輸。要完成這些功能就必須定義嚴(yán)格的網(wǎng)絡(luò)通信協(xié)議。
3.1 網(wǎng)絡(luò)通信協(xié)議
本網(wǎng)絡(luò)為專用系統(tǒng),要求通信速率達到1Mbps,故采用電路交換方式。網(wǎng)上傳輸?shù)男畔H為兩種形式之一:命令幀或信息幀。
主機發(fā)往從機的命令幀由八個字節(jié)組成,如表1所示。地址為要訪問的從機地址、有效地址為0~255;焦距為攝象機的焦距編碼;方向為攝象機鏡頭的方向編碼;大小為圖像的大小編碼;速度為圖像采樣率編碼;控制為現(xiàn)場控制設(shè)備或報警器控制命令編碼;校驗-命令幀結(jié)束和校驗標(biāo)志。
表1 命令幀格式
地址 | 焦距 | 方向 | 大小 | 速率 | 控制 | 校驗 |
從機發(fā)往主機垢信息幀如表2所示。地址為從機地址;狀態(tài)-攝象機焦距和鏡頭方向調(diào)整機構(gòu)及其它控制設(shè)備的狀態(tài)編碼;數(shù)據(jù)為圖像壓縮碼流;校驗為信息幀校驗和結(jié)束標(biāo)志。地址、狀態(tài)、校驗均為一個字節(jié),數(shù)據(jù)長度可變。
表2 信息幀格式
地址 | 狀態(tài) | 數(shù)據(jù) | 校驗 |
3.2 從機通信程序設(shè)計
從機通信流程如圖3所示。壓縮終端上電復(fù)位后打開串行口中斷,RS-485接口芯片處于接收狀態(tài)。一旦接到主機的命令幀,壓縮終端便按命令幀的要求調(diào)整焦距、鏡頭方向和其他控制設(shè)備的狀態(tài),然后進行圖像的采集和壓縮編碼,同時檢測總線的狀態(tài)。若總線上沒有講者則將壓縮碼流發(fā)往主機,總線被占用直到一幀信息幀全部發(fā)送完畢。為了提高圖像的處理效率,壓縮和傳輸并行進行。
3.3 主機通信程序設(shè)計
主機通信流程控制如圖4所示。正常情況下,主機對全部或部分現(xiàn)場進行輪流監(jiān)控,各壓縮終端送來的壓縮數(shù)據(jù)被分別保存起來,同時經(jīng)解壓縮后顯示在計算機屏幕上。一旦發(fā)生異常情況,主機自動對異常現(xiàn)場進行單獨監(jiān)控。主機在向壓縮終端發(fā)命令幀之間檢測總線的狀態(tài),若總線上沒有講者則將命令幀發(fā)往壓縮終端,然后將RS-485接口置于接收狀態(tài),等待壓縮終端發(fā)送信息幀。為了保證命令幀的可靠性,命令幀被連續(xù)發(fā)送三次。
本系統(tǒng)使用TMS320VC5402 DSP和RS-485總線實現(xiàn)了靜止圖像的實時壓縮和高速傳輸。采用標(biāo)準(zhǔn)JPEG壓縮算法,每秒鐘可壓縮并傳輸5幀512×512×8的灰度圖像,性價比極高,適用于無人倉庫、超級市場、交通道口、井下工程、列車車箱等的監(jiān)控管理。
評論