计算机控制实验报告
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
《计算机控制技术仿真实验》
实验报告
姓名:
学号:
班级:
专业:电气工程及其自动化
学院:电气与工程信息学院
2019年11月30日
目录
实验1:数字PID控制器设计 (1)
一、任务描述 (1)
二、设计过程 (1)
2.1 创建画面 (1)
2.2 数据库组态 (2)
2.3 动画连接 (2)
2.4 脚本设计 (3)
三、运行结果分析 (6)
3.1 调试过程 (6)
3.2 运行结果 (7)
实验2:基于Smith预估器的纯滞后控制系统设计 (7)
一、任务描述 (7)
二、脚本修改 (7)
2.2 具有纯滞后补偿的数字控制器算法设计 (9)
三、运行结果分析 (12)
3.1 调试过程 (12)
3.2 运行结果 (13)
实验3:综合控制系统设计 (14)
一、任务描述 (14)
二、设计过程 (14)
2.1 创建画面 (14)
2.2设备组态 (14)
2.3 数据库组态 (15)
2.4 动画连接 (15)
三、运行结果分析 (16)
3.1 调试过程 (16)
3.2运行结果 (16)
实验1:数字PID控制器设计
一、任务描述
本实验创建一个液位调节阀控制的范例,主要目的是学习使用力控的脚本来完成自定义功能。
系统采用PI控制算法,对单容水箱液位进行控制,由于没有连接真实控制对象,所以使用仿真算法获得对象特性。
运行范例时,需要合上开关,打开出水阀门,然后设置值。这样才能看到变化。系统默认状态:开关关闭的,出口阀门打开的。
系统简介:一个锅炉热水系统,要求给水泵给锅炉供水,通过调节阀控制。水泵上有一个上水开关。同时锅炉向外供水,是一个自由开口。
控制要求:要求控制锅炉液位到一个指定的高度。
控制策略:使用Pl控制。
二、设计过程
2.1 创建画面
(1)图库的“罐”中找出一个合适的锅炉容器;在“管道”组中选择管道,在“阀门”中选择调节阀和出水阀门,在“泵”中选择一个水泵;
(2)在“开关”中选择一个电源开关;
(3)操作面板可以根据图库里的进行修改,或自己绘制一个,从工具箱中拖放一个实时趋势;
(4)制作画面需要显示的文本;
(5)PI控制器是自己制作的一个单元。首先绘制一个面板,插入垂直标尺线,插入黑色文本框。绘制两个色条,分别连接到标记PID_P和PID_I,绘制两个文本,分别连接到PID_P和PID_I。
选择所有这些图形,然后右击,选择“选择”菜单下“打成智能单元”。
完成界面如图1-1所示:
图1-1 液位调节阀控制画面图
2.2 数据库组态
在“中间变量”里定义如下内存变量:
图1-2 中间变量设置
2.3 动画连接
在界面上建立连接。
1) 游标,连接FV101变量,用于手动设置FV101,以便查看仿真系统是否
正常。
2) 为水泵开关,连接到PumpPower,控制水泵的开关。
3) 为两个流量计旁边的文本分别连接到FT101、FT102上。
4) 为出口阀门进行动画连接,双击出口阀门,在“阀门向导”里的“表达式”里填上点F101。
5) 溢出上面的长方形,设定“颜色相关动作”的“闪烁”,如图1-3设置:
2.4 脚本设计
2.4.1 仿真程序脚本
整个程序放在应用程序脚本中。启动时,设置各个参数的初始值,在进入程序中输入:
FT101=0;
FT102=0;
在运行期间,按照1000毫秒的周期运行。
对于调节阀,其整个开度从0到100所需要的时间为20秒,那么每步最大变动5。如果调节阀控制量为FV101,真实开度为FV101R,则在程序运行周期执行中输入:
IF FV101>FV101R THEN
FV101R=FV101R+5;
IF FV101R>FV101 THEN
FV101R=FV101;
ENDIF
ENDIF
IF FV101 FV101R=FV101R-5; IF FV101R>FV101 THEN FV101R=FV101; ENDIF ENDIF //系统流量特性的仿真程序如下:IF PumpPower==1 THEN FT101=FV101R; ELSE FT101=0; ENDIF //输出流量特性: IF F101==1 THEN FT102=10*Sqrt(LT101); ELSE FT102=0; ENDIF //锅炉液位高度特性 LT101=(FT101-FT102)/50+LT101; IF LT101<0 THEN LT101=0; ENDIF IF LT101>100 THEN OVER=1; LT101=100; ELSE OVER=0; ENDIF 运行范例,合上开关,打开出口阀门。然后通过游标设定调节阀的开度,可以看到各个流量在增加,液位不断按照指数上升,最终上升到一个稳定高度。此时输入流量等于输出流量。 2.4.2 PI控制算法 在这里使用DDC的控制算法,具体的控制算法的理论依据可以参考《过程控制》(金以慧主编,清华大学出版社,第197页)。 这里按照增量算法,PI调节器输出等于上一次输出加上本次增量,在“应用程序动作”—》“程序运行周期执行”中输入: e_k=SP-LT101; FV101=PID_P*e_k; IF FV101>100 THEN FV101=100; ENDIF //显示期间,按照1000毫秒的时间间隔,积分时间单位也是毫秒 IF PID_I==0 THEN PID_I==1; ENDIF FV101=FV101+PID_P*(SP-LT101-e_k)+1000/PID_I*(SP-LT101); IF FV101<0 THEN FV101=0; ENDIF IF FV101>100 THEN FV101=100; ENDIF e_k=SP-LT101;