手机版
您的当前位置: 钻爱网 > 述职报告 > 年终述职 > [基于PC机的智能式温湿度测量器设计] 温湿度测量仪

[基于PC机的智能式温湿度测量器设计] 温湿度测量仪

来源:年终述职 时间:2019-10-26 08:03:13 点击:

基于PC机的智能式温湿度测量器设计

基于PC机的智能式温湿度测量器设计 摘 要:本文介绍了一种基于PC机的智能式的温湿度测量器的设计原理, 下位机部分详细的阐明了SHT10芯片的原理与使用方法,以及芯片与单片机的硬 件连接,数据传输格式等内容,上位机部分说明了如何在PC机上用VB6.0开发一 个应用界面,将上位机所接收到的数据用数字、实时曲线以及虚拟仪表的方式表 现出来。

关键词:SHT10;
VB;
温度;
湿度 1 引言 温度与湿度的测量一直在工业生产,农林培育,军事国防、居民生活等 方面有着广泛的应用。传统的温湿度测量装置一般都是模拟式的,有着体积大、 使用不方便且不易与计算机控制系统相连接的缺陷。为了克服以上缺陷,本设计 采用Sensirion公司生产的温湿度传感器SHT10,该芯片由相对湿度传感器, 温度 传感器, 校准存储器, 14 位A/D 转换器, 信号放大器和I2C 总线接口构成。

SHT10 具备卓越的长期稳定性,数字输出功能, 完全低功耗,体积微小, 全自动 降能的功能。

2 系统硬件设计 本设计的硬件组成部分主要由SHT10,STC89C58单片机,PC机构成。

利用STC89C58单片机对温湿传感器进行控制,进行数据采集后,将数据收集到 单片机中,进行数据处理之后再用串口数据发送的方式将数据送至上位机(PC 机),上位机将最终的结果进行显示。整体硬件结构图如图1所示。

2.1传感器与单片机的接口电路 由于STC89C58没有I2C接口,所以通过模拟来实现。用P2.3来模拟时钟 线SCK,用P2.2来模拟数据线DATA。DATA需要一个外部的上拉电阻(例如:
10kΩ)将信号提拉至高电平。STC89C58单片机与SHT10的接口电路如图2所示。

2.2单片机与PC机的接口电路 STC89C58单片机与上位机的通信采用串行通信的方式,应用MAX232 芯片进行TTL电平与RS 232标准电平的转换。STC89C58单片机与上位机的接口 电路如图3所示。

3 系统软件设计 下位机(单片机)的软件采用C语言进行编程,上位机(PC机)的软件采用VB6.0进行编程。

3.1下位机的软件设计 下位机的软件设计主要分为如下的4个部分:
(1)启动传输 当SCK时钟高电平时DATA翻转为低电平,紧接着SCK变为低电平,随 后是在SCK时钟高电平时DATA翻转为高电平。后续命令包含三个地址位(目前 只支持“000”),和五个命令位。SHT10会以下述方式表示已正确地接收到指令:
在第8个SCK时钟的下降沿之后,将DATA下拉为低电平(ACK 位)。在第9 个 SCK时钟的下降沿之后,释放DATA(恢复高电平)。

(2)连接复位 如果通讯中断,下列信号时序可以复位串口:当 DATA 保持高电平时, 触发SCK 时钟9 次或更多。在下一次指令前,发送一个“传输启动”时序。这些 时序只复位串口,状态寄存器内容仍然保留。

(3)测量温湿度命令 发布一组测量命令后,控制器要等待测量结束。这个过程需要大约 20/80/320ms,分别对应8/12/14bit测量。SHT10通过下拉DATA 至低电平并进入 空闲模式,表示测量的结束。单片机在再次触发SCK时钟前,必须等待这个“数 据备妥”信号来读出数据。为了补偿湿度传感器的非线性以获取准确数据,在读 出数据后按照datasheet中的修正公式进行修正。

(4)串行发送命令 上位机通过串行的方式发送相应的十六进制数来作为测量温度、测量湿 度和停止测量的命令。下位机接到命令后进行相应的操作,将所获取的最终结果 逐个字节的串行发送给上位机。

3.2上位机的软件设计 上位机(PC机)的主要工作是通过串口,将下位机发送上来的温度或 者湿度的数据进行数字显示,并且绘制出相应的实时曲线,形成直观实用的用户 操作界面。

VB6.0下的串行端口通信是通过其提供的控件MSComm实现的。根据下 位机的数据传送规律,将MSComm控件的RThreshold属性设置为4,接收缓冲区 接收满4个字节之后触发OnComm事件。Settings属性中波特率、校验位等与下位 机统一即可,其他属性为默认。实时曲线的绘制采用PSet画点方式完成,虚拟仪 表的设计中应用Line、Circle等方法绘制仪表表盘和刻度,用Line绘制指针。用户 操作界面如图4所示。

推荐内容

钻爱网 www.zuanai.cn

Copyright © 2002-2018 . 钻爱网 版权所有 湘ICP备12008529号-1

Top