李香宇1,王世功2,王 萌1,张亚周1
(1.海军航空工程学院,山东烟台264001;2.烟台东方分析仪器有限公司,山东烟台264001)
摘要:介绍了一种基于PID算法和PWM控制的温控系统设计和实现方法,可应用于仪器仪表对温度控制的领域。该系统采用DS18820作为温度传感器,通过单总线直接将采集的数据发送到控制器ATMEGA16A,采用半导体功率器件BTA12驱动加热器。同时,可以通过LED数码管直读显示,上位机通过串口设置温度参数,并实时监控温控系统工作。软件运用PID算法处理得到PWM控制参数,由单片机PWM单元输出PWM控制信号,从而实现温度的闭环控制。实验结果表明,该系统具有结构简单、v向应快、稳定性好、控制精度高的特点,在外界温度变化5℃/h条件下,实现控温精度±0.1℃。
关键词:DS18 820;单片机;PID;PWM;温控仪
中图分类号:TP273文章编号:1006 - 2394( 2016) 05 - 0031 - 03
0 引言
在许多领域中,温度都是一个重要的参数指标。特别是在现代仪器仪表领域,温度成为制约仪器长期稳定性一个非常重要指标,如果温度控制不好,对整个系统的性能会产生严重的影响,因此,设计温度控制系统对仪器仪表的温度进行控制就显得尤其重要。传统的MCS51单片机为核心的温度控制系统,存在硬件电路设计复杂、数据实时处理能力差、温度调节时间长的缺点。采用热电阻和热电偶作为温度传感器的设计,信号处理电路复杂、线性差,需要通过硬件或软件进行校准。本文采用内部集成PWM单元的AVR单片机ATMEGA16A作为主控制器,采用单总线温度传感器DS18 820直接实现温度转换,软件上采用PID算法控制PWM波形来驱动加热单元,该系统响应速度快、精度高、电路简单,完全能够满足高性能仪器仪表的应用要求。
1 系统总体设计
本系统主要由温度采集单元、控制单元、驱动单元、显示单元和串口通信单元组成。采用单总线器件DS18 B20作为温度传感器,可以进行温度信号采集和AD转换,并采用AVR单片机ATMEGA16A作为控制器,控制器内部PID算法处理转换成为PWM控制器的控制参数,并由PWM控制器输出PWM波形,通过BTA12驱动加热器工作。通过74HC373驱动数码管静态显示当前温度,同时,将温度、加热效率参数通过串口通信发送到上位机,通过上位机软件设置温度限值。系统整体框图如图1所示。
2系统硬件设计
本系统采用ATMEL公司生产的AVR系列单片机ATMEGA16A作为主控制器。ATMEGA16A单片机是高性能RISC结构、低功耗的8位微处理器,其数据吞吐率高达1 MIPS/MHz。内含可反复编程的Flash程序存储器、SRAM和EEPROM两种数据存储器、定时器计数器、方向可定义的I/O口、同步串行口、异步串行口、A/D及PWM等丰富的内部资源。
温度采集单元采用单总线集成温度传感器DS18 B20 ,DS18 B20是美国DALLAS半导体公司生产的单线智能数字温度传感器,可把温度信号直接转换为串行数字信号供计算机处理。DS18 B20的测温范围为-55℃~+125℃,固有测温分辨率为0.5℃,最高分辨率可达到0. 062 5℃。DS18 B20将采集到的温度数据转换成9~12位(可编程)的数字量,通过数据线DQ与主控制器ATMEGA16A的PD7连接,进行数据通信。
驱动单元采用Motorola公司的单片集成晶闸管驱动器件MOC3061驱动双向硅BTA12。MOC3061的1端口与主控制器ATMEGA16A的PD2连接,作为控制端;MOC3061的4端口接双向硅,通过双向硅控制加热器。
串口通信单元采用MAX232CP完成5V的TTL电平与RS-232电平的转换,通过T21和R20分别接到ATMEGA16A的UART端口的发送端和接收端。
3系统软件设计
采用ATMEL公司的AVR单片机的集成环境汇编及开发调试软件,采用C语言编程。温控系统软件设计主要实现温度采集、PID算法和PWM控制等功能。
3.1 温度采集的实现
传感器DS18 B20采集温度后,由主控制器AT-MEGA16A来控制DS18 B20完成温度转换。在命令传感器DS18 B20开始温度转换和转换结束后读取温度数据的过程中,都要根据DS18 B20的初始化时序、读时序进行操作。温度采集处理的软件流程图见图2。
3.2 PID算法
PID数字控制调节器是一种线性调节器,它根据给定值r(t)与实际输出值c(t)构成的偏差e(t)=r(t)-c(t),将偏差的比例(P)、积分(I)、微分(D)通过线性组合构成控制量,对控制量进行控制。其原理如框图3所示。
PID调节器的微分方程为:
式中:K p、T i、TD分别为比例放大系数、积分常数、微分常数。PID计算子程序的主要功能是根据设置的PID参数进行计算。PID计算的子程序如下:
3.3 PWM控制
本设计中,通过PID算法实现温度误差计算,调整PWM控制参数,实现PWM相应占空比,将主控制器ATMEGA16A的PD2口输出PWM信号,去控制外围加热电路。实现PWM的方式既可以工作在变频方式也可以工作在固定PWM周期方式,本设计采用变频方式来实现。设定固定不变的非加热时间,通过对加热时间的控制从而控制加热的占空比。
4 实验结果与分析
本系统在密闭环境下进行实验,得到1 h内温度变化趋势图,如图4所示。温度保持在34.8℃~34.9℃,温度控制精度在±0.1℃,说明外界环境变化不大的时候内部温度会保持不变,提高了温度的控制精度和稳定性。由于加热方式采用PWM控制,所以加热时间一般不超过1s,加热时间短不会使加热器温度过高,提高加热器工作寿命。
5结束语
经过实验论证,该系统响应速度快、精度高、电路简单,完全能够满足高性能仪器仪表的应用要求。
下一篇:返回列表