Matthias Grob
ba5f2254cd
mc_att_control: add reduced quaternion attitude control
...
to prioritize yaw compared to roll and pitch by combining
the shortest rotation to achieve a total thrust vector with
the full attitude respecting the desired yaw
not by scaling down the control output with the gains
2018-03-15 17:16:14 +01:00
Matthias Grob
9ff9692270
mc_att_control: switch to quaternion attitude control (no yaw reduction yet)
2018-03-15 17:16:14 +01:00
Daniel Agar
1abf90c6d4
EKF2 only publish wind_estimate if wind velocity is being estimated
...
- refactor body wind velocity calculation
2018-03-15 07:18:58 +01:00
Beat Küng
fca99cf775
param: refactor BlockParam classes
...
- make the selected parameter a template argument. This
enables type-checking at compile-time.
- move things to src/platforms.
This provides consistent includes with ModuleBase
- add ModuleParams base class (replaces Block & SuperBlock)
- drop the Block* prefix from the class names
2018-03-13 17:35:15 +01:00
Thomas Stastny
74730273c1
fw_att_control move angular rate limits to body angular rates ( #9023 )
...
* ecl: attitude_fw update
- move angular rate limits to body angular rates
- handle rattitude/acro vs attitude mode rate limits
2018-03-08 22:55:45 -05:00
Coby
664001921e
quad_plus geometry fix typo in rear motor name ( #9008 )
2018-03-04 18:24:10 -05:00
Andreas Antener
ab9ee3aa6c
conversion: added -45 deg pitch rotation
2018-02-28 10:08:58 +01:00
Andreas Antener
add20389f6
conversion: added rotation +45 degree in pitch
2018-02-28 10:08:58 +01:00
Paul Riseborough
11e3081efd
ecl: Fixes bug preventing use of GPS reported speed accuracy ( #8981 )
2018-02-28 15:32:01 +11:00
Roman
04a89f7e9b
mixer lib: added methods to fetch the active trim values
...
Signed-off-by: Roman <bapstroman@gmail.com >
2018-02-23 15:28:22 +01:00
Roman
29c60a1fd4
mixer_group: do not clamp offset to arbitrary value
...
- allow the user to apply an offset that covers the entire servo range
Signed-off-by: Roman <bapstroman@gmail.com >
2018-02-23 15:28:22 +01:00
Paul Riseborough
abb067c788
ecl: Use EKF version with external vision nav axis rotation bug fixes ( #8935 )
2018-02-22 22:02:50 +11:00
Daniel Agar
f5c1124812
move tailsitter_recovery lib to mc_att_control
2018-02-04 18:15:57 +01:00
Daniel Agar
b3b1161d53
mathlib filters include automatically
2018-02-04 18:15:57 +01:00
Daniel Agar
6f248bc7e9
move runway_takeoff lib to fw_pos_control_l1
2018-02-04 18:15:57 +01:00
Daniel Agar
6a4ef78111
move launchdetection lib to fw_pos_control_l1
2018-02-04 18:15:57 +01:00
Matthias Grob
11d480240a
mathlib Functions: removed inline, fixed style
2018-02-02 00:38:01 -05:00
Matthias Grob
8e68f5ed79
mathlib Functions: improve documentation and limit checking
2018-02-02 00:38:01 -05:00
Daniel Agar
2ff81393bc
move posix, nuttx, qurt components into platforms
2018-01-31 17:17:07 +01:00
Paul Riseborough
8a1b6d548f
ecl: Update to version that fixes height reset bug
2018-01-31 10:46:52 +01:00
ChristophTobler
d2e45d14fa
update ecl to include ev hgt fix
2018-01-30 12:32:30 +01:00
Paul Riseborough
6ef43e5b75
ecl: Use latest master
2018-01-29 22:30:34 +01:00
Simone Guscetti
47e5382e7e
libtunes: insert explicit fallthrough
2018-01-29 09:45:59 -05:00
Simone Guscetti
9cb95b64ca
libtunes: change variable name
...
This make the variable purpose more clear.
2018-01-29 09:45:59 -05:00
Martina
2ec5ea48a3
tunes: for custom tunes set silence from tune control message and set
...
silence to 0 when the end of the string is reached
2018-01-29 09:45:59 -05:00
Martina
d5b2ba276b
tunes: change tune update interval to 100000 us
2018-01-29 09:45:59 -05:00
Martina
d10372c6b5
tunes: change config_tone definition and add pointer to the beginning
...
of the tune to repeat it
2018-01-29 09:45:59 -05:00
Martina
1988141c6d
tunes: add pointer to the beginning of a tune to allow tune replay
2018-01-29 09:45:59 -05:00
Simone Guscetti
26d2e69ecf
libtunes: Add maximum update interval
2018-01-29 09:45:59 -05:00
Simone Guscetti
f63be6b055
libtunes: If default tune does not exist
...
return -EINVAL
2018-01-29 09:45:59 -05:00
Simone Guscetti
915f728145
libtunes: Separate the default tunes from tunes.cpp
2018-01-29 09:45:59 -05:00
Simone Guscetti
591f9a8a38
libtunes: Handle notification tunes as high priority
2018-01-29 09:45:59 -05:00
Simone Guscetti
3f123acd7e
libtunes: handle tune override
2018-01-29 09:45:59 -05:00
Simone Guscetti
6c8b16391e
libtunes: complete API doc, minor changes
2018-01-29 09:45:59 -05:00
Simone Guscetti
b84a97c6d5
libtunes: Changed to a set_control/string and a get_next_tune functions
...
Now it is possible to set a string and a control.
The get_next_tune function use the same return values as the erliaer
implemented parse_cmd and parse_string functions.
2018-01-29 09:45:59 -05:00
Simone Guscetti
5214642bc3
tunes lib: Minor changes
2018-01-29 09:45:59 -05:00
Simone Guscetti
e9ea7ab698
lib tunes: clean up
2018-01-29 09:45:59 -05:00
Simone Guscetti
79ae413982
lib tunes: Add string input method
2018-01-29 09:45:59 -05:00
Simone Guscetti
8ce57bedb7
libtunes: create a new library for tunes
...
cmake configs: Modify to include new library
2018-01-29 09:45:59 -05:00
Simone Guscetti
c8a1050323
libled: allow infinite flashing mode
2018-01-19 11:55:39 +01:00
Julien Lecoeur
b7d7d1209b
px_generate_mixers.py: scale mixer so that sum(z_thrust_scale)==n_rotors
2018-01-17 00:01:00 -05:00
Julien Lecoeur
262d9c790b
MultirotorMixer: Apply thrust gain independently from other axes
...
Align the way motor output is computed with the model used in the mixer generation script.
previous:
`out = (roll_gain*roll + pitch_gain*pitch + yaw_gain*yaw + thrust)*out_gain`
new:
`out = roll_gain*roll + pitch_gain*pitch + yaw_gain*yaw + thrust_gain*thrust`
which is the standard matrix*vector multiplication.
This commit has 0 effect on symmetric platforms (i.e. most) as thrust_gain==1 on these platforms.
On asymmetric platform --where some thrust_gain are lower than 1-- the previous formulation resulted in coupling between thrust and other axes.
fixes #8628
2018-01-17 00:01:00 -05:00
ChristophTobler
6d3dda2802
update DriverFramework to get ltc2946 fix ( #8693 )
2018-01-15 14:33:22 -05:00
ChristophTobler
872cba12d4
update ecl submodule
2018-01-15 11:11:56 +01:00
ChristophTobler
9ac70ff639
update DriverFramework submodule to include LTC2946 driver
2018-01-14 12:56:49 +01:00
Daniel Agar
2756c76613
mixer lib delete old multi_tables.py and cleanup cmake ( #8658 )
2018-01-11 15:56:15 -05:00
Daniel Agar
2cccbee0d5
runway_takeoff use BlockParamBool for RWTO_TKOFF
2018-01-09 09:11:39 +01:00
Daniel Agar
3d7afaafbd
launchdetection use BlockParamBool for LAUN_ALL_ON
2018-01-09 09:11:39 +01:00
Daniel Agar
a9bbbdce82
controllib add BlockParamBool (int32 wrapper)
2018-01-09 09:11:39 +01:00
Matthias Grob
be8adbfdf3
Cygwin: refactored & simplified some of the OS define logic
2018-01-05 14:47:33 -05:00