24小时热门版块排行榜    

查看: 2522  |  回复: 9

流毓1988

新虫 (初入文坛)

[求助] 增量式PIDmatlab仿真结果出不来,怎么回事呢??急急急....谢谢了..

%controler
clear all;
close all;

ts=0.001;
sys=tf(400,[1,50,0]);
dsys=c2d(sys,ts,'z');
dsys
num=[0 0.0001967 0.0001935 ];
den=[2 -1.951  0.9512];
%[mun,den]=tfdata(dsys,'v');
u_1=0.0;u_2=0.0;
y_1=0;y_2=0;
x(1)=0;x(2)=0;x(3)=0;
error_1=0;
error_2=0;
for k=1;1;1000
time(k)=k*ts;

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

du(k)=kp*x(1)+ki*x(2)+kd*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_2=u_1;u_1=u(k);
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');
xlable('time(s)');ylable('rin,yout');_________仿真结果是输入输出参数都为零,求各位大神解答,刚开始学习还有很多不足,谢谢了....
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sunshine819

金虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
在simulink里实现如何?把增量式PID控制器编成embedded function,这样至少可以保证模型是正确的,方便排查
日光之下皆覆辙 月光之下皆旧梦
2楼2013-12-05 16:42:00
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hubery.zhu

金虫 (正式写手)

【答案】应助回帖

★ ★ ★ ★ ★ ★ ★ ★ ★
感谢参与,应助指数 +1
xzhdty: 金币+1, 谢谢参与 2013-12-06 09:41:36
流毓1988: 金币+8, ★★★★★最佳答案, 我的金币不太多,还有一个人也给我说了,所以我也给点点,不好意思,回来我有金币,就给你补回来哈 2013-12-07 15:10:00
%controler
clear all;
close all;

ts=0.001;
sys=tf(400,[1,50,0]);
dsys=c2d(sys,ts,'z');
dsys
num=[0 0.0001967 0.0001935 ];
den=[2 -1.951  0.9512];
%[mun,den]=tfdata(dsys,'v');
u_1=0.0;u_2=0.0;
y_1=0;y_2=0;
x(1)=0;x(2)=2;x(3)=0;
error_1=0;
error_2=0;
for k=1:1:1000
time(k)=k*ts;

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

du(k)=kp*x(1)+ki*x(2)+kd*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_2=u_1;u_1=u(k);
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');
系统是震荡的,自己调一下参数
耐得住寂寞,抵的住诱惑,拥得了繁华!
3楼2013-12-05 18:31:48
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

流毓1988

新虫 (初入文坛)

引用回帖:
2楼: Originally posted by sunshine819 at 2013-12-05 16:42:00
在simulink里实现如何?把增量式PID控制器编成embedded function,这样至少可以保证模型是正确的,方便排查

已经在simulink中实现了,就是想看看,这个程序为什么不出来结果...
4楼2013-12-06 10:25:33
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

流毓1988

新虫 (初入文坛)

引用回帖:
3楼: Originally posted by hubery.zhu at 2013-12-05 18:31:48
%controler
clear all;
close all;

ts=0.001;
sys=tf(400,);
dsys=c2d(sys,ts,'z');
dsys
num=;
den=;
%=tfdata(dsys,'v');
u_1=0.0;u_2=0.0;
y_1=0;y_2=0;
x(1)=0;x(2)=2;x(3)=0;
error_1=0;
erro ...

是PID参数值的问题吗??还是采样时间的问题??这个程序我是在matlabR2010b中运行的,结果是程序可以运行,但是输出的图形是没有的,也就是说横纵坐标都为0.我想问一下我这个具体是哪的问题,谢谢....
5楼2013-12-06 10:31:58
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuchao0878

木虫 (小有名气)

【答案】应助回帖

感谢参与,应助指数 +1
%controler


ts=0.001;
sys=tf(400,[1,50,0]);
dsys=c2d(sys,ts,'z');
dsys;
num=[0 0.0001967 0.0001935 ];
den=[2 -1.951  0.9512];
%[mun,den]=tfdata(dsys,'v');
u_1=0.0;u_2=0.0;
y_1=0;y_2=0;
x(1)=0;x(2)=0;x(3)=0;
error_1=0;
error_2=0;
for k=1:1000
   
time(k)=k*ts;

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

du(k)=kp*x(1)+ki*x(2)+kd*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_2=u_1;u_1=u(k);
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');

