diff --git a/main.lua b/main.lua index 97df817..46e44f6 100644 --- a/main.lua +++ b/main.lua @@ -888,7 +888,7 @@ PIDs = { ForeAftPID = CreatePID(0.1, 0.01, 0.05), -- rate PIDs - VerticalRatePID = CreatePID(0.1, 0.01, 0.05), + VerticalRatePID = CreatePID(1.2, 0.01, 0.05), PortStarRatePID = CreatePID(0.1, 0.01, 0.05), ForeAftRatePID = CreatePID(0.1, 0.01, 0.05) } @@ -905,7 +905,8 @@ function UpdateGlobalThrust() return end - local throttleOutput = PIDs.AltitudePID:update(Config.Autopilot.AutopilotDesiredAltitude or 0, SensorData.Altitude.Altitude or 0, dt) + local AltitudeRateOutput = PIDs.VerticalRatePID:update(Config.Autopilot.AutopilotDesiredAltitude, SensorData.Altitude.Altitude, dt) + local throttleOutput = PIDs.AltitudePID:update(AltitudeRateOutput, SensorData.Altitude.VerticalSpeed, dt) local pitchOutput = PIDs.PitchAttitudePID:update(0, SensorData.Gimbal.Angles.xAngle, dt) local pitchRateOutput = PIDs.PitchRatePID:update(pitchOutput, SensorData.Gimbal.AngularRates.wx or 0, dt)