文獻標識碼: A
文章編號: 0258-7998(2012)03-0030-03
隨著陸地資源日益匱乏,許多國家加快了對海洋資源的勘探和開發(fā)。我國雖是一個海洋大國,但在這方面起步較晚,相關經驗及配套技術都比較缺乏。目前,國內大部分的水下攝像系統都是基于鎧裝同軸電纜,受限于電纜的帶寬和傳輸特性,當傳輸2路及以上視頻圖像時,所傳輸的視頻信號必須經過壓縮編碼,而復原后的視頻質量嚴重下降,無法滿足視頻監(jiān)控的要求。在國外,發(fā)達國家均采用鎧裝光纜(光纖具有纖頻帶寬、傳輸容量大、距離遠等優(yōu)點)作為通信介質,而電纜一般情況下僅作為動力傳輸纜。
本文設計和實現的基于光纜的攝像系統,實現了4路視頻信號和2路RS232數據的傳輸,很好地滿足了“海洋六號”船在海洋資源勘探和開發(fā)過程中對可視化及現場數據的需求。
1 系統工作原理
基于光纜的深海攝像系統的整體結構框圖如圖1所示。系統分為水上的甲板通信機和水下耐壓倉兩個部分,兩者通過鎧裝光纜相連,并由甲板電源供電。鎧裝光纜內有3根動力纜用于傳輸電源動力,1根光纜(含有4根光纖)用于傳輸視頻數據、傳感器上行數據及下行命令信號。視頻及數據傳輸系統由甲板光纖通信模塊和水下光纖通信模塊組成,分別是視頻圖像的接收端和發(fā)送端。由于海洋環(huán)境的特殊性,本系統還帶有水下照明燈和高度計等設備。
甲板工控機的上位機控制界面發(fā)出的設備控制命令,通過串口傳給甲板光纖通信模塊,然后經過光纜傳至水下光纖通信模塊,最后到達設備控制板。命令經解析后,控制相應的繼電器實現水下設備的打開與關閉。當攝像機和高度計被打開后,攝像機的視頻數據會直接傳到水下光纖通信模塊,而高度計和供電電壓值等數據在設備控制板內被封裝成數據幀后,再傳給水下光纖通信模塊。視頻和被封裝的數據以時分復用的方式,通過光纜傳到工控機,并顯示在上位機控制界面上。當開啟視頻監(jiān)控功能時,工控機就開始存儲視頻;停止監(jiān)控后,就可以回放所存儲的視頻。
2 系統硬件
系統的硬件設計主要包括兩個部分:甲板光纖通信模塊、水下光纖通信模塊和水下控制設備系統。水下攝像機、照明燈和高度計等設備都是性能較好的產品。
2.1 甲板光纖通信模塊和水下光纖通信模塊
由甲板光纖通信模塊和水下光纖通信模塊組成的視頻及數據傳輸系統不同于陸地上經常使用的光端機。陸地上使用的光端機一般只傳輸視頻信號和控制命令,而本系統中,水下光纖通信模塊除了傳輸視頻信號,還要傳輸2路傳感器信號,以獲取勘探現場的數據。
甲板光纖通信模塊和水下光纖通信模塊的結構框圖如圖2所示。所選用的可編程器件是Xilinx公司型號為XC95288XL的CPLD芯片。CPLD包含有:288個宏單元,6 400個邏輯門,PQFP封裝,168個可用引腳,6 ns的pin-to-pin邏輯延遲,最高工作頻率可達208 MHz,是一款3.3 V電壓供電、高性能、低功耗、用于通信和運算的CPLD[1]。
水下光纖通信模塊有4路視頻采集電路,使用的視頻采集ADC為AD9280,它是一款8 bit、CMOS 模數轉換器,工作頻率最高可達32 MHz,工作電壓范圍在2.7 V~5.5 V之間,完全可以滿足本系統的要求。此外,AD9280性價比高。甲板光纖通信模塊使用的視頻恢復DAC為DAC908E,它是一款低功耗電流輸出型8 bit并行高速數模轉換器,最大轉換速率高達165 MS/s,單端供電電壓為3 V或5 V。非常適用于復合視頻等方面。
并串和串并轉換芯片的數據遠距離傳輸作用非常重要。并串轉換芯片將從CPLD得到的數據轉換成高速串行的數據流,以滿足傳輸過程對數據速率的要求。而串并轉換芯片則是用來將串行的數據流還原成原來的并行數據,然后交給CPLD處理。本系統中使用的串并和并串轉換芯片分別為SN65LV1023A和SN65LV1224B,它們是10 bit的串行解串器,工作頻率為10 MHz~66 MHz。SN65LV1224B芯片可以還原出嵌在高速串行數據流中的時鐘,該時鐘用于兩模塊之間的數據同步。此外,SN65LV1224B還有一個同步提示管腳,當模塊兩邊的時鐘同步后,它會輸出低電平[2]。
光電轉換模塊把電信號轉換成光信號轉換后,視頻和數據才能通過光纜進行傳輸。根據帶寬及傳輸距離的要求,選用了奧雷光電公司的光電轉換模塊ATR-B2023-ST和ATR-B2024-ST,是非平衡光電轉換器件,工作電壓為5 V,視頻信號帶寬為1.25 Gb/s,控制命令速率為84 Mb/s,傳輸距離可達20 km。
晶振的頻率為54 MHz,經過CPLD 4分頻后,作為ADC和DAC的工作頻率。
2.2 水下設備控制系統
水下設備控制系統主要完成控制設備的打開與關閉、采集供電電壓值等。本系統選用的MCU芯片是C8051F020,它具有豐富的片內資源,如64個數字I/O引腳,內嵌12 bit、100 KS/s的8通道ADC,2個12 bit的DAC,片內看門狗定時器等。因此,C8051F020能夠滿足控制系統的需要,并且為以后的擴展留有很大的空間。
在本系統中,C8051F020通過I/O控制繼電器,進而控制設備的打開與關閉;利用內嵌的ADC采集供電電壓。
3 系統軟件設計
整個系統的軟件設計包括視頻及數據傳輸系統、水下設備控制系統和上位機控制界面的程序設計三個部分。
3.1 視頻及數據傳輸系統程序設計[3-4]
該系統主要完成視頻和數據的采集、處理及傳輸等。基于Verilog HDL,采用自上而下的設計方法對可編程器件CPLD進行編程。程序包括1個頂層文件和3個模塊,這3個模塊分別為: 8b/10b編解碼模塊、曼徹斯特編解碼模塊和串口接收和發(fā)送數據模塊。
(1)8b/10b編解碼模塊。由于選用的光電轉換模塊是非平衡的,所以發(fā)送給轉換模塊的數據流必須在CPLD中經過8b/10b平衡編碼后,才能保證高速、長距離傳輸的穩(wěn)定性。該模塊將輸入的8 bit數據按照一定的規(guī)則編碼成10 bit,然后傳給光電轉換模塊。8b/10b編解碼模塊用來處理視頻和傳感器數據。
(2)曼徹斯特編解碼模塊。控制命令的傳輸通道速率可達84 Mb/s。同樣,為了保證控制命令高速、長距離傳輸的穩(wěn)定性,需要對其進行平衡編碼。曼徹斯特編碼模塊將“0”編為“01”,“1”編為“10”,消除直流分量,從而使控制命令具有良好的抗干擾性能。
(3)串口接收和發(fā)送數據模塊。水下光纖通信模塊中的串口數據接收模塊接收從C8051F020傳來的數據,然后采用分時復用的方法,與視頻數據一起發(fā)送到甲板上的光纖通信模塊;甲板上的光纖通信模塊得到數據后,分別送入相應視頻和數據端口。
頂層文件主要完成數據分時復用的控制。當甲板光纖通信模塊和水下光纖通信模塊同步后,水下光纖通信模塊一直發(fā)送視頻數據;當串口接收數據模塊收到傳感器數據時,在適當的時候發(fā)送傳感器數據。程序設計的過程中特別要注意以下兩個方面:(1)控制部分應該用有限狀態(tài)機來編寫;(2)串并轉換芯片SN65LV1224B的工作時鐘由本模塊的晶振提供,甲板光纖通信模塊則使用由SN65LV1224B恢復出來的時鐘作為工作時鐘,以保證兩模塊的同步。
3.2 水下設備控制系統程序設計
水下設備控制系統接收水下光纖通信模塊傳來的控制命令,通過解析控制命令來控制相應設備的打開與關閉。此外,還要采集供電電壓值、讀取傳感器數據,并將得到的數據打包成數據幀,傳給水下光纖通信模塊。
3.3 上位機控制界面程序設計[5]
上位機控制界面采用C#開發(fā),開發(fā)環(huán)境是Visual Studio 2008,整體上可分為5個區(qū)域:(1)菜單欄:包括系統配置和其他輔助控制;(2)監(jiān)視參數區(qū):顯示系統運行過程中必要的監(jiān)視參數;(3)雙路視頻顯示區(qū);(4)水下設備控制區(qū):在系統運行時,對視頻及其他設備進行控制;(5)狀態(tài)欄:顯示最新接收的數據幀、系統時間及使用校準文件的狀態(tài)。
本文設計并實現了一套基于光纜的深海攝像系統,
系統已在實驗室及南海的海試中獲得了成功,在整個海試及后續(xù)深海作業(yè)的過程中,運行穩(wěn)定。相對于國外的同類產品,本系統成本較低,性價比高,具有光纜的科考船都可配備本系統。
參考文獻
[1] Xilinx Inc.XC95288XL high performance CPLD[EB/OL]. (2007-04-03)[2011-09-15].http://www.xilinx.com/support/documentation/xc9500xl.htm.
[2] TI Inc.10 MHz To 66 MHz,10:1 LVDS serializer/deserializer.[EB/OL].(2009-12-07)[2011-09-15].http://www.ti.com/product/sn65lv1023a.
[3] 陳曦,邱志成,張鵬,等.基于Verilog HDL的通信系統設計[M].北京:中國水利水電出版社,2009.
[4] 劉福奇,劉波.Verilog HDL應用程序設計實例精講[M].北京:電子工業(yè)出版社,2009.
[5] NAGEL C,EVJEN B,GLYNN J著.C#高級編程(第6版)[M].李銘譯.北京:清華大學出版社,2008.