paparazzi-devel
[Top][All Lists]

## Re: [Paparazzi-devel] Proposed update in the fixedwing pitch control loo

 From: Hector Garcia de Marina Subject: Re: [Paparazzi-devel] Proposed update in the fixedwing pitch control loop Date: Sat, 17 Sep 2016 08:36:47 +0200

ah btw,

I have found this change very appropriated too! it is better to employ an analytical _expression_ whenever is possible than a numerical one.

On Sat, Sep 17, 2016 at 8:33 AM, Hector Garcia de Marina wrote:
Hi Michal,

float d_err = h_ctl_ref.pitch_rate - stateGetBodyRates_f()->q;

should not be (pseudocode) the following?

float d_err = h_ctl_ref.pitch_rate - (q * cos(roll) - r * sin(roll) );

Indeed, the first _expression_ is a particular case of the second when the vehicle is flying with roll = 0, e.g. "following a straight line". However, it is also
normal to fly following circles or other cases where the average of the steady-state roll is not zero.

What do you think?

On Sat, Sep 17, 2016 at 3:09 AM, Michal Podhradsky wrote:
Dear paparazzi users,

there is a proposed update in the way the fixedwing pitch control loop handles the derivative term. Currently a pseudo-derivative is used (see here) - the pitch rate error is calculated as a difference in the previous and current pitch error.

The proposed change follows a solution already present in the adaptive stabilization (here).
The difference is that now the pitch rate error is calculated using a pitch rate (measured from the gyro) and a rate setpoint (typically zero).

The benefit of this change is that it unifies the control loops, within paparazzi and also with standard control theory notation.

The drawback is that the D gain currently used would have to be updated using this formula (see here for details): D_new = D_old * P_old (the old D gain wouldn't work).

Since this is a change that affects multiple fixedwing airframes I would like to know your opinion first - would you be strongly opposed to the change or are you OK with updating the gains (and possibly retuning the aiframe) if it means unified and standardized control loops?

Michal

_______________________________________________
Paparazzi-devel mailing list
https://lists.nongnu.org/mailman/listinfo/paparazzi-devel

--

--