一种通过DSP的CLB模块输出任意线数的编码器倍频方法技术

技术编号:39049170 阅读:13 留言:0更新日期:2023-10-10 12:02
本发明专利技术公开了一种通过DSP的CLB模块输出任意线数的编码器倍频方法,涉及主轴伺服控制器倍频编码器线数技术领域。包括以下步骤:S1:在DSP芯片程序中,开一个10ms的定时中断,采集10ms时间内编码器的脉冲差量个数Pluse0,通过原始的编码器线数Number0和倍频后的编码器线数Number1计算出倍频后的脉冲差量个数Pluse1,S2:通过步骤1计算出来的脉冲个数Pluse1和10ms时间T计算出倍频后的脉冲周期时间T

【技术实现步骤摘要】
一种通过DSP的CLB模块输出任意线数的编码器倍频方法


[0001]本专利技术涉及主轴伺服控制器倍频编码器线数
,具体为一种通过DSP的CLB模块输出任意线数的编码器倍频方法。

技术介绍

[0002]在编码器的倍频输出领域,大多数用于机床行业的数控系统接收伺服反馈回来的ABZ信号或者PLC接收伺服反馈回来的编码器位置,传统的编码器倍频的方法有1:通过搭建硬件电路来实现倍频输出;2:通过FPGA来实现编码器的倍频输出。
[0003]第一种方法倍频输出的倍数是固定不变,AB相位的超前也没法改变。很难达到现场任意线数倍频。第二种方法可以达到任意线数倍频和AB之间的相位也可以由FPGA来调整,但是需要在原来的电路上多加一块FPGA的芯片,这导致了产品的硬件成本和软件管理成本都大幅增加。

技术实现思路

[0004]本专利技术的目的在于提供一种通过DSP的CLB模块输出任意线数的编码器倍频方法,以解决上述
技术介绍
中提出的问题。
[0005]为实现上述目的,本专利技术提供如下技术方案:一种通过DSP的CLB模块输出任意线数的编码器倍频方法,包括以下步骤:
[0006]S1:在DSP芯片程序中,开一个10ms的定时中断,采集10ms时间内编码器的脉冲差量个数Pluse0,通过原始的编码器线数Number0和倍频后的编码器线数Number1计算出倍频后的脉冲差量个数Pluse1;
[0007]S2:通过步骤1计算出来的脉冲个数Pluse1和10ms时间T计算出倍频后的脉冲周期时间T
pluse
以及脉冲周期时间余数T
rem

[0008]S3:通过脉冲周期时间T
pluse
和CLB的时钟信号T
clk
,得出CLB的计数的MATCH值;
[0009]S4:通过CLB的查找表(LUT)来得出当前编码器的方向,方向为正输出高电平,方向反方向输出低电平,得出方向后以便于AB谁先跳变;
[0010]S5:在周期时间余数T
rem
时间内,CLB的计数块的MATCH减一,10ms时间内的其他时间还是MATCH值;
[0011]S6:根据S5刷新CLB的一路计数块的MATCH1和MATCH2的值;
[0012]S7:根据S6的结果,刷新CLB的其中一路计数块的MATCH1 REF和MATCH2REF寄存器,接着判断计数块的时钟计数值是否比当前计算出来MATCH值大,如果大,则把计数块的时钟计数值更新为MATCH值。该步骤计数块得到不包含方向的AB信号;
[0013]S8:根据S4和S7的结果,决定A信号先跳变还是B信号跳变,从而达到方向同步。
[0014]更进一步地,步骤S1中,Pluse1计算公式如下:
[0015]更进一步地,步骤S2中,计算公式如下:T
rem
=T%Pluse1。
[0016]更进一步地,步骤S3中,计算公式如下:
[0017]更进一步地,步骤S6中,计算公式如下:MATCH1=MATCH,
[0018]与现有技术相比,本专利技术的有益效果是:
[0019]该通过DSP的CLB模块输出任意线数的编码器倍频方法,与现有技术的区别在于,单位时间(T)内记录芯片捕捉到编码器的脉冲个数Pluse0,通过倍频数(M),再在下一个单位时间内输出倍频后的脉冲个数Pluse1,从而达到倍频。
附图说明
[0020]图1为本专利技术的方向的真值表示意图;
[0021]图2为本专利技术的MATCH的值示意图。
具体实施方式
[0022]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本专利技术保护的范围。
[0023]如图1

