国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

ros2官方文檔(基于humble版本)學習筆記

這篇具有很好參考價值的文章主要介紹了ros2官方文檔(基于humble版本)學習筆記。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

由于市面上專門講ROS 2開發(fā)的書籍不多,近期看完了《ROS機器人開發(fā)實踐》其中大部分內容還是基于ROS 1寫的,涉及topic,service,action等一些重要的概念,常用組件,建模與仿真,應用(機器視覺,機器語音,SLAM,機械臂),最后一章寫了ROS 2的安裝,話題通信和服務通信的示例??傆X得不是太系統(tǒng),于是決定按著ROS官方文檔學習ROS 2,把學習過程中的要點記錄下來。

一、安裝ROS 2

?官方提供了部分操作系統(tǒng)平臺的ROS 2的二進制安裝包,分別為Ubuntu Linux、RHEL、Windows,不同ROS 2的版本對應的Linux版本也略有不同。
截至目前有兩個ROS 2的版本還沒有到項目終止日期(EOL end-of-life),一個是最新的發(fā)布版本為Iron Irwini,發(fā)布時間是2023年5月23日,EOL date是2024年11月,另一個是Humble Hawksbill,發(fā)布時間是2022年5月23日,EOL date是到2027年5月,比較后我選擇了Humble這個版本來學習。
ros2官方文檔(基于humble版本)學習筆記,ROS2,學習,筆記
為了方便,我選擇了直接安裝二進制安裝包,首先在虛擬機上安裝了Ubuntu 22.04(Jammy),ros2官方文檔(基于humble版本)學習筆記,ROS2,學習,筆記
然后按照官方文檔一步一步安裝即可。
命令整理如下:

?
#--------準備工作--------
#1.確保有universe源
sudo apt install software-properties-common
sudo add-apt-repository universe
#2.獲取ROS 2 GPG key以便在接下來的apt命令中使用
sudo apt update && sudo apt install curl -y
sudo curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg
#3.將ROS倉庫加入sources list列表
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(. /etc/os-release && echo $UBUNTU_CODENAME) main" | sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null

#--------安裝ROS包--------
#1.更新源
sudo apt update
sudo apt upgrade
#2.安裝桌面版(包含了ROS-Base)
sudo apt install ros-humble-desktop
#3.安裝開發(fā)包
sudo apt install ros-dev-tools

#--------設置環(huán)境(這一步很重要,后面使用到ROS的地方都需要執(zhí)行此命令,所以一般可以直接寫到.bashrc中--------
source /opt/ros/humble/setup.bash

這里值得注意的是獲取ROS 2 GPG key的地方,可能由于某些原因不能獲取到,就需要科學上網(wǎng)了,這個不再贅述(其實我還真是折騰了一陣子)。

二、按教程學習

1.CLI 工具

配置環(huán)境

首先還是上一步中最后提到的設置環(huán)境,可以通過如下命令查看環(huán)境變量:

printenv | grep -i ROS

?此外還要設置以下兩個環(huán)境變量:

ROS_DOMAIN_ID:可以為一個ROS節(jié)點組設置唯一的一個編號,在DDS中,使不同邏輯網(wǎng)絡共享一個物理網(wǎng)絡的主要機制被稱為域ID,相同域ID的ROS2節(jié)點可以互相友好的發(fā)現(xiàn)和發(fā)送消息,而不同域ID的節(jié)點之間則不行。所有的ROS2節(jié)點默認域ID為0。為了避免在同一網(wǎng)絡上運行ROS 2的不同計算機組之間的干擾,應為每個組設置不同的域ID。簡單來說,域ID被DDS用來計算將用于發(fā)現(xiàn)和通信的UDP端口,只需要將域ID設置為[0,101]之間的數(shù)字即可,深究的話可以參考這里。

?ROS_LOCALHOST_ONLY:ROS2通信默認不會只限制本地的。這個環(huán)境變量就是用來限制這個的。這意味著你的ROS2系統(tǒng)和他的話題(topic),服務(service),動作(action)對本地網(wǎng)絡中的其他計算機不可見。在特定場合設置該項是有幫助的,比如在教室里,多個機器人可能會發(fā)布相同的話題,從而導致奇怪的行為。

使用turtlesim,ros2和rqt

