Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
 
 
主题工具 显示模式
旧 2009-10-19, 19:21   #1
kmbzj
初级会员
 
注册日期: 2009-10-16
帖子: 2
声望力: 0
kmbzj 正向着好的方向发展
默认 求助高手,运行报错,格式问题?

我从书上copy了一段增量式PID的仿真程序,如下,运行后报错 The input character is not valid in MATLAB statements or expre

我想可能是格式的错误,但是没有检查出来,盼望大家能够帮忙,歇歇了!


程序如下:
clear all;
close all;

ts=0.001;
sys=tf(50,[0.125,7,0]);
dsys=c2d(sys,ts,'z');
[num,den]=tfdata(dsys,'v');

u_1=0.0;u_2=0.0;u_3=0.0;
y_1=0;y_2=0;y_3=0;

x=[0,0,0]';

error_1=0;
error_2=0;
for k=1:1:1000
time(k)=k*ts;

rin(k)=1.0;
kp=10;
ki=0.10;
kd=15;

du(k)=kp*x(1)+kd*x(2)+ki*x(3);
u(k)=u_1+du(k);

if u(k)>=10
u(k)=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;
x(2)=error-2*error_1+error_2;
x(3)=error;

error_2=error_1;
error_1=error;
end
plot(time,rin,'b',time,yout,'r');
xlabel('time(s)');ylabel('rin,yout');
grid;
kmbzj 当前离线   回复时引用此帖
 


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 09:49


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.