ロボットが試合放棄する件
5月のGerman Open のときから,Robotino が試合開始と同時にフィールド外にでる現象が起こっていました.
ようやく,原因解明.
AMCL が変な値を返していました.
13:50:37.389407 AmclThread: Applying pose: 21.613 -2.910 2.638 (cov: 0.250 0.000 0.000, 0.000 0.250 0.000, 0.000 0.000 0.069)
原因がわかれば,あとは,その数字で検索.
etc/hosts.yaml に発見.
robotino@robotino-base1:~/fawkes-robotino/cfg$ cat host.yaml
plugins:
amcl:
init_cov_aa: 0.039234
init_cov_xx: 0.275744
init_cov_yy: 0.051670
# init_pose_a: 2.634255
# init_pose_x: 21.652327
# init_pose_y: -2.842667
init_pose_a: 0.0
init_pose_x: 4.5
init_pose_y: 0.5
これ,AMCL を使ってロボットを動かして,
何らかの原因でプログラムを止めた時,
再開時に,その場所の座標を初期値として与えるための仕組みの様です.
RCLL では,そのような状態はおこらないので,
起動時にrm で毎回削除することをお勧めします.
コメントを残す