基于VHDL的数字湿度计研究
时间:08-08 08:47 阅读:1172次
*温馨提示:点击图片可以放大观看高清大图
简介:湿度计是一种常用的检测仪器,文中利用FPGA器件与HS1101湿度传感器设计实现了一种简易的数字湿度计,用于检测室内湿度。该湿度计具有结构简单、测量准确性高、稳定性好等优点。
1 硬件电路设计
数字湿度计硬件电路图如图1所示,由湿度检测电路、AD转换电路、FPGA电路板等组成。其中湿度检测电路采用HS1101湿度传感器用于检测室内湿度。该传感器具有性价比高、体积小、精度高、响应速度快等优点,广泛应用于仪表、空调、除湿机、加湿机、仓储、气象以及工业自动化等领域。HS1101湿度传感器是一种利用电容原理检测的湿度传感器,相对湿度的变化和电容值呈线性规律,在检测中,电容值随着空气湿度的变化而变化。
图1 数字湿度器的硬件电路
因此,本文利用将电容值的变化转换成电压的变化,然后利用AD转换芯片ADC0804和FPGA器件进行数据采集。
2 软件程序设计
根据系统的设计要求,将程序部分设计分为四个模块,包括分频模块、AD转换模块、数据转换模块、显示译码模块。采用OuartusII开发平台和VHDL语言完成程序设计。
2.1 分频模块
分频电路是FPGA设计中使用频率非常高的基本单元之一。本设计的分频电路简单方便、节约资源、可移置性强、便于系统升级,同时在以后的FPGA设计中也有很大的应用空间。图2分频模块中是将50MHz时钟信号分频为2kHz的频率。
2.2 AD转换模块
从分频模块的输出端口clk 2k输出2kHz到AD转换模块的clock端口作为时钟频率信号;intr为中断信号;input data[7..0]为湿度数据输入端口,由湿度传感器检测的模拟信号,通过AD电路转换为数字信号传给inputdata[7..0]端口;cs是片选输出端口,writeout是写输出端口,readout是读输出端口,分别对应ADC0804的片选/CS、读控制/RD、写控制/WR的引脚;dataout[7..0]为数据输出端口。
2.3 数据转换模块
数据转换模块是将AD转换后的数据(高4位,低4位)通过查表的方式,用BCD码形式来表示。ADC0804的基准电压为5V时,由于ADC0804是8位的AD转换器,因此最小电压准位是5/256=0.02V,利用湿度检测电路将1%RH改变对应0.02V电压变化。
2.4 显示译码模块
采用共阴数码管,当某一字段的阳极为高电平时,相应字段就点亮;当某一字段的阳极为低电平时,相应字段就不亮。输入为0,输出为01111111,数码管显示的是0;若输入为1,输出为00000110,则数码管显示的是1。