《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目七 數(shù)據(jù)信息可視化的實(shí)現(xiàn)_第1頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目七 數(shù)據(jù)信息可視化的實(shí)現(xiàn)_第2頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目七 數(shù)據(jù)信息可視化的實(shí)現(xiàn)_第3頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目七 數(shù)據(jù)信息可視化的實(shí)現(xiàn)_第4頁
《ROS機(jī)器人操作系統(tǒng)基礎(chǔ)》 課件 項(xiàng)目七 數(shù)據(jù)信息可視化的實(shí)現(xiàn)_第5頁
已閱讀5頁,還剩50頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

任務(wù)一初識數(shù)據(jù)可視化01任務(wù)二實(shí)現(xiàn)小海龜速度數(shù)據(jù)的可視化02任務(wù)三查看ROS進(jìn)程網(wǎng)絡(luò)計(jì)算圖03任務(wù)四使用RViz實(shí)現(xiàn)數(shù)據(jù)的可視化04任務(wù)五使用TF坐標(biāo)變換實(shí)現(xiàn)小海龜跟隨運(yùn)動01197任務(wù)一

初識數(shù)據(jù)可視化1981.?了解數(shù)據(jù)可視化的概念2.?了解數(shù)據(jù)可視化工具rqt和RViz任務(wù)目標(biāo)199一、數(shù)據(jù)可視化的概念數(shù)據(jù)可視化是將數(shù)據(jù)轉(zhuǎn)化為圖形、圖表、圖像或其他可視形式的過程,旨在幫助用戶更好地理解和分析數(shù)據(jù)。通過可視化,復(fù)雜的數(shù)據(jù)集可以以直觀、易懂的方式展示,可以清楚地顯示數(shù)據(jù)中的模式、趨勢和關(guān)聯(lián)關(guān)系。數(shù)據(jù)可視化在各個(gè)領(lǐng)域中都有廣泛應(yīng)用,包括科學(xué)研究、工程分析、商業(yè)智能、市場營銷、醫(yī)療健康等,它為人們提供了一種強(qiáng)大的工具來探索數(shù)據(jù)、發(fā)現(xiàn)信息和傳達(dá)見解?;A(chǔ)知識200數(shù)據(jù)可視化的目標(biāo)是通過圖形化手段清晰、有效地傳達(dá)和交流信息,因此美學(xué)形式和功能需要并重,設(shè)計(jì)和表達(dá)需要綜合考慮,以確保信息的準(zhǔn)確性、可理解性和吸引力,使得觀察者能夠從中獲得有意義的洞察和理解。201二、數(shù)據(jù)可視化工具ROS內(nèi)部有豐富多樣的可視化工具,如果考慮ROS用戶個(gè)人發(fā)布的工具,那么ROS的工具數(shù)量將變得非常龐大。本任務(wù)專注介紹GUI(圖形用戶界面)開發(fā)工具(如rqt)和三維可視化工具(如RViz)。2021.?GUI開發(fā)工具——rqtROS為機(jī)器人開發(fā)提供了各種GUI工具,包括將每個(gè)節(jié)點(diǎn)的層次結(jié)構(gòu)顯示為圖形且顯示當(dāng)前節(jié)點(diǎn)和話題狀態(tài)的rqt_graph、將消息顯示為二維圖形的rqt_plot等。從ROSFuerte版本開始,這些GUI開發(fā)工具被整合到了一個(gè)名為rqt的工具中,它集成了30多種工具,可以作為一個(gè)綜合的GUI工具來使用。此外,RViz也被集成到rqt的插件中,這使rqt成為ROS的一個(gè)不可缺少的GUI工具。203rqt是基于Qt開發(fā)的,而Qt是一個(gè)廣泛應(yīng)用于計(jì)算機(jī)編程的跨平臺框架,用戶可以方便、自由地添加和開發(fā)插件。rqt的部分常用插件及其功能見下表。204節(jié)點(diǎn)管理器與節(jié)點(diǎn)、節(jié)點(diǎn)與節(jié)點(diǎn)之間的關(guān)系205節(jié)點(diǎn)管理器與節(jié)點(diǎn)、節(jié)點(diǎn)與節(jié)點(diǎn)之間的關(guān)系206節(jié)點(diǎn)管理器與節(jié)點(diǎn)、節(jié)點(diǎn)與節(jié)點(diǎn)之間的關(guān)系2.?三維可視化工具——RViz(1)RViz的功能RViz是ROS的三維可視化工具,具有以下兩個(gè)主要功能:1)外部信息的圖形顯示:RViz可以以圖形化的方式顯示外部信息,如機(jī)器人模型、傳感器數(shù)據(jù)、地圖等。通過RViz,用戶可以直觀地觀察和了解機(jī)器人的位置和姿態(tài)、環(huán)境中的物體等,這對于機(jī)器人的導(dǎo)航、感知、決策等任務(wù)有非常大的幫助。2072)發(fā)布控制消息:除了顯示外部信息,RViz還允許用戶發(fā)布控制消息到ROS系統(tǒng)中。通過RViz的界面,用戶可以發(fā)送控制指令,如設(shè)置目標(biāo)位置、設(shè)定機(jī)器人的運(yùn)動速度等,從而在RViz環(huán)境中直接與機(jī)器人進(jìn)行交互,觀察其行為和效果。208(2)RViz的界面RViz的界面如圖所示,包括工具欄、項(xiàng)目顯示區(qū)、3D視圖顯示區(qū)、觀測視角設(shè)置區(qū)和時(shí)間顯示區(qū)。209RViz的界面1)工具欄。RViz界面的上部為工具欄,包括視角控制、目標(biāo)設(shè)置、地點(diǎn)發(fā)布等,還可以添加自定義的插件。工具欄中的一些工具可以用來操縱3D視角,如展示機(jī)器人模型的關(guān)系、調(diào)整機(jī)器人視角、設(shè)置導(dǎo)航目標(biāo)等。2)項(xiàng)目顯示區(qū)。RViz界面的左側(cè)為項(xiàng)目顯示區(qū),顯示項(xiàng)目包含一系列的可視化插件及其屬性,顯示當(dāng)前選擇的插件并能對插件的屬性進(jìn)行設(shè)置,這些插件的主要功能是查看ROS消息并以可視化的方式顯示出來。消息可以是傳感器數(shù)據(jù),如拍攝的圖像、3D點(diǎn)云等,也可以是機(jī)器人模型、變換tf等數(shù)據(jù)。2103)3D視圖顯示區(qū)。RViz界面的中間部分為3D視圖顯示區(qū),能夠顯示外部信息。4)觀測視角設(shè)置區(qū)。RViz界面的右側(cè)為觀測視角設(shè)置區(qū),可以設(shè)置不同的觀測視角。使用視圖面板可以保存不同的3D視角,并通過加載保存的設(shè)置信息來切換不同的視角。5)時(shí)間顯示區(qū)。RViz界面的下部為時(shí)間顯示區(qū),包括系統(tǒng)時(shí)間、ROS時(shí)間等,用戶也可以通過這個(gè)面板對RViz進(jìn)行初始化設(shè)置。211任務(wù)二

