bresch
81a80e0d56
Airmode - Minor rewording
2018-03-23 10:35:08 +01:00
bresch
7ef3ae8828
Multicopter mixer - Recompute safe roll_pitch_scale if not in air-mode
...
If not in air-mode the mixer is not able to apply positive boosting
and roll_pitch_scale is recomputed to apply symmetric - reduced - thrust.
This has the consequence to cut completely the outputs when the thrust is
set to zero.
2018-03-23 10:35:08 +01:00
Beat Küng
f21ab05f48
mixer_multirotor: fix comment thrust_gain -> thrust_scale
...
Added in 262d9c790b .
2018-03-23 10:35:08 +01:00
bresch
6976232a20
Airmode - Add airmode parameter for multicopter mixer
2018-03-23 10:35:08 +01:00
bresch
851c3657d1
Multicopter mixer - Use already computed value instead of recomputing it
2018-03-23 10:35:08 +01:00
bresch
803eb9ac32
Multicopter mixer - Simplify and correct mistakes of roll-pitch motor saturation handling
2018-03-23 10:35:08 +01:00
bresch
450e7c6774
Multicopter mixer - Remove arbitraty boost gain during saturation
2018-03-23 10:35:08 +01:00
bresch
096e2ec629
Multicopter mixer - Always unsaturate high-saturated motors when possible
2018-03-23 10:35:08 +01:00
bresch
df194b1de4
Multicopter mixer - Rewrite unnecessarily complicated conditions
2018-03-23 10:35:08 +01:00
bresch
5da2842dbc
Multicopter mixer - Always unsaturate low-saturated motors when possible
2018-03-23 10:35:08 +01:00
Coby
664001921e
quad_plus geometry fix typo in rear motor name ( #9008 )
2018-03-04 18:24:10 -05: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
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
Daniel Agar
2756c76613
mixer lib delete old multi_tables.py and cleanup cmake ( #8658 )
2018-01-11 15:56:15 -05:00
Julien Lecoeur
9439eaa5fa
Python import error: Recommend pip over apt-get
...
closes #8297
The package python-toml does not exist in older (<= 14.04) versions of ubuntu.
2017-11-26 14:07:08 -05:00
Julien Lecoeur
26d95ef674
Mixers: Include mixer_multirotor_normalized.generated.h everywhere
2017-11-15 09:56:10 +01:00
Julien Lecoeur
4be4ad86a0
Mixers: Add geometry quad_s250aq
2017-11-15 09:56:10 +01:00
Julien Lecoeur
3a1c5f8a94
Mixers: do not allow several mixers with same name or key
2017-11-15 09:56:10 +01:00
Julien Lecoeur
76447b0f4e
Mixers: Use geometry filename as mixer name
2017-11-15 09:56:10 +01:00
Julien Lecoeur
d43b33b1c4
Move src/lib/mixer/geoms to src/lib/mixer/geometries
2017-11-15 09:56:10 +01:00
Julien Lecoeur
b6911c2266
Mixers: Rename geom -> geometry(ies)
2017-11-15 09:56:10 +01:00
Julien Lecoeur
c95229faab
Mixers: add --verbose option to print matrices
2017-11-15 09:56:10 +01:00
Julien Lecoeur
142cd7ee75
Mixers: write to stdout if no output file is provided
2017-11-15 09:56:10 +01:00
Julien Lecoeur
679f33b406
Mixers: raise exception if no input geometry is provided
2017-11-15 09:56:10 +01:00
Julien Lecoeur
9e045e3b2a
Mixers: use os.path.join
2017-11-15 09:56:10 +01:00
Julien Lecoeur
89642a9203
Move src/module/systemlib/mixer to src/lib/mixer
2017-11-15 09:56:10 +01:00