计算机控制 实验报告.docx
- 文档编号:26685750
- 上传时间:2023-06-21
- 格式:DOCX
- 页数:14
- 大小:88.76KB
计算机控制 实验报告.docx
《计算机控制 实验报告.docx》由会员分享,可在线阅读,更多相关《计算机控制 实验报告.docx(14页珍藏版)》请在冰豆网上搜索。
计算机控制实验报告
计算机控制实验报告
班级:
自动化08级2班姓名:
学号08
实验一基于NI6008的数据采集
一、实验目的:
理解基本计算机控制系统的组成,学会使用MATLAB和NI6008进行数据采集。
二、实验设备:
计算机控制实验箱、NI6008数据通讯卡、Matlab软件、计算机
三、实验内容:
(1)使用计算机控制实验箱搭建二阶被控对象,并测试对象特性
(2)在Matlab中设计数字PID控制器,对上述对象进行控制
四、实验步骤:
(1)选择合适的电阻电容,参考如下电路结构图,在计算机控制实验箱上搭建二阶被控对象,使得其被控对象传递函数为
图1电路结构图
建议数值:
R1=200kΩ,R2=200kΩ,C1=1μF,R4=300kΩ,R5=500kΩ,C2=1μF.
(2)测试NI6008数据通讯卡,确保数据输入输出通道正常。
(如何测试?
)
将数据采集卡的输入通道AI0的—与输出通道AO0的GND连接,AI的+与AO0连接,给AO0一个电压(1V),观察AI0的输出是否是1V。
如果是,则数据采集卡正常,否则不正常。
(3)使用MATLAB和OPC通讯技术进行数据采集:
关于如何在Matlab中读写数据
da=opcda(‘localhost’,‘NIUSB-6008.Server’);%定义服务器
connect(da);%连接服务器
grp=addgroup(da);%添加OPC组
itmRead=additem(grp,‘Dev1/AI0’);%在组中添加数据项
itmWrite=additem(grp,'Dev1/AO0');%在组中添加数据项
r=read(itmRead);
y
(1)=r.Value;%读取数据项的值
Write(itmWrite,1);%向数据项中写值
disconnect(da);%断开服务器
关于定时器的问题
t=timer(‘TimerFcn’,@myread,‘Period’,0.5,‘ExecutionMode’,‘fixedRate’);%定义定时器
start(t)%打开定时器
out=timerfind;%寻找定时器
stop(out);%停止定时器
delete(out);%删除定时器
(4)编写程序,实现数据的定时采集和显示。
程序shiyan1.m
clearall
globalttkydagrpitmReadTsitmWriteux
x=0;
Ts=0.2;
u=0;
da=opcda('localhost','NIUSB-6008.Server');
connect(da);
grp=addgroup(da);
itmRead=additem(grp,'Dev1/AI0');
itmWrite=additem(grp,'Dev1/AO0');
r=read(itmRead);
y
(1)=r.Value;
%Write(itmWrite,1);
t=timer('TimerFcn',@myread,'Period',Ts,'ExecutionMode','fixedRate');
k=1;
start(t)
tt
(1)=0;
程序myread.m
functionmyread(obj,event)
globalttkydagrpitmReadTsitmWriteKpeduTiuTdx
r=read(itmRead);
k=k+1;
tt(k)=(k-1)*Ts;
y(k)=r.Value;
%pid控制程序(增量式)
e
(1)=0;e
(2)=0;
Ti=0.9;
Kp=1;Td=0.05;%积分时间、比例系数、微分时间
e(k+2)=y(k)-1;
du=Kp*e(k+2)*Ts/Ti+Kp*(e(k+2)-e(k+1))+Kp*Td*(e(k+2)-2*e(k+1)+e(k))/Ts;
u=u-du;
Write(itmWrite,u);
plot(tt,y)
ifk>30/Ts%30s后结束
Write(itmWrite,0);%实验结束后令采集卡输出为0.
out=timerfind;
stop(out);
delete(out);
disconnect(da);
end
5、数据记录
图2阶跃响应测试曲线
图3kp=1,Ti=0.9,Td=0.05时的PID控制曲线
计算机控制实验报告
班级:
自动化08级2班姓名:
学号08
实验二数字PID算法的实现
一、实验目的
熟悉PID控制器,实现PID算法,深入了解PID参数对系统控制效果的影响
2、实验设备
计算机控制实验箱、NI6008数据通讯卡、Matlab软件、计算机
三、实验内容:
(1)在实验一基础上编制PID数字控制器,实现闭环控制。
程序shiyan1.m
clearall
globalttkydagrpitmReadTsitmWriteux
x=0;
Ts=0.2;
u=0;
da=opcda('localhost','NIUSB-6008.Server');
connect(da);
grp=addgroup(da);
itmRead=additem(grp,'Dev1/AI0');
itmWrite=additem(grp,'Dev1/AO0');
r=read(itmRead);
y
(1)=r.Value;
%Write(itmWrite,1);
t=timer('TimerFcn',@myread,'Period',Ts,'ExecutionMode','fixedRate');
k=1;
start(t)
tt
(1)=0;
程序myread.m
functionmyread(obj,event)
globalttkydagrpitmReadTsitmWriteKpeduTiuTdx
r=read(itmRead);
k=k+1;
tt(k)=(k-1)*Ts;
y(k)=r.Value;
%pid控制程序(增量式)
e
(1)=0;e
(2)=0;
Ti=0.9;
Kp=1;Td=0.05;%积分时间、比例系数、微分时间
e(k+2)=y(k)-1;
du=Kp*e(k+2)*Ts/Ti+Kp*(e(k+2)-e(k+1))+Kp*Td*(e(k+2)-2*e(k+1)+e(k))/Ts;
u=u-du;
Write(itmWrite,u);
plot(tt,y)
ifk>30/Ts%30s后结束
Write(itmWrite,0);%实验结束后令采集卡输出为0.
out=timerfind;
stop(out);
delete(out);
disconnect(da);
end
(2)进行PID参数的整定分析:
a)取消积分和微分作用,分析比例系数数对系统控制性能的影响
b)保持比例系数不变,分析积分作用对系统控制性能的影响
c)保持比例系数和积分时间不变,分析微分作用对控制系统性能的影响
d)运用所学的PID参数整定方法,确定一组控制性能良好的PID参数
4、实验数据
1.纯比例作用
图1kp=0.5
图2kp=1
图3kp=1.5图4kp=2
图5kp=3
表1被控对象加纯比例控制性能指标
Kp
超调量%
调节时间
稳态误差
0.5
9.97
2.2
0.5398
1
27.6
3
0.3716
1.5
37.8
3.8
0.2849
2
50.3
4.4
0.2288
3
震荡
2.比例积分作用(kp=1保持不变)
图6Ti=0.5图7Ti=0.8
图8Ti=0.9图9Ti=2
图10Ti=5图11Ti=10
图12Ti=0.01
表2被控对象加比例积分控制性能指标
Ti(Kp=1)
超调量%
调节时间
稳态误差
0.5
43.2
2.0
0.001
0.8
18.8
2.1
0.001
0.9
1.23
2.2
0.001
2
0
6.2
0.001
5
0
16.8
0.001
10
0
50.2
0.001
0.01
震荡
3.比例积分微分作用(kp=1,Ti=0.9保持不变)
图13Td=0.01图14Td=0.05
图15Td=0.1图16Td=0.5
图17Td=1
表3被控对象加比例积分微分控制性能指标
Td(Kp=1、Ti=0.9)
超调量%
调节时间
稳态误差
0.01
11.2
2.2
0.001
0.05
10.6
2
0.001
0.1
3.5
1.8
0.001
0.5
震荡
1
震荡
4.误差分析
图18kp=1时实验曲线(左)与理论曲线(右)比较
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 计算机控制 实验报告 实验 报告