# 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.
http://www.mathworks.com/access/helpdesk/help/toolbox/robust/index.html?/access/helpdesk/help/toolbox/robust/mixsyn.html&http://www.mathworks.com/cgi-bin/texis/webinator/search /
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
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
On 11 Dec., 11:26, snipped-for-privacy@googlemail.com wrote:

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
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>

http://www.mathworks.com/access/helpdesk/help/toolbox/robust/index.html?/access/helpdesk/help/toolbox/robust/mixsyn.html&http://www.mathworks.com/cgi-bin/texis/webinator/search /
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 http://home.arcor.de/janch/janch/_news/20071212-hugo /
Page 4 seems to be a very robust control.
--
Jan C. Hoffmann eMail aktuell: snipped-for-privacy@nospam.arcornews.de
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Newsbeitrag

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
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>

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)
http://home.arcor.de/janch/janch/_news/20071212-hugo /
-v2 = exitation for v1
--
Jan C. Hoffmann eMail aktuell: snipped-for-privacy@nospam.arcornews.de
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>

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
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>

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 http://home.arcor.de/janch/janch/_news/20071212-hugo /
--
Jan C. Hoffmann eMail aktuell: snipped-for-privacy@nospam.arcornews.de
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
Newsbeitrag

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
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
On 11 Dez., 11:26, snipped-for-privacy@googlemail.com wrote:

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.
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
On 11 Dez., 11:26, snipped-for-privacy@googlemail.com wrote:

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.
<% if( /^image/.test(type) ){ %>
<% } %>
<%-name%>
wrote:

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)
--