永磁同步电机控制笔记:相电压处理及通过滤波器信号的恢复

为什么要恢复相电压

永磁同步电机控制算法中,相电压是一个很关键的状态量。目前的方案中有以下几种方式处理相电压。
方式1,使用给定电压代替反馈电压。该方式得到相电压最为简单,同时计算量最小。可以省掉3路adc资源占用。但是因为死区及逆变器的非线性影响,给定电压与真实的相电压之间有一个无法精准计算的误差。并且在同步机低速工作时,这个误差占比很大,会严重影响控制性能。
方式2,电路上添加截至频率接近开关频率的rc滤波,通过adc采集相电压信号。该方法能够获取更真实的电压信号,增加的计算量也不大。但是采样信号中依然包含一定成分的开关噪声,对控制的改善作用有限。
方式3,在电路上添加截至频率远小于开关频率的rc滤波,通过adc采集相电压信号,然后通过软件补偿低通滤波带来的相位滞后与幅值衰减。该方法增加较大的计算量。但是在对性能要求高的控制器设计时,该方法能够有效提高相电压信号质量。Ti的电机控制方案insta spin即采用了这一方案。
本文着重讨论方式3所需用到的相电压补偿技术。

通过幅频特性恢复信号

考虑rc滤波器的传递函数
H ( s ) = ω c s + ω c H(s) = \frac{\omega_c}{s + \omega_c} H(s)=s+ωcωc
其中 ω c = 1 R C \omega_c = \frac{1}{RC} ωc=RC1;
根据传递函数计算幅频、相频特性。可以得到在不同频率下信号的幅度衰减程度以及相位的滞后程度,进而进行补偿
∣ Y ( j ω ) X ( j ω ) ∣ = R e l ( ω c j ω + ω c ) 2 + I m g ( ω c j ω + ω c ) 2 = ( ω c 2 ω c 2 + ω 2 ) 2 + ( − ω c ω ω c 2 + ω 2 ) 2 \left\vert{\frac{Y(j\omega)}{X(j\omega)}}\right\vert = \sqrt{Rel \left(\frac{\omega_c}{j\omega + \omega_c} \right)^2 + Img\left(\frac{\omega_c}{j\omega + \omega_c} \right)^2} = \sqrt{\left(\frac{\omega_c^2}{\omega_c^2 + \omega^2}\right)^2 + \left(\frac{-\omega_c\omega}{\omega_c^2 + \omega^2}\right)^2 } X(jω)Y(jω)=Rel(jω+ωcωc)2+Img(jω+ωcωc)2 =(ωc2+ω2ωc2)2+(ωc2+ω2ωcω)2
所以,滤波前信号与滤波后信号幅度之比为:
∣ X ( j ω ) ∣ ∣ Y ( j ω ) ∣ = 1 + ω 2 ω c 2 \frac{\left\vert X(j\omega)\right\vert}{\left\vert Y(j\omega) \right\vert}={\sqrt{1 + \omega^2\omega_c^2}} Y(jω)X(jω)=1+ω2ωc2
类似的,滤波后信号与滤波前信号的相位偏差为:
∠ ( Y ( j ω ) , X ( j ω ) ) = a t a n ( − ω ω c ) \angle{(Y(j\omega),X(j\omega))} = atan(-\frac{\omega}{\omega_c}) (Y(jω),X(jω))=atan(ωcω)
对采样到的三相电压信号进行clark变换,可以得到正交的电压信号,容易计算相电压幅值,通过arctan(),容易计算相电压相位。根据输出信号频率,可以计算出当前频率的幅值衰减和相位滞后的多少,进而实时补偿。
定义相电压幅值 ∣ Y ( j ω ) ∣ = ∣ v s ∣ = v α 2 + v β 2 {\left\vert Y(j\omega)\right\vert} = |v_s| = \sqrt{v_{\alpha}^2 + v_{\beta}^2} Y(jω)=vs=vα2+vβ2
故真实的相电压幅值
∣ X ( j ω ) ∣ = v s 1 + ω 2 ω c 2 \left\vert X(j\omega)\right\vert=v_s{\sqrt{1 + \omega^2\omega_c^2}} X(jω)=vs1+ω2ωc2
真实的相电压相位:
ϕ v s = a t a n 2 ( v α , v β ) − a t a n ( − ω ω c ) \phi_{vs} = atan2(v_{\alpha},v_{\beta}) - atan(-\frac{\omega}{\omega_c}) ϕvs=atan2(vα,vβ)atan(ωcω)
至此,可以得到经过补偿的 v α , v β v_{\alpha},v_{\beta} vα,vβ
v α = ∣ v s ∣ s i n ( ϕ v s ) v_{\alpha} = |v_s| sin(\phi_{vs}) vα=vssin(ϕvs)
v β = ∣ v s ∣ c o s ( ϕ v s ) v_{\beta} = |v_s| cos(\phi_{vs}) vβ=vscos(ϕvs)
搭建模型仿真
在这里插入图片描述
在这里插入图片描述
恢复后的信号能够较好的跟踪原始信号

该方法虽然可以实时的进行相电压恢复,但是改方法需要准确的知道信号的幅度和相位,对于某些信号,计算幅度和相位并不方便。除此之外,该方法还存在计算量大的缺点。
对此,本文描述一种通过传递函数反算原始信号的方法。

通过差分方程恢复信号

低通滤波器传递函数已知。为方便在dsp计算,通过后向差分转化为离散传递函数

H ( z ) = Y ( z ) X ( z ) = T s ⋅ z − 1 ( T s + τ ) − T s ⋅ z − 1 H(z)=\frac{Y(z)}{X(z)} =\frac{Ts \cdot z^{-1} }{(Ts + \tau) - Ts \cdot z^{-1}} H(z)=X(z)Y(z)=(Ts+τ)Tsz1Tsz1
其中 τ = 1 ω c \tau = \frac{1}{\omega_c} τ=ωc1
转化为差分方程有
( τ + T s ) Y ( n ) − τ Y ( n − 1 ) = T s X ( n − 1 ) (\tau + Ts)Y(n) - \tau Y(n-1) = TsX(n-1) (τ+Ts)Y(n)τY(n1)=TsX(n1)
可得
X ( n − 1 ) = ( τ + T s ) Y ( n ) − τ Y ( n − 1 ) T s X(n-1) = \frac{(\tau + Ts)Y(n) - \tau Y(n-1) }{Ts} X(n1)=Ts(τ+Ts)Y(n)τY(n1)

搭建模型仿真

在这里插入图片描述
在这里插入图片描述
其中蓝色信号为恢复后的信号,黄色信号为原始信号,红色信号为滤波后的信号。可以得到,恢复后的信号较好的跟随了原始信号

  • 7
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

深入浅出说电机

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值