|
From: | Doug Stewart |
Subject: | Re: Problem in OCST |
Date: | Mon, 16 Feb 2004 16:24:37 -0500 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.0; en-US; rv:1.5) Gecko/20031007 |
ผศ.ดร.ศุภชัย วรพจน์พิศุทธิ์ wrote:
Hello, I plan to use Octave in my control theory classroom. However, I found some strange problems while trying to simulate DC motor with PI controller. Function bode() does not work even it should be. Now, I am using Octave 2.1.50a on Win2k downloaded from octave.sf.net. May someone please explain how to solve this problem? Thank you in advance Supachaimotor = tf2sys([4500],[1 361.2 0]); PI = tf2sys([1 0.1],[1 0]); G = sysmult(motor,PI);warning: in /opt/octave/share/octave/2.1.50/m/control/system/__sysgroupn__.m near line 44, column 9:warning ("sysgroup: %s name(%d) = %s name(%d) = %s", kind, ii, kind,jj, st1); warning: sysgroup: state name(1) = state name(3) = x_1 warning: sysgroup: changed state name 3 to x_1_3
Here is how I do it. Doug Stewart % motor = tf2sys([4500],[1 361.2 0]); % PI = tf2sys([1 0.1],[1 0]); % G = sysmult(motor,PI); %Motor mn=4500; md=[1 361.2 0] %PI pin=[1 0.1] pid=[1 0] % multiply both numerators gn=conv(pin,mn) % multiply both denominators gd=conv(pid,md) %form the closed loop of a unity feedback system nc=gn dc=addpoly(gd,gn) sysc=tf2sys(nc,dc) sysout(sysc) y=step(sysc) ------------------------------------------------------------- Octave is freely available under the terms of the GNU GPL. Octave's home on the web: http://www.octave.org How to fund new projects: http://www.octave.org/funding.html Subscription information: http://www.octave.org/archive.html -------------------------------------------------------------
[Prev in Thread] | Current Thread | [Next in Thread] |