当前位置: 首页 > article >正文

大棚检测系统

视频演示01—项目简介系统功能多参数环境监测实时采集空气温度、湿度、光照强度、CO₂浓度、土壤湿度。本地显示通过 0.96 英寸 OLED 屏幕直观显示各项数据。无线传输通过 HC-04/05 蓝牙模块将数据发送至手机或上位机支持简单 JSON 格式便于后续 App 或 PC 端解析。简单报警当 CO₂ 浓度过高或土壤湿度过低时触发蜂鸣器提醒。数据刷新每 2 秒左右更新一次数据兼顾 DHT11 传感器特性与实时性。系统可作为完整智能大棚的基础监测层后续可扩展自动控制如通风、灌溉、补光等执行机构。硬件组成主控板STM32F103C8T6 最小系统板温湿度传感器DHT11数字单总线光照传感器GY-302BH1750I²C 接口土壤湿度传感器电容式模拟输出接 ADCCO₂ 传感器JW01类似 MH-Z19UART 命令式显示模块0.96 英寸 OLEDSSD1306I²C无线模块HC-04/05 蓝牙UART 透明传输02—PCB原理图设计03—程序设计1DHT11 温湿度传感器驱动uint8_t DHT11_ReadData(uint8_t *temp, uint8_t *hum) { uint8_t buf[5] {0}; /* 开始信号 */ HAL_GPIO_WritePin(DHT11_PORT, DHT11_PIN, GPIO_PIN_RESET); HAL_Delay(18); HAL_GPIO_WritePin(DHT11_PORT, DHT11_PIN, GPIO_PIN_SET); delay_us(40); // 需要自行实现微秒延时 if (HAL_GPIO_ReadPin(DHT11_PORT, DHT11_PIN) 0) { delay_us(80); if (HAL_GPIO_ReadPin(DHT11_PORT, DHT11_PIN) 1) { /* 读取5个字节 */ for (uint8_t i 0; i 5; i) { buf[i] DHT11_ReadByte(); } /* 校验和验证 */ if (buf[4] (buf[0] buf[1] buf[2] buf[3])) { *hum buf[0]; // 湿度整数部分 *temp buf[2]; // 温度整数部分 return 1; // 读取成功 } } } return 0; // 读取失败 }2BH1750 光照传感器驱动void BH1750_Init(I2C_HandleTypeDef *hi2c) { uint8_t cmd 0x01; // Power On HAL_I2C_Master_Transmit(hi2c, BH1750_ADDR, cmd, 1, 100); HAL_Delay(10); cmd 0x10; // 连续高分辨率模式 HAL_I2C_Master_Transmit(hi2c, BH1750_ADDR, cmd, 1, 100); } uint16_t BH1750_ReadLux(I2C_HandleTypeDef *hi2c) { uint8_t buf[2]; HAL_I2C_Master_Receive(hi2c, BH1750_ADDR, buf, 2, 200); uint16_t lux (buf[0] 8) | buf[1]; return lux / 1.2; // 转换为实际 Lux 值 }3土壤湿度传感器驱动uint16_t Soil_ReadADC(ADC_HandleTypeDef *hadc) { HAL_ADC_Start(hadc); HAL_ADC_PollForConversion(hadc, 50); return HAL_ADC_GetValue(hadc); } float Soil_GetMoisturePercent(uint16_t adc_value) { // 根据实际标定调整映射关系示例 float moisture 100.0f * (4095.0f - adc_value) / 4095.0f; if (moisture 0) moisture 0; if (moisture 100) moisture 100; return moisture; }4CO₂ 传感器驱动const uint8_t CO2_GET_CMD[9] {0xFF, 0x01, 0x86, 0x00, 0x00, 0x00, 0x00, 0x00, 0x79}; uint16_t CO2_ReadPPM(UART_HandleTypeDef *huart) { uint8_t rx_buf[9] {0}; HAL_UART_Transmit(huart, (uint8_t*)CO2_GET_CMD, 9, 100); if (HAL_UART_Receive(huart, rx_buf, 9, 500) HAL_OK) { if (rx_buf[0] 0xFF rx_buf[1] 0x86) { return (rx_buf[2] 8) | rx_buf[3]; // 返回 CO₂ 浓度 (ppm) } } return 0; // 读取失败返回 0 }5OLED 显示函数void OLED_ShowSensorData(uint8_t temp, uint8_t hum, uint16_t lux, uint16_t co2, float soil) { char str[32]; SSD1306_Fill(0); sprintf(str, Temp: %2d°C, temp); SSD1306_GotoXY(4, 4); SSD1306_Puts(str, Font_11x18, 1); sprintf(str, Hum : %2d%%, hum); SSD1306_GotoXY(4, 26); SSD1306_Puts(str, Font_11x18, 1); sprintf(str, Light: %4d Lux, lux); SSD1306_GotoXY(4, 48); SSD1306_Puts(str, Font_7x10, 1); sprintf(str, CO2 : %4d ppm, co2); SSD1306_GotoXY(4, 60); SSD1306_Puts(str, Font_7x10, 1); sprintf(str, Soil: %.0f%%, soil); SSD1306_GotoXY(80, 48); SSD1306_Puts(str, Font_7x10, 1); SSD1306_UpdateScreen(); }6蓝牙数据发送JSON 格式void Bluetooth_SendSensorData(UART_HandleTypeDef *huart, uint8_t temp, uint8_t hum, uint16_t co2, float soil) { char json[128]; sprintf(json, {\temp\:%d,\hum\:%d,\light\:%d,\co2\:%d,\soil\:%.1f}\r\n, temp, hum, lux, co2, soil); // lux 需要自行传入或改为全局变量 HAL_UART_Transmit(huart, (uint8_t*)json, strlen(json), 200); }主程序循环示例while(1)while (1) { uint8_t temperature 0, humidity 0; uint16_t light_lux 0; uint16_t co2_ppm 0; float soil_percent 0.0f; /* 读取所有传感器 */ DHT11_ReadData(temperature, humidity); light_lux BH1750_ReadLux(hi2c1); co2_ppm CO2_ReadPPM(huart2); uint16_t adc_raw Soil_ReadADC(hadc1); soil_percent Soil_GetMoisturePercent(adc_raw); /* 显示与传输 */ OLED_ShowSensorData(temperature, humidity, light_lux, co2_ppm, soil_percent); Bluetooth_SendSensorData(huart1, temperature, humidity, co2_ppm, soil_percent); /* 简单报警逻辑 */ if (co2_ppm 1200 || soil_percent 30) { HAL_GPIO_WritePin(BUZZER_GPIO_Port, BUZZER_Pin, GPIO_PIN_SET); HAL_Delay(300); HAL_GPIO_WritePin(BUZZER_GPIO_Port, BUZZER_Pin, GPIO_PIN_RESET); } HAL_Delay(2000); // 每2秒刷新一次 }欢迎咨询

相关文章:

大棚检测系统

视频演示01—项目简介系统功能多参数环境监测:实时采集空气温度、湿度、光照强度、CO₂浓度、土壤湿度。本地显示:通过 0.96 英寸 OLED 屏幕直观显示各项数据。无线传输:通过 HC-04/05 蓝牙模块将数据发送至手机或上位机(支持简单…...

大模型客服落地难?SITS2026已验证的3层降本增效架构,含私有化微调SOP与SLA保障清单

第一章:SITS2026案例:大模型客服系统改造 2026奇点智能技术大会(https://ml-summit.org) SITS2026是某头部金融集团面向全渠道客户构建的智能客服中台项目,原系统基于规则引擎与传统NLU模块,响应准确率不足68%,平均首…...

域名信息怎么查?免费WHOIS查询工具操作全流程

在域名管理、网络安全监测、域名投资及日常互联网使用中,WHOIS查询是一项基础且必要的操作。通过WHOIS查询,可快速获取域名的注册信息、状态、有效期等核心内容,为各类相关操作提供数据支撑。本文将详细介绍免费在线WHOIS查询工具的核心功能、…...

HCIA综合实验报告

一、实验要求1.所有PC均需要通过DHCP获取IP地址-地址池名称和设备VLAN一致,例如PC1-ip pool vlan10,其中只有业务B网络用户需要访问互联网web服务-需要DNS信息。2.交换机配置VLAN需要遵循最小VLAN透传原则3.利用OSPF协议使内外用户互相访问-全网可达(设备…...

Starward:专为米家游戏打造的终极开源启动器完整指南

Starward:专为米家游戏打造的终极开源启动器完整指南 【免费下载链接】Starward Game Launcher for miHoYo - 米家游戏启动器 项目地址: https://gitcode.com/gh_mirrors/st/Starward Starward是一款专为米哈游游戏玩家设计的开源第三方启动器,能…...

ccmusic-database/music_genre在音乐治疗中的应用:基于流派的疗法推荐系统

ccmusic-database/music_genre在音乐治疗中的应用:基于流派的疗法推荐系统 1. 音乐治疗的新机遇 音乐治疗作为一种非药物干预手段,正逐渐成为心理健康领域的重要辅助方式。传统的音乐治疗往往依赖治疗师的经验选择音乐,但这种方式存在一定的…...

创新智能跨平台Steam创意工坊下载解决方案:WorkshopDL高效自动化工具

创新智能跨平台Steam创意工坊下载解决方案:WorkshopDL高效自动化工具 【免费下载链接】WorkshopDL WorkshopDL - The Best Steam Workshop Downloader 项目地址: https://gitcode.com/gh_mirrors/wo/WorkshopDL 当你在Epic Games Store或GOG平台购买了心仪的…...

告别会议录音转文字烦恼!Fun-ASR本地语音识别系统保姆级教程

告别会议录音转文字烦恼!Fun-ASR本地语音识别系统保姆级教程 还在为整理会议录音而头疼吗?每次都要把录音文件上传到云端,等待漫长的处理,还得担心内容隐私泄露。市面上的工具要么准确率堪忧,要么操作复杂&#xff0c…...

具身智能(8):EtherCAT IGH+ROS2扩展:ROS2-Controller

一、ROS2-Controllers 完整集成(工业标准接口) 1. 核心目标 实现 joint_trajectory_controller(轨迹跟踪)、joint_state_broadcaster(状态广播)与 IgH 主站的对接,兼容 ROS2 运动控制生态,支持 MoveIt! 规划器直接下发轨迹。 2. 依赖安装 # 安装 ROS2-Controllers …...

RMBG-2.0惊艳效果实测:复杂边缘分割精度超SOTA,附10组对比图

RMBG-2.0惊艳效果实测:复杂边缘分割精度超SOTA,附10组对比图 1. 这不是又一个“能用就行”的抠图工具 你有没有试过给一张带飘逸发丝的证件照换背景?或者想把电商主图里那个半透明玻璃杯干净利落地抠出来?传统抠图工具要么得花半…...

基于yolo26算法的玉米卷叶心识别 智慧农业玉米病虫害农药丢撒识别 玉米卷心识别 玉米叶心图像识别 农作物识别第10410期

玉米数据集 README一、数据集核心信息表类别 玉米叶心项目详情类别数量及中文名称1类数据总量400 张(图像数据)数据集格式种类YOLO 格式最重要的应用价值1. 为玉米相关计算机视觉研究提供基础图像资源;2. 支持玉米目标检测模型的初期数据探索…...

运维养龙虾--用Excalidraw Skill 手绘各种配图:从安装 Skill 到批量生成配图

本文参考 GitHub Awesome Copilot 的 excalidraw-diagram-generator Skill,结合实战经验,教你如何用 AI 一键生成手绘风格的技术图表。 一、前言:为什么需要 AI 绘图? 作为程序员,我们经常需要绘制技术架构图、流程图…...

别再手动画图了!用MCP+Neo4j,5分钟把你的会议纪要变成知识图谱

别再手动画图了!用MCPNeo4j,5分钟把你的会议纪要变成知识图谱 每次开完会面对满屏零散的会议记录,或是整理读书笔记时被各种人物关系绕晕,你是不是也幻想过能一键把文字变成清晰的思维导图?今天要介绍的这个组合方案&…...

第七章: Linux集群与高可用架构

...

如何彻底解决AutoCAD字体缺失问题:智能字体管理插件的完整指南

如何彻底解决AutoCAD字体缺失问题:智能字体管理插件的完整指南 【免费下载链接】FontCenter AutoCAD自动管理字体插件 项目地址: https://gitcode.com/gh_mirrors/fo/FontCenter 还在为每次打开AutoCAD图纸时弹出的字体缺失警告而烦恼吗?FontCent…...

**SSR渲染实战:从原理到高性能部署的完整流程与代码优化指南**在现

SSR渲染实战:从原理到高性能部署的完整流程与代码优化指南 在现代前端开发中,服务端渲染(SSR) 已成为提升首屏加载速度、SEO友好性和用户体验的核心技术之一。尤其在 Vue 3 Nuxt.js 或 React Next.js 等主流框架下,S…...

传世元神版手游官网:风华经典手游平台正版下载官服认证!

风华经典手游平台是国内知名游戏门户网站官网经典IP端游授权开发1:1复刻手游,用户可通过风华经典手游官网获取游戏及资讯礼包码,官网设置专属游戏客服提供游戏服务!本次为各位新手玩家带来《传世元神版》作为深耕传世类手游领域的…...

Cpp2IL终极指南:轻松解密Unity IL2CPP黑盒的完整教程

Cpp2IL终极指南:轻松解密Unity IL2CPP黑盒的完整教程 【免费下载链接】Cpp2IL Work-in-progress tool to reverse unitys IL2CPP toolchain. 项目地址: https://gitcode.com/gh_mirrors/cp/Cpp2IL 你是否曾经面对Unity编译后的IL2CPP二进制文件感到束手无策&…...

免费教程:用Fish-Speech-1.5制作有声书,亲测好用!

免费教程:用Fish-Speech-1.5制作有声书,亲测好用! 想自己制作有声书却苦于没有专业录音设备?或者觉得人工录制太耗时?今天我要分享一个超级实用的方法——用Fish-Speech-1.5语音合成模型来制作有声书。这个开源模型支…...

Chrome文本替换插件:3步解决网页内容编辑难题

Chrome文本替换插件:3步解决网页内容编辑难题 【免费下载链接】chrome-extensions-searchReplace 项目地址: https://gitcode.com/gh_mirrors/ch/chrome-extensions-searchReplace 你是否曾为网页中的错别字烦恼?是否需要对产品页面进行批量修改…...

网络安全应急响应流程

网络安全应急响应流程:守护数字世界的防火墙 在数字化时代,网络安全事件频发,从数据泄露到勒索软件攻击,企业和组织面临的威胁日益复杂。网络安全应急响应流程(Incident Response, IR)是应对这些威胁的核心…...

万物识别镜像效果展示:实测识别小麦条锈病,准确率超96%

万物识别镜像效果展示:实测识别小麦条锈病,准确率超96% 1. 从田间到屏幕:AI如何一眼看穿小麦病害 清晨的麦田里,农技员小李发现一片叶片上出现了奇怪的黄色斑点。传统做法需要采集样本送回实验室,等待3-5天才能出结果…...

办公自动化必备!MinerU智能文档理解镜像实战:提升文档处理效率10倍

办公自动化必备!MinerU智能文档理解镜像实战:提升文档处理效率10倍 1. 引言:文档处理的效率革命 每天早晨,财务部门的李经理都要面对堆积如山的发票和报表。传统的人工录入方式不仅耗时费力,还容易出错。类似的情况也…...

⚖️Lychee-Rerank快速部署:GitHub Actions自动构建+阿里云ACR镜像托管方案

Lychee-Rerank快速部署:GitHub Actions自动构建阿里云ACR镜像托管方案 你是不是也遇到过这样的烦恼?面对一堆文档,想快速找出和某个问题最相关的那几篇,手动筛选费时费力,用在线API又担心数据隐私。今天,我…...

Alibaba DASD-4B Thinking 复杂问题拆解能力展示:解析计算机组成原理中的核心概念

Alibaba DASD-4B Thinking 复杂问题拆解能力展示:解析计算机组成原理中的核心概念 1. 引言:当AI遇到计算机的“灵魂” 计算机组成原理,这个名字听起来就有点让人望而生畏。它不像学一门编程语言,马上就能写出个“Hello World”来…...

分布式智能解析引擎:抖音视频批量下载的架构设计与性能优化指南

分布式智能解析引擎:抖音视频批量下载的架构设计与性能优化指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallb…...

从AUC到PCOC:广告点击率预估模型校准全流程解析

从AUC到PCOC:广告点击率预估模型校准全流程解析 在数字营销领域,点击率预估模型的准确性直接影响广告投放效果和平台收益。虽然AUC指标长期以来被用作模型性能的黄金标准,但它仅能评估排序能力,无法反映预估值与实际点击概率的匹配…...

SiameseUIE在政务舆情监测中的应用:从长文本中秒级抽取主体、事件、地点、时间

SiameseUIE在政务舆情监测中的应用:从长文本中秒级抽取主体、事件、地点、时间 1. 引言:当海量舆情遇上精准信息抽取 想象一下,你是一位政务舆情分析师,每天要面对成千上万条来自新闻、论坛、社交媒体的信息。领导突然问&#x…...

免费获取中国乡镇边界数据的另类方法:Bigemap隐藏功能揭秘

解锁Bigemap高阶技巧:精准获取乡镇级地理数据的实战指南 对于GIS开发者和数据分析师而言,获取精确到乡镇级别的边界数据往往意味着项目可行性的分水岭。市面上常见的开放数据平台通常只提供到区县级的地理信息,而专业GIS服务商的高精度数据又…...

ncmdumpGUI终极指南:3分钟解锁网易云NCM文件播放限制

ncmdumpGUI终极指南:3分钟解锁网易云NCM文件播放限制 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换,Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 你是否曾为网易云音乐的NCM格式文件而烦恼&am…...