Commit Graph

14521 Commits

Author SHA1 Message Date
Daniel Agar bb12fce66c delete RATTITUDE flight mode 2021-03-09 10:47:00 -05:00
Daniel Agar d37510a43d update UUV and rover controllers to use trajectory_setpoint and cleanup unused position_setpoint fields 2021-03-09 10:36:34 -05:00
David Jablonski 063bb75891 simulator: fix lidar sensors 2021-03-08 21:27:39 -05:00
Matthias Grob c96d9a79b8 mc_att_control_params: remove frequency unit from attitude gains 2021-03-08 11:14:01 -05:00
Daniel Agar cbb2fa440b sensors/vehicle_angular_velocity: only allocate dynamic notch perf counters if enabled (IMU_GYRO_DYN_NF) 2021-03-08 10:35:48 -05:00
Daniel Agar 68c171fd4f land_detector: continue respecting hover thrust throughout descent 2021-03-08 11:33:36 +01:00
Jaeyoung-Lim 1fa08c3997 Fix actuator controls timestamps for MAV_CMD_DO_SET_ACTUATOR
Fix actuator controls timestamps for MAV_CMD_DO_SET_ACTUATOR
2021-03-07 20:31:24 -05:00
Paul Riseborough 4465c4fbf6 ekf2: Publish and log EKF warning and information events (NEW msg estimator_event_flags)
* msg: Add estinator information and warning events message (estimator_event_flags)
 * ekf2: publish information and warning events
 * logger: log estimator_event_flags
 * update ecl submodule to latest

Co-authored-by: Daniel Agar <daniel@agar.ca>
2021-03-07 16:16:48 -05:00
Daniel Agar 35488337d3 mc_pos_control: add OFFBOARD takeoff intent 2021-03-07 11:04:17 +01:00
Daniel Agar 263b00b65f ekf2 support SET_GPS_GLOBAL_ORIGIN and remove globallocalconverter usage
- vehicle_command cmd extended from uint16 to support PX4 internal commands that don't map to mavlink
2021-03-05 18:25:14 -05:00
Nicolas MARTIN 66beffa2f3 Enable pre-arm checks in HIL modes
by airframe parameters HIL mode will still disable:
 - usb check
 - power checks
 - safety switch
2021-03-05 21:23:31 +01:00
Matthias Grob 114e85d260 MultiCopterPositionControl: hotfix emergency failsafe
that prevents the vehicle from crashing with invalid setpoints or
states.

This broke with #16869 when the scheduling of the position control module
and the setpoint generation got independent. The failsafe mechanism assumed
the setpoint is overwirtten by the possibly infeasible input on every loop
iteration which is not the case anymore. As a result the failsafe reset its
histeresis based on the failsafe setpoint from the last loop iteration.

