Closed chibi314 closed 3 months ago
teleop_flag
がtrueだと、landingできない: https://github.com/tongtybj/aerial_robot/blob/master/aerial_robot_base/src/flight_navigation.cpp#L384
どういう経緯なのかは忘れたが、たぶん動作優先にしてた。ただ、これはよくないので、消すべき
ジョイスティックと/uav/navがacc_mode及びvel_modeで競合する問題
昔はteleop_flag
で判断してた: https://github.com/tongtybj/aerial_robot/blob/master/aerial_robot_base/src/flight_navigation.cpp#L384.
この方法よりかは、コントローラのL1をトリガーにすべき(PR2やturtlebotと同じ)。これでteleop_flag
は要らなくなる
accモードになるとyawの値が変になる問題: すみません、これは単なるバグです・・・ https://github.com/tongtybj/aerial_robot/blob/multi_sensor_fusion/aerial_robot_base/src/flight_navigation.cpp#L438-L440 に書くべきものが、なぜか https://github.com/tongtybj/aerial_robot/blob/multi_sensor_fusion/aerial_robot_base/src/flight_navigation.cpp#L219 になってしまいました。
1と2は新しいPRで対応するとして、 3はhttps://github.com/tongtybj/aerial_robot/pull/276 で直します。
あと、 naviCallbackにある[force_att_controlflag]()は全部消すべき.
force_att_control_flag_はそもそもテレオペによる強制関与を示す変数なので、この関数内で値をいじれるのはおかしい。むしろ、if(force_att_control_flag_) return;
を入れるべき
https://github.com/tongtybj/aerial_robot/blob/master/aerial_robot_base/src/flight_navigation.cpp#L472-L485 を見ると分かるようにjoystickのcallbackに入ると指令値が上書きされるため,/uav/navにpublishしても反映されないという問題がある.
このあたりの仕様について一度整理したい.