[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Paparazzi-devel] Energy Control Loops Configuration and Gains

From: Stephen Dwyer
Subject: Re: [Paparazzi-devel] Energy Control Loops Configuration and Gains
Date: Tue, 18 Dec 2012 21:35:32 -0700

Hello Christophe,

Your explanations are very helpful, and exactly what I suspected after reading through the code. Thank you for taking the time to describe it. I will work on documenting this over the holidays on the wiki and/or doxygen.

I was just wondering, would you happen to have any sample gains for the energy control from the TUDelft Mentor?

Stephen Dwyer

On Tue, Dec 18, 2012 at 4:14 PM, Christophe De Wagter <address@hidden> wrote:
Hi Stephen,

The energy control loop file still has many options as they were tested during the development. This way, using the same file, inflight you can change from a traditional controller, to a normal airspeed control, an airspeed with pitch_from_airspeed to total energy control during 1 flight.

If you say there are only 2 gains, you might be using the energy control files but not the control loops. If you have a cruise_throttle, throttle_increment and pitch_of_vz only then you use the most old traditional way.  

If on top of that you put a small value in the throttle_to_airspeed_P-gain (do not remember exact names by heart so it might slightly differ) then you have an automatic cruise-throttle.

For total energy control you need 4 gains, (probably) the lowest 4 gains. 

-P-total, I-total (with energy being a function of acceleration/glide-slope this means an energy-P-gain is is a vertical speed-P-gain and a airspeed D-gain, and the energy I-gain works like a (integrating the derivative) P-pgain on altitude and P-gain on airspeed 
-P-diff and I-diff

This automatically sets the control_pitch and cruise_throttle, but it is good practice to set them to reasonable values to start with.

I recommend you try it on the ground with the plane in your hand first. Put the plane in auto2, press launch (but hold in your hand), cruise with waypoint altitude 0m (ground) and airspeed_setpoint zero, and the 2 I-gains on zero. When you accelerate your plane backwards you must hear the propellor compensate (throught the energy-total-P-gain, and simulataneously when you accelerate forward the elevator should pitch-up (and then als you stop again because your arms are only that long, the elevator should move down). Then with the I-gain-total enabled, the throttle should start ever increasing/decreasing depending on if you are too low or to high. So if you move the waypoint to 10m the throttle should constantly increase since you stay on the ground until full power is reached. If your GCS puts the waypoint at -10m then the throttle should go down to idle. The last and most dangerous but powerful gain: I-diff, will integrate on your elevator. If you put the speed setpoint to 10m but are standing still on the ground (zero airspeed) then the pitch should start integrating nose down. Go easy on this gain. Before you take-off after this test make sure you reset everything (power off) to make sure no integrator is still giving full throtlle of -80 degrees of pitch. 

Hope this helps... a bit


On Tue, Dec 18, 2012 at 8:21 PM, Stephen Dwyer <address@hidden> wrote:
wing the energy-based control loops for fixed wing, and I had a few questions about the intended implementation. I notice that the example Mentor airframe for energy control is actually set up with no feedback loops for vertical climb control - in fact, there is only the P feedback for altitude, and then the throttle feedforward from the climb setpoint and the pitch feedforward from the climb setpoint, as all other gains are basically set to zero/undefined. Looking at the control loops, there are a number of similarities to the existing basic and airspeed control loops. There are also the considerable additions/improvements for the energy based control. Depending on which gains are defined a number of different behaviours can be obtained.

Currently, we are flying a Mentor with the same gains enabled as the conf/airframes/examples/MentorEnergy.xml file, with a few tweaks based on a different power/weight of our aircraft. This works, but the climb control isn't very good (since there is no feedback). The altitude control is quite acceptable for constant altitude and setpoint changes, but for, say, a constant glide slope, things are definitely sub-par. There are also oscillations, or if gains are reduced, time constant and steady state error increase.

Paparazzi-devel mailing list

reply via email to

[Prev in Thread] Current Thread [Next in Thread]