Skip to content

Commit

Permalink
Plane: ATT.DesPitch now reports actual target, not nav output
Browse files Browse the repository at this point in the history
  • Loading branch information
Georacer committed Jan 2, 2025
1 parent e1fd90b commit 72a3e2e
Show file tree
Hide file tree
Showing 3 changed files with 8 additions and 5 deletions.
6 changes: 3 additions & 3 deletions ArduPlane/Attitude.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -209,7 +209,7 @@ float Plane::stabilize_pitch_get_pitch_out()
const bool quadplane_in_frwd_transition = false;
#endif

int32_t demanded_pitch = nav_pitch_cd + int32_t(g.pitch_trim * 100.0) + SRV_Channels::get_output_scaled(SRV_Channel::k_throttle) * g.kff_throttle_to_pitch;
demanded_pitch_cd = nav_pitch_cd + int32_t(g.pitch_trim * 100.0) + SRV_Channels::get_output_scaled(SRV_Channel::k_throttle) * g.kff_throttle_to_pitch;
bool disable_integrator = false;
if (control_mode == &mode_stabilize && channel_pitch->get_control_in() != 0) {
disable_integrator = true;
Expand All @@ -224,10 +224,10 @@ float Plane::stabilize_pitch_get_pitch_out()
!control_mode->does_auto_throttle() &&
flare_mode == FlareMode::ENABLED_PITCH_TARGET &&
throttle_at_zero()) {
demanded_pitch = landing.get_pitch_cd();
demanded_pitch_cd = landing.get_pitch_cd();
}

return pitchController.get_servo_out(demanded_pitch - ahrs.pitch_sensor, speed_scaler, disable_integrator,
return pitchController.get_servo_out(demanded_pitch_cd - ahrs.pitch_sensor, speed_scaler, disable_integrator,
ground_mode && !(plane.flight_option_enabled(FlightOptions::DISABLE_GROUND_PID_SUPPRESSION)));
}

Expand Down
2 changes: 1 addition & 1 deletion ArduPlane/Log.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ void Plane::Log_Write_Attitude(void)
{
Vector3f targets { // Package up the targets into a vector for commonality with Copter usage of Log_Wrote_Attitude
nav_roll_cd * 0.01f,
nav_pitch_cd * 0.01f,
demanded_pitch_cd * 0.01f,
0 //Plane does not have the concept of navyaw. This is a placeholder.
};

Expand Down
5 changes: 4 additions & 1 deletion ArduPlane/Plane.h
Original file line number Diff line number Diff line change
Expand Up @@ -668,9 +668,12 @@ class Plane : public AP_Vehicle {
// The instantaneous desired bank angle. Hundredths of a degree
int32_t nav_roll_cd;

// The instantaneous desired pitch angle. Hundredths of a degree
// The instantaneous navigator-commanded pitch angle. Hundredths of a degree
int32_t nav_pitch_cd;

// The instantaneous desired pitch angle. Hundredths of a degree.
int32_t demanded_pitch_cd;

// the aerodynamic load factor. This is calculated from the demanded
// roll before the roll is clipped, using 1/sqrt(cos(nav_roll))
float aerodynamic_load_factor = 1.0f;
Expand Down

0 comments on commit 72a3e2e

Please sign in to comment.