46 #include <mathlib/mathlib.h> 49 #include <px4_platform_common/module_params.h> 69 static constexpr
float FF_K = .25F;
87 { 1.0F, -1.0F, 0.0F, 1.0F, 1.0F, 0.0F, 0.0F, 0.0F, 1.0F},
88 {-1.0F, 0.0F, 0.0F, 0.0F, -1.0F, 0.0F, 0.0F, 0.0F, 1.0F},
89 { 1.0F, 0.0F, 0.0F, 0.0F, 1.0F, 0.0F, 0.0F, 0.0F, 1.0F},
90 { 1.0F, 1.0F, 0.0F, -1.0F, 1.0F, 0.0F, 0.0F, 0.0F, 1.0F}
94 (ParamFloat<px4::params::NAV_MIN_FT_HT>) _param_nav_min_ft_ht,
95 (ParamFloat<px4::params::NAV_FT_DST>) _param_nav_ft_dst,
96 (ParamInt<px4::params::NAV_FT_FS>) _param_nav_ft_fs,
97 (ParamFloat<px4::params::NAV_FT_RS>) _param_nav_ft_rs
Global position setpoint in WGS84 coordinates.
static constexpr int INTERPOLATION_PNTS
static constexpr float FF_K
matrix::Vector3f _target_position_offset
void update_target_motion()
bool target_velocity_valid()
void set_follow_target_item(struct mission_item_s *item, float min_clearance, follow_target_s &target, float yaw)
Set follow_target item.
Helper class to use mission items.
void on_active() override
This function is called while the mode is active.
FollowTarget(Navigator *navigator)
int _follow_target_position
void track_target_position()
matrix::Vector3f _filtered_target_position_delta
matrix::Vector3f _step_vel
void on_inactive() override
This function is called while the mode is inactive.
DEFINE_PARAMETERS((ParamFloat< px4::params::NAV_MIN_FT_HT >) _param_nav_min_ft_ht,(ParamFloat< px4::params::NAV_FT_DST >) _param_nav_ft_dst,(ParamInt< px4::params::NAV_FT_FS >) _param_nav_ft_fs,(ParamFloat< px4::params::NAV_FT_RS >) _param_nav_ft_rs) FollowTargetState _follow_target_state
static constexpr float OFFSET_M
uORB::Subscription _follow_target_sub
#define ORB_ID(_name)
Generates a pointer to the uORB metadata structure for a given topic.
bool target_position_valid()
void update_target_velocity()
void track_target_velocity()
follow_target_s _current_target_motion
void reset_target_validity()
void update_position_sp(bool velocity_valid, bool position_valid, float yaw_rate)
static constexpr int TARGET_TIMEOUT_MS
matrix::Vector3f _current_vel
matrix::Vector3f _target_distance
void on_activation() override
This function is called one time when mode becomes active, pos_sp_triplet must be initialized here...
static constexpr int TARGET_ACCEPTANCE_RADIUS_M
uint64_t _last_update_time
Base class for different modes in navigator.
matrix::Vector3f _target_position_delta
matrix::Vector3f _est_target_vel
static constexpr float _follow_position_matricies[4][9]
follow_target_s _previous_target_motion