PWMSim: refactor to use math constrain

This commit is contained in:
Matthias Grob 2018-12-28 20:45:23 +01:00 committed by Lorenz Meier
parent 1560364c04
commit c22dbe130b

View File

@ -31,9 +31,11 @@
*
****************************************************************************/
#include <px4_time.h>
#include "PWMSim.hpp"
#include <px4_time.h>
#include <mathlib/mathlib.h>
#include <uORB/topics/multirotor_motor_limits.h>
PWMSim::PWMSim() :
@ -254,14 +256,7 @@ PWMSim::run()
_actuator_outputs.output[i] <= 1.0f) {
/* scale for PWM output 1000 - 2000us */
_actuator_outputs.output[i] = 1500 + (500 * _actuator_outputs.output[i]);
if (_actuator_outputs.output[i] > _pwm_max[i]) {
_actuator_outputs.output[i] = _pwm_max[i];
}
if (_actuator_outputs.output[i] < _pwm_min[i]) {
_actuator_outputs.output[i] = _pwm_min[i];
}
_actuator_outputs.output[i] = math::constrain(_actuator_outputs.output[i], (float)_pwm_min[i], (float)_pwm_max[i]);
} else {
/*