1 引 言
大气温度的测量具有重要意义, 一般是采用各种温度计进行人工测量, 并定时记录测量结果, 这种方法费时费工, 十分不便。本文提出了一种非常小巧的大气温度测量和记录装置, 能对范围为- 55 ℃ ~ + 125 ℃ 的温度进行定时自动测量, 同时记录测量结果, 可达0. 0625℃ 。
2 系统原理
系统结构如图1所示。系统主要由AT89C2051单片机和外围电路构成。其基本思想是由串行时钟芯片DS1306 提供时间基准, 由温度传感器DS18B20进行温度测量, 温度数据存储在DS2433中。AT89C2051单片机负责整个系统的协调控制。
AT89C2051是一款低电压, 高性能的CMOS 8位单片机, 片内含2k bytes的可反复擦写的只读F lash程序存储器和128 bytes的随机存取数据存储器( RAM) , 器件采用ATMEL公司的高密度、非易失性存储技术生产, 兼容标准MCS- 51指令系统, 内置通用8位中央处理器和Flash存储单元, 功能强大的AT89C2051单片机可提供高性价比的应用。
AT89C2051是一个功能强大的单片机, 但它只有20个引脚, 15个双向输入/输出( I /O )端口, 其中P1是一个完整的8位双向I/O 口, 两个外中断口, 两个16位可编程定时计数器, 两个全双向串行通信口,一个模拟比较放大器。同时AT89C2051 的时钟频率可以为零, 即具备可用软件设置的睡眠省电功能,系统的唤醒方式有RAM、定时/计数器、串行口和外中断口, 系统唤醒后即进入继续工作状态。省电模式中, 片内RAM 将被冻结, 时钟停止振荡, 所有功能停止工作, 直至系统被硬件复位方可继续运行。
图1 系统结构图。
DS18B20是集成数字温度计 , 温度测量范围- 55℃ ~ + 125℃ , 通过编程可实现0. 5℃ 、0. 25 ℃ 、0. 125 ℃ 、0. 0625℃ 四种不同的分辨率。其特点是通过一条数据线就可实现与单片机的数字通讯。
测量得到的温度数据长度为2个字节。DS18B20数字温度计是DALLAS公司生产的1 -W ire, 即单总线器件, 具有线路简单, 体积小的特点。因此用它来组成一个测温系统, 具有线路简单, 在一根通信线上可以挂很多这样的数字温度计, 十分方便。
DS18B20的特点:
( 1)只要求一个端口即可实现通信。
( 2)在DS18B20中的每个器件上都有的序列号。
( 3)实际应用中不需要外部任何元器件即可实现测温。
( 4)测量温度范围在- 55 ℃ 到+ 125 ℃ 之间。
( 5)数字温度计的分辨率可以从9 位到12位选择。
( 6)内部有温度上、下限告警设置。
DS2433是1-W ire存储器, 容量为4k- B it ,可存储256个温度数据。其采用EEPROM 工艺, 即使掉电, 存储的数据也不会丢失。DS2433带有一个由工厂刻度的注册码, 其中包括: 48位序列码、8位CRC 校验码和8位家族码( 23h) , 还带有4096位用户可编程EEPROM。读写DS2433所需的电源完全取自于1-W ire通讯线。存储器分为16页, 每页256位。暂存器作为一个附加页面, 在写存储器时可用作缓冲器使用。数据先被写入一个暂存器中,在此对其进行校验。随后采用复制暂存器命令将数据传送到存储器中。这一过程可保证修改存储器内容时数据的完整性。PR- 35以及SO IC封装提供了一种紧凑的结构, 允许采用标准安装设备在印刷电路板上安装和连接器件。
由于1-W ire通讯的独特特点, 即它们内部都有一个64位注册码为每个器件提供了一个保证的标识, 确保每个器件的可追溯性, 当有多个1-W ire器件同时挂接在总线上并联形成本地网络时, 注册码可作为器件的节点地址使用。数据按照1-W ire协议串行传送, 仅需一条数据线和一条地线。因此DS2433可与DS18B20挂接在同一条数据线上, 通过它们内部的识别码进行区分, 这样大大节省了数据连接线。
整套系统的优点是所使用的器件非常小巧, 这样有两点好处:
( 1)系统体积小, 可放置于狭小空间中并对该空间温度进行测量。
( 2)系统功耗低, 可采用电池供电, 因此可放置于野外环境进行温度测量。测量结束后, 只需将存贮器取回并通过计算机接口读取记录即可。
3 器件选择
3. 1 小型化
同AT89C52单片机相比, AT89C2051因为去掉了P0和P2口, 体积大大缩小。DS1306为串行工作方式的时钟芯片, 较并行方式节省了大量I/O接口。
温度传感器DS18B20输出为数字量, 无需进行A /D转换, 就可由单片机处理。
3. 2 可扩展性
1-W ire单总线是Max im 全资子公司Dallas的一项专有技术, 与目前多数标准串行数据通讯方式,如SPI/ I2C /M ICROW IRE 不同, 它采用单根信号线,既传输时钟, 又传输数据, 而且数据传输是双向的,它具有节省I/O口线资源、结构简单、成本低廉、便于总线扩展和维护等特点。
因此, 根据实际需要, 1- W ire总线上可挂接多个温度传感器和存储器, 能对多个目标进行测量并记录更多数据。
4 通讯功能
MAX232是由德州仪器公司( TI)推出的一款兼容RS232标准的芯片。由于电脑串口RS232 电平是- 10V ~ 10V, 而一般的单片机应用系统的信号电压是TTL电平0V ~ 5V, MAX232 就是用来进行电平转换的, 该器件包含2个驱动器、2个接收器和一个电压发生器电路提供TIA /E IA - 232- F 电平。
该器件符合T IA /E IA - 232- F标准, 每一个接收器将T IA /E IA - 232- F电平转换成5- V TTL /CMOS电平。每一个发送器将TTL /CMOS 电平转换成T IA /E IA - 232- F电平。
MAX232提供了单片机与PC 机的RS232通讯接口。上位机软件可用V isua l B asic 6. 0 语言编写。VB6. 0提供了串口通讯控件, 应用这个控件,PC 机可以很方便地与单片机通过串口进行通讯。
5 应用实例
图2给出了软件操作界面和数据处理情况。某天的温度变化情况通过列表和曲线图两种方法给出。由此可以掌握这一天的温度变化规律。
图2 温度数据处理界面图。
6 结束语
从测量范围、和测量实例上看, 该系统可以用于对包括大气温度在内的多种环境温度进行测量和记录。
未来的工作设想:
( 1)数据存储方面: 单个DS2433只能存储256个温度数据, 可以换为存储容量更大的存储器或并行挂接多个DS2433, 以性记录更多的数据, 延长测量周期;( 2)数据读取方面: 目前采用的将存储器取下读取的方式还是显得有些繁琐, 可以设计手持式无线(如RF、红外、蓝牙等)接收装置来获取存储器的数据。如果是对野外环境进行测量, 可以利用移动通讯网络(如目前新兴的3G 技术) 进行数据的传输, 这样就省去了科研人员的劳顿之苦。
[1]. AT89C2051 datasheet https://www.dzsc.com/datasheet/AT89C2051_810086.html.
[2]. DS1306 datasheet https://www.dzsc.com/datasheet/DS1306+_1055956.html.
[3]. DS18B20 datasheet https://www.dzsc.com/datasheet/DS18B20_819975.html.
[4]. DS2433 datasheet https://www.dzsc.com/datasheet/DS2433_1056111.html.
[5]. AT89C52 datasheet https://www.dzsc.com/datasheet/AT89C52_1064535.html.
[6]. MAX232 datasheet https://www.dzsc.com/datasheet/MAX232_1074207.html.
[7]. RS232 datasheet https://www.dzsc.com/datasheet/RS232_585128.html.
[8]. TTL datasheet https://www.dzsc.com/datasheet/TTL_1174409.html.
[9]. PC datasheet https://www.dzsc.com/datasheet/PC+_2043275.html.
免责声明: 凡注明来源本网的所有作品,均为本网合法拥有版权或有权使用的作品,欢迎转载,注明出处。非本网作品均来自互联网,转载目的在于传递更多信息,并不代表本网赞同其观点和对其真实性负责。