找回密码
 注册
LabVIEW+单片机学习套件全套教程资料下载[免费]LabVIEW论坛精华列表贴USB0816数据采集卡《LabVIEW宝典》
LabWindows/CVI论坛精华贴NET0816以太网数据采集卡RC0210远程设备授权系统 关闭关停锁定打开设备 户外分布式数据采集
NET1624低速高精度以太网数据采集卡WIFI0824SD无线WIFI网络数据采集卡脱机运行 SD存储 小尺寸微型 串口采集远程采集 安卓 手持移动采集 纪录仪
查看: 1371|回复: 4

求助:LabVIEW利用MATLAB script如何编写PID控制程序(P和PI的都行了)

[复制链接]
利物浦的小子 该用户已被删除
发表于 2009-5-2 16:37:50 | 显示全部楼层 |阅读模式
是做毕业设计,以下是我在MATLAB script节点里编的P和PI的控制(都是对的),传递函数也在图中。由于PID的编不来,所以网上找了
Function PI(PI的)
G=tf(1,[1,3,3,1]);
Kp=1;Ti=[0.7:0.1:1.5];
for i=1:length(Ti)
Gc=tf(Kp*[1,1/Ti(i)],[1,0]); G_c=feedback(G*Gc,1);
step(G_c),hold on
end
axis([0,20,0,2])

Function PID(PID的)
N=[100,1000,10000,1:10];
G=tf(1,[1,3,3,1]);
Kp=1;Ti=1;Td=1;
Gc=tf(Kp*[Ti*Td,Ti,1]/Ti,[1,0]);
G_c=feedback(G*Gc,1);step(G_c), hold on
for i=1:length(N)
mn=Kp*([Ti*Td,0,0]+conv([Ti,1],[Td/N(i),1]))/Ti;
cd=[Td/N(i),1,0]; Gc=tf(mn,cd);
G_c=feedback(G*Gc,1);
step(G_c)
end
axis([0,20,0,2])
我按照着这些,然后类比下,自己尝试编了下,但是运行错误,大家能否帮我看看,或者会的,自己曾今做的提点我一下,帮我下。

注:在编PI时,K取的是1;在编PID时,K取1,Ti取1,N取10

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?注册

×
利物浦的小子 该用户已被删除
 楼主| 发表于 2009-5-2 16:38:46 | 显示全部楼层
回复 顶

使用道具 举报

利物浦的小子 该用户已被删除
 楼主| 发表于 2009-5-2 17:53:57 | 显示全部楼层
最后一幅图中,我发现我自己弄错了,把K改为Td后可以运行了,但是波形不对
回复 顶

使用道具 举报

发表于 2009-5-2 19:16:42 | 显示全部楼层
可以查看下matlab的PID工具箱
回复 顶

使用道具 举报

zhuhaiyan 该用户已被删除
发表于 2009-6-27 20:13:13 | 显示全部楼层
朋友,这个程序怎么编啊,毕业论文比较重要
y=log(2+z(1)*x*y)+log(2+z(2)*x*y)+...+log(2+z(i)*x*y)+...+log(2+z(1000)*x*y),
其中,z(i)为已知的,x,y为变量,i从1到1000,
E-mail  yuxiyazhu@163.com
回复 顶

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|cpubbs论坛. ( 粤ICP备09171248号 )

GMT+8, 2026-9-29 14:19 , Processed in 0.042812 second(s), 13 queries , Gzip On, File On.

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表