Beat Küng
cfad556a16
mixer_multirotor: use reduce_only instead of -1000 for yaw thrust reduction
...
This is more accurate, because if we use -1000 as lower bound, a very large
yaw command can reduce thrust more than needed.
The difference can be seen in the following example
(with roll/pitch airmode):
p_dot_sp = -1.0 # roll acceleration
q_dot_sp = 0.9 # pitch acceleration
r_dot_sp = -0.9 # yaw acceleration
2018-12-13 09:50:07 +01:00
Beat Küng
418df2516d
mixer multirotor: add to CI
2018-12-13 09:50:07 +01:00
Beat Küng
e8e3b00a10
refactor mixer: rename delta_outputs to desaturation_vector
2018-12-13 09:50:07 +01:00
Beat Küng
3eefc93e5d
mixer_multirotor.py: avoid scientific notation for vector printf
...
makes it easier to compare.
2018-12-13 09:50:07 +01:00
Beat Küng
cf66656258
mixer multirotor: add unit-tests
...
To run:
cd src/lib/mixer
make tests
This will validate the C++ implementation by taking the python
implementation as ground-truth. It runs through various actuator control
command values for all airmode variations and several mixer types.
The python script also allows to prototype new mixer algorithms.
It is not integrated into the existing build system, because it's easier
to use that way, with less dependencies, and faster testing workflow.
It could however be a bit more integrated.
Reference: https://github.com/Auterion/Flight_Control_Prototyping_Scripts/tree/master/control_allocation
2018-12-13 09:50:07 +01:00
Beat Küng
c659d2bcc2
mixer: minor refactoring to reduce header include dependencies
...
- avoid including <px4_defines.h> from the math headers
- avoid driver include <drivers/drv_mixer.h> from the mixer
2018-12-13 09:50:07 +01:00
Beat Küng
8bcf54688a
mixer: complete refactoring & add airmode for yaw
...
Provides a more generic desaturation algorithm, making it easier to
handle the different mixer strategies.
python reference implementation:
https://github.com/Auterion/Flight_Control_Prototyping_Scripts/tree/master/control_allocation
The behavior for non-airmode and roll/pitch airmode should be the
same as before.
CPU load is slightly higher for the non-airmode case (+0.5%), for airmode
it is the same.
2018-12-13 09:50:07 +01:00
Beat Küng
19ccab28bb
mixer: use an enum for airmode
2018-12-13 09:50:07 +01:00
Beat Küng
9406fa5246
refactor mixer.h: use override keyword, fix set_airmode argument type (uint32_t -> int32_t)
2018-12-13 09:50:07 +01:00
bresch
7cc00f41d2
AirModeYaw - Change airmode type from bool to int
2018-12-13 09:50:07 +01:00
Kārlis Seņko
c1d50d35d3
Move common shmem parameter declarations to shmem.h.
2018-12-11 09:21:15 -05:00
Kārlis Seņko
859b242cb8
Fix some dynamic linking errors.
...
_Stof, bsearch, param_find_changed
2018-12-11 09:21:15 -05:00
Simone Guscetti
2c06cb71c8
FlightTask: use convetion for definition of the landing gear default value
2018-12-10 16:17:23 +01:00
Simone Guscetti
9ee3d79a96
FlightTask Manual: Gear react only on switch changes and not states
2018-12-10 16:17:23 +01:00
Simone Guscetti
f4fc0cd291
FlightTAsk AutoMapper: Adapt to new message
2018-12-10 16:17:23 +01:00
Simone Guscetti
be7416c823
FlightTask Auto: Adapt to new message and rename variable
2018-12-10 16:17:23 +01:00
Simone Guscetti
1412e0494c
FlightTask AutoMapper: Use deploy gear information
2018-12-10 16:17:23 +01:00
Simone Guscetti
66f85ff9ae
FlightTask Auto: Save deploy gear information
2018-12-10 16:17:23 +01:00
Simone Guscetti
aaddb845c4
FlightTask: Add initialisation of the landing gear
2018-12-10 16:17:23 +01:00
Simone Guscetti
de185726b3
vehicle constraints: remove landing gear
...
- landing_gear: refactor state name
- Add the keep state to the landing gear message
- Adapt FlightTaskManual, FlightTaskAutoMapper, mc_pos_control,
to review message definition
2018-12-10 16:17:23 +01:00
Simone Guscetti
6dbed6636d
FlightTasks: Add interface for landing gear
2018-12-10 16:17:23 +01:00
Simone Guscetti
bf9a18a200
FlightTask: Add interface for landing gear
2018-12-10 16:17:23 +01:00
Daniel Agar
d42fe1826a
parameters also include all module configs when scoping disabled ( #10992 )
...
* fixes parameters on Snapdragon
2018-12-06 14:21:06 -05:00
Daniel Agar
766c33799d
move all navio2 drivers to emlid navio2 board directory
2018-12-04 01:06:54 -05:00
Matthias Grob
94d4f0391a
FlightTaskAuto: fix newline at end of file
2018-11-30 09:30:00 -05:00
Dennis Mannhart
55947d2782
exponentialFromLimits make small number const
2018-11-30 09:30:00 -05:00
Dennis Mannhart
be4900f61d
FlightTaskAutoMapper2: remove speed_at_target
2018-11-30 09:30:00 -05:00
Dennis Mannhart
b3cde5ac44
FlightTaskAutoLine: replace NAV_ACC_RAD with _target_acceptance_radius
2018-11-30 09:30:00 -05:00
Dennis Mannhart
6110ddc8b1
math Functions constrain X_in of exponentialFromLimits function
2018-11-30 09:30:00 -05:00
Dennis Mannhart
c97b2a3071
FlightTaskAuto: move method getVelocityFromAngle to FlightTaskAutoLine
2018-11-30 09:30:00 -05:00
Dennis Mannhart
23afb939f0
math Functions: exponential function with constraints
2018-11-30 09:30:00 -05:00
Dennis Mannhart
80193cd227
math Functions: replace float with T
2018-11-30 09:30:00 -05:00
Dennis Mannhart
370371767f
FlightTaskAutoLine: ensure that desired speed along track does not exceed maximum speed at threshold to target
2018-11-29 12:32:56 +01:00
Daniel Agar
c3448c19c4
make vcdevtest a generic cdev test
2018-11-26 14:40:14 -08:00
Daniel Agar
3e0a3559a9
cmake use standard mechanisms for settings flags
2018-11-26 14:40:14 -08:00
Daniel Agar
ec4c9da253
remove BOARD_NAME from board_config.h and set automatically
2018-11-26 14:40:14 -08:00
Daniel Agar
abb3817d31
boards new split VENDOR_MODEL naming convention
2018-11-26 14:40:14 -08:00
Daniel Agar
f692ad04d0
boards organization
2018-11-26 14:40:14 -08:00
Daniel Agar
023e267e9b
uORB replace ORBMap with linked list
2018-11-23 08:15:48 +01:00
Daniel Agar
f1bf7172e7
make vdev file flags and priv consistent with nuttx
2018-11-23 08:15:48 +01:00
PX4 Build Bot
7d54913f80
Update submodule matrix to latest Wed Nov 21 00:38:27 UTC 2018
...
- matrix in PX4/Firmware (4005de7b9600db8a310d52f9bf7a47a0019868d8): https://github.com/PX4/Matrix/commit/0d3bff5e006cfaa358b51e3a6d11984e3782a90e
- matrix current upstream: https://github.com/PX4/Matrix/commit/9c0acfba36a928b7b002eea3a9dca54a5a0c1250
- Changes: https://github.com/PX4/Matrix/compare/0d3bff5e006cfaa358b51e3a6d11984e3782a90e...9c0acfba36a928b7b002eea3a9dca54a5a0c1250
9c0acfb 2018-11-20 Matthias Grob - Matrix: remove unsafe copyToRaw method
2018-11-20 20:35:15 -05:00
Beat Küng
1e17a86a39
collisionprevention: fix typo in param description & minor code style
2018-11-20 14:14:13 +01:00
baumanta
053494c535
use only one parameter and enable parameter change in flight. clean up code
2018-11-20 14:11:33 +01:00
baumanta
efa7e0ba77
clean up
2018-11-20 14:11:33 +01:00
baumanta
f5369db245
Put parameters inside library. Get rid of unnecessary activation logic
2018-11-20 14:11:33 +01:00
baumanta
dd45fa6541
change feature name from CollisionAvoidance to CollisionPrevention
2018-11-20 14:11:33 +01:00
baumanta
f611eddadd
unadvertise publishers in the destructor
2018-11-20 14:11:33 +01:00
Matthias Grob
81ec6c5b1e
ColisionAvoidance: move instantiation to FlightTask
2018-11-20 14:11:33 +01:00
Matthias Grob
7e276bc163
CollisionAvoidance: move activation logic to library
2018-11-20 14:11:33 +01:00
baumanta
27dc60a419
Improve comments
2018-11-20 14:11:33 +01:00