黃澤界
(廈門海洋職業技術學院 信息系,福建 廈門 361012)
近年來,人們越來越關注生存環境,重視突發災害的預警與緊急應對措施的建立,迫切希望提高生產和生活管理的智能化水平,視頻監控系統也作為人類視覺的延伸越來越受到重視,得到了廣泛的應用[1]。
傳統的視音頻監控系統都是通過獨立的電纜把視頻和音頻信號傳送到監控中心,切換和控制也是在監控中心進行,因此需要鋪設大量的電纜。筆者提出了一種前端切換視音頻視頻監控系統,所有監控點與監控中心只要3條總線電纜相連接,視音頻切換分散在監控點進行;各監控點的視頻信號線,音頻信號線和控制線都分別連接在這3條總線上;視音頻切換信息和前端設備控制信息在同一條電纜上傳輸。該系統對監控點實行分區管理,它可以將所有的監控點劃分為16個分區,每個分區可以有16個監控點。

基于前端切換視音頻監控系統的總體結構圖如圖1所示。監控中心與前端監控點通過3條總線連接。各監控點的視頻輸出,音頻輸出和地址切換與動作控制電路均分別連接在這3條總線上。每個監控點都有自己特有的地址編碼,進行視音頻切換時,監控中心發出所要切入視音頻信號的監控點地址,與所發出的地址一致的監控點就會將它們的視頻信號和音頻信號分別接入視頻總線和音頻總線,然后送到監控中心。
本系統監控中心電路主要由PC、電平轉換芯片MAX232、單片機8051、2塊74LS164和1塊VD5026芯片組成,其電路連接如圖2所示。其工作的原理是:首先由控制PC產生出8位的地址編碼和4位的動作編碼(共需2 byte),經過電平轉換后,發送至單片機的串口,再由單片機的串口將接收到的地址編碼和動作編碼輸出至74LS164實現串并轉換,然后傳送給VD5026,并由單片機的P0.1口發出1個低電平至VD5026的14腳即發射指令端,使VD5026將地址編碼和動作編碼傳輸到監控前端解碼器,控制攝像頭的選擇、云臺的轉動、攝像頭焦距的遠近、光圈大小及鏡頭伸縮等。

計算機和單片機的通信以及單片機和74LS164之間的數據傳輸都采用串口通信。其中單片機的RXD端既要接收從計算機發過來的數據,還要發送數據到74LS164,因此為了避免沖突,在計算機向單片機傳輸的線路上加了1個起隔離作用的二極管。
監控前端解碼電路主要由VD5027、4514、驅動電路等組成,如圖3所示。

