賈永興,陳 斌,楊 宇,朱 瑩
(解放軍理工大學(xué) 通信工程學(xué)院, 江蘇 南京 210007)
?
一種小型水下機(jī)器人平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)
賈永興,陳 斌,楊 宇,朱 瑩
(解放軍理工大學(xué) 通信工程學(xué)院, 江蘇 南京 210007)
設(shè)計(jì)并實(shí)現(xiàn)了一套功能高度集成的遠(yuǎn)程控制水下機(jī)器人平臺(tái),該平臺(tái)由水下機(jī)器人、中繼浮標(biāo)和上位機(jī)控制終端組成。機(jī)器人自身搭載的傳感器和攝像頭可以對(duì)環(huán)境狀態(tài)進(jìn)行偵測(cè),并通過(guò)中繼浮標(biāo)轉(zhuǎn)發(fā)給控制終端,由控制終端遠(yuǎn)程控制水下機(jī)器人完成水下作業(yè)。該平臺(tái)實(shí)現(xiàn)方案具有成本低、功耗低、可移植性和擴(kuò)展性強(qiáng)等特點(diǎn),可用于水下探測(cè)和簡(jiǎn)單清障任務(wù)。
水下機(jī)器人;中繼浮標(biāo);上位機(jī)終端;遠(yuǎn)程控制
隨著智能控制和傳感器技術(shù)的發(fā)展[1],用機(jī)器人來(lái)替代人完成水下作業(yè)已得到國(guó)內(nèi)外的廣泛重視。尤其是在未知的水下環(huán)境,由于機(jī)器人的承受能力大大超過(guò)載人系統(tǒng),并且能完成許多載人系統(tǒng)無(wú)法完成的工作,所以水下機(jī)器人逐漸扮演著越來(lái)越重要的角色。它可以輔助人類完成海洋探測(cè)、水下救援等工作,也可以用于長(zhǎng)時(shí)間地在水下偵察敵方潛艇、艦艇的活動(dòng)情況,所以在民用和軍用上都有廣泛的前景。目前一些水下機(jī)器人雖具有觀察能力和一定的水下簡(jiǎn)單作業(yè)功能[2],但是平臺(tái)和設(shè)備比較固定,價(jià)格昂貴,改造起來(lái)不靈活,許多水下機(jī)器人的本體只是推進(jìn)器和防水?dāng)z像頭的簡(jiǎn)單組裝,通過(guò)岸上連接多根電纜線對(duì)其進(jìn)行控制,適用場(chǎng)合受限,可拓展性不強(qiáng)。本文設(shè)計(jì)并實(shí)現(xiàn)了一款小型水下機(jī)器人平臺(tái),可通過(guò)遠(yuǎn)程操作,控制機(jī)器人在未知水域下潛,對(duì)周?chē)颦h(huán)境進(jìn)行初步的探察,并控制機(jī)械臂和抓手,完成簡(jiǎn)單的清障等功能,同時(shí)預(yù)留了各種傳感器和功能拓展的端口,以適應(yīng)不同的水下任務(wù)。
圖1 水下機(jī)器人平臺(tái)總體設(shè)計(jì)架構(gòu)
水下機(jī)器人與控制終端可以采用多種通信和控制方式[3]。為了擴(kuò)展機(jī)器人活動(dòng)范圍,本文設(shè)計(jì)了水下光纖、水上無(wú)線的方式,具體架構(gòu)如圖1所示。水下機(jī)器人平臺(tái)主要由水下機(jī)器人、中繼浮標(biāo)、上位機(jī)控制終端和相應(yīng)的控制軟件組成。水下機(jī)器人接收經(jīng)中繼浮標(biāo)轉(zhuǎn)發(fā)的上位機(jī)命令,完成水下作業(yè),同時(shí)將采集的視頻和傳感器數(shù)據(jù)經(jīng)中繼浮標(biāo)轉(zhuǎn)發(fā)給上位機(jī)顯示。中繼浮標(biāo)工作于水面,通過(guò)光纖與水下機(jī)器人通信完成命令和數(shù)據(jù)的中繼,通過(guò)無(wú)線方式與上位機(jī)進(jìn)行數(shù)據(jù)中繼。上位機(jī)接收來(lái)自水下機(jī)器人的采集視頻和數(shù)據(jù),并根據(jù)獲得的信息,發(fā)出控制命令,遠(yuǎn)程控制機(jī)器人的運(yùn)動(dòng)。
為了完成探測(cè)和清障等水下作業(yè),水下機(jī)器人主要由機(jī)械結(jié)構(gòu)、光端機(jī)、主控板、推進(jìn)器、攝像頭和各種傳感器等組成,架構(gòu)如圖2所示。從功能上分為機(jī)械動(dòng)力模塊、信息采集模塊、通信模塊、控制模塊、供電穩(wěn)壓模塊等。
圖2 水下機(jī)器人硬件構(gòu)成
機(jī)械動(dòng)力模塊主要包括水下平臺(tái)核心艙、外形構(gòu)架、機(jī)械臂、電機(jī)和防水舵機(jī)等部分。核心艙用于安裝攝像頭和電控系統(tǒng),六個(gè)直流電機(jī)用于驅(qū)動(dòng)機(jī)器人運(yùn)動(dòng),其中兩個(gè)電機(jī)負(fù)責(zé)水平方向的運(yùn)動(dòng),包括前進(jìn)、后退、左轉(zhuǎn)和右轉(zhuǎn),四個(gè)電機(jī)負(fù)責(zé)機(jī)器人垂直方向的運(yùn)動(dòng),包括上浮和下潛。機(jī)械臂采用了兩自由度結(jié)構(gòu),由兩個(gè)防水舵機(jī)和連接件構(gòu)成,分別控制機(jī)械臂的夾持器的轉(zhuǎn)動(dòng)和抓手的開(kāi)合的動(dòng)作。
核心艙中的主控板CPU采用基于Cortex-M4架構(gòu)的STM32F407[4],該控制器具有豐富的外設(shè)資源。設(shè)計(jì)中使用了GPIO口控制電機(jī)驅(qū)動(dòng)板、機(jī)械臂舵機(jī)和云臺(tái)舵機(jī),使用了I2C接口讀取水深測(cè)量傳感器的數(shù)據(jù),使用兩個(gè)串口與光端機(jī)通信。主要完成以下功能:(1)通過(guò)串口1讀取來(lái)自光端機(jī)的控制命令,解析后根據(jù)參數(shù)控制機(jī)械模塊,以調(diào)整云臺(tái)姿勢(shì),驅(qū)動(dòng)水下推進(jìn)器、機(jī)械臂等裝置進(jìn)行水下作業(yè);(2)讀取水深測(cè)量傳感器MS5803-30BA的數(shù)據(jù),并通過(guò)串口2轉(zhuǎn)發(fā)給光端機(jī)。
機(jī)器人與浮標(biāo)之間采用光纜通信,所以水下機(jī)器人和浮標(biāo)都安裝了ANT-數(shù)字視頻光端機(jī)。該光端機(jī)包括一個(gè)光接口、兩路以太網(wǎng)端口和三路485數(shù)據(jù)端口。攝像頭將采集的視頻通過(guò)RJ45口連至光端機(jī)網(wǎng)口,傳感器數(shù)據(jù)經(jīng)主控板和光端機(jī)之間的232與485電平轉(zhuǎn)換電路,交付給光端機(jī)485口。視頻和傳感數(shù)據(jù)通過(guò)光端機(jī)合成后,由一根光纜傳送到浮標(biāo)上的光端機(jī)。
2.2 中繼浮標(biāo)
中繼浮標(biāo)工作是浮在水面上,由電池組、多功能光端機(jī)、主控板、無(wú)線模塊等組成,主要完成水下機(jī)器人和上位機(jī)之間的信號(hào)中繼以及給水下機(jī)器人供電。具體硬件構(gòu)成如圖3所示。
圖3 中繼浮標(biāo)的硬件構(gòu)成
中繼浮標(biāo)的主控板CPU仍采用STM32F407,以完成水下機(jī)器人和上位機(jī)之間的數(shù)據(jù)交換。水下機(jī)器人采集的視頻和傳感器數(shù)據(jù)在中繼浮標(biāo)上使用了不同的信道傳送給上位機(jī)。視頻信號(hào)由光端機(jī)網(wǎng)口直接轉(zhuǎn)發(fā)給無(wú)線路由器,通過(guò)WiFi鏈路傳送給上位機(jī);主控板從光端機(jī)讀取傳感器數(shù)據(jù)后,通過(guò)DL-22無(wú)線串口模塊轉(zhuǎn)發(fā)給上位機(jī)。無(wú)線串口模塊同時(shí)接收來(lái)自上位機(jī)的控制命令,經(jīng)主控板轉(zhuǎn)發(fā)給光端機(jī)485端口,以傳送給水下機(jī)器人,控制機(jī)器人的動(dòng)作。主控板和光端機(jī)之間同樣使用了RS232與RS485電平轉(zhuǎn)換電路。
2.3 上位機(jī)控制終端
3.2.2 評(píng)價(jià)方法(1)期末操作考試按健康評(píng)估實(shí)訓(xùn)教學(xué)大綱要求,實(shí)行評(píng)分標(biāo)準(zhǔn)一樣、操作項(xiàng)目一樣、考試時(shí)間一樣,兩組按學(xué)號(hào)抽簽考試,操作滿分為100分,60分為及格,90分以上為優(yōu)秀。實(shí)驗(yàn)組和對(duì)照組平均成績(jī)以Mean表示,采用t檢驗(yàn);優(yōu)良率采用χ2檢驗(yàn)進(jìn)行統(tǒng)計(jì)學(xué)分析。
圖4 上位機(jī)終端構(gòu)成
上位機(jī)包括手柄控制器、無(wú)線收發(fā)模塊、計(jì)算機(jī)三個(gè)部分,架構(gòu)如圖4所示。手柄控制器由雷霆PXN-2013搖桿改造而成,通過(guò)USB接口連接至電腦,通過(guò)搖動(dòng)搖桿和操作搖桿上的按鍵,遠(yuǎn)程控制機(jī)器人的運(yùn)動(dòng)。電腦通過(guò)WiFi鏈路接收并顯示水下機(jī)器人采集上傳的視頻;通過(guò)無(wú)線串口模塊接收并顯示傳感器信息。同時(shí)檢查手柄搖桿狀態(tài)的變化,將搖桿狀態(tài)信息進(jìn)行編碼,轉(zhuǎn)換為對(duì)機(jī)器人的控制命令,并交由無(wú)線模塊發(fā)送給中繼浮標(biāo)。
軟件代碼主要用于控制機(jī)器人平臺(tái)各模塊的工作和通信,以完成所需的任務(wù)。包括上位機(jī)終端的軟件代碼、中繼浮標(biāo)的控制代碼和水下機(jī)器人的控制代碼。上位機(jī)代碼是在Microsoft Visual Studio 2010集成環(huán)境下采用C#語(yǔ)言編寫(xiě)[5],中繼浮標(biāo)和水下機(jī)器人代碼是在Keil集成環(huán)境下采用C語(yǔ)言編寫(xiě),生成目標(biāo)代碼后,下載到STM32F407上運(yùn)行。
3.1 水下機(jī)器人平臺(tái)
圖5為控制水下機(jī)器人工作的軟件流程圖。水下機(jī)器人軟件主要完成讀取傳感器信息、接收控制命令、驅(qū)動(dòng)推進(jìn)器和機(jī)械臂、數(shù)據(jù)打包傳輸?shù)热蝿?wù)。
圖5 水下機(jī)器人軟件流程
實(shí)現(xiàn)中STM32F407定時(shí)讀取水深測(cè)量傳感器數(shù)據(jù),并通過(guò)串口2傳送給光端機(jī)。同時(shí)通過(guò)串口1接收上位機(jī)經(jīng)光端機(jī)轉(zhuǎn)發(fā)的命令,根據(jù)預(yù)先定義的編碼格式,解析命令參數(shù),分析所需控制的電機(jī)和舵機(jī)編號(hào)、轉(zhuǎn)速和方向等,以驅(qū)動(dòng)水下機(jī)器人的行進(jìn)、調(diào)整攝像頭云臺(tái)姿態(tài)和控制機(jī)械臂抓取、釋放物體等動(dòng)作。
攝像頭采集的視頻信息則通過(guò)RJ45網(wǎng)線直接傳給光端機(jī),不需要編寫(xiě)專門(mén)的控制代碼,光電轉(zhuǎn)換后通過(guò)光纜傳到水面。
3.2 水面浮標(biāo)
水面浮標(biāo)主要負(fù)責(zé)供電和通信中繼,相關(guān)控制代碼同樣是在Keil集成環(huán)境下采用C語(yǔ)言編寫(xiě),下載到STM32F407主控板上執(zhí)行,具體軟件流程圖如圖6所示。CPU讀取無(wú)線串口接收來(lái)自上位機(jī)的命令數(shù)據(jù),經(jīng)STM32主控板傳送給光端機(jī)的RS485數(shù)據(jù)端,經(jīng)光端機(jī)轉(zhuǎn)化成光信號(hào)后,由光纜傳給水下機(jī)器人;同時(shí)STM32主控板接收來(lái)自光端機(jī)RS485口的傳感器數(shù)據(jù),再通過(guò)無(wú)線串口發(fā)送給上位機(jī)。視頻信號(hào)由光端機(jī)的網(wǎng)絡(luò)口直接連至無(wú)線路由器,通過(guò)WiFi直接發(fā)送,不需要專門(mén)編寫(xiě)控制軟件。
圖6 水面浮標(biāo)軟件流程
3.3 上位機(jī)控制終端
上位機(jī)代碼是基于PC采用C#語(yǔ)言編寫(xiě),完成視頻和傳感器數(shù)據(jù)的顯示,同時(shí)遠(yuǎn)程控制機(jī)器人的水下動(dòng)作。軟件流程如圖7所示。啟動(dòng)程序后,首先檢測(cè)USB口連接的操控手柄和無(wú)線串口模塊,并進(jìn)行初始化。然后讀取無(wú)線串口接收到的傳感器信息,進(jìn)行解析后,將機(jī)器人下潛的深度信息在計(jì)算機(jī)上顯示。同時(shí)通過(guò)USB口讀取和解析手柄的狀態(tài)信息,進(jìn)行編碼后,通過(guò)無(wú)線串口轉(zhuǎn)發(fā)給中繼浮標(biāo)。
圖7 上位機(jī)軟件流程圖
視頻的接收和顯示過(guò)程是:通過(guò)建立計(jì)算機(jī)與水面浮標(biāo)路由器之間的WiFi連接,再使用攝像頭自帶的相關(guān)軟件,即可顯示水下機(jī)器人采集到的視頻。
根據(jù)上述設(shè)計(jì),實(shí)現(xiàn)了一款小型的水下機(jī)器人平臺(tái)原型機(jī)。表1給出了機(jī)器人在水下測(cè)試的各項(xiàng)參數(shù)指標(biāo)。在上位機(jī)可實(shí)時(shí)觀測(cè)到機(jī)器人采集的水下視頻和水深傳感器信息,通過(guò)手柄搖桿操作,可遠(yuǎn)程控制機(jī)器人在水下的動(dòng)作。中繼浮標(biāo)工作于水面上,通過(guò)無(wú)線方式與上位機(jī)通信,完成信號(hào)的中繼和水下機(jī)器人的供電。水下機(jī)器人在上位機(jī)遠(yuǎn)程控制下,能夠完成前進(jìn)、后退、左轉(zhuǎn)、右轉(zhuǎn)、上浮、下潛和機(jī)械臂抓取釋放物體等水下任務(wù)。
表1 機(jī)器人的各項(xiàng)參數(shù)指標(biāo)
本文設(shè)計(jì)并實(shí)現(xiàn)了一套集接收指令、控制驅(qū)動(dòng)、采集數(shù)據(jù)、分析反饋等多種功能于一身的水下機(jī)器人平臺(tái),通過(guò)遠(yuǎn)程控制,可利用機(jī)器人搭載的傳感器和攝像頭對(duì)水下環(huán)境參數(shù)進(jìn)行監(jiān)測(cè),完成基本的偵察和清障任務(wù)。該平臺(tái)實(shí)現(xiàn)方案具有成本低、體積小、可移植性和擴(kuò)展性強(qiáng)等特點(diǎn)。平臺(tái)水上無(wú)線、水下光纖的通信方式使水下機(jī)器人的使用范圍得到了拓展。下一步需要完善平臺(tái)控制軟件和功能,加裝更多的傳感器和作業(yè)器件,提高機(jī)器人的智能化,以適應(yīng)多種水下作業(yè)任務(wù),提高該機(jī)器人平臺(tái)在軍事、科研、海洋開(kāi)發(fā)等方面的應(yīng)用價(jià)值。
[1] 秦志強(qiáng).先進(jìn)機(jī)器人傳感器技術(shù)[M]. 北京:電子工業(yè)出版社,2010.
[2] 柯冠巖,吳濤,李明.水下機(jī)器人發(fā)展現(xiàn)狀與趨勢(shì)[J]. 國(guó)防科技,2013, 34(5):44-47.
[3] 楊薇.水下機(jī)器人通信與控制技術(shù)研究[J]. 艦船科學(xué)技術(shù),2015,37(6):206-209.
[4] 廖義奎.ARM Cortex-M4嵌入式實(shí)戰(zhàn)開(kāi)發(fā)精解—基于STM32F4[M]. 北京:北京航空航天大學(xué)出版社,2013.
[5] 胡學(xué)鋼,劉東杰,呂進(jìn)來(lái).C#應(yīng)用開(kāi)發(fā)與實(shí)踐[M]. 北京:人民郵電出版社,2012.
Design and realization of a small underwater vehicle platform
Jia Yongxing, Chen Bin, Yang Yu, Zhu Ying
(College of Communications Engineering, PLA University of Science and Technology, Nanjing 210007, China)
This paper designs and realizes a set of highly-integrated remote control underwater vehicle platform. It is composed of an underwater vehicle, a relay buoy and an upper computer control terminal. Based on camera and other sensors in it, the vehicle can detect environmental parameters and transmit them to upper computer terminal by relay buoy. The upper computer terminal can realize remote control of the vehicle to complete some underwater tasks. The platform has many advantages, such as low cost, low power consumption, good portability and scalability. It can be used to survey and obstacle removal.
underwater vehicle; relay buoy; upper computer terminal; remote control
TP242.3
A
10.19358/j.issn.1674- 7720.2017.12.011
賈永興,陳斌,楊宇,等.一種小型水下機(jī)器人平臺(tái)的設(shè)計(jì)與實(shí)現(xiàn)[J].微型機(jī)與應(yīng)用,2017,36(12):36-38.
2016-12-25)
賈永興(1974-),男,博士,副教授,主要研究方向:電路設(shè)計(jì)、智能控制和多媒體信息處理。
陳斌(1975-),男,碩士,講師,主要研究方向:?jiǎn)纹瑱C(jī)與嵌入式系統(tǒng)應(yīng)用。
楊宇(1984-),男,碩士,講師,主要研究方向:?jiǎn)纹瑱C(jī)技術(shù)。