mirror of
https://gitee.com/mirrors_PX4/PX4-Autopilot.git
synced 2026-10-28 00:43:34 +08:00
PWMSim: refactor to use math constrain
This commit is contained in:
committed by
Lorenz Meier
parent
1560364c04
commit
c22dbe130b
@@ -31,9 +31,11 @@
|
|||||||
*
|
*
|
||||||
****************************************************************************/
|
****************************************************************************/
|
||||||
|
|
||||||
#include <px4_time.h>
|
|
||||||
#include "PWMSim.hpp"
|
#include "PWMSim.hpp"
|
||||||
|
|
||||||
|
#include <px4_time.h>
|
||||||
|
#include <mathlib/mathlib.h>
|
||||||
|
|
||||||
#include <uORB/topics/multirotor_motor_limits.h>
|
#include <uORB/topics/multirotor_motor_limits.h>
|
||||||
|
|
||||||
PWMSim::PWMSim() :
|
PWMSim::PWMSim() :
|
||||||
@@ -254,14 +256,7 @@ PWMSim::run()
|
|||||||
_actuator_outputs.output[i] <= 1.0f) {
|
_actuator_outputs.output[i] <= 1.0f) {
|
||||||
/* scale for PWM output 1000 - 2000us */
|
/* scale for PWM output 1000 - 2000us */
|
||||||
_actuator_outputs.output[i] = 1500 + (500 * _actuator_outputs.output[i]);
|
_actuator_outputs.output[i] = 1500 + (500 * _actuator_outputs.output[i]);
|
||||||
|
_actuator_outputs.output[i] = math::constrain(_actuator_outputs.output[i], (float)_pwm_min[i], (float)_pwm_max[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];
|
|
||||||
}
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
/*
|
/*
|
||||||
|
|||||||
Reference in New Issue
Block a user