bresch
2307c7c390
Geofence - Rename _warning_action_on to _geofence_warning_action_on
...
since it is only set by the geofence logic. Simplify conditions in IF
statements.
2019-06-04 08:35:56 +02:00
bresch
f8f967f073
Geofence - Change from "re-engage geofence failsafe every 10s when
...
outside the fence" to "engage geofence failsafe on transition". This
way, the pilot is not stucked in the non flight zone and can switch to
a manual mode and fly back or trigger RTL.
2019-06-04 08:35:56 +02:00
bresch
427b2e6636
Geofence - Do not trigger geofence failsafe while in low battery
...
failsafe action.
Also move geofence flags from static variables declared into the if
statement to private members of the class.
2019-06-04 08:35:56 +02:00
bresch
d13dfdcd24
AutoLineSmoothVel - Remove duplicate of _yaw_sp_prev update. This is done in the Auto FlightTask, _limit_yaw_rate
2019-05-30 11:14:44 +02:00
bresch
a7cf981c8c
AutoLineSmoothVel - Reduce jerk if acceleration, velocity and desired velocity are small to help the optimizer to converge towards zero
2019-05-30 11:14:44 +02:00
bresch
3499b6ff89
AutoLineSmoothVel - Do not generate heading from trajectory if the velocity vector is smaller than 10cm/s
...
This is done to avoid generating large yaw changes when the velocity
vector is small; for example when switching into loiter or reaching the
last waypoint.
2019-05-30 11:14:44 +02:00
bresch
bb055fdaf3
AutoSmoothVel - Override checkTakeoff with task-specific logic and reactivate z axis with downward velocity to takeoff smoothly
2019-05-22 22:05:38 +02:00
bresch
feefbb444b
ManualSmoothVel - Remove unused _param_mpc_jerk_min declaration
2019-05-17 14:15:29 +02:00
Mathieu Bresciani and Matthias Grob
4b2d01dea1
MPC parameters - Update from Matthias' comments
...
Co-Authored-By: Matthias Grob <maetugr@gmail.com >
2019-05-17 14:15:29 +02:00
bresch
b726d8df0d
Add jerk parameter for auto mode MPC_JERK_AUTO. Specify when a parameter is only used in a certain manual or auto mode
2019-05-17 14:15:29 +02:00
bresch
02f0533ee9
Commander - Remove old code that overrides state_machine_helper logic
2019-05-07 17:45:28 +02:00
bresch
6d8d8e3c88
MC gyro cutoffs - Reduce IMU_GYRO_CUTOFF to 30Hz and disable MC_DTERM_CUTOFF.
...
A low gyro cutoff is needed for most medium/large size drones as the structural natural and blade-pass frequencies are low.
A higher value is still desirable for small platforms surch as racers
or well isolated autopilots and should be tuned by the user.
Specific values for config files are untouched.
The cutoff filter for the D term is disabled here as the required
cutoff frequency for the default D term of the rate controller is higher
than the gyro cutoff. In that case, enabling the D term cutoff would
just add some undesired phase lag to the derivative.
2019-05-07 12:15:51 +02:00
bresch
881d0f4143
UAVCAN - update ROMFS_FW_PATH to /etc/uavcan/fw. to match documentation
2019-05-02 16:22:33 -05:00
bresch
89bc68e12b
Auto - Rename MC_YAWRAUTO_MAX -> MPC_YAWRAUTO_MAX
2019-04-26 12:43:26 +02:00
bresch
581d25f77f
Auto mode traj - limit yaw setpoint rate of change when generated in the flight task instead of clamping the yaw rate in the controller
...
Move yaw setpoint slew rate from AutoLineSmoothVel to Auto. The slew rate is now applied consistently to all the auto FlightTasks
2019-04-26 12:43:26 +02:00
bresch
903deb7579
RTL - Skip descend state if no delay is set between descend and land
2019-04-25 18:24:04 +02:00
bresch
93d52581ef
Auto - Fix cruise speed. Tested with and without SDK. Before that commit, the drone files at max speed instead of cruise speed if not precised by the SDK
2019-04-15 16:32:26 +02:00
bresch
dec96b0a3a
revert FlightTasks: fix mission DO_CHANGE_SPEED
2019-04-03 18:08:24 +02:00
bresch
20adce5077
Add new line at the end of FlightTaskFailsafe.cpp and FlightTaskAutoLine.cpp
2019-04-03 15:38:50 +02:00
bresch
986c1a37d1
Parameter update - Rename variables in modules/ekf2
...
using parameter_update.py followed by a make format
2019-04-03 15:38:50 +02:00
bresch
da2deaa0b2
Parameter update - Rename variables in modules/mavlink
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
f3990c84fc
Parameter update - Rename variables in modules/navigator
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
e575f032e4
Parameter update - Rename variables in modules/mc_att_control
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
2197ac883d
Parameter update - Rename variables in modules/wind_estimator
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
6c823903bc
Parameter update - Rename variables in modules/simulator
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
f08c00f324
Parameter update - Rename variables in modules/fw_pos_control
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
ecacf4de46
Parameter update - Rename variables in modules/load_mon
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
10ba0801d2
Parameter update - Rename variables in modules/fw_pos_control
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
ece49247b6
Parameter update - Rename variables in modules/mc_pos_control
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
c6e7c0fa5d
Parameter update - Rename variables in modules/events
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
2ca8ddd8af
Parameter update - Rename variables in modules/commander
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
2255ab21be
Parameter update - Rename variables in templates
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
b14446f0e5
Parameter update - Rename variables in lib
...
using paramter_update.py script
2019-04-03 15:38:50 +02:00
bresch
ec5da55107
Parameter update - Rename variables in drivers
...
using parameter_update.py script
2019-04-03 15:38:50 +02:00
bresch
aa8edbc2ba
Parameter update - add -tcpp flag in rg to check C++ files only
2019-04-03 15:38:50 +02:00
bresch
06ab8570ab
Parameter update - Add parameter_update.py script used to rename the BlockParam variables with the new strict naming convention
2019-04-03 15:38:50 +02:00
bresch
99fb88ce83
AltitudeSmoothVel - Create new altitude flight task that uses the
...
velocity smoothing library to create a jerk-limited trajectory along the
Z axis. This FlightTask is used when MPC_POS_MODE = 3.
2019-04-03 10:43:31 +02:00
bresch
a08b1682e3
[Position|AutoLine]SmoothVel - Update position and velocity states of the trajectories in case of EKF reset. Until now, only the position reset on XY axis was properly handled. Now, xy, vxy, z and vz are handled
2019-03-20 14:35:26 -04:00
bresch
0813f30723
AutoLineSmoothVel - change function contrain_one_side(..) from snake_case to camelCase
2019-03-20 14:35:26 -04:00
bresch
aecf8fce58
ManualPositionSmoothVel - Force velocity and acceleration setpoints to zero if the velocity setpoint is smaller than 1mm/s and that the acceleration setpoint is null
2019-03-18 08:33:11 +01:00
bresch
1fefa76e5d
ManualSmoothVel - Set jerk to 1.0 during position hold to help the optimizer to converge towards 0 vel and acc
2019-03-18 08:33:11 +01:00
bresch
06f683bdda
VelocitySmoothing - Add simple test script
2019-03-18 08:33:11 +01:00
bresch
b9cf4dfb6c
VelocitySmoothing - Get rid of math.h, math.cpp and px4_defines dependencies
2019-03-18 08:33:11 +01:00
bresch
ddab0ccdf1
VelocitySmoothing - Protect against division by zero and sqrt of a negative number
2019-03-18 08:33:11 +01:00
bresch
c5706f6283
FlightTaskAuto - Recover position control after local position reset ( #11636 )
...
* FlightTaskAuto - Explicitly check is _triplet_target is finite to decide if the target has to be updated or not. If the _target is NAN, always try to update it to get a valid setpoint.
2019-03-15 00:42:24 -04:00
bresch
684e2974ac
mc_pos_control_main - Re-add updateVelocityControllerIO for glitch-free position unlock
2019-02-28 21:26:13 +01:00
bresch
f229444722
ManualSmoothVel - Split position lock condition and flag action
2019-02-25 21:41:04 +01:00
bresch
8f584a1496
smooth takeoff - Support smooth takeoff triggered by jerk setpoint
2019-02-25 08:07:33 +01:00
bresch
197ddd3e46
mc_pos_control - Publish trajectory setpoint directly after the FlightTask update
2019-02-13 20:56:57 +01:00
bresch
c0dab47554
mc_pos_control - reduce smooth_velocity_takeoff default threshold, set initial takeoff speed to 0 and remove useless else
2019-02-13 20:56:57 +01:00
bresch
e0c48d1d76
PositionControl - use dynamic constraints to saturate velocity controller for now as it is needed for the current smooth takeoff logic. Will be reverted after smooth takeoff refactor
2019-02-13 20:56:57 +01:00
bresch
106f0769fd
mc_pos_control - add takeoff_ramp_time zero division guard
2019-02-13 20:56:57 +01:00
bresch
70ddb8049a
Traj Smoothing - make format
2019-02-13 20:56:57 +01:00
bresch
3543071eb9
Position Controller - Saturate the controllers using static parameters. Handle saturations in the flight tasks only
2019-02-13 20:56:57 +01:00
bresch
4cace1bbe9
Manual vel smooth - use speed_up and speed_down constraints to limit velocity target of the trajectory generator
2019-02-13 20:56:57 +01:00
bresch
b7c2464cce
Manual vel smooth - Use MPC_JERK_MAX only
2019-02-13 20:56:57 +01:00
bresch
1730cd3a69
Velocity Smoothing - Various improvements, cleanup and corner cases fixes
2019-02-13 20:56:57 +01:00
bresch
f1262cbe84
Manual Traj - Avoid velocity jumps due to a modification of the constraints
2019-02-13 20:56:57 +01:00
bresch
57eef6b170
Manual Trajectory - Add Z position lock logic and log complete trajectory
2019-02-13 20:56:57 +01:00
bresch
5229882470
Camera Capture - Use falling edge only
2019-02-10 18:07:44 -05:00
bresch
7906bff914
Camera Capture - add "status" to camera_capture usage help message
2019-02-10 18:07:44 -05:00
bresch
faa8b6fe6d
Camera Capture - enable capture at startup
2019-02-10 18:07:44 -05:00
bresch
df58e161d1
Trajectory auto - Handle EKF xy reset
2019-01-22 17:23:16 +01:00
bresch
a2d5485c7f
Trajectory manual - Handle EKF xy reset
2019-01-22 17:23:16 +01:00
bresch
a2e9d9ffce
AutoSmoothVel - Handle NAN in velocity and position properly
2019-01-17 17:55:37 +01:00
bresch
766f911005
beta75 - Reduce MC_YAWRATE_P to avoid oscillations when battery is fully charged
2019-01-14 18:38:31 +01:00
bresch
118848d261
beta75 - Adjust PWM_MIN and set number of cells
2019-01-14 18:38:31 +01:00
bresch
7cc00f41d2
AirModeYaw - Change airmode type from bool to int
2018-12-13 09:50:07 +01:00
bresch
be2e80c186
MPC_YAW_MODE - Change max to 3 to enable trajectory alignment
2018-11-30 09:27:40 -05:00
bresch
20f870137b
FW auto - Add parameter for flaps setting during landing
2018-11-23 10:40:27 +01:00
bresch
7779c0bd69
MPC - Update velocity integrator definition
2018-11-15 22:08:00 +01:00
bresch
d852ce20e6
MPC - Increase max velocity integral gain to 3.0
2018-11-15 22:08:00 +01:00
bresch
0863e95a2c
Add "Tracking Anti-Reset Windup" in velocity PID controller
2018-11-15 22:08:00 +01:00
bresch
f590137525
Fix HIL
...
Revert "pwm_out_sim lazily publish actuator_outputs"
This reverts commit bcad940a9f .
2018-11-12 19:21:15 +01:00
bresch
90cee2d5ea
Manual Smoth Vel - Override reActivate to not reset Z axis (prevented takeoff)
2018-11-06 22:17:00 +01:00
bresch
c3a4fff0cd
Auto traj - generate heading from trajectory velocity vector if possible
2018-11-06 22:17:00 +01:00
bresch
066d1f50c4
Auto traj - Add dedicated parameter to enable trajectory smoothing in auto mode only
2018-11-06 22:17:00 +01:00
bresch
7205e8f359
Auto traj - Add Trajectory logging
...
- move the update after the integration: a new computed jerk has an impact at the next epoch only
- add jerk reduction in case of too large integration time: when a jerk of "min_jerk" during dt is too much
- add jerk reduction if the integration time is larger than the predicted one and that integrating that jerk would lead to an acceleration overshoot
- rename some variables
2018-11-06 22:17:00 +01:00
bresch
2847ce20b8
Auto traj - Add parameter for gain of trajectory controller
2018-11-06 22:17:00 +01:00
bresch
2c63388fb7
Auto Traj - Disable reActivate "reset" function for AutoLineSmoothVel Flight Task
2018-11-06 22:17:00 +01:00
bresch
0209fa00bf
Auto Smooth Vel - Add AutoMapper2 and AutoLineSmoothVel flight tasks
2018-11-06 22:17:00 +01:00
bresch
67c0846068
Vel smooth - Improve position lock/unlock detection
2018-11-06 22:17:00 +01:00
bresch
d9edcfdc06
Trajectory - format style
2018-11-06 22:17:00 +01:00
bresch
aa586ca327
Trajectory - Overload integrate function to allow for custom integration period
2018-11-06 22:17:00 +01:00
bresch
7073187a48
Trajectory - Add getters for current position and velocity. Move some getters to public section
2018-11-06 22:17:00 +01:00
bresch
6a7ce651bc
Trajectory - Add position lock-unlock logic and proper initialization from controller feedback
2018-11-06 22:17:00 +01:00
bresch
84665672ad
Vel smooth - Change jerk scheduling strategy
2018-11-06 22:17:00 +01:00
bresch
ab7e4436b3
Vel smooth - Add Z trajectory
2018-11-06 22:17:00 +01:00
bresch
4f668c0c2d
SITL - update default velocity PID gains
2018-11-06 22:17:00 +01:00
bresch
22780efcd0
Trajectory - Add time synchronization between trajectories. Split update(...) function into updateDurations(...) and integrate(...) to be able to insert time synchronization in between.
2018-11-06 22:17:00 +01:00
bresch
d69cba5db9
FW trim - Fix typos in FW_DTRIM_R/P/Y_VMAX
2018-10-09 10:37:22 +02:00
bresch
740e409016
PWM - Add PWM_MIN and PWM_MAX parameters for MAIN and AUX ( #10452 )
2018-09-16 18:07:29 -04:00
bresch
124a34e8f6
Failure Detector - Add space between Failure and Detector in @group field
2018-08-28 11:23:25 -04:00
bresch
9be0c97346
Failure Detector - use bitmask field instead of boolean in vehicle_status msg (failure_detector_status) and instead of struct in class
2018-08-28 11:23:25 -04:00
bresch
0001031e59
Failure Detector - Rename parameters and change group
2018-08-28 11:23:25 -04:00
bresch
93ba11c218
Failure Detector - Move COM_FAIL_x params to dedicated _param.c file
2018-08-28 11:23:25 -04:00
bresch
92b00ec07e
Failure Detector - Do not trigger force_failsafe flag anymore
2018-08-28 11:23:25 -04:00
bresch
fea91c96e8
Failure Detector - Use dedicated parameters for attitude checks
2018-08-28 11:23:25 -04:00
bresch
72f2317c95
Failure Detector - move "force_failsafe" flag inside circuit_breaker protection; remove PX4_WARN and send mavlink msg only once
2018-08-28 11:23:25 -04:00
bresch
9a6fef62ab
Vehicle_Status_msg - Add attitude_failure flag to vehicle_status message
2018-08-28 11:23:25 -04:00