导读:eQEP测速和位置读取模块的实现主要分为三个部分:1、eQEP模块的底层配置;2、eQEP模块对应的速度和位置角度的处理;3、参数赋值。

图1 永磁同步电机矢量控制系统框图
eQEP模块的作用,如图(1)所示,获取电机的转子速度和位置。所以说,eQEP模块配合增量式ABZ编码器是永磁同步电机实现有感矢量控制的关键。
1.1 eQEP外设模块介绍
eQEP(增强型正交编码器接口)是TMS320F28335等DSP芯片中集成的专用外设模块,主要用于高精度运动控制场景,尤其适用于电机的位置、速度及方向测量。其核心功能包括:
·正交信号解码:支持正交编码器输出的A、B两相脉冲信号(相位差90°)解码,通过硬件电路直接处理信号,减少软件计算延迟。
·方向检测:通过判断A、B相信号的相位关系(超前/滞后),实时识别电机旋转方向(正转/反转)。
·位置计数:内置位置计数器(QEPPOS寄存器),支持多种计数模式(如正交计数、直接计数),可累计旋转角度或圈数。
·抗干扰能力:通过正交解码算法减少信号噪声导致的误判,提升测量稳定性。

1.2 eQEP外设模块的底层配置
首先对eQEP模块做如下配置:
1、位置计数器工作模式1(QEPCTL[PCRM]=00);
2、定时器基准单元的溢出周期为10ms;
3、单位位移量定义为32个正交脉冲;
4、捕获单元定时器的计数时钟SYSCLKOUT进行128分频得来的;
5、由于在eQEP模块内部会对正交脉冲信号进行四倍频,所以位置计数器的最大值QPOSMAX设定为10000.


2.1 ABZ编码器的介绍
ABZ编码器是一种用于测量旋转角度或线性位移的传感器,通过输出A相、B相、Z相三组信号实现位置和方向的检测1。其核心工作原理基于光电或磁电感应技术,当旋转部件运动时,传感器通过检测码盘上的刻度变化生成脉冲信号,进而通过信号解析确定运动状态。
·A相和B相:两组相位差为90度的连续脉冲信号,通过相位关系判断旋转方向(如A相超前B相90度为正转,反之则反转),通过脉冲频率计算转速。
·Z相:每旋转一圈输出一个零位脉冲,用于定位参考点或累计圈数。
当编码器旋转时,A/B相脉冲的跳变顺序可反映方向:
·正转时,A相脉冲上升沿超前B相90度
·反转时,B相脉冲上升沿超前A相90度4 通过计数单位时间内的脉冲数,可换算电机转速,公式为:
转速(RPM)=(脉冲数/每转脉冲数)×60/采样时间(秒)
2.2 ABZ编码器获取转速和转子位置


3.2 ABZ编码器获取转速和转子位置信息
图(2)和图(3)是eQEP模块配合ABZ编码器对永磁同步电机的转子位置和转速进行计算测量,用于速度闭环控制。

图2 eQEP计算电机的转子位置

图3 eQEP模块计算电机的转子转速
3.3 硬件测试graph图显对应的波形分析

图4 转子位置波形变化情况

图5 转子速度波形变化情况
图(4)和图(5)是标幺化系统(100rpm)时,稳态状况下的转子位置和转速波形的graph显示,从中可以看出eQEP模块的底层配置和配合ABZ编码器测速、获取位置方法的正确性。
4.1 使用ABZ编码器,需要对永磁同步电机的转子初始位置进行辨识;
4.2 使用ABZ编码器获取转速和位置信息,可以使用M法和T法,MT法如何实现?还有就是通过PLL来获取转速和位置信息,如何实现?
更多推荐电机控制参考书见橱窗。
来源:浅谈电机控制