正余弦磁编码器的解码方法和系统与流程

文档序号:17584327发布日期:2019-05-03 21:11阅读:3567来源:国知局
正余弦磁编码器的解码方法和系统与流程

本发明涉及电机控制系统,特别涉及电机控制系统中位置传感器的正余弦磁编码器的解码方法和系统。



背景技术:

位置传感器是电机闭环矢量控制系统中的关键部分,在新能源车辆的电机控制系统中,旋转变压器一直占据着主导地位,但是旋转变压器的体积较大,安装复杂,且输出为调制模拟信号,需要专用的解码芯片进行解调,所以成本较高。但是其输入/输出均为差分信号,并使用双绞线传输,具有较强的电磁抗扰度,能有效抵制这种电源噪声和共模噪声干扰到信号线上。

而近几年出现的磁编码器作为一种以磁为传输介质的新型编码器,与传统的旋转变压器相比,结构简单,安装精度要求较低,无需专用励磁和解码芯片,有效降低了系统成本。但磁编码器反馈信号均为单线传输,在强电磁干扰环境下,容易受到噪声影响。应用于新能源车辆电控系统的磁编码器一般为正余弦增量式旋转编码器,通过将两组线性霍尔元件分别间隔90°安装,输出为2路相位差为1/4周期的正、余弦信号,信号周期一般为180°或360°机械角度,然后经过简单的硬件信号调理后输入至处理器进行软件解码运算。

式中:umax为线性霍尔元件输出的幅值,对于磁编码器来说是已知参数;ua、ub为一组正、余弦位置反馈信号;θ为电角度。将两者相除并通过反正切函数或查表法计算出电角度θ,由对应关系得出机械角度。

但若信号在传输过程中,受到电源噪声及其它共模干扰的影响,在原先正余弦输入信号上叠加了一个共模噪声信号ucm,如下面的公式描述:

由于上述反正切运算前对输入信号进行了除法运算,虽然可以部分消除由于电源噪声和共模干扰引起的解码误差,但不能完全消除信号上这种负面影响。

综上所述,普通的反正切算法虽然可以通过一组正、余弦信号计算出电角度,但是和高成本的旋转变压器相比,在一些电磁干扰严重的应用场合,采样和控制精度会受到一定影响。



技术实现要素:

本发明的目的是克服了上述现有技术中的缺点,提供一种正余弦磁编码器的解码方法和系统,对于应用环境中常见的共模干扰,有很好的抑制作用,能有效地过滤耦合在信号线上电磁干扰。

为了实现上述的目的,本发明的正余弦磁编码器的解码方法如下:

一种正余弦磁编码器的解码方法,其特征在于,所述正余弦磁编码器的解码方法包括:

差分减法模块对于正余弦磁编码器输出的一组正、余弦信号ua、ub,将其作为一对差分信号进行减法运算,得到正弦信号udelta;

区间判断模块根据所述正余弦磁编码器输出的一组正、余弦信号ua、ub粗略计算电角度θ的预估值,判断θ位于哪个相位区间,为后面的反正弦算法提供区间信息;

反正弦运算模块将差分减法模块得到的正弦信号udelta进行反正弦计算,并结合区间判断模块提供的区间信息,得出准确的电角度θ。

进一步,所述差分减法模块对于正余弦磁编码器输出的一组正、余弦信号ua、ub,将其作为一对差分信号进行减法运算,得到正弦信号udelta,还包括根据三角函数合一公式,将正、余弦之差转换成所述正弦信号udelta。

进一步,所述差分减法模块对于正余弦磁编码器输出的一组正、余弦信号ua、ub,将其作为一对差分信号进行减法运算,得到正弦信号udelta,为:

所述umax为正余弦磁编码器线性霍尔元件输出的幅值,所述ucm为共模噪声信号。

进一步,所述区间判断模块根据所述正余弦磁编码器输出的一组正、余弦信号ua、ub粗略计算电角度θ的预估值,判断θ位于哪个相位区间,采用的是反正切算法,或锁相环pll跟踪算法,或利用sinθ和cosθ的幅值,通过鉴幅方式直接判断出θ的相位信息。

进一步,所述区间判断模块根据所述正余弦磁编码器输出的一组正、余弦信号ua、ub粗略计算电角度θ的预估值,判断θ位于哪个相位区间,为将(0°,360°)电角度分为两个相位区间:(0°,135°)∪(315°,360°)以及(135°,315°)。

进一步,所述反正弦运算模块将差分减法模块得到的正弦信号udelta进行反正弦计算,为

进一步,所述差分减法模块在进行减法运算前,利用一阶iir低通滤波器进行滤波处理,以滤除高频干扰。

进一步,所述滤波算法为:y(k)=b1*x(k)+b2*x(k-1)-a2*y(k-1);其中x(k)为当前输入量,x(x-1)为上一次的输入量,y(k)为输出量,y(k-1)为上一次的输出量;b1,b2,a2为滤波系数,滤波系数b1=b2=0.495,a2=-0.0092,滤除5khz以上的高频干扰。

一种正余弦磁编码器的解码系统,其特征在于,所述正余弦磁编码器的解码系统包括:差分减法模块、区间判断模块和反正弦运算模块;其中,差分减法模块,获取正余弦磁编码器输出的一组正、余弦信号ua、ub,将其作为一对差分信号进行减法运算,输出正弦信号udelta;区间判断模块,用于根据所述正余弦磁编码器输出的一组正、余弦信号ua、ub,粗略计算电角度θ的预估值,判断θ位于哪个相位区间,为后面的反正弦算法提供区间信息;反正弦运算模块,将差分减法模块得到的正弦信号udelta进行反正弦计算,并结合区间判断模块提供的区间信息,得出准确的电角度θ。

