diff options
author | Lorenz Meier <lm@inf.ethz.ch> | 2013-01-07 22:23:41 +0100 |
---|---|---|
committer | Lorenz Meier <lm@inf.ethz.ch> | 2013-01-07 22:23:41 +0100 |
commit | fe5f9d46d5e303c3413b3f7cbc925b9cd44fd0f4 (patch) | |
tree | 26c6212364d47b000c0b1d4e3a3700cc76464c24 /apps/systemlib/mixer | |
parent | 451b38b39f776d14b81964c34cbc00592d45dd63 (diff) | |
parent | e24dd0f684eb118a5052919c555d3e06ce8c569b (diff) | |
download | px4-firmware-fe5f9d46d5e303c3413b3f7cbc925b9cd44fd0f4.tar.gz px4-firmware-fe5f9d46d5e303c3413b3f7cbc925b9cd44fd0f4.tar.bz2 px4-firmware-fe5f9d46d5e303c3413b3f7cbc925b9cd44fd0f4.zip |
Merge branch 'master' into fixedwing
Diffstat (limited to 'apps/systemlib/mixer')
-rw-r--r-- | apps/systemlib/mixer/mixer_multirotor.cpp | 78 | ||||
-rwxr-xr-x | apps/systemlib/mixer/multi_tables | 4 |
2 files changed, 42 insertions, 40 deletions
diff --git a/apps/systemlib/mixer/mixer_multirotor.cpp b/apps/systemlib/mixer/mixer_multirotor.cpp index cf9debe6c..f6e91b1bf 100644 --- a/apps/systemlib/mixer/mixer_multirotor.cpp +++ b/apps/systemlib/mixer/mixer_multirotor.cpp @@ -59,8 +59,10 @@ //#include <debug.h> //#define debug(fmt, args...) lib_lowprintf(fmt "\n", ##args) -#define CW (-1.0f) -#define CCW (1.0f) +/* + * Clockwise: 1 + * Counter-clockwise: -1 + */ namespace { @@ -69,52 +71,52 @@ namespace * These tables automatically generated by multi_tables - do not edit. */ const MultirotorMixer::Rotor _config_quad_x[] = { - { -0.707107, 0.707107, -1.00 }, - { 0.707107, -0.707107, -1.00 }, - { 0.707107, 0.707107, 1.00 }, - { -0.707107, -0.707107, 1.00 }, + { -0.707107, 0.707107, 1.00 }, + { 0.707107, -0.707107, 1.00 }, + { 0.707107, 0.707107, -1.00 }, + { -0.707107, -0.707107, -1.00 }, }; const MultirotorMixer::Rotor _config_quad_plus[] = { - { -1.000000, 0.000000, -1.00 }, - { 1.000000, 0.000000, -1.00 }, - { 0.000000, 1.000000, 1.00 }, - { -0.000000, -1.000000, 1.00 }, + { -1.000000, 0.000000, 1.00 }, + { 1.000000, 0.000000, 1.00 }, + { 0.000000, 1.000000, -1.00 }, + { -0.000000, -1.000000, -1.00 }, }; const MultirotorMixer::Rotor _config_hex_x[] = { - { -1.000000, 0.000000, 1.00 }, - { 1.000000, 0.000000, -1.00 }, - { 0.500000, 0.866025, 1.00 }, - { -0.500000, -0.866025, -1.00 }, - { -0.500000, 0.866025, -1.00 }, - { 0.500000, -0.866025, 1.00 }, + { -1.000000, 0.000000, -1.00 }, + { 1.000000, 0.000000, 1.00 }, + { 0.500000, 0.866025, -1.00 }, + { -0.500000, -0.866025, 1.00 }, + { -0.500000, 0.866025, 1.00 }, + { 0.500000, -0.866025, -1.00 }, }; const MultirotorMixer::Rotor _config_hex_plus[] = { - { 0.000000, 1.000000, 1.00 }, - { -0.000000, -1.000000, -1.00 }, - { 0.866025, -0.500000, 1.00 }, - { -0.866025, 0.500000, -1.00 }, - { 0.866025, 0.500000, -1.00 }, - { -0.866025, -0.500000, 1.00 }, + { 0.000000, 1.000000, -1.00 }, + { -0.000000, -1.000000, 1.00 }, + { 0.866025, -0.500000, -1.00 }, + { -0.866025, 0.500000, 1.00 }, + { 0.866025, 0.500000, 1.00 }, + { -0.866025, -0.500000, -1.00 }, }; const MultirotorMixer::Rotor _config_octa_x[] = { - { -0.382683, 0.923880, 1.00 }, - { 0.382683, -0.923880, 1.00 }, - { -0.923880, 0.382683, -1.00 }, - { -0.382683, -0.923880, -1.00 }, - { 0.382683, 0.923880, -1.00 }, - { 0.923880, -0.382683, -1.00 }, - { 0.923880, 0.382683, 1.00 }, - { -0.923880, -0.382683, 1.00 }, + { -0.382683, 0.923880, -1.00 }, + { 0.382683, -0.923880, -1.00 }, + { -0.923880, 0.382683, 1.00 }, + { -0.382683, -0.923880, 1.00 }, + { 0.382683, 0.923880, 1.00 }, + { 0.923880, -0.382683, 1.00 }, + { 0.923880, 0.382683, -1.00 }, + { -0.923880, -0.382683, -1.00 }, }; const MultirotorMixer::Rotor _config_octa_plus[] = { - { 0.000000, 1.000000, 1.00 }, - { -0.000000, -1.000000, 1.00 }, - { -0.707107, 0.707107, -1.00 }, - { -0.707107, -0.707107, -1.00 }, - { 0.707107, 0.707107, -1.00 }, - { 0.707107, -0.707107, -1.00 }, - { 1.000000, 0.000000, 1.00 }, - { -1.000000, 0.000000, 1.00 }, + { 0.000000, 1.000000, -1.00 }, + { -0.000000, -1.000000, -1.00 }, + { -0.707107, 0.707107, 1.00 }, + { -0.707107, -0.707107, 1.00 }, + { 0.707107, 0.707107, 1.00 }, + { 0.707107, -0.707107, 1.00 }, + { 1.000000, 0.000000, -1.00 }, + { -1.000000, 0.000000, -1.00 }, }; const MultirotorMixer::Rotor *_config_index[MultirotorMixer::Geometry::MAX_GEOMETRY] = { &_config_quad_x[0], diff --git a/apps/systemlib/mixer/multi_tables b/apps/systemlib/mixer/multi_tables index 2c4a5abed..f17ae30ca 100755 --- a/apps/systemlib/mixer/multi_tables +++ b/apps/systemlib/mixer/multi_tables @@ -70,9 +70,9 @@ foreach table $tables { upvar #0 $table angles foreach {angle dir} $angles { if {$dir == "CW"} { - set dd -1.0 - } else { set dd 1.0 + } else { + set dd -1.0 } factors $angle $dd } |