当前位置:首页 期刊杂志

基于DS18B20的多点温度测量系统

时间:2024-06-19

刘志君

(辽宁科技学院 电气与信息工程学院 , 辽宁 本溪 117004)

基于DS18B20的多点温度测量系统

刘志君

(辽宁科技学院 电气与信息工程学院 , 辽宁 本溪 117004)

本设计以AT89C51单片机为主控芯片,以KEIL4为系统开发平台、采用C51进行编程,对多个单总线数字式温度传感器DS18B20进行多点温度测量,将结果显示在液晶模块LCD1602上,并对系统实际运行数据进行分析。这种单总线测温系统具有接口简单、精度高、抗干扰能力强、稳定可靠等特点。

单片机;DS18B20;温度检测;C51

0 前言

温度检测对工农业生产具有重要的作用。常见的温度检测方法有热电阻、热电偶等模拟器件,该种测温方式测温范围广,但是需要后续信号调理和处理电路,限制其更广泛的应用。本温度测量系统采用美国DALLAS半导体公司(现并入MAXIM公司)推出的一种改进型温度传感DS18B20,它的测温范围是-55℃~125℃,最高精度可达到0.1℃,满足一般测量要求。与传统的热电偶电阻比较,它集成信号调理和信号处理电路,直接输出温度数字信号,可以与微处理器直接接口。可根据实际需要,通过编程实现9~12位精度的数字量输出。由于本身的单总线特性和内部唯一的ID码,多个DS18B20可以并联在一根总线上。

1 DS18B20数字温度传感器

1.1 DS18B20测温原理

当DS18B20接收到单片机的启动信号后,开始启动温度转换。转换完成后的温度值就以16位带符号扩展的二进制补码形式存储在高速寄存器的第1、2字节,格式如图1.1所示。单片机可以向温度传感器发送指令读取转换后的数据,读取时候低位在前,高位在后,数据格式以0.0625℃/LSB形式表示。

位15(MSB)位14位13位12位11位10位9位8SSSSS262524位7位6位5位4位3位2位1位0(LSB)232221202-12-22-32-4

图1.1 DS18B20温度值存储器格式表

图1.1是DS18B20将温度值转化后得到的16位2进制数据,前5位表示符号,用S表示。如果测得的温度大于0,用原码表示,这5位S为0,只要将测到的数值乘以0.0625即可得到实际温度。如果温度小于0,用补码表示,需要将获得的数值取反加1再乘以0.0625即可得到实际温度。图1.1中,S表示符号位。

表1.1是部分温度值对应的二进制温度表示数据。

表1.1 DS18B20的温度转换值和温度的对照表

*上电默认值是+85℃

1.2 DS18B20的外形及引脚

DS18B20常见的封装有To-92和SOIC8两种,如图1.2所示。在工程实践中出于焊接等因素考虑,通常考虑To-92封装。

图1.2 DS18B20的外形及管脚排列

引脚的含义如表1.2所示。

表1.2 DS18B20详细引脚描述

1.3 DS18B20S时序图

图1.3 DS18B20复位脉冲和存在脉冲

图1.4 DS18B20读写/时序图

2 系统设计

2.1 系统硬件设计

系统采用单片机AT89C51来完成温度传感器信号的采集、液晶显示和报警等功能。AT89C51有40个引脚,能提供一个8位CPU,128位字节RAM,32根I/O线,2个16位定时器,一个全双工串行口,5个中断源,还有片内振荡和时钟电路,与MCS-51指令兼容。

出于系统的供电稳定性考虑,DS18B20用5V电源供电方式。出于总线驱动能力和时序的考虑,单总线上加一个4.7KΩ-6.2 KΩ的上拉电阻。

系统的硬件设计如图1.5所示,系统时钟选择为12Mhz。

图1.5 多点测温系统原理图

2.1 系统软件设计

系统的软件设计基于keil C完成。流程图如图1.6所示。

系统的软件部分前期工作需要完成DS18B20的ID号读取,存储于ROM中。软件部分完成如下基本功能:

1) DS18B20的初始化

2) LCD1602初始化

3) 单片机初始化

4) 依次发出每个DS18B20的ID号,获取每个温度并显示。同时与设定值比较,决定是否报警。

图1.6 主程序流程图

3 测试结果

本设计的前期测试通过仿真完成,采用PROTEUS软件。该软件能够比较真实的反应出实物的真实效果,可降低前期实验成本。通过仿真证明理论上可行。仿真成功后,基于PROTEUS软件进行了PCB设计,并进行制板和焊接,实物也达到了设计要求。

4 结语

通过实物证明,基于DS18B20数字式温度传感器构成多点测温系统,线路简单,硬件少,测温距离远,系统具有高度稳定性,可以应用于普通范围的测温系统中。

〔1〕DALLAS公司.半导体手册〔Z〕. DSLLAD公司、1996.

〔2〕顾振宇,杜振辉.DS18B20接口C语言程序设计〔J〕.单片机与嵌入系统应用.2002.(7):346-347.

〔3〕金伟正.单线数字温度传感器的原理与应用〔J〕.电子技术应用.2000.(6):66-68.

TheMulti-pointTemperatureMeasuringSystemBasedontheSensorDS18B20

LIU Zhi-jun

(SchoolofElectricalandInformationalEngineering,LiaoningInstituteofScienceandTechnology,Benxi,Liaoning, 117004,China)

Taking the SCM AT89S51 as major unit, KEIL4 as platform for system development, and using C51 as program language, a multi-point temperature measurement system is designed, the measured results are shown on the module LCD1602, and the process data are analyzed. By the real realization, the system has simple interface, high accuracy, strong anti-interference and high reliability.

SCM; DS18B20; Temperature detect; C51.

1008-3723(2017)04-005-03

10.3969/j.issn.1008-3723.2017.04.005

2017-06-25

课题项目:辽宁科技学院引导基金项目:AGV传送平台路径规划控制系统(YD201611)

刘志君(1973-),女,辽宁科技学院 电信学院副教授。研究方向:控制理论

TB212

:A

免责声明

我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自各大过期杂志,内容仅供学习参考,不准确地方联系删除处理!