【AgileX LIMO】ROS パッケージを実行する

1. はじめに

LIMO を ROS で制御するために、AgileX 社は limo_ros パッケージを公開しています。ROS や limo_ros は、デフォルトで LIMO にインストールされています。

本稿では、リモートから limo_ros パッケージを実行する方法をご案内します。

limo_ros: https://github.com/agilexrobotics/limo_ros

LIMO のユーザーマニュアル(英語)はこちら

 

2. 環境

以下の環境にて、この手順が有効であることを確認しています。

外部PC: Windows 10 (64bit)
LIMO:
内部コンピュータ – Jetson Nano
OS – Ubuntu 18.04
ROS – Melodic

3. リモートデスクトップのセットアップ

外部PCから無線接続している LIMO を GUI 上から操作したり RViz を表示したりするのに、リモートデスクトップツールの NoMachine を利用します。

(1) LIMO と外部PCを同じWi-Fi に接続

(2) リモートデスクトップツール NoMachine のダウンロード

対応する NoMachine を外部PCにダウンロードしてください。

(3) NoMachine を起動し、Add ボタンから LIMO を登録

「Name」には任意の名前を入れ、「Host」にはLIMOのIPアドレスを入力します。LIMO のIPアドレスは、LIMO側の NoMachine のアイコンから「show server status」をクリックすると確認できます。

(4) 登録したデバイスを選択し、LIMO のユーザー名(agilex)、パスワードを入力

 

4. ROSパッケージの実行

NoMachine のターミナルから、はじめにベースとなるノードを立ち上げます。

$ roslaunch limo_bringup limo_start.launch

コマンドから直接制御するには、別ターミナルでrostopic pub <トピック名> <トピック型> <値>でトピックを配信します。たとえば、

$ rostopic pub /cmd_vel geometry_msgs/Twist "linear:
  x: 0.2
  y: 0.0
  z: 0.0
angular:
  x: 0.0
  y: 0.0
  z: 0.0"  

を打つと、LIMO は前方へ少し進みます。

※ コマンド制御を可能にするために、コントローラーアプリ内のボタンでアプリからの制御をオフにしてください。

 

また、ノードを立ち上げてから、別ターミナルでパッケージに用意されているプログラムを実行することもできます。以下は、いくつかの例です。

  • キーボードでの制御
$ roslaunch limo_bringup limo_teletop_keyboard.launch 

  • LiDARでスキャンしたデータをRVizで表示
$ roslaunch limo_bringup lidar_rviz.launch 

※ アプリでLIMO を操作するには、コントローラーアプリ内のボタンでアプリからの制御をオンにします。

  • マッピング(gmapping)
    $ roslaunch limo_bringup limo_gmapping.launch 

    コントローラーアプリなどで LIMO を走行させて地図を作成します。

    ※ アプリでLIMO を操作するには、コントローラーアプリ内のボタンでアプリからの制御をオンにします。

    適切なディレクトリに移り、作成した地図を保存します。

    $ cd ~/agilex_ws/src/limo_ros/limo_bringup/maps/ 
    $ rosrun map_server map_saver –f <地図名> 

    地図の名前は重複しないように設定してください。

    その他にも、LIMO を利用してマッピングやナビゲーション、物体認識などを行うことができます。詳細はマニュアル(英語)をご参照ください。

    コメントを残す

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