ひよこ型ロボで地図作成(ROS2+LiDARでSLAM)

↓で作成した【ぴよロボ】を更新しました。
会話ができる「ぴよロボ」作りました! (Raspberry Pi + Pico + ChatGPT)

【ハードウェアの変更点】
■CPU周り
CPU:Raspberry Pi 2(1GB) → Raspberry Pi 4(4GB) 【変更】
画面(顔):OSOYOO HDMI 3.5インチLCD (480×320)
カメラ・マイク:Logicool C270
Wifiドングル:IO-DATA WN-G300UA → Wifi内蔵のため外した【変更】
スピーカー:KKHMF PAM8403
バッテリー:Anker PowerCore Slim 10000 → Anker Power Bank【変更】

■制御周り
マイコン:Raspberry Pi Pico
サーボ:GWS MINI x 4
モータードライバー:TB6612
モーター: DAISEN ギヤドモーター 60:1 x 2
バッテリー:単3 eneloop x 4 (4.8V)
センサー:
 赤外線距離センサー x 3
 床センサー
 LiDAR (AliExpressの格安謎LiDAR) 【追加】
 IMU ICM-20948 【追加】
 車輪エンコーダー AS5600 x 2 【追加】

【Raspberry Piの選定について】
性能的にはRaspberry Pi 5にしたいところですが、モバイルバッテリーでは電力が厳しそうなので、Pi 4にしました。

また、以下の記事によればPi 4の最新リビジョンでは初期リビジョンに比べて消費電力が27%ぐらい下がっているようです。
Raspberry Pi 4のリビジョンと消費電力の話

【LiDARについて】
LiDARは360°の障害物との距離を測るセンサーです。
AliExpressで販売していた格安謎LiDARを使っています。
LiDARは安くても1万円以上するものが多いですが、1,431円+送料758円で購入しました。
現在はもう売ってないようです。残念。

【ソフトウェアの変更点】
Raspberry Pi 4のOSはRaspberry Pi OSからUbuntu 22.04.4に変更しました。
ROS2を動かしたかったためです。

LiDAR を使ってSLAM(地図作成・自己位置推定)を試しています。

LiDARはこんな感じで取り付けました。

LiDARのROS2ドライバは↓を使わせていただきました。
ros2_mini360_lidar

slam_toolkitを使ってマッピングしているところです。

slam_toolkitはOdometryが必要なのですが、IMUでは積分誤差のため、あまりうまくいきませんでした。
そこで、IMUの磁気センサーで方向だけ使って、移動は車輪エンコーダーでやってみました。
車輪エンコーダーに使うAS5600は光学式のロータリーエンコーダーではなく、磁場の変化で角度を検出するタイプのセンサーです。タイヤに無理やり取り付けました。
↓の写真のように軸に磁石を取り付け、AS5600をタイヤの外側に付けています。

↓の動画は部屋の地図を作成しているところです。

本格派対局将棋 ぴよ将棋
本格派対局将棋アプリ ぴよ将棋
[Android] [iOS]

かわいい「ひよこ」と対局する将棋アプリ。かわいいけどAIは本格派!
対局後の検討機能や棋譜管理機能も充実!棋譜解析機能も搭載!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です