實(shí)現(xiàn)小海龜速度數(shù)據(jù)的可視化2121.?了解rqt_plot命令的使用方法2.?能使用rqt_plot命令實(shí)現(xiàn)小海龜速度數(shù)據(jù)的可視化任務(wù)目標(biāo)213rqt_plot命令的使用rqt_plot命令可以在ROS中繪制數(shù)據(jù)的曲線圖,使用戶能夠更直觀地觀察和分析數(shù)據(jù)的變化趨勢,從而更好地進(jìn)行數(shù)據(jù)處理和決策。例如,當(dāng)開發(fā)過程中需要查看機(jī)器人的原始數(shù)據(jù)時(shí),使用rqt_plot命令可以將這些原始數(shù)據(jù)以曲線的形式繪制出來,更清晰地展現(xiàn)數(shù)據(jù)的變化情況。在ROS中,可以通過輸入rqt_plot命令來打開曲線坐標(biāo)窗口,可以在窗口上方的輸入框中添加或刪除話題?;A(chǔ)知識214215曲線坐標(biāo)窗口界面打開曲線坐標(biāo)窗口界面的方法有兩種,分別為使用命令行啟動和通過GUI界面選擇。1.使用命令行啟動,命令如下:$rqt_plot/[topic_name]例如,輸入以下命令,打開小海龜?shù)?turtle1/pose的相關(guān)界面。$rqt_plot/turtle1/pose/x/turtle1/pose/y2162.通過GUI界面選擇,操作步驟如下:(1)輸入以下命令,啟動rqt_plot。$rqt_plot(2)在GUI界面“Topic”右側(cè)文本框中輸入話題,然后單擊文本框右側(cè)的加號即可完成話題的添加,如圖所示。217添加話題若不想顯示某個(gè)話題,可以單擊圖中的減號按鈕,再選擇相應(yīng)話題以取消顯示即可。218取消顯示某個(gè)話題任務(wù)三

