基于Qt的AUV監控系統設計與開(kāi)發(fā)
摘要:自主式水下機器人是當今機器人研究領(lǐng)域最熱門(mén)的話(huà)題之一。它在海洋調查,資源勘探以及軍事領(lǐng)域有著(zhù)廣泛的應用前景。AUV的智能化水平在不斷的提高。而且工作環(huán)境也越來(lái)越復雜,因此對AUV的軟件系統要求也更高,可靠高效的AUV軟件系統對于實(shí)現AUV的智能化和保證其自身安全非常重要。監控系統軟件作為AUV軟件系統的一部分是實(shí)現AUV航行控制的關(guān)鍵。由于Qt開(kāi)發(fā)平臺的優(yōu)良跨平臺特性,本系統采用了基于Qt的軟件模塊化設計。
關(guān)鍵詞:AUV;Qt;監控系統;軟件模塊化
0 引言
自主式水下機器人(Autonomous Underwater Vehicles,AUV)代表了未來(lái)水下機器人技術(shù)的發(fā)展方向,是當前世界各國研究工作的熱點(diǎn)。對AUV的實(shí)時(shí)監測和控制是AUV能否安全高效執行任務(wù)的關(guān)鍵之一。本課題針對AUV的體系結構和實(shí)際應用,為其設計實(shí)現一套高可靠性,通信靈活,簡(jiǎn)單易用,具有模塊化特點(diǎn)的監控系統軟件。水下機器人實(shí)現實(shí)際應用的前提條件是具備自主導航能力,自主導航主要研究移動(dòng)機器人在已知的環(huán)境當中,如何從指定起始位姿運動(dòng)到指定目標位姿,并執行指定的任務(wù)。在這種情況下由于環(huán)境地圖是已知的,所以導航過(guò)程始終依賴(lài)于先驗的環(huán)境地圖信息。但是隨著(zhù)移動(dòng)機器人應用范圍的不斷擴大和移動(dòng)機器人自主導航問(wèn)題研究的不斷深入,在未知地圖環(huán)境下的自主導航成為一個(gè)需要解決問(wèn)題。這就需要自主探索技術(shù),以獲得環(huán)境地圖信息??煽康亩ㄎ皇菣C器人自主導航的基礎,自主導航中的路徑規劃、路徑跟蹤等任務(wù)的進(jìn)行都需要機器人能夠在運動(dòng)過(guò)程中連續定位。也就是說(shuō),機器人在未知環(huán)境下的自主導航中:一方面機器人如何在位置環(huán)境下確定自身的位姿;另一方面,機器人如何準確描述環(huán)境特征建立環(huán)境地圖。這2個(gè)問(wèn)題成為導航領(lǐng)域的研究難點(diǎn)。為了解決
這2個(gè)難點(diǎn)就需要移動(dòng)機器人的同時(shí)定位與地圖構建算法(Simultaneous Localization and Mapping,SLAM)。在SLAM中,移動(dòng)機器人使用自身攜帶的傳感器獲得環(huán)境地圖信息,識別標識未知環(huán)境中的特征標志,然后根據移動(dòng)機器人與環(huán)境特征標志之間的相對位置和控制量等估計機器人和環(huán)境特征的全局坐標。SLAM算法具有重要的理論與應用價(jià)值,認為是實(shí)現真正的全自主移動(dòng)機器人的關(guān)鍵。本文“C-RANG-ER”AUV試驗平臺便是為研究SLAM算法而搭建的,文中介紹了基于該算法的基于Qt的AUV監控系統軟件的設計與實(shí)現。
1 C-RANGER AUV簡(jiǎn)介
C-RANGER AUV實(shí)驗平臺采用開(kāi)架式設計,是一種小型試驗用AUV,有2個(gè)電子艙和5個(gè)水下推進(jìn)器,搭載有主動(dòng)聲納、垂直陀螺儀、多普勒測速儀、數字羅盤(pán)等傳感器2 C-RANGER體系結構 圖1是C-RANGER系統的總體框架,主要包括決策控制系統、數據采集與處理系統、數據存儲系統、底層控制系統、AUV實(shí)體,具體介紹如下:
(1)同時(shí)定位和地圖構建系統。是機器人的核心算法部分。該系統對各種傳感器數據進(jìn)行分析,根據SLAM算法計算出機器人自身位姿并且構建環(huán)境地圖。
(2)決策控制系統。包括路徑規劃與智能控制,利用SLAM算法提供的地圖,規劃一條從起始點(diǎn)到終點(diǎn)的路徑,智能控制利用SLAM提供的位姿數據對比路徑信息產(chǎn)生控制信息。
(3)底層控制系統。負責接收決策控制系統的控制指令以驅動(dòng)推進(jìn)器,控制AUV的航行姿態(tài),并返回AUV的狀態(tài)參數,如倉內參數參數、推進(jìn)器狀態(tài)等。
(4)數據采集與處理系統。負責采集AUV上搭載的各種傳感器的數據和控制器的參數信息,經(jīng)初步處理后傳送到SLAM系統,并保存到數據存儲系統。
(5)數據存儲系統是AUV的數據中心。負責記錄AUV航行過(guò)程中的各種數據,并為SLAM系統提供必要的數據。
2 Qt簡(jiǎn)介
Qt是諾基亞開(kāi)發(fā)的一個(gè)跨平臺的C++圖形用戶(hù)界面應用程序框架。它提供給應用程序開(kāi)發(fā)者建立藝術(shù)級的圖形用戶(hù)界面所需的所用功能。Qt是完全面向對象的,很容易擴展,并且允許真正地組件編程。QtCreator是一個(gè)用于Qt開(kāi)發(fā)的輕量級跨平臺集成開(kāi)發(fā)環(huán)境。Qt Creator可帶來(lái)兩大關(guān)鍵益處:提供首個(gè)專(zhuān)為支持跨平臺開(kāi)發(fā)而設計的集成開(kāi)發(fā)環(huán)境(IDE),并確保首次接觸Qt框架的開(kāi)發(fā)人員能迅速上手和操作。Qt Creator包含了一套用于創(chuàng )建和測試基于Qt應用程序的高效工具,包括:一個(gè)高級的C++代碼編輯器上下文感知幫助系統可視化調試器源代碼管理項目和構建管理工具。本監控軟件正是在Qt Creator開(kāi)發(fā)環(huán)境中完成的。
測速儀相關(guān)文章:測速儀原理
評論