ロボットが試合放棄する件

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 で毎回削除することをお勧めします.

コメントを残す

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

*