48 #include <mathlib/mathlib.h> 50 #include <px4_platform_common/module_params.h> 83 void modifySetpoint(
matrix::Vector2f &original_setpoint,
const float max_speed,
89 uint64_t _data_timestamps[
sizeof(_obstacle_map_body_frame.distances) /
sizeof(_obstacle_map_body_frame.distances[0])];
90 uint16_t _data_maxranges[
sizeof(_obstacle_map_body_frame.distances) /
sizeof(
91 _obstacle_map_body_frame.distances[0])];
107 void _adaptSetpointDirection(
matrix::Vector2f &setpoint_dir,
int &setpoint_index,
float vehicle_yaw_angle_rad);
115 bool _enterData(
int map_index,
float sensor_range,
float sensor_reading);
125 bool _interfering{
false};
126 bool _was_active{
false};
138 static constexpr uint64_t RANGE_STREAM_TIMEOUT_US{500_ms};
139 static constexpr uint64_t TIMEOUT_HOLD_US{5_s};
146 (ParamFloat<px4::params::CP_DIST>) _param_cp_dist,
147 (ParamFloat<px4::params::CP_DELAY>) _param_cp_delay,
148 (ParamFloat<px4::params::CP_GUIDE_ANG>) _param_cp_guide_ang,
149 (ParamFloat<px4::params::CP_GO_NO_DATA>) _param_cp_go_nodata,
150 (ParamFloat<px4::params::MPC_XY_P>) _param_mpc_xy_p,
151 (ParamFloat<px4::params::MPC_JERK_MAX>) _param_mpc_jerk_max,
152 (ParamFloat<px4::params::MPC_ACC_HOR>) _param_mpc_acc_hor
160 float _sensorOrientationToYawOffset(const
distance_sensor_s &distance_sensor,
float angle_offset) const;
187 void _updateObstacleMap();
192 void _publishVehicleCmdDoLoiter();
High-resolution timer with callouts and timekeeping.
#define ORB_ID(_name)
Generates a pointer to the uORB metadata structure for a given topic.
Vector2< float > Vector2f
__BEGIN_DECLS typedef uint64_t hrt_abstime
Absolute time, in microsecond units.
__BEGIN_DECLS typedef void * orb_advert_t
ORB topic advertiser handle.
#define ORB_MULTI_MAX_INSTANCES
Maximum number of multi topic instances.