趙 蕊,余 琨,鄭文成,向先波
(1.中國艦船研究設計中心,武漢 430064; 2.華中科技大學 船舶與海洋工程學院,武漢 430074)
基于以太網通信的水下航行器遠程監控系統設計
趙 蕊1,余 琨1,鄭文成1,向先波2
(1.中國艦船研究設計中心,武漢 430064; 2.華中科技大學 船舶與海洋工程學院,武漢 430074)
討論以太網Socket通信基本原理和航行器監控系統通信協議的確定,介紹便攜式水面監控臺和水下控制系統的功能及設計方法,完成水池試驗聯調,試驗結果表明,基于TCP/IP的通信協議,水面監控臺可以實時地完成對水下航行器的數據監視、遠程遙控和半自主控制。
TCP/IP;水下航行器;監控系統
無人水下航行器因具有體積小、航行噪聲低等優點,被廣泛應用于打撈魚雷、滅雷[1]、情報搜集、監視和偵察[2]等軍事領域[3],同時在海上緊急搜救[4]、海洋調查[5]等民用研究領域也發揮著重要作用。對于有便攜式水面監控臺的無人水下航行器,監控系統起到實時監視航行器位姿、狀態信息以及下達與執行控制命令的作用[6],因此必須考慮其實時性以及安全性[7]。本文主要研究基于面向連接的以太網標準TCP/IP通信協議的水下航行器監控系統,充分利用TCP/IP傳輸的快速性以及水下核心控制系統VxWorks的實時性,滿足無人水下航行器水面和水下兩級監控系統之間的實時數據通信要求。
無人水下航行器實時監控系統包含便攜式水面監控臺和水下控制系統,兩者之間數據通信基于以太網TCP/IP標準協議。無人水下航行器通過傳感器獲取自身位姿,狀態等信息,基于TCP/IP協議通過光纖收發器周期性將位姿、狀態信息傳給水面監控臺,水面監控臺完成數據信息的接受、顯示與存儲。水面監控臺也可實時獲取監控界面的控制按鈕信息,按照通信協議實時傳給水下控制系統,水下控制系統通過嵌入式控制處理器PC/104堆棧進行決策,控制被控機構協同動作,達到預期的運動效果。監控系統組成見圖1。

圖1 無人水下航行器監控系統組成示意
具體通信數據幀按照約定協議進行交互,格式見表1。每組數據幀包含報文頭,數據,校驗碼以及結束符,其中數據包含布爾量、整型和浮點型三種類型數據,對數據進行求和檢驗。

表1 數據幀格式
便攜式水面監控臺與水下控制系統基于TCP/IP協議進行網絡通信,網絡編程采取最常用的客戶/服務器模式,其中水下控制器為客戶機,便攜式水面監控臺為服務器。TCP/IP協議作為面向連接網絡通信協議,其網絡應用中服務器首先要調用socket建立套接字,然后用bind綁定本地地址與端口,接著進行偵聽和等待連接,客戶機通過connect與服務器建立連接,連接后通過調用read和write進行數據的讀寫,最后關閉Socket通信[8-9]??蛻?服務器模式原理見圖2。某一周期通信過程中,水下控制器通過write函數將無人水下航行器的位姿(經度、緯度、艏向角、俯仰角、橫滾角)和狀態(電池狀態、電機參數、漏水檢測)信息上行傳給水面監控臺后通過write函數將在線遙控和半自主控制命令下行給水下控制器。

圖2 客戶/服務器模式原理示意
3.1 水面監控系統
本無人水下航行器配置的便攜式水面監控臺為一臺工控機。Microsoft 公司推出的C++集成開發環境Visual C++,由于其良好的界面和可操作性,加上支持標準C/C++規范,在水下機器人上位機開發中得到了廣泛的應用[10],利用MATLAB設計圖形用戶界面,MATLAB可以創建圖形用戶界面GUI(graphical user interface),它是用戶和計算機之間交流的工具。MATLAB將所有GUI支持的用戶控件都集成在這個環境中并提供界面外觀、屬性和行為響應方式的設置方法,而且具有強大的繪圖功能,可以輕松地獲得更高質量的曲線圖[11],水面監控軟件主界面見圖3。
便攜式水面監控臺具備實時顯示無人水下航行器的位姿和狀態信息,并將這些數據信息按照原始數據格式存儲于后臺數據庫中,便于數據分析。同時也具備對無人水下航行器在線遙控和半自主控制,其中在線遙控即是通過操縱一對舵機、開啟主推電機和輔推電機這三種執行機構的單一或者組合操作實現水下航行器的水面或水下空間運動;半自主控制即水面人員通過細光纜對預編程水下航行器的作業任務(自動定深和自動定向)進行人工干預[12]。此外,還配置緊急處理按鈕。

