29335 Commits

Author SHA1 Message Date
Daniel Agar
593aaa48ca tfmini move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
eb8fbaf93d teraranger move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
a1f3f2112b srf02 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
592037851a sf1xx move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
a6bbf0b945 sf0x move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
ce3b5103fc mb12xx move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
22b89034d9 ll40ls move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
4d41dcaee2 leddar_one move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
9a0f145fc0 hc_sr04 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
6ef42e2c52 cm8jl65 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
e73dd73ea7 mpl3115a2 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
b8befe36b9 lps25h move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
9003aeb216 lps22hb move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
1e7c6be839 bmp280 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
e1bc975065 drivers/differential_pressure move all to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
83d3ead821 ist8310 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
ec0d1d6f62 lsm303d move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
8b4ecc6947 icm20948 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
fc7f1ca598 fxos8701cq move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
d4ece2c7bb fxas21002c move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
9fa865d490 bmi160 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
370f0f73ce bma180 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
e27a8e1010 bmi055 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
be3653f761 l3gd20 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
427c49ac43 adis16477 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
6113caaa33 adis16448 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
16b26c1927 mpu6000 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
70947920b8 hmc5883 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
56024cda79 ms5611 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
ea734f634d mpu9250 move to px4 work queue 2019-05-24 12:58:55 -04:00
Daniel Agar
e9ca5d5aba PX4 general work queue 2019-05-24 12:58:55 -04:00
Beat Küng
f58079bc5d pxh.cpp: fix invalid reference if words is empty
This can happen for example if 'line' is a space.
2019-05-24 11:06:41 -04:00
Matthias Grob
6eb29fca9d vscode: remove matter of taste tabs customization 2019-05-24 10:06:06 -04:00
Matthias Grob
ea48cd4970 Takeoff: address @RomanBapst's review comments v1.9.0 v1.9.0-rc2 2019-05-22 22:05:38 +02:00
Matthias Grob
1c776f16ec mc_att_control: fix applying not updated thrust setpoint 2019-05-22 22:05:38 +02:00
Matthias Grob
953e5e5019 Revert "mc_att_control: fix having high thrust when disarmed"
This reverts commit 0c81a19decde6ddfe4ce87c34c762ea15fd3ab09.
2019-05-22 22:05:38 +02:00
Matthias Grob
fac3e1c3f9 mc_pos_control: switch back to velocity ramp
But fix the two crucial problems:
- When to begin the ramp?
There's a calculation now for the velocity ramp initial value
such that the resulting thrust is zero at the beginning.
- When to end the ramp?
The ramp is applied to the upwards velocity constraint and it
just ramps from the initial value to the velocity constraint
which is applied during flight. Slower/going down is always possible.
2019-05-22 22:05:38 +02:00
Matthias Grob
90c6fea408 mc_pos_control_params: user friendly default spool/rampup times 2019-05-22 22:05:38 +02:00
Matthias Grob
856d129bf8 mc_pos_control: fix updating takeoff state when no flight task is running
Without always updating the takeoff state it will not get skipped when
the takeoff happened manually and when you switch from manual to position
mode the drone goes to idle and falls.
2019-05-22 22:05:38 +02:00
Matthias Grob
a9f0981aaf mc_pos_control: fix adjusting the wrong setpoint
There are two local_position_setpoint in the position controller.
One describing the setpoint the task gives to the position controller
and a second one with the output of the position controller. I corrected
the wrong one during takeoff because the new takeoff thrust ramp runs after
the controller and not before.
2019-05-22 22:05:38 +02:00
Matthias Grob
ad6eb19f09 Add a Takeoff class to handle multicopter takeoff
In a deterministic way with clear states to go through.
2019-05-22 22:05:38 +02:00
Matthias Grob
da533a7b1d mc_pos_control: replace takeoff velocity ramp with thrust ramp
The velocity ramp had problems with:
- different vehicle tunings resulted in the start value of the resulting
thrust ramp staring either higher and lower than zero thrust.
lower -> delay of beginning
higher -> small jump at beginning
- when a task set position and velocity at the same time during takeoff
(which AutoSmoothVel does) it resulted in a velocity setpoint
jump at the end of the ramp because the additional velocity
setpoint correction from the position controller was not considered.

The thrust ramp should now be very deterministic:
- always start at zero
- always end at the curreant thrust setpoint output
of the complete position controller
2019-05-22 22:05:38 +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
Matthias Grob
7c7d980cf0 FlightTasks: fix takeoff trigger for offboard 2019-05-22 22:05:38 +02:00
Matthias Grob
e73218d665 mc_pos_control/FlightTasks: trigger takeoff based on task
The initial idea of the flight task architecture was that
a task can freely set it's setpoints and doesn't have to
worry about takeoff and landing. It would just takeoff
when it's landed and there's a setpoint to go up and
land when it puts a setpoint that pushes into the ground.
With the takeoff logic there are some significant interface
problems depending on the way a task is implemented:
From the setpoint is not high enough to trigger to
an unexpected takeoff because of some estimator
fluctuation affecting the setpoint. It's easiest to solve this
by allowing the task to determine when a takeoff is triggered.
If no condition is implemented by default a task is not
allowing a takeoff  and cannot be used to get the vehicle
off the ground.
2019-05-22 22:05:38 +02:00
Matthias Grob
9ba748e67e mc_att_control: fix having high thrust when disarmed
After boot the user is in manual mode and if he has an RC
but doesn't switch out the thrust gets set to the throttle stick
position. When he then starts a takeoff from tablet the thrust is still
high while arming and the land detector immediately sees a takeoff
skiping smooth takeoff from the position controller.
2019-05-22 22:05:38 +02:00
Matthias Grob
ae96e16c73 mc_pos_control: initialize takeoff altitude reference
according to @dagar's review comment.
2019-05-22 22:05:38 +02:00
Matthias Grob
8036efd7f2 mc_pos_control: refactor takeoff trigger conditions to be positive 2019-05-22 22:05:38 +02:00
Matthias Grob
5e23883376 mc_pos_control: fix smooth takeoff ramp
- start from a velocity setpoint pushing into the ground
to ramp from idle thrust up.
- start with a bit higher velocity setpoint threshold to make
sure the vehicle has a chance to really get off the ground.
- calculate ramp slope from initialization setpoint to the desired one
instead from zero to the desired. this ramps up quicker when you demand
a very small upwards velocity like the AutoLineSmoothVel and
ManualPositionSmoothVel tasks do at the beginning.
- don't stay in the takeoff ramp depending on the land detector, this
is unnecessary.
2019-05-22 22:05:38 +02:00
Matthias Grob
bc77302fc9 mc_pos_control: refactor smooth takeoff names
The comments and variable names were partly misleading.
I grouped all members, hopefully gave them more
understandable names and adjusted the comments.
2019-05-22 22:05:38 +02:00