66 Commits

Author SHA1 Message Date
Daniel Agar
c66fc85630
fw_pos_control_l1: move to WQ with uORB callback scheduling 2019-08-07 23:13:21 -04:00
Daniel Agar
e43e37cc46 fw_pos_control_l1 add new simple min groundspeed 2019-08-07 18:50:42 +02:00
Daniel Agar
a917f22b65
sensors: create vehicle_acceleration module (#12597) 2019-08-07 05:05:48 -04:00
Daniel Agar
2ad12d7977
sensors: create vehicle_angular_velocity module (#12596)
* split out filtered sensor_gyro aggregation from mc_att_control and move to wq:rate_ctrl
2019-08-06 12:55:25 -04:00
Timothy Scott
a134da6e12 Removed is_rotor_wing, replaced with vehicle_type 2019-06-13 10:04:26 +02:00
Daniel Agar
4bef573497 fw_pos_control_l1 move to new uORB::Subscription 2019-06-06 20:00:02 -04:00
Julian Oes
2ac8841f35 vtol/fw/mc: fix VTOL enum shadowing
This changes the enums used for various VTOL states to enum classes
which makes them type-safe and should avoid shadowing.

This change was motivated by a Clang warning about shadowing of the
enum const TRANSITION_TO_FW which was declared twice, once in
vtol_type.h and once in standard.h.

This change only removes the shadowing but presumably these enums could
be cleaned up and consolidated further.
2019-05-29 23:51:10 -04:00
Daniel Agar
9bad61b86b
Improve robustness to bad and lost airspeed data (#11846) 2019-04-30 03:08:23 -04:00
Roman
2bd8b517c5 FwPositionControl: don't do takeoff help for vtol
- takeoff help is used for fixed wings, it increases the altitude setpoint
after a launch. A vtol does not need this as it's already sufficiently
high up in the air.

Signed-off-by: Roman <bapstroman@gmail.com>
2019-04-30 02:45:49 -04:00
Daniel Agar
ec3bc4ee5b fw_pos_control_l1 reset internal takeoff and landing state when arming 2019-04-03 08:48:30 +02:00
Daniel Agar
45d7165eb3 fw_pos_control_l1 skip wind > max airspeed logic if airspeed invalid
- cleanup airspeed validity check logic
2019-01-12 14:19:53 +01:00
Alvar Martti
63651da309 FW bug in checking if landing point has been passed
* the bearing difference between the waypoints and aircraft to landing point should be wrap_pi'ed
2018-12-21 10:03:31 -08:00
Roman Bapst
90bfdb6f0a VTOL rate control architecture improvements (#10819)
* attitude and rate setpoint message: use 3D array for thrust demand
* FixedWingAttitudeControl: rework airspeed scaling
  * move airspeed and scaling calculation into separate method
  * if vtol in hover and airspeed disabled use minimum airspeed instead of trim airspeed
2018-11-21 20:32:40 -05:00
CarlOlsson
82106cc4c1 fw_l1_control: add underscores to perf for consistency 2018-10-22 09:26:06 -04:00
Roman
e17f0802cc tecs msg: changed flight_path_angle to height rate as clearly we are
looking at height rates

Signed-off-by: Roman <bapstroman@gmail.com>
2018-09-17 10:27:08 -04:00
Daniel Agar
5207c420c3 generic position controller status/feedback message 2018-08-31 14:43:51 -04:00
Philipp Oettershagen
c997159e32 Fixed-wing autoland: Introduce parameter to enable/disable the early activation of the landing configuration 2018-08-24 10:13:07 -04:00
Philipp Oettershagen
20c02ae093 Fixed-wing autoland: Adapt according to @dagar's and @antiheavy's comments. 2018-08-24 10:13:07 -04:00
Philipp Oettershagen
08ceddaddb Fixed-wing autoland: ALWAYS flare when close to the ground, independently of the horizontal distance to the land WP. This avoids that we crash into the ground at negative pitch and guarantees that the flare always starts at the same altitude above ground. However, the motor shutoff still depends on the horizontal distance to the LAND WP, thus avoiding that the motor is shut off prematurely 2018-08-24 10:13:07 -04:00
Philipp Oettershagen
4c4f585ad5 Fixed-wing autoland: 1) The landing configuration (flaps, different airspeed) is now already set during the loiter down instead of at the start of the landing approach. This is done to avoid any mode changes (which can cause altitude/airspeed jumps) so close to the gorund. 2) A scaling factor for the TECS throttle time constant was added which allows tighter throttle control during the landing (i.e. close to the ground) than high up in the air 2018-08-24 10:13:07 -04:00
Roman Bapst
8b1381ead9 update ecl l1 and usage for new roll angle setpoint slew rate limit (#10005)
* added ability to slew rate limit the roll angle output of the l1 controller
* FixedWingPositionControl: this avoids the steps in roll angle setpoint which occur when the controller
switches to a new waypoint
* GroundRoverPositionControl: adapted to new l1 API
2018-08-01 14:01:41 -04:00
TSC21
ca42483794 update msgs fields from camelCase to snake_case so rosidl_generate_interfaces() is able to generate code for ROS IDL files 2018-07-30 21:40:28 +02:00
Daniel Agar
9a4de09325 sensors remove airspeed negative check 2018-07-16 01:09:19 -04:00
Thomas Stastny
8a7919bcb6 fw att+pos ctrl: use enum for flaps configs 2018-07-11 08:08:13 +02:00
Thomas Stastny
0c3399433d fw att+pos ctrl: add takeoff flaps setting 2018-07-11 08:08:13 +02:00
Daniel Agar
9fa882119d fw_pos_ctrl_l1 remove unnecessary orb rate limits 2018-07-05 12:16:44 -04:00
Daniel Agar
cf74166801 double promotion warning fix or ignore per module 2018-07-01 09:36:55 +00:00
Philipp Oettershagen
753ad0e0df Fixed-wing autoland: Fix bug that could cause a steep pitch increase and thus aircraft stall during the flare (#9674) 2018-06-14 11:29:03 -04:00
Daniel Agar
0e823c82b6
FW landing check if prev valid before using (#9284) 2018-04-21 12:03:46 -04:00
Daniel Agar
d75fd72c02 stop manually defining physical constants 2018-04-19 07:24:58 +02:00
Roman
0f1c9504d5 FixedWingPositionControl: rotate attitude consistenly for tailsitters
Signed-off-by: Roman <bapstroman@gmail.com>
2018-04-18 16:20:15 +02:00
Daniel Agar
a78ab02144 fw_pos_control_l1 don't store TECS and L1 parameters 2018-04-12 00:46:49 -04:00
Beat Küng
b512d11e54 refactor fw_pos_control_l1: replace BlockParam* with Param* classes
Also change naming convention: add _ prefix to class attributes
2018-03-22 08:19:08 +01:00
sanderux
d87b7ac7f4 Fix scale application on FW throttle baro compensation 2018-03-20 00:13:36 +01:00
Daniel Agar
b6b7fddb9f
TECS and L1 switch to matrix math library (#9101) 2018-03-19 18:09:54 -04:00
Daniel Agar
7607c71ca8 fw_pos_control_l1 project virtual waypoint to handle landing overshoot 2018-03-14 16:39:19 -04:00
Daniel Agar
d1dca4e74c fw_pos_ctrl_l1 move takeoff to control_takeoff() 2018-03-14 16:39:19 -04:00
Daniel Agar
c72340e039 fw_pos_ctrl_l1 move landing to control_landing() 2018-03-14 16:39:19 -04:00
Beat Küng
8a5cdac1f4 FixedwingPositionControl: fix ordering of PRINT_MODULE_USAGE_NAME 2018-03-13 17:35:15 +01:00
ToppingXu
e340f6fd7a FixedwingPositionControl: fix air_gnd_angle judgement condition.
air_gnd_angle is from acos(), and never return a value that bigger than
M_PI_F
2018-03-02 21:57:11 +01:00
Roman
08534588cd fw_pos_control: get vtol parameter values if vehicle is vtol
Signed-off-by: Roman <bapstroman@gmail.com>
2018-03-01 12:16:27 -05:00
Daniel Agar
a1f660119c fw_pos_control_l1 consolidate message updates 2018-02-17 18:11:43 +01:00
Daniel Agar
458d8f7b02 fw_pos_control_l1 move to ModuleBase 2018-02-17 18:11:43 +01:00
Daniel Agar
8b63dbecde FW controllers initialize vtol_type to a non-valid value
- tailsitter is vtol type 0
2018-02-11 17:12:45 +01:00
Daniel Agar
370da89573
fw_pos_control fix parameter sanity check (#8521)
- the sanity check result wasn't being sent to the user and prevents landing slope, runway takeoff, and launch detector parameter updates.
2017-12-26 16:02:31 -05:00
Daniel Agar
fc7c8b4b89 vehicle_status delete engine_failure_cmd 2017-12-27 02:41:10 +08:00
Andreas Antener
4f5d70bbe5 Increase fixed-wing l1 navigation radius limit 2017-11-26 14:43:25 +01:00
sanderux
b305900cae Scale FW cruise throttle based on baro presure 2017-11-24 16:33:57 +01:00
Daniel Agar
b569a8c2b9
fw_pos_control_l1 increase stack by 110 Bytes (#8348) 2017-11-23 17:09:05 -05:00
Daniel Agar
4416c4ddb3 navigator move parameters out of MissionBlock
- MissionBlock is an interface with > 10 implementations
2017-10-26 22:43:53 +02:00