Inconsistent result with the documentation

2 ビュー (過去 30 日間)
Bandar
Bandar 2020 年 2 月 9 日
コメント済み: Walter Roberson 2020 年 2 月 10 日
Take a look at a feedback system where G=1/s and H=1 where G is forward feedback and H backward feedback.
----O---------|G|----------->
^ |
|<----------|H|----|
According to the documentation,
sys = feedback(___,sign) returns a model object sys for a feedback loop with the type of feedback specified by sign. By default, feedback assumes negative feedback and is equivalent to feedback(sys1,sys2,-1). To compute the closed-loop system with positive feedback, use sign = +1.
It means T1 and T2 in the following code must be same
s = tf('s');
G = 1/s;
T1 = feedback(G,-1)
T2 = feedback(G,1,-1)
But they are not the same.

採用された回答

Walter Roberson
Walter Roberson 2020 年 2 月 9 日
In the first one sys2 is -1 and the default negative feedback is used. In the second one sys2 is +1 and negative feedback is explicitly used. You are using different sys2 with the same feedback so the results are going to be different.
  2 件のコメント
Bandar
Bandar 2020 年 2 月 9 日
My question is about the documentation. Explicitly about sys = feedback(___,sign). My understadning for the aforementioned line is the fact that in case we have two inputs and the second input is -1 or +1, then the second input is interpreted as sign NOT as sys2 otherwise, this line in the documentation is futile.
Walter Roberson
Walter Roberson 2020 年 2 月 10 日
In MATLAB documentation, when you see the function followed by ___ followed by a parameter, that means that you need to use one of the syntaxes before that point to replace ____ and then you use the parameter listed. Each of the syntaxes before that point has both sys1 and sys2, so you need both of those before sign
So valid would be any of
sys = feedback(sys1,sys2) %uses sign -1
sys = feedback(sys1,sys2,feedin,feedout) %uses sign -1
sys = feedback(sys1,sys2,'name') %uses sign -1
sys = feedback(sys1,sys2,sign) %uses sign you pass
sys = feedback(sys1,sys2,feedin,feedout,sign) %uses sign you pass
sys = feedback(sys1,sys2,'name',sign) %uses sign you pass

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSwitches and Breakers についてさらに検索

タグ

製品


リリース

R2019b

Community Treasure Hunt

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

Start Hunting!

Translated by