迪文科技论坛

 找回密码
 立即注册
搜索
查看: 16|回复: 0

【分享】23-郑奕轩,欧阳辛鑫-智能温湿度检测和环境报警

[复制链接]

1

主题

0

回帖

34

积分

新手上路

Rank: 1

积分
34
发表于 2 小时前 | 显示全部楼层 |阅读模式
基于DWIN T5L智能屏的闭环智能温湿度控制系统
一、项目概览
本项目是一套完全基于迪文T5L系列智能屏OS内核(8051架构)开发的闭环温湿度控制方案。系统集成了环境数据采集、人机触控交互、PID比例算法自动调节、多条件分级报警四大核心模块,可灵活适配小型恒温箱、农业大棚简易温控、通风风门模拟、实验室环境监测等应用场景。

代码采用模块化分层设计,所有变量直接对接DGUS虚拟变量区(VP),屏幕触控修改参数实时下发至底层,无冗余串口透传逻辑,保证了控制实时性与代码简洁性。底层驱动完备:Timer0生成标准50Hz舵机PWM信号,Timer2提供1ms精准时基,DHT11单总线驱动带校验重传机制。工程结构清晰,注释完整,新手可直接基于此进行二次开发。

二、硬件配置清单
主控:迪文T5L系列智能屏(OS核 206.4384MHz,内置增强型8051),用于核心控制与界面显示。
环境传感器:DHT11 数字温湿度传感器,用于采集环境温度与湿度。
执行机构:SG90 9g模拟舵机(P1.6引脚输出PWM驱动),用于模拟风门/通风开度调节。
电源:5V直流供电(由屏幕供电,可直接驱动DHT11与舵机),为整机供电。
人机交互:DGUS II 触控界面(VP变量交互,无需外接MCU),用于参数设置与状态监控。

三、系统核心功能详解
1. 实时温湿度采集与屏幕可视化
DHT11以1秒/次的频率采集环境温湿度,数据分别写入VP地址 0x2000(温度)和 0x2010(湿度),屏幕DGUS控件实时刷新显示当前数值。
当传感器读取失败时,系统自动标记故障码并上报至报警状态寄存器。

2. 全参数触控自定义阈值
用户可通过DGUS触控界面自由设定以下控制与报警参数,所有参数修改后实时下发至底层控制逻辑,无需重启或额外操作:

目标恒温值(VP地址 0x2020):用户设定期望达到的温度。
温度上限报警阈值(VP地址 0x2022):超过此值触发温度高报警。
温度下限报警阈值(VP地址 0x2024):低于此值触发温度低报警。
湿度上限报警阈值(VP地址 0x2026):超过此值触发湿度高报警。
湿度下限报警阈值(VP地址 0x2028):低于此值触发湿度低报警。

3. P比例算法舵机自动控温(自动模式)
在自动模式下,系统依据当前温度与目标温度的差值,通过比例算法动态调节舵机角度,模拟风门或通风机构的开度变化:

控制公式:舵机角度 = 90 + 9 × (当前温度 - 目标温度)
死区处理:当温差绝对值小于1℃时,舵机固定在中位 90°,有效防止频繁抖动。
限幅保护:输出角度强制限制在 0° ~ 180° 范围内,完全匹配SG90舵机的物理行程。

4. 多状态分级报警
系统实时综合判断温湿度与传感器状态,将报警码写入VP地址 0x2040,屏幕根据数值显示对应的提示信息:

报警码0:温湿度全部正常。
报警码1:温度超过上限阈值。
报警码2:温度低于下限阈值。
报警码3:湿度超过上限阈值。
报警码4:湿度低于下限阈值。
报警码5:DHT11传感器读取故障(通信超时或校验错误)。

5. 双工作模式切换
系统支持两种控制模式,通过VP地址 0x2032 切换:

模式0:自动P控温模式(比例算法根据温差自动调节舵机)。
模式1:预留手动模式,可扩展为通过屏幕直接控制舵机角度(便于调试或人工干预)。

四、底层驱动与固件特性
Timer2 1ms精准时基:提供微秒/毫秒级精确延时函数,为时序敏感的DHT11通信与任务调度提供可靠时间基准。
DGUS VP读写封装:底层提供 sys_read_vp() / sys_write_vp() 原生寄存器操作函数,并封装了16位变量读写工具,支持高效、安全的VP数据交换。
DHT11独立驱动:严格遵循单总线时序,内置校验重传机制,在干扰环境下可自动恢复,提升系统鲁棒性。
Timer0 50Hz PWM生成:中断方式产生标准舵机控制信号(周期20ms,脉宽0.5~2.5ms),中断服务程序中加入原子保护,避免角度跳变。
上电初始化:系统启动时自动完成寄存器配置、看门狗关闭(便于调试)、IO口方向与电平初始化,确保外设上电即处于安全状态。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有账号?立即注册

x
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|迪文科技论坛 ( 京ICP备05033781号-1 )

GMT+8, 2026-7-29 19:05 , Processed in 0.060580 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表