📷 传送带实时画面
📊 分拣统计
| # | 时间 | 识别结果 | 置信度 | 动作 |
|---|
| # | 时间 | 识别结果 | 置信度 | 动作 |
|---|
本系统面向校园食堂果皮菜叶混合垃圾,实现"自动分拣 → 含量统计 → 高效降解方案生成"闭环:传送带运输垃圾,红外传感器检测到位,浏览器摄像头采集图像并用 HSV 颜色模型识别菜叶/果皮,舵机执行分拣;网页按分拣含量与实时温湿度(DHT 传感器)自动生成针对性高效降解处方(碳氮比调整、EM 菌用量、温湿度调控),为降解研究提供数据支撑。全部控制逻辑运行在浏览器(Web Serial API),服务器仅做静态页面分发,零后端进程。
目标:检测垃圾到达拍照点,触发后续流程。
评估标准:
· 有效检测距离 2~10 cm(模块电位器可调);遮挡触发 → 串口上报延时 < 100 ms;防抖周期 2 s(固件)/ 3 s(网页)双重保护。
检测方法:反射式红外模块(4 脚:AO/DO/VCC/GND),数字输出 DO 接 STM32 PB5(上拉输入);垃圾遮挡 → DO 拉低 → 固件立即发送 DETECT\r\n。AO 悬空不用。
目标:判断垃圾类别:菜叶 / 果皮 / 其他。
评估标准:
· 分辨率 640×480;DETECT 后延时 0.3 s 拍照(PHOTO_DELAY 页面可调);单帧识别耗时 < 50 ms(JS 逐像素)。
检测方法:canvas 逐像素 RGB→HSV 转换(H∈[0,180],S/V∈[0,255],对齐 OpenCV):
· 菜叶:绿色 H∈[30,90]、S≥40、V≥40,占比 > 6% → leaf
· 果皮:黄色 H∈[15,30)、S≥40、V≥40,占比 > 15% → peel
· 其余 → other(放行)。页面提供「测试识别」按钮与实时绿色占比显示,便于现场校准。
目标:菜叶类垃圾扫入收集桶,其余放行。
评估标准:
· 动作序列:0° 静止 → 扫出 90° → 保持 0.8 s → 归位 0°;指令 SERVO1 → 回复 OK SERVO1。
检测方法:SG90 舵机,TIM3_CH1(PA6)50 Hz PWM,脉冲 500~2500 µs 对应 0~180°。识别到菜叶后延时 SERVO_DELAY(默认 0.8 s,页面可调)发送指令,配合传送带速度对准垃圾。舵机2(PA7)驱动保留,单舵机模式下不使用。
目标:实时监测降解环境温湿度,为降解处方提供环境数据。
评估标准:
· 采样周期 5 s;温度分辨率 0.1 ℃;DHT11/DHT22 自动识别(小数恒 0 判为 DHT11);读取失败上报 DHT-ERR n(1=无应答 4=校验错)。
检测方法:单总线接 PB8(3 脚模块:+ →3.3V、- →GND、OUT→PB8)。固件每 5 s 上报 T:27.2 H:78.8\r\n;读取期间屏蔽中断保证时序(delay_us(1) 步进等待,对齐验证过的 DHT11 驱动写法)。
目标:按本轮分拣含量与实时温湿度,生成针对性高效降解处方。
评估标准:
· 含量估算:菜叶 5 g/片、果皮 10 g/个;EM 菌 20 ml/kg;好氧发酵最佳区:温度 50~65 ℃、湿度 55~65%;黄金配比 菜叶:果皮 ≈ 2:1。
检测方法:综合处方规则(量 × 温湿度分支判定):
· 投料 <100 g=少量,100~500 g=中量,≥500 g=大量(大量 → 分两批+每天翻堆 2 次)
· 温度 <15 ℃ → 建议加热;>65 ℃ → 翻堆散热;50~65 ℃ → 最佳发酵区
· 湿度 <50% → 喷水;>70% → 加干料+通风;55~65% → 适宜
· 菜叶占比 >75% → 补干碳源(菜叶重 30%);果皮占比 ≥45% → 切碎至 2 cm 以下、EM 菌加倍(柑橘果油抑菌)。「结束运行」按钮生成本轮分拣总结报告。
| 阶段 | 目标 | 主要指标 | 阈值 / 参数 | 输出 |
|---|---|---|---|---|
| 1 红外检测 | 检测到位 | 距离 / 防抖 | 2~10 cm / 2 s+3 s 双重 | DETECT |
| 2 图像识别 | 类别判断 | HSV 颜色占比 | 绿>6% → 菜叶;黄>15% → 果皮 | leaf / peel / other |
| 3 舵机分拣 | 菜叶入桶 | 扫角 / 保持 / 延时 | 90° / 0.8 s / 0.8 s 可调 | SERVO1 → OK SERVO1 |
| 4 温湿度 | 环境监测 | 采样周期 / 分辨率 | 5 s / 0.1 ℃ | T:xx.x H:xx.x |
| 5 降解处方 | 方案生成 | 含量 / 菌量 / 环境区 | 5g/片·10g/个 / 20ml/kg / 50~65℃·55~65% | 综合处方 + 配方明细 |
输入:传送带上的果皮菜叶混合垃圾 ↓ [红外传感器 PB5] ── 遮挡触发, 2s 防抖 ↓ DETECT\r\n [浏览器拍照] ── 延时 0.3s, 640×480, getUserMedia ↓ [HSV 识别] ── 绿>6%→菜叶 | 黄>15%→果皮 | 其余→放行 ├─ 菜叶 ── 延时 0.8s ──→ [SG90 舵机 PA6] 扫90°×0.8s ──→ 收集桶 └─ 其他 ──────────────────────────────→ 放行 ↓ 计数 (菜叶/果皮/其他 分类统计) [含量估算] 菜叶5g/片 × N + 果皮10g/个 × M + [DHT 温湿度 PB8] ── 每 5s 上报 ↓ [综合降解处方] 配比/碳源/EM菌量/水分/温控/预计天数 ↓ 输出:本轮分拣总结 + 高效降解方案 链路:传感器 ──→ STM32F103C8T6 ── CH340(USART1 重映射 PB6/PB7) ──→ 电脑浏览器 (Web Serial API, 115200 8N1) 页面:https://cdqtech.online/garbage-sorter/ (nginx 静态托管, 零端口占用)
注:红外传感器、CH340 串口模块、USB 摄像头、DHT 温湿度模块照片待补拍。
| 模块 | 型号 | 作用 | 接线 |
|---|---|---|---|
| 主控板 | STM32F103C8T6 (Blue Pill) | 传感器采集、舵机 PWM、串口通信 | — |
| 红外传感器 | 反射式 4 脚 (AO/DO/VCC/GND) | 垃圾到位检测 | DO→PB5,AO 悬空 |
| 舵机 | SG90 | 菜叶分拣扫臂 | 信号→PA6,红→5V,棕→GND |
| 温湿度 | DHT11 / DHT22(3 脚 + - OUT) | 降解环境监测 | OUT→PB8,+→3.3V,-→GND |
| USB 转串口 | CH340G | 电脑通信(115200 8N1) | TXD→PB7,RXD→PB6(USART1 重映射) |
| 摄像头 | USB 免驱(640×480) | 图像采集与识别 | 电脑 USB(不走 STM32) |
| 传送带 | 成品电动传送带 | 垃圾运输(自带电机电源) | 独立供电,STM32 不控制 |