基于DS18B20的室内智能温度控制系统设计

发布者:亚瑟摩根最新更新时间:2012-05-29 来源: 电子设计工程 关键字:DS18B20  温度控制系统  温度传感器 手机看文章 扫描二维码
随时随地手机看文章
    温度在工农业生产中起着举足轻重的作用,在冶金、医药、食品制造和化学制造业等行业尤其显得重要。在适当的温度下生产的产品质量、产量和合格率会大大的提高。有些药品的生产和存储要在很低的温度下进行;石油分馏的过程中在不同的温度下才能分离出汽油、柴油、煤油、硫化物;食品的制造和存储也要在特定的温度下才能保证质量。在农业大棚蔬菜和室内圈养牲畜对于环境温度的要求也很高,大棚蔬菜的温度基本上要保证在20~30℃。鸡舍的育雏期温度要控制在36℃左右。随着社会生产力和科学技术的发展,工农业生产对于温度的要求会越来越高,这样就需要系统不但可以测出室内的实际温度,还可以通过上位机来进行实时的控制,调整环境的温度。

1 系统的整体想路
    本系统分为上位机模块、单片机模块、温度采集模块、加热模块。上位机采用的是用VC++6.0的软件环境来编写一个控制界面,用来控制下位机的ATmage8单片机,并且与其通信,传递命令和接收信号,上位机和下位机之间利用RS232串口来进行连接;单片机模块编程来控制和采集DS18B20的温度信号;ATmage8和DS18B20之间采用单总线的方式来连接。单片机模块和加热模块之间接继电器,由单片机来控制。上位机设定温度范围,发送给单片机,单片机接收到后采集温度传感器的温度信号,处理后得到的温度值进行阈值匹配,控制继电器的闭合,并传给上位机,显示在上位机界面。当温度低于设定最低阈值时,开启继电器,加热模块开始工作,当到达最高阈值时,闭合继电器,加热模块停止工作。这样就达到了控制温度的目的。

2 硬件部分设计
2. 1 ATmage8单片机简介
    ATmage8是一款采用低功耗CMOS工艺生产的基于AVR RISC结构的8位单片机。它承袭了AT90系列所具有的特定,并增加了更多的接口功能,而且在省电性、稳定性、抗干扰性及灵活性方面更加的灵活和周全,它所有的寄存器都直接与ALU相连,这样提高了代码的效率;含有32个8位通用寄存嚣,8k字节的Flash程序存储器可擦写大于10000次;带有两个预分频的8位定时器/计数器、一个带预分频的16位定时/计数器;3个PMW通道,可实现任意16位以相位和频率的可调PMW脉宽调制输出;一个10位的AD转换,基本满足大部分的信息采集;片内自带的晶振也是非常的方便;I/O口的拉电流能力可以达到40 mA,这样比51单片机的驱动能力大了很多,在此系统中也就可以直接驱动继电器。
2.2 温度传感器DS18B20
    传统的温度传感器往往采用模拟技术进行设计,这样的话就会遇到线性误差补偿、多点测量中的切换误差和信号的调理电路的误差等问题,这些问题都可以造成系统的不稳定,所以数字化、集成化的温度传感器成为发展的方向。DS18B20温度传感器是DMLLAS公司生产的新一代数字温度传感器。该传感器将地址线、数据线和控制线合为一根双向串行数据的信号线,并且允许连接多个DS18B20。它具有3引脚的T0-92小体积封装;测量范围在-55~+125℃,测量的精度也小于1℃;3引脚分别接在电源、地和一个I/O端口上,十分方便。
2.3 硬件部分
    室内智能温度调节系统的硬件设计部分主要由单片机模块、温度采集模块和加热模块组成,图1为系统的组成框图。


    其中上位机和单片机之间是互相通信的,上位机发送温度阈值和命令给单片机,单片机发送当前温度值给上位机;单片机和DS18B20之间也是互相通信,单片机发送初始化和控制命令给温度传感器,温度传感器把检测到的温度信号传给单片机处理;单片机控制加热模块,经过温度采集模块进行反馈。这样就形成可一个完整的系统。[page]

2.3.1 单片机模块
    整个系统中ATmage8是核心的内容,它不仅负责和上位机之间的通信、处理温度传感器的信号,转化成温度值,并且控制电子开关继电器,以此来控制加热模块。图2为ATmage8模块的电路图。


    其中PC6接的是复位电路,PB6和PB7这连接的是单片机的振荡电路,PC6口连接的是R1和C3组成的复位电路;PD0和PD1读写口,通过MAX232电平转换芯片和串口连接,和上位机进行通信。
