Time response of a RLC series circuit 15 0.5 Time-sec current versus capacitor voltage 0.15 0.1 05 -0.05 0.50.60.7 0.8 0.9 1.1 1.2 1.3 图1 113非线性系统 在变量的一定范围内大多数物理系统是线性的。然而,随着变量范围的延伸,所有的系 统最终都是非线性的。对于非线性系统,叠加原理不再成立。Ode23和ode45可以求解非线 性微分方程,见例1-3 例13图1-5的单摆,一长L米的无重量绳悬挂重为W=mg千克 的物体阻尼系数为B千克/米/秒。通常,该系统用线性微分方程近似描 述,实际上它是非线性的。 如果θ为绳的倾角,物体的速度将为Lθ,那么离心力为 F=-Wsin0-ble 根据牛顿定理有 图1 F=mle 联结上两式,得 ml 0+bl0+ wsin a=0 令x1=6,x2=6得
4 0 5 10 15 -0.5 0 0.5 1 1.5 Time response of a RLC series circuit Time-sec Capacitor voltage current 0.5 0.6 0.7 0.8 0.9 1 1.1 1.2 1.3 -0.1 -0.05 0 0.05 0.1 0.15 current versus capacitor voltage Capacitor Voltage current 图 1-4 1.1.3 非线性系统 在变量的一定范围内大多数物理系统是线性的。然而,随着变量范围的延伸,所有的系 统最终都是非线性的。对于非线性系统,叠加原理不再成立。Ode23 和 ode45 可以求解非线 性微分方程,见例 1-3。 例 1.3 图 1-5 的单摆,一长L米的无重量绳悬挂重为 W=mg 千克 的物体,阻尼系数为 B 千克/米/秒。通常,该系统用线性微分方程近似描 述,实际上它是非线性的。 如果θ为绳的倾角,物体的速度将为 Lθ,那么离心力为 W BL F sin - 根据牛顿定理有 F mL 联结上两式,得 mL BL Wsin 0 令 1 x2 x , 得
上面方程式在M-文件 pendulum.m中定义如下 function dot=pe %状态导数 W=2;L=6,B=0.02;g=9.81;m=W/g; dot=x(2),-B/m*x(2)-W/(m)*sin(x(1) 下面的M-文件对系统进行仿真 0=0: tfinal=s %时间间隔0~5秒 初始条件x1=1,x2=0 tol=0 0001: trace=0 %精度,不打印每一步的计算值 It, x]=ode23( pendulum, to, tfinal, xo, tol, trace); subplot(211),plot(t, x) title( Time response of a rigid pendulum,),xlabel(Time-sed text(3. 2, 3.5, Velocity,), text(3.2, 1.2, Angle-Rad') th=x(,1),w=x(;2) subplot(212), plot(th, w) lane plot of pendulum) xlabel('Position-Rad), ylabel(,Angular velocity) subplot(lll 仿真结果见图1-6 Time response of a rigid pendulum 0.5 Phase plane plot of pendulum 1-0.80.60.40.200.20.40.60.81 Position-Rad 图1-6
5 1 2 2 2 1 sinx mL W x m B x x , x 上面方程式在 M-文件 pendulum.m 中定义如下: function xdot=pendulum(t, x); %状态导数 W=2; L=.6; B=0.02; g=9.81; m=W/g; xdot=[x(2); -B/m*x(2)-W/(m*L)*sin(x(1))]; 下面的 M-文件对系统进行仿真。 t0=0; tfinal=5; %时间间隔 0~5 秒 x0=[1,0]; %初始条件 x1=1,x2=0 tol=0.0001; trace=0; %精度,不打印每一步的计算值 [t, x]=ode23('pendulum',t0,tfinal,x0,tol,trace); subplot(211),plot(t, x) title('Time response of a rigid pendulum'),xlabel('Time-sec') text(3.2,3.5,'Velocity'),text(3.2,1.2,'Angle-Rad') th=x(:,1);w=x(:,2); subplot(212),plot(th, w) title('Phase plane plot of pendulum') xlabel('Position-Rad'),ylabel('Angular velocity') subplot(111) 仿真结果见图 1-6。 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 -4 -2 0 2 4 Time response of a rigid pendulum Time-sec Velocity Angle-Rad -1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1 -4 -2 0 2 4 Phase plane plot of pendulum Position-Rad Angular velocity 图 1-6
1.14线性化 在小信号条件下,非线性系统可以线性化。例1.3中单摆的运动方程在初始角较小的 情况下,可被线性化。设0=0+△0,单摆运动方程如下: mL(6+△6)+BL(0+△6)+wsin(。+△)=0 当△0(《∞时,有sin△0≈0,cosΔ0≈1,又因为0o较小,有sin0o≈Δ0,那么有线 性方程 mL△e+BLA+W△6=0 当Δθ很小时,线性方程(12)的解与(1.1)一致。 1.2传递函数 线性时不变系统的传递函数定义为零初始条件下输出量的拉普拉斯变换与输入量的拉 普拉斯变换像函数之比。尽管传递函数只能用于线性系统,但它比微分方程提供更为直观的 信息。令传递函数的分母多项式等于零,便得到特征方程。特征方程的根是系统的极点,分 子多项式的根是系统的零点。那么传递函数便可由常数项与系统的零、极点确定。常数项, 通常记作k,是系统的增益。利用传递函数,我们可以方便的研究系统参数的改变对响应的 影响。通过拉普拉斯反变换可得到系统在时域的响应。通常需要用有理函数的部分分式展开 在这部分举几个例子介绍 MATLLAB中求特征多项式的根,求传递函数的零、极点, 部分分式展开以及已知零、极点求传递函数等函数的功能 121多项式的根和特征多项式 如果P是包含多项式系数的行向量,roos(P)得到一个列向量,其元素为多项式的根。 如果r是包含多项式根的一个行例列向量,poly(r)得到一个行向量,其元素为多项式的系数 例14求多项式 s6+9s5+3125s4+6125s3+67.752+1475+15的根 多项式系数以降幂次序排列在一行向量中。用 roots求根。 >>P=[19312561.2567.7514.7515 >>r=roots(P) 多项式的根从列向量r中得到 -40000 -3.0000 1.0000+2.00001 -0.0000+500001 -0.0000-5.0000i 例1.5多项式的根为-1,-2,-3±14。求多项式方程
6 1.1.4 线性化 在小信号条件下,非线性系统可以线性化。例1.3中单摆的运动方程在初始角较小的 情况下,可被线性化。设θ=θ+Δθ,单摆运动方程如下: mL(0 ) BL(0 ) Wsin(0 ) 0 (1.1) 当Δθ〈〈∞时,有 sinΔθ≈0,cosΔθ≈1,又因为θ0较小,有 sinθ0≈Δθ,那么有线 性方程 mL BL W 0 (1.2) 当Δθ很小时,线性方程(1.2)的解与(1.1)一致。 1.2 传递函数 线性时不变系统的传递函数定义为零初始条件下输出量的拉普拉斯变换与输入量的拉 普拉斯变换像函数之比。尽管传递函数只能用于线性系统,但它比微分方程提供更为直观的 信息。令传递函数的分母多项式等于零,便得到特征方程。特征方程的根是系统的极点,分 子多项式的根是系统的零点。那么传递函数便可由常数项与系统的零、极点确定。常数项, 通常记作 k,是系统的增益。利用传递函数,我们可以方便的研究系统参数的改变对响应的 影响。通过拉普拉斯反变换可得到系统在时域的响应。通常需要用有理函数的部分分式展开。 在这部分举几个例子介绍 MATLLAB 中求特征多项式的根,求传递函数的零、极点, 部分分式展开以及已知零、极点求传递函数等函数的功能。 1.2.1 多项式的根和特征多项式 如果 P 是包含多项式系数的行向量,roots(P)得到一个列向量,其元素为多项式的根。 如果 r 是包含多项式根的一个行/列向量,poly(r)得到一个行向量,其元素为多项式的系数。 例 1.4 求多项式 s 6+9s 5+31.25s 4+61.25s 3+67.75s 2+14.75s+15 的根。 多项式系数以降幂次序排列在一行向量中。用 roots 求根。 >>P=[1 9 31.25 61.25 67.75 14.75 15]; >>r=roots(P) 多项式的根从列向量 r 中得到 r = -4.0000 -3.0000 -1.0000 + 2.0000i -1.0000 - 2.0000i -0.0000 + 5.0000i -0.0000 - 5.0000i 例 1.5 多项式的根为-1,-2,-3±j4。求多项式方程
为了输入复数,必须首先建立虚数单位。然后在行列向量中输入根。使用poly得到多 项式方程 >>=sqrt(-1) >>r=[-1;2-3+4*-3-4* > p=poly(r) 多项式的系数从行向量中得到 因此,多项式方程为 s4+9s3+45s2+875+50=0 例16求下列矩阵的特征方程的根 A=-6-116 -6-115 用ploy求矩阵的特征方程的根。用 roots求方程的根 >>A=[01-1;-6-116;-6-115] >>P=poly (A) >>Froots(P) 结果如下 10000600001100006.0000 30000 20000 -1.0000 122传递函数的零点和极点 ·函数求传递函数的零点,极点和增益。 例17求下列传递函数的零点,极点和增益。 s3+1ls2+30s H(s)= s+9s+45s2+87s+50 >>num=[111300 >>den={19458750]; >>[z, p, k=tf2zp(num, den
7 为了输入复数,必须首先建立虚数单位。然后在行/列向量中输入根。使用 poly 得到多 项式方程。 >> i=sqrt(-1); >> r=[-1;-2;-3+4*i;-3-4*i]; >> p=poly(r) 多项式的系数从行向量中得到 p = 1 9 45 87 50 因此,多项式方程为 s 4+9s 3+45s 2+87s+50=0 例 1.6 求下列矩阵的特征方程的根 - 6 -11 5 - 6 -11 6 0 1 -1 A 用 ploy 求矩阵的特征方程的根。用 roots 求方程的根。 >> A=[0 1 -1;-6 -11 6;-6 -11 5]; >> P=poly(A) >> r=roots(P) 结果如下: P= 1.0000 6.0000 11.0000 6.0000 r = -3.0000 -2.0000 -1.0000 1.2.2 传递函数的零点和极点 函数 tf2zp 求传递函数的零点,极点和增益。 例 1.7 求下列传递函数的零点,极点和增益。 s 9s 45s 87s 50 s 11s 30s H(s) 4 3 2 3 2 >> num=[1 11 30 0]; >> den=[1 9 45 87 50]; >> [z, p, k]=tf2zp(num, den)
0 -3.0000-4.00001 因而有 s(S+5)(s+6) Hs)(s+1)s+2s+3+j4)(s+3-j4) ·函数zp2tf根据给定零点,极点和增益求传递函数。 例1.8系统的零点为-6,-5,0,极点为-3±14,-2,-1增益为1。求其传递函数。 -2;-1] >>num, den=zp2tf(z, p, k) 上面程序的结果为 因此,传递函数为 s3+1ls2+30s H(s) s4+9s3+45s2+87s+50 123部分分式展开 函数[r,p,k]F= residue(b,a,对两个多项式的比进行部分分式展开,如 Q(s)a (1.3) 向量b,a以s的降幂顺序排列多项式的系数。部分分式展开后余数送入列向量r,极点 送入列向量p,常数项送入k 例1.9对F(s)进行部分分式展开
8 z = 0 -6.0000 -5.0000 p = -3.0000 + 4.0000i -3.0000 - 4.0000i -2.0000 -1.0000 因而有 (s 1)(s 2)(s 3 j4)(s 3 j4) s(s 5)(s 6) H(s) 函数 zp2tf 根据给定零点,极点和增益求传递函数。 例 1.8 系统的零点为-6,-5,0,极点为-3±j4,-2,-1,增益为 1。求其传递函数。 >> z=[-6;-5;0];k=1; >> i=sqrt(-1); >> p=[-3+4*i;-3-4*i;-2;-1]; >> [num, den]=zp2tf(z, p, k) 上面程序的结果为 num = 0 1 11 30 0 den = 1 9 45 87 50 因此,传递函数为 s 9s 45s 87s 50 s 11s 30s H(s) 4 3 2 3 2 1.2.3 部分分式展开 函数[r, p, k]=residue(b, a),对两个多项式的比进行部分分式展开,如 a s a s a s a b s b s b s b Q(s) P(s) 1 n 1 n 1 n n 1 0 m 1 m 1 m m (1.3) 向量 b, a 以 s 的降幂顺序排列多项式的系数。部分分式展开后余数送入列向量 r,极点 送入列向量 p,常数项送入 k。 例 1.9 对 F(s)进行部分分式展开