gazsim-startup.bashを追いかけ中

gazsim.bash追いかけ中の続きです.

fawkesの起動部分は,以下の二つです.

/home/robotino/fawkes-robotino/bin/gazsim-startup.bash -x fawkes -p 11311 -i robotino1 -r -m gazsim-meta-agent -f /home/robotino/fawkes-robotino/bin
/home/robotino/fawkes-robotino/bin/gazsim-startup.bash -x comm -p 11311

さて,二つに分かれて11311ポートで通信していますが,それらの関係はどうなっているのでしょうか.
もともと,carologistics チームは,Robotino 3のCPUと,そのロボットの上部に搭載したThinkPad の2台のパソコンを使って,ロボットを制御しています.
その形態を考慮すると,一つがRobotino 3上で動くFawkes で,もう一つがThinkPad上で動くFawkes なのかもしれません.
もしくは,Gazebo シミュレータと通信する必要がありますので,そのためのプログラムが,どちらか一方なのかもしれません.
※後日注,おそらく後者です.RefBox とGazebo の間をつなぐ役割で,運営側のような位置づけでする

その辺りの予測をした上で,プログラムを読み進めてみます.

fawkesの起動

gazsim-startup.bash -x fawkes によるFawkes の起動スクリプトは以下の通りです.

    fawkes )
        # ulimit -c unlimited
        export ROS_MASTER_URI=http://localhost:$PORT
        robotino_plugins=gazsim-meta-robotino$ROS$VISION$AGENT$META_PLUGIN
        $GDB $FAWKES_BIN/fawkes -c $CONF/$ROBOTINO.yaml -p $robotino_plugins
        if [ -n "$GDB" ]; then
                echo Fawkes exited, press return to close shell
                read
        fi
        ;;

PORTは,-p の引数でしていたポート番号(11311)です.
そのポートを使って,rosとやりとりしているっぽいです(ROS_MASTER_URI).
プラグインとして,gazsim-meta-robotino-ros(-r オプション), gazsim-meta-agent(-m オプションの引数で指定)を用いています.
それ以外のオプション指定できるプラグインとして,gazebo-meta-robotino-vision-low-level(-d オプション), gazsim-meta-agent(-a オプション)があります.
fawkes のデバッグ用の起動として,-d もしくは-vオプションがあり,gdb もしくはvargrind を介してfawkesを起動します.

設定ファイルは,-i オプションで指定したrobotino設定ファイル(1台目はgazsim-configurations/default/robotino1.yaml)を使います.設定ファイルのdefaultディレクトリは,-c オプションで変更できます.

というわけで,usage をまとめると以下のようになります.

[robotino@localhost bin]$ ./gazsim-startup.bash -h
使い方: ./gazsim-startup.bash options

このプログラムは,指定したプログラムをシミュレータ用に起動します.

オプション:
  共通:
   -h             このメッセージを表示します
   -x gzserver|gzclient|fawkes|comm|roscore|move_base|refbox|refbox_shell
                  指定したプログラムを起動します
   -p arg         ROS のポート番号を指定します

  FAWKES:
   -c (ディレクトリ名)
                  cfg/gazsim-configurationsの下にある指定した設定ディレクトリを使います
   -r             ROS を使って起動します
   -s             ゲームの後に,統計を残して終了します
   -i robotino[1|2|3]
                  Robotino 設定ファイルを指定します.robotino1,robotino2,robotino3で指定して下さい
   -d             詳細なシミュレータです(例えば,webcamをシミュレートします)
   -a             Agent を使って起動します
   -f arg         Fawkes の実行フォルダへのパスを指定します
                  (指定しないときは/home/robotino/fawkes-robotino/bin を用います)
   -g             GDB でFawkes を起動します(デバッグ用)
   -v             Valgrind でFawkes を起動します(デバッグ用)
  GAZEBO:
   -e arg         リプレイを保存します.

コメントを残す

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

*