2. 3.2 温度采集模块
    由于我们要控制的是整个室内的温度。这样的话一个DS18B20显然是不能满足要求的,本系统采用的是多个温度传感器共同来工作,在室内的多点放置传感器,这样就形成一个多点的温度采集系统。每个DS18B20都有一个唯一的序列号,这样CPU只需要一根端口线就可以和多个DS18B20通信,连接十分的方便,由于考虑功耗,率系统选取了4个温度传感器。图3为DS18B20和单片机之间的连接图。


    DS18B20有两种电源接法,外部方式供电和寄生电源供电,由于寄生供电方式有可能产生电压不够,所以本系统采用外部电源供电,用一个上拉电阻使它的电压稳定。图中1脚接的是地,3脚接的是电源,2脚和单片机的I/O口连接,为数据线。
2. 3. 3加热模块
    单片机用一个PBI来控制继电器的开断,加热器随之开断。当单片机得到温度传感器的信号,经过处理后得到温度值和设定的温度范围比较,如果小于最小值,继电器打开,加热器开始工作,当温度在阈值范围内或者高于最大值时,继电器闭合,加热器随之关闭。
    此模块也可以在每个温度传感器的旁边设置一个加热装置,哪个温度传感器区域温度较低,则控制哪个区域加热。也可以根据实际的需要来调整各个区域的温度,将室内分成几个区域进行控制,设定不同的阈值进行比较。

[page]

3 软件部分设计
    软件部分主要涉及上位机软件和下位机ATmage8单片机的程序,上位机的软件部分只需要编辑一个GUI用户界面,在里面实现和单片机之间的通信即可,图4为上位机的GUI界面。


    上位机的程序只是起控制温度阈值和现实当前温度的功能,在这个界面上,我们就可以很清楚的看出每个传感器的温度值,由于传感器分别分布在室内的4个区域,则显示的当前温度就是室内四个区域的温度。这样工作人员就可以按实际的情况分别修改几个区域的温度阈值,来智能的控制室内的温度,达到生产要求。
    单片机的程序主要和上位机通信,控制传感器和继电器,图5为下位机程序的流程图。


    DS18B20和外部中断初始化后,系统就开始进入while循环,等待外部中断的产生,当上位机的阈值发生改变并且通过串口发送给单片机,程序开始进入中断,中断里面是发送程序,接收到上位机的指示就发送当前的温度给上位机;同时主程序里开始进行温度的采集和阈值的对比,利用程序来进行判断,判断如果不匹配的话,温度低了就加热,温度高了就定制加热,保证温度在合适的范围内。

4 结束语
    本系统是采用高性能的ATmage8单片机和高精度的数字温度传感器设计的一个室内智能温度调节系统,采用上位机控制温度的阈值,传达给单片机执行。实验验证,很好的体现了DS18B20很好的精度性能,误差控制在0.5℃之内,适合小面积的工农业生产和生活应用,具有很高的使用价值。

关键字:DS18B20  温度控制系统  温度传感器 引用地址:基于DS18B20的室内智能温度控制系统设计

上一篇:一种改善微波模块增益指标温度特性的新方法
下一篇:基于GSM的家庭安全防护系统

推荐阅读最新更新时间:2024-05-02 22:05

