What command do I use to assign a range of values or a set of specific values for K?

I first used "overlaymany"command per John Rossiter's video but the command doesn't exist in the Matlab software I am using. https://www.youtube.com/watchv=m1QxUvxij_E&list=PLs7mcKy_nInFEf4Lku9LKkXPdAj0zJCx0&index=2,
then I used feedback function along with step function as shown in the following script:
************************************************
clear all; close all;
z=0:1:100;
numG = [4];
denG = [1 4 7 0];
figure(1);
G = tf(numG,denG);
rlocus(G,z);
grid;
figure(2);
z1=G*0.6;
Gz1 = feedback(z1,1);
z2=G*2;
Gz2 = feedback(z2,1);
z3=G*4;
Gz3 = feedback(z3,1);
step(Gz1,Gz2,Gz3);
****************************************************************************
the plots were similar to the solution manual, but the amplitudes were off. I can't figure out what I am doing wrong.

回答 (2 件)

goerk
goerk 2015 年 10 月 14 日
編集済み: goerk 2015 年 10 月 14 日
Please Tag your questions with homework. Please post your code in a readable way (Code).
You have an error in your transfer function
numL = [4 4*z];
denL = [1 4 3 0];
L = tf(numL,denL);
Hint: If you type don't use the semicolon the transfer function is displayed and you can compare it with the given one.
The multiplication of the factor z lead to a wrong result.

3 件のコメント

goerk
goerk 2015 年 10 月 15 日
編集済み: goerk 2015 年 10 月 15 日
L(s) is the open-loop transfer function to get the overall transfer function you can use
G1 = L/(1+L)
or
G2 = feedback(L,1)
to compare this two transfer functions use the command
minreal(G1)
minreal(G2)
which cancel down the transfer functions.
Hint: for z set the factors 0.6, 2 and 4. to get the requested transfer functions.
Ashkhen Aristakessian
Ashkhen Aristakessian 2015 年 10 月 15 日
I made the modification, and it still didn't give me the correct solution. Thanks for trying.
goerk
goerk 2015 年 10 月 16 日
What was your modification? Look at the transfer function from your manual and compare it with the one you got. I get the same result. The step
z1=G*0.6;
from your example code is wrong. The factors have to be added to the open-loop transfer function as shown in my first response.
z=0.6;
numL = [4 4*z];
denL = [1 4 3 0];
L = tf(numL,denL);
G = L/(1+L)
figure; step(G)

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

Maarten van Els
Maarten van Els 2019 年 3 月 18 日

0 投票

I had the same problem when watching the video. Apparently it's a self written script, you can build it yourself using the following link: Modelling and control by Anthony Rossiter

カテゴリ

質問済み:

2015 年 10 月 13 日

回答済み:

2019 年 3 月 18 日

Community Treasure Hunt

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

Start Hunting!

Translated by