Output argument error while using musyn

20 views (last 30 days)
SalahEddine
SalahEddine on 23 Mar 2023
Answered: Matthieu on 24 Mar 2023
Hello.
I built a block diagram using the function "connect" . This function take as input sumblk , weight function and state space.
Then I used the commande hinfsyn :
load('workspace')
[K,CL,gamma]=hinfsyn(model,1,1);
Which worked, but when I try to use the same model with the command musyn i get this error :
[Krob,rpMU] = musyn(model,1,1)
Output argument "nag1" (and possibly others) not assigned a value in the execution with "mkargs5x" function.

Error in musyn (line 88)
[emsg,nag1,xsflag,Ts,A,B1,B2,C1,C2,D11,D12,D21,D22,w,gamind,aux,logd0,n,blksz,flag]=mkargs5x('tss',varargin); error(emsg);
In the documentation Robust Control of Active Suspension the same model is used for both functions and it works.
Thanks for your time

Answers (1)

Matthieu
Matthieu on 24 Mar 2023
Hello,
Your attached file does not contain uncertainties in your model when transitioning from H-inf control to Mu-synthesis.
See the Matlab example Robust control of Active Suspension. This code snippet
unc = ultidyn('unc',[1 1],'SampleStateDim',5);
Act = ActNom*(1 + Wunc*unc);
introduces uncertainties in the active suspension actuator model.
H-inf method guarantees peformance for the nominal actuator model ; mu-synthesis achieves robust performance, it guarantees performance for all actuators comprised in the uncertainty specified.
In the example given by Mathworks, there is a comparison for the response of the controller to a road bump between robust control using mu-synthesis and nominal control using H-inf that is very useful to seize the difference.

Tags

Products


Release

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!