賀延周,佟仕忠,付貴增,韓建坤,盧世坤
(遼寧石油化工大學 信息與控制工程學院,遼寧 撫順 113001)
隨著通信、單片機處理能力以及各種視頻處理技術的提高,視頻監(jiān)控系統(tǒng)發(fā)展的越來越快,其中視頻傳輸采用有線方式具有傳輸穩(wěn)定,畫面清晰等特點。但是,由于這種方式成本高、維護不方便,且在有些特殊的區(qū)域受條件所限,布線困難甚至無法布線,其使用范圍受到很大限制。而無線傳輸技術因具有使用靈活、攜帶方便、可移動、低成本等優(yōu)點,在視頻監(jiān)控、傳輸,緊急現(xiàn)場救援和軍事通信等領域發(fā)揮著巨大的作用。
文中基于CC1100無線傳輸模塊和PTC08串口攝像頭模塊設計并實現(xiàn)了一種無線視頻監(jiān)控系統(tǒng),在環(huán)保監(jiān)測、智能儀器儀表監(jiān)控、車輛管理監(jiān)控、圖像采集等領域有一定的應用前景[1]。
無線視頻監(jiān)控系統(tǒng)由信號采集設備、采集端處理器、無線數(shù)據(jù)收發(fā)模塊、接收端處理器、信號輸出設備構成,如圖1所示。
圖1 無線視頻監(jiān)控系統(tǒng)結構圖Fig.1 Structure diagram of the wireless video surveillance system
視頻信號采集設備通過攝像頭模塊捕捉場景圖像,經其內部處理器轉換輸出數(shù)字視頻圖像,為視頻圖像處理提供數(shù)據(jù)。采集端處理器負責存儲和處理信號采集設備采集的數(shù)據(jù)和其他節(jié)點發(fā)送的數(shù)據(jù),同時可協(xié)調與其他節(jié)點之間通信。線收發(fā)模塊主要負責與其他節(jié)點通信,接收、發(fā)送數(shù)據(jù)和交換控制信息。接收端處理器負責存儲和處理其他節(jié)點發(fā)送的視頻、圖像數(shù)據(jù),也可協(xié)調與其他節(jié)點之間通信。視頻信號輸出設備即將接收端處理器發(fā)送的視頻數(shù)據(jù)還原成原場景圖像[2]。
CC1100是一款低成本單片UHF收發(fā)器,專為低功耗無線應用而設計。它主要是為315、433、868和915 MHz的ISM和SRD設備所設計,可以編程工作在300~1 000 MHz范圍之間的任一頻率上。具有抗干擾能力強、數(shù)據(jù)傳輸速率高、誤碼率低等優(yōu)點,支持透明的數(shù)據(jù)傳輸及DL/645規(guī)約。在發(fā)射狀態(tài)下,其發(fā)射功率可編程調節(jié),其最大發(fā)射功率達到10 dBM[3]。
PTC08串口攝像頭是集圖像采集、拍攝控制、數(shù)據(jù)壓縮、串口傳輸于一體的工業(yè)級圖像采集處理模塊。標準三線式RS-232通信接口、簡單的圖像傳輸協(xié)議,使模塊可以方便地實現(xiàn)與電腦以及各種嵌入式系統(tǒng)的連接。
CC1100 的工作狀態(tài)有 IDEL(待機)、RX(接收)、TX(發(fā)送),同時支持遠程喚醒功能,這樣可以降低功耗。主要的引腳為VCC電源輸入(1.9~3.6V)、SI數(shù)據(jù)輸入、SO數(shù)據(jù)輸出、SCLK時鐘輸入、GDO0和GDO2為數(shù)字輸出供測試系統(tǒng)使用,CSN為芯片片選信號。芯片內置64 Byte的TX和RX緩沖器。文中設計了圖2所示的無線電路。數(shù)據(jù)操作通過STC11F32XE單片機的SPI口進行。
圖2 無線模塊電路圖Fig.2 Circuit diagram of wireless module
對本系統(tǒng)來說,PTC08串口攝像頭模塊與微控制器采用串口通信方式。微控制器通過其RX端向PTC08發(fā)送拍照的一系列指令,攝像頭模塊采集完數(shù)據(jù),收到發(fā)送數(shù)據(jù)指令后,會通過其TX端口將圖像數(shù)據(jù)送至微控制器。CC1100-232收到數(shù)據(jù)時,會自動將數(shù)據(jù)從串口送至接收端處理器。微控制器、PTC08和CC1100模塊間的接口示意圖如圖3所示[4]。
圖3 模塊接口示意圖Fig.3 Schematic diagram of module interface
系統(tǒng)采用單片機、無線收發(fā)模塊及串口攝像頭模塊來實現(xiàn),下位機軟件采用匯編語言編寫,上位機軟件編程采用VC++語言[5]。在實際操作過程中,可通過上位機程序將預先定義好的指令發(fā)送到采集端處理器,控制采集模塊動作,獲取圖片數(shù)據(jù);采集端處理器會利用無線收發(fā)模塊將數(shù)據(jù)傳至接收端處理器,進而在上位機上恢復出JPEG圖片。
PTC08模塊上電之后,延時2.5 s,微控制器向其發(fā)送一系列控制指令,包括復位、設置圖片大小、壓縮率、拍照、讀取數(shù)據(jù),停止拍照等。根據(jù)模塊與微控制器的通信協(xié)議,微控制器將PTC08模塊復位的匯編語言部分代碼如下(前提是上位機已將復位指令數(shù)據(jù)56 00 26 00分別存入微控制器RAM的70H至73H單元中):
PTC08模塊在收到此復位指令后,會向微控制器發(fā)出76 00 26 00,表示模塊復位成功。模塊其他指令數(shù)據(jù)可在其數(shù)據(jù)手冊中查詢[6]。
圖4為獲取圖片的上位機軟件流程圖,其狀態(tài)及函數(shù)描述如下。
圖4 圖片獲取軟件流程圖Fig.4 Flow chart of the software of image capturing
1)空閑狀態(tài)
采集端攝像頭模塊處于待機狀態(tài)。
2)同步狀態(tài)
當采集端攝像頭模塊接收到拍照指令時,攝像頭模塊將進行一次同步操作,以確保其可用。此狀態(tài)使用函數(shù)如下:
Public void vSynchronize(void);此函數(shù)最多可連續(xù)執(zhí)行60次。若函數(shù)在執(zhí)行期間,UART接收到0XAA,0X0D,0X0E,0X00,XX(XX為任意)數(shù)據(jù)序列,則表示攝像頭模塊同步信號已經被確認成功。若函數(shù)連續(xù)執(zhí)行60次后,UART仍未接收到從攝像頭模塊發(fā)出的確認信號,則需重新配置采集模塊。
3)參數(shù)設置狀態(tài)
根據(jù)生成圖片指令,需對攝像頭模塊進行參數(shù)設置,包括圖片大小、壓縮率以及輸出圖片數(shù)據(jù)包的大小。此過程使用函數(shù)如下:
PUBLIC void vInitialCamera(void);
PUBLIC void vSetPKGSzie(void);如果采集模塊未發(fā)回確認信息,需對其重新配置。
4)數(shù)據(jù)接收狀態(tài)
一旦參數(shù)設置完成之后,外部控制器將發(fā)出“開始圖片獲取”指令,攝像頭模塊會自動進行圖片數(shù)據(jù)的獲取與轉換。根據(jù)之前設置的參數(shù),連續(xù)輸出圖片數(shù)據(jù)包。但是,每個圖片數(shù)據(jù)包從攝像頭模塊發(fā)出之后,接收端處理器均需要返回一個確認包,之后才可以獲得下一包數(shù)據(jù)。此過程使用函數(shù)如下:
PUBLIC void vGetPKG(void);
圖片數(shù)據(jù)的還原將由上位機軟件直接完成,將確認包返回給采集端處理器的函數(shù)為:
PUBLIC void vSetPKTACK(uint16 u16PktCounter);
其中u16PktCounter是指下一個要獲取數(shù)據(jù)包的編號。若上位機界面長時間內沒有獲得數(shù)據(jù),上位機系統(tǒng)則自動重新配置采集模塊。
5)圖片接收完成狀態(tài)
當外部控制器給出“開始轉換”的指令之后,第一個輸出的數(shù)據(jù)包里已經包含了圖片數(shù)據(jù)的確切大小。因此,在這個階段,如果成功獲取的數(shù)據(jù)大小等于第一個數(shù)據(jù)包給出的圖片數(shù)據(jù)大小,說明圖片數(shù)據(jù)已經完整的從攝像頭模塊傳出,攝像頭模塊重新進入空閑狀態(tài),等待下一個拍照指令。
遠程客戶端采用監(jiān)控管理軟件,通過對串口、波特率、圖片大小等參數(shù)的設置,發(fā)送遠程監(jiān)控指令,接收視頻采集模塊的信息,實現(xiàn)數(shù)據(jù)處理、接收、存儲和顯示,將采集的圖片信息以直觀方式呈現(xiàn)給監(jiān)控人員。測試結果如圖5所示。
該系統(tǒng)采用微控制器、無線收發(fā)模塊及串口攝像頭模塊PTC08實現(xiàn)無線視頻監(jiān)控系統(tǒng),對其原理及軟硬件實現(xiàn)方法進行了簡要說明。經測試表明,系統(tǒng)簡單可靠、功耗小、成本低,抗干擾能力強;由于CC1100無線收發(fā)模塊傳輸數(shù)據(jù)速度低,無法實現(xiàn)真正的實時傳輸,可應用于實時性要求不高的場所。
圖5 測試結果Fig.5 Chart of the test
[1]林志遠,羅衛(wèi)兵.數(shù)據(jù)無線傳輸方式綜述 [J].安防科技,2009(10):10-11.
LIN Zhi-yuan,LUO Wei-bing.Review of wireless transmission of data[J].Security and Safety Technology Magazine,2009(10):10-11.
[2]張源峰.無線視頻監(jiān)控傳輸技術的研究[J].現(xiàn)代電子技術,2009(22):153-156.
ZHANG Yuan-feng.Research on transfer technology in wireless video monitoring system[J].Modern Electronics Technique,2009(22):153-156.
[3]孫維明,石江宏,陳岳林.可編程RF收發(fā)器CC1100的原理及開發(fā)[J].電子設計工程,2007(9):40-42.
SUN Wei-ming,SHI Jiang-hong,CHEN Yue-lin.Principle and development of programmable RF transceiver CC1100[J].Electronic Design Engineering,2007(9):40-42.
[4]李麗軍,王代華,祖靜.基于CC1100的無線數(shù)據(jù)傳輸系統(tǒng)設計[J].國外電子測量技術,2007(12) :42-45.
LI Li-jun,WANG Dai-hua,ZU Jing.Design of wireless data transmission system based on CC1100[J].Foreign Electronic Measurement Technology,2007(12):42-45.
[5]Young M J.Visual C++6從入門到精通[M].邱仲潘,等譯.北京:機械工業(yè)出版社,2000.
[6]何立民.MCS-51系列-單片機應用系統(tǒng)設計系統(tǒng)配置與接口技術[M].北京:北京航空航天大學出版社,1990.