ActuatorEffectiveness: add function to delectively stop motors with zero thrust

This commit is contained in:
Matthias Grob
2023-07-10 19:00:52 +02:00
parent 9b092d6d35
commit 4fc3f07cb1
6 changed files with 33 additions and 12 deletions
@@ -77,18 +77,14 @@ public:
void setFlightPhase(const FlightPhase &flight_phase) override;
uint32_t getStoppedMotors() const override { return _stopped_motors; }
private:
ActuatorEffectivenessRotors _rotors;
ActuatorEffectivenessControlSurfaces _control_surfaces;
uint32_t _mc_motors_mask{}; ///< mc motors (stopped during forward flight)
uint32_t _stopped_motors{}; ///< currently stopped motors
int _first_control_surface_idx{0}; ///< applies to matrix 1
uORB::Subscription _flaps_setpoint_sub{ORB_ID(flaps_setpoint)};
uORB::Subscription _spoilers_setpoint_sub{ORB_ID(spoilers_setpoint)};
};