aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLorenz Meier <lm@inf.ethz.ch>2014-05-23 11:04:40 -0700
committerLorenz Meier <lm@inf.ethz.ch>2014-05-23 11:04:40 -0700
commitdc3b4966555db1d97a1afe27916ec718336c3357 (patch)
tree82188d8ce01257bfd28217b0a5a1bd8cbe255e67
parent69421be983c7dcd87d00df3022f8f319b0bb7365 (diff)
parent635a7533b487389bed27e429fb6baf936f7bb3b8 (diff)
downloadpx4-firmware-dc3b4966555db1d97a1afe27916ec718336c3357.tar.gz
px4-firmware-dc3b4966555db1d97a1afe27916ec718336c3357.tar.bz2
px4-firmware-dc3b4966555db1d97a1afe27916ec718336c3357.zip
Merge pull request #997 from PX4/mc_mix_safe_limit
mc mixer: additional safe limiting of mixed out
-rw-r--r--src/modules/systemlib/mixer/mixer_multirotor.cpp4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/modules/systemlib/mixer/mixer_multirotor.cpp b/src/modules/systemlib/mixer/mixer_multirotor.cpp
index 4ad21d818..092c0e2b0 100644
--- a/src/modules/systemlib/mixer/mixer_multirotor.cpp
+++ b/src/modules/systemlib/mixer/mixer_multirotor.cpp
@@ -351,9 +351,9 @@ MultirotorMixer::mix(float *outputs, unsigned space)
scale_out = 1.0f;
}
- /* scale outputs to range _idle_speed..1 */
+ /* scale outputs to range _idle_speed..1, and do final limiting */
for (unsigned i = 0; i < _rotor_count; i++) {
- outputs[i] = _idle_speed + (outputs[i] * (1.0f - _idle_speed) * scale_out);
+ outputs[i] = constrain(_idle_speed + (outputs[i] * (1.0f - _idle_speed) * scale_out), _idle_speed, 1.0f);
}
return _rotor_count;