前端解碼器由接收解碼集成電路VD5027、切換控制電路、動作控制譯碼器與輸出電路組成。
1)接收解碼集成電路VD5027
VD5027是與監控中心編碼發送電路VD5026配對的接收解碼集成電路,監控中心控制器發送的地址與動作編碼脈沖經隔離與抗干擾電路進入非門G1和非門G2整形,然后送入接收解碼集成電路VD5027。監控點所在分區的編碼由VD5027的地址端A5~A8設定,地址端A1~A4則確定監控點在該分區中的具體位置。VD5027要連續接收到2幀完全相同的地址與動作編碼才會確認為有效。接收到第1幀串行碼,它將其中的地址位與自身設定的地址編碼相比較,若一致,就將串行碼后串段的數據位暫存起來,若不一致,則不做任何處理。接收到的第2幀串行碼時,如果地址碼再次與自身地址編碼一致,則把接收到的數據位與暫存的數據進行逐位比較,如果2次接收到的數據位也完全相同時,數據被轉移到輸出寄存器,并由數據端D0~D3輸出。與此同時,VD5027的接收有效輸出端VT輸出高電平。
2)切換控制電路
接收解碼集成電路VD5027的VT端連接R-S觸發器的S端,它輸出的高電平使R-S觸發器Q端輸出高電平,2個開關導通,該監控點的音頻信號和視頻信號分別進入總線。與此同時,應該斷開原來輸出視音頻信號監控點解碼器中的模擬開關,圖3下方虛線框中電路為原解碼器控制模擬開關的相關電路。當前解碼器VD5027的VT端輸出的高電平通過D1由前端環線進入原解碼器,原解碼器VD5027的VT端輸出的高電平不會作用到R-S觸發器的S端,但是由前端環線進入的高電平使異或門G5輸出電平由低變高,R-S觸發器R端高電平,它的Q端輸出低電平,關掉其控制的模擬開關。原解碼器開關的關閉和當前解碼器開關的導通,使視音頻信號的切換得以實現。其余監控點的解碼器由二極管的隔離,由前端環線進入的高電平不會作用到R-S觸發器的S端,Q端也就保持低電平輸出,其控制的模擬開關保持關閉的狀態。
3)動作控制譯碼與輸出電路
當監控中心對前端設備進行操控時,VD5027的VT端輸出高電平,然后經過非門G3反相置4514的禁止端INH低電平,接下來4514將VD5027的D0~D3輸出的動作碼譯碼,在相應的端口輸出高電平,最后經驅動電路使前端設備工作。
軟件實現通信過程為:首先由計算機發出一呼叫信號,并做好接收單片機信號的準備,單片機收到呼叫信號后響應,并轉入相應的服務程序,同時向計算機發送響應信號[2-4]。這樣計算機就可以向單片機發送用戶所要求的地址碼和動作碼,單片機在接收到計算機發過來的編碼后,將編碼通過串口發送到串并轉換芯片74LS164。
在計算機和單片機之間握手成功之后,就可以進行控制數據傳送了。本系統的控制編碼格式為:控制碼=動作碼+地址碼。
傳輸控制碼時,先傳地址碼,然后再傳動作碼。前端監控現場的解碼器收到控制碼后,先驗證是否是傳輸給本監控點的控制碼。如果不是,不作任何反應;如果是,就將控制碼接收下來,并將動作碼解碼后去驅動控制電機實現對前端攝像頭動作的控制。
VD5026地址編碼線有8條,動作編碼線有4條,因此計算機向單片機傳送監控現場的地址碼和動作碼共需2 byte,1 byte是地址碼,1 byte是動作碼,它們都用2位的十六進制數表示。可編碼的地址共256(2的8次方)個,分為16個分區(用地址碼的高4位表示),每個分區有16個攝像頭(用地址碼的低4位表示),例如,11H表示第1個分區中的第1個攝像頭。可實現的編碼動作有16(2的4次方)個。動作編碼如表1和表2所示。

表1 云臺控制動作編碼表(共8個動作)

表2 鏡頭控制動作編碼表(共6個動作)
需要注意的是,由于VD5026只有4條動作編碼線,故動作編碼字節的高4位不能用于動作編碼。
這部分編程設計主要用到的是Windows下串行口通信技術。
首先約定計算機和單片機的通信協議:PC機與單片機通信使用PC機的串口1(COM1),波特率為9 600 baud/s,信息格式為8個數據位,1個停止位,無奇偶校驗位。
為了實現通信,在VB語言環境下設置1個用作控制通信的窗體,并設置1個通信的控件Mscomm1、1個握手(shakehand)按鈕、1個timer的控件。


在計算機和單片機完成握手之后,計算機就可以向單片機發送地址編碼和動作編碼了,其實現程序與以上程序類似,故在此不再贅述。
單片機接收到計算機發來的握手信號時,向計算機發送已接收信號,雙方握手通信完成。然后,單片機就可以接收計算機發出的地址和動作編碼,并將其傳給74LS164。
1)單片機與計算機的握手程序段如下:

2)單片機接收地址碼和動作碼的程序段如下:


3)單片機向74LS164通過串口發送地址編碼和動作編碼的程序段:

需要注意的是:在單片機將控制碼全部發送給74LS164后,單片機的P0.1口要發出一個低電平至VD5026的14腳即發射指令端,從而啟動VD5026向監控前端的解碼器發送控制碼。
筆者提出了一種全新的視音頻切換方式,打破了視音頻切換集中在監控中心實現的傳統切換方式,這樣的視頻監控系統既可以節省大量的線材和人工費用,又可降低施工難度,減少了傳輸線路故障隱患,提高了系統可靠性,應用前景良好。
[1]劉富強.數字視頻監控系統開發及應用[M].北京:機械工業出版社,2003.
[2]王保義,張少敏.接口與通信[M].北京:中國電力出版社,2008.
[3]于英民,于佳.計算機接口技術[M].北京:電子工業出版社,2004.
[4]張迎新.單片微型計算機原理、應用及接口技術[M].北京:國防工業出版社,2004.