turtlesim是一個用來學習ROS 2輕量模擬器。ros2工具可以被用戶用于管理,內查并與一個ROS系統(tǒng)交互。它是安裝ROS 2的一部分。rqt是ROS 2的一個圖形用戶接口(GUI)工具。

安裝 turtlesim
sudo apt update
sudo apt install ros-humble-turtlesim

查詢一個包的可執(zhí)行程序(這個個人感覺還是很有用的)

ros2 pkg executables turtlesim
啟動 turtlesim

執(zhí)行如下命令會出現(xiàn)一個模擬窗口,窗口正中有一個隨機形狀的烏龜。

ros2 run turtlesim turtlesim_node
使用 turtlesim

重新打開一個終端,設置環(huán)境,執(zhí)行如下命令后,可以通過鍵盤上的箭頭按鍵控制烏龜?shù)囊苿?,并留下移動的軌跡。
使用list命令可以查看節(jié)點,話題,服務,動作信息,具體如下:

ros2 node list
ros2 topic list
ros2 service list
ros2 action list
安裝 rqt
sudo apt update
sudo apt install ~nros-humble-rqt*

在終端鍵入rqt,啟動rqt程序。

使用 rqt

首次啟動時,界面內容是空白的,只需要選擇Plugins > Services > Service Caller,如果點擊Plugins沒有看到Services,你應該關閉rqt并在終端輸入rqt --force-discover。
1.選中/spawn服務(該服務用于產生另一只的烏龜),修改name參數(shù)給這個烏龜重命名,修改x,y的值給這個烏龜設置新的位置,然后點擊Call按鈕,完成修改。
2.選中/set_pen服務,修改r,g,b的值設置烏龜軌跡的顏色。

重映射

由于新創(chuàng)建的控制終端(turtle_teleop_key)還是只能控制第一只烏龜,為了讓控制終端可以控制新產生的烏龜,使用如下命令重定向cmd_vel話題。

ros2 run turtlesim turtle_teleop_key --ros-args --remap turtle1/cmd_vel:=turtle2/cmd_vel

這個終端就可以控制新產生的烏龜了,再啟動一個turtle_teleop_key的終端又可以控制第一只烏龜了。

關閉turtlesim

可以在turtlesim_node終端輸入Ctrl + C并且在turtle_teleop_key終端輸入q文章來源地址http://www.zghlxwxcb.cn/news/detail-678863.html

