いつもお世話になっております、工藤です。
以前
こちらでご返答くださった小倉様、落合様にこの場を借りてお礼申し上げます。
ありがとうございました。
今回質問させていただく内容はまた別の内容ですが、ご助力いただければ幸いです。
本題に入ります。
現在Navigationを併用したシステムを考えているところなのですが、Navigationスタックと他のプログラムによる車輪制御の競合に頭を抱えています。
①
試しにturtlebot_navigationに入っているamcl_demo.launchと、turtlebot_teleopに入っているkeyboard_teleop.launchを、
amcl_demo→keyboard_teleopの順に実行したところ、keyboard_teleopによる処理が優先され、
keyboard_teleopを終了すると、amcl_demoによるNavigationが開始するという処理になりました。
(正確には、amcl_demo起動→teleop_keyboard起動→Rviz内で現在地、目的地を設定(この時点では動かない)→teleop_keyboardである程度操作した後、終了→amcl_demoによるNavigation開始という流れになります)
この時、プログラムの処理の順番はどこで管理されているのでしょうか。
②
また、添付させていただいた自作の人体追跡のプログラム(欠陥多数ですが)があるのですが、
これとamcl_demo.launchを併用した時、車輪制御に競合が発生し、動作に障害が生じてしまいます。
①のように競合が発生しないようにするにはどうすればよいのでしょうか。
以上です。
稚拙な説明で申し訳ありません。ご返答いただければ幸いです。
よろしくお願いいたします。
以下、使用環境です。
OS: Ubuntu 12.04 LTS
Distribution: Hydro
Robot: Turtlebot kobuki
Camera: Kinect V1