当温度在-10~+50℃之间变化时,该电压就在2.5~0V之间反向线性变化,调节R1的阻值大小可以消除不同传感器的零点误差。

3.2 湿度测量电路设计

集成湿度传感器HM1500的输出电压在1~4 V间随湿度线性变化,考虑到本系统的单电源特点,设计的湿度信号采集电路如图3所示,该电路的测湿范围为0~100%。

由于该电路中没有负压,电路的主体采用差分式减法电路,精密电阻R3=R6=2.4kΩ,R4=R7=2kΩ,用这四个电阻可调节增益。通过HM1500传感器测量所得到的湿度电压信号从IN端输入。差分的另一侧输入Vs。由TL431提供2.5 V的精密电压分压后可得到1.0 V左右的电压。并由此可以得到输出电压的计算公式为:

若输入电压在1~4 V之间变化,则输出电压就相应在0~2.5 V之间变化。调节R1可以消除不同的湿度传感器的零点误差。

4 显示存储和串行通讯电路设计

本系统采用3个独立按键和四位七段数码管动态扫描显示的方式,数据存储采用。EEPROM芯片AT24C02来存储设定的温湿度传感器地址、温湿度报警门限值,以及报警记录。采集到的各种数据和存储的报警信息可以按照指定的协议传送给上位主控制器进行处理。

图4所示是该系统中的按键显示、数据存储和串行通讯电路。图中,当单片机从ADIN1和ADIN2口采集到温湿度数据以后,首先把湿度值送到数码管显示,同时点亮湿度指示灯,表示现在显示的是湿度。通过按2号键和3号键可以切换温湿度显示,其中2号键显示湿度,3号键显示温度,显示温度时同样会点亮相应的指示灯。如果检测到温湿度超过门限,则点亮报警灯,以表示数据超限。按1号键可以进行相应温湿度门限和传感器地址的设定。数据设定完成以后,可通过两个IO口编程模拟I2C总线协议以把数据存入指定位置,从而使断电后再开机时,数据能正常读出。由于单片机IO口有限,该系统又采用两片SN74HC373芯片扩展了8个IO口以满足设计要求。为了保证电平兼容,这部分电路均采用3.3V电压供电。数据采集转换完成以后,系统可直接通过单片机的UASRT(异步串行通讯口)接到MAX3485通讯芯片,以便按照指定的协议把数据传送给上位机。