ROS 2 Humble projects

開発環境・使用技術

  • OS:Ubuntu 22.04 LTS
  • ロボットミドルウェア:ROS 2 Humble Hawksbill
  • 開発言語:Python(rclpy)、C++(rclcpp)
  • 可視化・評価:RViz2、rosbag2
  • 主な機器:クローラ型移動ロボット、LiDAR、カメラ、モータドライバ、制御PC

1. 概要

本システムは、ROS 2 Humbleを使用して、LiDARやカメラなどのセンサ情報とクローラ型移動ロボットの走行制御を統合する研究・試作用システムです。

周囲環境の計測、ロボット状態の可視化、走行指令、データ記録をROS 2ノードとして構成し、自律移動、遠隔監視、設備点検ロボットなどへの展開を想定しています。

ROS 2 Humbleを用いたクローラ型自律移動ロボットの試作機
ROS 2 Humble 自律移動ロボット試作機(LiDAR・カメラ搭載)

2. システム構成

  • センサ部:LiDARで周囲の距離情報を取得し、カメラで前方や設備の画像を取得
  • 制御PC:Ubuntu 22.04 LTS/ROS 2 Humble上で各ROS 2ノードを実行
  • 走行部:左右独立のクローラとモータドライバにより、前進・後退・旋回を制御
  • 可視化部:RViz2でセンサデータ、ロボット位置、走行状態を表示
  • 記録部:rosbag2でセンサ情報や走行データを保存し、再生・解析に利用

データの流れ:LiDAR・カメラ → ROS 2センサノード → 地図生成・自己位置推定 → 走行指令 → モータドライバ → クローラ駆動

3. 設備特徴

  • ROS 2ノードによる機能分割で、センサや走行機能の追加・変更が容易
  • LiDARデータを使用した周囲環境の認識と障害物検知に対応
  • RViz2によるセンサ情報・走行状態のリアルタイム可視化
  • クローラ機構により、段差や凹凸のある路面で安定した走行が可能
  • SLAM、自己位置推定、経路計画、自律走行機能へ拡張可能
  • rosbag2によるデータ記録・再生で、動作確認や不具合解析を効率化
  • 工場、倉庫、設備点検、研究開発など幅広い用途への応用が可能

4. 外部機器通信仕様

ROS 2ノード間通信

  • DDSを利用した分散通信により、同一PC内またはEthernetネットワーク上のノード間でデータを送受信
  • Topic:LiDARデータ、カメラ画像、オドメトリ、速度指令などの連続データ通信
  • Service:設定変更、初期化、状態確認などの要求・応答通信
  • Action:目標地点への移動など、途中経過と結果を扱う長時間処理

センサ・走行機器通信

  • LiDAR/カメラ:EthernetまたはUSB通信(採用機器の仕様により選択)
  • モータドライバ:USBシリアル、RS-232C、CAN、Ethernetなどに対応可能
  • 上位PC・監視システム:Ethernet(TCP/IP)を利用した状態監視や走行指令との連携に対応可能

通信方式や接続機器は、走行環境、必要な制御周期、既存設備との連携条件に合わせて選定します。