mirror of
https://github.com/ArduPilot/ardupilot
synced 2025-03-03 12:14:10 -04:00
AC_AttitudeControl: fixed external tail gyro with no flybar
this sets up the tail pass-through for acro mode
This commit is contained in:
parent
06880e8b04
commit
d8ee9feaac
@ -136,7 +136,7 @@ public:
|
|||||||
void rate_ef_roll_pitch_yaw(float roll_rate_ef, float pitch_rate_ef, float yaw_rate_ef);
|
void rate_ef_roll_pitch_yaw(float roll_rate_ef, float pitch_rate_ef, float yaw_rate_ef);
|
||||||
|
|
||||||
// rate_bf_roll_pitch_yaw - attempts to maintain a roll, pitch and yaw rate (all body frame)
|
// rate_bf_roll_pitch_yaw - attempts to maintain a roll, pitch and yaw rate (all body frame)
|
||||||
void rate_bf_roll_pitch_yaw(float roll_rate_bf, float pitch_rate_bf, float yaw_rate_bf);
|
virtual void rate_bf_roll_pitch_yaw(float roll_rate_bf, float pitch_rate_bf, float yaw_rate_bf);
|
||||||
|
|
||||||
//
|
//
|
||||||
// rate_controller_run - run lowest level body-frame rate controller and send outputs to the motors
|
// rate_controller_run - run lowest level body-frame rate controller and send outputs to the motors
|
||||||
|
@ -86,6 +86,14 @@ void AC_AttitudeControl_Heli::passthrough_bf_roll_pitch_rate_yaw(float roll_pass
|
|||||||
_rate_bf_target.z += _rate_bf_desired.z;
|
_rate_bf_target.z += _rate_bf_desired.z;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// subclass non-passthrough too, for external gyro, no flybar
|
||||||
|
void AC_AttitudeControl_Heli::rate_bf_roll_pitch_yaw(float roll_rate_bf, float pitch_rate_bf, float yaw_rate_bf)
|
||||||
|
{
|
||||||
|
_passthrough_yaw = yaw_rate_bf;
|
||||||
|
|
||||||
|
AC_AttitudeControl::rate_bf_roll_pitch_yaw(roll_rate_bf, pitch_rate_bf, yaw_rate_bf);
|
||||||
|
}
|
||||||
|
|
||||||
//
|
//
|
||||||
// rate controller (body-frame) methods
|
// rate controller (body-frame) methods
|
||||||
//
|
//
|
||||||
|
@ -49,6 +49,9 @@ public:
|
|||||||
// passthrough_bf_roll_pitch_rate_yaw - roll and pitch are passed through directly, body-frame rate target for yaw
|
// passthrough_bf_roll_pitch_rate_yaw - roll and pitch are passed through directly, body-frame rate target for yaw
|
||||||
void passthrough_bf_roll_pitch_rate_yaw(float roll_passthrough, float pitch_passthrough, float yaw_rate_bf);
|
void passthrough_bf_roll_pitch_rate_yaw(float roll_passthrough, float pitch_passthrough, float yaw_rate_bf);
|
||||||
|
|
||||||
|
// subclass non-passthrough too, for external gyro, no flybar
|
||||||
|
void rate_bf_roll_pitch_yaw(float roll_rate_bf, float pitch_rate_bf, float yaw_rate_bf) override;
|
||||||
|
|
||||||
// rate_controller_run - run lowest level body-frame rate controller and send outputs to the motors
|
// rate_controller_run - run lowest level body-frame rate controller and send outputs to the motors
|
||||||
// should be called at 100hz or more
|
// should be called at 100hz or more
|
||||||
virtual void rate_controller_run();
|
virtual void rate_controller_run();
|
||||||
|
Loading…
Reference in New Issue
Block a user