温度控制系统设计计算机控制技术课程设计精品_第1页
温度控制系统设计计算机控制技术课程设计精品_第2页
温度控制系统设计计算机控制技术课程设计精品_第3页
温度控制系统设计计算机控制技术课程设计精品_第4页
温度控制系统设计计算机控制技术课程设计精品_第5页
已阅读5页,还剩11页未读 继续免费阅读

付费下载

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

学 号: 0121311370627课 程 设 计题 目 温度控制系统设计学 院 自动化学院专 业 自动化专业班 级 1303 班姓 名 李 杰指导教师 周申培2016 年 6 月 1 日课程设计任务书学生姓名: 李杰 专业班级: 自动化 1303 班 指导教师: 周申培 工作单位: 自动化学院 题 目: 温度控制系统设计 要求完成的主要任务: 被控对象为电炉,采用热阻丝加热,利用大功率可控硅控制器控制热阻丝两端所加的电压大小,来改变流经热阻丝的电流,从而改变电炉炉内的温度。可控硅控制器输入为05伏时对应电炉温度0300,温度传感器测量值对应也为05伏,对象的特性为带有纯滞后环节的一阶系统,惯性时间常数为T 130秒,滞后时间常数为10秒。1)设计温度控制系统的计算机硬件系统,画出框图;2)编写积分分离 PID 算法程序,从键盘接受 Kp、T i、T d、T 及 的值;3)通过数据分析 Ti改变时对系统超调量的影响。4)撰写设计说明书。时间安排:5 月 24 日 查阅和准备相关技术资料,完成整体方案设计5 月 25 日6 月 1 日 完成硬件设计并调试6 月 2 日 提交课程设计指导教师签名: 年 月 日系主任(或责任教师)签名: 年 月 日目 录摘 要 .11 设计任务及分析 .21.1 设计任务要求 .21.2 设计系统分析 .22 方案设计 .32.1 硬件系统设计 .32.2 软件流程图 .43 控制算法 .53.1 PID 控制算法 .53.2 积分分离的 PID 控制控制算法 .64 系统仿真 .74.1 仿真程序及图形 .74.2 仿真结果 .84.3 结果分析 .105 心得体会 .11参考文献 .12本科生课程设计成绩评定表1摘 要比例-积分 -微分控制(简称 PID 控制),是控制系统中应用最为广泛的一种控制规律。实际运行的经验和理论的分析都表明,这种控制规律对许多工业过程进行控制时,都能得到满意的效果。利用计算机可以很好地使用 PID 算法对控制对象进行控制,具有较高的精度,并且可以很方便的改变 PID 参数,以达到不同的控制效果。本设计的控制对象为电热炉,控制量为电炉温度,利用单片机对大功率可控硅导通角的控制,可以很方便地改变电热丝两端的电压,从而起到调节温度的作用。而热电偶配合单片机编程,能够较精确地得到炉温,使单片机能够实时发出控制信号,快速将炉温调节为给定值。当外界出现干扰使炉温发生变化时,单片机能够通过 PID 算法快速使炉温回到给定值。为了使 PID 控制更加稳定可靠,本设计加入了积分分离的改进措施,当偏差较大时取消积分作用,利用 PD 控制快速使系统趋于稳定;当偏差小于某一个值时,加入积分作用,以消除静差。利用 Matlab 软件,可以通过仿真得到 Ti改变对系统超调量的影响。关键词:PID 控制 Matlab 系统超调量21 设计任务及分析1.1 设计任务要求被控对象为电炉,采用热阻丝加热,利用大功率可控硅控制器控制热阻丝两端所加的电压大小,来改变流经热阻丝的电流,从而改变电炉炉内的温度。可控硅控制器输入为05伏时对应电炉温度0300,温度传感器测量值对应也为05伏,对象的特性为带有纯滞后环节的一阶系统,惯性时间常数为T 130秒,滞后时间常数为10秒。要求完成的任务:1)设计温度控制系统的计算机硬件系统,画出框图;2)编写积分分离 PID 算法程序,从键盘接受 Kp、T i、T d、T 及 的值;3)通过数据分析 Ti改变时对系统超调量的影响。4)撰写设计说明书。1.2 设计系统分析本系统的以电炉为控制对象,以电炉温度为控制量,利用温度传感器实时检测电炉温度,并将测得的数据经过 A/D 转换后送入计算机,计算机系统将检测得到的温度与炉温给定值进行比较,并计算偏差,按照预置的控制算法,对可控硅控制器的导通角进行调节,从而可以控制热阻丝两端的电压,起到温度调节的作用。利用单片机可以方便地实现数据采集、转换、处理以及 PID 算法控制,并通过键盘对一些重要参数进行修正,还具有系统小巧、稳定可靠以及成本较低等优点。由于本次控制对象为电炉,其时间常数较大,因此采用周期不宜过小,避免系统响应过于频繁,降低计算机系统的效率并使控制品质变坏,但也不能太大,否则会使误差不能及时消除。32 方案设计2.1 硬件系统设计本系统硬件部分主要由温度传感器、D/A 转换电路、信号调理电路和 I/V 变换、单片机系统、A/D 转换电路、可控硅及其控制电路以及电炉组成。温度控制系统硬件框图如图2-1 所示。温度传感器主要有热电偶、金属热敏电阻和半导体热敏电阻等几种。其中,热电偶测温范围广,可在 1K2800范围内使用,并且具有精度高、性能稳定、结构简单、动态性能好等优点,缺点是线性度很不好,需要预置温度-电压分度表。金属热敏电阻主要有铂热电阻和铜热电阻,前者可在-200800范围内使用,后者一般只在-50150范围内使用,而铂热电阻价格较贵,因此并不太适合本次设计使用。半导体热敏电阻一般来说测温范围较小,此处不予考虑。综合比较,选用金属热电偶相对来说更加适宜。由于本设计采用单片机为控制核心,因此,将金属热电偶的温度-电压分度表写入单片机的ROM 中可以很方便的通过查表程序得到实时温度。A/D 转换器采用 8 位逐次逼近式 A/D 转换芯片 ADC0809,其转换时间在 100us 左右,线性误差为(1/2)LSB ,工作温度范围为 -4585,功耗为 15mW。D/A 转换器采用 8 位 D/A 转换芯片 DAC0832,其电流建立时间为 1us,单一电源供电+5+15V,功耗为 20mW。单片机采用 AT89S52,具有 8K 片内 ROM 和 256B 的片内 RAM,32 位 I/O 口,3 个16 位定时器/计数器,具有 RAM 数据掉电保护功能。温度传感器 信号调理及 I/V 变换 A/D转换单片机电炉 可控硅控制电路 D/A转换键盘输入控制图 2-1 温度控制系统硬件框图42.2 软件流程图温度控制系统的软件流程图如图 2-2 所示,系统开始工作时会检测炉温,一般情况下此时炉温比给定值低,于是电炉开始全速加热。于此同时,系统会按照预定的采样周期进行采样,当检测炉温在上限温度和下限温度之间,那么开始进行 PID 控制,并继续按照预定的采样周期进行采样,直至温度稳定为给定值。开始系统初始化并输入给定温度值炉温测量炉温 下限温度炉温 下限温度PID 算法控制炉温炉温等于目标温度且稳定结束NY停止加热全速加热NYYN图 2-2 温度控制系统软件流程图53 控制算法3.1 PID 控制算法模拟 PID 控制器的控制规律为(2-1))()(1)()(0tDI dteTetKptu在 PID 调节中,比例控制能迅速反应误差,从而减小误差,但比例控制不能消除稳态误差,K P 的加大,会引起系统的不稳定;积分控制的作用是:只要系统存在误差,积分控制作用就不断地积累,输出控制量以消除误差,因而,只要有足够的时间,积分控制将能完全消除误差,积分作用太强就会使系统超调增大,甚至使系统出现振荡;微分控制可以减小超调量,克服振荡,使系统的稳定性提高,同时加快系统的动态响应速度,减小调节时间,从而改善系统的动态性能。为了便于计算机实现 PID 控制算法,必须将式(2-1)变换成差分方程,以得到数字PID 位置型控制算式(2-2))1()()()(0kiDI TkeeTeKpku根据式(2-2 )可写出 u(k-1)的表达式(2-3))2()1()()1()1(10kiDI TkeeTepku将式(2-2 )与式(2-3 )相减,可以得到数字 PID 增量型控制算式为(2-4))2()1(2)()1()( kekeKkeKpkuDI相对于位置型算法,增量型算法不需要做累加,计算误差或计算精度对控制量的计算影响较小,而位置型算法要用到过去的累加值,容易产生较大的累加误差。位置型算法不仅要占用较多的内存单元,而且不便于编写程序,并且逐渐增大的累加误差可能引起系统冲击,严重影响系统的稳定性。综合考虑,应该使用增量型数字 PID 控制算法来增加系统的稳定性以及控制精度。63.2 积分分离的 PID 控制控制算法在一般的 PID 控制中,当有较大的扰动或大幅度改变给定值时,由于有较大的误差,以及系统有惯性和滞后,故在积分项的作用下,往往会产生较大的超调和长时间的波动,特别对于温度、成分等变化缓慢的过程,这一现象更为严重。本设计的控制量为炉膛温度,具有较大的惯性和滞后性,因此,可以采用积分分离措施,当偏差 e(k)较大时,取消积分作用;当偏差 e(k)较小时,再将积分作用投入。即当|e(k)| 时,采用 PD 控制;当|e(k)| 时,采用 PID 控制。积分分离阈值应根据具体对象及控制要求确定。若值过大,则达不到积分分离的目的;若 值过小,则一旦被控量 y( t )无法跳出各积分分离区,只进行 PD 控制,将会出现残差,为了实现积分分离,编写程序时必须从数字 PID 差分方程式中分离出积分项,进行特殊处理。积分分离 PID 控制算法流程图如图 3-1 所示。开始温度数据采集e(k) PD 控制 PID 控制控制器输出结束YN图 3-1 积分分离 PID 控制算法流程图74 系统仿真4.1 仿真程序及图形根据所给条件,控制对象的传递函数为 sG301e)(-通过 Matlab 仿真,取 Kp=0.1,T i=50,T d=20,T=5s,=0.1,在 Matlab Command 窗口中输入如下程序语句:clear all; close all; ts=5; %采样时间 5s sys=tf(1,30,1); dsys=c2d(sys,ts,zoh); %将 sys 离散化 num,den=tfdata(dsys,v); %求 sys 多项式模型参数 kp=0.1; ti=50;td=10;beta=0.1;ki=kp*ts/tikd=kp*td/ts按下回车键,使 Matlab 程序接受这些数据。随后在 Simulink

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论