收藏 分销(赏)

单片机温度控制系统设计.doc

上传人:精*** 文档编号:9816101 上传时间:2025-04-09 格式:DOC 页数:17 大小:128.50KB 下载积分:8 金币
下载 相关 举报
单片机温度控制系统设计.doc_第1页
第1页 / 共17页
单片机温度控制系统设计.doc_第2页
第2页 / 共17页


点击查看更多>>
资源描述
资料内容仅供您学习参考,如有不当之处,请联系改正或者删除。   单片机温度控制系统设计 摘要: 本文介绍了一种基于MSP430 单片机的温度测控装置。该装置可实现对温度的测量, 并能根据设定值对环境温度进行调节, 实现控温的目的。控制算法基于数字PID算法。 引言     温度是工业控制中主要的被控参数之一, 特别是在冶金、 化工、 建材、 食品、 机械、 石油等工业中, 具有举足重轻的作用。随着电子技术和微型计算机的迅速发展, 微机测量和控制技术得到了迅速的发展和广泛的应用[1]。单片机具有处理能强、 运行速度快、 功耗低等优点, 应用在温度测量与控制方面, 控制简单方便, 测量范围广, 精度较高。     本文设计了一种基于MSP430单片机的温度测量和控制装置, 能对环境温度进行测量, 并能根据温度给定值给出调节量, 控制执行机构, 实现调节环境温度的目的。 1 整体方案设计     单片机温度控制系统是以MSP430单片机为控制核心。整个系统硬件部分包括温度检测系统、 信号放大系统、 A/D转换、 单片机、 I/O设备、 控制执行系统等。 单片机温度控制系统控制框图如下所示:       温度传感器将温度信息变换为模拟电压信号后, 将电压信号放大到单片机能够处理的范围内, 经过低通滤波, 滤掉干扰信号送入单片机。在单片机中对信号进行采样, 为进一步提高测量精度, 采样后对信号再进行数字滤波。单片机将检测到的温度信息与设定值进行比较, 如果不相符, 数字调节程序根据给定值与测得值的差值按PID控制算法设计控制量, 触发程序根据控制量控制执行单元。如果检测值高于设定值, 则启动制冷系统, 降低环境温度; 如果检测值低于设定值, 则启动加热系统, 提高环境温度, 达到控制温度的目的。 2 温度信号检测     本系统中对检测精度要求不是很高, 室温下即可, 因此选用高精度热敏电阻作为温度传感器。热敏电阻具有灵敏度较高、 稳定性强、 互换精度高的特点。可使放大器电路极为简单, 又免去了互换补偿的麻烦。     热敏电阻具有负的电阻温度特性,当温度升高时,电阻值减小,它的阻值—温度特性曲线是一条指数曲线,非线性度较大。而对于本设计, 因为温度要求不高, 是在室温环境下, 热敏电阻的阻值与环境温度基本呈线性关系[2], 这样能够经过电阻分压简单地将温度值转化为电压值。     给热敏电阻通以恒定的电流, 可得到电阻两端的电压, 根据与热敏电阻特性有关的温度参数T0 以及特性系数k, 可得下式 T=T0-kV(t) (1) 式中T为被测温度。 根据上式, 能够把电阻值随温度的变化关系转化为电压值随温度变化的关系,由于热敏电阻的电信号一般都是毫伏级, 必须经过放大, 将热敏电阻测量到的电信号转化为0~3.6之间, 才能在单片机中使用。 下图为放大电路原理图。稳压管的稳压值为1.5V。       由于传感器输出微弱的模拟信号, 当信号中存在环境干扰时, 干扰信号也被同时放大, 影响检测的精度, 需用滤波电路对先对模拟信号进行处理, 以提高信号的抗干扰能力。本系统采用巴特沃斯二阶有源低通滤波电路。选取该巴特沃斯二阶有源低通滤波电路的截止频率 fH=10 kHz 。 3 控制系统设计 3.0 软件设计     单片机温度控制器控制温度范围100℃到400℃, 采用通断控制, 经过改变给定控制周期内加热和制冷设备的导通和关断时间, 来提高和降低温度, 以达到调节温度的目的。     软件设计中选取控制周期TC 为200(T1×C) , 导通时间取Pn ×T1×C , 其中Pn 为输出的控制量, Pn值介于0~200之间, T1 为定时器定时的时间, C为常数。由上两式可看出, 经过改变T1 定时时间或常数C, 就可改变控制周期TC 的大小。温度控制器控制的最高温度为400℃, 当给定温度超过400℃时以400℃计算。 图3为采样中断流程图。       数模转换部分使用单片机自带的12位A/D转换器, 能同时实现数模转换和控制, 免去使用专用的转换芯片, 使系统处理速度更快, 精度更高, 使电路简化。采样周期为500 μs , 当采集完16个点的数据以后, 设置标志”nADCFlag =1”, 通知主程序采集完16个点的数据, 主程序从全局缓冲区里读出数据。     为进一步减小随机信号对系统精度的影响, A/D转换后, 用平均值法对采样值进行数字滤波。每16个采样点取一次平均值。然后将计算到的平均值作为测量数据进行显示。同时, 按照PID算法, 对温度采样值和给定值之间的偏差进行控制, 得到控制量。采样全过程完成后就可屏蔽采样中断, 同时启动T1定时[3], 进入控制过程。     温度值和热敏电阻的测量值在整个温度采样区间内基本呈线性变化, 因此在程序中不需要对测量数据进行线性校正。MSP430的T1定时器中断作为控制中断, 温度采样过程和控制输出过程采用了互锁结构, 即在进行温度采样, 温度值处理和运算等过程时T1不定时, 待采样全过程进行完时再启动T1定时并同时屏蔽采样中断。T1定时开始就进入控制过程, 在整个控制过程中都不采样, 直到200(T1×C) 定时时间到, 要开始新一轮的控制周期。在启动采样的同时屏蔽T1中断。 图4为T1定时中断流程图。       图中, M代表定时器控制周期计数值, N则表示由调节器计算出的控制量。首先判断控制周期TC是否己经结束。若控制周期TC已结束(即M=0), 则屏蔽T1定时器中断, 进行新一轮温度采样; 若控制周期TC还未结束〔即M≠0 〕, 则开始判断导通时间是否结束。若导通时间己结束(即N=0), 则置输出控制信号为低, 并重新赋常数C值, 启动定时器定时, 同时退出中断服务程序; 若导通时间还未结束(即N ≠0 ), 则置输出控制信号为高, 控制执行其间继续导通, 重新赋常数C值, 启动定时器定时, 同时退出中断服务程序。 3.1 数字PID 本文控制算法采用数字PID 控制, 数字PID 算法表示式如下所示:   其中, KP 为比例系数; KI=KPT/TI 为积分系数; T 为采样周期, TI 为积分时间系数; KD=KPTD/T 为微分系数, TD 为微分时间系数。u(k) 为调节器第k次输出, e(k) 为第k 次给定与反馈偏差。     对于PID 调节器, 当偏差值输出较大时, 输出值会很大, 可能导致系统不稳定, 因此在实际中, 需要对调节器的输出限幅[4], 即当|u|>umax 时, 令u=umax 或u=-umax , 或根据具体情况确定。   3.2 温度调节     PI 控制器根据温度给定值和测量值之间的偏差调节, 给出调节量, 再经过单片机输出PWM 波, 调节可控硅的触发相位的相位角, 以此来控制执行部件的关断和开启时间, 达到使温度升高或降低的目的。随后整个系统再经过检测前一阶段控制后的温度, 进行近一步的控制修正, 最终实现预期的温度监控目的。 4 结论     本设计利用单片机低功耗、 处理能力强的特点, 使用单片机作为主控制器, 对室内环境温度进行监控。其结构简单、 可靠性较高, 具有一定的实用价值和发展前景。 参考文献 [1] 赵丽娟, 邵欣.基于单片机的温度监控系统的设计与实现.机械制造, , 44(1) [2] 张开生, 郭国法.MCS-51 单片机温度控制系统的设计.微计算机信息, , (7) [3] 沈建华, 杨艳琴, 翟骁曙..MSP430 系列16 位超低功耗单片机原理与应用.清华大学出版社, , 148-155 [4] 赖寿宏.微型计算机控制技术.北京:机械工业出版社, 1994:90-95 MCS-51单片机温度控制系统的设计 -10-13 16:16 摘     要: 本文从硬件和软件两方面介绍了MCS-51单片机温度控制系统的设计思路, 对硬件原理图和程序框图作了简捷的描述。 关键词: MCS-51单片机; 温度; 软硬件; 硬件原理图; 程序框图; 设计 0引言        在现代化的工业生产中, 电流、 电压、 温度、 压力、 流量、 流速和开关量都是常见的主要被控参数。例如: 在冶金工业、 化工生产、 电力工程、 造纸行业、 机械制造和食品加工等诸多领域中, 人们都需要对各类加热炉、 热处理炉、 反应炉和锅炉中的温度进行检测和控制。采用MCS-51单片机来对温度进行控制, 不但具有控制方便、 组态简单和灵活性大等优点, 而且能够大幅度提高被控温度的技术指标, 从而能够大大提高产品的质量和数量。因此, 单片机对温度的控制问题是一个工业生产中经常会遇到的问题。本文以它为例进行介绍, 希望能收到举一反三和触类旁通的效果。 1硬件电路设计        以热电偶为检测元件的单片机温度控制系统电路原理图如图1所示。        1.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.2接口电路        接口电路采用MCS-51系列单片机8031, 外围扩展并行接口8155, 程序存储器EPROM2764, 模数转换器ADC0809等芯片。        由图1可见, 在P2.0=0和P2.1=0时, 8155选中它内部的RAM工作; 在P2.0=1和P2.1=0时, 8155选中它内部的三个I/O端口工作。相应的地址分配为: 0000H - 00FFH        8155内部RAM 0100H               命令/状态口 0101H        A 口 0102H        B 口 0103H        C 口 0104H               定时器低8位口 0105H       定时器高8位口        8155用作键盘/LED显示器接口电路。图2中键盘有30个按键, 分成六行( L0-L5) 五列( R0-R4) , 只要某键被按下, 相应的行线和列线才会接通。图中30个按键分三类: 一是数字键0-9, 共10个; 二是功能键18个; 三是剩余两个键, 可定义或设置成复位键等。为了减少硬件开销, 提高系统可靠性和降低成本, 采用动态扫描显示。A口和所有LED的八段引线相连, 各LED的控制端G和8155C口相连, 故A口为字形口, C口为字位口, 8031能够经过C口控制LED是否点亮, 经过A口显示字符。 图1     单片机温度控制系统电路原理图 图2     8155用作键盘/LED显示器接口电路        2764是8K     EPROM型器件。8031的PSEN和2764的OE相连, P2.5和CE相连, 因此2764的地址空间为: 0000H---1FFFH, ADC0809的0通道( IN0     其它输入端可作备用) 和变送器的输出端相连, 因此从通道0( IN0) 上输入的0V--+5V范围的模拟电压经A/D转换后可由8031经过程序从P0口输入到它的内部RAM单元, 在P2.2=0和WR=0时, 8031可使ALE和START变为高电平而启动ADC0809工作; 在P2.2=0和RD=0时, 8031能够从ADC0809接收A/D转换后的数字量。也就是说ADC0809能够视为8031的一个外部RAM单元, 地址为03F8H( 地址重复范围很大) , 因此, 8031执行如下程序能够启动ADC0809工作。 MOV DPTR, #03F8H MOVX @DPTR,A 若8031执行下列程序: MOV DPTR, #03F8H MOVX A, @DPTR 则能够从ADC0809输入A/D转换后的数字量。 1.3温度控制电路        8031对温度的控制是经过双向可控硅实现的。如图一所示, 双向可控硅管和加热丝串接在交流220V、 50Hz市电回路。在给定周期T内, 8031只要改变可控硅管的接通时间即可改变加热丝的功率, 以达到调节温度的目的。        可控硅接通时间能够经过可控硅控制极上触发脉冲控制。该触发脉冲由8031用软件在P1.3引脚上产生, 在过零同步脉冲同步后经光电耦合管和驱动器输出送到可控硅的控制极上。 3. 温度控制的算法和程序框图 图3 主程序框图      3.1温度控制算法        一般, 电阻炉炉温控制都采用偏差控制法。偏差控制的原理是先求出实测炉温对所需炉温的偏差值, 然后对偏差值处理获得控制信号去调节电阻炉的加热功率, 以实现对炉温的控制。在工业上, 偏差控制又称PID控制, 这是工业控制过程中应用最广泛的一种控制形式, 一般都能收到令人满意的效果。      3.2温度控制程序框图       温度控制程序的设计应考虑如下: 1) 键盘扫描、 键码识别和温度显示; 2) 炉温采样、 数字滤波; 3) 数据处理; 4) 越限报警和处理; 5) PID计算、 温度标度转换 3.2.1主程序框图        主程序包括8031本身的初始化、 并行接口8155初始化等等。大致说来, 本程序包括设置有关标志、 暂存单元和显示缓冲区清零、 T0初始化、 CPU开中断、 温度显示和键盘扫描等程序。 3.2.2中断服务程序框图        T0中断服务程序是温度控制系统的主体程序, 用于启动数/模转换器、 读入采样数据、 数字滤波、 越限温度报警和越限处理、 PID计算和输出可控硅的触发脉冲等。P1.3引脚上输出的该同步触发脉冲宽度由T1计数器的溢出中断控制, 8031利用等待T1溢出中断的空闲时间( 形成P1.3输出脉冲顶宽) 完成把本次采样值转换成显示值而放入显示单元缓冲区和调用温度显示程序。8031从T1中断服务程序返回后即可恢复现场和返回主程序。 3.2.3主要子服务程序框图        主要服务子程序包括温度检测采样及数字滤波子程序、 带符号双字节乘法子程序和标度转换子程序目的是把实际采样取得的二进制值转换成BCD码形式的温度值, 然后存放到显示缓冲区中, 供显示子程序调用。 图4 中断服务程序框图        对于一般线性仪表来说, 标度转换公式为: Tx=A0 + (Am-A0)        其中, A0为一次测量仪表的下限; Am为一次测量仪表的上限; Vx 为实际测量值( 工程量) ; Vm为仪表上限对应的数字量; V0为仪表下限对应的数字量。 4 其它控制算法        不同的控制对象, 所采用的算法有所不同。例如对于热惯性大、 时间滞后明显、 耦合强、 难于建立精确数学模型的大型立式淬火炉, 能够采用人工智能模糊控制算法, 经过对淬火炉电热元件通断比的调节, 实现对炉温的自动控制, 也能够采用仿人智能控制( SHIC) 算法和PID控制算法的联合控制方案, 实际应用时应灵活运用。 5结束语        MCS-51单片机, 体积小, 重量轻, 抗干扰能力强, 对环境要求不高, 价格低廉, 可靠性高, 灵活性好, 即使是非电子计算机专业人员, 经过学习一些专业基础知识以后也能依靠自己的技术力量, 来开发所希望的单片机应用系统。本文的温度控制系统, 只是单片机广泛应用于各行各业中的一例, 相信读者会依靠自己的聪明才智, 使单片机的应用更加广泛化。 参考文献 [1] 陈明荧.8051单片机课程设计实训教材     北京:清华大学出版社 [2] 凌玉华.单片机原理与应用系统设计 长沙:中南大学出版社 [3] 胡汉才.单片机原理及其接口技术     北京:清华大学出版社 1995 [4] 徐淑华 程退安 姚万生 .单片机微型机原理及应用 哈尔滨工业大学出版社 1994
展开阅读全文

开通  VIP会员、SVIP会员  优惠大
下载10份以上建议开通VIP会员
下载20份以上建议开通SVIP会员


开通VIP      成为共赢上传

当前位置:首页 > 包罗万象 > 大杂烩

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        抽奖活动

©2010-2026 宁波自信网络信息技术有限公司  版权所有

客服电话:0574-28810668  投诉电话:18658249818

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :微信公众号    抖音    微博    LOFTER 

客服