張光義,曾慶軍,戴曉強(qiáng),2,朱春磊,凌宏杰
1 江蘇科技大學(xué) 電子信息學(xué)院,江蘇 鎮(zhèn)江 212003
2 江蘇舾普泰克自動化科技有限公司,江蘇 鎮(zhèn)江 212003
3 江蘇科技大學(xué) 海洋裝備研究院,江蘇 鎮(zhèn)江 212003
隨著海洋事業(yè)的不斷發(fā)展,深海資源開發(fā)及結(jié)構(gòu)物安全檢測與維護(hù)成為必需。但是由于水下環(huán)境惡劣,人類下潛的深度有限,因此需要水下機(jī)器人潛入水下替代人類進(jìn)行安全檢測與作業(yè)。水下作業(yè)機(jī)器人通過水面控制臺進(jìn)行操控,實(shí)現(xiàn)機(jī)器人的姿態(tài)運(yùn)動以及圖像數(shù)據(jù)監(jiān)測,從而達(dá)到近距離觀測結(jié)構(gòu)物、機(jī)械手作業(yè)的功能。因此,對水下作業(yè)機(jī)器人控制系統(tǒng)及運(yùn)動控制算法的研究將有利于機(jī)器人在海洋、湖泊及大壩等各個領(lǐng)域的應(yīng)用。
水下機(jī)器人可分為3類:載人水下機(jī)器人(Human Occupied Vehicle,HOV),自主式水下機(jī)器人(Autonomous Underwater Vehicle,AUV),帶纜遙控水下機(jī)器人(ROV)[1],三者的應(yīng)用及控制系統(tǒng)不盡相同。由于ROV具有作業(yè)深度大、動力充足以及適應(yīng)水下惡劣環(huán)境的優(yōu)點(diǎn)[2],因此被廣泛地應(yīng)用于海洋管道的勘察、海洋平臺的檢查與維修、水下大壩的檢測、水產(chǎn)養(yǎng)殖等不同行業(yè)。更有臍帶纜作為安全保護(hù),極大地提高其安全性能,發(fā)生故障時不易丟失,但同時,其臍帶纜限制了ROV的運(yùn)動范圍。
國內(nèi)很多學(xué)者在機(jī)器人研制方面做了研究。許競克等[3]介紹了ROV的系統(tǒng)組成及其特點(diǎn),并探討了ROV的應(yīng)用和發(fā)展趨勢,說明水下機(jī)器人發(fā)揮的巨大作用;王宇鑫[4]介紹了“海螺一型”ROV控制系統(tǒng)結(jié)構(gòu)與艏向控制技術(shù),此款機(jī)器人下潛深度為100 m,但是無機(jī)械手進(jìn)行水下作業(yè);張瑋康等[5]研制了一款依賴機(jī)械手作業(yè)的ROV,其主要通過腹部作業(yè)機(jī)構(gòu)完成對接及回收。張銘鈞等[6]將神經(jīng)網(wǎng)絡(luò)與廣義預(yù)測控制相結(jié)合,對“海貍”水下機(jī)器人進(jìn)行縱向控制。
目前,國內(nèi)外ROV多采用推進(jìn)器實(shí)現(xiàn)單一的浮游運(yùn)動,且能夠?qū)崿F(xiàn)對水下船體及結(jié)構(gòu)物安全檢測與作業(yè)的機(jī)器人并不多。本文將設(shè)計(jì)一種通過推進(jìn)器及輪組模塊實(shí)現(xiàn)機(jī)器人浮游、爬行,通過更換機(jī)械手實(shí)現(xiàn)對附著物抓取、切割功能的控制系統(tǒng)結(jié)構(gòu);對自主研發(fā)的水下安全檢測與作業(yè)型機(jī)器人“METI-I”進(jìn)行建模,并使用最小二乘法將其六自由度動力學(xué)模型簡化為單自由度模型;設(shè)計(jì)廣義預(yù)測控制器,對ROV的艏向運(yùn)動進(jìn)行控制仿真,并進(jìn)行水池試驗(yàn)與湖上試驗(yàn),以驗(yàn)證自主研發(fā)的ROV的可靠性。
自主研發(fā)的安全檢測與作業(yè)型水下作業(yè)型機(jī)器人“METI-I”控制系統(tǒng)主要由4部分組成:水面控制臺、電源柜、臍帶纜及ROV本體。ROV控制系統(tǒng)組成如圖1所示。電源柜為水面控制臺和ROV本體提供電力,數(shù)據(jù)傳輸通過RS485半雙工進(jìn)行傳輸,傳輸介質(zhì)為雙絞線。ROV本體由9個部分組成(圖2)。
此款水下安全檢測與作業(yè)型機(jī)器人的工作深度可達(dá)300 m,具體技術(shù)參數(shù)如表1所示。操作人員進(jìn)行水下機(jī)器人作業(yè)時,通過水面控制臺的操縱搖桿、控制按鈕來實(shí)現(xiàn)ROV的運(yùn)動及機(jī)械手的動作控制,并且通過顯示器可實(shí)時監(jiān)測水下信息,包括視頻圖像信息和ROV各傳感器信息。
表1 ROV關(guān)鍵技術(shù)參數(shù)Table 1 Key parameters of ROV
ROV控制系統(tǒng)結(jié)構(gòu)包括:水面控制系統(tǒng)、臍帶纜和水下控制系統(tǒng)。其系統(tǒng)結(jié)構(gòu)如圖3所示,水面控制臺主要包括操縱搖桿、控制按鈕、顯示器和工控機(jī)等,實(shí)現(xiàn)通信數(shù)據(jù)的顯示及控制指令的下發(fā);大功率電源為水面控制臺和ROV本體提供電力;臍帶纜采用2對雙絞線和1對電源線,電源線用于電力傳輸,一對雙絞線用于RS485通信,另一對用于視頻信號傳輸。ROV本體采用嵌入式微控制器對推進(jìn)器、水下燈、機(jī)械手等進(jìn)行控制,并且對傳感器進(jìn)行數(shù)據(jù)采集。
水面控制臺用于實(shí)現(xiàn)ROV的運(yùn)動及作業(yè),主要通過單片機(jī)的I/O,AD模塊等將采集到的按鈕、電位器及搖桿信息通過USB串口發(fā)送至工控機(jī),工控機(jī)將接收到的數(shù)據(jù)經(jīng)過處理發(fā)送出去,再經(jīng)過USB轉(zhuǎn)RS485模塊后,變?yōu)镽S485信號進(jìn)行遠(yuǎn)距離傳輸。視頻信號通過放大器后接入視頻采集卡,然后通過工控機(jī),將視頻信號顯示在液晶屏上。
控制面板的數(shù)據(jù)采集采用Arduino單片機(jī)實(shí)現(xiàn)對操縱搖桿、控制按鈕的信號采集,通過串口將數(shù)據(jù)發(fā)送至上位機(jī),在串口中斷時接收上位機(jī)下發(fā)的數(shù)據(jù),并使用外部中斷進(jìn)行報(bào)錯處理。
上位機(jī)軟件采用Visual Studio MFC進(jìn)行軟件編程。視頻監(jiān)控主界面實(shí)時顯示視頻圖像,同時將ROV的姿態(tài)角、深度、艙內(nèi)溫濕度等重要監(jiān)測數(shù)據(jù)疊加顯示在視頻上。后臺數(shù)據(jù)顯示界面可以實(shí)時顯示ROV本體的各項(xiàng)監(jiān)測數(shù)據(jù)。
水下控制系統(tǒng)安裝于電子耐壓艙中,電子艙使用O型圈進(jìn)行水密,防止水滲入艙內(nèi),毀壞控制系統(tǒng)。艙內(nèi)骨架采用貼壁散熱設(shè)計(jì)(圖4),用于對器件的水冷散熱。艙內(nèi)主要布置4塊電路板,分別為功率電源板、小電源板、推進(jìn)器驅(qū)動板和主控板。ROV的運(yùn)動及作業(yè)等主要由嵌入式微控制器實(shí)現(xiàn)控制作用;功率電源板為5臺推進(jìn)器供電;小電源板功率小,用于控制電路的供電;推進(jìn)器驅(qū)動電路采用信號隔離的方式實(shí)現(xiàn)對推進(jìn)器的有效控制。
ROV本體控制系統(tǒng)采用ARM控制芯片,運(yùn)用其最小系統(tǒng)、USART模塊、ADC模塊、GPIO模塊、TIM定時器模塊和PWM輸出模塊等來控制推進(jìn)器、水下燈、云臺和機(jī)械手,并采集艙內(nèi)溫濕度、漏水、導(dǎo)航和深度等信息。
軟件設(shè)計(jì)采用IAR軟件進(jìn)行編程。通過GPIO模塊實(shí)現(xiàn)漏水檢測、溫濕度檢測、電源模塊報(bào)錯及使能控制,并且在GPIO中斷中做了定航、定深的控制算法;通過USART串口實(shí)現(xiàn)機(jī)械手的控制、導(dǎo)航數(shù)據(jù)、深度計(jì)的數(shù)據(jù)采集、云臺控制及與上位機(jī)的數(shù)據(jù)通信;通過PWM輸出模塊實(shí)現(xiàn)對水下推進(jìn)器、水下燈等設(shè)備的控制。
機(jī)械手是機(jī)器人進(jìn)行水下作業(yè)的重要組成部分,雖然此款ROV上應(yīng)用的機(jī)械手只有一個自由度,但是它配備了2種機(jī)械爪(圖5),分別為抓取式和剪切式,當(dāng)ROV在水下進(jìn)行不同作業(yè)時可隨時更換。機(jī)械手采用RS485通信方式進(jìn)行控制,其夾持力、切割力可調(diào),在設(shè)計(jì)中采用旋鈕來控制機(jī)械手,以調(diào)節(jié)夾持力與切割力。
以自主研制的水下機(jī)器人“METI-I”為研究對象,根據(jù)流體中剛體的牛頓—?dú)W拉運(yùn)動方程建立ROV動力學(xué)模型,為了便于計(jì)算,簡化了動力學(xué)模型,并對簡化的模型進(jìn)行參數(shù)辨識。
ROV在水中做三軸移動和三軸旋轉(zhuǎn)6個自由度的運(yùn)動,在運(yùn)動坐標(biāo)系下可使用下式描述水下機(jī)器人動力學(xué)特性[7]:
式中:η為固定坐標(biāo)系下ROV的位置姿態(tài)向量;v為運(yùn)動坐標(biāo)系下ROV的線速度及角速度向量;J(η)為轉(zhuǎn)換矩陣;M為ROV質(zhì)量及慣性矩陣,M∈R6×6;C(v)為ROV科氏及向心力矩陣,C(v)∈R6×6;D(v)為ROV流體阻力矩陣,D(v)∈R6×6;g(η)為重力和浮力共同作用形成的回復(fù)力矩陣,g(η)∈R6×1;τ為ROV推進(jìn)器產(chǎn)生的力矩向量,τ∈R6×1。
由于ROV在觀測及作業(yè)過程中航行速度低,完全可以忽略科氏向心力的作用;ROV的運(yùn)動方式主要有前行、后退、上浮、下潛及轉(zhuǎn)艏,所以可將其運(yùn)動方式看作是簡單的單自由度運(yùn)動,且各自由度間的耦合性很小;ROV的運(yùn)動坐標(biāo)原點(diǎn)與重心重合。令ROV的重力、浮力分別為G和B,從而可將模型簡化為[8],
ROV的浮力略大于重力,這樣使其發(fā)生故障時可以上浮至水面。
由此,可得到ROV在3個自由度方向上的動力學(xué)模型,且其在運(yùn)動坐標(biāo)系中單自由度動力學(xué)模型為
式中:mζ為慣性系數(shù);dζ和dζ|ζ|分別為一次阻力系數(shù)和二次阻力系數(shù);gζ為ROV重力及浮力的合力矩在ζ自由度方向上的分量;τζ為推進(jìn)器所產(chǎn)生推力在ζ自由度所產(chǎn)生的作用力。
ROV動力學(xué)模型的建立需要獲得眾多的水動力系數(shù),目前有3種方法來獲取水動力系數(shù):經(jīng)驗(yàn)法、試驗(yàn)法和CFD法[9],本文基于FLUENT軟件對ROV進(jìn)行數(shù)值模擬辨識。表2所示為艏向航態(tài)下不同航速對應(yīng)的阻力分布的部分?jǐn)?shù)據(jù)。
表2 角速度對應(yīng)阻力分布Table 2 The angular velocity with respect to the resistance distribution
通過MEMS微型航姿慣性導(dǎo)航系統(tǒng)可以獲得ROV的艏向角,通過艏向角對時間的微分獲得艏向角速度、艏向角加速度。利用最小二乘參數(shù)估計(jì)方法[10]求得ROV艏向角自由度方向的動力學(xué)模型:
式中:r為艏向角速度;τ為推進(jìn)器轉(zhuǎn)艏阻力。
系統(tǒng)采樣周期設(shè)置為100 ms,對式(4)運(yùn)用歐拉離散化處理,求取近似方程得:
式中,k為采樣次數(shù)。
廣義預(yù)測控制(Generalized Predictive Control,GPC)采用受控自回歸積分滑動平均(CARIMA)模型作為預(yù)測模型[11],該模型可以寫為:
式中:A(z-1),B(z-1)為z-1的多項(xiàng)式;u(t-1)為推進(jìn)器的輸入電壓值;e(t)為高斯白噪聲序列;Δ為差分算子。
為了輸出穩(wěn)定的跟隨給定值r(k),采用一階濾波器,使其柔和地跟蹤給定值,避免直接跟蹤導(dǎo)致的震蕩,難以達(dá)到穩(wěn)態(tài)。
式中,α為輸出柔化系數(shù)。
同樣地,為了避免控制系統(tǒng)的輸入電壓變化過于劇烈,在輸入電壓時引入了柔化系數(shù)β:
從而求得預(yù)測輸出值:
式中,H=[1β…βnu-10…0]T;L=Gj(z-1)H=[l1l2…ln-1]T。
定義目標(biāo)函數(shù),取極小化:
由式(11)可知,求取 Δu(k)時,只需要知道矩陣G和向量f。根據(jù)式(9)得到如下預(yù)測值:
式中,E為z-1的多項(xiàng)式。
只需要辨識最后一個方程就可以得到G的所有元素。
令X=[Δu(k)Δu(k+1)… Δu(k+n-1)1],,由最小二乘法可求得,從而得到G和f。
在對ROV運(yùn)用上述GPC算法時,在控制初始階段,由于GPC需要初始數(shù)據(jù)進(jìn)行滾動優(yōu)化,所以在控制開始時,系統(tǒng)的穩(wěn)定性和魯棒性較差,容易導(dǎo)致整個系統(tǒng)發(fā)散。經(jīng)過分析和仿真,發(fā)現(xiàn)在控制初始階段采用增量式PID(比例、積分、微分)為主算法可以減小震蕩,縮短響應(yīng)時間。按下式計(jì)算,
式中:KP,KI,KD分別為比例、積分、微分常數(shù);e(k)為k時刻輸出誤差。
為驗(yàn)證本文設(shè)計(jì)的GPC控制器在ROV艏向控制上的優(yōu)越性,以自主研發(fā)的ROV“METI-Ⅰ”為試驗(yàn)對象,進(jìn)行了艏向控制仿真試驗(yàn)。
艏向運(yùn)動模型采用如式(5)所示的近似方程。
5.1.1 定艏向PID控制仿真試驗(yàn)
首先對艏向進(jìn)行PID仿真,試驗(yàn)中使用Ziegler-Nichols方法[12]計(jì)算PID參數(shù),所得PID參數(shù)KP,KI,KD分別為2.5,10,23,仿真結(jié)果如圖6所示。
通過仿真圖可以看出,PID控制有超調(diào),經(jīng)過多次振蕩后可以穩(wěn)定。試驗(yàn)中若減小比例系數(shù),增大積分時間,則超調(diào)減小,但上升緩慢,過渡過程時間太長。
5.1.2 定艏向廣義預(yù)測控制仿真試驗(yàn)
GPC具有自適應(yīng)能力,因此跟蹤效果好。GPC的最小預(yù)測時域N1一般取1,最大預(yù)測時域N2=12;控制時域Nu為2;輸入、輸出柔化系數(shù)分別為β=0.2,α=0.49。PID參數(shù)KP,KI,KD為1.2,18,25,仿真結(jié)果如圖7~圖8所示。
從圖7中可以看出,在GPC算法下,在控制初始階段輸入輸出震蕩劇烈,超調(diào)大,因此不利于初始控制,易導(dǎo)致控制系統(tǒng)發(fā)散。圖8仿真結(jié)果為改進(jìn)GPC算法,采用增量式PID對控制初期進(jìn)行整定,即在控制初始階段使用增量式PID控制器,在后期使用GPC控制器,控制效果好。這樣就解決了控制初始不穩(wěn)定的現(xiàn)象,兼具了PID與GPC這2種控制算法的優(yōu)點(diǎn)。
對ROV分別進(jìn)行水池試驗(yàn)和湖上試驗(yàn),以驗(yàn)證ROV在水下安全檢測和作業(yè)的能力。
5.2.1 水池試驗(yàn)
ROV在水池中靜止時處于平衡狀態(tài),浮力略大于重力,這樣可以保證ROV在出現(xiàn)故障時上浮至水面。
水池試驗(yàn)中初步驗(yàn)證了ROV的穩(wěn)定性和可靠性,ROV在水池中能夠成功完成直航、轉(zhuǎn)艏、橫搖等運(yùn)動姿態(tài),機(jī)械手能夠?qū)崿F(xiàn)夾取功能,如圖9~圖10所示。ROV底部的輪組模塊和推進(jìn)器共同作用時可以使ROV實(shí)現(xiàn)貼壁前進(jìn),便于攝像頭觀測和機(jī)械手作業(yè)。
5.2.2 湖上試驗(yàn)
ROV在湖上試驗(yàn)(圖11)中下潛至湖底67.2 m時,系統(tǒng)穩(wěn)定,傳感器數(shù)據(jù)正常,攝像機(jī)圖像正常。如圖12所示,攝像頭觀測船體表面,從圖中可以清晰地看到船體表面的附著物,為機(jī)械手作業(yè)提供了有力的保障。
ROV在湖上試驗(yàn)中進(jìn)行了定航試驗(yàn)(圖13),設(shè)置初始航向夾角308°,并對試驗(yàn)數(shù)據(jù)進(jìn)行記錄保存。由圖14可以看出,ROV在定向航行時由于流的影響,航向角存在抖動,但ROV可以快速調(diào)整至設(shè)定航向,滿足定航要求。
由圖14可以看出,仿真出來的波形偏差較小,而在實(shí)際試驗(yàn)中,航向角的偏差較大。這主要是由于ROV是強(qiáng)非線性系統(tǒng),水下環(huán)境錯綜復(fù)雜,受環(huán)境的干擾大,且運(yùn)動慣性強(qiáng)。
本文介紹了水下安全檢測和作業(yè)型機(jī)器人控制系統(tǒng)組成及結(jié)構(gòu),并針對控制系統(tǒng)的架構(gòu)做了硬件與軟件的介紹。通過建立ROV 6個自由度模型,簡化得到艏向自由度的獨(dú)立模型,并設(shè)計(jì)了GPC控制器進(jìn)行航向控制。仿真表明,GPC比傳統(tǒng)的PID控制器具有更好的跟隨性能,使用PID對GPC控制器初期數(shù)據(jù)整定,使其具有更好的快速性和穩(wěn)定性。通過對ROV的水池及湖上試驗(yàn),驗(yàn)證了ROV控制系統(tǒng)的可靠性及控制算法的優(yōu)越性;證明了ROV的水下安全檢測及作業(yè)能力。本文所提出的控制系統(tǒng)設(shè)計(jì)方案對其他水下機(jī)器人具有借鑒意義。