How to create custom Closed Loop Margin based on the Complementary Sensitivity Function in Systune TuningGoal?
显示 更早的评论
I want to have a hard constraint for my system that puts a constraint on the dynamic margin (generalized delay margin) of the entire system. Mathemathically, the constraint is formulated as follows.
(1) 
Where
is the complementary sensitivity function of the systems input. I have a similar hard constraint on the sensitivity function:
is the complementary sensitivity function of the systems input. I have a similar hard constraint on the sensitivity function:(2) 
And this should be implemented by using TuningGoal.LoopShape as follows.
Hardreq2 = TuningGoal.LoopShape("u",1/0.5,1)
The problem with the first requirement I think is the additional s term in the
norm. I do not know how to set up this constraint properly. Can anyone help me out?
norm. I do not know how to set up this constraint properly. Can anyone help me out?采纳的回答
更多回答(1 个)
UDAYA PEDDIRAJU
2024-10-4
Hey Stijin,
I can share my previous experiance by relating your requirement. To create a custom Closed Loop Margin based on the Complementary Sensitivity Function in Systune, you can define a tuning goal that incorporates the additional ( s ) term in the norm. The goal is to ensure that the complementary sensitivity function ( T(s) ) meets your specified constraints.
% Define the system
sys = ...; % Your system model
% Define the complementary sensitivity function
T = feedback(sys, 1); % Assuming unity feedback
% Define the tuning goal for the complementary sensitivity function
% Here, we use the norm with the additional s term
s = tf('s');
Hardreq1 = TuningGoal.LoopShape('u', T/(1 + T), 1); % Adjust as needed
% Add the tuning goal to the tuning requirements
TuningGoal = [Hardreq1];
% Use systune to tune the system
[sysTuned, info] = systune(sys, TuningGoal);
类别
在 帮助中心 和 File Exchange 中查找有关 Programmatic Tuning 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!




