www.gusucode.com > control 案例程序 matlab源码代码 > control/LoopShapeAndCrossoverToleranceExample.m
%% Loop Shape and Crossover Tolerance % Create a target gain profile requirement for the following control % system. Specify integral action, gain crossover at 1, and a roll-off % requirement of 40 dB/decade. %% % % <<../tuninggoal8.png>> % %% % The requirement should apply to the open-loop response measured at the % |AnalysisPoint| block |X|. Specify a crossover tolerance of 0.5 decades. LS = frd([100 1 0.0001],[0.01 1 100]); Req = TuningGoal.LoopShape('X',LS,0.5); %% % The software converts |LS| into a smooth function of frequency that % approximates the piecewise-specified requirement. Display the requirement % using |viewSpec|. viewSpec(Req) %% % The green and red regions indicate the bounds for the inverse sensitivity, |inv(S) = % 1-G*C|, and the complementary sensitivity, |T = % 1-S|, respectively. The gap between these regions at 0 dB % gain reflects the specified % crossover tolerance, which is half a decade to either side of the target loop crossover. % % When you use |viewSpec(Req,CL)| to % validate a tuned closed-loop model of this control system, |CL|, the % tuned values of |S| and |T| are also plotted.