王開宇
摘 要: 為了實現復雜大型網絡監控系統的操作管理,設計以多服務器多客戶端為基礎的監控上位機軟件,其采用Delphi來開發上位機的圖形用戶界面,應用C#編程語言在Visual Studio 2013開發套件上完成播放器ActiveX控件的開發,上位機與下位機的數據通信則通過UDP及TCP/IP協議來完成。其中,通過Socket套接字來為TCP/IP協議提供應用開發接口,實現連接、登錄驗證、參數交互和命令交互等功能,完成對下位機服務器的調度與管理。測試結果表明,該上位機軟件運行穩定,各項功能均可得到正確的響應,且設計達到了預期要求。
關鍵詞: C#; 數據與視頻監控; 上位機軟件設計; TCP/IP協議
中圖分類號: TN948.64?34; TP317.4 文獻標識碼: A 文章編號: 1004?373X(2017)10?0062?03
Abstract: In order to realize the operation and management of the complex large?scale network monitoring system, a PC monitoring software based on the multi?server and multi?client is designed, in which Delphi is used to develop a graphical user interface of PC, and C# programming languages is adopted to complete the player ActiveX control development in visual Studio2013 development kit. The data communication between upper machine and lower machine is realized through UDP and TCP/IP protocols. The application programming interfaces are provided for TCP/IP protocol through Socket sleeve socket to realize the functions of connection, login authentication, parameter interaction, command interaction and so on. The scheduling and management of lower computer server were completed. The test results indicated that the PC software works well, all the functions of it are responded correctly, and its design meets the prospected demand.
Keywords: C#; data and video monitoring; PC software design; TCP/IP protocol
目前市場上的監控系統軟件大多無法滿足復雜的網絡監控系統,只能實現簡單的監控網絡系統,為了實現復雜大型網絡監控系統的操作管理,本文設計了以多服務器多客戶端為基礎的監控上位機軟件[1?3]。
1 監控系統總體設計
1.1 系統總體結構
本文所設計的視頻監控上位機是針對結合網絡信息技術與嵌入式技術的監控系統[4],其結構如圖1所示。由圖1可知,系統主要由攝像頭、開發板、云臺、無線設備、無線網絡、客戶端上位機軟件以及報警服務器等組成。
云臺控制著攝像頭的轉向,通過二自由度平臺可實現攝像頭在水平方向上以及垂直方向上的轉動,擴大攝像頭的監測范圍。開發板為ADSP?BF516,其內嵌的編解碼模塊將攝像頭采集到的音頻、視頻數據數字化后轉變成基于TCP/IP協議的視頻流[5?6],再通過無線設備經由無線網絡將視頻流發送到客戶端上位機軟件以及報警服務器。客戶端上位機軟件接收到音頻和視頻數據后,對視頻流進行解碼,并在PC上顯示與處理報警功能。
1.2 系統程序模塊設計
系統程序模塊結構如圖2所示,其由系統初始模塊、AV數據處理模塊、參數管理模塊、HTTP模塊、主程序模塊、串口管理模塊和SNMP模塊組成。
系統初始模塊功能是進行系統的初始化配置,包括視頻編解碼模塊的初始化以及ADSP?BF516處理器的初始化等。AV數據處理模塊用于處理音頻、視頻數據,其通過DPRAM與處理器交互,負責將從處理器發出的音視頻發往主程序模塊和HTTP模塊,或是將HTTP發來的音視頻發往處理器。參數管理模塊用于管理系統的參數,包括配置處理器、編解碼器參數和網絡參數配置等。HTTP模塊用于音視頻實時播放。主程序模塊負責控制整個軟件系統的狀態邏輯控制等。串口管理模塊及SNMP模塊分別負責系統與PC機串口管理程序通信以及系統與PC機的SNMP托管程序通信。
2 上位機軟件設計
2.1 上位機軟件系統結構
本視頻監控上位機軟件[7?8]的結構如圖3所示。其主要分為管理模塊、人機交互模塊以及播放器ActiveX控件三個模塊。其中,管理模塊包括網絡管理、參數管理、報警管理、PTZ管理和本地管理等子模塊,負責管理軟件的參數設置與配置;GUI人機交互模塊提供圖形操作界面,其分為在線升級模塊、語音對講模塊、本地回放模塊及命令收發交互模塊;ActiveX控件負責監控視頻的播放,其具有數據接收、音視頻解碼、播放以及錄像功能。
2.2 通信方式
由圖1中可知,本系統中下位機與上位機的數據通信主要通過網絡來實現。網絡的傳輸層上主要有基于無連接的UDP協議以及基于連接的TCP協議。
UDP協議為應用程序提供了一種新的方法來略過連接過程而直接發送封裝后的IP數據包,其不考慮流控制及錯誤控制,并在接收到錯誤數據段之后也不會重新傳送。UDP為軟件提供一個通信接口,對數據的處理則交給用戶進程管理,尤其適合用于實時數字音視頻數據流的傳輸。
TCP協議是一種面向連接的且可靠的、基于字節流的傳輸層通信協議。為了保證數據傳輸的可靠性,TCP協議給每一個數據包編號,且數據包傳輸按照序號進行,數據包發送后接收端實體對已成功收到的字節發回一個相應的確認(ACK);若發送端實體在規定的時間內未接收到發送成功確認,則數據將被判定為傳輸失敗,數據將會被重傳,因此數據傳輸正確率較高,其適合用于參數命令的交互中。
本文結合UDP與TCP協議的特點,分別采用UDP和TCP協議用于上位機的實時音視頻數據流傳輸及上位機與下位機服務器的參數命令交互,如圖4所示。
3 上位機軟件測試
本上位機的主頁面如圖5所示,其主要分為三部分,頁面左邊大部分為ActiveX播放器空間,其能夠支持4分屏及16分屏兩種顯示模式;頁面右邊為功能欄,包括用戶登錄模塊、本地設置模塊、參數管理模塊、PTZ操作模塊以及實時預覽/錄像回放功能。
此時主頁面處于16分屏實時預覽狀態下,其頁面如圖6(a)所示。該頁面中有16個通道,此時可從預覽頁面中觀看每一個通道的實時畫面,點擊其中任意一個通道,則該通道的畫面將被單獨放大至頁面中顯示,再點擊關閉即可回到預覽畫面。此外,點擊實時預覽頁面下方的功能切換按鈕,切換到手動錄像界面點擊錄像,即可進行錄像功能。當錄像完成后,點擊本地回放即可觀看該錄像。
點擊主頁面的DVS登錄按鈕即可進入用戶登錄界面。點擊新建連接,輸入設備名稱、IP地址、端口和用戶名及密碼,點擊添加到列表即可完成新建連接。選擇DVS設備,點擊設為預設連接,即可完成設備與通道的關聯。點擊參數管理按鈕,選擇已登錄的DVS設備,即可對該設備的參數進行設置,選擇視頻參數管理,可調節視頻的色度、亮度、飽和度、對比度以及OSD透明度等。點擊PTZ按鈕,即可進入PTZ操作界面,見圖7。
通過PTZ操作界面,可對系統的串口類型與波特率進行設置。點擊PTZ操作頁面中間的云臺控制,即可對云臺進行操作,如圖7(a)所示,通過點擊方向按鈕可控制云臺的轉動,進而改變攝像頭的轉向,從而更換監控方向。同時,可對攝像頭的聚焦、光圈等進行設置。點擊快球設置,其頁面如圖7(b)所示,可設置預設掃描點及掃面方式。同時,可使用串口通信方式,并可設置串口的波特率、數據位和停止位等,如圖7(c)所示。經多次測試結果表明,本上位機軟件運行穩定,各項功能均可得到正確的響應,且達到了設計要求。
4 結 語
監控系統能夠提供實時監控畫面顯示以及錄像回播功能,在家庭及公共場所防盜安防上均具有廣泛的應用。為了實現復雜大型網絡監控系統的操作管理,本文開發了一種視頻監控上位機軟件,采用Delphi來開發上位機的圖形用戶界面,并采用C#編程語言在Visual Studio 2013開發套件上完成播放器ActiveX控件的開發,上位機與下位機的數據通信則通過UDP以及TCP/IP協議來完成。其中,通過Socket套接字來為TCP/IP協議提供應用開發接口,實現連接、登錄驗證、參數交互及命令交互等功能,完成對下位機服務器的調度與管理。測試結果表明,本上位機軟件運行穩定,各項功能均可得到正確響應,同時也符合設計要求。
參考文獻
[1] 潘國輝.智能網絡視頻監控技術詳解與實踐[M].北京:清華大學出版社,2010.
[2] 信師國,劉慶磊,劉全賓.網絡視頻監控系統現狀和發展趨勢[J].信息技術與信息化,2010(1):23?25.
[3] 李燕.視頻監控技術應用現狀與未來發展趨勢[C]//中國通信學會信息通信網絡技術委員會2009年年會論文集.北京:中國通信學會信息通信網絡技術委員會,2009:59?60.
[4] 李文.基于ARM和Linux的嵌入式網絡視頻監控系統研究[D].武漢:武漢科技大學,2011.
[5] 毛曉磊.基于DSP的嵌入式遠程監控系統的研究[D].武漢:武漢理工大學,2008.
[6] 劉俊才.基于DSP的網絡視頻監控系統軟件研究[D].武漢:華中科技大學,2007.
[7] 陳曉偉.基于Web網絡視頻監控系統的客戶端軟件的設計與實現[D].杭州:浙江工業大學,2014.
[8] 任海科.基于無線網絡通信的視頻監控系統終端數據業務軟件設計[D].杭州:浙江大學,2013.