圖3 水面監控界面
3.2 水下控制系統
本無人水下航行器的核心控制系統為PC/104堆棧,它配置了美國WindRiver公司開發的VxWorks實時操作系統,VxWorks是一個運行在目標機上的高性能、可裁剪的嵌入式實時操作系統[13],具有專門為實時嵌入式系統設計開發的操作系統內核,見圖4。VxWorks只占用很小的存儲空間,并可高度裁剪,此外具備高效的多任務管理和微秒級的中斷任務循環調度,快速確定的上下文切換以及靈活的任務間通訊,保證了水下控制系統能以較高的效率運行。

圖4 VxWorks可擴展內核

圖5 水下控制系統任務調度
無人水下航行器的任務調度見圖5,其中感知任務集是水下航行器控制系統獲取本體自身狀態和外界信息的重要途徑,包含電池信息接收、漏水信息接收、視頻信息采集、深度信息接收以及位姿信息接收5個任務,他們和網絡通信任務之間是基于時間片輪轉調度,執行任務集中的單項調試,自動定深和自動定向3個任務是通過網絡通信任務發起和結束的。感知任務集獲取的位置狀態信息賦值給全局變量和數組中,數組信息作為網絡通信任務的信息源,變量信息作為執行任務集的信息源。單項調試可完成水下航行器攝像頭、動力電源開關,主推、輔推以及舵機單獨或組合聯動。

圖6 無人水下航行器及水面監控主界面
無人水下航行器水池試驗監控主界面見圖6。在滿足設計通信頻率要求前提下,經過長達數月的水池功能試驗,基于TCP/IP協議通信誤碼率較低,便攜式水面監控臺實時顯示位姿、狀態信息,采集軟按鈕輸入信息,水下控制系統基于VxWorks操作系統的wind實時內核可實時獲取水面監控臺發出的在線遙控、半自主控制以及緊急人工干預命令信息,合理調度資源完成對上述緊急命令信息的處理。實際水池試驗結果表明,基于TCP/IP協議的無人水下航行器監控系統數據通信實時性好,滿足水面平臺遠程監視、遙控和半自主運動控制的要求。
[1] 徐玉如,李彭超.水下機器人發展趨勢[J].自然雜志,2011,33(3):125-132.
[2] 徐玉如,蘇玉民,龐永杰.海洋空間智能無人運載器技術發展展望[J].中國艦船研究,2006,1(3):1-4
[3] 傅金祝.無人水下航行器與自主水下航行器的價值與發展前景[J].水雷戰與艦船防護,2006(3):1-6.
[4] 馮 凱,嚴衛生,李執山,等.基于MSP430的遙控無人水下航行器控制系統設計[J].計算機測量與控制,2014,22(1):122-124.
[5] 嚴浙平,趙玉飛,陳 濤.海洋勘測水下無人航行器的自主控制技術研究[J].哈爾濱工程大學學報,2013,34(9):1152-1158.
[6] 羅 瑜.遠程監控系統中網絡通信的研究與實現[D].武漢:武漢理工大學,2006.
[7] 王建國,姜春萌,吳方良,等.水下航行體的改進S面運動控制器[J].中國艦船研究,2013,8(5):41-45.
[8] 張允剛,劉常春,劉 偉等.基于Socket和多線程的遠程監控系統[J].控制工程,2006,13(4):175-177.
[9] 李 焱.PC104計算機網絡通信系統設計與研究[J].微計算機信息,2007,23(12):48-49.
[10] 翟宇毅,張瑞勇.基于VC++的超小型水下機器人上位機人機交互界面設計[J].自動化與儀器儀表,2011(5):66-68.
[11] 南 洋,周 靜,孟開元,等.基于Matlab的GUI的界面設計[J].石油儀器,2008(6):76-78.
[12] 徐鵬飛,崔維成,謝俊元,等.遙控自治水下機器人控制系統[J].中國造船,2010,51(4):100-110.
[13] 徐惠明.基于VxWorks的嵌入式系統及實驗[M].北京:北京郵電大學出版社,2006.
Remote Monitoring and Control System of Underwater Vehicle Based on Ethernet Network
ZHAO Rui1, YU kun1, ZHENG Wen-cheng1, XIANG Xian-bo2
(1.China Ship Development and Design Center, Wuhan 430064, China;2.College of Naval Architecture and Ocean Engineering, Huazhong University of Science and Technology, Wuhan 430064, China)
The fundamental principle of Socket and determination of the communication protocol are introduced. The functions and design methods of surface monitoring station and underwater monitoring system are discussed to build the two-stage system and design the software. The system is tested in the water tank. Test results show that surface monitoring station can complete the real-time data monitoring of underwater vehicles, remote operation and semi-autonomous control.
TCP/IP; underwater vehicle; monitoring; control system
10.3963/j.issn.1671-7953.2015.06.031
2014-12-19
小型無人水下航行器樣機控制系統研發 [YFA12-04-(27)68]
趙 蕊(1981-),女,碩士,工程師
U674.7;U675.79
A
1671-7953(2015)06-0134-03
修回日期:2015-01-28
研究方向:無人水下航行器總體及控制技術
E-mail: zhaorui701s@163.com