查看ROS進(jìn)程網(wǎng)絡(luò)計(jì)算圖2191.?了解計(jì)算圖的概念與作用2.?掌握rqt_graph命令的作用3.?能使用rqt_graph命令查看小海龜仿真器的計(jì)算圖任務(wù)目標(biāo)220一、計(jì)算圖的概念與作用在ROS中,計(jì)算是通過進(jìn)程網(wǎng)絡(luò)來實(shí)現(xiàn)的,其中每個(gè)進(jìn)程被稱為一個(gè)ROS節(jié)點(diǎn),這些節(jié)點(diǎn)相互連接形成了一個(gè)計(jì)算圖(graph),它描述了節(jié)點(diǎn)之間的通信和交互關(guān)系。計(jì)算圖中的重要概念包括節(jié)點(diǎn)、節(jié)點(diǎn)管理器、參數(shù)服務(wù)器、消息、話題、服務(wù)和消息記錄包,如圖所示。其中,橢圓形表示一個(gè)運(yùn)行中的ROS節(jié)點(diǎn);矩形表示ROS話題,用于在節(jié)點(diǎn)之間傳遞消息,箭頭表示消息的流向;長方體表示TF變換關(guān)系?;A(chǔ)知識221222計(jì)算圖實(shí)例二、rqt_graph命令的作用在ROS系統(tǒng)中,rqt_graph是rqt程序包中的一個(gè)重要工具。它以圖形化的方式顯示整個(gè)通信架構(gòu),清晰地展示當(dāng)前正在運(yùn)行的節(jié)點(diǎn)和話題以及消息在系統(tǒng)中的流向。通過使用rqt_graph命令可以獲得系統(tǒng)的整體情況和信息流動的可視化展示,學(xué)習(xí)者可以了解消息是如何在不同節(jié)點(diǎn)之間進(jìn)行傳遞和處理的,從而更好地理解整個(gè)系統(tǒng)的運(yùn)行原理。此外,rqt_graph還能幫助學(xué)習(xí)者快速發(fā)現(xiàn)和糾正通信方面的問題,提高開發(fā)調(diào)試的效率。223任務(wù)四

