找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 6924|回复: 0
打印 上一主题 下一主题
收起左侧

基于51单片机的智能温度检测散热报警系统

[复制链接]
跳转到指定楼层
楼主
基于51单片机的智能温度检测散热报警系统


基于 51 单片机的智能温度检测散热报警系统


摘要:探讨工业场合温度测量处理方法及系统构成。本设计研究的温度检测报警系统使用的 是 SST89E58RDA 单片机为主控制器,利用数字温度传感器 DS18B20采集温度并通过数码管 显示,根据不同的温度阈值 LED 灯和直流电机给出不同响应,并且该系统触发报警后可通过 红外装置 HEDDER 远距离关闭报警。



一、方案论证与比较
1.1  系统主要性能指标 系统上电后,随后进行系统整体各主要模块的检测,随后单片机实时监测温度传感器
DS18B20 的状态,并将 DS18B20 得到的数据经行处理通过数码管实时显示当前的环境温度, 并根据事先约定的不同的高低温度阈值范围 LED 灯有不同颜色的显示,当温度超过设定最大 温度值时,蜂鸣器报警,红色 LEED 灯点亮,直流电机启动散热系统打开,温度精确位数位
0.01 度,此时可以通过遥控器关闭报警以及温度显示停止报警。

1.2   系统方案比较,设计与论证 该系统主要有主控制器,温度测量,系统状态显示,散热模块以及红外接收五个主要部
分电路组成,下面介绍实现此系统功能的方案。
1.2.1 主控制器模块
采用 SST89E58RDA 单片机作为整个系统作的核心,用其实时监测温度和报警,以实现 其既定的性能指标。
综上所述,本次设计采用 SST89E58RDA 单片机作为主控制器。
1.2.2 温度测量
此设计采用 DS18B20 温度传感器对温度进行测量,其输出信号为数字信号,方便单片 机对温度的采集,处理和控制,而且其电路简单,占用空间小。该单片机性能稳定,且线性 好,当测量温度在 0 到 100 之间时线性偏差都小于 1℃。除此之外,由于 DS18B20 温度传感 器采用单总线的数据传输方式,由 DS18B20和 SST89E58RDA 构成温度装置输出的温度信号, 数字信号可以直接链接计算机。这样,温度系统的结构就显得十分简单,占用的体积也不大。 同时,通过采用51 单片机控制让软件编程的自由度大大增加,即可以通过编程的自由度大 大增加,即可以通过编程实现各种各样的算术算法和逻辑控制,而且它还具有体积小,硬件 经济,简单,安装十分方便等优点。
1.2.3 显示模块 方案 1: 用数码管充当显示模块。数码管具有使用简单,显示速度快,显示效果简介明了等特
点而得到广发的应用。 方案 2:
通过 LCD 1602 液晶经行显示显示。LCD 具有现实内容丰富,清晰,显示信息量大,显 示速度快,使用方便等特点而得到广发的应用。但对于本系统我们并不需要显示丰富的内容, 而且 LCD 液晶价格昂贵,因此我们未选择此方案。
综上所述,显示模块我们选择方案 1.

1.2.4 红外传感器模块 方案 1:
此模块采用 HX1838 的红外接收头,这是一种全新,全塑封,高集成度的新型红外遥控 接收模块,其体积和一只三极管差不多,具有体积小的特点。但其内部高度集成了输入电路, 传输阻抗放大器,自动增益控制电路,短脉冲控制电路,长控制电路,比较器以及施密特触 发器等,这使得他的外部引脚十分简单,方便了电路的连接和使用。所以它是一种非常常用 的红外接收模块。
方案 2:
此模块采用 HS0038B 红外接收头,这种接受端相比 HX1838 在外形和功能没有太大差别, 不过其内置的芯片 IC 更好一些,抗干扰能力更强一些,但其成本相对较高,此是设计中并 未使用。
综上所述,红外接收模块我们选择方案 1.
1.2.5 散热装置模块 由于单片机的串口输出能力有限,所以无法正常驱动一个小直流电机,所以此处采用
了外接驱动模块的方式进行驱动直流电机工作。 方案 1:
此模块采用安装有 L298N 芯片的双路 H 桥电机驱动装置,该驱动的供电电压为 2V~10V, 可以同时驱动两个直流电机,每路电流可达 1.5A,有热保护别且能自动恢复。并且其内置 低导通 MOS 开关关,发热小,无需散热片,体积小,省电,便于携带。
方案 2: 此模块采用三极管搭建放大电路从而驱动电机工作,虽然这种方法简单明了但其封装
型没有方案一好,外接电路较多,所以该设计并未采用这种方案。 综上所述,散热驱动模块我们采用方案 1.
二、理论分析与参数计算
2.1 红外模块
2.1.1 定时器参数设定
定时器 0 采用方式 2 的 8 位自动重装方式              TH0=0x00; TL0=0x00;,用于接收红外信号 的脉冲宽度,一次位 256us.



