基于AVR单片机温度控制的硬件电路设计研究

2014-03-14 03:23:46孙志杰
吉林工程技术师范学院学报 2014年11期
关键词:三极管数码管蜂鸣器

孙志杰

(中国人民解放军装甲兵技术学院 机械工程系,吉林 长春 130117)

1 引言

温度是一个重要的物理参数,随着现代科技的日益发展,温度控制电路越来越多的应用于社会生产生活的各个领域,但是由于温度的变化和发展是非线性的,所以其测量的过程和控制的方式比较困难,故温度控制的硬件电路设计方法方式尤为重要。在此基础上本文设计了基于AVR单片机ATmega16的硬件电路,选用半导体温度传感器DS18B20进行温度的采集,并由LED数码管显示,键盘输入预设值的调整,通过继电器输出完成加热开关占空比的调控,实现该温度场的恒温控制。设计过程分为两个阶段:前一阶段为电路图的设计;后一阶段是在确定构架后,使用软件Altium Designer完成各子电路图的设计以及整体的连接封装。

2 电路构架设计

根据设计要求,硬件电路整体框架构思如图1所示,主要实现温度传感,数码管显示,键盘输入和控制驱动这四大模块的功能。选用ATmega16芯片,涉及外设电路有电源电路,DS18B20温度传感电路,数码管显示电路,1×4按键电路,蜂鸣器电路和继电器控制电路。

图1 硬件系统框图

2.1 单片机选择

本文中选用高性能、低功耗的8位ATmega16单片机,它具有如下特点:16K字节的系统内可编程Flash(具有同时读写的能力,即RWW),512字节EEPROM,1K字节SRAM,32个通用I/O口,32个通用工作寄存器,用于边界扫描的JTAG接口,支持片内调试与编程,三个具有比较模式的灵活的定时器/计数器(T/C),片内/外中断,可编程串行USART,有起始条件检测器的通用串行接口,8路10位具有可选差分输入级可编程增益(TQFP封装)的ADC,具有片内振荡器的可编程看门狗定时器,一个SPI串行端口,以及六个可以通过软件进行选择的省电模式。通过将8位RISC CPU与系统内可编程的Flash集成在一个芯片内,ATmega16成为一个功能强大的单片机,为许多嵌入式控制应用提供了灵活而低成本的解决方案。

2.2 电源电路

电源电路如图2所示,其中LM7805为3端正稳压芯片,能够输出5V电压,输出电流可达1A,内部包含过热保护和短路保护以及输出晶体管SOA保护。电路中C1,C2电容的作用是在LM7805输入端进行滤波,C1滤除低频干扰,C2滤除高频干扰;C3,C4电容的作用是在LM7805输出端进行滤波,C4滤除低频信号,C3滤除高频信号。

图2 电源电路

2.3 测温电路

测温电路主要实现被控温度的测量存储和数据发送,采用温度传感器DS18B20,它具有3引脚TO-92小体积封装形式,温度测量范围为-55℃~+125℃,测温分辨率可达0.0625℃,被测温度用符号扩展的16位数字量方式串行输出。

2.4 显示电路

显示电路的主要作用是接收来自控制系统的数字信号,将发光二极管点亮,实现在LED显示屏上的信息显示。本课题采用的是4位8段LED共阳数码管,测量值和目标值同时显示。每位数码管阳极接在PNP型三极管集电极上,三极管的发射极接5V电源,基极通过一个1kΩ电阻接单片机ATmega16的PD2~PD5端口,这4个三极管起开关的作用,当ATmega16相应的端口输出低电平时,相应的PNP三极管饱和导通,发射极供电给集电极,提供相应位数码管的公共阳极,即选通该位数码管。

2.5 辅助电路

系统由于功能的需要,辅助电路包括键盘电路、鸣器电路和继电器调温电路。其中键盘电路并没有采用传统的行列扫描式的4×4矩阵键盘,只利用了其中第一行的4个按键。蜂鸣器电路主要是作用按键提示和报警,蜂鸣器由PNP型三极管驱动,其基极接在ATmega16的PC0端口,当该引脚输出低电平时,三极管导通,蜂鸣器与地之间的100Ω电阻起限流的作用,不致使蜂鸣器因工作电流过大而寿命受损,继电器调温电路的作用是开断需要控制的电路,起开关作用。本课题中采用的HF32FA-T是宏发生产的一种超小型中功率耐高温固态继电器,采用1H触点形式,有4个引脚,其中两个接线端为输入端,一个接5V电源,一个接ATmega16的管脚。

3 温度采集程序

本文通过数字温度传感器DS18B20采样被控对象的当前温度值并送数码管显示。再将该温度测量值与键盘设定值进行比较,其差值送模糊PID控制器,处理后输出一定数值的控制量,根据控制量的值确定继电器通电的时间,从而完成对被控对象的加热,DS18B20测温原理如图3所示。

4 小结

通过上面的方法可以获得高分辨率的温度测量结果,首先用DS18 B20提供的读暂存寄存器指令(BEH),读出以0.5℃为分辨率的温度测量结果,然后切去测量结果中的最低有效位(LSB),得到所测实际温度整数部分T整数,然后再用BEH指令读取计数器1的计数剩余值M剩余和每度计数值M每度,考虑到DS18B20测量温度的整数部分是以0.25℃、0.75℃为进位界限的关系,实际温度T可用下式计算得到:T实际= ( T整数-0.25℃) + (M每度-M剩余)/M每度。读键程序框图如图4所示,设置行线输入方式,列线输出方式。向所有行线输出低电平。读取PC4~PC7口(列线)状态,若皆为高电平,则无按键按下;若有低电平状态,则有键按下。当有键按下时,保留此时的列线状态。

图3 DS18B20测温原理

图4 键盘输入程序框图

参考文献:

[1]张 丽.单片机的发展与应用[J].科学咨询导报,2007,(9).

[2]刘 飞,须文波. 单片机FUSSY-PID双模温控仪[J].电子与自动化,1996,(4).

[3]田开坤.基于AVR单片机捕获中断和热敏电阻的温度测量[J].现代电子技术,2008,(3).

猜你喜欢
三极管数码管蜂鸣器
电动自行车产品车速提示音检测现状和整改技术研究(2)
掌控板制作简易钢琴
电脑报(2020年12期)2020-06-30 19:56:42
Arduino编程
电脑报(2019年2期)2019-09-10 07:22:44
MC9S08FL16单片机数码管静态显示分析
科技风(2019年13期)2019-06-11 13:38:30
基于晶体三极管的放大电路分析
单片机驱动蜂鸣器的程序设计
时代农机(2019年2期)2019-04-24 01:20:14
单片机控制的四位数码管动态显示编程
时代农机(2019年2期)2019-04-24 01:20:14
基于Qt的数码管数字编码系统的设计与实现
三极管引脚折弯机双凸轮机构的分析与仿真
三极管放大电路的研究
电子制作(2016年1期)2016-11-07 08:43:05