iT邦幫忙

2023 iThome 鐵人賽

DAY 7
0

ROS2

版本

昨天有提到ROS1已經發行了13個版本了,未來將不會在有新版本的ROS1。
那ROS2呢?來看看官方整理的表格吧~
https://ithelp.ithome.com.tw/upload/images/20230922/20140433sVyUvgFqj1.png

來源:fFOXY Distributions

可以看到目前最新的ROS2版本是Iron Irwini,今年(2023)的五月才發布~非常的熱騰騰阿!
綠色的是官方推薦使用的版本,EOL date (end-of-life)代表的是該版本生命週期截止的那天,也就是不再受到官方支援,雖然依舊可以使用,但如果遇到bug官方就不會修復了!

冷知識

你們有發現每個版本的ROS都是依照英文字母的順序排序嘛?
而且形象圖都有好好對應到他們的名稱哦XD可愛的小烏龜們!!

我選擇的版本

因為我自己目前固定用ROS2 Foxy Fitzroy,關於要用哪個版本我自己也踩了不少坑,馬上就會提到了~
https://ithelp.ithome.com.tw/upload/images/20230922/20140433L1HKsCthf1.png

作業系統

ROS2可以安裝於以下作業系統:

  1. Ubuntu Linux - Focal Fossa (20.04)
  2. Windows
  3. macOS Mojave (10.14)

我自己因為同時有Windows桌電和Ubuntu工控機的關係,這兩種我也都有安裝過,基本上按照上面連結的官方教學安裝是沒有遇到問題的~
安裝完後,最重要的環節就是設置環境變數!
每當開啟一個新的terminal都要做一次

source /opt/ros/foxy/setup.bash

如果不想每次都這麼麻煩,可以一開始先做這件事

echo "source /opt/ros/foxy/setup.bash" >> ~/.bashrc

理論上~接下來就能正常使了!

但~營建小白的我也是挖了些坑給自己跳過...

那些我挖過得坑

剛開始學ROS時,沒有選定一個版本做練習,在同一台電腦同時安裝了ROS1、ROS2,也還沒養成source的習慣,卸載又沒卸乾淨等等,又遇上Ubuntu版本有綁定特定的ROS版本等等,一剛開始很多東西沒搞懂,重灌了電腦好多次。
後來有個省力一點的方式,也就是用docker~~~

docker pull osrf/ros:foxy-desktop
docker run -it osrf/ros:foxy-desktop

這樣就有一個ros foxy的容器啦~
要注意的是,這樣沒辦法跑gazebo或rviz2等需要畫面的軟體,因為還沒辦法使用GUI,所以顯示不了~
https://ithelp.ithome.com.tw/upload/images/20230923/20140433dP3oWdqTth.png

為了要出現圖形界面,可以改成:

xhost local:root

XAUTH=/tmp/.docker.xauth

docker run -it \
    --name=it15test_gui \
    --env="DISPLAY" \
    --env="QT_X11_NO_MITSHM=1" \
    --volume="/tmp/.X11-unix:/tmp/.X11-unix:rw" \
    --env="XAUTHORITY=$XAUTH" \
    --volume="$XAUTH:$XAUTH" \
    --net=host \
    --privileged\
    osrf/ros:foxy-desktop \
    bash

ubuntu 22.04成功畫面
https://ithelp.ithome.com.tw/upload/images/20230923/20140433lzguBFFxrp.png


上一篇
【AMR_Day6】介紹ROS
下一篇
【AMR_Day8】ROS2 & DOCKER
系列文
一個營建系學生的韌體之路-自走車篇30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言