1. 项目概述:基于STM32的黑板粉尘清除装置
作为一名在嵌入式领域摸爬滚打多年的工程师,我深知传统黑板清洁的痛点。粉尘飞扬不仅影响师生健康,还会缩短电子设备寿命。这个项目采用STM32F103C8T6作为主控,通过机械结构创新和智能控制算法,实现了黑板粉尘的自动化清理。相比市面常见的手动擦板器,我们的装置在粉尘收集率上提升了60%,实测PM2.5浓度可控制在50μg/m³以下。
整套系统最核心的三大模块是:
- 粉尘感知模块(GP2Y1010AU0F光学传感器)
- 运动控制模块(42步进电机+TB6600驱动器)
- 除尘模块(无刷风机+HEPA滤网)
2. 硬件系统设计详解
2.1 主控选型与电路设计
选择STM32F103C8T6主要基于三点考量:
- 72MHz主频足够处理传感器数据并控制多路电机
- 内置3个USART方便同时连接传感器、电机驱动和无线模块
- 价格控制在20元以内,适合批量生产
关键电路设计要点:
c复制// 电机驱动电路保护设计
#define MOTOR_ENABLE() GPIO_SetBits(GPIOB, GPIO_Pin_12)
#define MOTOR_DISABLE() GPIO_ResetBits(GPIOB, GPIO_Pin_12)
// 粉尘传感器供电需单独控制
void DustSensor_Power(uint8_t state) {
if(state) {
GPIO_SetBits(GPIOC, GPIO_Pin_13);
delay_ms(280); // 等待传感器预热
} else {
GPIO_ResetBits(GPIOC, GPIO_Pin_13);
}
}
2.2 粉尘采集系统设计
采用三级过滤方案:
- 初效过滤网:拦截大颗粒粉笔灰(可水洗重复使用)
- HEPA滤芯:过滤0.3μm以上颗粒(H13级)
- 活性炭层:吸附有机挥发物
风道设计经过CFD流体仿真优化,在8000转/min转速下,实测风量达到2.1m³/min,噪音控制在55dB以内。
3. 软件控制逻辑实现
3.1 运动控制算法
采用S型加减速算法避免电机失步:
c复制typedef struct {
uint32_t totalSteps;
uint32_t accelSteps;
uint32_t decelSteps;
uint16_t minDelay;
uint16_t maxDelay;
} MotorProfile;
void Stepper_Run(MotorProfile *profile) {
// 加速度阶段计算
for(uint32_t i=1; i<=profile->accelSteps; i++) {
float factor = (sin((i*M_PI)/(2*profile->accelSteps)));
uint16_t delay = profile->maxDelay - (profile->maxDelay-profile->minDelay)*factor;
STEP_Pulse();
delay_us(delay);
}
// 匀速阶段...
}
3.2 粉尘浓度自适应控制
通过PID算法动态调节风机转速:
c复制float PID_Control(float setpoint, float actual) {
static float integral = 0;
static float last_error = 0;
float error = setpoint - actual;
integral += error * DT;
float derivative = (error - last_error) / DT;
last_error = error;
return KP*error + KI*integral + KD*derivative;
}
4. 生产测试与优化
4.1 关键参数实测数据
| 测试项目 | 标准值 | 实测值 | 单位 |
|---|---|---|---|
| 除尘效率 | ≥90% | 93.5% | % |
| 单次充电续航 | ≥60 | 78 | min |
| 工作噪音 | ≤60 | 54.3 | dB |
| 粉尘感应精度 | ±10% | ±7.2% | - |
4.2 常见故障排查
-
电机异响问题:
- 检查TB6600驱动器的细分设置(建议1/8细分)
- 确保供电电压稳定(24V±5%)
-
粉尘传感器读数异常:
- 定期清洁传感器光学窗口(每月至少1次)
- 检查采样电阻(建议150Ω±1%)
-
滤网更换提示:
- 当风机电流上升15%时需要更换HEPA滤网
- 通过STM32的ADC4通道监测风机工作电流
5. 项目进阶改进方向
-
无线监控功能扩展:
- 添加ESP-01S WiFi模块实现远程状态监控
- 通过MQTT协议上传粉尘数据到云平台
-
能耗优化方案:
- 改用STM32L系列低功耗MCU
- 增加人体感应自动唤醒功能(HC-SR501传感器)
-
结构轻量化设计:
- 3D打印碳纤维增强框架
- 优化齿轮箱传动比(当前3:1可调整为4:1)
这个项目最让我惊喜的是HEPA滤网的使用寿命——在每天使用8小时的场景下,实测能坚持3个月才需要更换。建议学校使用时,可以在暑假期间统一进行滤网更换和维护。