2.2 温度传感器模块
2.2.1 定时器参数设定
使用定时器 1 使其工作在方式 1,TL1=(65536-500)%256;TH1=(65536-500)/256;定时大约
255us,用于蜂鸣器发声报警,频率大约为 2KHz.


三、系统各模块电路的设计 本系统模块组成:


3.1 温度测量以及数码管显示温度模块 该模块用于采集环境温度并在其内部进行数据处理再将其通过其 DQ 管脚送至单片
机中,DS18B20 与 SST89E58 的接线如图 1.VDD 管脚接 5V 电压给传感器供电。DQ 管脚为数 据线与 SST89E58 的 P3^7 连接,GND 管脚接地。温度传感器DS18B20 将被测温度转化成数 字信号通过 DQ 管脚传给 SST89E58。
具体控制工作原理如下,1、首先在系统自检结束后,DS18B20 芯片进行初始化即由 控制器(单片机)给 DS18B20 总线约 0.5ms 的低电平信号,即给 DQ 引脚写 0,拉低 DQ 引 脚,并检测是否初始化成功。此操作就是先初始化 DS18B20。2、在芯片初始化后,芯片开 始自动读取环境温度,将数据读入 DS18B20 中的一个九个字节的 RAM 寄存器,每个字节八位。 具体如表 1 所示.


