APP下载

一种智能恒温系统的设计与Proteus仿真

2021-02-28江苏省南京工程高等职业学校电子工程系

电子世界 2021年21期
关键词:声光报警液晶屏蜂鸣器

江苏省南京工程高等职业学校电子工程系 陈 娟

文章以AT89C51单片机为核心,设计了一种智能恒温系统,能使环境温度恒定在25℃~28℃之间。通过在Keil Vision4环境下编程,并利用Proteus软件仿真验证,实现的功能为:当温度高于28℃时,则声光报警,同时直流电机正转表示降温,1602液晶屏显示器显示“Cooling”和当前温度信息;当温度低于25℃时,则声光报警,同时直流电机反转表示升温,1602液晶屏显示器显示“Warming”和当前温度信息。该系统对进一步完成实际恒温电路有着重要的意义。

恒温系统就是能够保持特定环境中的温度在一个固定的范围内或者数值不变的控制系统。随着科技的发展,人民生活水平的提高,越来越多的场合都用到了恒温系统,比如:食物的储存、蔬菜的种植、动物的饲养,以及生物实验室等一些特殊的工作环境等。本文基于AT89C51单片机设计了一种智能恒温系统,在Keil Vision4环境下编程,并利用Proteus软件仿真实现。

Keil C51是美国Keil Software公司出品的51系列兼容单片机C语言软件开发系统。Keil提供了包括C编译器、宏汇编、连接器、库管理和一个功能强大的仿真调试器等在内的完整开发方案,可以进行软件仿真,也可以利用硬件仿真器进行实时仿真。

Proteus软件是英国Lab Center Electronics公司出版的EDA工具软件。它不仅具有其它EDA工具软件所具有的仿真功能,而且还能仿真单片机及外围器件。Proteus是唯一将电路仿真软件、PCB设计软件和虚拟模型仿真软件三合一的设计平台。并且在编译方面,它也支持IAR、Keil和MATLAB等多种编译器。

1 系统的硬件设计

1.1 系统的结构框图

系统的硬件电路主要由AT89C51单片机、DS18B20温度传感器电路、直流电机控制电路、1602液晶屏显示电路和声光报警电路组成。系统框图如图1所示,DS18B20温度传感器检测环境温度,并将温度数据传输给单片机,单片机对温度数据进行处理,根据处理结果控制各电路工作——直流电机正转(表示制冷)、直流电机反转(表示加热)、1602显示当前的状态和温度、温度超出恒温范围时启动声光报警电路。

图1 系统的结构框图

1.2 单片机的复位电路和晶振电路

复位电路由电容串联电阻构成,一般情况下,单片机RST引脚的高电平持续两个机器周期以上就将复位,所以RC取值的原则就是可以在RST引脚上产生不少于两个机器周期的高电平。如图2所示,在本电路中,采用了一个独立按键进行手动复位,当复位电路中的独立按键被按下时,其上连接的电解电容开始放电,对单片机的RST引脚输出高电平,使得单片机复位。

图2 单片机的复位电路和晶振电路

晶振电路的作用是为单片机提供时钟信号,并且单片机有内部时钟方式和外部时钟方式两种。在本系统中采用的是内部时钟方式,即在单片机的XTAL1和XTAL2两端连接一个由晶振和C1、C2两个谐振电容构成的时钟电路,要注意选择合适的电容量才能满足晶振的起振要求,晶振才能正常工作。

图3 DS18B20温度传感器电路

1.3 DS18B20温度传感器

DS18B20是DALLAS公司生产的1-wire式单总线数字温度传感器,现场温度直接以1-wire数字方式传输,大大提高了系统的抗干扰性,温度测量范围为-55~+125℃。并且DS18B20温度传感器可以根据不同场合进行不同的外观改造,从而可以使其应用于不同场合。其正常工作时3脚接5V的电源,1脚接地,2脚在本系统中连接到了单片机的P1.7位,将检测到的环境温度数据通过P1.7传输给单片机。

1.4 直流电机控制电路

