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

    基于PID算法和51单片机温度.docx

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

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

    基于PID算法和51单片机温度.docx

    1、基于PID算法和51单片机温度本科生毕业设计(论文)中文题目: 基于PID算法和51单片机的温度控制系统 英文题目: 院 系: 机械电子工程学院 专 业: 自动化 姓 名: 学 号: 指导教师: 完成时间: 摘 要近年来随着计算机在社会领域的渗透, 单片机的应用正在不断地走向深入,同时带动传统控制检测日新月益更新。在实时检测和自动控制的单片机应用系统中,单片机往往是作为一个核心部件来使用。本文从硬件和软件两方面来介绍水温自动控制过程,在控制过程中主要应用AT89C52、LCD1602显示器、光耦MOC3051,以单片机为核心控制部件,通过 DS18B20数字温度传感器采集环境温度,LCD显示实

    2、时温度和目标温度。软件方面采用c语言来进行程序设计,使编程简单化。为了便于扩展和更改,软件的设计采用模块化结构,使程序设计的逻辑关系更加简洁明了,使硬件在软件的控制下协调运作。而系统的过程则是:通过矩阵按键,设定恒温运行时的温度值,用LCD1602显示这个温度值.在运行过程中将DS18B20采样到的温度再将转换后的数字量用LCD1602进行显示,调用PID算法,确定PWM波的占空比,确定加热的功率,直到能在规定的温度下恒温加热。关键词:单片机系统;传感器;LCD1602;光耦;温度;PIDAbstractIn recent years, with the computer penetratio

    3、n in the social field, the application of SCM is to keep at the same time, traditional control testing update on Crescent benefits. In real-time detection and automatic control system of single-chip applications. often as a single-chip core component to use only single-chip is not enough knowledge,

    4、but also the specific hardware structure and the specific features of application software objects combine to make perfect. In this paper, both hardware and software for automatic control of water temperature on the process, in the control of the main application of the process of AT89C52, LCD1602,

    5、MOC3051, microcomputer as the core control components, through the digital temperature sensor DS18B20 collecting ambient temperature and through Liquid Crystal Display1602 display of a digital thermometer temperature. Software using C language for programming, so that making it easier for the progra

    6、mming, to save storage space. In order to facilitate the expansion and changes to the design of modular software structure, so that the logic of the relationship between program design more concise,Hardware software co-operation under the control of it.And systematic process is: First of all, by set

    7、ting the matrix keyboard, set the thermostat temperature at the time of DS18B20, and digital display of the temperature. Then, in the running temperature of the process of sampling analog into the converter in the simulation - digital converter, And the PID algorithm is called, to determine the heat

    8、ing power, to determine the duty ratio of PWM wave, and then converted digital control with digital display, the last single-chip microcomputer to control the heater used for heating or stop heating until the temperature in the provisions under the constant temperature heating.Key words:Single-chip

    9、microcomputer system ;Sensor;LCD1602;Opto-coupler; Temperature;PID目录目录 3第1章 绪 论 51.1 概述 51.2 温度控制技术的发展与现状 61.3 课题研究的内容及要求 81.4 课题的研究方案 9第2章 设计理论基础 132.1 单片机的发展概况 132.2 AT89C51系列单片机介绍 142.3 通讯芯片MAX232 232.4 显示器LCD1602 252.5 矩阵键盘 262.6 光耦芯片MOC3051 282.7 数字温度计DS18B20 352.8 双向可控硅 372.9 PID算法 42第3章 电路设计

    10、473.1 电源电路 473.2 51起震和复位电路 483.3 程序下载电路 493.4 报警电路 503.5 显示电路 513.6 键盘输入电路 523.7 传感器电路 523.8 控制电热得快电路 53第4章 软件设计 544.1 程序构架 544.2 主程序 554.3 初始化程序 564.4 读取温度传感器DS18B20数据程序 574.5 按键扫描程序 584.6 温度控制PID程序 604.7 中断程序 61第5章 系统调试及结论分析 62参考文献 64致 谢 66附录 67第1章 绪 论1.1 概述温度是生活及生产中最基本的物理量,它表征的是物体的冷热程度。自然界中任何物理、化

    11、学过程都紧密的与温度相联系。在很多生产过程中,温度的测量和控制都直接和安全生产、提高生产效率、保证产品质量、节约能源等重大技术指标相联系。因此,温度的测量与控制在国民经济各个领域中均受到了相当程度的重视。在实际的生产实验环境下,由于系统内部与外界的热交换是难以控制的,其他热源的干扰也是无法精确计算的,因此温度量的变化往往受到不可预测的外界环境扰动的影响。为了使系统与外界的能量交换尽可能的符合人们的要求,就需要采取其他手段来达到这样一个绝热的目的,例如可以让目标系统外部环境的温度与其内部温度同步变化。根据热力学第二定律,两个温度相同的系统之间是达到热平衡的,这样利用一个与目标系统温度同步的隔离层

    12、,就可以把目标系统与外界进行热隔离。另外,在大部分实际的环境中,增温要比降温方便得多。因此,对温度的控制精度要求比较高的情况下,是不允许出现过冲现象的,即不允许实际温度超过控制的目标温度。特别是隔热效果很好的环境,温度一旦出现过冲,将难以很快把温度降下来。这是因为很多应用中只有加热环节,而没有冷却的装置。同样道理,对于只有冷却没有加热环节的应用中,实际温度低于控制的目标温度,对控制效果的影响也是很大的。鉴于上述这些特点,高精度温度控制的难度比较大,而且不同的应用环境也需要不同的控制策略。下面就简要的讨论一下温度测控技术的发展与现状。1.2 温度控制技术的发展与现状近年来,温度的检测在理论上发展

    13、比较成熟,但在实际测量和控制中,如何保证快速实时地对温度进行采样,确保数据的正确传输,并能对所测温度场进行较精确的控制,仍然是目前需要解决的问题。温度测控技术包括温度测量技术和温度控制技术两个方面。在温度的测量技术中,接触式测温发展较早,这种测量方法的优点是简单、可靠、低廉、测量精度较高,一般能够测得真实温度但由于检测元件热惯性的影响,响应时间较长,对热容量小的物体难以实现精确的测量,并且该方法不适宜于对腐蚀性介质测温,不能用于超高温测量,难于测量运动物体的温度。另外的非接触式测温方法是通过对辐射能量的检测来实现温度测量的方法,其优点是不破坏被测温场,可以测量热容量小的物体,适于测量运动物体的

    14、温度,还可以测量区域的温度分布,响应速度较快。但也存在测量误差较大,仪表指示值一般仅代表物体表观温度,测温装置结构复杂,价格昂贵等缺点。因此,在实际的温度测量中,要根据具体的测量对象选择合适的测量方法,在满足测量精度要求的前提下尽量减少投入。温度控制技术按照控制目标的不同可分为两类动态温度跟踪与恒值温度控制。动态温度跟踪实现的控制目标是使被控对象的温度值按预先设定好的曲线进行变化。在工业生产中很多场合需要实现这一控制目标,如在发酵过程控制,化工生产中的化学反应温度控制,冶金工厂中燃烧炉中的温度控制等恒值温度控制的目的是使被控对象的温度恒定在某一给定数值上,且要求其波动幅度即稳态误差不能超过某允

    15、许值。本文所讨论的基于单片机的温度控制系统就是要实现对温控箱的恒值温度控制要求,故以下仅对恒值温度控制进行讨论。从工业控制器的发展过程来看,温度控制技术大致可分以下几种:定值开关温控法、PID线性温控法、智能温控法。其中PID这种控温方法是基于经典控制理论中的调节器控制原理,控制是最早发展起来的控制策略之一,由于其算法简单、鲁棒性好、可靠性高等优点被广泛应用工业过程控制中,尤其适用于可建立精确数学模型的确定性控制系统。由于调节器模型中考虑了系统的误差、误差变化及误差积累三个因素,因此,其控制性能大大地优越于定值开关控温。其具体控制电路可以采用模拟电路或计算机软件方法来实现调节功能。前者称为模拟

    16、控制器,后者称为数字控制器。其中数字控制器的参数可以在现场实现在线整定,因此具有较大的灵活性,可以得到较好的控制效果。采用这种方法实现的温度控制器,其控制品质的好坏主要取决于三个参数比例值、积分值、微分值。只要PID参数选取的正确,对于一个确定的受控系统来说,其控制精度是比较令人满意的。但是,它的不足也恰恰在于此,当对象特性一旦发生改变,三个控制参数也必须相应地跟着改变,否则其控制品质就难以得到保证。1.3 课题研究的内容及要求1.3.1 课题的主要研究的内容 本文所要研究的课题是基于单片机控制的水温控制系统的设计,主要是介绍了对水箱温度的显示、控制及报警,实现了温度的实时显示及控制。水箱水温

    17、控制部分,提出了用DS18B20、AT89C52单片机及LCD1602的硬件电路完成对水温的实时检测及显示,利用DS18B20与单片机连接由软件与硬件电路配合来实现对加热电阻丝的实时控制及超出设定的上下限温度的报警系统。而水温度控制部分,采用一套PID闭环负反馈控制系统,由DS18B20检测水的温度,并在LCD1602中显示。控制器是用89C52单片机,用PID算法对检测信号和设定值的差值进行调节后输出控制信号给执行机构,去调节PWM波的占空比从而控制热得快的加热功率,从而控制水的温度。它具有微型化、低功耗、高性能、抗干扰能力强、易配微处理器等优点,特别适合于构成多点的温度测控系统,可直接将温

    18、度转化成串行数字信号供微机处理,而且每片DS18B20都有唯一的产品号,可以一并存入其ROM中,以便在构成大型温度测控系统时在单线上挂接任意多个DS18B20芯片。从DS18B20读出或写入DS18B20信息仅需要一根口线,其读写及其温度变换功率来源于数据总线,该总线本身也可以向所挂接的DS18B20供电,而且不需要额外电源。同时DS18B20能提供十二位温度读数,它无需任何外围硬件即可方便地构成温度检测系统。而且利用本次的设计主要实现温度测试,温度显示,温度门限设定,超过设定的门限值时按PID算法得出的功率启动加热装置等功能。而且还要以单片机为主机,使温度传感器通过一根口线与单片机相连接,再

    19、加上温度控制部分和人机对话部分来共同实现温度的监测与控制。1.3.1 用单片机实现其具体控制功能 (1)能够连续测量水的温度值,用LCD1602显示水的实际温度。(2)能够设定水的温度值,设定范围是3090。(3)能够实现水温的自动控制,如果设定水温为85,则能使水温保持恒定在85的温度下运行。(4)用DS18B20做温度传感器,用单片机AT89C52和PID算法控制电加热器,通过矩阵键盘的输入来控制水温的设定值,数值采用LCD1602显示。1.4 课题的研究方案温度控制系统是比较常见和典型的过程控制系统。温度是工业生产过程中重要的被控参数之一,当今计算机控制技术在这方面的应用,已使温度控制系

    20、统达到自动化、智能化,比过去单纯采用电子线路进行PID调节的控制效果要好得多,可控性方面也有了很大的提高。1 方案一(见图1-1)图1-1 方案一的图此方案是传统的一位式模拟控制方案,选用模拟电路,用电位器设定值,反馈的温度值和设定值比较后,决定加热或不加热。其特点是电路简单,易于实现,但是系统所得结果的精度不高并且调节动作频繁,系统静态差大、不稳定。系统受环境影响大,不能实现复杂的控制算法,不能用数码管显示,不能用键盘设定。2 方案二(见图1-2)图1-2 方案二的图此方案是传统的二位式模拟控制方案,其基本思想与方案一相同,但由于采用上下限比较电路,所以控制精度有所提高。这种方法还是模拟控制

    21、方式,因此也不能实现复杂的控制算法使控制精度做得较高,而且不能用数码管显示,对键盘进行设定。3 方案三(见图1-3)图1-3 方案三的图此方案采用89C52单片机系统来实现。单片机软件编程灵活、自由度大,可用软件编程实现各种控制算法和逻辑控制。单片机系统可以用数码管来显示水温的实际值,能用键盘输入设定值。本方案选用了AT89C52芯片,不需要外扩展存储器,可使系统整体结构更为简单。结论:前两种方案是传统的模拟控制方式,而模拟控制系统难以实现复杂的控制规律,控制方案的修改也较为繁琐。而方案三是采用以单片机为控制核心的控制系统,尤其对温度控制,可达到模拟控制所达不到的效果,并且实现显示和键盘设定功

    22、能,大大提高了系统的智能化。也使得系统所测得结果的精度大大提高。所以,经过对三种方案的比较,本次毕业设计采用了方案三。第2章 设计理论基础 本设计系统的基本组成单元包括:主机、温度采样单元、单片机控制单元、调节执行单元四部分,本章将逐一进行介绍。2.1 AT89C51系列单片机介绍2.2.1 AT89C51系列基本组成及特性AT89C51是一种带4k字节闪烁可编程可擦除只读存储器(FPEROMFalsh Programmable and Erasable Read Only Memory)的低电压,高性能CMOS8位微处理器,俗称单片机。而在众多的51系列单片机中,要算 ATMEL 公司的AT

    23、89C51更实用,也是一种高效微控制器,因为它不但和8051指令、管脚完全兼容,而且其片内的4K程序存储器是FLASH工艺的,这种工艺的存储器,用户可以用电的方式达到瞬间擦除、改写。而这种单片机对开发设备的要求很低,开发时间也大大缩短。AT89C51基本功能描述如下:AT89C51是一种低损耗、高性能、CMOS八位微处理器,而且在其片种还有4k字节的在线可重复编程快擦快写程序存储器,能重复写入/擦除1000次,数据保存时间为十年。它与MCS-51系列单片机在指令系统和引脚上完全兼容,不仅可完全代替MCS-51系列单片机,而且能使系统具有许多MCS-51系列产品没有的功能。AT89C51可构成真

    24、正的单片机最小应用系统,缩小系统体积, 增加系统的可靠性,降低了系统成本。只要程序长度小于4k, 四个I/O口全部提供给用户。可用5V电压编程,而且写入时间仅10毫秒, 仅为8751/87C51 的擦除时间的百分之一,与8751/87C51的12V电压擦写相比, 不易损坏器件, 没有两种电源的要求,改写时不拔下芯片,适合许多嵌入式控制领域。AT89C51 芯片提供三级程序存储器锁定加密, 提供了方便灵活而可靠的硬加密手段, 能完全保证程序或系统不被仿制。另外,AT89C51 还具有MCS-51系列单片机的所有优点。1288 位内部RAM, 32 位双向输入输出线, 两个十六位定时器/计时器,

    25、5个中断源, 两级中断优先级, 一个全双工异步串行口及时钟发生器等。AT89C51有间歇、掉电两种工作模式。间歇模式是由软件来设置的, 当外围器件仍然处于工作状态时, CPU可根据工作情况适时地进入睡眠状态, 内部RAM和所有特殊的寄存器值将保持不变。这种状态可被任何一个中断所终止或通过硬件复位。掉电模式是VCC电压低于电源下限, 当振荡器停止振动时, CPU 停止执行指令。该芯片内RAM和特殊功能寄存器值保持不变, 一直到掉电模式被终止。只有VCC电压恢复到正常工作范围而且在振荡器稳定振荡后,通过硬件复位、掉电模式可被终止。2.2.2 AT89C51系列引脚功能AT89C51有40引脚双列直

    26、插(DIP)形式。其与80C51引脚结构基本相同,其逻辑引脚图如图2-1。 图2-1 AT89C51逻辑引脚图各引脚功能叙述如下:1电源和晶振VCC运行和程序校验时加+5VGND接地XTAL1输入到振荡器的反向放大器XTAL2反向放大器的输出,输入到内部时钟发生器(当使用外部振荡器时,XTAL1接地,XTAL2接收振荡器信号)RST:复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。ALE/PROG:当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的地位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频

    27、率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。然而要注意的是:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。2I/O(4个口,32根)P0口8位、漏极开路的双向I/O口。当使用片外存储器(ROM、RAM)时,作地址和数据分时复用。在程序校验期间,输出指令字节(需加外部上拉电路)。P0口(作为总线时)能驱动8个LSTTL负载。P1口8位、准双向I/O口。在编程/校验期间,用于输入低位字节地址。P1口可驱动4个LSTTL负载。对于80C51,P1.0T

    28、2,是定时器的计数端且位输入;P1.1T2EX,是定时器的外部输入端。这时,读两个特殊输入引脚的输出锁存器应由程序置1。P2口8位、准双向I/O口。当使用片外存储器(ROM及RAM)时,输出高8位地址。在编程/校验期间,接收高位字节地址。P2口可以驱动4个LSTTL负载。P3口8位、准双向I/O口,具有内部上拉电路。P3口提供各种替代功能。在提供这些功能时,其输出锁存器应由程序置1。P3口可以输入/输出4个LSTTL负载。3串行口P3.0RXD(串行输入口),输入。P3.1TXD(串行输出口),输出。4中断P3.2INT0外部中断0,输入。P3.3INT1外部中断1,输入。5定时器/计数器P3

    29、.4T0定时器/计数器0的外部输入,输入。P3.5T1定时器/计数器1的外部输入,输入。6数据存储器选通P3.6WR低电平有效,输出,片外存储器写选通。P3.7RD低电平有效,输出,片外存储器读选通。7控制线(共4根)输入:RST复位输入。当振荡器复位器件时,要保持RST脚两个机器周期的高电平时间。EA/Vpp片外程序存储器访问允许信号,低电平有效。在编程时,其上施加21V的编程电压。注意:在加密方式1时,EA将内部锁定为RESET;当EA端保持高电平时,此间内部程序存储器。在FLASH编程期间,此引脚也用于施加12V编程电源(VPP)。输入、输出:ALE/PROG地址锁存允许信号,输出。AL

    30、E以1/6的振荡频率稳定速率输出,可用作对外输出的时钟或用于定时。在EPROM编程期间,作输入,输入编程脉冲(PROG)。ALE可以驱动8个LSTTL负载。当访问外部存储器时,地址锁存允许的输出电平用于锁存地址的低位字节。在FLASH编程期间,此引脚用于输入编程脉冲。在平时,ALE端以不变的频率周期输出正脉冲信号,此频率为振荡器频率的1/6。因此它可用作对外部输出的脉冲或用于定时目的。注意:每当用作外部数据存储器时,将跳过一个ALE脉冲。如想禁止ALE的输出可在SFR8EH地址上置0。此时, ALE只有在执行MOVX,MOVC指令是ALE才起作用。另外,该引脚被略微拉高。如果微处理器在外部执行

    31、状态ALE禁止,置位无效。输出:PSEN片外程序存储器选通信号,低电平有效。在从片外程序存储器取址期间,在每个机器周期中,当PSEN有效时,程序存储器的内容被送上P0口(数据总线)。PSEN可以驱动8个LSTTL负载。2.2.3 AT89C51系列单片机的功能单元1并行I/O接口:单片机芯片内有一项主要功能就是并行I/O口。51系列共有4个8位的并行I/O口,分别记作P0、P1、P2、P3每个口都包含一个锁存器,一个输出驱动器和输入缓冲器。实际上,它们已被归入专用寄存器之列,并且具有字节寻址和位寻址功能。在访问片外扩展存储器时,低八位地址和数据由P0口分时传送,高八位地址由P2口传送。2定时器/计数器定时器/计数器(timer/counter)是单片机中的重要部件,其工作方式灵活、编程简单,使用它对减轻CPU的负担和简化外围电路都大有好处。C51系列包含有两个16位的可编程定时器/计数器分别称为定时器/计数器T0和定时器/计数器T1;在C51部分产品中,还包含有一个用做看门狗的8位定时器。定时器/计数器的核心是一个加1计数引脚上施加器,其基本功能是加1功能。在单片机的定时器T0或T1中,有一个定时器发生由0到1的跳变时,计数器增1,即为计数功能;在单片机内部对机器周期或其分频进行计数,从而得到定时,这就是定时功能。在单片机中,定时功能和计数功能的设定和控制都是通过软件来进行的。


    注意事项

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

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




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

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

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


    收起
    展开