表 1 DS18B20 字节定义
对于读入 DS18B20 寄存器的数据再由单片机读入,即由单片机读取 DS18B20 中 RAM,一位 一 位 读 , 读 八 位 。 3. 数 码 管 显 示 : 单 片 机 通 过 将从 DS18B20 读 取 到 的 数 据 通 过 aaa=((b*256+a)*6.25 这个函数进行数据预处理处理,将处理后的结果再进行数码的转化转化 为数码管的段码,将转化结果送数码管显示。数码管硬件电路如下图 2.

图 2




图 1
3.2 温度超出报警及散热模块
该模块用于对控制器读取的 DS18B20 中数据并处理的结果与系统初始设置的温度阈值比 较的结果做出相应的反应,以给用户警示信息。具体组成为绿,黄,红三个不同颜色的 LED 灯,蜂鸣器,直流电机模块。其中 LED 直接连至 P1 口,蜂鸣器接至 P2^4 口,直流电机接 至 P2^7,控制器将通过以上引脚对它们进行控制。
具体工作原理如下,1.如果温度读取进入控制器的值未超过 30 摄氏度时,P1=0XDF 绿 色 LED 灯亮;当温度超过 30 摄氏度但为超过 31 摄氏度时,P1=0XBF,黄灯点亮;当温度超过
31 摄氏度后,P1=0X7F,红色 LED 灯点亮并且启动定时器 1 使蜂鸣器发声启动直流电机进行散 热。2.直流电机散热模块工作原理:控制器通过给 P2^7 引脚写 1 操作,即向 L298N 驱动写
1。其中 L298 位 15 管脚的单块集成的集成电路,高电压,高电流,四通道驱动,设计用 L298N 接受收来的逻辑电平驱动感性负载即直流电机。L298N 中包含 4 通道的逻辑驱动电路,其额 定工作电流为 1A,最大可达 1.5A,Vss 电压最小 4.5V.L298N 可直接对电机进行控制,无需隔 离电路。下面给出 L298N 内部原理图,图 3.  LED 与蜂鸣器电路原理图,图 4. 散热模块大 致电路图,图 5.









图 4


图 5 电机模块原理图



3.3 红外控制模块
3.3.1 红外接收模块 该模块用于接收来自红外发射器的红外波信号送至控制器(单片机)中进行相应的处
理并进行相应的动作即此处该动作为接收到红外信号后,SST89E58 关闭报警散热和数码管 显示系统,只留下一盏红色 LED 灯经行提示。该模块主要由两部分组成,分别是 SST89E58 和红外接芯片 HX1838 组成。其中 HX1838 一共有三个引脚,其中 1 引脚作为信号输出引脚 将从红外发射器接受来的红外信号送至单片机进行解码输出,接至单片机 P3^3,2 引脚接地,


3 引脚接正 5V 电源。
具体工作原理如下:当 HX1838 接收到红外脉冲时,由于红外遥控信号接受头的输出 端与相连的单片机中断引脚相关联,即相应的引脚接收到下降沿时将会触发单片机中断。而 单片机中断的效果是将会使定时器 0 开始计时,并且同时通过特定的软件可以判断当前的电 平情况和周期和周期的情况,由此获得的结果是可以得知接收到的数据是引导码还是 0 或 1. 如果接收到引导码就开始将后续的33 个脉冲存入数组 IRdata[33]中(其中引导码 16 位用户 码 16 位),而当接收总共 33 为数据后,说明接受完毕一帧数据,判断接收是否有效即与自 己的有户码是否一致,再通过特定的程序对存入的 33 个脉冲进行解码其中丢弃引导码。解 码结束后将结果送入控制器(SST89E58 单片机)中进行相应的控制即关闭报警散热系统仅 留下一个指示灯。电路原理图如下图 6.              实物图如下图


7.


图 6

3.3.2 红外发射模块
该模块是用来向红外接收器 HX1838 发射红外脉冲提供控制信息,此模块直接采用市 面上已经制作封装好的成品红外遥控发射器,其内发射芯片为TC9012,因此此处只给出其 发射码的格式对其具体原理不再赘述。




四、系统软件设计
该系统的设计软件是基于 C 语言编写,程序是在 KEIL 公司集成开发环境上设计, 实现温度检测与显示,温度超高报警与散热,红外接收、解码、和输出等功能,保证了各个 硬件模块的协调运行,实现所设计的单片机功能。
4.1 红外接收模块
该模块用于处理来自红外传感器 HXI838 的脉冲信息,送入控制器将其解码并给出相应动 作即接收到红外信号后,SST89E58 关闭报警散热和数码管显示系统,只留下一盏红色 LED 灯用于提示。程序流程图如下。




4.2 温度采集模块
该模块的 DS18B20 温度传感器用于采集环境温度并将被测温度转化成数字信号通过 DQ 管脚传给 SST89E58,再由控制器将数字信号处理成共阳极数码管显示段码,送至数码管显 示。并且当温度读取进入控制器的值未超过 30 摄氏度时,P1=0XDF 绿色 LED 灯亮;当温度 超过 30 摄氏度但为超过 31摄氏度时,P1=0XBF,黄灯点亮;当温度超过 31 摄氏度后,P1=0X7F, 红色 LED 灯点亮并且启动定时器 1 使蜂鸣器发声启动直流电机进行散热。该模块流程图如下。





4.3 系统自检模块 该模块用于系统上电后对系统的各个基础模块例如数码管,LED,蜂鸣器,散热系统进行
自我检测,以检查系统是否可以正常运作。具体流程图如下:





五、系统调试和测试结果
为了保证设计的系统能够正常的进行工作,对系统各个模块进行测试,各系统模块,个 系统模块正常工作后,测试整个系统的协调工作性能。
5.1 测试工具
直流稳压电源(电脑 USB 代替)、普通发光二极管等
5.2 个功能模块的测试
1、单片机基础功能模块
SST89E58 单片机,LED,数码管,蜂鸣器,散热系统的测试将由系统上电后,执行编写的 自检程序进行自动检测,若检测结果为:八盏 LED 依次点亮并全灯闪烁两次;数码管依次显 示 123456789ABCDEF 后 4 只数码管同时开启闪烁两次;蜂鸣器响 4 声;直流电机转动 3 秒。 如果上电后以上基础功能可以实现,说明基础功能部分没有问题。如果其中任意一个功能无 法实现,则说明对应的部分有故障,进一步将有问题的部分独立起来经行单独检测。


2、红外功能模块
红外一体化接收头以及红外发射装置的测试可在 HX1838 的电源端与信号输入端之间串 联一只普通二极管和发光二极管,在配上规定的外接电源(+5V),当手拿含有 TC99012 芯 片的遥控器对着接收头按任意键时,发光二极管会闪烁,说明接收头和发射器都可以正常工 作,如果二极管不发光,则说明红外接收头和红外发射器至少有一个损坏。
3、温度检测模块
该模块的可检测可以在 DS18B20 温度传感器的输出端与单片机的任意 I/O 口相连,电 源端配上规定的+5V 电压,GND 管脚接地。通过向单片机内写入处理温度信息和数码管显示 的代码,然后上电复位后看系统是否可以已正常显示实时的温度,如果可以则说明温度显示 模块是没有问题的,但如果不能正常显示则说明温度传感器 DS18B20 有故障。当然此模块 须在已经验证单片机系统,数码管,读取温度代码本身没有问题的前提下经行测试的。




参考文献:
[1]陈忠平,等. 单片机原理及接口[M] 北京 :清华大学出版 [2]曹巧媛.单片机原理及应用[M] 北京:电子工业出版社,2002 [3]金发庆,等.传感器技术与应用[M] 北京:北京航空大学出版,2000 [4]陈爱文. 基于 80C51 单片机控制的红外通信设计 2007


完整的pdf格式文档51黑下载地址(共12页):
基于51单片机的智能温度检测散热报警系统.pdf (384.19 KB, 下载次数: 27)




分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表