浅析51单片机的水温测控系统实验报告.doc

浅析51单片机的水温测控系统实验报告.doc

  1. 1、本文档共14页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
浅析51单片机的水温测控系统实验报告

摘要 本次实验是软硬件相结合的实验,通过传感器得到的阻值与其它电阻,可以搭建一个电桥,将水温转化为电压,然后通过放大器将电压放大到所需要的值,将所得的电压送入单片机的AD转换电路,将模拟信号转换成数字信号,从而在单片机的液晶屏上显示当前的温度。此烧水壶是可控制的,即设定温度,使水加热到设定温度且保温,此控制算法采用PID控制算法来控制继电器的通断,来保证水温恒定在设定温度处。 一、设计要求 1.传感器:Pt100铂热电阻 2.测量放大器:自己设计与搭建 3.被控对象:400W电热杯,约0.5公斤自来水 4.执行机构:12V驱动,5A负载能力的继电器 5.控制系统:51单片机 6.控制算法:PID 7.温度范围:环境温度~100度 8.测量误差1度,控制误差2度 二、设计原理及方案 热电阻传感器 热电阻传感器是利用导体或半导体的电阻值随温度变化而变化的原进行测温的。 热电阻的工作原理:温度升高,金属内部原子晶格的振动加剧,从而使金属内部的自由电子通过金属导体时的阻碍增大,宏观上表现出电阻率变大,电阻值增加,我们称其为正温度系数,即电阻值与温度的变化趋势相同。 实验原理框图 测量放大器电路图 说明:电位器R10用来调节偏置电压,而电位器R7则用来调节增益。实验时,用R10来调节零点,用R7来调节满度。该电路将0℃-100℃转换为0-5V电压。 上述电路图采用仪表放大器,将铂热电阻两端的电压U2与电位器R10两端的电压U1差放大,放大器输出电压U0与电压差的关系为: 由铂热电阻阻值与水温的关系可知,铂热电阻的范围是。则整理得: 而仪表放大器的输出电压为0~5V,所以放大倍数大约为:5/0.04=125。 当假设R8/R4=2时,R2/R7=30 由此,我们可以选择R8=20K,R4=10K,R2=10K,R7=2K的电位器,为了使放大器的性能更好,我们可以把R10选为200欧姆的电位器。调节R,可以调节电平,调节R7是调节放大倍数。 A/D转换原理 调节测量放大电路的电位器R2和R7,使差分放大器输出0-5V电压,送入单片机。单片机的A/D转换电路将0-5V电压划分为1024个量化台阶,即0-5V对应0-1023。用10位二进制数表示。采样读出DIO口的连续10个电平值,当量化台阶为1000时,刚好1000对应的是100摄氏度,所以只需把采样读出的电平值左移一位,即可换算出对应的温度值。 PID控制算法 三、程序设计 主要思想:首先AD转换器TLC1549是10位的,故转换最大值为1023,为显示及计算方便,只取到1000,对应输入电压值4.88V,对应显示温度值100摄氏度.由于温度传感器基本是线性的,故0摄氏度对应电压值0V,取放大器放大倍数约100倍,将输入的微小电流放大.程序中计时器定时为50ms,每50 次也就是2.5 秒进行一次AD 转换,显示及PID计算,也就是2.5 秒的加热周期,故占空比的比例为五十分之几,这个几是PID 计算出来的u 换算出来的.u的取值有负有正,且大小范围非常大,不好确定,故对u经行比例压缩,u越大加热的占空比就越高,u为0对应不加热,这样就将u转换为占空比.虽然可能精度不够,但基本实现了温度的控制.关于PID三个系数的确定问题,比例项应大,使温度反应快一点.积分微分项系数也稍微取大一点,使震荡次数下降,稳定值波动较小.系统也许需要比较长的时间才能准确的跟踪设定值. TMOD设置 1.采用T1定时/计数器,工作在方式1下,见下表: GATE C/T M1 M0 GATE C/T M1 M0 0 0 0 1 0 0 0 0 所以 TMOD=10H 2.开中断:EA=1; 定时器T1开:ET1=1 3.TH1、TL1设置 定时时间设为50ms,所以 50×10-3=(216-初始值)×(12/11.0592),误差大约在零点几摄氏度内.在做温度控制的时候,由于我显示出了占空比值和时间t,故调整系数很方便和直观.控制误差大约一摄氏度左右,也是符合要求的,但系统的超调量还是比较大的,故做了适当软件上的调整,如温度超过设定值时直接将继电器断开,而不是等待PID 做出反应,毕竟温度控制是一个大滞后性和大惯性的系统. 五、实验总结 3年大学时光中,觉得最有用的课程就是这些实验了,它让我们学有所用,而不仅仅是各种理论,而是通过实践来巩固深入理解理论。这门实验课让我们不仅在软件上花了大量的功夫,代码力求精益求精;而且.在实际的调试中,还是发现软件只是一方面的内容,外硬件的优劣也是影响系统性能和精度的致命因素.尤其是做控制的时候和调整温度的时候,一个可靠的硬件可以省下不少功夫.温度控制系统的设计让我们学会的不仅仅是对单片机的内部结构的进一步理解与运用,还在上一次实

文档评论(0)

jcc001 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档