Heater PID closed-loop on PB12 (HEAT_EN) with safety protections

This commit is contained in:
2026-10-10 10:04:48 +08:00
parent 6246a87c3c
commit 30540d884d
8 changed files with 276 additions and 40 deletions
+7 -4
View File
@@ -61,13 +61,16 @@ GUI 曲线解析:匹配 `B5 F0`,取 payload 按 ASCII float 解析;payload
- 后台每 100ms 采样一次(16 次采样修剪均值滤波),M1/M2/上报读同一全局最新值
- 单次测量耗时约 10~20ms,查询响应延迟 < 主循环周期(10ms 级)
## 加热控制(M3/M4,预留)
## 加热控制(M3/M4)
- **当前固件仅维护软件状态**(M3S1/M4S 设定会 ack 并可查询回读),
真实加热硬件驱动尚未接入;GUI 可先行完成全部协议联调
- PB12 = HEAT_EN:高 = 加热开(2N7002K 电平转换 → VBE2412 PMOS → 24V 回路)
- **PID 闭环**:使能后固件按目标温度自动控温;执行器为慢 PWM
(载波 1s、占空比 10% 步进,开关频率恒 1Hz,满足驱动电路 <=10Hz 约束)
- 安全保护:上电默认关闭;NTC 传感器故障(OPEN/SHRT)强制关断;
过温 >=150℃ 滞回保护(降至 145℃ 以下恢复)
- M3 查询的是**使能状态**;当前占空比暂无查询命令(可从温度曲线间接观察)
- 目标温度范围 0~200℃(整数),越界回 `FD`
- 上电默认:加热 OFF,目标 0.0℃
- 后续接入硬件执行体后协议不变
## 通信注意事项