隨著通信、單片機處理能力以及各種視頻處理技術的提高,視頻監控系統發展的越來越快,其中視頻傳輸采用有線方式具有傳輸穩定,畫面清晰等特點。但是,由于這種方式成本高、維護不方便,且在有些特殊的區域受條件所限,布線困難甚至無法布線,其使用范圍受到很大限制。而無線傳輸技術因具有使用靈活、攜帶方便、可移動、低成本等優點,在視頻監控、傳輸,緊急現場救援和軍事通信等領域發揮著巨大的作用。
文中基于CC1100無線傳輸模塊和PTC08串口攝像頭模塊設計并實現了一種無線視頻監控系統,在環保監測、智能儀器儀表監控、車輛管理監控、圖像采集等領域有一定的應用前景。
1 系統結構
無線視頻監控系統由信號采集設備、采集端處理器、無線數據收發模塊、接收端處理器、信號輸出設備構成,如圖1所示。

視頻信號采集設備通過攝像頭模塊捕捉場景圖像,經其內部處理器轉換輸出數字視頻圖像,為視頻圖像處理提供數據。采集端處理器負責存儲和處理信號采集設備采集的數據和其他節點發送的數據,同時可協調與其他節點之間通信。線收發模塊主要負責與其他節點通信,接收、發送數據和交換控制信息。接收端處理器負責存儲和處理其他節點發送的視頻、圖像數據,也可協調與其他節點之間通信。視頻信號輸出設備即將接收端處理器發送的視頻數據還原成原場景圖像。
2 系統硬件電路設計
2.1 CC1100及PTC08簡介
CC1100是一款低成本單片UHF收發器,專為低功耗無線應用而設計。它主要是為315、433、868和915 MHz的ISM和SRD設備所設計,可以編程工作在300~1 000 MHz范圍之間的任一頻率上。具有抗干擾能力強、數據傳輸速率高、誤碼率低等優點,支持透明的數據傳輸及DL/645規約。在發射狀態下,其發射功率可編程調節,其最大發射功率達到10 dBM。
PTC08串口攝像頭是集圖像采集、拍攝控制、數據壓縮、串口傳輸于一體的工業級圖像采集處理模塊。標準三線式RS-232通信接口、簡單的圖像傳輸協議,使模塊可以方便地實現與電腦以及各種嵌入式系統的連接。
2.2 硬件電路設計
CC1100的工作狀態有IDEL(待機)、RX(接收)、TX(發送),同時支持遠程喚醒功能,這樣可以降低功耗。主要的引腳為VCC電源輸入(1.9~3.6V)、SI數據輸入、SO數據輸出、SCLK時鐘輸入、GD00和GD02為數字輸出供測試系統使用,CSN為芯片片選信號。芯片內置64 Byte的TX和RX緩沖器。文中設計了圖2所示的無線電路。數據操作通過STC11F32XE單片機的SPI口進行。

對本系統來說,PTC08串口攝像頭模塊與微控制器采用串口通信方式。微控制器通過其RX端向PTC08發送拍照的一系列指令,攝像頭模塊采集完數據,收到發送數據指令后,會通過其TX端口將圖像數據送至微控制器。CC1100-232收到數據時,會自動將數據從串口送至接收端處理器。微控制器、PTC08和CC1100模塊間的接口示意圖如圖3所示。

3 系統軟件設計
系統采用單片機、無線收發模塊及串口攝像頭模塊來實現,下位機軟件采用匯編語言編寫,上位機軟件編程采用VC++語言。在實際操作過程中,可通過上位機程序將預先定義好的指令發送到采集端處理器,控制采集模塊動作,獲取圖片數據;采集端處理器會利用無線收發模塊將數據傳至接收端處理器,進而在上位機上恢復出JPEG圖片。
3.1 PTC08模塊初始化配置
PTC08模塊上電之后,延時2.5 s,微控制器向其發送一系列控制指令,包括復位、設置圖片大小、壓縮率、拍照、讀取數據,停止拍照等。根據模塊與微控制器的通信協議,微控制器將PTC08模塊復位的匯編語言部分代碼如下(前提是上位機已將復位指令數據56 00 26 00分別存入微控制器RAM的70H至73H單元中):

PTC08模塊在收到此復位指令后,會向微控制器發出7600 26 00,表示模塊復位成功。模塊其他指令數據可在其數據手冊中查詢。
3.2 上位機軟件設計
圖4為獲取圖片的上位機軟件流程圖,其狀態及函數描述如下。

1)空閑狀態
采集端攝像頭模塊處于待機狀態。
2)同步狀態
當采集端攝像頭模塊接收到拍照指令時,攝像頭模塊將進行一次同步操作,以確保其可用。此狀態使用函數如下:
Public void vSynchronize(void);此函數最多可連續執行60次。若函數在執行期間,UART接收到0XAA,0XOD,0X0E,0X00,XX(XX為任意)數據序列,則表示攝像頭模塊同步信號已經被確認成功。若函數連續執行60次后,UART仍末接收到從攝像頭模塊發出的確認信號,則需重新配置采集模塊。
3)參數設置狀態
根據生成圖片指令,需對攝像頭模塊進行參數設置,包括圖片大小、壓縮率以及輸出圖片數據包的大小。此過程使用函數如下:
PUBLIC void vlnitialCamera(void);
PUBLIC void vSetPKGSzie(void);如果采集模塊來發回確認信息,需對其重新配置。
4)數據接收狀態
一旦參數設置完成之后,外部控制器將發出“開始圖片獲取”指令,攝像頭模塊會自動進行圖片數據的獲取與轉換。根據之前設置的參數,連續輸出圖片數據包。但是,每個網片數據包從攝像頭模塊發出之后,接收端處理器均需要返回一個確認包,之后才可以獲得下一包數據。此過程使用函數如下:
PUBLIC void vGetPKG(void);
圖片數據的還原將由上位機軟件直接完成,將確認包返回給采集端處理器的函數為:
PUBLIC void vSetPKTACK(uint16 u16PktCounter);
其中u16PktCounter是指下一個要獲取數據包的編號。若上位機界面長時間內沒有獲得數據,上位機系統則自動重新配置采集模塊。
5)圖片接收完成狀態
當外部控制器給出“開始轉換”的指令之后,第一個輸出的數據包里已經包含了圖片數據的確切大小。因此,在這個階段,如果成功獲取的數據大小等于第一個數據包給出的圖片數據大小,說明圖片數據已經完整的從攝像頭模塊傳出,攝像頭模塊重新進入空閑狀態,等待下一個拍照指令。
遠程客戶端采用監控管理軟件,通過對串口、波特率、圖片大小等參數的設置,發送遠程監控指令,接收視頻采集模塊的信息,實現數據處理、接收、存儲和顯示,將采集的圖片信息以直觀方式呈現給監控人員。測試結果如圖5所示。

4 結論
該系統采用微控制器、無線收發模塊及串口攝像頭模塊PTC08實現無線視頻監控系統,對其原理及軟硬件實現方法進行了簡要說明。經測試表明,系統簡單可靠、功耗小、成本低,抗干擾能力強;由于CC1100無線收發模塊傳輸數據速度低,無法實現真正的實時傳輸,可應用于實時性要求不高的場所。