Robust Control Problem -> bug (Matlab Robust Control TB) or understanding problem?

Plz be so kind and look at the following link into the documentation of the mixed sensitivity function of matlab robust control toolbox.

formatting link
In this doc a example is listet:

s=zpk('s'); G=(s-1)/(s+1)^2;

W1=0.1*(s+100)/(100*s+1); W2=0.1;

[K,CL,GAM]=mixsyn(G,W1,W2,[]); L=G*K; S=inv(1+L); T=1-S;

sigma(S,'g',T,'r',GAM/W1,'g-.',GAM*G/ss(W2),'r-.')

My question is: They build two weighting functions W1 and W2. W1 weights the sensitivity and W2 weights the regulator function R(s) = K(s)(I + K(s)G(s))^-1. I don't understand the plot/last line. Why do the plot "GAM*G/W2", cause this weighting function isn't for complementary sensitivity? Is it a bug in docs or do i have a really understanding problem of the mixed sensitivity algorithm?

greetings Hugo

Reply to
stefan.e.ehrhardt
Loading thread data ...

Dear Hugo,

Try and look at the definition of sensitivity (S), control sensitivity (R), and complementary sensitivity (T). From this you can see that T = G * R = G * K * S

The author has simply shown how T is bounded from the specification on R. I cannot tell you why they did not choose to plot the bound on R.

About the last line. The limitations are due to technicalities in the algorithm for calculating H-infinitity controllers. Basically, the weighted plant must be stabilizable, which is not the case if the weighting functions are unstable.

Best regards, Kasper

Reply to
Kasper

schrieb im Newsbeitrag news: snipped-for-privacy@e25g2000prg.googlegroups.com...

formatting link

Sorry, I can't answer your questions. I don't use the mentioned software.

Using the process transfer function G(s) I found 3 possible solutions.

See

formatting link
Page 4 seems to be a very robust control.

Reply to
JCH

Newsbeitragnews: snipped-for-privacy@e25g2000prg.googlegroups.com...

JCH, did you notice the zero at 1? Your example is wrong without the zero at 1 and I don't see it represented in your differential equation/ transfer functon. How do you represent a zero in a differential equation?

Peter Nachtwey

Reply to
pnachtwey

Newsbeitragnews: snipped-for-privacy@e25g2000prg.googlegroups.com...

Rewriting G=(s - 1)/(s^2 + 2s + 1) = v1/v2

Time domain ODE v1'' + 2*v1' + v1 = v2' - v2 given v1'' + v1' + v1 = - v2 used

v1' = v2' approximately (See Page 2)

formatting link

-v2 = exitation for v1

Reply to
JCH

That must be nice. If you can't solve the problem then ignore it or change it one you can, maybe. There is still an obvious problem. When v1" and v1' reach steady state or 0 then v1=-v2. Your graph shows v1=v2 Why don't you just call v1 a velocity, v1' acceleration and v1" jerk?

Peter Nachtwey

Reply to
Peter Nachtwey

"Peter Nachtwey" schrieb im Newsbeitrag news:N4adnQmUTdXPyfzanZ2dnUVZ snipped-for-privacy@comcast.com...

Look again

Equivalent

v1'' + 2*v1' - v2' + v1 = -v2 ^^^^^^^^^^^ if v1' = v2' then v1'' + v1' + v1 = -v2

-v2 = exitation

v1 is always the variable to be controlled!

See Definition Page 1

formatting link

Reply to
JCH

Newsbeitragnews:N4adnQmUTdXPyfzanZ2dnUVZ snipped-for-privacy@comcast.com...

Anybody can tell just by looking that

is not right. First, the original G(s) was critically damped. Your modified solution is under damped. Second, the original G(s) had a positive zero ( non-minimum phase ) which means v1 will go in the positive before going negative in response to a step of +1. Your simplified solution has no zeros at all so it immediately goes in the negative direction in response to a step of one. Your graphs still go in the wrong direction. Have you plotted the difference between hugo's G(s) and your G(s)? Try getting the simple things right first like having the graph go in the right direction or maybe take a break and study a bit.

Peter Nachtwey

Peter Nachtwey

Reply to
pnachtwey

My original problem is clear now. Like in most cases, the problem is infront of the computer ^^. So what did they do?

sigma(S,'g',T,'r',GAM/W1,'g-.',GAM*G/ss(W2),'r-.') % the "problematic" plot

The weighting function W2 is in most cases for specifing R(s) = K(s) / ( I + K(s)G(s) ). The infinity norm is | R(s)*W(s) | =< gamma. Well! Now we multiply the plant G(s) to the norm:

| R(s)*W(s)*G(s) | =< gamma*| G(s) | So what we got here is: | K(s)G(s) / ( I + K(s)G(s) ) | =< gamma * | G(s) / W(s) |. It was so easy, but i didn't realise it.

Reply to
stefan.e.ehrhardt

My original problem is clear now. Like in most cases, the problem is infront of the computer ^^. So what did they do?

sigma(S,'g',T,'r',GAM/W1,'g-.',GAM*G/ss(W2),'r-.') % the "problematic" plot

The weighting function W2 is in most cases for specifing R(s) = K(s) / ( I + K(s)G(s) ). The infinity norm is | R(s)*W(s) | =< gamma. Well! Now we multiply the plant G(s) to the norm:

| R(s)*W(s)*G(s) | =< gamma*| G(s) | So what we got here is: | K(s)G(s) / ( I + K(s)G(s) ) | =< gamma * | G(s) / W(s) |. It was so easy, but i didn't realise it.

Reply to
stefan.e.ehrhardt

Try this. It is the best possible robust control for any sytem.

Compensation C(s)

G(s)*C(s) = 1 C(s) = 1/G(s)

Reply to
JCH

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.