DIY 专业级 SMD 返修站:Arduino PID 控温热风枪控制器
元器件与材料
| Arduino Pro Mini 5V/16MHz | ×1 |
| 16x2 LCD + I2C 模块 | ×1 |
| 旋转编码器带按键 | ×1 |
| 858D 兼容热风枪手柄 (含 K 型热电偶、700W 230V 加热芯、24V 风扇) | ×1 |
| 功率电路:BTA12-600B 三极管、MOC3052 光耦、4N25 零交叉检测、IRFZ44N MOSFET (风扇) | 各×1 |
| 运放 MCP602 (热电偶放大) | ×1 |
| 整流桥、快恢复二极管 FR107、各类电阻电容、多圈电位器 (校准增益) | 若干 |
| 蜂鸣器、扩展板/PCB | ×1 |
核心原理
三大模块
- 人机界面:I2C LCD 显示设定/实时温度、风速、输出功率%、手柄状态;旋钮编码器调节参数、切换菜单
- 传感器调理:K 型热电偶微伏信号经 MCP602 运放放大 (增益由 500k 多圈电位调节) 至 0-5V 供 ADC 采样;干簧管检测手柄是否放回支架
- 功率控制:
- 风扇:IRFZ44N MOSFET 高频 PWM (31.25kHz) 调速
- 加热芯:MOC3052 光耦驱动 BTA12 三极管,过零控制 — 由 4N25 检测市电过零,每半周决定是否导通,实现功率级 PID 控制,无高频干扰
PID 温控算法
采用增量式 PID:Un = Un-1 + Kp·(e_n-1 - e_n) + Ki·e_n + Kd·(e_n-2 + e_n - 2e_n-1)。系数经调整为 Kp=50, Ki=16, Kd=50 (分母 2^11)。温度接近设定值时自动切换迭代模式,抑制超调。
操作流程
- 上电待机:显示设定温度、OFF、实时温度
- 旋钮调节设定温度/风速;短按切换调节项
- 提起手柄 → 自动加热,到达设定温度蜂鸣提示“Ready”
- 放回手柄 → 停止加热,风扇继续吹冷至 <50°C 蜂鸣显示“Cold”
- 待机长按编码器 → 进入设置菜单:校准、调谐、保存、取消、恢复默认
校准与调谐
- 调谐:设置菜单选 Tune,手动调节输出功率使实测温度达 400°C,调整运放增益电位器使 ADC 读值约 900 (留有余量)
- 校准:选 Calibrate,依次在 200/300/400°C 点用外部温度计实测,旋钮输入实测值保存。三点线性插值修正温度换算曲线
- 保存配置到 EEPROM 掉电不丢失
代码架构亮点
- 面向对象封装:
CONFIG(EEPROM 存储)、HOTGUN_CFG(温度换算/校准)、PID、HOTGUN(主控逻辑)、FastPWM_D9(风扇高频 PWM)、DSPL(LCD 显示)、BUZZER、HISTORY/EMP_AVERAGE(滤波) - EEPROM 循环写入策略:记录带 ID 和 CRC,自动寻找最新有效记录,延长 Flash 寿命
- 过零中断同步:Pin 2 (INT0) 接 4N25,主循环轮询计数器实现半周波控制
- 安全设计:风扇非隔离供电,**刷写固件时严禁接入市电**,否则会损坏电脑 USB 口
资源链接
- GitHub 固件源码:ManojBR105/ARDUINO-SMD-REWORK-STATION
- EasyEDA 原理图/PCB:在线查看/下单
- 视频演示:见项目页面
制造工艺
- 液晶显示器(LCD):技术、制造与未来展望
- DIY热成像仪:从课堂创意到全球产品的进化史
- 树莓派 2 搭建户外气象站:接入 ADS‑WS1 串口气象站
- 树莓派自制气象站:每日邮件推送温湿雨数据
- DIY 鬼屋肖像画:树莓派跳吓项目(更新版)
- 高级气象站 v2.0:BME280 实时监测温度/气压/湿度/海拔 (Windows 10 IoT Core)
- DIY 低成本 UVC 紫外线消毒盒:医疗与个人物品快速杀菌方案
- 用 Arduino Nano 和 Nokia 5110 LCD 自制 20kHz 示波器:简易 DIY 指南
- Arduino UNO 驱动 16x2 LCD 实现动画与小游戏
- DIY Arduino Nano 示波器:10 Hz–50 kHz / 128×64 LCD
- Arduino Nano 多传感器气象站:BMP280 + DHT11 + GUVA-S12SD + DS3231 + OLED
- 自制 AI LCD 陪伴机器人:你的互动小伙伴