1、温度控制器温度控制器温度控制器温度控制器篇一 : 温度控制器 温度控制器 姓名: 专业班级: 指导教师: 摘 要 本文主要讨论Pt100传感器在温度控制系统中的应用。)采用Pt100恒流源三线制,采集信号经过AD7705转换之后一方面传至ATmega16L单片机处理并通过LED数码管显示出来,另一方面通过PID算法调节PWM,从而控制双向可控硅控制周期内的通断占空比,进而达到对温控箱温度进行控制的目的。本文详细阐述了基于单片机的温度控制系统的硬件组成、软件设计及相关的接口电路设计。并且充分考虑了系统的可靠性,采取了相应的措施予以保证。针对温控系统进行了实验,通过对实验数据的分析表明本文所述的基
2、于单片机的温度控制系统的设计的合理性和有效性。 关键词:单片机 温度控制 Pt100 PID控制 I Temperature Controller Abstract:This article focused on Pt100 temperature sensor control system. Constant current source using three-wire Pt100 system, signal acquisition on the one hand, after the conversion AD7705 single-chip processing and spread
3、 through ATmega16L digital tube LED display on the other hand, through the regulation of PID algorithm PWM, to control two-way thyristor control cycle off duty cycle , temperature-controlled box to achieve the purpose of temperature control. Described in detail in this article based on single-chip t
4、emperature control system hardware components, software interface design and circuit design. And give full consideration to the reliability of the system and take the appropriate measures to ensure that. Temperature control system for the experiment, through the analysis of experimental data describ
5、ed in this paper, based on single-chip temperature control system design and effectiveness of the reasonable. KEY: Microcontroller Temperature control system Pt100 PID Control II 第1章 前 言 . 1 1.1 课题背景及实际意义. 1 1.2 主要研究内容. 1 1.3 主要成果. 2 第2章 系统总体方案设计 . 3 2.1 系统方案论证. 3 2.2 系统方案设计 . 5 2.2.1 Pt100的选择. 5 2.
6、2.2 控温方案选择 . 5 2.2.3 控温测温的算法 . 6 第3章 系统硬件设计 . 8 3.1 主控模块器件选择及设计. 8 3.2 输入通道设计 . 10 3.2.1 Pt100温度传感器. 11 3.2.2 AD转换. 12 3.3 输出通道设计 . 16 3.3.1 温度显示 . 16 3.3.2 加热电路 . 18 3.4 串行通信接口电路 . 19 3.5 电源电路 . 20 3.6 硬件抗干扰措施 . 21 3.7 本章小结 . 22 第4章 系统软件设计 . 23 4.1 开发环境介绍. 23 4.1.1 ICCAVR介绍. 23 4.1.2 ICCAVR中的文件类型及其
7、扩展名. 24 4.2 系统软件组成. 25 4.3 主程序模块. 25 4.4 数据采集模块. 26 4.5 数据处理模块. 30 4.5.1 数字滤波 . 30 4.5.2 显示处理 . 30 4.6 PID控制 . 31 4.7 软件抗干扰措施. 32 第5章 测量调试 . 33 5.1 系统调试. 33 5.2 调试结果. 35 结 论 . 37 III 致 谢 . 38 参考文献 . 39 IV 第1章 1.1 课题背景及实际意义 前 言 温度是生活及生产中最基本的物理量,它表征的是物体的冷热程度。 模拟控制电路的各控制环节一般由运算放大器、电压比较器、模拟集成电路以及电容、电阻等外
8、围元器件组成。它的最大优点是系统响应速度快,能实现对系统的实时控制。根据计算机控制理论可知,数字控制系统的采样速率并非越快越好,它还取决于被控系统的响应特性。在本系统中,由于温度的变化是一个相对缓慢的过程,对温控系统的实时性要求不是很高,所以模拟电路的优势得不到体现。另外,模拟电路依靠元器件之间的电气关系来实现控制算法,很难实现复杂的控制算法。 单片机是大规模集成电路技术发展的产物,属于第四代电子计算机。它是把中央处理单元CPU、随机存取存储器RAM、只读存储器ROM、定时/计数器以及I/O输入输出接口电路等主要计算机部件都集成在一块集成电路芯片上的微型计算机,它的特点是:功能强大、运算速度快
9、、体积小巧、价格低廉、稳定可靠、应用广泛。由此可见,采用单片机设计控制系统,不仅可以降低开发成本,精简系统结构,而且控制算法由软件实现,还可以提高系统的兼容性和可移植性。 由于设计的温度控制器测温范围为室温至125,系统选用Pt100传感器,因为其在室温至125范围内具有信号强、精度高、稳定性和复现性好的特点。Pt100传感器检测温度并将其转换为微弱的电信号,通过AD转换器转换为数字量,A/D转换器采用的是16位的AD转换芯片AD7705,它包括由缓冲器和增益可编程放大器组成的前端模拟调节电路、-调制器、可编程数字滤波器等部件组成。能直接将传感器测量到的多路微小信号进行A/D转换。 综合考虑后
10、温度控制系统以ATmega16L单片机为核心,温控箱的温度由Pt100 铂电阻温度传感器检测并转换成微弱的电压信号,再通过16位的A/D转换器AD7705转换成数字量。此数字量经过数字滤波之后,一方面将温控箱的温 3 度通过控制面板上的LED数码管显示出来;另一方面将该温度值与设定的温度值进行比较,根据其偏差值的大小,采用PID控制算法进行运算,最后通过控制双向可控硅控制周期内的通断占空比,进而达到对温控箱温度进行控制的目的。是一种物质材料做成的电阻,它会随温度的上升而改变电阻值,如果它随温度的上升而电阻值也跟著上升就称为正电阻系数,如果它随温度的上升而电阻值反而下降就称为负电阻系数。大部分电
11、阻式温度检测器是以金属作成的,其中以白金做成的电阻式温度检测器,最为稳定耐酸碱、不会变质、相当线性,在所有的温度传感器中铂电阻是最稳定的一种,其测温范围宽达250640,因此是一种具有代表性的测温方法。 根据本设计系统要求我们选择Pt100作为温度传感器检测温度,Pt100型铂电阻意思即说明其铂电阻在0时电阻值为100,在-200到850范围内是精度最高的温度传感器之一。与热电偶、热敏电阻相比较,铂的物理、化学性能都非常稳定,尤其是耐氧化能力很强,离散性很小,精度最高,灵敏度也较好。这些特点使得铂电阻温度传感器具有信号强、精度高、稳定性和复现性好的特点。铂电阻温度传感器主要有两种类型:标准铂电
12、阻温度传感器和工业铂电阻温度传感器。在测量精度方面,工业铂电阻的测量稳定性和复现性一般不如标准铂电阻,这主要有两个方面的原因,其一是高温下金属铂与周围材料之间的扩散使其纯度受到污染,从而降低铂电阻测温的复现性能,其二是因为高温条件下的应力退火影响了其复现性能。但是标准铂电阻温度传感器也存在价格昂贵,维护起来较为困难等缺点。考虑到成本,故在本系统中采用工业级Pt100铂电阻作为温度传感器。 2.2.2 控温方案选择 首先由Pt100热电阻温度传感器所测得的温度实际值通过信号调理电路和16位的AD7705转换后送入单片机ATmega16L;然后测量出的温度实际值和设定的目标温度值进行比较,所得的差
13、值经自适应模糊PID算法得出控制量, 控制PWM 波的输出占空比。利用软件脉宽调制技术, 由PD5脚输出相应的PWM波,实现对双向可控硅的控制, 从而控制发热丝的发热功率。 5 其中控温电路中采用可控硅技术,可控硅一种大功率电器元件,也称晶闸管具有体积小、效率高、稳定性好、工作可靠等优点。本控温系统采用BT136双向可控硅,双向可控硅在结构上相当于两个单向的可控硅方向连接,这种可控硅具有双向导通功能,其通断状态由控制极G决定。在控制极G上加正脉冲可使其正向导通。这种装置的优点是控制电路简单,没有反向耐压问题,因此特别适合做交流无触点开关使用。通过BT136双向可控硅的通断来控制发热丝的通断周期
14、,从而控制发热丝温度。和大功率的场效应管一样,可控硅在与微型计算机接口连接时也需加接光电隔离器,触发脉冲电压应大于4V;脉冲宽度应大于20us。为了提高效率,要求触发脉冲与交流电压同步,采用检测交流电过零点来实现。通过光电隔离器控制双向可控硅,实现对电阻丝加热。 2.2.3 控温测温的算法 本文控温采用PID控制方案,采集和控制的关系是:温度-PID算法-PWM控制可控硅导通角加热。这里可以看出PID类似于数学的函数,温度和PWM加热就是通过这个函数映射过来的。只要温度采集正确并和设置的值作比较,得出一个差值,通过PID算法后得出控制量输出,就能达到目的。接着进行PID的参数调试,把最优参数调
15、试出来。 PID控制器是一种线性控制器,它根据给定值r与实际输出值y构成控制偏差e:: e=r-y 将偏差e的比例、积分和微分通过线性组合构成控制量,对被控对象进行控制,因此称为PID控制。 PID控制系统原理如图2-1: 图2-1 在模拟系统中,PID算法的表达式为: 6 P=Kpe+1de edt?TD?T1dt 式中 P-调节器的输出信号 e-调节器的偏差信号 Kp-调节器的比例系数 TI -调节器的积分时间 TD-调节器的微分时间 PID控制器各校正环节的作用如下: 比例环节 即时成比例地反映控制系统的偏差信号e,偏差一旦产生,控制器立即产生控制作用,以减少偏差; 积分环节 主要用于消
16、除静差,提高系统的无差度。 微分环节 能够反映偏差信号的变化趋势,并且能在偏差信号值变得太大之前,在系统中引入一个有效的早期修正信号,从而加快系统的动作速度,减少调节时间。 7 第3章 系统硬件设计 本文所研究的温度控制系统硬件部分按功能大致可以分为以下几个部分:单片机主控模块、输入通道、输出通道、保护电路等。,进而达到对温控箱温度进行控制的目的。如果实际测得的温度值超过了系统给定的极限安全温度,保护电路会做出反应,从而保护温控箱。 图3-1 3.1 主控模块器件选择及设计 主控模块电路由ATmega16L单片机、外部时钟电路、复位电路。其中ATmega16L单片机的特点: 高性能、低功耗的8
17、位AVR微处理器。 先进的RISC 结构:131条指令-大多数指令执行时间为单个时钟周期,32个8 位通用工作寄存器,全静态工作,工作于16 MHz 时性能高达16 MIPS,只需两个 8 时钟周期的硬件乘法器。,具有独立锁定位的可选Boot代码区,512字节的EEPROM,1K字节的片内SRAM,可以对锁定位进行编程以实现用户程序的加密。 JTAG 接口:符合JTAG 标准的边界扫描功能,支持扩展的片内调试功能,通过JTAG接口实现对Flash、EEPROM、熔丝位和锁定位的编程。 外设特点:两个具有独立预分频器和比较器功能的8位定时器/计数器,一个具有预分频器、比较功能和捕捉功能的16位定
18、时器/计数器,具有独立振荡器的实时计数器RTC,四通道PWM,8路10位ADC,面向字节的两线接口,两个可编程的串行USART,可工作于主机/从机模式的SPI串行接口,具有独立片内振荡器的可编程看门狗定时器,片内模拟比较器。 特殊的处理器特点:上电复位以及可编程的掉电检测,片内经过标定的RC 振荡器,片内/片外中断源。 6种睡眠模式: 空闲模式、ADC 噪声抑制模式、省电模式、掉电模式、Standby 模式以及扩展的Standby 模式5 图3-2为ATmega16 TQFP封装引脚图: 9 图3-2 _单片机复位电路由外部复位电路实现,ATmega16复位引脚为RESET, 图3-3为ATm
19、ega16L复位电路;图3-3为外部振荡电路,本系统采用的晶振 振荡器电路频率为7.3728M。) 图3-3 图3-3 3.2 输入通道设计 系统输入通道的作用是将温控箱的温度通过传感器电路转化为电 量输出,本系统就是将温度转化为电压的输出。由于此时的电量还是单片机所不能识别的模拟量,所以还需要进行A/D转换,即将模拟的电量转化成与之对应的数字量,提供给单片机判断和控制。)输入通道由传感器、A/D转换等电路组成。 3.2.1 Pt100温度传感器 铂电阻测温电路的工作方式一般分为恒压方式和恒流方式两种。按照接线方式的不同又可以分为二线制、三线制和四线制三种。四线制就是从热电阻两端引出4线,接线
20、时电路回路和电压测量回路独立分开接线,测量精度高,需要导线多。三线制就是引出三线,Pt100B铂电阻接线时电流回路的参端和电压测量回路的参考为一条线。精度稍好。 两线制就使引出两线,Pt100B铂电阻接线时电流回路和电压测量回路合二为一。测量精度差。本系统采用的是恒流三线制接法对Pt100铂电阻进行采样。铂电阻温度传感器采样电路如图3-4所示。 图3-4 因为:Vout?VNVN?VREF? R5R4 11 Vg?VP R8?VP R7 因为:R4=R5=R7=R8 所以:2VN=Vout+VREF 2VP=Vg 得出:Vg-Vout=VREF 并且:I1=I2 I1-100I2 =VOUT1
21、 V1VVR?2 V2Rt+100V2=100V1 V1-V2=2t=I2Rt Rt?100100100 所以:I2Rt =Vout1=RtI 上面式子中Rt为温度传感随着温度变化所变化的电阻值。) 采用恒流三线制接法的测温电路中需要用到一个稳定的基准电压源。本系统采用精密基准电压源Ref192对温度传感器进行稳压,ref192的优点是与普通的基准电源相比具有温漂小、输出噪声小、动态内阻小、有短路保护等特点。主要参数是:基准电压VR=2.5V,温度系数TC5ppm/,输出噪声电压为25uv。当基准电压VR=2.5V,温度范围在1080时,温度传感器输出电压范围为1.5V2V。图中参考电压VRE
22、F即来自Ref192。基准电压源电路如图3-5所示。 图3-5 3.2.2 AD转换 在单片机控制系统中,控制或测量对象的有关变量,往往是一些连续变化的 12 模拟量,如温度、压力、流量、位移、速度等物理量。但是大多数单片机本身只能识别和处理数字量,因此必须经过模拟量到数字量的转换,才能够实现单片机对被控对象的识别和处理。完成A/D转换的器件即为A/D转换器。 A/D转换器的主要性能参数有: 分辨率 分辨率表示A/D转换器对输入信号的分辨能力。A/D转换器的分辨率以输出二进制数的位数表示。 转换时间 转换时间指A/D转换器从转换控制信号到来开始,到输出端得到稳定的数字信号所经过的时间。不同类型
23、的转换器转换速度相差甚远。 转换误差 转换误差表示A/D转换器实际输出的数字量和理论上的输出数字量之间的差别,常用最低有效位的倍数表示。 线性度 线性度指实际转换器的转移函数与理想直线的最大偏移。目前有很多类型的A/D转换芯片,它们在转换速度、转换精度、分辨率以及使用价值上都各具特色,其中大多数积分型或逐次比较型的A/D转换器对于高精度测量,其转换效果不够理想。温度控制中A/D转换是非常重要的一个环节。传统的电路设计方法是在A/D转换前增加一级高精度的测量放大器,这样就增加了成本,电路也较为复杂。综合考虑,本系统选用AD 公司生产的16位AD转换芯片AD7705作为本温控系统的A/D转换器。
24、AD7705是AD公司生产的16位-型A/D转换器,用于测量低频模拟信号,它包括由缓冲器和增益可编程放大器组成的前端模拟调节电路、-调制器、可编程数字滤波器等部件组成,可通过软件编程来直接测量传感器输出的各种微小信号。AD7705采用三线串行接口,具有两个全差分输入通道,能达到0.003%非线性的16位无误码输出,其增益和输出更新率均可编程设定,还可以选择输入模拟缓冲器,以及自校准和系统校准方式。工作电压3V或5V。3V电压时;最大功耗为1mw ,等待模式下电源电流仅为8uA。图3-6为AD7705引脚图 13 图3-6 AD7705引脚功能描述如下: SCLK串行时钟,将一个外部的串行时钟加
25、于这一输入端口,以访问AD7705的串行数据。左移/右移指令。 ? 具有段寻址指令,方便控制独立LED。 ? 64键键盘控制器,内含去抖动电路。 ? 有DIP和SOIC两种封装形式供选择。 HD7279A引脚说明:引脚图如图3-8。 图3-8 16 VDD 正电源 NC 无连接,必须悬空 VSS 接地 CS 片选输入端,此引脚为低电平时,可向芯片发送指令及读取键盘数据 CLK 同步时钟输入端,向芯片发送数据及读取键盘数据时,此引脚电平上升沿表示数据有效 DATA 串行数据输入/输出端,当芯片接收指令时,此引脚为输入端;当读取键盘数据时,此引脚在读指令最后一个时钟的下降沿变为输出端 KEY 按键有效输出端,平时为高电平,当检测到有效按键时,此引脚变为低电平 SG-SA 段g段a驱动输出 DP 小数点驱动输出 DIG0-DIG7 数字0-数字7的驱动输出 CLKO 振荡输出端 RC RC振荡器连接端 RESET 复位端 HD7279A驱动数码管电路如图3-9,HD7279A需要外接RC振荡电路以供系统工作,其典型值分别为R=1.5K,C=15pF,如果芯片无法正常工作,应先检查此振荡电路。