Skip to content
Snippets Groups Projects
Commit 86673ecf authored by Beat Küng's avatar Beat Küng
Browse files

navigator: remove dependency on vtol module by using the C param API

This is the quickest way to achieve the desired result.
Long-term we might do something else.
parent ee5c18a7
No related branches found
No related tags found
No related merge requests found
......@@ -283,8 +283,8 @@ public:
float get_yaw_timeout() const { return _param_yaw_timeout.get(); }
float get_yaw_threshold() const { return _param_yaw_err.get(); }
float get_vtol_back_trans_deceleration() const { return _param_back_trans_dec_mss.get(); }
float get_vtol_reverse_delay() const { return _param_reverse_delay.get(); }
float get_vtol_back_trans_deceleration() const { return _param_back_trans_dec_mss; }
float get_vtol_reverse_delay() const { return _param_reverse_delay; }
bool force_vtol();
......@@ -371,13 +371,14 @@ private:
(ParamFloat<px4::params::MIS_LTRMIN_ALT>) _param_loiter_min_alt,
(ParamFloat<px4::params::MIS_TAKEOFF_ALT>) _param_takeoff_min_alt,
(ParamFloat<px4::params::MIS_YAW_TMT>) _param_yaw_timeout,
(ParamFloat<px4::params::MIS_YAW_ERR>) _param_yaw_err,
// VTOL parameters TODO: get these out of navigator
(ParamFloat<px4::params::VT_B_DEC_MSS>) _param_back_trans_dec_mss,
(ParamFloat<px4::params::VT_B_REV_DEL>) _param_reverse_delay
(ParamFloat<px4::params::MIS_YAW_ERR>) _param_yaw_err
)
param_t _handle_back_trans_dec_mss{PARAM_INVALID};
param_t _handle_reverse_delay{PARAM_INVALID};
float _param_back_trans_dec_mss{0.f};
float _param_reverse_delay{0.f};
float _mission_cruising_speed_mc{-1.0f};
float _mission_cruising_speed_fw{-1.0f};
float _mission_throttle{-1.0f};
......
......@@ -110,6 +110,9 @@ Navigator::Navigator() :
_navigation_mode_array[8] = &_land;
_navigation_mode_array[9] = &_precland;
_navigation_mode_array[10] = &_follow_target;
_handle_back_trans_dec_mss = param_find("VT_B_DEC_MSS");
_handle_reverse_delay = param_find("VT_B_REV_DEL");
}
void
......@@ -162,6 +165,14 @@ Navigator::params_update()
parameter_update_s param_update;
orb_copy(ORB_ID(parameter_update), _param_update_sub, &param_update);
updateParams();
if (_handle_back_trans_dec_mss != PARAM_INVALID) {
param_get(_handle_back_trans_dec_mss, &_param_back_trans_dec_mss);
}
if (_handle_reverse_delay != PARAM_INVALID) {
param_get(_handle_reverse_delay, &_param_reverse_delay);
}
}
void
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment