Roy Vegard Ovesen wrote:
On Thursday 29 September 2005 13:51, Hans-Georg Wunder wrote:
Time, reference,input,output
09:10:00,0,0,0
09:10:01,0.6,0,-0.4999999999999999 Jump into saturation. Thats OK.
Only a P-Part, no I-Part
09:10:02,0.6,0,-0.4999999999999999
snip!
09:10:13,0.6,0,-0.4999999999999999
09:10:15,0,0,0.0999999999999999 Here the output value should
return to zero, because there is no I-Part
Maybe it should?!
In this example, the output flips from the min saturation
to max-saturation. In a two phase controller (climb - altitude),
it impossible to control the aircraft.
Are you saying that it's not possible to make cascade configurations? We've
had cascade configurations since day one!
The problem is, that the change of input is store in ep_n.
Only the changes are given to the output. But in saturation
the change is not given to the output because of the windup logic
The controller gets out of sync
Same test with delta_u_n =u_max - u_n_1 and ep_n = (ep_n * u_max
)/(delta_u_n+ u_n_1 );
(My solution. Meanwhile I think it is not necessary to change the
edf_n-value, because the windup
logic is for the integrator part, but I am not completly convinced.
snip!
This should work in any situation.
Of course I can not deny the fact that your altering of ep_n does return the
output closer to zero in one time step for the open loop case, but what about
the closed loop case? Open loop PID controllers are really useless. Does this
altering of ep_n improve the performance when used in closed loop
controllers?
A simple closed loop consists of a controller and a plant and a
feedback. It is one common way to describe the controller with the
answer of step a function in an open loop configuration.
I think that some of the "problems" that your tests expose can be traced back
to the fact that you use an open loop configuration.
I suggest that you do some tests with closed loop controllers to see if there
is any performance gain. I also suggest that you fiddle around with the beta
value, try setting it to zero.
PS!
I'm a bit disappointed by the BESTune application. I seems that the demo
version is able to recognize the original input data, and when you try to
change them it barks that it don't want to use anything but the _original_
input data. It does display the custom input data, but it does not seem to
calculate useable values for Kp, Ti and Td.
_______________________________________________
Flightgear-devel mailing list
[email protected]
http://mail.flightgear.org/mailman/listinfo/flightgear-devel
2f585eeea02e2c79d7b1d8c4963bae2d