Keeping the failsafe_setpoint separate solves this issue. Note that
these setpoints to the bare minimum to keep the vehicle safely in the air
and do not suffer from sideffects ignoring the EKF reset.
2021-03-05 11:29:36 -05:00
Daniel Agar fddcb73802 sensors/vehicle_angular_velocity: dynamic notch filter support ESC RPM (untested) 2021-03-05 10:56:54 -05:00
Daniel Agar d5d5b7d82e sensors/vehicle_angular_velocity: add perf counters 2021-03-05 10:56:54 -05:00
Daniel Agar 19de1e57e3 gyro_fft promote to modules and include on all boards 2021-03-05 10:56:54 -05:00
Daniel Agar 00b3b3678b sensors/vehicle_angular_velocity: gyro dynamic notch filters updated from onboard FFT 2021-03-05 10:56:54 -05:00
Daniel Agar 077afdf9aa commander: extend reliant on opt flow to ALTCTL (degraded from POSCTL)
If you're flying in manual position control mode and lose position the state machine will put you in altitude control mode. Extending the reliant on optical flow relaxed position validity thresholds allows you to potential get back into position control mode with flow alone.
2021-03-05 10:07:36 -05:00
Daniel Agar d0c9a5fc93 OFFBOARD mode architecture overhaul (#16739)
- handle SET_POSITION_TARGET_LOCAL_NED and SET_POSITION_TARGET_GLOBAL_INT with ORB_ID(trajectory_setpoint)
 - FlightTaskOffboard not needed at all
 - bypass position_setpoint_triplet entirely (start removing extraneous fields)
 - simplify offboard_control_mode to map to supported control modes
2021-03-05 09:39:46 -05:00
David Jablonski 5233737a86 adjust some limits to prevent divide-by-zero 2021-03-05 10:42:19 +01:00
Matthias Grob 5bbc66f3af ManualControl: name, message, comment, const qualifier improvements
addressing review from @bresch, @julianoes and @JonasVautherin
2021-03-04 10:41:21 +01:00
Matthias Grob 2f39651f77 ManualControl: use current sample for timeout check 2021-03-04 10:41:21 +01:00
Matthias Grob a43a829fdf Commander: gate manual control setpoint processing on new data 2021-03-04 10:41:21 +01:00
Matthias Grob 935423b563 ManualControl: start to distinguish rc arming methods 2021-03-04 10:41:21 +01:00
Matthias Grob c16b48fd2c Commander: Replace manual_control_setpoint use 2021-03-04 10:41:21 +01:00
Matthias Grob 49c240f49e Commander: simplify rc arming disabling logic 2021-03-04 10:41:21 +01:00
Matthias Grob ca3bfb5ea1 ManualControl: simplify multicopter manual thrust logic 2021-03-04 10:41:21 +01:00
Matthias Grob a796903e21 ManualControl: fix arm button use case 2021-03-04 10:41:21 +01:00
Matthias Grob 37ea78a7ff Commander: move rc arming to ManualControl class
Separating the different arming methods is the next step.
2021-03-04 10:41:21 +01:00
Matthias Grob 00a4133042 ManualControl: make members private again 2021-03-04 10:41:21 +01:00
Matthias Grob ee2d408edc Commander: move rc availability to ManualControl 2021-03-04 10:41:21 +01:00
Matthias Grob 0e1f1a9f57 Commander: use parameters directly in ManualControl 2021-03-04 10:41:21 +01:00
Matthias Grob dda895c94b Commander: split out rc override logic into ManualControl 2021-03-04 10:41:21 +01:00
Matthias Grob a4da15edf5 Commander: RC override back to stick change
Instead of deflection mainly because:
- Spring loaded throttle -> bad user experience
- Stale RC data -> Vehicle not savable
2021-03-04 10:41:21 +01:00
Matthias Grob 3d87982bba Commander: reintroduce last stick position 2021-03-04 10:41:21 +01:00
Julian Kent cdadfabccc Bring back RC throttle override with a parameter to disable it 2021-03-04 10:41:21 +01:00
Matthias Grob 28b89b024f MulticopterPositionControl: fix Takeoff ramp use
- guard against NAN speed_up limit as input to ramp see #14339
- allow negative speed_up limit for ramp to work
2021-03-03 18:53:56 +01:00
Daniel Agar 0eb327743e move min/max distance to ground limits to FlightTask ManualAltitude 2021-03-03 18:53:56 +01:00
Daniel Agar ecd5e57ab5 remove debug 2021-03-03 18:53:56 +01:00
Daniel Agar 0ada59e57b ekf reset remove NAN checks 2021-03-03 18:53:56 +01:00
Daniel Agar 7a7d316a32 Update src/modules/mc_pos_control/PositionControl/CMakeLists.txt
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-03-03 18:53:56 +01:00
Daniel Agar 87f835710b Update src/modules/flight_mode_manager/FlightModeManager.hpp
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-03-03 18:53:56 +01:00
Daniel Agar c891db19f9 Update src/modules/flight_mode_manager/tasks/FlightTask/FlightTask.cpp
Co-authored-by: Matthias Grob <maetugr@gmail.com>
2021-03-03 18:53:56 +01:00
Daniel Agar 266ea377da move takeoff state machine flight_mode_manager -> mc_pos_control 2021-03-03 18:53:56 +01:00
Daniel Agar c9a2d0ed34 IMU_GYRO_RATEMAX set system default to 400 Hz
- MC default is still 800 Hz
2021-03-02 10:08:49 -05:00
Kalyan Sriram b257f9d1fd actuator: add support for MAV_CMD_DO_SET_ACTUATOR
Adds support for using the MAVLink command MAV_CMD_DO_SET_ACTUATOR to
update the actuator values on control group 3 aux{1, 2, 3}. A simple
deconfliction with rc_update is implemented: when a MAVLink command is
sent, RC is disabled for that channel until a major stick movement is
detected.
2021-03-02 12:41:02 +01:00
Beat Küng ada05165f1 mc_pos_control_params: fix param descriptions for negative values 2021-03-02 08:29:58 +01:00
Daniel Agar 0ba1bc0ce1 MPC_POS_MODE remove old metadata and explicitly handle invalid configuration 2021-03-01 09:10:11 +01:00
Daniel Agar 9d0c966b15 sensors: publish sensor_selection initially regardless of SENS_IMU_MODE
- in multi-EKF mode the EKF selector becomes repsonsible for sensor
selector rather than the sensors module
 - this updates the sensors module to still make the initial primary IMU
selection on startup before the EKF selector (including if the
estimators never fully initialize)
2021-02-27 20:19:05 +01:00
Daniel Agar 9d47f7ecda simulator: make first accel/gyro simulated FIFO 2021-02-26 18:40:37 -05:00
Matthias Grob c2151cb4fa Commander: remove unused arm mode command residue 2021-02-26 07:38:02 -05:00