Mercurial > hg > octave-nkf
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); |