基于51单片机的智能仓储温湿度监控系统设计
一、系统架构设计
1.1 整体系统框图
+----------------+ RS485 +-----------------+ SIM800C
| 温湿度传感器组 |<--------->| | GSM模块
+----------------+ | | ↑
+----------------+ | STC89C52RC | | SMS报警
| 光照度传感器 | ADC | (主控制器) |<------+
+----------------+ | | |
+----------------+ | | | ESP8266
| 烟雾检测模块 | GPIO | |<------+ WiFi报警
+----------------+ +--------+---------+ |
| | | |
UART I2C GPIO |
↓ ↓ ↓ |
+--------+ +-------+ +---------+ |
| LCD屏 | | EEPROM| |继电器组 | |
+--------+ +-------+ +---------+ |
存储设定 控制通风/除湿
1.2 硬件组成清单
| 模块名称 | 型号 | 技术参数 |
|---|---|---|
| 主控芯片 | STC89C52RC | 11.0592MHz, 8KB Flash |
| 温湿度传感器 | DHT22 | 精度±2%RH, ±0.5℃ |
| 光照传感器 | BH1750 | 0-65535 lux |
| 烟雾检测 | MQ-2 | 检测CH4/LPG/烟雾 |
| 显示模块 | LCD12864 | 128x64点阵 |
| 无线通信 | ESP8266-12F | 802.11 b/g/n |
| 存储单元 | AT24C256 | 256Kbit EEPROM |
| 执行机构 | JQC-3F继电器 | 10A/250VAC, 光耦隔离 |
二、核心功能实现方案
2.1 环境参数监测
多传感器数据采集方案:
void Sensor_Update() {
// 温湿度采集
DHT22_Read(&temp, &humi);
// 光照强度测量
BH1750_Start();
lux = BH1750_Read();
// 烟雾浓度检测
smoke = ADC_Read(MQ2_CH);
// 数据校验
if(!Data_Validate()) {
Error_Handler(DATA_ERROR);
}
}
采样策略:
- 基础采样周期:60秒
- 异常状态加速采样:10秒
- 夜间模式(光照<50lux)延长周期:300秒
2.2 自动控制逻辑
通风除湿控制算法:
void Environment_Control() {
if(humi > set_humi + 5% && temp > set_temp){
// 同时开启通风和除湿
FAN_ON();
DEHUMIDIFIER_ON();
}
else if(humi > set_humi + 3%){
// 仅开启除湿
DEHUMIDIFIER_ON();
FAN_OFF();
}
else if(temp > set_temp + 2℃){
// 仅开启通风
FAN_ON();
DEHUMIDIFIER_OFF();
}
else {
ALL_OFF();
}
}
设备保护机制:
- 继电器最小动作间隔:120秒
- 连续运行时间限制:≤6小时
- 电流监测保护:>8A自动断电
2.3 异常报警系统
多级报警策略:
| 异常等级 | 触发条件 | 响应措施 |
|---|---|---|
| 一级预警 | 温度>45℃或湿度>80%RH | 本地蜂鸣器提示 |
| 二级警报 | 温度>60℃持续5分钟 | 短信通知+设备全功率运行 |
| 三级紧急 | 检测到烟雾或明火 | 触发消防系统+拨打电话报警 |
报警信息格式:
[仓库环境警报]
位置:B区3号仓
时间:2023-08-20 14:35
当前参数:
温度:68.5℃(超限!)
湿度:92%RH
烟雾值:758
三、电路设计要点
3.1 传感器接口电路
DHT22连接示意图:
+5V
│
├─10KΩ上拉
│
DHT22_DATA───┤ P1.0
│
GND
多路继电器驱动电路:


1717

被折叠的 条评论
为什么被折叠?



