单电阻采样
基于单电阻采样的相电流重构算法 keil完整工程。 单电阻采样 f103的单电阻,完整工程,带文档,带硬件资料。 f3平台的单电阻完整工程,代码详细注释。 还有微芯的单电阻smo代码加文档 具体如截图请看下
单电阻采样FOC(磁场定向控制)系统是永磁同步电机(PMSM)驱动领域的低成本高效解决方案,其核心在于通过母线串联单个采样电阻实现三相电流重构,结合SVPWM(空间矢量脉宽调制)、电机参数辨识、无感位置估计(SVC)等算法,在简化硬件结构的同时保证控制精度。本文基于《单电阻FOC教程.pdf》《500e算法解析-终极版.pdf》《6脉冲定位主要照这篇文章做.pdf》三份核心资料,从硬件适配逻辑、核心算法实现、调试优化三个维度,深入解析系统技术细节与工程落地要点。
单电阻采样的核心挑战在于在PWM周期内精准捕捉有效电流信号,需通过移相策略、采样点优化、电流重构三个关键步骤实现,三者共同构成单电阻方案的技术基石。
2.1 移相策略:解决采样窗口不足问题
单电阻采样依赖PWM周期内开关管的特定导通状态,只有当采样电阻所在回路形成有效电流通路时,才能采集到对应相电流。需先定义三相占空比参数:
- hig/mid/low:三相PWM占空比的最大值、中间值、最小值(hig≥mid≥low),代表从PWM周期起始到下桥臂动作的时间。
- delta1=mid-low:中间相与最小相的占空比差值,对应第一个潜在采样窗口。
- delta2=hig-mid:最大相与中间相的占空比差值,对应第二个潜在采样窗口。
- delta=hig-low:最大相与最小相的总差值,需满足采样时间总和要求。
2.1.1 移相场景分类(基于表格1.1-1)
根据delta1、delta2与最小采样时间Tmin的关系,系统需动态调整PWM占空比的相位,确保两个采样窗口均满足采样条件(≥Tmin),具体场景如下:
2.1.2 移相实现关键约束
- 占空比限制:上桥臂占空比不可开满(建议≤99%),若某相上桥臂100%导通,对应下桥臂将持续关闭,导致该相电流无法采样。
- 补偿边界:移相后需保证PWM后半周期比较值不超过定时器周期(PRD),避免PWM模块异常。
2.2 电流重构:从单电阻信号到三相电流
电流重构的核心是根据电压空间矢量所在扇区,建立采样电阻电流与三相电流的对应关系。系统将电压空间矢量划分为6个扇区(0-5扇区),每个扇区对应不同的开关管导通组合,需通过两次采样实现三相电流解算。
2.2.1 扇区特征与电流对应关系(基于表格1.2-1)
通过分析各扇区开关管动作后的电流路径(如图1.2-3、1.2-5所示),可得到不同扇区的采样电流与三相电流的映射关系,这是电流重构的核心依据:
2.2.2 重构关键原理
以扇区0为例(图1.2-3):
- 矢量7阶段(三相上桥臂导通):电机绕组短路,无电流流经采样电阻,无法采样。
- 矢量6阶段(C相下桥臂导通):电流经C相VT2流入地,采样电阻电流为-Ic(C相电流为负,采样信号为正)。
- 矢量2阶段(B相下桥臂导通):电流经B相VT6流入地,采样电阻电流为Ia(B、C两相电流之和,根据KCL定律等于-A相电流)。
通过两次采样的-Ic和Ia,结合KCL定律(Ia+Ib+Ic=0),即可解算出Ib。
2.3 采样点确定:避开开关暂态干扰
采样点的精准定位直接决定电流采样精度,需综合考虑死区延迟、电流稳定时间、ADC采样时间三个关键因素,避免开关管切换时的电压尖峰和电流振荡影响。
2.3.1 采样延迟计算
- 死区延迟(t_d):开关管上桥臂关闭后,下桥臂需延迟导通(典型1-2us),防止桥臂直通。第一相采样需等待死区结束,第二相采样因电流可通过反并联二极管续流,无需考虑死区。
- 电流稳定时间(t_stab):开关管导通后,电流需2us左右达到稳定(如图1.3-4、1.3-5所示),避免电流上升/下降过程中的瞬时值影响。
- ADC采样时间:需4个ADC时钟周期(PWM模块时钟84MHz时,2.5us对应210个计数单位,实际工程取3us冗余)。
2.3.2 最终采样点设置
- 第一相采样延迟 = 死区时间(1us)+ 电流稳定时间(2us)= 3us。
- 第二相采样延迟 = 电流稳定时间(2us)。
- 触发方式:通过TIM1_CH4比较匹配触发ADC采样,比较值根据延迟时间动态调整(64MHz PWM时钟下,1us对应64个计数单位)。
电机参数辨识是FOC系统自适应控制的基础,无感控制则通过算法替代位置传感器,两者共同构成系统的“感知能力”。《500e算法解析》详细阐述了电感、电阻、磁链、反电势的辨识方法,以及基于滑模观测器(SVC)的无感估计技术。
3.1 电机参数辨识:获取电机核心特性
参数辨识的目标是精准获取Ld/Lq(dq轴电感)、Rs(定子电阻)、φr(永磁磁链) ,为电流环、速度环参数设计和无感观测提供依据。
3.1.1 电感辨识(1.1节)
电感辨识利用“磁路饱和特性”,通过将转子定位到特定角度(0°和90°),施加电压脉冲并采样电流变化率,计算线电感Lbc,进而推导dq轴电感。
3.1.1.1 辨识流程(基于图1.1-2状态机)
- 转子定位:
- 0°定位:固定电压矢量角度为0°,通过类积分控制器调节电压幅值,将电流稳定在0.5倍额定电流(避免磁路深度饱和)。
- 90°定位:重复上述过程,电压矢量角度改为90°。 - 线电感计算:
- 施加特定电压脉冲(如V+W-),采样脉冲首尾两端电流(ADC中断触发采样模式7),根据伏秒平衡原理计算Lbc:
[
L{bc} = frac{U{dc} cdot T_{cnt}}{Delta I cdot 10^6}
]
其中,Udc为母线电压(V),Tcnt为脉冲导通时间(us),ΔI为电流增量(A)。 - dq轴电感推导:
- 0°位置:Lbc = 2Lq(磁路处于q轴,电感较小)。
- 90°位置:Lbc = 2Ld(磁路处于d轴,电感较大)。
- 逻辑修正:确保Lq>Ld(符合凸极电机特性,避免算法异常)。
3.1.2 电阻辨识(1.2节)
电阻辨识基于“欧姆定律”,通过闭环控制将定子电流稳定在预设值,采样定子电压和电流,计算定子电阻Rs。
3.1.2.1 辨识关键步骤
- 电流闭环控制:给定Iset=0.5倍额定电流,通过类积分控制器调节电压幅值,使电流稳定在预设区间。
- 数据采样:采集512组母线电压(Udc)和U相电流(Ia),求平均值降低误差。
- 电阻计算:
[
Rs = frac{Delta U}{Delta I}
]
其中,ΔU为两次不同占空比下的电压差值,ΔI为对应电流差值,需注意将线电阻除以2得到相电阻。
3.1.3 磁链与反电势辨识(1.3-1.4节)
磁链(φr)和反电势(E)辨识基于“IF控制模式”,通过拖转电机至稳定转速,采集不同id下的uq值,利用dq轴电压方程推导。
3.1.3.1 核心公式
稳态下忽略电阻压降和电感压降(iq=0),dq轴电压方程简化为:
[
uq = omegae (Ld id + phi_r)
]
通过采集两组(id1, uq1)和(id2, uq2)数据,联立方程得:
[
omegae phir = frac{u{q1} i{d2} - u{q2} i{d1}}{i{d2} - i{d1}}
]
进一步推导永磁磁链:
[
phir = frac{omegae phir}{omegae} = frac{u{q1} i{d2} - u{q2} i{d1}}{omegae (i{d2} - i_{d1})}
]
其中,ω_e为电角速度(rad/s),由速度估计模块提供。
3.2 滑模观测器(SVC)无感控制(2-3章)
SVC无感控制通过构建电机电流模型,对比估计电流与实际采样电流的偏差,实时修正速度和位置估计值,核心包括电流估计、速度估计、角度积分三个环节。
3.2.1 电流估计:基于dq轴电机模型
根据PMSMdq轴电压方程,推导电流增量模型,实现电流估计:
[
单电阻采样 基于单电阻采样的相电流重构算法 keil完整工程。 单电阻采样 f103的单电阻,完整工程,带文档,带硬件资料。 f3平台的单电阻完整工程,代码详细注释。 还有微芯的单电阻smo代码加文档 具体如截图请看下
begin{cases}
did = frac{Ts}{Ld} left( ud - Rs id + omegae Lq i_q ight) \
diq = frac{Ts}{Lq} left( uq - Rs iq - omegae (Ld id + phir) ight)
end{cases}
]
- 关键系数预计算:提前计算Ts/Ld、Rs*Ts/Ld等系数(如pmcoefd1、pmcoefq2),降低实时计算量。
- 数据格式处理:采用Q格式定点运算(如Q12、Q16),避免浮点运算精度损失和效率问题。
3.2.2 速度估计:从反电势到角速度
速度估计基于“反电势与角速度的线性关系”,通过积分控制器估计反电势,进而计算电角速度:
- 反电势估计:
[
emf{est} = emf{estlast} + ki cdot (iq - iq^{est}) cdot Ts
]
其中,k
i为积分增益,需根据电机参数动态调整(如k_i = 3Rs/(nTs))。 - 角速度计算:
[
omegae = frac{emf{est}}{phir}
]
需对ω
e进行低通滤波,避免高频噪声影响。
3.2.3 角度积分:从角速度到转子位置
电角度由角速度积分得到,需注意角度范围约束(0-360°):
[
heta{est} = heta{estlast} + omegae cdot T_s
]
- 格式处理:角度变量采用Q32格式存储(以2π为基值),右移16位后作为d轴位置参考(gPhase.IMPhase)。
- 溢出处理:当θest超过360°或低于0°时,进行模运算修正(如θest = θ_est - 360°)。
3.3 电流环与速度环控制(4.2-4.3节)
双闭环控制是FOC系统的“执行核心”,电流环负责快速跟踪电流指令,速度环负责稳定转速输出,两者均采用PI控制器,参数设计基于电机辨识结果。
3.3.1 电流环设计(4.2节)
电流环控制周期与PWM周期一致(典型16kHz),采用并联式PI控制器,参数计算公式:
[
kp = frac{3L}{nTs}, quad ki = frac{3Rs}{nT_s}
]
- 参数意义:L为电感(H),Rs为电阻(Ω),n为控制系数(默认8),Ts为采样周期(s)。
- 输出约束:PI控制器输出Ud/Uq需限制在母线电压允许范围内(如±Udc/√3),避免过调制。
3.3.2 速度环设计(4.3节)
速度环控制周期为2ms,输入为速度给定与估计值的偏差,输出为q轴电流参考(Iq_ref):
[
Iq{ref} = k{pspd} cdot (omega{ref} - omega{est}) + k{ispd} cdot int (omega{ref} - omega_{est}) dt
]
- 电流限制:Iq_ref需限制在电机额定电流范围内(如±In),防止过流。
- 模式切换:支持速度模式(输出Iqref)和转矩模式(直接给定Iqref)。
初始转子位置估计是电机启动的关键,若位置估计错误,可能导致启动反转或启动失败。《6脉冲定位》提出一种基于“电压脉冲注入+模糊逻辑处理”的定位方法,无需位置传感器,适用于BLDCM和PMSM。
4.1 定位原理:利用磁路饱和特性
电机定子电感随转子位置变化:当定子电流与永磁磁动势同向时,磁路饱和,电感减小;反向时,磁路去饱和,电感增大。通过施加正负电压脉冲,采样电流峰值差值,即可判断转子位置。
4.2 定位流程:脉冲注入与数据处理
4.2.1 基本脉冲序列(表I)
对三相绕组依次施加正负电压脉冲(如VA+、VA-、VB+、VB-、VC+、VC-),每个脉冲导通时间T+(40-200us,根据电机电感调整),采样脉冲结束时的电流峰值(iA+、iA-等),计算电流差值Δih = ih+ - i_h-(h=A/B/C)。
4.2.2 模糊逻辑优化(4.4节)
由于电流测量存在噪声和偏移,直接通过Δi_h判断位置误差较大,需引入模糊逻辑处理:
- 数据归一化:Δi1、Δi2、Δi3除以最大值Δi_max,得到归一化电流差值Δî1、Δî2、Δî3。
- 模糊集合定义:
- Δî1(主电流差值):ZE(零)、PM(正中等)、PB(正大)。
- Δî2/Δî3(辅助电流差值):NB(负大)、ZE(零)、PB(正大)。 - 模糊规则库:定义27条规则(3输入×3输入×3输入),输出对默认位置的修正量(如-1、-0.5、0、0.5、1个60°扇区)。
- 解模糊:采用重心法计算最终修正量Δθ,得到绝对转子位置θest = θdefault + 60°×Δθ。
4.3 工程优化:直流母线电流采样
传统三相电流采样需三个电流传感器,成本较高。《6脉冲定位》提出通过直流母线单电阻采样重构三相电流:
- 原理:逆变器6个有源状态下,母线电流等于某一相电流或其反向(如V_A+状态下,母线电流=IA);零状态下母线电流为0。
- 优势:无需三相电流传感器,仅需一个母线采样电阻,降低成本;避免传感器偏移误差,提高采样一致性。
5.1 单电阻采样毛刺问题(参考《单电阻FOC教程》3.4节)
- 现象:扇区切换时电流波形出现毛刺。
- 原因:扇区判断延迟或采样点与扇区切换不同步。
- 解决方案:
1. 将扇区变量由实时扇区(secter)改为延迟扇区(secter_post),确保采样与扇区匹配。
2. 优化零漂校正:采样零矢量状态下的电阻电压,计算零漂补偿值,重构时减去该值。
5.2 电感辨识过流问题(参考《500e算法解析》1.1.3节)
- 现象:施加电压脉冲时电流超过额定值,触发过流保护。
- 原因:脉冲导通时间过长或占空比过大,导致电流线性上升超调。
- 解决方案:
1. 减小占空比调节步长(如从5%改为1%),延长PWM周期(如从853us延长至4.26ms)。
2. 增加上桥自举电路充电步骤(状态1改为V-W-导通),避免开关管无法正常开通。
5.3 无感启动抖动问题(参考《500e算法解析》2.5节)
- 现象:低速时转速波动大,启动时出现抖动。
- 原因:速度估计误差大,滑模观测器增益不匹配。
- 解决方案:
1. 优化滑模观测器积分增益(KiForEmf),根据载波频率动态调整(如双更新模式下FcCoff=200)。
2. 增加速度修正环节:通过d轴电流偏差修正角速度估计值,公式为Δωcorr = ksmo · (idest - idsense) · iq,其中ksmo为修正系数。
单电阻采样FOC系统的核心优势在于硬件成本低、算法兼容性强,但对软件时序和算法精度要求较高。工程落地时需重点关注以下几点:
- 硬件选型:采样电阻选择低温度系数(如0.1%/℃)、小阻值(0.001-0.01Ω)电阻,配合高带宽运放(如OPA847),降低采样噪声。
- 时序优化:PWM移相、ADC采样、DMA传输的时序需严格同步,避免采样与开关动作重叠。
- 参数适配:电机参数辨识需在电机静止时执行,辨识完成后存储参数至Flash,避免每次上电重复辨识。
- 故障保护:增加过流、过压、欠压、堵转保护,故障发生时立即关闭PWM输出,确保系统安全。
通过本文解析的单电阻采样、参数辨识、无感控制、初始定位四大核心技术,可构建一套完整的低成本FOC解决方案,适用于家电、工业伺服、新能源汽车等领域的电机驱动场景。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/282029.html