ROS2 Turtlebot3 自作の最近のブログ記事

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd and GPS. by T100TA #2
--- GPS を付けて、robot_localization ekf で試すを、T100TA から操作。#2 ---

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd and GPS. by T100TA の続きです。

ubuntu 20.04 galactic 版へ移行しての再テスト。

ここでの動作を試す前に、ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd. #2 を終わらせて下さい。
上記ページで、 WiFi Lan の安定が重要だと判ったので、その点に注意して、T100TAを使っての走行テストを行います。

1. 環境。
1) Remote PC / T100TA
Ubuntu Mate 20.04
ros2: galactic
navigation2, Rviz2, multi_goals4_nav2
Wi-Fi: 2.4 [GHz]

2) SBC
Jetson Nanao 2G
Jet Pack4 .x and Ubuntu 20.04
ros2: galactic
micro-ROS Agent
Single USB Stereo Camera
GPS: AE-GYSFDMAXB
rtabmap_ros
Wi-Fi dongle: TP-Link 2.4[GHz] 150[Mbps]
USB SSD Stick

3) SOC
ESP32 Arduino
micro-ROS
IMU

4) Wi-Fi portable router
ELECOM WRH-300BK3-S

5) 自動走行プログラム。
turtlebot3_navi_my / multi_goals4_nav2

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd and GPS. #2
--- GPS を付けて、robot_localization ekf で試す。続き ---

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd and GPS. の続きです。
自作 Turtlebot3 自律走行に向けたプログラム。#14 の ROS2版です。

1. 環境。
1) Remote PC
Ubuntu Mate 20.04
ros2: galactic
rtabmap_ros, navigation2, Rviz2

2) SBC
Jetson Nanao 2G
Jet Pack4 .x and Ubuntu 20.04
ros2: galactic
micro-ROS Agent
Single USB Stereo Camera
GPS: AE-GYSFDMAXB
USB SSD Stick

3) SOC
ESP32 Arduino
micro-ROS
IMU

4) 自動走行プログラム。
turtlebot3_navi_my / multi_goals4_nav2

5) lanuch ファアイル。
rtabmap_ros_my/launch/ratbmap_stero_rgbd_gps.launch.py

1. galactic 版へ移行しての再テスト。by nishi 2023.3.2
galactic だと、 foxy版で出た、navigation2 の不具合などは、まるきりでなくて、すんなり動いた。

ちょと、走行テストをしていたら、たまに、 navigation2 を動かしている Remote PC と、foxbot_core3_r2 の通信が切断されるようです。
これは、改善しないと、まともにテストできましぇん。

方法は、Remote PC 上で、navigation2 を動かす時は、 heart beat を出すプログラムを同時に動かして、foxbot_core3_r2 からこの、
heart beat を取れなくなったら、モータドライブを止めて、heart beat が回復するのを待つ。

ROS2 自作 Turtlebot3(foxbot_core3_r2) で、Rtabmap_ros with Stereo rgbdを試す。#2

------ Jetson Nano 2G の SDCHが壊れたので、新しいカードへ移したら、問題がでた。 --------

ROS2 自作 Turtlebot3(foxbot_core3_r2) で、Rtabmap_ros with Stereo rgbdを試す。 の続きです。

1. 環境
1) SBC
Jetson Nano 2G
Jetpack 4.x and ubuntu 20.04
ROS2: Galactic

2) Remote PC
Ubuntu Mate 20.04
ROS2:Galactic

3) lanuch ファイル。
rtabmap_ros_my/launch/ratbmap_stero_rgbd.launch.py

Jetson Nano 2G の Micro SDHC を新しくして、同じ様に、 rtabmap-ros-with-stereo-rgbd が動作するようにしたのですが、
何故か、リモートPC から、/cloudXYZ(rtabmap_ros/point_cloud_xyz /cloud) が、以前のように安定して受信出来なくなりました。

$ ros2 topic hz /cloudXYZ

で、最初の30件から40件くらいは、15[hz] で受信できるのに、その後が、殆ど受信出来なくなってしまいました。
おまけに、 /disparity (stereo_image_proc.launch.pyの出力) に至っては、Remote PC からまるっきり受信できません。
どちらも、local の SBC(Jetson Nano 2G) 上では、問題なく受信できています。どちらも、 15[hz] 位、出ています。

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd and GPS. by T100TA
--- GPS を付けて、robot_localization ekf で試すを、T100TA から操作。 ---

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd and GPS. の続きです。

前回、SBC(Jetson Nano 2G) で、全て起動して、Remote PC からは、ssh2 で、SBCにログインして、launch の起動と、Rviz2の表示だけを行いましたが、
Remote PC を、ASUS Tablet(T100TA) に変えて同じ操作を行いました。

一応、ロボットは、完走できましたが、navigation2 のログ表示に、結構 ERROR、WARN がでているので、それの考察です。

しかし、T100TA にすると、このようになるのか? 疑問ぞね。

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd and GPS.
--- GPS を付けて、robot_localization ekf で試す。 ---

ROS2 自作 Turtlebot3(foxbot_core3_r2) Rtabmap_ros with Stereo rgbd. の続きです。
自作 Turtlebot3 自律走行に向けたプログラム。#14 の ROS2版です。