使用RViz實(shí)現(xiàn)數(shù)據(jù)的可視化2241.?了解RViz可視化元素菜單中各項(xiàng)目的功能2.?掌握RViz中可視化元素的添加方法3.?能使用RViz實(shí)現(xiàn)數(shù)據(jù)的可視化任務(wù)目標(biāo)225一、RViz可視化元素菜單使用RViz的過程中經(jīng)常會用到可視化元素菜單,如圖所示,菜單的調(diào)用方法是單擊顯示屏(Displays)菜單下方的“Add”。該菜單用于控制三維視圖(3DView)中顯示的信息內(nèi)容,各項(xiàng)目的說明見下表。基礎(chǔ)知識226227可視化元素菜單(部分)228可視化元素菜單內(nèi)容說明229可視化元素菜單內(nèi)容說明230可視化元素菜單內(nèi)容說明二、RViz中可視化元素的添加方法在RViz中添加可視化元素的方法有兩種,一種是按顯示類型添加,另一種是按話題添加。1.?按顯示類型添加(1)在顯示屏菜單中單擊“Add”,彈出“rviz”對話框。231單擊“Add”(2)單擊“rviz”對話框中的“Bydisplaytype”選項(xiàng)卡,選擇想要的顯示類型,如“Map”,選中后單擊“OK”,如圖所示。232按顯示類型添加2.?按話題添加(1)在顯示屏菜單中單擊“Add”,彈出“rviz”對話框。(2)單擊對話框中的“Bytopic”選項(xiàng)卡,即可顯示所有的話題選項(xiàng),選擇需要的話題,最后單擊“OK”,如圖所示。233按話題添加任務(wù)五

