孫英順(杭州電子科技大學,杭州 310018)
?
海底電纜智能巡檢ROV分系統(tǒng)設計方案(控制部分)
孫英順
(杭州電子科技大學,杭州310018)
摘 要:海底電纜智能巡檢ROV應用于近海復雜海流環(huán)境,有大量的環(huán)境碰撞沖擊作業(yè),這就需要能夠對其進行高效的機器人運動控制來完成電纜的智能導航追蹤。同時,還需要搭載大量傳感器,包括水下攝像機及云臺、圖像聲吶、姿態(tài)儀、羅經(jīng)、超短基線、海纜檢測的特種設備以及其他輔助作業(yè)系統(tǒng)。
關鍵詞:海底電纜;巡檢;系統(tǒng)設計
1.1研究內容與特點
ROV控制系統(tǒng)控制對象較多且復雜,接口類型多,而且需要保證通信的實時性和高速率。另一方面,需要留出接口以便于接入特種設備和未來擴展。若采用傳統(tǒng)的單片機或者PC104等方案,會導致接口不足、兼容性差、開發(fā)周期長、擴展能力不足等缺點。故這里需要引入工業(yè)控制上的“總線”設計思路。
根據(jù)這些目標內容,控制系統(tǒng)方案需要有以下必要特點:
(1)實時性。主要保證運動控制的確定性,提高對ROV的控制效率;(2)高速性。能夠高速完成對水下數(shù)據(jù)的傳輸,提高水下監(jiān)測質量;(3)通用性。能夠提供標準的擴展接口,以方便其他設備接入。比如不同的海纜巡檢設備以及其他輔助作業(yè)系統(tǒng)。
對比目前市面上常見的工業(yè)總線,綜合考慮下,我們選擇EtherCAT作為此次設計的總線類型。它具有以下特點:
(1)實時性;(2)高速性;(3)拓撲結構好。
EtherCAT為德國Beckhoff公司首先提出并開發(fā),開發(fā)初期優(yōu)先選擇Beckhoff公司產(chǎn)品,完成樣機開發(fā)。
根據(jù)設計思路,為本次ROV水下主控器選型為Beckhoff的CX5000系列。一方面,CX5000具備2個EtherCAT 100M高速實時以太網(wǎng)接口,另一方面,CX5000系列非常小巧,價格與西門子S7-400相當。在兼顧性能、體積、價格等綜合因素下,CX5000系列為此次方案的最優(yōu)選擇。
水下端配套EtherCAT端子模塊。ROV水下復雜的工作環(huán)境配合了多種傳感器,如深度計、高度計、姿態(tài)傳感器、超短基線、溫度計、圖像聲吶、漏水檢測等等。不同的傳感器具備不同的供電方案和通信接口,需要PLC選型后相互配合,設計示意圖如圖1。
海纜巡檢ROV的軟件體系主要分為水面甲板實時操控單元和水下PLC主控單元。甲板單元主要用于收集和處理水面與水下傳感器的信息,同時通過一定算法,進行數(shù)據(jù)處理和融合,包括剔除干擾數(shù)據(jù)。同時,將這些數(shù)據(jù)轉化為可視化信息予以呈現(xiàn),如3D姿態(tài)、視頻圖像以及各個狀態(tài)信息。水下PLC主控單元主要用于將水面執(zhí)行指令轉化為ROV動作,如水下推進器運動、水下燈亮滅、機械手運動等。
3.1ROV主控軟件軟件程序設計架構
本次ROV軟件將采用C/S架構下的三層結構設計方案:
(1)表示層/UI層:用戶交互層,根據(jù)用戶需求設計軟件界面。
(2)業(yè)務邏輯層(BLL):是數(shù)據(jù)訪問和用戶交互接口的橋梁。
(3)數(shù)據(jù)訪問層(DAL):與數(shù)據(jù)庫相連,根據(jù)指令獲取對應的數(shù)據(jù)。
本次的Windows軟件環(huán)境為.NET Framwork 3.0,開發(fā)語言將采用CSharp(C#)。軟件采用三層C/S架構可以顯著的降低層和層之間的互相依賴,有利于標準化的實現(xiàn),方便后期修改和維護。同時,也有利于層之間的邏輯復用。
UI層是用戶交互層,直接與ROV操作人員進行人機互動,故要獲得良好的用戶體驗,最好設計針對一般工程用戶的交互邏輯。本次ROV軟件系統(tǒng)設計中,UI層采用了Winform的編程模式,并且根據(jù)用戶交互層操作順暢和界面美觀的要求,結合工業(yè)級圖像儀表控件實現(xiàn)了ROV主操控軟件的用戶界面。
本次軟件系統(tǒng)要求顯示ROV的各個傳感器、推進器、耐壓艙等監(jiān)控狀態(tài)和外接操作盒的操作狀態(tài)。用戶交互層的用戶界面主要可以分為以下幾個部分:
(1)軟件初始化與傳感器配置區(qū),初始化軟件狀態(tài)
(2)推進器控制區(qū),負責控制推進器使能狀態(tài)
(3)ROV運動監(jiān)控區(qū),負責監(jiān)控ROV推進去及整體運動狀態(tài)
(4)燈與攝像機控制區(qū),負責燈光與攝像機的控制。
(5)云臺控制區(qū),負責云臺的運動控制
(6)高度計檢測區(qū),用于顯示ROV離底高度
(7)深度計檢測區(qū),用于顯示ROV離水面高度
(8)溫度檢測區(qū),用于檢測電子艙內溫度
(9)航向監(jiān)控區(qū),用于監(jiān)視ROV當前運動航向
(10)液壓控制區(qū),包括液壓泵,機械關節(jié)狀態(tài)等,
(11)軟件調試區(qū),主要用于軟件Demo階段的調試,后期將取消而ROV的業(yè)務邏輯層則主要負責將接收的PC通信接口數(shù)據(jù)進行分類解析,比如本次ROV中使用的RS232/RS485串口數(shù)據(jù),Ethernet網(wǎng)絡數(shù)據(jù),USB接口數(shù)據(jù)等等,并根據(jù)解析的內容設置相關的代碼變量和標志位,同時對重要的狀態(tài)數(shù)據(jù)進行保存。
圖1針對ROV的某一業(yè)務邏輯進行舉例說明。
數(shù)據(jù)層(DAL)即數(shù)據(jù)訪問層,用于訪問所需要的數(shù)據(jù)或者保存ROV相關的狀態(tài)和操作數(shù)據(jù)。ROV的通信中涉及網(wǎng)絡接口,而C#同時作為一種網(wǎng)絡編程語言對.NET編程提供了非常全面的支持。
作者簡介:孫英順(1989-),男,河北邢臺人,研究方向:海洋設備。
DOI :10.16640/j.cnki.37-1222/t.2016.01.183