本发明正余弦磁编码器的解码方法,采用了差分解码方法,利用三角函数的变换,将原先两个独立的正余弦信号进行差分运算,对于应用环境中常见的共模干扰,有很好的抑制作用,能有效地过滤耦合在信号线上电磁干扰。所以,本发明在无需增加额外硬件调理和滤波的前提下,使低成本的正余弦磁编码器方案,在电磁抗扰度方面有更好的可靠性。对于应用环境中最常见的电源噪声和共模干扰有更好的抑制作用,这使得电机侧的位置和速度反馈更加精准,为电机控制系统的闭环矢量控制提供了更好的控制精度。

附图说明

图1为本发明正余弦磁编码器解码方法系统框图;

图2为本发明反正弦计算电角度函数关系。

具体实施方式

为了能够更清楚地描述本发明的技术内容,下面结合具体实施例来进行进一步的描述。

以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。下面参考附图详细描述本发明的各实施方式。

请参见图1所示,本发明正余弦磁编码器的解码系统(假设机械角度等于电气角度),包括三个模块:差分减法模块、区间判断模块和反正弦运算模块。其中,差分减法模块,获取正余弦磁编码器输出的一组正、余弦信号ua、ub,将其作为一对差分信号进行减法运算,输出正弦信号udelta。区间判断模块,用于粗略计算电角度θ的预估值,判断θ位于哪个相位区间,为后面的反正弦算法提供区间信息。反正弦运算模块,将差分减法模块得到的正弦信号udelta进行反正弦计算,得出准确的电角度θ。

具体解码方法如下:

差分减法模块,对于正余弦磁编码器输出的一组正、余弦信号ua、ub,将其作为一对差分信号进行减法运算,并根据三角函数合一公式,将正、余弦之差转换成另一个正弦信号:

所述umax为正余弦磁编码器线性霍尔元件输出的幅值,所述ucm为共模噪声信号。

从上述公式可以看出,得到的新的正弦信号udelta和原始的输入信号ua相比,幅值增大了倍,相位滞后了45°。而对于叠加在输入信号上的共模噪声信号ucm,此时已完全消除,以此抑制共模噪声,有效提高控制精度。

区间判断模块,此模块在算法中只用于粗略计算电角度θ的预估值,判断θ位于哪个相位区间,为后面的反正弦算法提供区间信息,它只起到一个辅助预判断的功能。具体的算法既可采用反正切算法,也可以使用更加精确的锁相环pll跟踪算法,甚至可以利用sinθ和cosθ的幅值,通过鉴幅方式直接判断出θ的相位信息。

反正弦运算模块,将差分减法模块得到的正弦信号udelta进行反正弦计算,得出准确的电角度θ:

反正弦函数的值域是(-90°,90°),即求反正弦后的θ-45°∈(-90°,90°),则θ∈(-45°,135°),所以如图2所示,将(0°,360°)电角度分为两个相位区间:(0°,135°)∪(315°,360°)以及(135°,315°)。最后根据区间判断模块得出的θ预估值所在区间,由此得出udelta和θ唯一对应关系,从而计算出准确的电气角度和机械角度。所以,所述差分减法模块与反正弦运算模块一起配合完成精确角度计算。

所以,差分减法模块利用三角函数的变换,将原先两个独立的正余弦信号进行差分运算,虽然算法比通常的反正切法要复杂一些,但是在很大程度上抑制了耦合在编码器信号上的电源噪声和共模干扰。这使得电机侧的位置和速度反馈更加精准,为电机控制系统的闭环矢量控制提供了更好的控制精度。

进一步,差分减法模块在进行减法运算前,利用一阶iir低通滤波器进行滤波处理,以滤除高频干扰。

以下是本发明已成功应用于低成本方案的新能源汽车电机控制器的正余弦磁编码器输入的实施例,具有很好的噪声抑制效果,大大提高了位置和速度反馈的精度。

1.差分减法模块

1)寄存器中读取正、余弦磁编码器两路模拟量采样值到变量ua_unfiltered,ub_unfiltered。

2)利用一阶iir(无限长脉冲响应)低通滤波器进行滤波处理,取滤波系数b1=b2=0.495,a2=-0.0092,通过滤波算法,滤除5khz以上的高频干扰后值为ua,ub。

滤波算法为:y(k)=b1*x(k)+b2*x(k-1)-a2*y(k-1);其中x(k)为当前输入量,x(x-1)为上一次的输入量,y(k)为输出量,y(k-1)为上一次的输出量;b1,b2,a2为滤波系数。

3)ua减去ub,并赋值于变量udelta。

2.区间判断模块

1)基于滤波后的两路模拟量输入值ua,ub,调用反正切库函数初步计算角度并赋值给变量theta0,其范围是(0°,360°)。

2)如果theta0在(135°,315°)范围内,设定区间变量range为1,否则设置range为2。

3.反正弦运算模块

1)计算调用反正弦函数计算角度theta1。

2)如果range是1,即theta0在(135°,315°)范围内,最终的位置角计算公式为:theta=45°-theta1+180°;

如果range是2,即theta0在(0°,135°)或(315°,360°)范围内,最终的位置角计算公式:theta=45°+theta1°。

本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。以上所述仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1