.资料PWM控制在恒温控制系统中的应用.-.摘要随着人类社会不断迈向智能化,和新兴科技的不断发展,自动控制在人们的生产生活中发挥着越来越重要的作用,特别是恒量控制在科研、生产中的应用越来越广泛。本文针对恒温控制这一需求,对PWM以及单片机在自动化控制中的应用进行了广泛深入的研究,使用PWM控制技术并结合一定的软硬件设计进行试验,完成了PWM控制技术在恒温控制系统中的应用,主要研究内容如下:(1)介绍并研究了PWM控制技术的相关概念、应用领域、未来的应用前景与技术特点。(2)介绍并研究了MCS-51单片机在自动控制中的应用、应用领域、应用前景与应用特点。(3)介绍了常见温度传感器及其应用。(4)介绍了常用的隔离技术及其应用。关键字:PWM控制技术,MCS-51单片机,温度传感器,恒温控制,隔离技术.-.1.引言温度是工业生产、科学实验中主要的被控制参数之一,与之相关的各种温度控制系统广泛应用于冶金、化工、机械、食品、科研实验等领域。首先温度控制是工业生产过程中经常遇到的恒量控制,有些生产过程对其温度的控制效果直接影响着产品的质量;其次在科学实验中,尤其在生化实验中,温度控制在很大程度上决定了实验的结果和实验的成败,因而设计一种较为理想的温度控制系统对工业生产以及科研实验有着非常实用的价值。2.关键技术的研究与分析2.1.PWM技术的研究与分析PWM是英文“PulseWidthModulation”的缩写,其含义为脉冲宽度调制,简称脉宽调制。它是利用微处理器的数字输出来对模拟电路进行控制的一种非常有效的技术,广泛应用于测量、通信、功率控制与变换领域。2.1.1.PWM控制的基本原理理论基础:冲量相等而形状不同的窄脉冲加在具有惯性的环节上时,其效果基本相同。冲量指窄脉冲的面积。效果基本相同,是指环节的输出响应波形基本相同。低频段非常接近,仅在高频段略有差异。图1形状不同而冲量相同的各种窄脉冲面积等效原理:分别将如图1所示的电压窄脉冲加在一阶惯性环节(R-L电路)上,如图2a所示。其输出电流i(t)对不同窄脉冲时的响应波形如图2b所示。从波形可以看出,在i(t)的上升段,i(t)的形状也略有不同,但其下降段则几乎完全相同。脉冲越窄,各i(t)响应波形的差异也越小。如果周期性地施加上述脉冲,则相应i(t)也是周期性的。用傅里叶级数分解后将可看出,各i(t)在低频段的特性将非常接近,仅在高频段有所不同。如图2.-.图2冲量相同的各种窄脉冲的响应波形2.1.2.PWM相关概念占空比:输出的PWM中,高电平保持的时间与该PWM的时钟周期的时间之比分辨率:占空比最小能达到的量级。P=1/8n(n为位数)。2.1.3.常见PWM波形变换(1)等幅波变换其变换出的PWM波形的振幅相等,如图3所示:图3(2)不等幅波变换其变换出的PWM波形的振幅不相等,如图4所示:图42.2.AT89S51单片机的研究.-.2.2.1.AT89S51单片机的基本概述AT89S51是美国ATMEL公司生产的低功耗,高性能CMOS8位单片机,片内含4kbytes的可系统编程的Flash只读程序存储器,兼容标准8051指令系统及引脚。它集Flash程序存储器既可在线编程(ISP)也可用传统方法进行编程及通用8位微处理器于单片芯片中。2.2.2.主要性能参数及功能:·与MCS-51产品指令系统完全兼容·4k字节在系统编程(ISP)Flash闪速存储器·4.0-5.5V的工作电压范围·全静态工作模式:0Hz-33MHz·128×8字节内部RAM·32个可编程I/O口线·2个16位定时/计数器·6个中断源·全双工串行UART通道·低功耗空闲和掉电模式·中断可从空闲模唤醒系统·看门狗(WDT)及双数据指针·掉电标识和快速编程特性·灵活的在系统编程(ISP字节或页写模式)2.2.3.AT89S51方框图与功能介绍方框图如图5所示:图5.-.·中央处理器(CPU)CPU是单片机的主要核心部件,在CPU里面包含了运算器、控制器以及若干寄存器等部件组成。MCS-51的CPU能处理8位二进制数或代码。·内部数据存储器(RAM)MCS-51单片机芯片共有256个字节的RAM单元,其中后128单元被专用寄存器占用,能作为寄存器供用户使用的只是前128单元,用于存放可读写的数据。因此通常所说的内部数据存储器就是指前128单元,简称内部RAM。地址范围为00H~FFH(256B)。是一个多用多功能数据存储器,有数据存储、通用工作寄存器、堆栈、位地址等空间。·内部程序存储器(ROM)MCS-51内部有4KB/8KB字节的ROM(51系列为4KB,52系列为8KB),用于存放程序、原始数据或表格。因此称之为程序存储器,简称内部ROM。地址范围为0000H~FFFFH(64KB)。·定时器/计数器51系列共有2个16位的定时器/计数器以实现定时或计数功能,并以其定时或计数结果对计算机进行控制。定时时靠内部分频时钟频率计数实现,做计数器时,对P3.4(T0)或P3.5(T1)端口的低电平脉冲计数。·并行I/O(输入/输出)接口MCS-51共有4个8位的I/O口(P0、P1、P2、P3)以实现数据的输入输出。·串行接口MCS-51有一个可编程的全双工的串行口,以实现单片机和其它设备之间的串行数据传送。该串行口功能较强,既可作为全双工异步通信收发器使用,也可作为移位器使用。RXD(P3.0)脚为接收端口,TXD(P3.1)脚为发送端口。·中断控制系统MCS-51单片机的中断功能较强,以满足不同控制应用的需要。51系列有5个中断源(52系列有6个中断源),即外中断2个,定时中断2个,串行中断1个,全部中断分为高级和低级共二个优先级别。·定时与控制部件MCS-51单片机内部有一个高增益的反相放大器,基输入端为XTAL1输出端为XTAL2。MCS-51芯片的内部有时钟电路,但石英晶体和微调电容需外接。时钟电路为单片机产生时钟脉冲序列。2.2.4.引脚图及引脚功能说明·引脚图见图6.-.图3图6·Vcc:电源电压·GND:地·P0口:P0口是一组8位漏极开路型双向I/0口,也即地址/数据总线复用口。作为输出口用时,每位能驱动8个TTL逻辑门电路,对端口写“l”可作为高阻抗输入端用。·P1口:Pl是一个带内部上拉电阻的8位双向I/O口,Pl的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“l”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。端口引脚第二功能P1.5MOSI(用于ISP犏程)P1.6MISO(用于ISP犏程)P1.7SCK(用于ISP犏程)·P2口:P2是一个带有内部上拉电阻的8位双向I/O口,P2的输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对端口写“1”,通过内部的上拉电阻把端口拉到高电平,此时可作输入口。·P3口:P3口是一组带有内部上拉电阻的8位双向I/0口。P3口输出缓冲级可驱动(吸收或输出电流)4个TTL逻辑门电路。对P3口写入“l”时,它们被内部上拉电阻拉高并可作为输入端口。注:端口引脚第二功能.-.P3.0RXD(串行输入口)P3.1TXD(串行输出口)P3.2INT0(外中断0)P3.3INT1(外中断1)P3.4T0(定时/计数器0外部输入)P3.5T1(定时/计数器1外部输入)P3.6WR(外部数据存储器写选通)P3.7RD(外部数据存储器读选通)·RST:复位输入。当振荡器工作时,RST引脚出现两个机器周期以上高电平将使单片机复位。WDT溢出将使该引脚输出高电平,产生复位。·ALE/PROG:当访问外部程序存储器或数据存储器时,ALE(地址锁存允许)输出脉冲用于锁存地址的低8位字节。即使不访问外部存储器,ALE仍以时钟振荡频率的1/6输出固定的正脉冲信号,因此它可对外输出时钟或用于定时目的。要注意的是:每当访问外部数据存储器时将跳过一个ALE脉冲。·PSEN:程序储存允许(PSEN)输出是外部程序存储器的读选通信号,当AT89S51由外部程序存储器取指令(或数据)时,每个机器周期两次PSEN有效,即输出两个脉冲。当访问外部数据存储器,没有两次有效的PSEN信号。·EA/VPP:外部访问允许。欲使CPU仅访问外部程序存储器(地址为0000H-FFFFH),EA端必须保持低电平(接地)。需注意的是:如果加密位LB1被编程,复位时内部会锁存EA端状态。如EA端为高电平(接Vcc端),CPU则执行内部程序存储器中的指令。·XTALl:振荡器反相放大器及内部时钟发生器的输入端。·XTAL2:振荡器反相放大器的输出端。3.系统整体方案设计3.1.系统结构在实际的恒温控制系统中,需要对所控制的环境温度进行跟踪控制,本设计采用AD7416温度传感器进行温度的采集,然后将所采集得到的数据传送给单片机进行处理,处理的结果一方面用于人机交互,通过4个数码管显示到人机交互界面上,并可通过3个按键进行所控制温度的设定,使其适合实际的生产或科.-.研的应用;另一方面将处理的结果用于控制输出的PWM脉宽波形,来对温度进行自动控制。当所控制环境的温度升高或降低时,温度传感器所采集到的温度就会随之升高或降低,此时单片机所接收到的来自温度传感器的值和所设定的温度值必然会出现偏离,当所采集到的温度高于设定的温度时,单片机所控制输出的脉宽就减小,使固态继电器的吸合时间变短,从而使加热的时间减小,同时使辅助风扇转速加快,而使温度下降;当所采集到的温度低于设定的温度时,单片机所控制输出的脉宽就增大,使固态继电器的吸合时间变长,从而使加热的时间增大,同时使辅助风扇转速减慢,而使温度升高,由此实现了恒温控制。3.2.系统开发的软硬件平台3.2.1软件平台操作系统平台:Windowsxp/7集成开发平台:KeiluVision4硬件设计平台:AltiumDesignerWinter093.2.2硬件设计思想及产品选型(1)恒温控制系统采用模块化、集成化、标准化结构。便于环境多角度温度的监控。恒温控制系统设计需要满足以下条件:(2)低成本:低成本是大规模恒温控制系统广泛应用的前提,因此必须保证其应用的成本低。(3)扩展性:主控制器应具备良好的可扩展性,以满足以后系统的改进和新的监控点的加入。(4)可靠性:主控制器和温度采集器是整个系统的关键部分,可靠性必须得到保证。(5)功能强:微控制器应配有丰富的外设,满足各种功能需求。考虑到以上因素,在系统开发中,主要使用了AD7416温度传感器和AT89S51单片机作为系统的控制中心,并使用了较成熟的PWM控制技术进行温度的控制。AD7416是装在一个芯片中的完整的温度控制系统,它包括一个带隙温度传感器和一个用来监视并将温度高低数字化的10位AD转换器,精度可达0.25度,其宽的电源电压范围(2.7V-5.5V)和低的电流(典型值为0.35mA),并和I2C兼容.-.的接口,使其对多种低功耗的应用是很理想的。AT89S51单片机是低功耗,具有较强的处理能力,集成模拟外设、数字外设的控制器,能够适用于多种工业应用场合;在此设计中通过软件的设计很好的实现了PWM控制。3.3.系统设计方案本次设计的恒温控制系统由输入输出系统(包括数字信号量输入、按键输入、数码管输出、LED输出等)、微处理器模块、PWM控制模块和能量供应模块四部分组成,系统结构如图7所示。←图7恒温控制系统结构图3.4.软件设计流程系统程序分为主程序,温度采集处理子程序,PWM波形控制输出子程序,温度设定子程序,显示子程序。主程序完成微处理器的初始化,全局变量的初始化,及系统程序执行的全过程。温度采集处理子程序完成对AD7416数据的采集与处理,处理结果一方面用于显示子程序,一方面用于PWM波形控制子程序;PWM波形控制子程序用于产生PWM波形。每完成一次转换,程序查询是否有温度重新设定,如果有,则返回到温度设定子程序处开始执行,如果没有,则回到温度采集处理子程序处进行执行,循环的完成整个系统任务。其执行流程如图8所示。AT89S51微控制器系统电源人机交互界面数码管输出按键输入