Automatic optimization of high order control loops - using State observer.
I developed a simple algorithm that optimizes closed loops in time domain by using the criteria:
Integral abs|e| dt > MIN (any other criteria could also be used)
The algorithm consists of a 3 dimensional grid for Kc, Ki and Kd that calculates all combinations of them and finds the lowest value (MIN), generally called brute force method.
Maybe someone can find a better solution and can show it.
What happens if the initial error changes? If have found the optimal gains exist only for the current conditions. The optimizer should find gains that keep the control output in saturation much of the time when responding to a step jump. I didn't see the control output going into saturation during a response to a step change. I think you must be using the target filter. You shouldn't use the target filter when optimizing PID gains.
To keep the control output from wanting to saturate all the time you can try minimuizing the control output too.
There are many minimization functions. SSE, IAE, ITAE.
There are better ways of findimg the minimum. They involve finding a gradient at a point and using that to go down hill. See Levenberg Marquardt or BFGS. Numerical Recipes in C has these routines.
First you must optimize PID gains WITHOUT the target filter and feed forwards. Tuning your 5 repeated poles without a feed forwards is not easy.
That's usually done by changing from manual to automatic operation.
v2 is desinged to get fully 'open' but not more. The red line covers partly the blue line. That's why you can't see it.
It's an all over evaluation that also optimizes. Compare to Page 7
formatting link
Yes, but it is in this case not necessary. Maybe in special cases.
Yes, but it will be more difficult. One has 3 parameters (PID) to optimize.
I don't tune it. I all calculated. If designed Ai=Bi=Ci then it's best. If differently designed then the computer will also do the work in the same manner. It's just a different solution.
F3(s) is chosen with slower performance. Otherwise it would exceed the ranges (1).
Optimisation is calculated automatically.
See Page 6
formatting link
Note: Be aware that all is very realistic because the process transfer function is based on real data, made from measured data points not physically derived. It would be hard work to derive a 5th order process tranfer function without few assumptions.
3 parameters is easy but what if you need more gains? Using a grid limits your gain resolution
Only after figure out the difference between a type 0 and type 1 plant. What you call positin should be velocity.
Ah, this points out my complaint about IAE, ITAE or SSE tuning. The optimal gains are only optimal for one set of conditions.
What do you do if you come across a real system that is faster or slower?
How can that be? The relationship beween the control and the velocity is not right.
For the past year you have confused positions with velocity. When the control signal goes to 0 the velocity will go to 0 not the position. In your examples the position goes back to 0 when the control output goes to 0. That isn't right
PolyTech Forum website is not affiliated with any of the manufacturers or service providers discussed here.
All logos and trade names are the property of their respective owners.