1. 環境。
1) Remote PC
Ubuntu Mate 20.04
ros2: foxy
rtabmap_ros, navigation2, Rviz2
注1) foxy navigation2 には、不具合があるので、パッチが必要。後述。
注2) ubuntu 20.04 で、ros2 galactic が使えるみたい。こちらの方が良いと思います。by nishi 2023.1.17

2) SBC
Jetson Nanao 2G
Jet Pack4 .x and Ubuntu 20.04
ros2: foxy
micro-ROS Agent
Single USB Stereo Camera
GPS: AE-GYSFDMAXB

3) SOC
ESP32 Arduino
micro-ROS
IMU

2. foxbot_core3_r2.ino のビルド。
foxbot_core3_r2_config.h を、下記にして、ESP32 へ書き込みます。
詳しい事は、ROS2 で、ESP32(Arduino) を使う。 を参照。

foxbot_cor3_r2 からは、tf-base_footprint を出力しません。
IMU は、出力します。

ROS2 自作 Turtlebot3(foxbot_core3_r2) で、Rtabmap_ros with Stereo rgbdを試す。
--- 上記、自作ロボットに、navigation2 を組み込んで、Active SLAM で、C++ プログラム制御で、部屋の中を計画コース通りに走らせる。----

ROS2 で、ESP32(Arduino) を使う。 の続きです。

予めMap を作成していないので、同時に、Active Mapping で、地図も作成します。
一応、上記仕様で、自作 Turtlebot3(foxbot_core3_r2) が、動かせるようになったので、書いてみました。

1. 環境。
1) Remote PC
Ubuntu Mate 22.04
ros2: foxy galactic humble
rtabmap_ros, navigation2, Rviz2
注) foxy navigation2 には、不具合があるので、パッチが必要。後述。
注2) ubuntu 20.04 で、galactic が使えるので、こちらの方が良い。by nishi 2023.1.21
しかし、なぜか、galactic 版は、EOL になっているみたい。
humble/Releases
どうすりゃいいんじゃ?

EOL 版でも大丈夫みたいぞね。
下記で、eol 版の galactic 版も、同じようにビルドできます。
$ rosdep update --rosdistro=${ROS_DISTRO} && rosdep install --from-path src --ignore-src -y
rosdep オプション

注3) 今は、ubuntu 22.04 Ros2 Humble対応です。navigation2 rpp

2) SBC
Orange Pi5
Armbian Jammy
ros2: foxy galactic humble
micro-ROS Agent
Single USB Stereo Camera

3) SOC
ESP32 Arduino
micro-ROS
IMU

2. foxbot_core3_r2.ino のビルド。
foxbot_core3_r2_config.h を、下記にして、ESP32 へ書き込みます。
詳しい事は、ROS2 で、ESP32(Arduino) を使う。 を参照。

ROS2 で、ESP32(Arduino) を使う。

ROS2 で、ESP32(Arduino) を使う。
--- Turtlebot3 の自作 を、 ROS2 に移植する。 ---
前回の、自作 Turtlebot3 自律走行に向けたプログラム。#15 で、ROS の限界を感じたので、ROS2 を試す事にしました。

1. 環境。
PC
Ubuntu Mate 22.04
ros2: foxy galactic humble
SBC
Orange pi 5
Armbian jammy
ros2: foxy galactic humble

注1) foxy navigation2、teb_local_planner には、不具合があるので、パッチが必要になる。
注2) ubuntu 20.04 で、galactic が使えるので、こちらの方が良い。by nishi 2023.1.21
しかし、なぜか、galactic 版は、EOL になっているみたい。
foxy/Releases

EOL 版でも大丈夫みたいぞね。
下記で、eol 版の galactic 版も、同じようにビルドできます。
$ rosdep update --rosdistro=${ROS_DISTRO} && rosdep install --from-path src --ignore-src -y
rosdep オプション

注3) 今は、ubuntu 22.04 Ros2 Humble対応です。navigation2 rpp

2. ros2arduino を試す。
どうやら、こちらは、開発が止まっているようです。
ESP32 にサンプルを入れて試してみましたが、うまく行かないので、止めました。
ESP32 Serial は、まだ使えないままの様です。

上記をテストするのに、eProsima Micro XRCE-DDS が必要な様で、試しにインストールしてみましたが、
次の micor-ROS を試す段階で、/usr/local/lib/libfastrtps.so /usr/local/lib/libfastrtps.so.2.8.0 が競合するようで、
削除する事にしましたが、あいにく make uninstall が無いので、削除するのが大変でした。
$ sudo make install すると、Micro-XRCE-DDS-Agent/build/install_manifest.txt にインスしたファイル一覧があるので、
Shell で、これを読みこんで、削除しました。

uninstall_from_files.sh


$ sudo sh ./uninstall_from_files.sh
$ sudo ldconfig /usr/local/lib

このアーカイブについて

このページには、過去に書かれたブログ記事のうちROS2 Turtlebot3 自作カテゴリに属しているものが含まれています。

前のカテゴリはOAK-D Liteです。

次のカテゴリはROS2 機械学習です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

カテゴリ

ウェブページ

サイトナビ