張桂軍 馮凱 呂錦釗 陳文林
摘? ? 要:本文研究了無(wú)人船控制系統(tǒng)的硬件及軟件設(shè)計(jì),給出了硬件系統(tǒng)的組成結(jié)構(gòu),提出了軟件設(shè)計(jì)的流程,并進(jìn)行了無(wú)人船控制系統(tǒng)的軟件開(kāi)發(fā)??刂葡到y(tǒng)硬件平臺(tái)以PC104為核心,主要組件有控制器、通訊模塊、各種傳感器等;軟件平臺(tái)則是在DOS系統(tǒng)的基礎(chǔ)上進(jìn)行開(kāi)發(fā);最后進(jìn)行了無(wú)人船的實(shí)船試驗(yàn),結(jié)果表明,該控制系統(tǒng)能實(shí)現(xiàn)對(duì)無(wú)人船的有效控制。
關(guān)鍵詞:無(wú)人船;控制系統(tǒng);實(shí)船試驗(yàn)
中圖分類(lèi)號(hào):U666.1? ??? ? ? ? ? ? ? ? ? ? ? ? ? ? 文獻(xiàn)標(biāo)識(shí)碼:A
Abstract: This paper studies the control system of the unmanned ship, introduces the structure of the hardware system, puts forward the procedure of software design and develops the software of the control system. PC104 is the core of the hardware platform, the main components are controller, communication module, various sensors and so on, and the software platform is developed on the basis of DOS system. Finally, the real ship test of unmanned ship is carried out. The test results show that the control system can effectively control the unmanned ship.
Key words: Unmanned ship; Control system; Real ship test
1? ? ?前言
隨著海洋開(kāi)發(fā)的逐步深入,人們對(duì)無(wú)人船的認(rèn)識(shí)和需求都在不斷加強(qiáng)。無(wú)人船是一種具有自主航行能力,可自主實(shí)現(xiàn)環(huán)境感知、目標(biāo)探測(cè)等任務(wù)的智能化水面機(jī)器人[1-2]。無(wú)人船在軍事領(lǐng)域已經(jīng)得到了實(shí)際應(yīng)用,“斯巴達(dá)偵查兵”等無(wú)人船已正式加入美國(guó)作戰(zhàn)部隊(duì)序列,開(kāi)始接受戰(zhàn)爭(zhēng)的考驗(yàn)。無(wú)人船已被公認(rèn)是未來(lái)戰(zhàn)爭(zhēng)中爭(zhēng)奪信息優(yōu)勢(shì)、實(shí)施精確打擊、完成特殊作戰(zhàn)任務(wù)的重要手段之一,在未來(lái)信息化的戰(zhàn)場(chǎng)中將發(fā)揮重要作用。此外,無(wú)人船在惡劣海況下搜救、海底地形探測(cè)等方面也有著巨大的實(shí)用價(jià)值,可代替人們?cè)谒嫱瓿晌kU(xiǎn)、繁重的任務(wù),因此無(wú)人船受到越來(lái)越廣泛的關(guān)注[3]。
無(wú)人船正由半自動(dòng)化逐漸向智能化發(fā)展[4]。我國(guó)的無(wú)人船控制技術(shù)還有很大的提升空間,許多關(guān)鍵領(lǐng)域的難題還有待攻克[5],其控制系統(tǒng)的性能優(yōu)劣將直接影響到無(wú)人船的功能能否順利實(shí)現(xiàn)。本文在已有的船模和推進(jìn)器的基礎(chǔ)上,設(shè)計(jì)了一套無(wú)人船的控制系統(tǒng),初步實(shí)現(xiàn)了無(wú)人船控制系統(tǒng)的順利運(yùn)行。
2? ? 無(wú)人船控制系統(tǒng)簡(jiǎn)介
2.1? ?控制系統(tǒng)的組成
無(wú)人船的控制系統(tǒng)分為岸基控制平臺(tái)和船載控制系統(tǒng)兩部分:船載控制系統(tǒng)以PC104為硬件平臺(tái),軟件平臺(tái)則是采用DOS系統(tǒng)。主要硬件組件,由控制器、GPS接收機(jī)、姿態(tài)傳感器、無(wú)線串口通訊模塊以及推力電機(jī)等組成;岸基控制平臺(tái),則是以PC為硬件平臺(tái),以VisualC++為開(kāi)發(fā)控制界面。
2.2? ?控制過(guò)程
無(wú)人船的控制過(guò)程分為兩個(gè)階段:第一階段是系統(tǒng)初始化,裝載任務(wù)參數(shù);第二階段則是任務(wù)執(zhí)行階段。在初始化階段,岸基控制平臺(tái)設(shè)定相關(guān)的航行任務(wù)及控制參數(shù),參數(shù)裝載完成后由岸基控制平臺(tái)發(fā)送相關(guān)指令;船載控制系統(tǒng)接收到航行指令及參數(shù)后,控制器解算控制指令,隨即進(jìn)入任務(wù)執(zhí)行階段。
船載控制系統(tǒng)開(kāi)始周期性地采集GPS以及姿態(tài)傳感器的相關(guān)信息,并上傳至船載控制系統(tǒng)對(duì)相關(guān)信息進(jìn)行處理;然后將處理得到的速度、位置、姿態(tài)等信息傳送至控制器;控制器將接收到的航行信息輸入到航行任務(wù)的控制算法中,控制系統(tǒng)完成控制參數(shù)的解算后將新的控制參數(shù)發(fā)送至船載控制系統(tǒng),船載控制系統(tǒng)根據(jù)接收到的最新控制指令控制無(wú)人船的運(yùn)行;上述過(guò)程在無(wú)人船執(zhí)行任務(wù)的運(yùn)行過(guò)程中不斷循環(huán),并保持到航行任務(wù)結(jié)束或者接收到岸基控制平臺(tái)的停止運(yùn)行的指令為止。無(wú)人船控制系統(tǒng)的組成圖,如圖1所示。
3? ? 無(wú)人船控制系統(tǒng)硬件設(shè)計(jì)
3.1? ?船載控制系統(tǒng)硬件設(shè)計(jì)
根據(jù)試驗(yàn)項(xiàng)目的不同,船載控制系統(tǒng)的硬件可進(jìn)行適當(dāng)?shù)脑鰷p。本文研究的無(wú)人船旨在搭建一個(gè)實(shí)驗(yàn)平臺(tái),初步進(jìn)行無(wú)人船航向及速度的控制。系統(tǒng)的硬件設(shè)備主要包括:PC104工控機(jī)、姿態(tài)傳感器、GPS接收機(jī)、無(wú)線串口通訊模塊以及電機(jī)控制模塊等,其硬件結(jié)構(gòu)原理圖如圖2所示。
(1)PC104工控機(jī),主要由下列幾部分組成:CPU模塊、數(shù)據(jù)采集模塊及串口擴(kuò)展模塊。CPU模塊通過(guò)總線與其它模塊進(jìn)行信息交流,用于處理傳感器數(shù)據(jù)及進(jìn)行航行控制管理等;串口擴(kuò)展模塊擴(kuò)展了四個(gè)串口,選擇其中的1個(gè)串口用于采集姿態(tài)傳感器信息;數(shù)據(jù)采集模塊選其中的一個(gè)I/O口和兩個(gè)D/A口,分別用作繼電器控制信號(hào)和電機(jī)控制信號(hào)的輸出;
(2)GPS主要是為船載控制系統(tǒng)提供船的實(shí)時(shí)經(jīng)度、速度、緯度等信息,其自主定位精度不小于1m;
(3)姿態(tài)傳感器,實(shí)際是一個(gè)微型的測(cè)量航向和姿態(tài)的系統(tǒng),它由磁力計(jì)和加速度計(jì)組成。磁力計(jì)能夠測(cè)出船只航行的方向;加速度計(jì)能夠測(cè)出與重力的夾角,從而計(jì)算出船只的姿態(tài)。
傳感器內(nèi)置的處理器,功耗極低,航向角輸出值沒(méi)有漂移,同時(shí)提供的角速度、三軸加速度以及磁場(chǎng)強(qiáng)度等都經(jīng)過(guò)內(nèi)部校準(zhǔn),它為船載控制系統(tǒng)實(shí)時(shí)提供船的航向角、俯仰角、橫滾角等姿態(tài)信息;
(4)無(wú)線通訊模塊,使用Lora無(wú)線通信技術(shù),通信距離遠(yuǎn)、誤碼率低、可靠性高,負(fù)責(zé)岸基控制平臺(tái)與船載控制系統(tǒng)之間的信息傳輸,同時(shí)將無(wú)人船的速度、經(jīng)緯度、姿態(tài)等信息反饋給岸基控制平臺(tái),以便于岸基控制平臺(tái)對(duì)無(wú)人船的實(shí)時(shí)航行狀態(tài)進(jìn)行監(jiān)控;
(5)電機(jī)控制模塊用于驅(qū)動(dòng)直流電機(jī),CPU輸出數(shù)字信號(hào),經(jīng)過(guò)數(shù)模轉(zhuǎn)換后變成一個(gè)電壓信號(hào),通過(guò)調(diào)節(jié)電壓的大小來(lái)調(diào)節(jié)電機(jī)的轉(zhuǎn)速。電機(jī)控制模塊左右各一個(gè),用于調(diào)節(jié)航速和航向;
(6)信號(hào)隔離器,負(fù)責(zé)將工控機(jī)和電機(jī)進(jìn)行隔離,避免兩者共地,這樣電機(jī)所產(chǎn)生的干擾信號(hào)不會(huì)通過(guò)地線傳導(dǎo)到控制系統(tǒng),增加了系統(tǒng)的可靠性。
3.2? ?岸基控制平臺(tái)硬件設(shè)計(jì)
岸基控制平臺(tái)的硬件設(shè)備,主要由PC機(jī)和無(wú)線通訊模塊兩部分組成:PC機(jī)主要用于運(yùn)行無(wú)人船的控制軟件,將控制信息通過(guò)專(zhuān)用無(wú)線通訊模塊發(fā)送至船載控制系統(tǒng)。
4? ? 無(wú)人船控制系統(tǒng)軟件設(shè)計(jì)
4.1? ?船載控制系統(tǒng)軟件應(yīng)用方案
船載控制系統(tǒng)的功能,主要是實(shí)現(xiàn)無(wú)人船的航行控制。在無(wú)人船啟動(dòng)階段,進(jìn)行硬件接口和軟件接口的初始化;開(kāi)始航行后,分別讀取由GPS提供的無(wú)人船的速度、經(jīng)度、緯度及由姿態(tài)傳感器提供的偏航角、俯仰角、橫滾角等信息。根據(jù)岸基控制平臺(tái)設(shè)定的航行任務(wù),船載控制系統(tǒng)根據(jù)本船實(shí)時(shí)航行狀態(tài)給出新的控制指令,通過(guò)采集板輸出電機(jī)控制D/A和I/O信號(hào)來(lái)驅(qū)動(dòng)無(wú)人船的航行,船載控制系統(tǒng)將最新的航行狀態(tài)信息發(fā)送至岸基控制平臺(tái),便于岸上人員及時(shí)了解無(wú)人船的運(yùn)行狀況;同時(shí),船載控制系統(tǒng)根據(jù)無(wú)人船新的航行信息進(jìn)行控制算法的解算,再給出新的航行指令,此過(guò)程一直循環(huán)到任務(wù)結(jié)束或者岸基平臺(tái)發(fā)出新指令為止。
船載控制系統(tǒng)軟件流程圖,如圖3所示。
4.2? ?姿態(tài)傳感器數(shù)據(jù)處理算法
姿態(tài)傳感器數(shù)據(jù)關(guān)系到船只航行的方向和垂直角度,所以非常重要。它內(nèi)置的處理器采集來(lái)自加速度計(jì)和磁力計(jì)的數(shù)據(jù),對(duì)比岸基控制平臺(tái)發(fā)來(lái)的任務(wù),根據(jù)這個(gè)誤差來(lái)計(jì)算和調(diào)節(jié)航行中的狀態(tài)偏差。
4.3? 岸基控制平臺(tái)軟件應(yīng)用方案
岸基控制平臺(tái)的硬件主要是PC機(jī)和無(wú)線通訊模塊,其主要功能是進(jìn)行無(wú)人船航行任務(wù)的設(shè)置、發(fā)送指令信息、接收監(jiān)控信息并做好數(shù)據(jù)記錄等;在遇到緊急情況時(shí),岸基控制平臺(tái)還應(yīng)具備一項(xiàng)停止無(wú)人船運(yùn)動(dòng)的功能。
5? ? ?實(shí)船試驗(yàn)主要參數(shù)及解算
為了驗(yàn)證無(wú)人船的航向控制性能,對(duì)無(wú)人船進(jìn)行航向角跟蹤控制試驗(yàn)。無(wú)人船在船尾安裝兩個(gè)電動(dòng)螺旋槳推進(jìn)器,兩個(gè)尾部推進(jìn)器的轉(zhuǎn)速差產(chǎn)生旋轉(zhuǎn)力矩,其所受旋轉(zhuǎn)力矩以及推進(jìn)力為:
設(shè)定航向?yàn)檎狈较颍春较蚪菫椋o(wú)人船初始的航向角為,實(shí)驗(yàn)結(jié)果如圖4所示:在初始階段,無(wú)人船航向角與設(shè)定航向角差值較大,無(wú)人船的航向角可迅速調(diào)整至設(shè)定值;在隨后運(yùn)行的過(guò)程中,實(shí)際航向角基本圍繞著設(shè)置值附近上下波動(dòng),其跟蹤控制的穩(wěn)態(tài)誤差不大于,基本滿足無(wú)人船路(下轉(zhuǎn)第頁(yè))(上接第頁(yè))
徑跟蹤控制實(shí)驗(yàn)的要求。
6? ? 結(jié)論
本文搭建了一套無(wú)人船控制系統(tǒng),并進(jìn)行詳細(xì)的軟、硬件設(shè)計(jì),最后采用實(shí)船試驗(yàn)的方式對(duì)控制系統(tǒng)的應(yīng)用效果進(jìn)行了驗(yàn)證:控制系統(tǒng)基本實(shí)現(xiàn)了事先設(shè)定的航向角的跟蹤控制,初步證明了控制系統(tǒng)的有效性。但本試驗(yàn)為湖中預(yù)制區(qū)域試驗(yàn),試驗(yàn)環(huán)境遠(yuǎn)沒(méi)有實(shí)際海洋環(huán)境惡劣,而且試驗(yàn)功能相對(duì)簡(jiǎn)單,對(duì)于系統(tǒng)在復(fù)雜海況環(huán)境下進(jìn)行復(fù)雜控制任務(wù)的性能,還有待更深入的研究。
參考文獻(xiàn)
[1]石 祥.水面無(wú)人船控制系統(tǒng)設(shè)計(jì)與研究[D].上海海洋大學(xué),2015.
[2]何 萍.全球海戰(zhàn)機(jī)器人[M].北京:解放軍出版社,2012.
[3]張樹(shù)凱,劉正江,張顯庫(kù),等.無(wú)人船艇的發(fā)展及展望[J].世界海運(yùn),2015,38(9):29-36.
[4]曹娟,王雪松.國(guó)內(nèi)外無(wú)人船發(fā)展現(xiàn)狀及未來(lái)前景[J].北京:中國(guó)船檢,2018,(5):94-97.
[5]佟科斌.水質(zhì)采樣無(wú)人船控制系統(tǒng)設(shè)計(jì)[D].海南大學(xué),2017.