comparison scripts/control/base/rldemo.m @ 4771:b8105302cfe8

[project @ 2004-02-16 17:45:50 by jwe]
author jwe
date Mon, 16 Feb 2004 17:45:50 +0000
parents 7923abdeb4e5
children bdbee5282954
comparison
equal deleted inserted replaced
4770:ef5e598f099b 4771:b8105302cfe8
42 prompt 42 prompt
43 43
44 clc 44 clc
45 disp("Display continuous system's open loop poles and zeros (pzmap)\n"); 45 disp("Display continuous system's open loop poles and zeros (pzmap)\n");
46 disp("Example #1, Consider the following continuous transfer function:"); 46 disp("Example #1, Consider the following continuous transfer function:");
47 cmd = "sys1 = tf2sys([1.5, 18.5, 6], [1, 4, 155, 302, 5050]);"; 47 cmd = "sys1 = tf([1.5, 18.5, 6], [1, 4, 155, 302, 5050]);";
48 disp(cmd); 48 disp(cmd);
49 eval(cmd); 49 eval(cmd);
50 cmd ="sysout(sys1);"; 50 cmd ="sysout(sys1);";
51 disp(cmd); 51 disp(cmd);
52 eval(cmd); 52 eval(cmd);
59 run_cmd 59 run_cmd
60 prompt 60 prompt
61 61
62 clc 62 clc
63 disp("Example #2, Consider the following set of poles and zeros:"); 63 disp("Example #2, Consider the following set of poles and zeros:");
64 cmd = "sys2 = zp2sys([-1, 5, -23],[-1, -10, -7+5i, -7-5i],5);"; 64 cmd = "sys2 = zp([-1, 5, -23],[-1, -10, -7+5i, -7-5i],5);";
65 disp(cmd); 65 disp(cmd);
66 eval(cmd); 66 eval(cmd);
67 cmd = "sysout(sys2);"; 67 cmd = "sysout(sys2);";
68 disp(cmd); 68 disp(cmd);
69 eval(cmd); 69 eval(cmd);
74 disp("pzmap automatically sorts it out internally."); 74 disp("pzmap automatically sorts it out internally.");
75 prompt; 75 prompt;
76 76
77 clc 77 clc
78 disp("Example #3, Consider the following state space system:\n"); 78 disp("Example #3, Consider the following state space system:\n");
79 cmd = "sys3=ss2sys([0, 1; -10, -11], [0; 1], [0, -2], 1);"; 79 cmd = "sys3=ss([0, 1; -10, -11], [0; 1], [0, -2], 1);";
80 disp(cmd); 80 disp(cmd);
81 eval(cmd); 81 eval(cmd);
82 cmd = "sysout(sys3);"; 82 cmd = "sysout(sys3);";
83 disp(cmd); 83 disp(cmd);
84 eval(cmd); 84 eval(cmd);
103 disp("\nDisplay discrete system's open loop poles and zeros (pzmap)\n"); 103 disp("\nDisplay discrete system's open loop poles and zeros (pzmap)\n");
104 disp("First we must define a sampling time, as follows:\n"); 104 disp("First we must define a sampling time, as follows:\n");
105 cmd = "Tsam = 1;"; 105 cmd = "Tsam = 1;";
106 run_cmd; 106 run_cmd;
107 disp("Example #1, Consider the following discrete transfer function:"); 107 disp("Example #1, Consider the following discrete transfer function:");
108 cmd = "sys1 = tf2sys([1.05, -0.09048], [1, -2, 1],Tsam);"; 108 cmd = "sys1 = tf([1.05, -0.09048], [1, -2, 1],Tsam);";
109 disp(cmd); 109 disp(cmd);
110 eval(cmd); 110 eval(cmd);
111 cmd ="sysout(sys1);"; 111 cmd ="sysout(sys1);";
112 disp(cmd); 112 disp(cmd);
113 eval(cmd); 113 eval(cmd);
120 run_cmd 120 run_cmd
121 prompt 121 prompt
122 122
123 clc 123 clc
124 disp("Example #2, Consider the following set of discrete poles and zeros:"); 124 disp("Example #2, Consider the following set of discrete poles and zeros:");
125 cmd = "sys2 = zp2sys(-0.717, [1, -0.368], 3.68, Tsam);"; 125 cmd = "sys2 = zp(-0.717, [1, -0.368], 3.68, Tsam);";
126 disp(cmd); 126 disp(cmd);
127 eval(cmd); 127 eval(cmd);
128 cmd = "sysout(sys2);"; 128 cmd = "sysout(sys2);";
129 disp(cmd); 129 disp(cmd);
130 eval(cmd); 130 eval(cmd);
135 disp("pzmap automatically sorts it out internally."); 135 disp("pzmap automatically sorts it out internally.");
136 prompt; 136 prompt;
137 137
138 clc 138 clc
139 disp("Example #3, Consider the following discrete state space system:\n"); 139 disp("Example #3, Consider the following discrete state space system:\n");
140 cmd = "sys3=ss2sys([1, 0.0952; 0, 0.905], [0.00484; 0.0952], [1, 0], 0, Tsam);"; 140 cmd = "sys3=ss([1, 0.0952; 0, 0.905], [0.00484; 0.0952], [1, 0], 0, Tsam);";
141 disp(cmd); 141 disp(cmd);
142 eval(cmd); 142 eval(cmd);
143 cmd = "sysout(sys3);"; 143 cmd = "sysout(sys3);";
144 disp(cmd); 144 disp(cmd);
145 eval(cmd); 145 eval(cmd);
161 prompt; 161 prompt;
162 162
163 clc 163 clc
164 disp("Display root locus of a continuous SISO system (rlocus)\n") 164 disp("Display root locus of a continuous SISO system (rlocus)\n")
165 disp("Example #1, Consider the following continuous transfer function:"); 165 disp("Example #1, Consider the following continuous transfer function:");
166 cmd = "sys1 = tf2sys([1.5, 18.5, 6],[1, 4, 155, 302, 5050]);"; 166 cmd = "sys1 = tf([1.5, 18.5, 6],[1, 4, 155, 302, 5050]);";
167 disp(cmd); 167 disp(cmd);
168 eval(cmd); 168 eval(cmd);
169 cmd ="sysout(sys1);"; 169 cmd ="sysout(sys1);";
170 disp(cmd); 170 disp(cmd);
171 eval(cmd); 171 eval(cmd);
184 disp("loop poles/zeros."); 184 disp("loop poles/zeros.");
185 prompt 185 prompt
186 186
187 clc 187 clc
188 disp("Example #2, Consider the following set of poles and zeros:"); 188 disp("Example #2, Consider the following set of poles and zeros:");
189 cmd = "sys2 = zp2sys([],[0, -20, -2, -0.1],5);"; 189 cmd = "sys2 = zp([],[0, -20, -2, -0.1],5);";
190 disp(cmd); 190 disp(cmd);
191 eval(cmd); 191 eval(cmd);
192 cmd = "sysout(sys2);"; 192 cmd = "sysout(sys2);";
193 disp(cmd); 193 disp(cmd);
194 eval(cmd); 194 eval(cmd);
199 disp("rlocus automatically sorts it out internally."); 199 disp("rlocus automatically sorts it out internally.");
200 prompt; 200 prompt;
201 201
202 clc 202 clc
203 disp("Example #3, Consider the following state space system:\n"); 203 disp("Example #3, Consider the following state space system:\n");
204 cmd = "sys3=ss2sys([0, 1; -10, -11], [0; 1], [0, -2], 0);"; 204 cmd = "sys3=ss([0, 1; -10, -11], [0; 1], [0, -2], 0);";
205 disp(cmd); 205 disp(cmd);
206 eval(cmd); 206 eval(cmd);
207 cmd = "sysout(sys3);"; 207 cmd = "sysout(sys3);";
208 disp(cmd); 208 disp(cmd);
209 eval(cmd); 209 eval(cmd);
231 disp("Display root locus of a discrete SISO system (rlocus)\n") 231 disp("Display root locus of a discrete SISO system (rlocus)\n")
232 disp("First we must define a sampling time, as follows:\n"); 232 disp("First we must define a sampling time, as follows:\n");
233 cmd = "Tsam = 1;"; 233 cmd = "Tsam = 1;";
234 run_cmd; 234 run_cmd;
235 disp("Example #1, Consider the following discrete transfer function:"); 235 disp("Example #1, Consider the following discrete transfer function:");
236 cmd = "sys1 = tf2sys([1.05, -0.09048],[1, -2, 1],Tsam);"; 236 cmd = "sys1 = tf([1.05, -0.09048],[1, -2, 1],Tsam);";
237 disp(cmd); 237 disp(cmd);
238 eval(cmd); 238 eval(cmd);
239 cmd ="sysout(sys1);"; 239 cmd ="sysout(sys1);";
240 disp(cmd); 240 disp(cmd);
241 eval(cmd); 241 eval(cmd);
254 disp("loop poles/zeros."); 254 disp("loop poles/zeros.");
255 prompt 255 prompt
256 256
257 clc 257 clc
258 disp("Example #2, Consider the following set of discrete poles and zeros:"); 258 disp("Example #2, Consider the following set of discrete poles and zeros:");
259 cmd = "sys2 = zp2sys(-0.717, [1, -0.368], 3.68, Tsam);"; 259 cmd = "sys2 = zp(-0.717, [1, -0.368], 3.68, Tsam);";
260 disp(cmd); 260 disp(cmd);
261 eval(cmd); 261 eval(cmd);
262 cmd = "sysout(sys2);"; 262 cmd = "sysout(sys2);";
263 disp(cmd); 263 disp(cmd);
264 eval(cmd); 264 eval(cmd);
271 disp("this out automatically"); 271 disp("this out automatically");
272 prompt; 272 prompt;
273 273
274 clc 274 clc
275 disp("Example #3, Consider the following discrete state space system:\n"); 275 disp("Example #3, Consider the following discrete state space system:\n");
276 cmd = "sys3=ss2sys([1, 0.0952; 0, 0.905], [0.00484; 0.0952], [1, 0], 0, Tsam);"; 276 cmd = "sys3=ss([1, 0.0952; 0, 0.905], [0.00484; 0.0952], [1, 0], 0, Tsam);";
277 disp(cmd); 277 disp(cmd);
278 eval(cmd); 278 eval(cmd);
279 cmd = "sysout(sys3);"; 279 cmd = "sysout(sys3);";
280 disp(cmd); 280 disp(cmd);
281 eval(cmd); 281 eval(cmd);