到了這里,關于ros2官方文檔(基于humble版本)學習筆記的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 木葉飛舞之【機器人ROS2】篇章_第一節(jié)、ROS2 humble及cartorgrapher安裝

    假如長期使用ros2,建議是ubuntu系統(tǒng)或者雙系統(tǒng)下安裝操作,不要在虛擬機中進行。 ubuntu系統(tǒng)能用最新的大系統(tǒng)就用最新的,比如22.04。等明年24.04出來可以用24.04 ros版本選擇humble版本,比較穩(wěn)定,各公司用的多一點。 2.1、一鍵安裝 利用魚香ROS的安裝指令一鍵安裝即可 (1)

    2024年02月10日
    瀏覽(25)
  • (Ubuntu22.04 Jammy)安裝ROS2 Humble

    (Ubuntu22.04 Jammy)安裝ROS2 Humble

    提示:以下內容是已經安裝了ubuntu22.04 下進行安裝ros2 請確保區(qū)域設置支持UTF-8,我們使用以下設置進行測試。 需要將ROS2 apt存儲庫添加到您的系統(tǒng)中,首先確保Ubuntu Universe存儲庫已啟用。 接著添加帶有apt的ROS 2 GPG密鑰 然后將存儲庫添加到源列表中 設置存儲庫后,更新您的a

    2024年02月01日
    瀏覽(36)
  • 樹莓派4B+Ubuntu22.04 Server安裝ROS2 Humble

    樹莓派4B+Ubuntu22.04 Server安裝ROS2 Humble

    通過本章學習,了解ROS2相關版本,能夠熟練掌握ROS2安裝相關操作,最終讓 Talker-listener 實例跑起來。 參考網(wǎng)站: ROS2官網(wǎng):https://www.ros.org/ ROS2 Humble版本:https://docs.ros.org/en/humble/Installation.html 注意:如果對ROS已經有一定的了解,可以忽略此章節(jié)。 更多更具體的ROS介紹請查看

    2024年02月11日
    瀏覽(99)
  • TurtleBot3在ROS2 humble中的仿真解析之仿真、遙控與智控

    TurtleBot3在ROS2 humble中的仿真解析之仿真、遙控與智控

    在TurtleBot3的機器人建模完成后,接下來就需要進行仿真。機器人建模之后,機器人的部件、關節(jié)的物理參數(shù)就確定了,但是還不能使用安裝在其上的各種傳感器來感知世界。所謂仿真就是要模仿真實環(huán)境中對象/機器人的行為,其主要目的,就是要讓機器人通過攝像頭、激光

    2024年02月11日
    瀏覽(18)
  • win10安裝ROS2(foxy+humble/在線安裝+離線安裝)超詳細保姆級教程

    win10安裝ROS2(foxy+humble/在線安裝+離線安裝)超詳細保姆級教程

    ? ? ? ? 之前已經在ubuntu22.04上安裝上了ROS2-Humble,后期開發(fā)想要跨平臺,ubuntu上發(fā)布話題,在windows上訂閱話題,所以實驗在windows上安裝ROS2。 ? ? ? ? 因為ubuntu上安裝的是Humble版本,所以在win10上首選安裝也是Humble版,實驗過程中是先通過在線方式安裝了foxy版本,后面通過

    2024年01月19日
    瀏覽(223)
  • 關于Ubuntu22.04,ros2-humble環(huán)境下,使用gazebo遇到的問題。

    關于Ubuntu22.04,ros2-humble環(huán)境下,使用gazebo遇到的問題。

    遇到的問題: 打開gazebo時出現(xiàn)error:process has died的報錯,雖然仍然可以打開gazebo,但是gazebo顯示的并不是launch文件調用的world文件與urdf文件內容,可能顯示前次使用gazebo時的內容,或者出現(xiàn)機器人模型亂轉的情況。 問題原因: 前次使用gazebo后,沒有完全關閉gazebo,尤其是

    2024年02月15日
    瀏覽(24)
  • 虛擬機 + Ubuntu22.04 + ros2 (humble) colcon build turtlebot3_node失敗的解決方案

    虛擬機 + Ubuntu22.04 + ros2 (humble) colcon build turtlebot3_node失敗的解決方案

    在虛擬機Ubuntu22.04中安裝了ROS2(humble),下載turtlebot3。在 colcon build --symlink-install 編譯的過程中turtlebot3_Fake_node一直失敗,無法正常運行,影響后面的仿真測試。 查閱相關資料后發(fā)現(xiàn)問題主要出在 缺少ROS2 相關依賴Ubuntu 版本匹配 。 (1)首先通過 lsb_release-a 查看系統(tǒng)版本 查到

    2024年02月09日
    瀏覽(27)
  • ROS2學習筆記三:話題Topic

    ROS2學習筆記三:話題Topic

    目錄 前言 1 話題簡介 2 常用指令 3?RCLCPP實現(xiàn)實現(xiàn)話題 3.1 創(chuàng)建工作空間 3.2 代碼編寫 3.2.1 發(fā)布端編寫 3.2.2 發(fā)布端編寫 ROS2中的一個重要概念是話題(Topic)。話題是一種通過發(fā)布者和訂閱者之間進行異步通信的機制。發(fā)布者(Publisher)將消息發(fā)布到特定的話題上,而訂閱者(

    2024年01月20日
    瀏覽(28)
  • Spring AOP官方文檔學習筆記(二)之基于注解的Spring AOP

    1.@Aspect注解 (1) @Aspect注解用于聲明一個切面類,我們可在該類中來自定義切面,早在Spring之前,AspectJ框架中就已經存在了這么一個注解,而Spring為了提供統(tǒng)一的注解風格,因此采用了和AspectJ框架相同的注解方式,這便是@Aspect注解的由來,換句話說,在Spring想做AOP框架之前,

    2023年04月17日
    瀏覽(25)
  • Spring AOP官方文檔學習筆記(三)之基于xml的Spring AOP

    1.聲明schema,導入命名空間 (1)如果我們想要使用基于xml的spring aop,那么,第一步,我們需要在xml配置文件中聲明spring aop schema,導入命名空間,如下這是一個標準的模板 (2)在xml配置文件中,所有的切面以及通知等都必須放置于aop:config標簽內 2.聲明一個切面 3.聲明一個切

    2024年02月02日
    瀏覽(24)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包