[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Paparazzi-devel] Self-tuning
From: |
marcus.wolschon |
Subject: |
[Paparazzi-devel] Self-tuning |
Date: |
Wed, 21 Jan 2009 15:41:24 +0100 |
User-agent: |
RoundCube Webmail/0.1b |
Hello...
did anyone ever atempt to code some auto-tuning
for single constants?
Motivation:
When we fly a plane by remote,
we have a rough understanding of
how it should react to our controls.
We observe the plane, change controls
and learn how far we have to push
the stick by observing the plane's
behavior. The more we adjust the
linear relationship between wanted
reaction and real reaction the smoother
we can fly it.
Such a behavior in an autopilot would
enable a wider range of users to use it
because they don't have to fine-tune
their airframe-config but only give
some simple relationships between
observed values and servos and some
limits to obey.
I am thinking about something like:
* difference between real and wanted pitch is +N
* rudder = PITCH_CONST * N
wait
* difference between real and wanted pitch is +n
* EFFECT = N - n;
* NEW_PITCH = PITCH_CONST * EFFECT
* PITCH_CONST = LEARN_COEFF * CONST + (1 - LEARN_COEFF) * NEW_PITCH
Does it actually make sense?
(Maybe this should not work on the observed
angle but it's first derivate. The wanted
change of pitch in a given time.)
Is such a thing possible?
It need not actually change the PITCH_CONST
but e.g. downlink the calculated NEW_PITCH -values
and log them in the GCS to manually optimize
the values in the airframe-file later.
(Yes, I'm trying to start a discussion about how
to improve here. This is not an actual and fully
developed idea to implement.)
Marcus
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Paparazzi-devel] Self-tuning,
marcus.wolschon <=