1. 项目背景与核心价值
去年夏天帮朋友维修一台老式洗衣机时,发现传统感应电机+皮带传动的结构存在效率低、噪音大、维护频繁等问题。这促使我开始研究基于无感FOC算法的BLDC电机控制方案,而中颍SH32F2601这颗国产MCU以其出色的性价比和丰富的外设资源进入了我的视野。
无感BLDC控制在家电领域正逐步替代传统方案,其核心优势在于:
- 取消物理霍尔传感器,降低BOM成本和故障率
- 采用磁场定向控制(FOC)算法,实现更平滑的转矩输出
- 电机效率提升15-20%,契合家电能效新标准
- 静音效果显著,实测运行噪音可控制在45dB以下
SH32F2601作为专为电机控制设计的Cortex-M0芯片,具备:
- 64MHz主频配合硬件除法器
- 3组互补PWM输出(支持死区控制)
- 12位1Msps ADC采样
- 内置运放比较器,适合无感启动检测
2. 硬件设计关键点
2.1 功率驱动电路设计
采用典型的三相全桥拓扑结构时,有几个细节需要特别注意:
-
MOSFET选型:洗衣机电机通常功率在300-500W范围,我们选用STK5C4U3326-E(32mΩ/600V)IPM模块,其内置:
- 三相桥臂驱动
- 自举二极管
- 过流保护电路
注意:自举电容建议使用1μF/50V低ESR陶瓷电容,布局时尽量靠近IPM引脚
-
电流采样方案:
- 下桥臂采样电阻选择0.01Ω/3W的合金电阻
- 采用差分放大电路(OPA参数GBW需>10MHz)
- ADC采样窗口应避开PWM开关瞬间(建议在PWM周期中点采样)
2.2 反电动势检测电路
无感控制的核心是准确检测反电动势过零点,我们采用分压电阻+比较器的方案:
c复制// 比较器阈值设置
COMP->THRESHOLD = (uint16_t)(Vbus * 0.577 / 3.3 * 4096); // 30度电角度偏移补偿
硬件上需要注意:
- 分压电阻总阻值建议在200-300kΩ范围
- 比较器输入端添加100pF电容滤波
- PCB布局时确保三相检测走线等长
3. 软件算法实现
3.1 无感启动策略
洗衣机负载特性特殊,需要分阶段启动:
-
预定位阶段(100ms):
c复制PWM_SetDuty(U相 70%, V相 0%, W相 0%); // 强制转子定位 -
开环加速阶段:
- 初始频率从5Hz开始,每100ms增加1Hz
- 电压/频率比保持恒定(V/f=7.2)
-
切换闭环条件:
c复制if(连续3次检测到有效过零点 && 转速>15Hz){ bClosedLoop = true; }
3.2 FOC控制实现
采用基于滑模观测器的无感FOC算法:
- 电流环控制周期50μs(PWM频率20kHz)
- 速度环控制周期1ms
- 关键参数整定:
c复制// PI参数经验值 CurrentLoop_Kp = 0.15; CurrentLoop_Ki = 0.008; SpeedLoop_Kp = 0.3; SpeedLoop_Ki = 0.02;
实测性能指标:
- 转速控制精度:±1 RPM(800转工况)
- 转矩响应时间:<100ms
- 最低稳定运行转速:30 RPM(带5kg负载)
4. 洗衣机特有功能实现
4.1 负载识别算法
通过电流纹波分析实现衣物重量检测:
c复制float GetLoadWeight(void){
float ripple = 0;
for(int i=0; i<100; i++){
ripple += fabs(Iq_measured - Iq_average);
}
return ripple * 0.12f; // 经验系数
}
4.2 不平衡检测
利用q轴电流波动判断脱水时的不平衡状态:
- 计算0.5秒内的电流方差
- 超过阈值时触发自动平衡程序
- 通过正反转交替运行分散衣物
5. 实测问题与解决方案
5.1 启动失败问题排查
现象:偶尔出现启动时电机抖动后停转
解决方法:
- 增加预定位时间至150ms
- 调整开环初始电压至额定电压的30%
- 添加启动电流软启动限制:
c复制I_limit = min(2.0, 0.5 + t/1000.0); // t为启动时间(ms)
5.2 高速运行噪音优化
发现PWM开关频率在18kHz时出现可闻噪音:
- 将PWM频率提升至22kHz(超出人耳范围)
- 优化死区时间从1μs调整为0.7μs
- 添加随机载波调制(RCM)算法
6. 生产测试要点
批量生产时需要特别关注:
- 电机参数自动识别:
c复制void AutoTune(void){ // 注入直流测R // 脉冲响应测L // 空载运行测Ke } - 老化测试项目:
- 连续100次启停测试
- 满载72小时耐久测试
- 电压波动测试(180-250V)
经过三个月实际验证,该方案相比传统方案:
- 整机效率提升18%(从0.78到0.92)
- 噪音降低12dB(65dB→53dB)
- 成本降低23元/台(省去霍尔传感器+简化结构)