mirror of
https://gitee.com/xiaohuolufeihua/bizhang_-obav.git
synced 2026-05-21 09:22:18 +00:00
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.
This commit is contained in:
@@ -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, ¶m_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
|
||||
|
||||
Reference in New Issue
Block a user