Move controlManual down

This commit is contained in:
Oleg Kalachev 2023-12-13 08:06:15 +03:00
parent f37015a97f
commit 24b62e5145

View File

@ -154,6 +154,27 @@ void controlRate()
motors[3] = constrain(motors[3], 0, 1); motors[3] = constrain(motors[3], 0, 1);
} }
// passthrough mode
void controlManual()
{
if (controls[RC_CHANNEL_THROTTLE] < 0.1) {
memset(motors, 0, sizeof(motors));
return;
}
torqueTarget = ratesTarget * 0.01;
motors[MOTOR_FRONT_LEFT] = thrustTarget + torqueTarget.y + torqueTarget.x - torqueTarget.z;
motors[MOTOR_FRONT_RIGHT] = thrustTarget + torqueTarget.y - torqueTarget.x + torqueTarget.z;
motors[MOTOR_REAR_LEFT] = thrustTarget - torqueTarget.y + torqueTarget.x + torqueTarget.z;
motors[MOTOR_REAR_RIGHT] = thrustTarget - torqueTarget.y - torqueTarget.x - torqueTarget.z;
motors[0] = constrain(motors[0], 0, 1);
motors[1] = constrain(motors[1], 0, 1);
motors[2] = constrain(motors[2], 0, 1);
motors[3] = constrain(motors[3], 0, 1);
}
bool motorsActive() bool motorsActive()
{ {
return motors[0] > 0 || motors[1] > 0 || motors[2] > 0 || motors[3] > 0; return motors[0] > 0 || motors[1] > 0 || motors[2] > 0 || motors[3] > 0;