本发明涉及新能源汽车技术领域,具体地涉及基于旋转变压器的电机的转子位置获取方法。
背景技术:
现有的旋转变压器解码芯片与dsp之间的信息交互方式有两种:spi方式和并口方式。现有技术的缺陷在于:
1.spi方式每次获取一次角度信息,需时为十几微秒;这相当于对真实角度信息延时了一个位置角,从而使得测量的结果不准确;
2.由于电机的转子是不停运转的,转子的位置信息也是不断的被计算和输出,因此spi方式每次获取一次角度信息所需的十几微秒,都耗费在中断服务程序里面,大大耗费了程序执行时间;
3.并口方式会耗费大量的硬件管脚,浪费了主芯片资源,同时增加了pcb布板难度。
技术实现要素:
本发明针对上述问题,提供基于旋转变压器的电机的转子位置获取方法,其目的在于:大幅度提高所获取的电机的转子的位置信息的准确度;省略通信时间;节约芯片硬件资源。
为解决上述问题,本发明提供的技术方案为:
一种基于旋转变压器的电机的转子位置获取方法,包含以下步骤:
s100.在电机的转子静止的状态下,自所述旋转变压器上电时刻起,采集a脉冲或b脉冲,直至所述a脉冲或所述b脉冲停止;
s200.通过自所述旋转变压器上电时刻起至所述a脉冲或所述b脉冲停止为止的时间段内所采集的所述a脉冲或所述b脉冲,计算得到电机的转子的初始位置信息;
s300.在电机的转子转动的状态下,自电机的转子开始转动的时刻起,持续采集所述a脉冲和所述b脉冲;
s400.通过自电机的转子开始转动的时刻起至当前时刻为止的时间段内所采集的所述a脉冲或所述b脉冲,计算得到电机的转子的当前位置偏移量;
s500.将所述初始位置信息与所述当前位置偏移量相加,得到当前绝对位置信息。
优选地,所述s200具体包含以下步骤:
s210.统计采集到的所述a脉冲中的脉冲个数,或采集到的所述b脉冲中的脉冲个数;
s220.根据所述a脉冲中的脉冲个数,或所述b脉冲中的脉冲个数,计算得到所述初始位置信息。
优选地,所述s400具体包含以下步骤:
s410.统计所采集到的所述a脉冲中的脉冲个数,或所采集到的所述b脉冲中的脉冲个数;
s420.计算所述当前位置偏移量,按下式表达:
thta=2π*(count*np)/(fs*n)
其中:thta为所述当前位置偏移量;count为所述脉冲个数;np为电机的极对数,通过查找电机的技术手册获取;fs为激励频率,由人工预设;n为旋转变压器的极对数,通过查找旋转变压器的技术手册获取。
优选地,所述a脉冲或所述b脉冲由与所述旋转变压器耦接的ad2s1205芯片输出。
优选地,所述旋转变压器为磁阻式旋转变压器。
优选地,所述旋转变压器的转子1以同轴的方式安装在所述电机的转子上;
所述旋转变压器的输出绕组的s1端与所述ad2s1205芯片的coslo针脚耦接,s3端与cos针脚耦接;
所述旋转变压器的输出绕组的s2端与所述ad2s1205芯片的sinlo针脚耦接,s4端与sin针脚耦接。
优选地,所述ad2s1205芯片的a引脚与dsp的qep模块的eqep1a引脚耦接;
所述ad2s1205芯片的b引脚与dsp的qep模块的eqep1b引脚耦接;
所述ad2s1205芯片的nm引脚与dsp的qep模块的eqep1i引脚耦接;
所述ad2s1205芯片的reset引脚与dsp的qep模块的gpio24引脚耦接。
优选地,所述激励频率为1024hz。
本发明与现有技术对比,具有以下优点:
1.由于本发明只需要开启qep功能,即可计算出电机的转子的当前绝对位置信息,从而可以避免角度延时,大幅度提高了所获取的电机的转子的位置信息的准确度;
2.由于本发明无需每次获取一次角度信息所需的十几微秒,从而省略了通信时间,相当于节省了软件执行时间;
3.由于本发明只需要4个io口即可完成dsp与ad2s1205之间的信息交互,从而节约了芯片硬件资源,且简化了硬件电路。
附图说明
图1为本发明具体实施例的旋转变压器的工作原理示意图;
图2为本发明具体实施例的ad2s1205芯片与dsp的qep模块的连接方式示意图;
图3为本发明具体实施例的方法流程示意图;
图4为本发明具体实施例的初始位置信息以a脉冲的形式输出的波形对比示意图;
图5为本发明具体实施例的观察到的电角度输出波形示意图。
其中:1.旋转变压器的转子,2.励磁绕组,3.两相输出绕组。
具体实施方式
下面结合具体实施例,进一步阐明本发明,应理解这些实施例仅用于说明本发明而不用于限制本发明的范围,在阅读了本发明之后,本领域技术人员对本发明的各种等价形式的修改均落于本申请所附权利要求所限定的范围。
如图1所示,旋转变压器是是输出电压随转角变化的信号元件,绝对位置编码器,可以获得绝对位置信号,适用于电动汽车应用领域;旋转变压器的工作原理为:
励磁线圈通以固定频率的正弦电压,由于旋转变压器转子的凸极效应,两相输出的绕组电压幅值随转子位置的变化而变化,并且电压相位相差
其中,励磁绕组2的输入电压与两相输出绕组3的电压有以下数学关系。励磁绕组2的输入电压按式(1)表达:
其中:e为励磁绕组2的电压幅值;f为励磁绕组2的输入电压频率。
两相输出绕组3的电压分别按式(2)、式(3)表达:
其中:k为输出电压的增益系数;θ为转子转过的电角度。
两相输出绕组3的电压分别是与转子位置有关的正弦函数和余弦函数,解码系统采集输出绕组电压,通过解码计算,便可以获得电机转角的位置信息。
本具体实施例是基于设备及连接方式实现的:
在本具体实施例中,旋转变压器为磁阻式旋转变压器;旋转变压器的转子1以同轴的方式安装在电机的转子上;旋转变压器的输出绕组的s1端与ad2s1205芯片的coslo针脚耦接,s3端与cos针脚耦接;旋转变压器的输出绕组的s2端与ad2s1205芯片的sinlo针脚耦接,s4端与sin针脚耦接。
ad2s1205是一款常用的旋转变压器解码芯片,它向旋转变压器提供励磁信号,并且解码两相输出绕组3的电压,得到此时电机转子的位置信息。然后将转子位置信息传送给主芯片dsp。具体来说,ad2s1205的解码原理为:
两相输出绕组3的电压送入到解码芯片ad2s1205,经过ad采样后送入乘法器,分别经过乘法运算,转换器将产生转换器反馈角
其中:
令k·esin2πft=e0,二者的差值按式(6)表达:
当角度误差
当该目标得以实现时,在转换器的额定精度范围内,
另一方面,ad2s1205不仅对外提供了并口和串口(spi)的交互接口。还会向外传输abz信号,该信号可以表征当前的位置信息,使得可以采用车载的dsp读取位置信息的增量。
在本具体实施例中,a脉冲或b脉冲由与旋转变压器耦接的ad2s1205芯片输出。
本具体实施例通过dsp的qep模块来实现对ab脉冲的计数功能,每一周期读取qep的计数值,亦即脉冲个数,通过该值来计算电机的转子的当前绝对位置信息。
如图2所示,本具体实施例中,需要4个端口与ad2s1205芯片连接,具体如下:
ad2s1205芯片的a引脚与dsp的qep模块的eqep1a引脚耦接;ad2s1205芯片的b引脚与dsp的qep模块的eqep1b引脚耦接;ad2s1205芯片的nm引脚与dsp的qep模块的eqep1i引脚耦接;ad2s1205芯片的reset引脚与dsp的qep模块的gpio24引脚耦接;其中:
a引脚输出的a脉冲、b引脚输出的b脉冲以及nm引脚输出的nm脉冲为ad2s1205芯片输出的脉冲信号,是ad2s1205芯片仿真增量式编码器输出的信号。当转速升高时,a脉冲、b脉冲的频率会随之升高。
gpio24引脚用于给ad2s1205芯片提供软件复位信号。
此外,在本具体实施例的步骤执行前,还需对dsp芯片的qep模块进行初始化,具体设置参数如下:
模式设置为正交编码器模式;计数方式设置为增减计数;时钟设置为4m;开qep模块;开qep计数。
基于上述说明,本具体实施例的方法为:
如图3所示,一种基于旋转变压器的电机的转子位置获取方法,包含以下步骤:
s100.在电机的转子静止的状态下,自旋转变压器上电时刻起,采集a脉冲或b脉冲,直至a脉冲或b脉冲停止;
s200.通过自旋转变压器上电时刻起至a脉冲或b脉冲停止为止的时间段内所采集的a脉冲或b脉冲,计算得到电机的转子的初始位置信息;s200具体包含以下步骤:
s210.统计采集到的a脉冲中的脉冲个数,或采集到的b脉冲中的脉冲个数;
s220.根据a脉冲中的脉冲个数,或b脉冲中的脉冲个数,计算得到初始位置信息。
刚上电的时候,此时电机还未转动,需要给gpio24提供一个低电平,具体操作如下:
gpiodataregs.gpadat.bit.gpio24=0;//high
delay_us(5000);//delay5ms
gpiodataregs.gpadat.bit.gpio24=1;//high
此时,dsp先给ad2s1205芯片发送一个复位信号,ad2s1205芯片会将当前的角度信息以脉冲的方式发送给dsp的qep引脚上。由于qep模块已经配置好,如图4所示,因此当它接收到脉冲信号后,它会自动累计接收到的脉冲个数。根据本具体实施例即将给出的式(10)即可计算出当前实际电角度,亦即电机的转子在静止时的实际电角度,亦即初始位置信息。
这样做的原理在于:
利用ad2s1205的芯片特征,自旋转变压器上电时刻起,通过软件给ad2s1205芯片的复位信号一个低电平,此时ad2s1205芯片会返回一串脉冲信号到a、b引脚;而只需要统计脉冲个数,即可计算出初始位置信息。
完成上述步骤以后ad2s1205芯片在电机转动之前便不会再发脉冲信号,而是带电等待电机转动。
s300.在电机的转子转动的状态下,自电机的转子开始转动的时刻起,持续采集a脉冲、b脉冲和nm脉冲;
这是由于:当电机开始转动之后,安装在转子上的旋转变压器就开始持续通过两相输出绕组3的电压送入到解码芯片ad2s1205,于是ad2s1205芯片就会再次且持续发出a脉冲、b脉冲和nm脉冲。
s400.通过自电机的转子开始转动的时刻起至当前时刻为止的时间段内所采集的a脉冲或b脉冲,计算得到电机的转子的当前位置偏移量;s400具体包含以下步骤:
s410.统计所采集到的a脉冲中的脉冲个数,或所采集到的b脉冲中的脉冲个数;
s420.计算当前位置偏移量,按式(8)表达:
thta=2π*(count*np)/(fs*n)(8)
其中:thta为当前位置偏移量;count为脉冲个数;np为电机的极对数,通过查找电机的技术手册获取;fs为激励频率,由人工预设;n为旋转变压器的极对数,通过查找旋转变压器的技术手册获取。
在本具体实施例中,激励频率为1024hz。
这样做的原理如下:
旋转变压器会安装在电机的转子上,旋转变压器的极对数为n,电机的极对数为np,于是电机的转子每旋转一周相当于旋变在电角度周期上转了n周,亦即相当于电机的转子在电角度上转了np周。在1024hz的激励频率下,旋转变压器每转电角度一周会输出1024个脉冲,所以电机的转子每旋转一周会输出1024*n个脉冲,此时相当于电机的转子在电角度上转了2π*np。这样,如果当前旋转变压器输出了count个脉冲信号时,电机的转子转过了thta的电角度,相互之间的关系按式(9)表达:
变换式(9),即可得到式(8)。
又由于本具体实施例中,fs=1024,所以可得式(10):
thta=2π*(count*np)/(1024*n)(10)
旋转变压器与ad2s1205芯片连接,则ad2s1205芯片也在实时向qep模块通过a、b引脚输出脉冲信号,即a脉冲和b脉冲。qep模块可以累积这些脉冲信号,当a脉冲超前b脉冲时则增加计数值,反之当a脉冲滞后于b脉冲时则减小计数值。此外,nm信号是校正信号,每次采集到nm信号时,qep模块会把计数值清零。每个周期中断程序通过读取计数值来得到角度信息。
s500.将初始位置信息与当前位置偏移量相加,得到当前绝对位置信息。
这个做法的原理在于:
dsp可以通过a脉冲和b脉冲的累加,得到当前位置偏移量;但如果想要得到当前绝对位置信息,还需要在刚上电的时候得到初始位置信息。于是可以利用ad2s1205的芯片特征,只需对芯片做相应处理,即可得到初始位置信息。然后,当dsp的qep模块再次接收到a脉冲、b脉冲和nm脉冲之后,会在之前的计数下继续累积各个脉冲的个数,即不断更新count的值,并将其保存在寄存器eqep1regs.qposcnt里。最后在每个中断中,根据count值依据式(10)即可计算出实际电角度,亦即当前位置偏移量,用于对电机进行矢量控制。
如图4所示,ad2s1205芯片需要一个外部复位信号使/reset输入保持低电平,直到vdd达到规定的工作电压范围4.5v至5.5v以内。在vdd处于规定的范围内之后,/reset引脚必须保持低电平至少10us。对ad2s1205施加一个/reset信号,芯片将输出位置初始值(通过并行、串行和编码器接口输出的度数)。当我们使用ab信号时,该位置初始值以脉冲信号的形式输出
对本具体实施例进行实际操作验证情况如下:
以采集到的角度控制电机运行,电机以固定频率运转,通过上位机观测电角度输出波形,如图5所示。电角度在0-6.28范围内平滑的变化,证明角度采集准确,稳定,电机控制平稳。
上述实验现象充分说明本发明的方法有效。
在上述的详细描述中,各种特征一起组合在单个的实施方案中,以简化本公开。不应该将这种公开方法解释为反映了这样的意图,即,所要求保护的主题的实施方案需要比清楚地在每个权利要求中所陈述的特征更多的特征。相反,如所附的权利要求书所反映的那样,本发明处于比所公开的单个实施方案的全部特征少的状态。因此,所附的权利要求书特此清楚地被并入详细描述中,其中每项权利要求独自作为本发明单独的优选实施方案。
为使本领域内的任何技术人员能够实现或者使用本发明,上面对所公开实施例进行了描述。对于本领域技术人员来说;这些实施例的各种修改方式都是显而易见的,并且本文定义的一般原理也可以在不脱离本公开的精神和保护范围的基础上适用于其它实施例。因此,本公开并不限于本文给出的实施例,而是与本申请公开的原理和新颖性特征的最广范围相一致。
上文的描述包括一个或多个实施例的举例。当然,为了描述上述实施例而描述部件或方法的所有可能的结合是不可能的,但是本领域普通技术人员应该认识到,各个实施例可以做进一步的组合和排列。因此,本文中描述的实施例旨在涵盖落入所附权利要求书的保护范围内的所有这样的改变、修改和变型。此外,就说明书或权利要求书中使用的术语“包含”,该词的涵盖方式类似于术语“包括”,就如同“包括,”在权利要求中用作衔接词所解释的那样。此外,使用在权利要求书的说明书中的任何一个术语“或”是要表示“非排它性的或者”。
以上所述的具体实施方式,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施方式而已,并不用于限定本发明的保护范围,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
1.一种基于旋转变压器的电机的转子位置获取方法,其特征在于:包含以下步骤:
s100.在电机的转子静止的状态下,自所述旋转变压器上电时刻起,采集a脉冲或b脉冲,直至所述a脉冲或所述b脉冲停止;
s200.通过自所述旋转变压器上电时刻起至所述a脉冲或所述b脉冲停止为止的时间段内所采集的所述a脉冲或所述b脉冲,计算得到电机的转子的初始位置信息;
s300.在电机的转子转动的状态下,自电机的转子开始转动的时刻起,持续采集所述a脉冲和所述b脉冲;
s400.通过自电机的转子开始转动的时刻起至当前时刻为止的时间段内所采集的所述a脉冲或所述b脉冲,计算得到电机的转子的当前位置偏移量;
s500.将所述初始位置信息与所述当前位置偏移量相加,得到当前绝对位置信息。
2.根据权利要求1所述的基于旋转变压器的电机的转子位置获取方法,其特征在于:所述s200具体包含以下步骤:
s210.统计采集到的所述a脉冲中的脉冲个数,或采集到的所述b脉冲中的脉冲个数;
s220.根据所述a脉冲中的脉冲个数,或所述b脉冲中的脉冲个数,计算得到所述初始位置信息。
3.根据权利要求1所述的基于旋转变压器的电机的转子位置获取方法,其特征在于:所述s400具体包含以下步骤:
s410.统计所采集到的所述a脉冲中的脉冲个数,或所采集到的所述b脉冲中的脉冲个数;
s420.计算所述当前位置偏移量,按下式表达:
thta=2π*(count*np)/(fs*n)
其中:thta为所述当前位置偏移量;count为所述脉冲个数;np为电机的极对数,通过查找电机的技术手册获取;fs为激励频率,由人工预设;n为旋转变压器的极对数,通过查找旋转变压器的技术手册获取。
4.根据权利要求1所述的基于旋转变压器的电机的转子位置获取方法,其特征在于:所述a脉冲或所述b脉冲由与所述旋转变压器耦接的ad2s1205芯片输出。
5.根据权利要求4所述的基于旋转变压器的电机的转子位置获取方法,其特征在于:所述旋转变压器为磁阻式旋转变压器。
6.根据权利要求5所述的基于旋转变压器的电机的转子位置获取方法,其特征在于:
所述旋转变压器的转子(1)以同轴的方式安装在所述电机的转子上;
所述旋转变压器的输出绕组的s1端与所述ad2s1205芯片的coslo针脚耦接,s3端与cos针脚耦接;
所述旋转变压器的输出绕组的s2端与所述ad2s1205芯片的sinlo针脚耦接,s4端与sin针脚耦接。
7.根据权利要求6所述的基于旋转变压器的电机的转子位置获取方法,其特征在于:所述ad2s1205芯片的a引脚与dsp的qep模块的eqep1a引脚耦接;
所述ad2s1205芯片的b引脚与dsp的qep模块的eqep1b引脚耦接;
所述ad2s1205芯片的nm引脚与dsp的qep模块的eqep1i引脚耦接;
所述ad2s1205芯片的reset引脚与dsp的qep模块的gpio24引脚耦接。
8.根据权利要求3所述的基于旋转变压器的电机的转子位置获取方法,其特征在于:所述激励频率为1024hz。
技术总结