本系统中采用L298驱动直流电机的转动,L298兼容标准的TTL逻辑,是高电压、高电流双全桥驱动器,内部包含有4通道逻辑驱动电路,能够驱动感性负载,如继电器、直流电机、步进电机等。在本系统中,当外部温度大于28℃时,直流电机在L298的驱动下正转,模拟降温过程;当外部温度小于25℃时,直流电机反转,模拟升温过程。L298的IN1、IN2分别连接单片机的P1.0、P1.1。当IN1=1,IN2=0时,直流电机正转;当IN1=0,IN2=1时,直流电机反转;L298的ENA连接到单片机的P1.2,当需要调节直流电机的转速时,使P1.2输出不同占空比的PWM波形即可。

1.5 1602液晶屏显示电路

本系统采用1602液晶屏显示,1602的含义是每行显示16个字符,一共可以显示两行字符。系统运行时,第一行居中显示环境温度的状态,如当温度低于25℃时,第一行显示“Warming”,表示当前的温度低于正常温度,需要升温;当温度高于28℃时,第一行显示“Cooling”,表示当前的温度高于正常温度,需要降温;当温度在25℃~28℃之间时,第一行显示“Normal”,表示当前的温度为正常的温度。第二行实时地显示当前检测到的温度。

图4 直流电机控制电路

图5 系统流程图

图6 温度为29℃时的测试情况

1.6 声光报警电路

声光报警电路主要由一个红色的发光二极管、一个蓝色的发光二极管和一个蜂鸣器组成。当DS18B20温度传感器检测到当前的温度高于28℃时,红色的发光二极管被点亮,同时蜂鸣器发出叫声;当DS18B20检测到当前的温度低于25℃时,蓝色的发光二极管被点亮,同时蜂鸣器发出叫声。

2 系统的软件设计

2.1 系统流程图

首先对系统进行初始化,然后读取DS18B20传感器检测到的环境温度数据,当温度高于28℃时,液晶屏显示“Cooling”(制冷)和当前温度,点亮红色的警报灯并使蜂鸣器鸣叫,同时直流电机正转表示制冷降温;当温度低于25℃时,液晶屏显示“Warming”(加热)和当前温度,点亮蓝色的警报灯并使蜂鸣器鸣叫,同时直流电机反转表示加热升温;当温度处于25℃-28℃之间,液晶屏显示“Normal”(正常)和当前温度。

2.2 部分程序代码

}//如果温度大于28℃,显示“Cooling”和当前温度,点亮红色的警报灯并使蜂鸣器鸣叫,同时直流电机正转。

3 系统的仿真测试

经过在Proteus软件中,对系统进行仿真,设置DS18B20的温度为三种不同范围温度时,测试结果如下:

(1)当温度调节为29℃,即高于28℃时,1602液晶显示屏的第一行显示“Cooling”,表示需要降温,第二行显示当前的温度为29℃;这时红色LED灯被点亮、蜂鸣器报警,并且直流电机正转。

(2)当温度调节为24℃,即低于25℃时,1602液晶显示屏的第一行显示“Warming”,表示需要升温,第二行显示当前的温度为24℃;这时蓝色LED灯被点亮、蜂鸣器报警,并且直流电机反转。

(3)当温度调节为26℃,即温度处于25℃~28℃之间时,1602液晶显示屏的第一行显示“Normal”,表示此温度在正常范围内,第二行显示当前的温度为26℃;这时声光报警电路和直流电机都停止工作。

本系统在Keil Vision4环境下,基于Proteus软件设计了一个恒温系统,通过仿真测试,能够准确地显示温度信息,并且实现了用直流电机对环境温度进行模拟降温和模拟升温,同时能正确地发出报警信号。该系统的实现对后续用实际电路板实现恒温系统具有重要的意义。

猜你喜欢

声光报警液晶屏蜂鸣器
声光报警多路抢答器电路的改造分析
电动自行车产品车速提示音检测现状和整改技术研究(2)
高速公路雾天行车安全诱导及护栏碰撞声光报警低功耗融合系统
电力系统接地线声光报警装置的研制及应用
掌控板制作简易钢琴
基于STM32F4的多通道串口驱动TFT液晶屏显示系统设计
单片机驱动蜂鸣器的程序设计
一种消除液晶屏高温MURA的工艺研究
计算机监控系统声光报警系统建设可行性研究
基于机器视觉的液晶屏字符缺陷检测系统设计