#申请原创# @21小跑堂
这个系统是对粮仓温湿度的监测及电路设计的研究。利用Arduino实现的高精度实用性温湿度控制系统可应用于库房的仓储管理。本次设计的温湿度控制系统以Arduino为控制核心,采用温湿度传感器DH11作为检测元件,构建了温湿度监控系统。实现处理器发出控制命令,传感器进行数据采集,将采集到的模拟信号转换为计算机能够识别的数字信号,通过LCD1602液晶显示屏显示实时温度和湿度,超出或者低于用户的设定值时由蜂鸣器报警,并由温湿度调节系统对环境温度、湿度进行调节,从而完成系统可以方便地实现温度、湿度的有效实时显示和控制的要求,降低经济损失和劳动强度,提高产品的性价比。设计系统实现了对环境温湿度精确控制,达到了相应的效果,系统电路简单、集成度高、工作稳定、调试方便、检测精度高,具有一定的实用价值。系统的大部分功能都得以实现,但是对于风扇的启动来说,会存在一定的时间差, 不能在检测到有异常数据的第一时间打开。
整体方案设计
充分考虑气候、环境因素对粮食的影响。并根据粮仓内粮食保持正常状态所需的温度和湿度设计出温湿度参考值预先存储arduino中。系统的数据采集部分是将温湿度传感器置干仓库内部、测出仓内的温湿度值、经过放大、A/D转换为数字量之后送入arduino中,然后通过LCD1602显示,单片机将预设的参考值与测量值进行比较,根据比较结果作出判断、经过程序分析处理发送相应指令控制执行机构动作。接通或关闭各种执行机构的继电器进而控制干燥机、空调和风机等设备,以此来调节仓内温湿度。如此循环不断,使温湿度值与设定值保持一致。当温湿度值超过允许的误差范围,系统将发出声音报警。如果有必要、仓管人员还可以根据实际的情况通过人工修改片内存储的预设值。通过对整个系统的单片机部分的设计、达到优化控制温湿度的目标。
软件系统整体设计
如图所示,首先进行系统初始化、传感器和串口的的驱动,然后接收温湿度传感器数据,判断数据是否在正常值范围内,是将数据显示在LCD1602上,否蜂鸣器报警,电机转动风扇降温 ,LCD显示数据,返回接受温湿度传感器数据步骤。
核心模块
温湿度传感器
DHT11数字温湿度传感器是一款含有已校准数字信号输出的温湿度复合传感器,它应用专用的数字模块采集技术和温湿度传感技术,确保产品具有极高的可靠性和卓越的长期稳定性。传感器包括一个电阻式感湿元件和一个NTC测温元件,并与一个高性能8位单片机相连接。因此该产品具有品质卓越、超快响应、抗干扰能力强、性价比极高等优点。每个DHT11传感器都在极为精确的湿度校验室中进行校准。校准系数以程序的形式存在OTP内存中,传感器内部在检测信号的处理过程中要调用这些校准系数。单线制串行接口,使系统集成变得简易快捷。超小的体积、极低的功耗,使其成为该类应用中,在苛刻应用场合的最佳选择。产品为4针单排引脚封装,连接方便。
硬件电路仿真
本次设计选用arduino为主控系统,DHT11传感器与主控系统连接,LCD1602读取单片机处理的信息进行一个温湿度的显示。FAN-DC 风扇通过读取处理的信息来判断是否转动,BUZZER蜂鸣器来进行声音报警。
主程序代码
void loop() { //delay(2000); float h = dht.readHumidity();//读湿度 float t = dht.readTemperature();//读温度,默认为摄氏度
lcd.setCursor(0,0); lcd.print("Hum: ");//温度 lcd.print((int)h); lcd.print(" %");
lcd.setCursor(0,1); lcd.print("Tem: ");//湿度 lcd.print((int)t); lcd.print(" C");
Serial.println((int)h);
if((int)t>20|(int)h>20){//温度超标或湿度超标 digitalWrite(11,LOW);//风扇开转 digitalWrite(2,HIGH); delay(500);//报警声频率 时间会影响温湿度识别时间 digitalWrite(2,LOW); delay(500); }else{ digitalWrite(11,HIGH);//风扇停机 digitalWrite(2,LOW);//蜂鸣器闭电 } }
|
以Arduino为主控单元,通过DTH11传感器获取粮仓温湿度,并提供报警和相应处理。适用于简单的温湿度测量及预警。