资源目录
压缩包内文档预览:(预览前20页/共31页)
编号:6180978
类型:共享资源
大小:1.05MB
格式:ZIP
上传时间:2017-12-05
上传人:超****计
IP属地:浙江
3.6
积分
- 关 键 词:
-
温度
控制系统
资料
- 资源描述:
-
温度控制系统资料,温度,控制系统,资料
- 内容简介:
-
1目录第一章 设计背景及设计意义 2第二章 系统方案设计 3第三章 硬件 .53.1 温度检测和变送器53.2 温度控制电路63.3 A/D 转换电路 73.4 报警电路 83.5 看门狗电路 83.6 显示电路 103.7 电源电路12第四章 软件设计 144.1 软件实现方法 144.2 总体程序流程图 154.3 程序清单 19第五章 设计感想 29第六章 参考文献30第七章 附录 317.1 硬件清单 317.2 硬件布线图 312第一章 设计背景及研究意义机械制造行业中,用于金属热处理的加热炉,需要消耗大量的电能,而且温度控制是纯滞后的一阶惯性环节。现有企业多采用常规仪表加接触器的断续控制,随着科技进步和生产的发展,这类设备对温度的控制要求越来越高,除控温精度外,对温度上升速度及下降速度也提出了可控要求,显而易见常规控制难于满足这些工艺要求。随着微电子技术及电力电子技术的发展,采用功能强、体积小、价格低的智能化温度控制装置控制加热炉已成为现实。自动控制系统在各个领域尤其是工业领域中有着及其广泛的应用,温度控制是控制系统中最为常见的控制类型之一。随着单片机技术的飞速发展,通过单片机对被控对象进行控制日益成为今后自动控制领域的一个重要发展方向。在现代化的工业生产中,电流、电压、温度、压力、流量、流速和开关量都是常用的主要被控参数。例如:在冶金工业、化工生产、电力工程、造纸行业、机械制造和食品加工等诸多领域中,人们都需要对各类加热炉、热处理炉、反应炉和锅炉中的温度进行检测和控制。对工件的处理温度要求严格控制,计算机温度控制系统使温度控制指标得到了大幅度提高。采用MCS-51单片机来对温度进行控制,不仅具有控制方便、组态简单和灵活性大等优点,而且可以大幅度提高被控温度的技术指标,从而能够大大提高产品的质量和数量。因此,单片机对温度的控制问题是一个工业生产中经常会遇到的问题。, 3第二章 系统方案的设计这次课程设计题目为热电偶构成的热处理炉的温度控制系统, 技术要求:1.设定温度范围为09992.温度显示为09993.到设定温度报警热处理炉炉温控制系统的控制过程是:单片机定时对炉温进行检测,经A/D转换芯片得到相应的数字量,经过计算机进行数据转换,得到应有的控制量,去控制加热功率,从而实现对温度的控制。如下图所示:进行系统设计时应考虑如下问题:1.炉温变化规律的控制,即炉温按预定的温度时间关系变化。 2.温度控制范围:如01000,这就涉及到测温元件、电炉功率的选择等。3.控制精度、超调量等指标,这涉及到A/D转换精度、控制规律选择等。温控系统主要由温度传感器、温度调节仪、执行装置、被控对象四个部分组成,其系统结构图如图1所示。被控制对象是大容量、大惯性的电热炉温度对象,是典型的多阶容积迟后特性,在工程上往往近似为包含有纯滞后的二阶容积迟后;由于被控对象电容量大,通常采用可控硅作调节器的执行器,其具体的电路图如图2所示。4调节加热炉的温度,在工业上是通过在设定周期范围内,将电路接通几个周波,然后断开几个周波,改变晶闸管在设定周期内通断时间的比例,来调节负载两端交流平均电压即负载功率,这就是通常所说的调功器或周波控制器;调功器是在电源电压过零时触发晶闸管导通的,所以负载上得到的是完整的正弦波,调节的只是设定周期 Tc内导通的电压周波。如图 3 所示,设周期 Tc内导通的周期的波数为 n,每个周波的周期为 T,则调功器的输出功率为P=nTPn/Tc,P n为设定周期 Tc内电压全通过时装置的输出功率。5第三章 硬件的设计3.1 温度检测和变送器温度检测元件和变送器的类型选择与被控温度的范围和精度等级有关。镍铬/镍铝热电偶适用于 0-1000的温度检测范围,相应输出电压为 0mV-41.32mV。变送器由毫伏变送器和电流/电压变送器组成:毫伏变送器用于把热电偶输出的 0mV-41.32mV 变换成 4mA-20mA 的电流;电流/电压变送器用于把毫伏变送器输出的 4mA-20mA 电流变换成 0-5V 的电压。为了提高测量精度,变送器可以进行零点迁移。例如:若温度测量范围为500-1000,则热电偶输出为 20.6mV-41.32mV,毫伏变送器零点迁移后输出4mA-20mA 范围电流。这样,采用 8 位 A/D 转换器就可使量化温度达到 1.96以内。其在控制系统的作用如下图所示:图 1:温度检测电路热处理炉63.2 温度控制电路8051对温度的控制是通过双向可控硅实现的。如图一所示,双向可控硅管和加热丝串接在交流220V、50Hz市电回路。在给定周期T内,8051只要改变可控硅管的接通时间即可改变加热丝的功率,以达到调节温度的目的。可控硅接通时间可以通过可控硅控制极上触发脉冲控制。该触发脉冲由8051用软件在P2.1引脚上产生,在过零同步脉冲同步后经光电耦合管和驱动器输出送到可控硅的控控制系统的制极上。图1:调温电路73.3 A/D转换电路ADC0809 是一种比较典型的 8 位 8 通道逐次逼近式 A/D 转换器,CMOS 工艺,可实现 8 路模拟信号的分时采集,片内有 8 路模拟选通开关,以及相应的通道地址锁存用译码电路,其转换时间为 100s 左右,采用双排 28 引脚封装,其主 要 性 能 指 标 如 下 :1、 分 辨 率 为 8 位 二 进 制 数 ;2、 电 压 范 围 在 0 +5V, 对 应 A/D 值 00H FFH;3、 每 路 A/D 转 换 完 成 时 间 100ms;4、 可 分 时 进 行 8 路 A/D 转 换 ;5、 工 作 频 率 500KHz( 本 电 路 由 8051ALE 端 输 出 经 4 分 频 后得 到 ) 。引 脚 功 能 如 下 :IN0 IN7: 8 路 0 +5V 模 拟 电 压 输 入 ( 用 IN0 端 ) ;DB7 DB0: 8 位 数 字 输 出 线 , 输 出 8 位 A/D 转 换 值 ;STAST: 启 动 A/D 转 换 端 ;EOC: A/D 转 换 完 成 端 ;OE: 允 许 数 字 量 输 出 信 号 ;CLOCK: 时 钟 500KHz;ADD A、 B、 C: IN0 IN7 地 址 选 择 线 ;ALE: 地 址 锁 存 允 许 输 入 信 号 。A/D 转 换 器 0809 与 放 大 电 路 连 接 较 简 单 , 运 放 接 成 比 例 放 大 形式 , 放 大 倍 数 可 调 , 总 体 A/D 转 换 与 8051 接 口 电 路 如 下 :83.4 报警电路报警电路的作用主要是在温度超过规定的温度或低于下限温度或达到预定温度时,报警子程序就会控制报警信号的输出,温度低与或高于规定的温度范围以及达到规定的温度时,音频装置就会发出不同频率的告警信号,同时相应的 LED 显示,到底是高了还是低了,以便与自动调节。报警电路如下图:9图 1:报警电路3.5 看门狗电路计 算 机 看 门 狗 控 制 卡 是 为 了 使 计 算 机 或 工 控 机 在 系 统 出 现 异 常 时 ,能 自 动 控 制 计 算 机 进 行 重 新 启 动 , 使 系 统 恢 复 正 常 运 行 , 保 证 系 统 24小 时 不 间 断 正 常 工 作 。 该 控 制 卡 可 运 用 于 无 人 职 守 的 场 所 。 像 采 用 计算 机 作 为 存 储 设 备 的 数 字 硬 盘 录 像 系 统 , 公 路 卡 口 监 控 记 录 设 备 等 。特 点 : 可 固 定 在 计 算 机 内 部 并 且 不 占 用 计 算 机 任 何 插 槽 。 借 电 方 便 , 可 利 用 计 算 机 本 身 的 软 驱 电 源 接 口 。 通 过 计 算 机 并 口 或 者 串 口 跟 计 算 机 通 讯 。 计 算 机 操 作 系 统 发 生 死 机 后 , 30 秒 ( 时 间 可 设 置 ) 内 控 制 卡 控制 计 算 机 重 新 启 动 。 控 制 卡 内 有 信 号 灯 , 在 正 常 工 作 时 有 频 率 稳 定 持 续 的 灯 光 闪 动 。 提 供 开 发 控 件 , 可 启 动 看 门 狗 功 能 、 停 止 看 门 狗 功 能 、 设 置 串 口 还是 并 口 。 有 两 种 型 号 的 控 制 卡 , 有 自 带 RS232 转 485 的 功 能 的 控 制 卡 。现以 MAX706 监控电路为例(见图 1)来说明“看门狗”硬件电路的工作过程,我们知道,MAX706 是一种性能优良的低功耗 CMOS 监控电路芯片,其内部电路由上电复位、可重触发“看门狗”定时器及电压比较器等组成2。MAX70610只要在 1.6 秒时间内检测到 WCI 引脚有高低电平跳变信号,则“看门狗”定时器清零并重新开始计时;若超出 1.6 秒后,WCI 引脚仍无高低电平跳变信号,则“看门狗”定时器溢出,WDO 引脚输出低电平,进而触发 MR 手动复位引脚,使 MAC706 复位,从而使“看门狗”定时器清零并重新开始计时,WDO 引脚输出高电平,MAX706 的 RST 复位输出引脚输出大约 200 毫秒宽度的低电平脉冲,使单片机控制系统可靠复位,重新投入正常运行。图 1:看门狗电路3.6 显示电路 单片机与显示器的接口电路图11图 MC14495 内部逻辑结构及引脚 图用 MC14495 组成多位 LED 静态显示器接口 12程序:DIR: SETB RS0 ;保护第 0 组工作寄存器PUSH A ;保护现场MOV R2, #03H ;显示位数计数MOV R1, #00H ;设位码初值,初态从 LED7 开始MOV R0, #DIS7 ;显示缓冲区末地址送 R0DIR0: MOV A, RO ;取待显示的数据AND A, #07H ;屏蔽高 3 位,保留低 4 位 BCD 码MOV R3, A ;暂存 R3 中MOV A, R1 ;位选码值送 ASWAP A ;位码交换到高 4 位ADD A, R3 ;合并形成输出的 BCD 码和位选码MOV P1,A ;输出到 P1 口INC R1 ;位码加 1 指向下一位DJNZ R2, DIR0 ;8 个位未显示完重复CLR RS0 ;显示完恢复第 0 组工作寄存器POP ARET ;返回主程序 3.7 电源电路本模块将交流 220V 输入电压变为 3 组直流电压,其中 5V 电压为 CPU 等数字电路提供电源;15V 电压为运放等模拟芯片提供电源;24V 电压为温度变送器提供电源。 220v 市电经变压器输出两组独立的 25v 交流,桥堆整流,大电容滤波得到 + 35v 直流,再加一个 0.1uF 小电容滤出电源中的高频分量。考虑到制作过程中电源空载似的电容放电可在输出电容并上 1k 大功率电阻。另外这组直流还要给 7812、7912 来获得 + 12v。 电源模块如下图:图 1:5V 直流稳压源电路13图 2: + 12V/24V 直流稳压源的原理电路14第四章 软件的设计4.1 软件实现方法根据热处理炉在上电复位后先处于停止加热状态,这时可以用“+1”键设定预置温度,显示器显示预定温度;温度设定好后就可以按启动键启动系统工作了。温度检测系统不断定时检测当前温度,并送往显示器显示,达到预定值后停止加热并显示当前温度;当温度下降到下限(比预定值低 3)时再启动加热。这样不断重复上述过程,使温度保持在预定温度范围之内。启动后不能再修改预置温度,必须按复位/停止键回到停止加热状态再重新设定预置温度。炉温控制是这样一个反馈调节过程,比较实际炉温和需要炉温得到偏差,通过对偏差的处理获得控制信号,去调节电阻炉的热功率,从而实现对炉温的控制。按照偏差的比例、积分和微分产生控制作用(PID 控制),是过程控制中应用最广泛的一种控制形式。系统控制程序采用两重中断嵌套方式设计。首先使 T0 计数器产生定时中断,作为本系统的采样周期。在中断服务程序中启动 A/D,读入采样数据,进行数字滤波、上下限报警处理,PID 计算,然后输出控制脉冲信号。脉冲宽度由 T1计数器溢出中断决定。在等待 T1 中断时,将本次采样值转换成对应的温度值放入显示缓冲区,然后调用显示子程序。从 T1 中断返回后,再从 T0 中断返回主程序并且、继续显示本次采样温度,等待下次 T0 中断。1)二位式调节-它只有开、关两种状态,当炉温低于限给定值时执行器全开;当炉温高于给定值时执行器全闭。(执行器一般选用接触器)2)三位式调节-它有上下限两个给定值,当炉温低于下限给定值时招待器全开;当炉温在上、下限给定值之间时执行器部分开启;当炉温超过上限给定值时执行器全闭。3)比例调节(P 调节)-调节器的输出信号(M)和偏差输入(e)成比例。即:M=ke。式中:K-比例系数15比例调节器的输入、输出量之间任何时刻都存在-对应的比例关系,因此炉温变化经比例调节达到平衡时,炉温不能加复到给定值时的偏差-称“静差”4)比例积分(PI)调节-为了“静差”,在比例调节中添加积分(I)调节积分,调节是指调节器的输出信号与偏差存在随时间的增长而增强,直到偏差消除才无输出信号,故能消除“静差”比例调节和积分调节的组合称为比例积分调节.5) 比例积分微分(PID)调节-比例积分调节会使调节过程增长,温度的波动幅值增大,为此再引入微分(D)调节。微分调节是指调节器的输出与偏差对时间的微分成比例,微分调节器在温度有变化“苗头”时就有调节信号输出,变化速度越快、输出信号越强,故能加快调节速度,降低温度波动幅度,比例调节、积分调节和微分调节的组合称为比例积分微分调节。(一般采用晶闸管调节器为执行器)。根据生产现场的运行情况,这种控温方法,精度比较高,系统性能稳定,满足生产的实际需要。主要设备:热电偶或热电阻,智能 PID 温控仪,可控硅触发调功器等。4.2 总体程序流程图温度控制程序的设计应考虑如下:1)键盘扫描、键码识别和温度显示;2)炉温采样、数字滤波;3)数据处理;4)越限报警和处理;5)PID 计算、温度标度转换4.2.1 主程序框图主程序包括 8051 本身的初始化等等。大体说来,本程序包括设置有关标志、暂存单元和显示缓冲区清零、T0 初始化、CPU 开中断、温度显示和键盘扫描程16序 主程序在主程序中首先给定 PID 算法的参数值,然后通过循环显示当前温度,并且设定键盘外部中断为最高优先级,以便能实时响应键盘处理;软件设定定时器 T0 为 5秒定时,在无键盘响应时每隔 5 秒响应一次,以用来采集经过 AD 转换的温度信号; 设定定时器 T1 为嵌套在 T0 之中的定时中断,初值由 PID 算法子程序提供。在主程序中必须分配好每一部分子程序的起始地址,形式如下: ORG 0000H AJMP MAIN ORG 0003H AJMP INTO ORG 000BH AJMP TT0 ORG 001BH AJMP TT1 4.2.2 中断服务程序框图17T0 中断服务程序是温度控制系统的主体程序,用于启动数/模转换器、读入采样数据、数字滤波、越限温度报警和越限处理、PID 计算和输出可控硅的触发脉冲等。P1.3 引脚上输出的该同步触发脉冲宽度由 T1 计数器的溢出中断控制,8051 利用等待 T1 溢出中断的空闲时间(形成 P1.3 输出脉冲顶宽)完成把本次采样值转换成显示值而放入显示单元缓冲区和调用温度显示程序。8051从 T1 中断服务程序返回后即可恢复现场和返回主程序。系统软件采用中断方式编程,主要部分是时钟中断程序,主要由输入处理程序、控制算法程序、显示处理、输出处理和自诊断程序等组成,其流程图如图 2 所示。仪表通电启动后,初始化程序进行时间给定,每隔 500ms 时钟中断一次,中断后进入时钟中断处理。对于纯滞后,大惯性环节控制对象,一般采用积分分离 PID 控制算法。在一般的 PID 控制中,当系统有较大的扰动或设定值较大幅度提降时,由于偏差较大及系统存在惯性和滞后,在积分项的作用下,会产生较大的超调和长时间波动,在温度缓慢变化过程中这一现象尤为严重,为此采用积分分离措施,即在偏差较大时,取消积分作用,偏差较小时,才将积分作用投入。18中断服务程序框图 194.3 程序清单4.3.1 报警电路子程序1.子程序框图2.报警子程序:FLAG BIT 00HORG 00HSTART: JB P1.7,STARTJNB FLAG,NEXTMOV R2,#200DV: CPL P2.2LCALL DELY500LCALL DELY500DJNZ R2,DV20CPL FLAGNEXT: MOV R2,#200DV1: CPL P1.0LCALL DELY500DJNZ R2,DV1CPL FLAGSJMP STARTDELY500: MOV R7,#250LOOP: NOPDJNZ R7,LOOPRETEND4.3.2 键盘显示管理程序。为了使 8279 具有合适的键盘、显示功能,首先要对芯片初始化。可适当地挑选 8279 的控制字,例如:使 8279 具有 8 位显示、右端输入、编码键盘、双键锁定时可选控制字 10H.这时每次按键都将产生键特征码,并且存放在FIFOROM 中,同时使 8279 的 IRQ 引脚变为高电平,可作为向 CPU 申请中断信号,如果 CPU 是中断开放的,则转向中断服务程序,可在中断服务程序中读取特征码。每当 CPU 读取 FIFOROM 中的数据后,8279 自动撤消 IRQ 信号,IRQ 引脚变为低电平。CPU 返回主程序后,可由键特征码来决定程序的流向。问题是,当 CPU 从 8279 的 FIFOROM 中读取键特征码后,IRQ 虽然恢复底电平,但 FIFOROM 中的数据并没有消失,仍保存在里面,这时即使使用对改8279 清除的指令 D3H,也不能将 FIFOROM 中的数改变,只有按其它键才能改变 FIFOROM 中的数据,因这样是无法实现按钮功能的。为了使键盘具有按钮功能,应该利用 8279 的传感方式功能,在传感器方式中,8279 每当检测到传感状态变化时,IRQ 就变为高电平,图 1 是以 8051CPU构成的系统为例,说明 IRQ 引脚电平的翻新过程。 218279 的 IRQ 端经反相器接到 8051 的 INT1 端(即 P3.3 引脚)。先将 8279 设置成编码键盘,允许 INT1 中断,当键按下时,反相器输出低电平,CPU 进入中断服务程序,读取键特征码后,又为高电平。返回主程序后,转向功能程序(例如调模进)。输出控制信号(例如 P1.0 为“1”时调模进电磁阀得电)后,将 8279 设置为传感器方式,并且不允许 INT1 中断,然后调试 P3.3 是否为低电平。如果按键松开,8279 将测出传感器状态发生变化,而使 IRQ 由低电平转为高电平。也就是说 P3.3 脚为低电平时,按键已经松开,程序重新设置 8279 为编码键盘,INT1 中断开放,以便使键盘脱离按钮功能。程序清单如下:ORG 0000HMOV DPTR,#7000H ; 指向 8279 数据口INC DPTR ; 指向 8279 控制口MOV A, #00H ; 设定 8279 工作方式M0VX DPTR,AMOV A , #0GFH ; 清除 8279 内部显示 RAM 状态MOVX DPTR, AMOV A , #22HMOVX DPTR , A ; 设定 8279 分频系数LOOP:MOVX A , DPTRJB ACC.7 , LOOP ; 显示 RAM 清除完毕吗?MOV A , 80H ; 指向第一位数码管MOVX DPTR , AMOV A , 9FH ; 输出1 一个字形MOV DPTR ,#7000HMOVX DPTR , AINC DPTR LOOP1:M0VX A , DPTRAND A , #07H22CJNE A , #00H,L00P2AJMP LOOP1 ; 无键按下转LOOP2:MOV DPTR ,#7000H MOVX A , DPTR; 有键按下将键值送累加器 A键值,由 8279 的行扫描信号(SL0-SL3)与列信号(RL0-RL4)组成,不同组合的矩阵将得到不同键,但在同一矩阵中不会有相同的键值,这对初学者编制键显示程序大为方便.下表是通用键盘板键值:名称 0 1 2 3 4 5 6 7 8 9 键值 C1 C8 C9 D0 D8 E0 C2 CA D1 D9名称 状态切换 清除键值 DA C3 4.3.2.1 判定有无闭合键的子程序:判定有无闭合键的子程序为 KSI,供在键盘扫描程序中调 用。程序如下: KSI: MOV DPTR,#0FDF9H ;A口地址MOV A, #00H MOVX DPTR,A ;A口送00HINC DPTR INC DPTR ;C 口地址MOVX A,DPTR ;读C口CPL A ANL A,#0FH ;屏蔽高四位RET 4.3.2.2 键盘扫描程序如前所述,在单片机应用系统中常常是键盘和显示器同时存在,因此可以23把键盘扫描程序和显示程序配合起来使用,即:把显示程序作为键扫描程序的延时子程序。这样做既省去了一个专门的延时子程序,又能保证显示器常亮的可观效果。假定本系统中显示程序为 DIR,执行时间约为 6ms。键盘扫描程序如下: KEY1:ACALL KSI;检查是否有键闭合JNZ LK1;A 非“0”则转移ACALL DIR;显示一次(“延时 6s)AJMP KEY1LK1: ACALL DIR; 有键闭合二次延时ACALL DIR; 共 12ms 去抖动ACALL KSI; 再检查是否有键闭合JNZ LK2; 有键闭合转移到 LK2ACALL DIRAJMP KEY; 无键闭合,延时 6ms 后转 KEY1LK2: MOV R,#0FEH; 扫描初值送 R2MOV R,#00H; 扫描列号送 R4LK4: MOV DPTR,#0101H; A 口地址MOV A,R MOVX DPTR,A; 扫描初值送 A 口INC DPTR INC DPTR; C 口地址MOVX A,DPTR; 读 C 口JB ACC.0, LONE;ACC.0=1,第 0 行无键闭合,转 LONEMOV A,#00H; 装第 0 行值AJMP LKPLONE: JB ACC.1 LTWO;ACC.1=1,第 1 行无键闭合,转 LTWOMOV A,#08H; 装第 1 行值AJM PLKPLTWO: JB ACC.2,LTHR;ACC.2=1,第 2 行无键闭合,转 LTHRMOV A#10HAJMP LKPLTHR: JB ACC.3,NEXT;ACC.3=1,第 3 行无键闭合,转 NEXT MOV A,#18H; 装第 3 行值LKP: ADD A,R; 计算键码PUSH ACC; 保护键码LK3: ACALL DIR; 延时 6msACALL KSI; 检查是否继续闭合,若闭合再延时JNZ LK3POP ACC; 若键起,则键码送 ARETNEXT: INC R; 扫描列号加 1MOV A,R24JNB ACC.7,KND;若第 7 位=0,已扫完最高列则转 KNDRL AMOV R,AAJMP LK4; 进行下一行扫描KND: AJMP KEY1; 扫描完毕,开始新一轮4.3.3 A/D 转换程序(1)A/D 转换子程序。PUSH ASETB EA ; 开中断SETB IT1; 外中断 1 定义为跳变触发MOV DPTR,#0BFFFH; 送 ADC0809 口地址MOV A,#00H; 选通 IN0 通道MOVX DPTR,A ; 启动 A/D 转换NOP NOP NOP NOP NOP SETB EX1; 开外中断 1POP ARET(2)A/D 转换结束中断程序。ADINT1: PUSH PSW ; 保护现场PUSH APUSH DPHPUSH DPLMOV DPTR,#0BFFFHMOVX A,DPTR ; 读 A/D 转换结果MOV 60H,A ; 送入内部 RAM60H 中MOV A,#00H; 再次启动 IN0 通道MOVX DPTR,APOP DPL ; 恢复现场POP APOP PSWRET1254.3.4 温度检测子程序A/D 转换采用查询方式。为提高数据采样的可靠性,对采样温度进行数字滤波。数字滤波的算法很多,这里采用 4 次采样取平均值的方法。如前所述,本系统 A/D 转换结果乘 2 正好是温度值,因此,4 次采样的数字量之和除以 2就是检测的当前温度。检测结果高位存入 50H,低位存入 51H。温度检测子程序流程图如图 1 所示。图 1:温度检测子程序流程图温度检测子程序 TIN:TIN: MOV TEMP1,#00H ; 清检测温度缓冲区MOV TEMP0,#00HMOV R2,#04H; 取样次数送 R2MOV DPTR,#7FF8H; 指向 A/D 转换器 0 通道 LTIN1:MOVX DPTR,A; 启动转换HERE:JNB IE1,HERE; 等待转换结束MOVX A,DPTR ; 读转换结果ADD A,TEMP0; 累加(双字节加法)MOVTEMP0,AMOVA,#00H4R2A/D851H850HAR2-10A42YNNY26ADDC A,TEMP1MOVTEMP1,ADJNZ R2,LTIN1 ; 4 次采样完否,未完继续CLR C; 累加结果除 2(双字节除法)MOVA,TEMP1 RRC AMOV TEMP1,AMOV A,TEMP0RRC AMOV TEMP0,ARET4.3.5 温度控制子程序将当前温度与预置温度比较,当前温度小于预置温度时,继电器闭合,接通电阻丝加热;当前温度大于预置温度时,继电器断开,停止加热;当二者相等时电炉保持原来状态;当前温度降低到比预置温度低 5时,再重新启动加热;当前温度超出报警上下限时将启动报警,并停止加热。由于电炉开始加热时,当前温度可能低于报警下限,为了防止误报,在未达到预置温度时,不允许报警,为此设置了报警允许标志 F0。模块流程见图 2。-2YNNNYY27温度控制流程图温度控制子程序 CONT:CONT:MOV A,TEMP0; 当前温度-预置温度(双字节减)CLR CSUBB A,ST0MOV B,A ; 低 8 位相减的差值暂存 BMOV A,TEMP1SUBB A,ST1JNC LOFF; 无借位,表示当前温度预置温度,转 LOFFJNB F0,LON ;当前温度预置温度,判是否达到过预置温度MOVA,B ; 若达到过预置温度,判二者差值是否大于 2CLRCSUBB A,#02HJNC ACC.7,LOFF;差值不大于 2,转 LOFFLON:CLR P2.1; 开电炉SJMP EXIT; 返回LOFF: SETB F0; 设置允许报警标志SETB P2.1; 关电炉EXIT:RET4.3.6 看门狗电路子程序:ORG 0000HLJMP STARTORG 000BH LJMP INTT0ORG 0030HSTART:MOV SP,#30H MAIN:NOPNOPSETB P1.0NOPNOP28SETB EANOPSETB ET0 LJMP MAININTT0:NOPNOPCLR P1.7NOPNOPRETI这样,在整个用户程序中只唯一的一对指令(SETB P1.7 及 CLR P1.7)能使“ 看门狗 ”定时器复位。也就是说不会有任何 “非法” 的指令能使“看门狗”定时器误复位,致使系统已经“ 死机” 而“看门狗”失效。当然,对对没有中断的用户系统,只需将清零指令(CLR P1.7)也插在主程序中就可以了;对于有多种中断的用户系统,如果没有中断嵌套,则清零指令(CLR P1.7)可以插在任一个中断子程序中,而在主程序中适当加入一些有关中断的冗余指令(如SETB ET0 等) ,以免因有关中断的特殊功能寄存器数据受到干扰时导致中断功能失效;对于有二级中断嵌套的用户系统,清零指令(CLR P1.7)可以插在中断种数比较多的那一级中的任一个中断子程序中,插有“喂狗”指令的那一级中断系统将会受到“看门狗 ”的保护,而另一级中断系统如果失效, “看门狗” 是“无动于衷”的,这时只能尽量减少这种中断子程序的执行时间以减少受到干扰的可能性。如果二级中断嵌套系统者受到“看门狗”的保护,就必需设计一个非常复杂的“看门狗 ”电路,其 “喂狗”指令要由三部分来保证各个部分都能正常工作,需要说明的是,如果主程序运行一次的时间(包括可能被中断的时间)超过 1.6 秒,则要适当再插入一条 SETB 29第五章 设计感想本文的温度控制系统,只是单片机广泛应用于各行各业中的一例,通过本次设计,使我进一步熟悉了一个系统的设计过程,为毕业设计打下了坚实的基础,这次设计属于理论设计,没有得到实践的检验,只有在逻辑上完成了这次设计。MCS-51 单片机,体积小,重量轻,抗干扰能力强,对环境要求不高,价格低廉,可靠性高,灵活性好,即使是非电子计算机专业人员,通过学习一些专业基
- 温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

人人文库网所有资源均是用户自行上传分享,仅供网友学习交流,未经上传用户书面授权,请勿作他用。