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