1. 项目概述
永磁同步电机(PMSM)因其高效率、高功率密度等优势,在工业机器人、电动汽车等领域得到广泛应用。传统PMSM控制系统依赖机械式位置传感器(如编码器、旋转变压器)获取转子位置信息,但这些传感器存在成本高、安装空间受限、可靠性差等问题。特别是在恶劣环境下,传感器的故障率显著增加,严重影响系统可靠性。
无位置传感器控制技术通过算法估算转子位置,可有效解决上述问题。目前主流方案包括高频信号注入法和反电动势观测法两大类。高频注入法适用于低速甚至零速工况,但对电机凸极率有要求;反电动势观测法在中高速段表现优异,但在低速段因反电动势信号微弱而失效。如何实现全速域(尤其是零速启动和低速段)的高精度位置估算,是当前研究的关键难点。
本项目基于STM32F407芯片,创新性地提出脉振方波注入与滑模观测器(SMO)相结合的复合控制策略,并引入电压磁链观测器优化中高速性能。通过设计智能切换算法和零速高频注入启动方案,实现了0-30000rpm全速域范围内±0.5°的位置估算精度,零速启动带载能力达1.5N·m。
2. 核心控制策略解析
2.1 脉振方波注入低速控制
脉振方波注入法通过在d轴注入高频方波电压信号(1-2kHz),利用电机凸极特性引起的电感空间分布差异来获取转子位置信息。具体实现步骤如下:
-
信号注入:在转子同步旋转坐标系(d-q轴)的d轴注入幅值为Vm、频率为fhf的方波电压信号:
code复制Vd = Vm * sign(sin(2πfhf t)) Vq = 0 -
响应电流处理:由于凸极效应,注入信号会在q轴产生包含位置信息的响应电流。通过带通滤波器(中心频率fhf)提取高频电流成分后,采用希尔伯特变换解调相位信息。
-
位置解算:解调得到的相位角直接反映转子位置误差,经PI调节器闭环校正后输出最终位置估算值。实验表明,该方法在0-300rpm范围内可实现±3°的估算精度。
关键参数选择:注入频率fhf需避开控制系统带宽(通常取1-2kHz),幅值Vm需在电流谐波限制与信噪比之间折衷(推荐额定电流的10-20%)。
2.2 滑模观测器中高速控制
滑模观测器基于变结构控制理论,通过构建滑模面迫使系统状态轨迹在有限时间内到达并保持在滑模面上,从而准确提取反电动势信息。其设计过程如下:
-
状态方程建立:在静止坐标系(α-β轴)下建立PMSM电流状态方程:
code复制diα/dt = (Vα - Rs*iα - eα)/L diβ/dt = (Vβ - Rs*iβ - eβ)/L其中eα、eβ为反电动势分量。
-
滑模面设计:选择电流误差作为滑模面:
code复制s = [iα_hat - iα; iβ_hat - iβ] = 0其中iα_hat、iβ_hat为观测电流。
-
控制律设计:采用符号函数作为切换控制:
code复制Vα_sw = -K*sign(sα) Vβ_sw = -K*sign(sβ)增益K需满足可达性条件。
-
反电动势提取:通过低通滤波器获取平滑的反电动势估计值,再经反正切运算得到转子位置。
2.3 电压磁链观测器中高速优化
针对传统SMO在高速段(>10000rpm)的参数敏感性问题,引入电压磁链观测器:
-
磁链模型建立:根据电压方程积分得到磁链观测值:
code复制ψα = ∫(Vα - Rs*iα)dt ψβ = ∫(Vβ - Rs*iβ)dt -
积分漂移抑制:采用二阶低通滤波器替代纯积分器,其传递函数为:
code复制H(s) = ωc^2 / (s^2 + 2ξωc s + ωc^2)典型参数:截止频率ωc=2π*500rad/s,阻尼比ξ=0.707。
-
位置解算:通过磁链分量计算转子位置:
code复制θ = atan2(-ψα, ψβ)
3. 关键实现技术
3.1 全速域切换策略
为实现不同速度区间控制方法的平滑过渡,设计滞回切换逻辑:
-
低速→中速切换(脉振方波→SMO):
- 启动条件:ω > 300rpm持续5ms
- 停止条件:ω < 250rpm持续5ms
- 过渡区采用加权融合:
code复制λ从0线性增至1(ω=250→300rpm)θ = λ*θ_SMO + (1-λ)*θ_HFI
-
中速→高速切换(SMO→电压磁链):
- 启动条件:ω > 10000rpm持续10ms
- 停止条件:ω < 9500rpm持续10ms
- 过渡区采用渐入渐出方式
3.2 零速启动方案
针对传统IF启动的电流冲击问题,提出改进方案:
-
初始定位阶段(0-50ms):
- 注入d轴渐变电流:Id从0线性增至1.5A
- 监测q轴电流响应,通过峰值检测确定初始位置
-
加速阶段:
- 采用直线型升速曲线,加速度500rpm/s
- 同时运行高频注入算法提供位置反馈
-
切换准备阶段(ω=250rpm):
- 预启动SMO观测器
- 双观测器结果加权融合
3.3 STM32F4实现要点
-
定时器配置:
- TIM1用于PWM生成(中心对齐模式,死区时间500ns)
- TIM2用于速度计算(捕获模式)
- TIM3用于高频信号注入(输出比较模式)
-
ADC采样同步:
- 注入PWM中点采样,触发ADC同步转换
- 采用双ADC交替采样提高数据吞吐率
-
算法加速技巧:
- 使用CMSIS-DSP库加速矩阵运算
- 关键函数(如Park变换)采用汇编优化
- 将SMO的sign()函数替换为饱和函数减少抖振
4. 实验验证与分析
4.1 测试平台搭建
实验采用1.5kW表贴式PMSM,主要参数:
- 额定转速:3000rpm
- 极对数:4
- 定子电阻:0.5Ω
- d/q轴电感:1.2/1.5mH
- 永磁体磁链:0.1Wb
控制系统硬件核心为STM32F407ZGT6,主要外设:
- 三相逆变器(IPM模块:FSBB30CH60)
- 电流传感器(ACS712,带宽50kHz)
- 编码器(用作基准对比)
4.2 性能测试结果
-
位置估算精度:
- 低速段(ω<300rpm):误差≤±3°
- 中速段(300-10000rpm):误差≤±0.8°
- 高速段(>10000rpm):误差≤±0.5°
-
动态响应测试:
- 零速启动到3000rpm:时间180ms,超调<1%
- 负载突变(0→1N·m):转速恢复时间15ms
-
切换过程分析:
- 低速↔中速切换:电流波动4.2%,持续时间8ms
- 中速↔高速切换:电流波动3.5%,持续时间6ms
5. 工程经验总结
-
参数整定技巧:
- 高频注入幅值:通过扫频测试确定最优值(本案例取12V)
- SMO增益K:先用仿真确定理论值,再实测微调
- 滤波器参数:根据实际噪声特性调整
-
常见问题排查:
-
问题:低速位置估算抖动大
→ 检查高频信号注入是否被PWM谐波干扰
→ 调整带通滤波器中心频率 -
问题:中高速切换时失步
→ 检查速度检测环路延时
→ 适当增大切换滞回带宽
-
-
优化方向:
- 采用MTPA控制提升效率
- 增加参数在线辨识功能
- 移植到STM32H7系列提升运算能力
本方案已成功应用于工业机器人关节驱动系统,连续运行测试表明位置估算稳定性满足ISO 9283标准要求。实际部署时需注意电机参数的一致性校准,建议在生产线上逐个电机进行参数自学习。