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 リプレイを保存します.
コメントを残す