第一篇:水槽液位控制系统课程设计报告
摘要
本文根据液位系统过程机理,建立了单容水箱的数学模型。在设计中用到的PID算法提到得较多,PLC方面的知识较少。并根据算法的比较选择了增量式PID算法。建立了PID液位控制模拟界面和算法程序,进行了系统仿真,并通过整定PID参数,同时得出了整定后的仿真曲线和实际曲线。主要内容包括:PLC的产生和定义、过程控制的发展、水箱的特性确定与实验曲线分析,FX2系列可编程控制器的硬件掌握,PID参数的整定及各个参数的控制性能的比较,应用PID控制算法所得到的实验曲线分析,整个系统各个部分的介绍和讲解PLC的过程控制指令PID指令来控制水箱水位。PLC在工业自动化中应用的十分广泛。PID控制经过很长时间的发展,已经成为工业中重要的控制手段。本设计就是基于PLC的PID算法对液位进行控制。PLC经传感电路进行液位高度的采集,然后经过自动调节方式来确定完PID参数后,通过控制直流泵的工作时间来实现液位的控制。PID处理一般是运行专用的PID子程序。过程控制在冶金、化工、热处理、锅炉控制等场合有非常广泛的应用。本次设计主要内容是利用提供的被控对象单容水槽和相关仪器仪表,设计液位控制系统,利用组态王软件编写控制算法实现控制系统的上位机监控。
关键词:组态王,液位控制,PID算法,过程控制
一、设计任务...............................................................................3
二、实验目的...............................................................................3
三、实验方案...............................................................................3
四、实验过程...............................................................................4 实验总结......................................................................................17 参考文献......................................................................................18 附录..............................................................................................19
一、设计任务:
(1)液位监控:完成一个液位监控系统,要有流程图画面,报警画面,历史曲线、实时曲线、报表等个画面键可以灵活切换。
(2)通过组态软件,结合实验已有设备,按照定值系统的控制要求,根据较快较稳的性能要求,采用但闭环控制结构和PID控制规律,设计一个具有美观组态画面和较完善组态控制程序的液位单回路过程控制系统。
设计要求
(1)根据液位单回路过程控制系统的具体对象和控制要求,独立设计控制方案,正确选用过程仪表。
(2)运用组态软件,正确设计液位但回路过程控制系统的组态图、组态画面和组态控制程序。
二、实验目的:
(1)能根据具体对象及控制要求,独立设计控制方案,正确选用过程仪表。(2)能够根据过程控制系统A/D、D/A和开关I/O的需要,正确选用模块。(3)能根据与计算机串行通讯的需要,正确选用RS485/RS232转换与通讯模块。(4)能运用组态软件,正确设计过程控制系统的组态图、组态画面和组态控制程序。(5)控制要求超调量小于等于4%,峰值时间不超过30s。调节时间越短越好。
三、实验方案:
整个过程控制系统由控制器、调节器、测量变送、被控对象组成。在本次控制系统中控制器为计算机,采用算法为PID控制规律,调节器为电磁阀,测量变送为HB、FT两个组成,被控对象为流量PV。结构组成如下图2.2所示。
当系统启动后,水泵开始抽水,通过管道将水送到上水箱,由HB返回信号,是否还需要抽水到水箱。若还需要(即水位过低),则通过电磁阀控制 流量的大小,加大流量,从而使下水箱水位达到合适位置;若不需要(即水位过高或刚好合适),则通过电磁阀使流量保持或减小。其整个流程图如图2.1所示。
图2.1 液位单回路控制系统图
过程控制系统由四大部分组成,分别为控制器、调节器、被控对象、测量变送。本次设计为流量回路控制,即为闭环控制系统,如下图2.2.SP_PV1计算机控制器电动调节阀PV管道流量检测传感器
图2.2 液位单回路控制系统框图
四、实验过程:
• 在组态王中,我们所建立的每一个组态称为一个工程。每个工程反映到操作系统中 是一个包括多个文件的文件夹。工程的建立则通过工程管理器。
• 点击“开始”---〉“程序”---〉“组态王6.5*”---〉“组态王6.5*”(或直接双击桌面上组态王的快捷方式),启动后的工程管理窗口
• 搜索:单击此快捷键,在弹出的“浏览文件夹”对话框中选择某一驱动器或某一文件夹,系统将搜索指定目录下的组态王工程,并将搜索完毕的工程显示在工程列表区中。• 删除 :在工程列表区中选择任一工程后,单击此快捷键删除选中的工程。• 属性: 在工程列表区中选择任一工程后,单击此快捷键弹出工程属性对话框,可在工程属性窗口中查看并修改工程属性。备份工程备份是在需要保留工程文件的时候,把组态王工程压缩成组态王自己的“.cmp”文件。• 第一步:创建新工程
• 第二步:定义硬件设备并添加工程变量。添加工程中需要的硬件设备和工程中使用的变量.包括内存变量和I/O 变量 • 第三步:制作图形画面并定义动画连接
• 按照实际工程的要求绘制监控画面并使静态画面随着过程控制对象产生动态效果。• 第四步:编写命令语言。通过脚本程序的编写以完成较复杂的操作上位控制。• 第五步:进行运行系统的配置。对运行系统、报警、历史数据记录、网络、用户等进行设置,是系统完成用于现场前的必备工作。
• 第六步:保存工程并运行完成以上步骤后,一个可以拿到现场运行的工程就制作完成了。
1水泵的动画连接及其程序编写
2水管的动画连
3启动按键的定义
4停止按键的定义
5历史曲线的按键定义
6实时曲线的定义
7报警按键定义 命令语言
• 组态王除了在定义动画连接时支持连接表达式,还允许用户编写命令语言来扩展应用程序的功能,极大地增强了应用程序的可用性。
• 命令语言的句法和C语言非常类似,可以说是C的一个简化子集,具有完备的词法语法查错功能和丰富的运算符、数学函数、字符串函数、控件函数、SQL 函数和系统函数。命令语言分类
• 应用程序命令语言:可以在程序启动时、关闭时或在程序运行期间周期执行。如果希望周期执行,还需要指定时间间隔。
• 热键命令语言:被链接到设计者指定的热键上,软件运行期间,操作者随时按下热键都可以启动这段命令语言程序。
• 事件命令语言:规定在事件发生、存在、消失时分别执行的程序。
• 数据改变命令语言:只链接到变量或变量的域。在变量或变量的域值变化到超出数据字典中所定 义的变化灵敏度时,它们就被触发执行一次。
• 还有自定义函数命令语言,画面、按钮命令语言 实现画面切换功能
• 利用系统提供的“菜单”工具和ShowPicture()函数能够实现在主画面中切换到其他任一画面的功能• ShowPicture(“3实时曲线”);趋势曲线 • 趋势曲线用来反应变量随时间的变化情况.趋势曲线有两种:实时趋势曲线和历史趋势曲线。
应用程序
if(本站点开关转换==1){本站点Ti=8;本站点Kp=15;本站点Td=10;if(本站点电机==1 &&本站点开关==0){本站点ek0=本站点Sp-本站点水箱液位;本站点微分液位差=本站点ek0+本站点ek2-2*本站点ek1;本站点Uk=(本站点Ti*(本站点ek0-本站点ek1)+本站点Kp*本站点 ek0+本站点Td*本站点微分液位差)/500;本站点水箱液位=本站点水箱液位+本站点Uk;本站点液位传递值=本站点ek1;本站点ek1=本站点ek0;本站点ek2=本站点液位传递值;本站点储水箱液位=300-本站点水箱液位;} if(本站点电机==1 &&本站点开关==1){本站点ek0=本站点Sp-本站点水箱液位;本站点微分液位差=本站点ek0+本站点ek2-2*本站点ek1;本站点Uk=(本站点Ti*(本站点ek0-本站点ek1)+本站点Kp*本站点ek0+本站点Td*本站点微分液位差)/500+本站点水流;本站点水箱液位=本站点水箱液位+本站点Uk-本站点水流;本站点液位传递值=本站点ek1;本站点ek1=本站点ek0;本站点ek2=本站点液位传递值;本站点水流=本站点水箱液位/100;本站点储水箱液位=300-本站点水箱液位;} if(本站点电机==0 &&本站点开关==1){本站点水流=本站点水箱液位/100;本站点水箱液位=本站点水箱液位-本站点水流;本站点储水箱液位=300-本站点水箱液位;if(本站点水箱液位<1)本站点水流=0;}} if(本站点开关转换==0){if(本站点电机==1 &&本站点开关==0){本站点ek0=本站点Sp-本站点水箱液位;本站点微分液位差=本站点ek0+本站点ek2-2*本站点ek1;本站点Uk=(本站点Ti*(本站点ek0-本站点ek1)+本站点Kp*本站点ek0+本站点Td*本站点微分液位差)/500;本站点水箱液位=本站点水箱液位+本站点Uk;本站点液位传递值=本站点ek1;本站点ek1=本站点ek0;本站点ek2=本站点液位传递值;本站点储水箱液位=300-本站点水箱液位;} if(本站点电机==1 &&本站点开关==1){本站点ek0=本站点Sp-本站点水箱液位;本站点微分液位差=本站点ek0+本站点ek2-2*本站点ek1;本站点Uk=(本站点Ti*(本站点ek0-本站点ek1)+本站点Kp*本站点ek0+本站点Td*本站点微分液位差)/500+本站点水流;本站点水箱液位=本站点水箱液位+本站点Uk-本站点水流;本站点液位传递值=本站点ek1;本站点ek1=本站点ek0;本站点ek2=本站点液位传递值;本站点水流=本站点水箱液位/100;本站点储水箱液位=300-本站点水箱液位;} if(本站点电机==0 &&本站点开关==1){本站点水流=本站点水箱液位/100;本站点水箱液位=本站点水箱液位-本站点水流;本站点储水箱液位=300-本站点水箱液位;if(本站点水箱液位<1)本站点水流=0;}} if(本站点Uk<=1)本站点uk=本站点Uk*100;else 本站点uk=100;if(本站点电机==0)本站点Uk=0;if(本站点水箱液位>本站点Sp)本站点水箱液位=本站点水箱液位-本站点水流;实验总结
通过此次设计,我掌握了流量单回路控制系统的构成。知道它最基本的部分有控制器、调节器、被控对象和测量变松组成。
并且学会了如何去设计一个过程控制系统,掌握了基本的设计步骤。了解到,一般情况下,它都要经过一下几个步骤:认知被控对象、设计控制方案、选择控制规律、选择过程仪表、选择过程模块、设计系统流程图和组态图、设计组态画面、设计数据词典等,直到最后的动画链接成功,并达到控制要求。经过以上步骤,我对整个过程控制系统的设计有了很深的体会,也学会了很多与设计相关的知识。
对组态王软件也有了很大的了解,学会了初步的应用。认识到了组态王的一些应用情况,组态王软件的组成与功能,其应用程序项目如何建立,数据词典如何建立,动画如何进行链接,命令语言程序如何编写,趋势曲线如何建立,还有I/O设备的配置和组态网络的建立等等一系列与组态王软件应用相关的知识。
在这次课程设计中也遇到了不少麻烦,不过经过老师的辅导大部分问题都得到了解决,总的来说,这次设计是一次收获很大的设计,学到了很多教学中学不到的东西,对我的动手能力有了很大的帮助。同时也要感谢老师对我们这次课程设计的指导,让我们获益匪浅!
参考文献:
[1]邵裕森,戴先中.过程控制工程(第2版).北京:机械工业出版社.2003 [2]崔亚嵩.过程控制实验指导书(校内)
[3]廖常初.PLC编程及应用(第2版).北京:机械工业出版社.2007 [4]吴作明.工业组态软件与PLC应用技术.北京:北京航空航天大学出版社.20077.[5]求是教仪.过程控制实验装置实验指导书.杭州:浙江求是科教设备有限公司,2004 [6]邵裕森.过程控制工程.北京:机械工业出版社,2000 [7]俞全寿.过程自动化仪表.北京:化学工业出版社,2000
附录
第二篇:基于组态王的水箱液位控制系统a
水箱液位控制系统
1.引言
自动化软件在自动化产品的研发过程中有着举足重轻的地位,尤其在科学技术飞速发展的今天,自动化软件的应用越来越受到人们的重视。本文采用的自动化软件是北京亚控公司出品的组态王6.51,本文利用组态王强大的组态功能和友好的人机界面实现了对供水系统中水塔和储水箱的实时监控,并且具有一定的工程应用价值。
2.系统需求分析及其方法论证
2.1系统需求分析
为了保证系统所需用水的供给,供水系统必须能够及时的对各种用水对象进行供水。这就要求水塔和储水箱的水位不能低于一定的下限以免断水对人们的正常生活所带来的影响,同时水塔和储水箱的水位又不能高于一定的上限,从而使得水资源可以合理的分配利用。如果使用组态王来实现软硬结合的控制,将会给系统的各性能带来良好的提升。
2.2系统方案论证
整个供水系统可以抽象为水塔和主水箱两个容器的液位控制。水塔的水来自地下水,主水箱的液位由水塔的水泵和主水箱的出水阀门综合决定。各种工业用水和生活用水可以用其对应的储水箱的出水管道代替。这样系统就组态好了。
系统通过智能模块将液位的检测量采集到组态王对应变量中,由组态王统一管理给出系统各部分运行趋势、报表及报警事件,并通过与给定的液位设定比较来控制入水量,从而使液位保持在一定的范围之内。
本系统假定主水箱满液位为100,而水塔容量相对于主水箱来说应该大很多,为了明显起见,我们选水塔容量为500.当水塔液位低于100时水塔进水,主水箱液位低于20时水塔自动供水,高于90时供水关闭。由于工业用水和生活用水的需求相差比较大,所以给他们设定了不同的流速,并且它们的使用时随机的,顾没有对两储水罐的出水阀进行自动控制。应运程序代码如下: if(本站点泵==1){本站点控制水流=8;
本站点水塔=本站点水塔-8;本站点主水箱= 本站点主水箱+8;} else
{本站点控制水流=0;本站点水塔=本站点水塔;本站点主水箱= 本站点主水箱;}
if(本站点阀门1==1){本站点控制水流1=5;
本站点主水箱= 本站点主水箱-5;} else
本站点控制水流1=0;if(本站点主水箱>90)
本站点泵=0;if(本站点主水箱<20){本站点泵=1;本站点控制水流=8;
本站点水塔=本站点水塔-8;本站点主水箱= 本站点主水箱+8;}
if(本站点水塔<100){本站点水泵1=1;本站点控制水流2=10;本站点水塔=本站点水塔+50;}
if(本站点水泵1==1){本站点控制水流2=10;本站点水塔=本站点水塔+50;}
if(本站点水塔>450){本站点水泵1=0;本站点控制水流2=0;本站点水塔=本站点水塔;} 3.系统监控界面设计
3.1监控中心画面
监控画面包括了供水系统各功能块的组态和一些相关仪表的显示以及操作相关的按钮等。操作人员通过主控按钮可以很方便的对系统进行查看和管理。
图1.监控中心画面 3.2报警系统画面的建立
水塔和主水箱都设置了报警,其中主水箱低报警值是20,高报警值是90,高高报警值是100。水塔只有一个低液位150报警。在系统运行过程中,可以随时查看报警记录。报警窗口如图2所示:
图2.报警系统画面
3.3趋势曲线的建立
趋势曲线用来反映数据变量随时间的变化情况,趋势曲线有两种:实时趋势曲线和历史趋势曲线。在画面程序运行时,实时趋势曲线随时间变化自动卷动,以快速反应变量的新变化。时间轴不能回卷,不能查阅变量的历史数据。历史曲线可以完成历史数据的查看工作,但它不会自动卷动,而需要通过带有命令语言的功能按钮来辅助实现查阅功能。本系统的实时曲线和历史曲线分别如下所示:
3.4数据报表及其打印保存
在报表画面中可以实时查看各参数变化情况,操作人员可以通过打印预览和打印按钮来打印报表,同时报表具有实时保存数据的功能,保存文件的名称为保存数据时的时间值,本系统的数据文件保存在当前工程目录下,文件格式为Excel。所用到的代码为:
string filename;
filename=InfoAppDir()+“实时数据文件”+
StrFromReal(本站点$年, 0, “f”)+ StrFromReal(本站点$月, 0, “f”)+ StrFromReal(本站点$日, 0, “f”)+ StrFromReal(本站点$时, 0, “f”)+ StrFromReal(本站点$分, 0, “f”)+ StrFromReal(本站点$秒, 0, “f”)+
“.xls”;
ReportSaveAs(“数据报表”,FileName);
数据报表界面如图5所示:
3.5数据词典设计
在数据词典中可以定义变量,以便与画面相关联。这些变量包括I/O变量和内存变量等。本系统的数据词典部分变量如图7所示
图7.数据词典
4.心得体会
经过事先对组态王的一些书面和视频资料的学习和了解,我对组态王的设计方法有了初步的认识,这对我以后的系统设计中起了很大的作用。刚开始设计系统时遇到了一些问题,比如水管流动,液位控制,程序的修改以及按钮的设计等,但在我的学习和修改中这些问题都被一一解决了,有些部分还得到了很好的改进,我想这个水箱液位控制系统应该完善了很多。从组态王软件设计中我学到了很多,学到了图形的建立,程序的设计,模块化的修改和定义语言,我相信这次实训会给我以后的学习中带来很大的收获。
第三篇:加油站液位仪
加油站液位仪—青岛海工智能科技
有限公司
青岛海工智能科技有限公司是专业的加油站液位仪供应商,其自主开发的海工加油站智能管理系统,由液位探针、终端控制台、网络等组成,经管理软件,实现加油站油罐的液位安全监控和计量,是一种安全环保的智能管理系统.探针特点: 安全:该产品采用本安型设计,已通过国家PCEC认证中心EXia II BT4级防爆认证; 精确:产品采用磁致伸缩原理进行高速数字化设计,通过国际高精度的自动标定系统进行标定,使液位测量精度达到±0.5mm;
稳定:采用数字化数据采集,通过EIA-485协议与控制台进行数据交换,抗干扰能力更强,数据采集量更精准、更快捷;
环境温度(-40℃-70℃)影响测量误差<0.2mm,高速:单罐巡检速度1.5秒钟;
耐用:采用无缝不锈钢管全封闭设计,耐油、耐老化,寿命更长。
控制台:
一、产品简介
1.1 概述:
MC-10触摸式控制台是为加油站、油库油罐液位自动计量系统而专门设计的自动化产品。可24小时实时监控1~8个油罐的油高、水高、温度、体积等基础参数,用图形和比例的方式动态显示油位和水位的动态变化;自动实现高低液位报警、温度高低报警;支持人工卸油、交接班、容积表导入导出、各种记录查询;协议开放,数据上传至中控系统,支持数据网络上传至管理中心;真正做到油品的进销存自动化管理,成为用户油品精细化管理的好帮手!
MC-10触摸控制台实现人机界面人性化操作,采用全中文的操作界面,界面操作灵活简捷,按照使用说明手册的操作步骤轻松实现油品的自动化管理。
1.2主要指标:
◇外形尺寸(长×宽×高):280×230×120(mm)◇供电电压:交流 120V~260V 50Hz ◇工作环境温度:-20℃~+60℃ ◇液晶屏尺寸:5英寸 ◇显示方式:中文+图形 ◇监控油罐数量:1~8个 ◇数据传输:RS-232 ◇报警灯:红色为电源指示灯,上电后常亮;蓝色为报警指示灯,只有报警时才点亮。1.3环境要求: ◇安装场所必须为办公安全区内;
◇室内壁挂式安装,远离火源、气源等危险隐患; ◇保证电源接地良好。
二、软件操作
2.1软件功能: MC-10触摸式控制台实现人机中文界面操作,管理功能更加人性化、合理化,其主要功能如下:
◇探针的通讯线缆直接连接到控制台,可实时巡检1-8个油罐的基础测量参数; ◇中文界面、动态图文显示,实时监测油罐的油高、水高、温度和体积;
◇当液位、温度达到设定的报警参数时,控制台发出声光报警,为用户及时提供报警数据; ◇预设卸油高度预警,防止溢油,预设水高预警,防止带水付油。
◇权限管理:加油站值班人员可查看动态罐存信息;管理人员可设置油罐管理参数,查看各种信息和数据管理;维护人员可进行系统参数设置和维护。◇参数设置:设置油罐参数、进油参数和其它管理参数。
◇多罐自动监测:可同时监测1—8个油罐的参数并实时读取;
◇自动计量功能:实时显示油罐的油位、水位、温度,罐存量,实现人工卸油。用图形和比例的方式动态的显示油位和水位的变化;
◇容积表编辑:计算机编辑的容积表可自动导入,具有罐容表导入、导出、备份功能; ◇报警功能:油位高低报警,油位高低预警,水位高报警,油温高低报警。
查询各种报警。
◇记录和查询:库存记录,进油记录,各种报警记录,交接班记录 ◇板载1个RS-232串行通讯端口,数据上传至中控系统或电脑系统; ◇预留网络接口,具备网络上传功能,实现油品进、销、存数据上传;
◇网络上传功能,通过宽带、电话方式直接进入网络系统,实现数据上传。为加油站和石油公司的进、销、存管理提供方便条件。◇软件升级方便,通过联网升级或U盘升级。
地址:青岛市鞍山一路88号 电话:0532-83721160 手机:*** http://www.xiexiebang.com
第四篇:过程控制系统课程设计报告(封皮)
题目:
过程控制系统课程设计报告S7-300PLC与200PLC主-从站的单回 流量过程控制系统设计姓名:班级:自09A-2学号: 同组人:时间:2012年11月 地点:过程控制系统实验室 指导老师:
目录
1.概述····························································1
2.S7-300PLC与200PLC主-从站单回路流量过程控制系统硬件设计方案····2
2.1主-从站单回路流量过程控制系统硬件组成原理····················2
2.2主-从站单回路流量过程控制系统硬件电气接线图设计··············3
3.S7-300PLC与200PLC主-从站单回路流量过程控制系统闭环系统控制设计·4
3.1主-从站单回路流量过程控制系统闭环控制原理····················4
3.2主-从站单回路流量过程控制系统PLC硬件组态论述················4
3.3主-从站单回路流量过程控制系统控制程序流程图论述··············5
3.4主-从站单回路流量过程控制系统控制程序功能实现················6
4.S7-300PLC与200PLC主-从站单回路流量过程控制系统上位监控系统设计·8
4.1主-从站单回路流量过程控制系统建立通讯························8
4.2主-从站单回路流量过程控制系统变量数据词典建立················8
4.3主-从站单回路流量过程控制系统工艺图形主画面组态··············9
4.4主-从站单回路流量过程控制系统历史趋势组态···················10
4.5主-从站单回路流量过程控制系统实时趋势组态···················10
4.6主-从站单回路流量过程控制系统数据报表组态···················11
5.S7-300PLC与200PLC主-从站单回路流量过控系统系统调试及结果分析·12
5.1主-从站单回路流量过程控制系统系统调试中解决的问题···········12
5.2主-从站单回路流量过程控制系统结果分析与总结·················12
结束语····························································12
附录:带功能注释的源程序··········································13
第五篇:控制系统仿真与CAD课程设计报告..
控制系统仿真与课程设计
学
院:物流工程学院 专
业:测控技术与仪器 班
级:测控102 姓
名:杨红霞 学
号:201010233037 指导教师:兰莹
完成日期:2013年7月4日CAD
一、目的和任务
配合《控制系统仿真与CAD》课程的理论教学,通过课程设计教学环节,使学生掌握当前流行的演算式MATLAB语言的基本知识,学会运用MATLAB语言进行控制系统仿真和辅助设计的基本技能,有效地提高学生实验动手能力。
一、基本要求:
1、利用MATLAB提供的基本工具,灵活地编制和开发程序,开创新的应用;
2、熟练地掌握各种模型之间的转换,系统的时域、频域分析及根轨迹绘制;
3、熟练运用SIMULINK对系统进行仿真;
4、掌握PID控制器参数的设计。
二、设计要求
1、编制相应的程序,并绘制相应的曲线;
2、对设计结果进行分析;
3、撰写和打印设计报告(包括程序、结果分析、仿真结构框图、结果曲线)。
三、设计课题
设计一:二阶弹簧—阻尼系统的PID控制器设计及其参数整定
考虑弹簧-阻尼系统如图1所示,其被控对象为二阶环节,传递函数G(S)如下,参数为M=1kg,b=2N.s/m,k=25N/m,F(S)=1。设计要求:
(1)控制器为P控制器时,改变比例系数大小,分析其对系统性能的影响并绘制相应曲线。
(2)控制器为PI控制器时,改变积分时间常数大小,分析其对系统性能的影响并绘制相应曲线。(例如当kp=50时,改变积分时间常数)(3)设计PID控制器,选定合适的控制器参数,使闭环系统阶跃响应曲线的超调量σ%<20%,过渡过程时间Ts<2s, 并绘制相应曲线。
图1 弹簧-阻尼系统示意图
弹簧-阻尼系统的微分方程和传递函数为:
bxkxF MxG(s)X(s)11 F(s)Ms2bsks22s25
图2 闭环控制系统结构图
附:P控制器的传递函数为:GP(s)KP
PI控制器的传递函数为:GPI(s)KP11 TIsPID控制器的传递函数为:GPID(s)KP11TDs TIs
(一)设计P控制器,改变比例系数大小,分析其对系统性能的影响并绘制相应曲线。以下为所做的设计以及运行结果,KP取了不同的值,通过运用sim函数进行仿真,并得出超调量MP,过渡过程时间Ts的大小,通过分析所得出的结果,多次改变KP的大小直到符合题目的要求,使稳态误差等都达到要求。
1、仿真运行程序
for Kp=[200,400,800] t=[0:0.01:6];
[t,x,y]=sim('yhx',6);hold on plot(t,y);N=length(t);
yss=y(N);%yss:稳态值 hold on
[ymax,i]=max(y);
mp=(ymax-yss)*100/yss, %计算超调量mp i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end
Ts=t(i), %计算过渡过程时间 gtext(num2str(Kp));end
2、仿真框图
KpStepGain12s +2s+25Transfer FcnScope1Out1
3、仿真运行结果
改变比例系数kp大小,得如下结果,通过以下数据以及得出的曲线可分析其对系统性能的影响 Kp=200
mp =
75.3359 Ts =
3.7962
Kp=400
mp =
84.7526 Ts =
3.8317 Kp=800
mp =
88.0528 Ts =
4.5685
4、仿真运行曲线
21.81.61.48001.214000.82000.60.40.200123456
5、运行结果分析
根据实验要求设计了一个P控制器,与Gs等构成闭环控制系统结构。由以上的运行结果以及曲线可以看出随Kp增大,超调量mp是逐渐变大的,Ti也是逐渐变大的,而且总是达不到稳态误差很小很小,因此得出以下结论:随着Kp值的增大,系统的超调量变大,调节时间变长,振荡次数也增多了。Kp值越大,系统的稳态误差就越小,调节应精度越高,但是系统的波动明显变多了,稳定性变差,但是系统响应变快了。随着比例系数女kp的增大并不能消除稳态误差,只能减小稳态误差。(二)设计PI控制器,改变积分时间常数大小,分析其对系统性能的影响并绘制相应曲线。以下为设计出的仿真程序等,运用sim函数进行仿真,编写程序使KP=50,改变KI的大小,来进行分析,直到符合题目的要求,使运行出的结果稳态误差基本很小即可,如果达不到,就要重新设定KI的大小,进行多次试验,选出如下符合要求的KI的值,程序中都有所体现。
1、仿真运行程序
for Ki=[30,50,80] t=[0:0.01:10];
[t,x,y]=sim('yhxx',10);hold on plot(t,y);
N=length(t);%yss:稳态值 yss=y(N);hold on [ymax,i]=max(y);
mp=(ymax-yss)*100/yss, %计算超调量mp i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end
Ts=t(i),%计算过渡过程时间 end
2、仿真框图
50Kp1KiStepKi1sIntegrator2s +2s+25AddTransfer FcnScope1Out1
3、仿真运行结果
当Kp=50时, 改变积分时间常数ki的大小,由以下的结果以及曲线可分析其对系统性能的影响 ki=30
mp =
21.4633 Ts =
6.5686 Ki=50
mp =
26.7424 Ts =
5.1127 Ki=80
mp =
31.0229 Ts =
7.3375
4、仿真运行曲线:
1.41.280501300.80.60.40.20012345678910
5、运行结果分析
Kp=50时,随着ki值的增大,系统的超调量变大,系统响应时间出现了波动。ki越大,积分速度越快,积分作用就越强,响应时间变快,但系统振荡次数就较多。PI控制可以消除系统的稳态误差,提高系统的误差度。在积分控制中,控制器的输出与输入误差信号的积分成正比关系。为了消除稳态误差,在控制器中必须引入“积分项”。积分项对误差取决于时间的积分,随着时间的增加,积分项会增大。这样,即便误差很小,积分项也会随着时间的增加而加大,它推动控制器的输出增大使稳态误差进一步减小,直到等于零。因此,比例+积分(PI)控制器,可以使系统在进入稳态后基本无稳态误差。这是比上一个只有比例控制器的一个进步的地方。
(三)设计一PID控制器,选定合适的控制器参数,使闭环系统阶跃响应曲线的超调量σ%<20%,过渡过程时间Ts<2s, 并绘制相应曲线。以下为所设计的程序,仿真等,改变kp,ki,kd 的值得出闭环阶跃响应的超调量和过渡过程时间,通过多次试验,得到的kp取20,ki取65,kd取9时运行出的结果是满足题目要求的:
1、仿真运行程序
[t,x,y]=sim('yhxxx');plot(t,y);N=length(t);
yss=y(N);%yss:稳态值 [ymax,i]=max(y);
mp=(ymax-yss)*100/yss, %计算超调量mp i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end
Ts=t(i), %计算过渡过程时间
2、仿真框图
20Kp1y(s)65StepKi1sIntegratorAdd12s +2s+25Transfer FcnYTo Workspace9Kddu/dtDerivativeScope
3、仿真运行结果
经过多次试验,当Kp=20,ki=65,pd=9满足使闭环系统的阶跃响应曲线的超调量σ%<20%,过渡过程时间ts<2s,结果如下: mp =
1.1367
Ts =
0.8945 从结果可知超调量mp%<20%,过渡过程时间Ts<2s满足设计要求.4、仿真运行曲线:
1.41.210.80.60.40.20012345678910
5、运行结果分析及设计小结
把比例 微分 积分结合起来进行控制能够更好的达到我们想要的结果,PID参数的整定就是合理的选取PID三个参数。从系统的稳定性、响应速度、超调量和稳态误差等方面来考虑问题,每个参数都有自己的作用,比如比例调节的作用是能够成比例地反映系统的偏差信号,系统一旦出现了偏差,比例调节立即产生与其成比例的调节作用,以减小偏差。随着Kp增大,系统的稳态误差减小,但是系统容易产生超调,并且加大Kp只能减小稳态误差,却不能消除稳态误差,显著特点就是有差调节。然后就是微分调节的作用是消除系统的稳态误差,提高系统的误差度,它的特点就是误差调节。微分调节作用是改善系统的动态性能,可以减少超调,减少调节时间。总之比例积分微分控制作用是相互关联的,结合起来用效果会更好。设计二:二阶系统串联校正装置的设计与分析
设某被控系统的传递函数G(s)如下:
G(s)设计要求:
K
s(s2)选用合适的方法设计一个串联校正装置K(s),使闭环系统的阶跃响应曲线超调量%20%,过渡过程时间Ts1.5(s),开环比例系数Kv10(1/s),并分析串联校正装置中增益、极点和零点对系统性能的影响。
提示:可采用根轨迹校正工具进行串联校正
MATLAB 提供了一个辅助设计闭环系统根轨迹的仿真软件Rltool,可以用来进行根轨迹校正。在command window 下键入>> rltool,进入设计环境。
一、设计思路方法
根据题目要求采用matlab中提供的一个辅助设计闭环系统根轨迹的仿真软件Rltool,来进行根轨迹校正。打开matlab,在command window 下键入>> rltool,进入设计环境。
k根据设计要求:开环比例系数Kv10(1/s)即 kvlimsG(s)10得k20
s02取k=40, 传递函数G(s)40
s(s2)
二、设计步骤
1、打开matlab,在command window 下键入>> rltool,进入设计环境。启动SISO Design Tool 在matlab中键入num=40;den=conv([1,0],[1,2]);ex_1=tf(num,den),出现函数
40/(s^2 + 2 s)得到该系统的LTI对象模型ex_1。
2、启动SISO Design Tool 窗口后,利用该窗口中File菜单下的命令Import,打开系统模型输入对话框窗口。采用系统默认的结构,输入选中的对象ex_1,将控制对象G设置为ex_1,控制器C设为1,其他的环节H,F均使用默认的取值1.单击OK在SISO Design Tool中会自动绘制此负反馈线性系统的根轨迹图,以及系统波特图,如图
Root Locus Editor(C)850Open-Loop Bode Editor(C)64020G.M.: InfFreq: InfStable loop-50-90-2-4-135-6P.M.: 18 degFreq: 6.17 rad/sec-1-8-2-180-1.5-1Real Axis-0.5010
3、点击Analysis 中的other loop response 选择step得到闭环系统阶跃响应曲线如图可以看到校正前的超调量为60.4%,过渡过程时间为3.66s,明显不满足要求。
1010Frequency(rad/sec)01102Step Response1.81.6System: Closed Loop: r to yI/O: r to yPeak amplitude: 1.6Overshoot(%): 60.4At time(sec): 0.5081.41.2System: Closed Loop: r to yI/O: r to ySettling Time(sec): 3.66Amplitude10.80.60.40.200123Time(sec)456
4、经过反复试验,得出加入零点-5,加入极点-33,是满足要求的,可得到如下的根轨迹图以及伯德图
Root Locus Editor(C)50403020-50100-10-20-30-40-50-40-180-30-20Real Axis-100-135G.M.: InfFreq: InfStable loop-100-90050Open-Loop Bode Editor(C)P.M.: 58.3 degFreq: 8.7 rad/sec-1101001010Frequency(rad/sec)12103
5、得到的阶跃响应曲线如下超调量15.8%<20%,过渡过程时间0.715s<1.5s,满足要求说明加的零极点是正确的
Step Response1.41.21System: Closed Loop: r to yI/O: r to ySystem: Closed Loop: r to ySettling Time(sec): 0.715I/O: r to yPeak amplitude: 1.16Overshoot(%): 15.8At time(sec): 0.348Amplitude0.80.60.40.2000.10.20.30.40.5Time(sec)0.60.70.80.91
6、在使用SISO Design Tool 完成系统的设计之后,在系统实现之前必须对设计好的系统通过Simulink 进行仿真分析,进一步对控制器C进行验证,以确保系统设计的正确性。下图为系统相应的Simulink模型:
untitledFStepFeed ForwardSumuntitledCCompensatorex_1PlantOutput1untitledHSensor DynamicsOut1
7、编写M文件运行以得出超调量和过渡过程时间,以验证是否正确,程序如下: num0=40;den0=conv([1,0],[1,2]);num1=[0.2,1];den1=[0.03,1];
[num2,den2]=series(num0,den0,num1,den1);[num,den]=cloop(num2,den2);t=0:0.005:5;
y=step(num,den,t);plot(t,y);N=length(t);yss=y(N);hold on
[ymax,i]=max(y);mp=(ymax-yss)*100/yss, i=N;
while abs(y(i)-yss)/yss<=0.02 i=i-1;end Ts=t(i),运行结果: mp =
15.7500
Ts =
0.7150
运行所得的曲线如下: 1.41.210.80.60.40.2000.511.522.533.544.55
运行结果分析:所得出的结果,超调量15.7500%<20%,过渡过程时间0.7150s<1.5s,满足设计要求,证明设计的没有问题,符合设计要求。
三、串联校正装置中增益、极点和零点对系统性能的影响。(1)加入增益68,所得到的根轨迹及伯德图:
Root Locus Editor(C)150100Open-Loop Bode Editor(C)10050500G.M.: InfFreq: InfStable loop-50-900-50-135-100P.M.: 8.66 degFreq: 106 rad/sec-1-150-20-180-15-10Real Axis-5010100
编写M程序,得出图像及超调量,过渡过程时间等值,来判断加入增益对系统性能的影响,程序如下:
num0=40;den0=conv([1,0],[1,2]);num1=68*[0.2,1];den1=[0.03,1];[num2,den2]=series(num0,den0,num1,den1);[num,den]=cloop(num2,den2);t=0:0.005:1;y=step(num,den,t);plot(t,y);%计算超调量mp N=length(t);yss=y(N);
hold on %yss:稳态值 [ymax,i]=max(y);mp=(ymax-yss)*100/yss, i=N;while abs(y(i)-yss)/yss<=0.02
i=i-1;end Ts=t(i),运行结果为
1010Frequency(rad/sec)12103mp =
69.4107
Ts =
0.2600 运行曲线为:
1.81.61.41.210.80.60.40.2000.10.20.30.40.50.60.70.80.91
由以上结果及图像可以得出以下结论:加入增益之后超调量变大了,过渡过程时间变短了,波动的更加厉害,稳态误差变小了。说明可以改变开环增益的大小,从而改善稳态误差
(2)加入零点-10,所得到的根轨迹及伯德图: Root Locus Editor(C)360402200Open-Loop Bode Editor(C)10-20G.M.: InfFreq: NaNStable loop-40-45-1-90-2-135P.M.: 108 degFreq: 12.9 rad/sec-1-3-60-180-50-40-30-20Real Axis-100101001010Frequency(rad/sec)12103
阶跃响应曲线如下:
Step Response1.41.21Amplitude0.80.60.40.2000.5Time(sec)11.5
由图可以得出,加入零点后对系统的性能产生了很大的影响,过渡过程时间变长了,超调量变小了,波动次数少了,而且增加开环极点,使得原系统根轨迹的整体走向在S平面向右移,使系统稳定性变坏。
(3)加入极点-10后所得到的根轨迹以及伯德图: Root Locus Editor(C)8050Open-Loop Bode Editor(C)60040-50200-100G.M.: 10.3 dBFreq: 14.4 rad/secStable loop-150-90-20-40-180-60P.M.: 22.1 degFreq: 7.34 rad/sec100-80-100-50Real Axis0-270-150101010Frequency(rad/sec)12103
阶跃响应曲线如下:
Step Response1.61.41.21Amplitude0.80.60.40.2000.511.5Time(sec)22.533.5 由图可以看出加入零点之后系统的性能发生的变化,过渡过程时间变得更长了,超调量变大了,波动次数变多了,增加开环零点,使得原系统根轨迹的整体走向在S平面向右移,使系统稳定性得到改善。
四、设计小结
这个设计是应用了matlab中新的功能,是辅助设计闭环系统根轨迹的仿真软件Rltool,可以用来进行根轨迹校正的一个软件,在使用的过程中遇到了很多问题,参照着课本,一步一步的进行探索,遇到课本上解决不了的,就向同学和老师询问,或者在网上搜些资料以帮助自己理解一些概念,从而更快的理解课程设计需要做的东西,该如何按照老师的要求做出来,其中需要试一些符合要求的零极点,试了很多次。还要到最后进行simulink的仿真,并且编写了程序,以验证所设计的是不是符合要求。
通过这次课程设计,我学到了很多东西,通过编写程序,用到了以前学过的知识,对以前所学知识进行了巩固,觉得非常好,把以前学过的东西又重新捡起来,继续用,也为自己的后续的学习之路铺下基础,比如说后面的毕业设计可能就会用到matlab。我也感受到了matlab强大的功能,对这个软件产生了极大的兴趣,非常实用和好玩。这次课程设计真的学到了很多很多,深受启发,让我对以后的学习充满了信心,老师也很敬业,对我们学生很负责任,耐心教导。