Ros2 Auto Mowerの最近のブログ記事

ROS2 自作 Turtlebot3 による 草刈りロボット開発。#8 Transformer で経路計画をする。

--- ROS2 ロボット自律走行の経路計画の補助に、機械学習(Transformer、LSTM)を使う。 ----

ROS2 自作 Turtlebot3 による 草刈りロボット開発。#6 Nav2 Planner を替えてみる で、ThetaStarPlanner を使って、Auto Mower 時の走行の直進性の改善がみられた。

しかし、まだおんちゃんが望む直進性能には、足りない。
そこで、ThetaStarPlanner の経路プランの一部補正として、機械学習が使えないか、無い知恵を絞って、考えてみた。

1. 概要
結論を先に言ってしまえば、経路プランに、Transformer、Lstm による、Speech To Text モデルのロジックを使えないだろうか? と言う話じゃ。

下の画像だと、赤線の経路を、青線の様にしたい。
障害物の手前まで真っ直ぐ進んで、障害物をなぞるように進んで、再度、スタートとストップの直線上に戻る、走行が欲しい。


2024-09-30 14-25-56-1.jpg

ROS2 自作 Turtlebot3 による 草刈りロボット開発。#7 障害物からの脱出に機械学習を使う。

---- Auto Mower で、障害物に囲まれた際の脱出方向の算出に、機械学習の画像分類 (Image Classify) を使ってみる。-----

Auto Mower で、ロボットを動かして、目的地に到達させた場合に、障害物に近づき過ぎる場合がある。
そうすると、navigation2 で、その場所から抜け出せずに、エラー終了してしまう。

これを、防ぐ為に、static map 上で、障害物に囲まれた際に、脱出方向を計算して、cmd_vel モードで、ロボットを少し遠ざけている。

2024-09-30 17-04-16-1.jpg
現状は、ProControl::obstacle_escape() で処理を行っています。
処理概要は、
Static Map から、ロボットの周りを、OpenCV の cv::Mat に取りこんで、8方向のMaskを用意して、Mask と AND を取って、障害物の Dot を取得した後、
それぞれの方向で、一番障害物が少ない(Dot が少ない)方向に、cmd_vel を使って動かす。
注) 今は、Local Cost Map(static_layer + obstacle_layer) を、resolution: 0.01 の解像度で使っています。

これって、画像(2値画像か、グレースケール画像)を取りこんで、その画像パーターン(黒い部分が障害物、白が空きスペース)から、8クラス(クラス=方向) に分類する、
Image Classify ではないじゃろか?

Image Classify だったら、Orange Pi 5 の NPUでも使えそうじゃ!!。
少し、試してみないといかん。

ROS2 自作 Turtlebot3 による 草刈りロボット開発。#3 - Auto Mower

自作 Turtlebot3 自律走行に向けたプログラム。#12 AutoMap II で、Gazebo House での自動 Mapping ができるので、
今回は、その作成されたマップを使って、Auto Mower を作ってみました。

Auto Mower を試す前に、Auto Map II で、マップを作っておいとうせ。
手動操作で、teleop-keyboard で動かして作っても、OK です。

1. 開発環境
PC
  Ubuntu Mate 22.04
  ROS2:humble
  Gazebo Turtlebot3 with Depth Camera、Rtabmap_ros
  GPU: Gazebo で試すなら、GPU が必要みたい。無いと、rtabmap-ros が良く狂って、TF-Map - TF-Odom がぶっ飛ぶみたい。

2. Auto Mower コース計画のアルゴリズム。
1) Static Map を取り込んで、ロボットがいる自由領域(White) の領域を最初に求めます。
2) その自由領域を、ロボットの走行サイズに合わせて、スライスして、そのスライス線に従って、ロボットを走行させる。
以上です。

考えかたは、ずっと以前、ROS and Python で試した方法のままです。
ただし今回は、場所が、 Gazebo House と、 C++ で作成します。

3. 技術的検証。
じっさいに、Auto Mower のプログラムを作る前に、クリアしなといけない技術的問題点を検討します。

このアーカイブについて

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

前のカテゴリはRos2 Auto Mappingです。

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

カテゴリ

ウェブページ

サイトナビ