(完整word版)离散系统数字PID控制仿真.pdf





《(完整word版)离散系统数字PID控制仿真.pdf》由会员分享,可在线阅读,更多相关《(完整word版)离散系统数字PID控制仿真.pdf(6页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、离散系统数字PID 控制仿真一、题目:用数字 PID 控制传递函数为 G(s)的被控对象:G(s)=523500/(s3+87.35*s2+10470*s)二、分析过程:1、对 G(s)进行离散化即进行Z变换得到 Z传递函数:G(Z)=(n1*z3+n2*z2+n3*z+n4)/(m1*z3+m2*z2+m3*z+m4)注:之所以为z 的三次式,这是通过matlab 进行 z 变换后,观察num,den 的数据得到 z 传递函数形式为 z 的三次式,若为其他次数 n,则相应有 n+1 项。2、分子分母除以 z 的最高次数即除以z 的 3 次得到:Y(z)/U(z)=(n1+n2*z-1+n3*
2、z*-2+n4*z-3)/(m1+m2*z-1+m3*z-2+m4*z-3)(m1+m2*z-1+m3*z-2+m4*z-3)Y(z)=(n1+n2*z-1+n3*z*-2+n4*z-3)*U(z)3、由 z 的位移定理 Ze(t-kt)=zk*E(z)逆变换得到差分方程:m1*y(k)+m2*y(k-1)+m3*y(k-2)+m4*y(k-3)=n1*u(k)+n2*u(k-1)+n3*u(k-2)+n4*u(k-3)通常 m1=1得:y(k)+m2*y(k-1)+m3*y(k-2)+m4*y(k-3)=n1*u(k)+n2*u(k-1)+n3*u(k-2)+n4*u(k-3)y(k)=-m
3、2*y(k-1)-m3*y(k-2)-m4*y(k-3)+n1*u(k)+n2*u(k-1)+n3*u(k-2)+n4*u(k-3)4、PID 编程实现P:y=Kp*I:D:由于是仿真采样此处为数字式故采样时间为1ms,时间很短,已经相当于微元化,所以可以按照以下程序实现PID控制:x(1)=error(k);%数字控制器的P编程实现数字式控制器需要采样已经微元化x(2)=(error(k)-error_1)/ts;%数字控制器的D 编程实现dtTyI1dtdTyDx(3)=error(k)*ts;%数字控制器的I 编程实现三、程序清单clear all;close all;ts=0.001;
4、%数字控制器的采样时间sys=tf(5.235e005,1,87.35,1.047e004,0);%写出控制对象的传递函数dsys=c2d(sys,ts,z);%被控对传递函数离散化num,den=tfdata(dsys,v);%离散化后的数据矩阵转化为Z 传函u_1=0.0;u_2=0.0;u_3=0.0;%初始化差分方程的初始值y_1=0.0;y_2=0.0;y_3=0.0;x=0,0,0;%PID 的三个变量并赋予初值error_1=0;%作为偏差的前一时刻的变量for k=1:1:1500 time(k)=k*ts;%设置输入信号类型和PID 参数S=2;if S=1 kp=0.50;
5、ki=0.001;kd=0.001;rin(k)=1;%Step Signal elseif S=2 kp=0.50;ki=0.001;kd=0.001;rin(k)=sign(sin(2*2*pi*k*ts);%Square Wave Signal elseif S=3 kp=1.5;ki=1.0;kd=0.01;%Sine Signal rin(k)=0.5*sin(2*2*pi*k*ts);end u(k)=kp*x(1)+kd*x(2)+ki*x(3);%PID 控制器输出,作为被控对象的输入if u(k)=10%限制控制器的输出u(k)=10;end if u(k)=10 u(k)=
6、10;end if u(k)=-10 u(k)=-10;end yout(k)=-den(2)*y_1-den(3)*y_2+num(2)*u_1+num(3)*u_2;error=rin(k)-yout(k);u_3=u_2;u_2=u_1;u_1=u(k);y_3=y_2;y_2=y_1;y_1=yout(k);x(1)=error-error_1;%Calculating P x(2)=error-2*error_1+error_2;%Calculating D x(3)=error;%Calculating I error_2=error_1;error_1=error;end plo
7、t(time,rin,b,time,yout,r);xlabel(time(s);ylabel(rin,yout);文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA
8、3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I
9、10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档
10、编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6S7I4R4V5 HY9R3D9V8Q10 ZA3C7B3I10S9文档编码:CF6
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 完整 word 离散系统 数字 PID 控制 仿真

限制150内