Skip to content

Commit b0dc3a4

Browse files
Thomas StastnyJaeyoung-Lim
authored andcommitted
add option to disable use of wind estimates with npfg
1 parent 493bae1 commit b0dc3a4

File tree

4 files changed

+16
-1
lines changed

4 files changed

+16
-1
lines changed

msg/npfg_status.msg

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
uint64 timestamp # time since system start (microseconds)
22

3-
uint8 wind_est_valid # (boolean) true = wind estimate is valid and being used by controller
3+
uint8 wind_est_valid # (boolean) true = wind estimate is valid and/or being used by controller (also indicates if wind est usage is disabled despite being valid)
44
float32 lat_accel # resultant lateral acceleration reference [m/s^2]
55
float32 lat_accel_ff # lateral acceleration demand only for maintaining curvature [m/s^2]
66
float32 bearing_feas # bearing feasibility [0,1]

src/modules/fw_pos_control_l1/FixedwingPositionControl.cpp

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -269,6 +269,12 @@ FixedwingPositionControl::wind_poll()
269269
_wind_vel(1) = 0.0f;
270270
}
271271
}
272+
273+
if (!_param_npfg_en_wind_estimates.get()) {
274+
_wind_valid = false;
275+
_wind_vel(0) = 0.0f;
276+
_wind_vel(1) = 0.0f;
277+
}
272278
}
273279

274280
void

src/modules/fw_pos_control_l1/FixedwingPositionControl.hpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -389,6 +389,7 @@ class FixedwingPositionControl final : public ModuleBase<FixedwingPositionContro
389389
(ParamFloat<px4::params::NPFG_ROLL_TC>) _param_npfg_roll_time_const,
390390
(ParamFloat<px4::params::NPFG_ASPD_BUF>) _param_npfg_airspeed_buffer,
391391
(ParamFloat<px4::params::NPFG_SW_DST_MLT>) _param_npfg_switch_distance_multiplier,
392+
(ParamBool<px4::params::NPFG_EN_WIND_EST>) _param_npfg_en_wind_estimates,
392393

393394
(ParamFloat<px4::params::FW_LND_AIRSPD_SC>) _param_fw_lnd_airspd_sc,
394395
(ParamFloat<px4::params::FW_LND_ANG>) _param_fw_lnd_ang,

src/modules/fw_pos_control_l1/fw_pos_control_l1_params.c

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -252,6 +252,14 @@ PARAM_DEFINE_FLOAT(NPFG_ASPD_BUF, 1.5f);
252252
*/
253253
PARAM_DEFINE_FLOAT(NPFG_SW_DST_MLT, 0.32f);
254254

255+
/**
256+
* Enable use of wind estimates for NPFG. Disabling, controller assumes zero wind.
257+
*
258+
* @boolean
259+
* @group FW NPFG Control
260+
*/
261+
PARAM_DEFINE_INT32(NPFG_EN_WIND_EST, 1);
262+
255263
/**
256264
* Cruise throttle
257265
*

0 commit comments

Comments
 (0)