使用TF坐標(biāo)變換實(shí)現(xiàn)小海龜跟隨運(yùn)動2341.?了解TF坐標(biāo)變換的基礎(chǔ)知識2.?掌握TF坐標(biāo)變換功能包的作用和使用方法3.?掌握常用的TF工具4.?能使用TF坐標(biāo)變換實(shí)現(xiàn)小海龜跟隨運(yùn)動任務(wù)目標(biāo)235一、TF坐標(biāo)變換坐標(biāo)變換是機(jī)器人學(xué)中一個(gè)非?;A(chǔ)且重要的概念。機(jī)器人本體和機(jī)器人的工作環(huán)境中存在大量的組件元素,這些組件元素所處的相對位置和姿態(tài)各有不同,而在機(jī)器人的設(shè)計(jì)和應(yīng)用中都會涉及不同組件位置變換的計(jì)算,這就需要引入坐標(biāo)系以及坐標(biāo)變換的概念?;A(chǔ)知識236ROS中的坐標(biāo)變換系統(tǒng)由TF功能包維護(hù)。在許多ROS功能包(如SLAM建圖和機(jī)器人導(dǎo)航)中,TF功能包用于發(fā)布三維空間中各個(gè)坐標(biāo)系之間的變換關(guān)系,下圖顯示了世界坐標(biāo)系、激光雷達(dá)坐標(biāo)系和機(jī)器人坐標(biāo)系之間的變換關(guān)系,這種變換關(guān)系在機(jī)器人感知和導(dǎo)航中至關(guān)重要。通常情況下,三維坐標(biāo)系的+X方向用紅色坐標(biāo)軸表示,+Y方向用綠色坐標(biāo)軸表示,+Z方向用藍(lán)色坐標(biāo)軸表示。237238坐標(biāo)變換二、TF坐標(biāo)變換功能包的作用一個(gè)完整的機(jī)器人系統(tǒng)通常有很多三維坐標(biāo)系,如圖所示是PR2機(jī)器人的所有三維坐標(biāo)系,如世界坐標(biāo)系(worldframe)、機(jī)器人中心坐標(biāo)系(baseframe)、機(jī)械夾爪坐標(biāo)系(gripperframe)、機(jī)器人頭部坐標(biāo)系(headframe)等,這些坐標(biāo)系都會隨著時(shí)間的推移發(fā)生變化。239240PR2機(jī)器人的所有三維坐標(biāo)系TF坐標(biāo)變換功能包的作用是根據(jù)時(shí)間緩沖維護(hù)多個(gè)坐標(biāo)系之間的坐標(biāo)變換關(guān)系,它可以在任何時(shí)間跟蹤多個(gè)坐標(biāo)系。它使用樹型數(shù)據(jù)結(jié)構(gòu),可以幫助開發(fā)者方便、快捷地完成點(diǎn)、向量等坐標(biāo)的變換。通過TF坐標(biāo)變換功能包,開發(fā)者可以請求以下類型的數(shù)據(jù):1.坐標(biāo)系之間的變換關(guān)系:TF坐標(biāo)變換功能包允許開發(fā)者查詢不同坐標(biāo)系之間的變換關(guān)系,如一個(gè)坐標(biāo)系相對于另一個(gè)坐標(biāo)系的平移和旋轉(zhuǎn)關(guān)系。2412.時(shí)刻的坐標(biāo)變換:TF坐標(biāo)變換功能包能夠記錄并提供坐標(biāo)系在不同時(shí)間點(diǎn)的變換關(guān)系。開發(fā)者可以查詢過去或未來的特定時(shí)間點(diǎn)的坐標(biāo)變換數(shù)據(jù),以便對歷史或預(yù)測的位置、姿態(tài)進(jìn)行分析或規(guī)劃。3.運(yùn)動中的坐標(biāo)變換:對于運(yùn)動中的物體或機(jī)器人,TF坐標(biāo)變換功能包能夠提供動態(tài)的坐標(biāo)變換數(shù)據(jù)。開發(fā)者可以獲取物體或機(jī)器人在不同時(shí)間點(diǎn)的位置和姿態(tài)信息,以便進(jìn)行實(shí)時(shí)的控制和反饋。242三、TF坐標(biāo)變換功能包的使用TF坐標(biāo)變換功能包的使用包括訂閱TF變換和發(fā)布TF變換兩個(gè)方面。1.?訂閱TF變換通過訂閱TF變換,開發(fā)者可以接收并監(jiān)聽來自TF坐標(biāo)變換系統(tǒng)的變換消息,獲取兩個(gè)坐標(biāo)系之間的變換關(guān)系,并將其應(yīng)用于機(jī)器人的導(dǎo)航、感知或其他相關(guān)任務(wù)中,進(jìn)行相應(yīng)的處理和決策。2432.?發(fā)布TF變換通過發(fā)布TF變換,開發(fā)者可以向系統(tǒng)發(fā)布坐標(biāo)系之間的變換關(guān)系。ROS系統(tǒng)中可能存在多個(gè)不同的部分同時(shí)發(fā)布TF變換,每個(gè)部分都可以通過發(fā)布TF變換消息將坐標(biāo)變換關(guān)系直接插入TF樹中。這種方式無須另外的同步設(shè)置,各個(gè)部分可以獨(dú)立地向TF樹中添加坐標(biāo)變換關(guān)系。通過這種方式,開發(fā)者可以方便地管理和維護(hù)坐標(biāo)變換關(guān)系,確保系統(tǒng)中各個(gè)部分的數(shù)據(jù)在時(shí)間和空間上保持同步。244四、TF工具TF提供了豐富的終端工具來幫助開發(fā)者調(diào)試和創(chuàng)建TF變換。1.?tf_monitortf_monitor工具的功能是打印TF樹中所有坐標(biāo)系的發(fā)布狀態(tài),命令的格式如下,可以通過輸入?yún)?shù)來查看指定坐標(biāo)系的發(fā)布狀態(tài),程序運(yùn)行結(jié)果如圖所示。$rosruntftf_monitor245246查看坐標(biāo)系的發(fā)布狀態(tài)2.?tf_echotf_echo工具的功能是查看指定坐標(biāo)系之間的變換關(guān)系,命令的格式如下。以小海龜為例,程序運(yùn)行結(jié)果如圖所示。$rosruntftf_echo<source_frame><target_frame>247查看坐標(biāo)系之間的變換關(guān)系3.?static_transform_publisherstatic_transform_publisher工具的功能是定義兩個(gè)坐標(biāo)系之間的靜態(tài)坐標(biāo)變換,該工具在標(biāo)定機(jī)器人傳感器的位姿時(shí)應(yīng)用較多,命令的格式如下:$static_transform_publisherxyzyawpitchrollframe_id

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論