LZ你试试这个可以吗
喵~
6楼2013-12-06 11:07:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

liuchao0878

木虫 (小有名气)

【答案】应助回帖

★ ★
流毓1988: 金币+2, ★★★很有帮助, 嗯嗯,我看到喽,谢谢哦... 2013-12-07 15:11:39
LZ你的错在于
for k=1;1;1000
你用了分号
要冒号才对
for k=1:1000
喵~
7楼2013-12-06 11:08:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hubery.zhu

金虫 (正式写手)

引用回帖:
5楼: Originally posted by 流毓1988 at 2013-12-06 10:31:58
是PID参数值的问题吗??还是采样时间的问题??这个程序我是在matlabR2010b中运行的,结果是程序可以运行,但是输出的图形是没有的,也就是说横纵坐标都为0.我想问一下我这个具体是哪的问题,谢谢.......

把我的程序运行一下就知道原因了
耐得住寂寞,抵的住诱惑,拥得了繁华!
8楼2013-12-06 13:13:09
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

流毓1988

新虫 (初入文坛)

引用回帖:
8楼: Originally posted by hubery.zhu at 2013-12-06 13:13:09
把我的程序运行一下就知道原因了...

嗯嗯,运行了,的确是对的。知道哪有问题了...谢谢哦!!
9楼2013-12-07 15:07:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dgtd

新虫 (初入文坛)

yout(k)=-den(2)*y_1+num(2)*u_5  这个式子是怎么来的 啊?谢谢
10楼2015-10-23 21:40:17
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 流毓1988 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[硕博家园] 售SCI文章,我:8O.5.5.1O.54,科目全,可十急 +3 0TEMgxdT1eIw 2026-11-09 4/200 2026-11-10 10:18 by YHiw1gou1Eda
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +3 zSbvVX9JFl9J 2026-11-09 5/250 2026-11-10 09:23 by 1yv6QACPoY1E
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 zSbvVX9JFl9J 2026-11-09 3/150 2026-11-10 01:40 by FChKX8meu1ds
[考博] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 zSbvVX9JFl9J 2026-11-09 4/200 2026-11-10 01:29 by FChKX8meu1ds
[文学芳草园] 厉娜 +3 张丹枫1991 2026-11-09 5/250 2026-11-09 16:53 by 张丹枫1991
[考博] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 kvewwGtKktqB 2026-11-04 12/600 2026-11-09 13:26 by Equinoxhua
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +5 5sJFDKp2kwuI 2026-11-06 16/800 2026-11-09 11:47 by GwrQVVR6Oenx
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 5sJFDKp2kwuI 2026-11-06 10/500 2026-11-09 08:00 by IhnEQauGmT3K
[考研] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +3 5sJFDKp2kwuI 2026-11-06 12/600 2026-11-09 06:32 by l48hFd8Nwae2
[公派出国] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 5sJFDKp2kwuI 2026-11-06 8/400 2026-11-09 00:14 by l48hFd8Nwae2
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 5sJFDKp2kwuI 2026-11-06 8/400 2026-11-08 23:01 by l48hFd8Nwae2
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +5 5sJFDKp2kwuI 2026-11-06 9/450 2026-11-08 22:46 by l48hFd8Nwae2
[教师之家] 延安大学回应“副教授留绝笔信”:确已离世,正核实举报内容 +3 yexuqing 2026-11-04 5/250 2026-11-07 13:22 by 苏东坡二世
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +5 ttH3f1oA6ace 2026-11-04 10/500 2026-11-06 16:12 by 5sJFDKp2kwuI
[公派出国] 售SCI一区文章,我:8.O.551.O.5.4,科目全,可伽急 +6 ttH3f1oA6ace 2026-11-04 12/600 2026-11-06 16:10 by 5sJFDKp2kwuI
[硕博家园] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +4 ttH3f1oA6ace 2026-11-04 11/550 2026-11-06 16:10 by 5sJFDKp2kwuI
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 kvewwGtKktqB 2026-11-04 14/700 2026-11-06 05:10 by qL1cU46YIdK0
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +6 kvewwGtKktqB 2026-11-04 16/800 2026-11-06 05:00 by qL1cU46YIdK0
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 ttH3f1oA6ace 2026-11-04 7/350 2026-11-06 02:13 by qL1cU46YIdK0
[硕博家园] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +4 hNpp4Y2CGvSC 2026-11-04 12/600 2026-11-06 01:53 by qL1cU46YIdK0
信息提示
请填处理意见