欢迎来到冰点文库! | 帮助中心 分享价值,成长自我!
冰点文库
全部分类
  • 临时分类>
  • IT计算机>
  • 经管营销>
  • 医药卫生>
  • 自然科学>
  • 农林牧渔>
  • 人文社科>
  • 工程科技>
  • PPT模板>
  • 求职职场>
  • 解决方案>
  • 总结汇报>
  • ImageVerifierCode 换一换
    首页 冰点文库 > 资源分类 > DOCX文档下载
    分享到微信 分享到微博 分享到QQ空间

    计算机控制技术温度控制系统设计.docx

    • 资源ID:13986835       资源大小:47.49KB        全文页数:21页
    • 资源格式: DOCX        下载积分:5金币
    快捷下载 游客一键下载
    账号登录下载
    微信登录下载
    三方登录下载: 微信开放平台登录 QQ登录
    二维码
    微信扫一扫登录
    下载资源需要5金币
    邮箱/手机:
    温馨提示:
    快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。
    如填写123,账号就是123,密码也是123。
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP,免费下载
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    计算机控制技术温度控制系统设计.docx

    1、计算机控制技术温度控制系统设计学 号: 00424课 程 设 计题 目温度控制系统设计学 院自动化学院专 业自动化专业班 级自动化1004班姓 名邓智斌指导教师陈静 教授2013年6月29日课程设计任务书学生姓名: 邓智斌 专业班级: 自动化1004班 指导教师: 陈静 教授 工作单位: 自动化学院 题 目: 温度控制系统设计 要求完成的主要任务: 被控对象为电炉,采用热阻丝加热,利用大功率可控硅控制器控制热阻丝两端所加的电压大小,来改变流经热阻丝的电流,从而改变电炉炉内的温度。可控硅控制器输入为05伏时对应电炉温度0300,温度传感器测量值对应也为05伏,对象的特性为二阶惯性系统,惯性时间常

    2、数为T120秒。 1)设计温度控制系统的计算机硬件系统,画出框图; 2)编写积分分离PID算法程序,从键盘接受Kp、Ti、Td、T及的值; 3)通过数据分析改变时对系统超调量的影响。4)撰写设计说明书。时间安排:6月26日 查阅和准备相关技术资料,完成整体方案设计6月27日6月28日 完成硬件设计6月29日6月30日 编写调试程序7月1日7月4日 撰写课程设计说明书 7月5日 提交课程设计说明书、图纸、电子文档指导教师签名: 年 月 日 系主任(或责任教师)签名: 年 月 日摘要温度是工业生产中常见的工艺参数之一,任何物理变化和化学反应过程都与温度密切相关,因此温度控制是生产自动化的重要任务。

    3、对于不同生产情况和工艺要求下的温度控制,所采用的加热方式,燃料,控制方案也有所不同。随着集成电路技术的发展,单片微型计算机的功能也不断增强,许多高性能的新型机种不断涌现出来。本文主要介绍了利用8051为主控制电路实现的炉温调节控制系统,详细阐述了系统的功能,硬件组成以及软件设计,利用热电偶采集温度信号经A/D转换器转化后与给定信号送入微机系统,系统分析控制算法,信号再经D/A转换后控制调节可控硅控制器来改变炉内的温度。另外,还需要用到MATLAB这一个功能强大的软件,而且需要编写一定的程序语句,可以通过程序的运行,将被控系统离散化。再通过PID算法计算出使系统达到稳定所用时间最短,超调最小的K

    4、i ,Kp ,Kd,的值。然后通过的变化观察系统的动态性能。关键字:8051; PID;二阶系统;积分分离;仿真目录1 设计任务及要求被控对象为电炉,采用热阻丝加热,利用大功率可控硅控制器控制热阻丝两端所加的电压大小,来改变流经热阻丝的电流,从而改变电炉炉内的温度。可控硅控制器输入为05伏时对应电炉温度0300,温度传感器测量值对应也为05伏,对象的特性为二阶惯性系统,惯性时间常数为T120秒。 1)设计温度控制系统的计算机硬件系统,画出框图; 2)编写积分分离PID算法程序,从键盘接受Kp、Ti、Td、T及的值; 3)通过数据分析改变时对系统超调量的影响。4)撰写设计说明书。2 方案比较论证

    5、本次设计是对电炉的温度控制,而电炉的温度是通过放在其中的热阻丝来控制的,而热阻丝的电流由可控硅控制器控制热阻丝两端所加电压来控制。对电炉温度的控制是个动态的过程,不可能一下子就达到我们想要的温度,需要用到一些仪器比如热电偶来测量电路的温度,通过传感器将炉温转换成电压信号,送入A/D转换器,通过采样和模数转换,所检测到的电压信号和炉温给定值的电压信号送入计算机程序中作比较,得出给定值与实际值之间的偏差,单片机对偏差进行运算,将运算结果送给晶闸管调压器来调节热阻丝的电流,以此来调节电电炉的温度。 电炉的温度控制是个动态的控制过程,需要借助计算机,单片机等很多器件的硬件连接来实现。而电炉温度的直接控

    6、制是通过热阻丝的加热来实现的,热阻丝的加热是由流经热阻丝的电流来控制的,而热阻丝的电流是通过可控硅控制器控制热阻丝两端所加电压来控制,电压的调节是通过可控制硅控制。需要用到热电偶时刻监测电炉的温度,通过传感器将温度信号转化为电压信号,而电压信号通过模数转换送入到计算机进行控制,计算机将转换结果送到晶闸管来控制加到热阻丝两端的电压,这样达到调节电炉温度的目的。电炉温度控制的硬件连接图如图1所示图1 系统结构框图3 系统硬件设计炉温信号T通过温度检测及变送,变成电信号,与温度设定值进行比较,计算温度偏差e和温度的变化率de/dt,再由智能控制算法进行推理,并得控制量u,可控硅输出部分根据调节电加热

    7、炉的输出功率,即改变可控硅管的接通时间,使电加热炉输出温度达到理想的设定值。3.1 系统硬件结构ADC0809的INT0端口所连接的电阻起到给定预定值的作用,通过调节滑动变阻器划片的位置,改变INT0端口的电压,该电压通过0809转换为数字量被计算机读取。将一个0-5V的电压表连接到可变电阻上,测量其电压,再将其表盘改装为温度表盘,即将原来的0-5V的刻度均匀分为300份,每一份代表1,则可以读取预定的温度值。ADC0809的INT1端口与热电偶相连。由8051构成的核心控制器按智能控制算法进行推算,得出所需要的控制量。由单片机的输出通过调节可控硅管的接通时间,改变电炉的输出功率,起到调温的作

    8、用 。 3.2系统硬件的选择微型计算机的选择:选择8051单片机构成炉温控制系统。它具有8位CPU,3 2根I/O线,4 kB片内ROM存储器,128 kB的RAM存储器。8051对温度是通过可控硅调节器实现的。在系统开发过程中修改程序容易,可以大大缩短开发周期。同时,系统工作过程中能有效地保存一些数据信息,不受系统掉电或断电等突发情况的影响。8051单片机内部有128 B的RAM存储器,不够本系统使用,因此,采用6264(8 kB)的RAM作为外部数据存储器。 热电偶的选择:本设计采用热电偶-镍络-铜硅热电偶(线性度较好,热电势较大,灵敏度较高,稳定性和复现性较好,抗氧化性强,价格便宜)对温

    9、度进行检测。镍铬-铜镍热电偶在300时的热点势21.033mV,为满足0-5V的要求,需将其放大238倍,再通过0809将其转换为数字量被计算机读取,通过软件程序对数据进行处理,将处理的结果经0832输出,输出量控制可控硅控制器,从而改变电阻丝两端的电压,使炉温得到控制。3.3 系统硬件连接图 综合以上分析,可以得出系统的硬件连接图如图2所示:4 系统软件设计 4.1 确定程序流程在微分控制中,控制器的输出与输入误差信号的微分(即误差的变化率)成正比关系。 自动控制系统在克服误差的调节过程中可能会出现振荡甚至失稳。其原因是由于存在有较大惯性组件(环节)或有滞后组件,具有抑制误差的作用,其变化总

    10、是落后于误差的变化。解决的办法是使抑制误差的作用的变化“超前”,即在误差接近零时,抑制误差的作用就应该是零。这就是说,在控制器中仅引入“比例”项往往是不够的,比例项的作用仅是放大误差的幅值,而目前需要增加的是“微分项”,它能预测误差变化的趋势,这样,具有比例+微分的控制器,就能够提前使抑制误差的控制作用等于零,甚至为负值,从而避免了被控量的严重超调。所以对有较大惯性或滞后的被控对象,比例+微分(PD)控制器能改善系统在调节过程中的动态特性。在一般的PID控制中,当有较大的扰动或大幅度改变给定值时,由于此时有较大的偏差,以及系统有惯性和滞后,故在积分项的作用下,往往会产生较大的超调和长时间的波动

    11、。特别对于温度等变化缓慢的过程,这一现象更为严重,为此,可采用积分分离措施,即偏差较大时,取消积分作用;当偏差较小时才将积分作用投入。亦即 当时,采用PD控制; 当时,采用PID控制。积分分离阈值应根据具体对象及控制要求。若值过大时,则达不到积分分离的目的;若值过小,则一旦被控量无法跳出个积分分离区,只进行PD控制,将会出现残差,为了实现积分分离,编写程序时必须从数字PID差分方程式中分离出积分项,进行特殊处理。根据设计要求及所选硬件,程序流程如图3所示:图3 程序的主流程图4.2 程序控制算法介绍 由以上分析,本次设计采用的是积分分离PID控制算法,PID调节时连续系统中技术中最成熟的,应用

    12、广泛的一种调节控制方式。在模拟控制系统中,PID算法的表达为: u:调节器的输出信号;e:偏差信号;K:调节器的比例系数;TI:调节器的积分时间;TD:调节器的微分时间。 在计算机控制中,为实现数字控制,必须对式上式进行离散化处理。用数字形式的差分方程代替连续系统的微分方程。设系统的采样周期为T,在t=kT时刻进行采样,式中e(k):根据本次采样值所得到的偏差; e(k-1):由上次采样所得到的偏差。由以上可得:式中,T为采样时间,项为积分项的开关系数积分积分分离PID控制算法程序框图如图4所示:图4 积分分离PID控制算法程序框图5 系统仿真被控对象为:采用simulink仿真,通过simu

    13、link模块实现积分分离PID控制算法。选择合适的Kp,Ki,Kd是系统的仿真效果趋于理想状态。MATLAB编写程序如下:clear all;close all;ts=2; %采样时间2ssys=tf(1,400,40,1);dsys=c2d(sys,ts,zoh); %将sys离散化num,den=tfdata(dsys,v); %求sys多项式模型参数kp=10;ki=0.25;kd=5;Simulink仿真图如下: 图6 Simulink仿真图经仿真后,当=0.02时的仿真图如下所示:图7 =0.02时的仿真图当=0.05时的仿真图如下所示:图8 =0.05时的仿真图当=1.0时的仿真图

    14、如下所示:图9 =1.0时的仿真图 综上可得,当值过大时,达不到积分分离的目的,若值过小,则一旦被控量无法跳出各积分分离区,只进行PD控制,将会出现残差。6 心得与体会本次计算机课程设计我做的是温度控制系统,是通过计算机,单片机,一些控制算法,等等的对电炉的温度进行控制,使得电炉的温度达到任何我们想要达到的温度。刚拿到题目的时候,感觉这个题目涉及到了很多东西,包括自动控制原理、计算机控制技术和微机原理。首先得从题目所给的条件中分析得到系统的传递函数,然后进行PID算法的控制技术,最后撰写汇编语言的控制程序。在做第二个步骤的时候,由于计控书上对PID积分分离算法只做了一个笼统的介绍,并没有相关的

    15、举例,所以我很难在只有书本知识的情况下轻松的把PID控制部分分析出来。在参阅了大量的资料后,我才对积分分离算法有了一个较清晰的概念,并完成了算法的控制部分。在本次设计中还涉及到了Matlab仿真部分,对我们是否熟练掌握了这个强大的仿真软件进行了考验。同时也让我们对Matlab软件进行了复习,也为我们再次熟练运用Matlab打下了基础。参考文献1李建忠.单片机原理及应用.西安:西安电子科技大学出版社,2001. 2潘新民.王燕芳.微型计算机控制技术.北京:高等教育出版社,2001. 3何立民.单片机应用系统设计.北京:北京航空航天大学出版社,2000. 4韩志军,沈晋源,王振波.单片机应用系统设

    16、计.北京:机械工业出版社,2005. 5周航慈.单片机程序设计基础.北京:北京航空航天大学出版社,2000.附录1芯片资料ADC0809芯片图 ADC0809芯片ADC0809各脚功能如下:D7-D0:8位数字量输出引脚。IN0-IN7:8位模拟量输入引脚。VCC:+5V工作电压。GND:地。REF(+):参考电压正端。REF(-):参考电压负端。START:A/D转换启动信号输入端。ALE:地址锁存允许信号输入端。(以上两种信号用于启动A/D转换)EOC:转换结束信号输出引脚,开始转换时为低电平,当转换结束时为高电平。OE:输出允许控制端,用以打开三态数据输出锁存器。CLK:时钟信号输入端(

    17、一般为500KHz)。A、B、C:地址输入线。DAC0832芯片:图 DAC0832芯片DAC0832芯片为20引脚,双列直插式封装。其引脚排列如图6所示。(1)数字量输入线D7D0(8条) (2)控制线(5条) (3)输出线(3条) (4)电源线(4条)DAC0832的技术指标(1)分辨率: 8位(2)电流建立时间: 1S(3)线性度(在整个温度范围内)8、9或10位(4)增益温度系数: 00002 FS/(5)低功耗: 20mW(6)单一电源:+5 +15V附录2 程序清单积分分离PID控制算法子程序:START:MOV 68H,KP ;分别将KP ,TI ,TD, T,送入指定的存储单元

    18、MOV 54H,TIMOV 55H,TDMOV 56H,TMOV 57H,MOV A,68H ;计算KI=KP*T/TIMOV B,56HMUL ABMOV B,54HDIV ABMOV 69H,AMOV A,68H ;计算KD=KP*TD/TMOV B,55HMUL ABMOV B,56HDIV ABMOV 6AH,ALOOP0: MOV DPTR #7FF0H ;读取预定温度值,送ADC0809的IN0口地址 MOV DPTR,A ;启动A/D转换LOOP1 JB P3.3,LOOP1 ;等待转换数据 MOVX A,DPTR ;读取ADC0809的IN0口转换后的数据 MOV 5CH,A

    19、;将预定值数据放入指定的存储单元MOV DPTR,#7FF1H ;读取采样温度值,送ADC0809的IN1口地址 MOVX DPTR,A ;启动A/D转换LOOP2: JB P3.3,LOOP2 ;等待转换数据 MOVX A,DPTR ;读取ADC0809的IN1口转换后的数据 MOV 49H,A ;将采样值数据放入指定的存储单元 MOV A,5CH ;计算e(i),先取温度给定值 CLR C SUBB A,50H ;温度给定值-采样值 JNC AA0 ;判断e(i)的正负,如果为正,跳至AA0 CPL A ;e(i)为负,下两条指令求补 ADD A,#01HAA0: MOV R0,57H S

    20、UBB A,57H ;|e(i)|- JNC AA1 ;|e(i)|跳至AA1 SJMP AA2 ;|e(i)|跳至AA2AA1: LCALL PD ;调用PD算法AA2: LCALL PID ;调用PID算法 MOV A,7CH ;将Ui通过DAC0832输出 MOV DPTR,#7FF2H MOVX DPTR,A INC DPTR MOVX DPTR,A LCALL DELAY ;调用延时子程序,等待下一次采样计算 SJMP LOOP0 ;进入下一次控制计算DELAY PROC NEARDL0: MOV R6,#FFHDL1: MOV R7,#FFHDL2: MOV R5,#FFHDLS:

    21、 DJNZ R5,DLSDJNZ R7,DL2DJNZ R6 DL1RETDELAY ENDPPID PROC NEARPID:MOV A,5CH ;计算e(i),先取温度给定值CLR CSUBB A,50H ;温度给定值-温度检测值JNC PID1 ;判断e(i)正负,如果为正,跳至PID1CPL A ;e(i)为负,下两条指令求补ADD A,#01HSETB 30H ;e(i)为负,符号位置1SJMP PID2PID1:CLR 30H ;e(i)为正,符号位置0PID2:MOV 6BH,A ;e(i)值存放在6BH单位元中MOV R1,6BH ;计算ei-ei-1,先将ei值,送R1MOV

    22、 C,30H ;将ei的符号位值送20H位MOV 20H,CMOV R2,6CH ;将ei-1值送R2MOV C,31H ;将 ei-1的符号位值送21H位MOV 21H,CLCALL DJF ;调用单字节带符号的减法子程序MOV 6EH,R3 ;将差值ei-ei-1送6EH单元MOV C,22H ;将差值ei-ei-1的符号位送33H位MOV 33H,CMOV R1,6CH ;计算ei-1-ei-2,先将ei-1值送R1MOV C,31H ;将ei-1符号位送20H位MOV 20H,CMOV R2,6DH ;将ei-2的值送R2MOV C,32H ;将 ei-2的符号位值送21H位MOV 2

    23、1H,CLCALL DJF ;调用单字节带符号的减法子程序MOV 6FH,R3 ;将差值ei-1-ei-2送6FH单元MOV C,22H ;将差值ei-1-ei-2的符号位送34H位MOV 34H,CMOV R1,6EH ;计算(ei-ei-1)-(ei-1-ei-2),将ei-ei-1值送R1MOV C,33H ;将ei-ei-1符号位送20H位MOV 20H,CMOV R2,6FH ;将ei-1-ei-2值送R2MOV C,34H ;将ei-1-ei-2符号位送21H位MOV 21H,CLCALL DJF ;调用单字节带符号的减法子程序MOV 70H,R3 ;将差值(ei-ei-1)-(e

    24、i-1-ei-2)送70H单元MOV C,22H ;将差值(ei-ei-1)-(ei-1-ei-2)的符号位值送35H位MOV 35H,CMOV A,68H ;计算Kp*(ei-ei-1),将Kp值送AMOV B,6EH ;将ei-ei-1值送BMUL AB ;两数相乘MOV 71H,B ;Kp*(ei-ei-1)值存71H,72H单元MOV 72H.AMOV A,69H ;计算KI*ei,将KI值送AMOV B,6BH ;将ei值送BMUL AB ;两数相乘MOV 73H,B ;KI*ei值存73H,74H单元MOV 74H,AMOV A,6AH ;计算KD*(ei-ei-1)-(ei-1-

    25、ei-2),将KD送AMOV B,70H ;将(ei-ei-1)-(ei-1-ei-2)值送BMUL AB ;两数相乘MOV 75H,B ;KD*(ei-ei-1)-(ei-1-ei-2)值存75H,76H单元MOV 76H,AMOV R1,71H ;计算Kp*(ei-ei-1)+KI*ei,将Kp*(ei-ei-1)值送R1,R2MOV R2,72HMOV C,33H ;将Kp*(ei-ei-1)的符号位值送23H位MOV 23H,CMOV R3,73H ;将KI*ei值送R3,R4MOV R4,74H MOV C,30H ;将KI*ei值的符号位懂24H位MOV 24H,CLCALL SJ

    26、F ;调用双字节带符号加法子程序MOV 77H,R5 ;将Kp*(ei-ei-1)+KI*ei值送77H,78HMOV 78H,R6MOV C,25H ;将Kp*(ei-ei-1)+KI*ei值的符号位送36H位MOV 36H,CMOV R1,77H ;计算Ui,将将Kp*(ei-ei-1)+KI*ei值送R1,R2MOV R2,78H MOV C,36H ;将Kp*(ei-ei-1)+KI*ei值的符号位送23H位MOV 23H,CMOV R3,75H ;将KD*(ei-ei-1)-(ei-1-ei-2)的值送R3,R4MOV R4,76HMOV C,35H ;将KD*(ei-ei-1)-(

    27、ei-1-ei-2)的符号位送23H位MOV 24H,CLCALL SJF ;调用双字节带符号加法子程序MOV 79H,R5 ;将Ui值送79H,7AHMOV 7AH,R6MOV C,25H ;将Ui值的符号位送37HMOV 37H,CMOV R1,7DH ;计算Ui,将Ui-1值送R1,R2MOV R2,7EHCLR 23H ;Ui-1值的符号位值恒为0MOV R3,79H ;将Ui值送R3,R4MOV R4,7AHMOV C,37H ;将Ui值的符号位送24HMOV 24H,CLCALL SJF ;调用双字节带符号加法子程序JNB 25H,PID3 ;判断计算结果是否为负MOV 7BH,#

    28、00H ;如果是负数,则输出电压为0MOV 7CH,#00HSJMP PID4PID3:MOV 7BH,R5 ;否则,将计算得到的Ui值置7BH,7CHMOV 7CH,R6PID4:MOV 6DH,6CH ;数据迭代,ei-1值送ei-2存储单元MOV 6CH,6BH ;ei值送ei-1存储单元MOV 7DH,7BH ;Ui值送Ui-1存储单元MOV 7EH,7CHRETPID ENDPPD PROC NEARPD:MOV A,5CH ;计算ei,先取温度给定值CLR CSUBB A,50H ;温度给定值-温度检测值JNC PD1 ;判断ei正负,如果为正,跳至PID1CPL A ;ei为负,

    29、下两条指令求补ADD A,#01HSETB 30H ;ei为负,符号位置1SJMP PD2PD1:CLR 30H ;ei为正,符号位置0PD2:MOV 6BH,A ;ei值存放在6BH单位元中MOV R1,6BH ;计算ei-ei-1,先将ei值,送R1MOV C,30H ;将ei的符号位值送20H位MOV 20H,C;MOV R2,6CH ;将ei-1值送R2MOV C,31H ;将 ei-1的符号位值送21H位MOV 21H,CLCALL DJF ;调用单字节带符号的减法子程序MOV 6EH,R3 ;将差值ei-ei-1送6EH单元MOV C,22H ;将差值ei-ei-1的符号位送33H

    30、位MOV 33H,CMOV R1,6CH ;计算ei-1-ei-2,先将ei-1值送R1MOV C,31H ;将ei-1符号位送20H位MOV 20H,CMOV R2,6DH ;将ei-2的值送R2MOV C,32H ;将 ei-2的符号位值送21H位MOV 21H,CLCALL DJF ;调用单字节带符号的减法子程序MOV 6FH,R3 ;将差值ei-1-ei-2送6FH单元MOV C,22H ;将差值ei-1-ei-2的符号位送34H位MOV 34H,CMOV R1,6EH ;计算(ei-ei-1)-(ei-1-ei-2),将ei-ei-1值送R1MOV C,33H ;将ei-ei-1符号位送20H位MOV 20H,CMOV R2,6FH ;将ei-1-ei-2值送R2MOV C,34H ;将ei-1-ei-2符号位送21H位MOV 21H,CLCALL DJF ;调用单字节带符号的减法子程序MOV 70H,R3 ;将差值(ei-ei-1)


    注意事项

    本文(计算机控制技术温度控制系统设计.docx)为本站会员主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

    copyright@ 2008-2023 冰点文库 网站版权所有

    经营许可证编号:鄂ICP备19020893号-2


    收起
    展开