图2所示,本专利技术提供一种技术方案:一种通过DSP的CLB模块输出任意线数的编码器倍频方法。
[0024](1)在DSP芯片程序中,开一个10ms的定时中断,采集10ms时间内编码器的脉冲差量个数Pluse0,通过原始的编码器线数Number0和倍频后的编码器线数Number1计算出倍频后的脉冲差量个数Pluse1,计算公式如下:
[0025][0026](2)通过步骤1计算出来的脉冲个数Pluse1和10ms时间T计算出倍频后的脉冲周期时间T
pluse
以及脉冲周期时间余数T
rem
,计算公式如下:
[0027][0028]T
rem
=T%Pluse1
[0029](3)通过脉冲周期时间T
pluse
和CLB的时钟信号T
clk
,得出CLB的计数的MATCH值。计算公式如下:
[0030][0031](4)通过CLB的查找表(LUT)来得出当前编码器的方向,方向为正输出高电平,方向反方向输出低电平,得出方向后以便于AB谁先跳变。方向的真值表如图1所示。
[0032](5)在周期时间余数T
rem
时间内,CLB的计数块的MATCH减一,10ms时间内的其他时间还是MATCH值。MATCH的值如图2所示。
[0033](6)根据第5步刷新CLB的一路计数块的MATCH1和MATCH2的值,公式如下:
[0034]MATCH1=MATCH
[0035][0036](7)根据第6步的结果,刷新CLB的其中一路计数块的MATCH1 REF和MATCH2 REF寄存器,接着判断计数块的时钟计数值是否比当前计算出来MATCH值大,如果大则把计数块的时钟计数值更新为MATCH值。该步骤计数块得到不包含方向的AB信号。
[0037](8)根据第4步和第7步的结果,决定A信号先跳变还是B信号跳变,从而达到方向同步。
[0038]本专利技术提供了一种由DSP的CLB模块来实现编码器由低线数往高线数倍频方法,该方法可以实现任意线数倍频,输出的AB正交方波方向可调节。从而满足数控系统或者PLC接收伺服驱动器反馈的脉冲。
[0039]尽管已经示出和描述了本专利技术的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本专利技术的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本专利技术的范围由所附实施例及其等同物限定。
本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种通过DSP的CLB模块输出任意线数的编码器倍频方法,其特征在于,包括以下步骤:S1:在DSP芯片程序中,开一个10ms的定时中断,采集10ms时间内编码器的脉冲差量个数Pluse0,通过原始的编码器线数Number0和倍频后的编码器线数Number1计算出倍频后的脉冲差量个数Pluse1;S2:通过步骤1计算出来的脉冲个数Pluse1和10ms时间T计算出倍频后的脉冲周期时间T
pluse
以及脉冲周期时间余数T
rem
;S3:通过脉冲周期时间T
pluse
和CLB的时钟信号T
clk
,得出CLB的计数的MATCH值;S4:通过CLB的查找表(LUT)来得出当前编码器的方向,方向为正输出高电平,方向反方向输出低电平,得出方向后以便于AB谁先跳变;S5:在周期时间余数T
rem
时间内,CLB的计数块的MATCH减一,10ms时间内的其他时间还是MATCH值;S6:根据S5刷新CLB的一路计数块的MATCH1和MATC...

【专利技术属性】
技术研发人员:雷柏林
申请(专利权)人:江苏吉泰科电气有限责任公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1