CC2430与DS18B20的粮库温度传感器网络设计
1 传感器网络体系结构 一个典型的传感器网络的体系结构包括分布式的传感器节点、网关节点、互联网和用户界面等。在传感器网络中,节点布置在被监测区域内。每个传感网络装备有一个连接到传输网络的网关。网关通过传输网络把被测数据从传感区域传到提供远程连接和数据处理的基站,基站再通过Internet连到远程数据库。最后采集到的数据经分析、挖掘后通过一界面提供给终端用户。 本系统主要结构是每个CC2430模块挂接多个DS18820温度传感器。温度传感器按一定规律布置在粮库中,通过单总线与当前CC2430模块连接;利用无线传感器网络组网技术将这些CC2430模块组网,并把数据发送到本仓数据集中器,通过网桥将数据集中器与当地监控主机连
[工业控制]
关于DS18B20系列号
DS18B20中有一个64位光刻ROM,按说明书说法,开始8位(28H)是产品类型标号,接着的48位是该DS18B20自身的序列号,最后8位是前面56位的循环冗余校验码(CRC=X8+X5+X4+1)。光刻ROM的作用是使每一个DS18B20都各不相同,这样就可以实现一根总线上挂接多个DS18B20的目的。 读取ROM方法:先复位DS18B20,成功后执行读取ROM命令(33H),然后将这64位以8个字节的方式存入数组,最后用LCD或LED逐个字节显示出来。下面是读取ROM的主程序: void main() { uchar i; uint j=200; rest_ds18b20();//复位 write_ds18b2
[单片机]
基于MAX1968的LD自动温度控制系统设计
引 言 LD(激光二极管)由于其波长范围宽、制作简单、成本低、易于大量生产,而且体积小、重量轻、寿命长,因而品种发展快,目前已超过300种,应用范围覆盖了整个光电子学领域,成为当今光电子科学的核心技术,广泛应用于激光测距、激光雷达、激光通信、激光模拟武器、激光警戒、激光制导跟踪、引燃引爆、自动控制、检测仪器等领域,并形成了广阔的市场。 LD缺点是输出特性受温度影响很大,见图1。 随着温度的升高,需要有更多的载流子注入来维持所需的粒子数反转,LD的阈值电流升高,这会导致LD的能量转化效率降低,将电能转换为热能,发射波长也随着温度的变化发生漂移。如果LD不能快速有效地制冷,则不仪会影响其输出特性,甚至会损坏LD。 为了
[应用]
AVR M16 8M 的DS18B20头文件
只需调用gettemp();就可以了!出口参数wmh是显示的高位,wml使显示的低位,然后调用你的显示程序就可以了! /************************************************************************* ds18b20头文件 M16 内部8M *************************************************************************/ #define CLR_DIR_1WIRE DDRC&=~BIT(2) //只要修改这里的参数就可以了!呵呵! #define SET_DIR_1WIRE
[单片机]
新一代硅芯片温度传感器让测量精度更高
摘要 本文检验最新一代硅芯片温度传感器的准确性。这些传感器提供数字输出,无需线性化,支持小封装尺寸和低功耗。其中许多具备报警功能,以提醒系统存在潜在故障。 简介 电子行业对精度的要求越来越高,温度检测也不例外。目前市面上有许多温度检测解决方案,每一种都有其优缺点。硅芯片温度传感器,线性度相对较高,而且精度远超其他解决方案。但是,硅芯片温度检测领域的最新进展意味着,使用硅芯片解决方案将可以实现高分辨率和高精度。 新冰箱 那时正是2020年3月,英国即将进入封锁状态。全球都在囤积食物,以防超市关门,而未来似乎充满不确定。就在这种时候,Bramble家的冰箱罢工了。满脑子都回响着Kenny Rogers单曲“露西
[模拟电子]
新一代硅芯片<font color='red'>温度传感器</font>让测量精度更高
利用AVR单片机设计的DS18B20测温程序
/******************************** DS18B20测温程序 文件名:main.c 编译:WinAVR-20070122 硬件环境:CA-M8X 打开的开关如下 S6(1,2,5,6,7) - 外部4MHz晶振和595接口 J8(EN-SEG) - 数码管显示允许 S7(4) - 连接PC1 与DS18B20数据口 (在CA-M8X 上DS18B20为非总线供电) *******************************/ #include avr/io.h #include util/delay.h #includ
[单片机]
微控制器和1-Wire温度传感器的软件接口
1-Wire(一线制)数字温度传感器 DALLAS公司产的1-Wire(一线制)数字温度传感器己被广泛应用于各工业控制与捡测的设备仪器之中,但如何应嵌入与连接在系统之术是设计人员所关切的技术问题。 DSl8B20、DS18C20或DSl822是业内更高精度(0。5℃)的1-Wire多点数字温度传感器,其特点是: *具有1-Wire数字接口 *唯一的64位序列号 *宽广的温度测量范围为-55℃至+125℃ *具有非易失用户(2字节EEPROM)可编程触发点的过热告警 *测量分辨率可由用户配置为9至12位 *封装形式包括TO-92,150mil8脚SOIC和倒装片 DSl8x20或DSl822温度传感器内部结构图见图
[工业控制]
微控制器和1-Wire<font color='red'>温度传感器</font>的软件接口
AD590温度传感器的使用
     AD590温度传感器是一种已经IC化的温度感测器,它会将温度转换为电流,在8051的各种课本中经常看到。其规格如下:   1、 度每增加1℃,它会增加1μA输出电流   2、 可测量范围-55℃至150℃   3、 供电电压范围+4V至+30V   AD590的管脚图及元件符号如下图所示:            AD590的输出电流值说明如下:   其输出电流是以绝对温度零度(-273℃)为基准,每增加1℃,它会增加1μA输出电流,因此在室温25℃时,其输出电流Iout=(273+25)=298μA。   AD590基本应用电路:            注意事项:   1、 Vo的值为Io
[工业控制]
小广播
最新嵌入式文章
何立民专栏 单片机及嵌入式宝典

北京航空航天大学教授,20余年来致力于单片机与嵌入式系统推广工作。

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved