·上一文章:基于FPGA控制的悬挂运动控制系统设计
·下一文章:基于FPGA的高速定点FFT算法的实现
OSG被脉冲信号的上升沿触发后,根据当前状态和方向信号,跳到下一个状态。当方向信号为正时,按照外环的逆时针方向切换状态,产生A'相超前B'相 90°的正交脉冲序列;当方向信号为负时,按照内环的顺时针方向切换状态,产生B'相超前A'相90°的正交脉冲序列,仿真如6所示。
图6中,dir为方向信号,其跳变沿即方向变化处。由图6可见,电机正转时顺序为10→11→01→00(反向)→01→11→10→…。实现了相位随输入信号的切换。
最后,对分周比功能整体结构进行仿真,输入为正交的脉冲序列。输入模仿实际电机光电编码器脉冲输出对脉冲相位反复切换以验证电机定位后的输出。仿真如图7所示。
从图7中可见,当输入信号pula,pulb相位不断切换时,输出pula1,pulb1按照3分频,满足3或-3后输出新的正交序列。实际实验波形如图8所示。
图8中,波形1、波形2分别是光电编码器输出的A相、B相正交脉冲。波形3、波形4分别是对A相、B相正交脉冲3分频后的A'相、B'相正交脉冲。观察图 7,图8,结果一致。用此方案实现的分周比已经成功应用于高精度伺服驱动器中,在实际应用中反复验证,未发现误差。
4 结 语
本文提出的分周比实现方法可以准确地将光电编码器输出的正交信号按照设定的分周比进行分频。通过设定分频比可以实现1~256倍的分频,甚至更高。在实际系统中,还可以利用MCU通过总线在线配置分周比。假如要实现分数比例的分周比,也只需在本方案基础上稍加改进即可。