控制编码器主轴速度同步的方法与流程

文档序号:11130763阅读:2234来源:国知局
控制编码器主轴速度同步的方法与制造工艺

本公开的实施例涉及一种控制编码器主轴速度同步的方法。



背景技术:

在应用于工厂自动化(FA)系统等的可编程逻辑控制器(PLC)的特定模块当中的定位模块用于控制电机。也就是说,定位模块的主要功能是输出用于激活伺服驱动器的脉冲。在由电机激活的被应用于许多系统的关注的机械装置中,定位模块在PLC系统中起着重要作用。

在定位模块的功能中编码器主轴速度同步是用于使用主轴比相对于小比率输出脉冲数的功能,该主轴比相对于短轴比是这样的比率,其使用编码器脉冲信号的数量而被设置为作为参考轴的主轴与作为控制目标的短轴。也就是说,编码器主轴速度同步基于主轴比相对于短轴比在控制时段期间使用编码器脉冲信号的数量来计算要在下一个控制时段期间输出的脉冲数。例如,编码器主轴速度同步使用在图1的第一持续时间11期间被输入的编码器脉冲信号的数量来计算要在图1的第二持续时间12期间输出的脉冲数。

控制定位模块的编码器主轴速度同步的过程将参照图1和图2来描述。定位模块以恒定控制时段运行。当开始控制时段时,定位模块验证被输入的编码器脉冲信号的数量是否存在。

在操作S21中当在控制时段期间输入的编码器脉冲信号的数量大于0时,在操作S22中定位模块对在每个控制时段中被输入的编码器脉冲信号进行计数来计算要在下一个控制时段期间输出的脉冲数。

例如,如果在第一持续时间11期间输入的编码器脉冲信号的数量为2并且主轴比相对于短轴比为2:2,则定位模块可以计算出要在第二持续时间12期间输出的脉冲数为4。如另一个示例,如果在第二持续时间12期间输入的编码器脉冲信号的数量为5并且主轴比相对于短轴比为5:5,则要在第三持续时间13期间输出的脉冲数可以被计算为25。

在操作S23中定位模块将计算出的值映射至下一个控制时段的输出,并且在操作S24中等待控制时段的剩余时间。

在另一方面,在操作S21中当输入的编码器脉冲信号的数量等于或小于0时,在操作S24中定位模块等待控制时段的剩余时间。

此外,控制编码器主轴速度同步的过程使用在定位模块的控制时段期间输入的编码器脉冲信号的数量来测量编码器输入速度,并且使用编码器输入速度来确定要在下一个控制时段期间输出的脉冲数。

参照图3,假设控制时段为1毫秒(ms)并且对编码器脉冲信号的上升沿进行计数,测量编码器输入速度的过程将被描述。由于在第一持续时间31期间输入的编码器脉冲信号的数量为6,所以编码器输入速度被测量为6kHz,并且在第二持续时间32期间输出对应于6kHz的脉冲。并且,由于在第二持续时间32期间输入的编码器脉冲信号的数量为7,所以编码器输入速度被测量为7kHz,并且在第三持续时间33期间输出对应于7kHz的脉冲。

在图3中,编码器脉冲信号的实际速度是恒定的,并且在第一持续时间31、第二持续时间32以及第三个持续时间33的每个期间输入的编码器脉冲信号的数量是不同的。因此,在第一持续时间31、第二持续时间32以及第三个持续时间33的每个处的编码器输入速度被不同地测量。

然而,如果输入的编码器脉冲信号的数量长于控制时段而超出该控制时段,则仅在编码器脉冲信号的上升沿被输入的控制时段期间测量编码器输入速度。因此,编码器输入速度不在其余控制时段期间被测量而导致在测量出的编码器输入速度中的非均匀性。

参照图4,当编码器脉冲信号长于控制时段而超出该控制时段时,假设控制时段为1ms并且对编码器脉冲信号的上升沿进行计数,测量编码器输入速度的过程将被描述。

由于在第一持续时间1期间输入的编码器脉冲信号的数量为1,所以编码器输入速度被测量为1kHz,并且在第二持续时间2期间输出对应于1kHz的脉冲。

然而,由于在第二持续时间2期间输入的编码器脉冲信号的数量为0,所以编码器速度被测量为0kHz,并且不存在对应于0kHz的脉冲使得在第三持续时间3期间不输出脉冲。

如在第二个持续时间2中,由于在第三持续时间3至第十持续时间10期间输入的编码器脉冲信号的数量为0,所以编码器输入速度被测量为0kHz,并且不存在对应于0kHz的脉冲使得在下一个持续时间期间不输出脉冲。

由于在第十一持续时间11期间输入的编码器脉冲信号的数量为1,所以编码器输入速度被测量为1kHz,并且在第十二持续时间12期间输出对应于1kHz的脉冲。

然而,由于在第十二持续时间12期间输入的编码器脉冲信号的数量为0,所以编码器速度被测量为0kHz,并且不存在对应于0kHz的脉冲使得在第十三持续时间13期间不输出脉冲。

如在第十二个持续时间12中,由于在第十三持续时间13至第十五持续时间15期间输入的编码器脉冲信号的数量为0,所以编码器输入速度被测量为0kHz,并且不存在对应于0kHz的脉冲使得在下一个持续时间期间不输出脉冲。

如上面所描述的,在编码器主速度同步的控制时由定位模块输出具有非恒定编码器输入速度的脉冲意味着电机没有恒定地旋转。也就是说,具有非恒定编码器输入速度的脉冲被输出以使得存在电机无法平稳地转动的问题。



技术实现要素:

本公开的目的是提供一种控制编码器主轴速度同步的方法,能够使用在每个编码器脉冲信号的输入时间处的计数值来计算编码器脉冲信号之间的间隔以根据编码器输入速度之间的间隔来测量编码器输入速度,从而准确地测量编码器速度。

此外,本公开的另一个目的是提供一种控制编码器主轴速度同步的方法,能够根据编码器输入速度来生成输出脉冲以将输出脉冲映射至下一个控制时段的输出,从而恒定地保持输出脉冲。

由本公开解决的一个或多个问题不限于上面所描述的,并且上面未提到的一个或多个其他问题将由那些本领域的技术人员从下面的公开而明显地理解。

在实施例中,一种在微处理器模块中被执行的控制编码器主轴速度同步的方法,当开始控制时段并且接收到编码器脉冲信号时,在编码器脉冲信号的输入时间处执行将计数值锁存至特定存储器,使用锁存至特定存储器的计数值来生成输出脉冲,并且将输出脉冲映射至下一个控制时段期间的输出。

其他实施例的细节被包括在详细描述和附图中。

本发明在此描述的优点和特征以及用于获得它们的方法将参照与详细描述的示例性实施例结合的附图而变得更显而易见。然而,本发明不限于此处所阐述的实施例并且其将以不同形式来实施,但是这些实施例也是本发明对本领域的那些技术人员的教学,这些实施例将被提供以讲述本发明的全部保护范围,并且本发明将仅由附属权利要求所限定。贯穿本说明书,相同参考数字指代类似组件。贯穿本公开,相同附图参考数字应该被理解为指代相同组件。

根据本公开,目的是提供一种控制编码器主轴速度同步的方法,能够每当输入编码器脉冲信号时使用在每个编码器脉冲信号的输入时间处的计数值来计算编码器脉冲信号之间的间隔以根据编码器输入速度之间的间隔来测量编码器输入速度,从而准确地测量编码器速度。

此外,根据本公开,另一个目的是提供一种控制编码器主轴速度同步的方法,能够根据编码器输入速度来生成输出脉冲以将输出脉冲映射至下一个控制时段的输出,从而恒定地保持输出脉冲。

附图说明

图1是用于描述定位模块的控制时段的图。

图2是用于描述控制定位模块的编码器主轴速度同步的过程的流程图。

图3和图4是用于描述测量编码器输入速度的过程的图。

图5是用于描述根据本公开的一个实施例的编码器主速度同步控制器的框图。

图6至图8是用于描述根据本公开的一个实施例的编码器主速度同步控制器的电路图。

图9是用于描述图5的微处理器模块的运行过程的图。

图10是用于描述根据本公开的测量编码器主轴速度的方法的流程图。

图11是描述用于根据本公开的控制编码器主轴速度同步的方法的一个实施例的流程图。

具体实施方式

在下文中,本公开的实施例将参照附图进行详细描述。

在此使用的术语的“控制时段(control period)”是指计算要在下一个控制时段期间输出的编码器脉冲信号的时间。这样的控制时段可以根据厂家和产品而不同,并且可以在几百微秒(μs)至几十毫秒(ms)的范围中。

例如,控制电机的系统的控制时段是指计算要被输出至电机的编码器脉冲信号的第一过程与将编码器脉冲信号施加至电机的第一过程之间的时间。

如上面所描述的,控制时段是指第一过程和第二个过程之间的时间,并且要在下一个控制时段期间输出的编码器脉冲信号针对这样的时间被计算。

图5是用于描述根据本公开的一个实施例的编码器主速度同步控制器的框图。

参照图5,根据本公开的一个实施例的编码器主速度同步控制器500包括信号提供模块510和微处理器模块520。

信号提供模块510处理编码器脉冲信号以提供被处理的信号作为微处理器模块520的外部中断输入信号。这样的信号提供模块510包括信号接收单元511、信号处理单元512和信号发送单元513。

信号接收单元511接收来自编码器的编码器脉冲信号。在此,编码器脉冲信号包括PULSE/DIR信号、CW/CCW信号以及PHASE信号。

信号处理单元512使用PULSE/DIR信号、CW/CCW信号以及PHASE信号中的至少一个来生成外部中断输入信号。

PULSE/DIR信号包括表示输入脉冲速度的脉冲信号以及表示编码器的旋转方向的方向信号。

CW/CCW信号包括表示当编码器以正向旋转时的输入脉冲速度的正向脉冲信号,以及表示当编码器以反向旋转时的输入脉冲速度的反向脉冲信号。

PHASE信号包括具有彼此不同相位的第一信号和第二信号。在第一信号和第二信号之间存在相位差,相位差表示当第一信号的相位提前于第二信号的相位的编码器正向,并且否则,相位差表示当第二信号的相位提前于第一信号的相位的编码器反向。PHASE信号在控制时段内的两个脉冲中生成。因此,当编码器脉冲输入模式是PHASE信号时,如果使用了输入编码器脉冲的频率的1/2,则频率测量可能与其他信号相同。

信号发送单元513提供由信号处理单元512处理的信号作为微处理器模块520的外部中断输入信号。

微处理器模块520包括能够在由用户所期的时段执行计数的计数器521,以及用于每当编码器脉冲信号被输入时在编码器脉冲信号的输入时间处将计数值锁存至特定存储器的直接存储器存取(DMA)单元522。此外,还包括速度测量单元523。速度测量单元523使用在编码器脉冲信号的输入时间处的计数值来计算编码器脉冲信号的平均间隔,从而测量编码器的速度。

计数器521在每个预定时段增加或减少特定存储器的计数值。此时,在要与控制时段同步的每个控制时段处计数值可以被初始化为0。

由计数器510生成的计数值可以被用来计算编码器脉冲信号之间的间隔。如上面所描述的,在编码器脉冲信号的输入时间处将计数值锁存至特定存储器的原因在于使用被锁存至特定存储器的计数值的间隔来计算编码器脉冲信号之间的间隔。

当从信号提供模块510输入编码器脉冲信号时,DMA单元522将由计数器521生成的计数值锁存至特定存储器。例如,当接收到外部中断的上升沿和下降沿时,DMA单元522可以将由计数器521生成的计数值锁存至特定存储器。速度测量单元523使用在编码器脉冲信号的输入时间处的计数值来计算编码器脉冲信号的平均间隔,从而测量编码器速度。

特别地,根据在编码器脉冲信号的输入时间处计数值至特定存储器的锁存次数,速度测量单元523确定在控制时段期间输入的编码器脉冲信号的数量。

此后,速度测量单元523可以对应于编码器脉冲信号的数量关于每个编码器脉冲信号使用在编码器脉冲信号的输入时间处锁存至存储器的计数值来计算编码器脉冲信号之间的平均间隔。也就是说,速度测量单元523可以根据在每个编码器脉冲信号的输入时间处锁存至存储器的计数值的变化来计算编码器脉冲信号之间的平均间隔。

如上面所描述的,速度测量单元523计算编码器脉冲信号之间的平均间隔来测量编码器输入速度,从而提供了优点,在于可以准确地测量编码器速度。

图6至图8是用于描述根据本公开的一个实施例的编码器主轴速度同步控制器的电路图。

参照图6至图8,信号提供模块510可以使用PULSE/DIR信号、CW/CCW信号以及PHASE信号来生成作为外部中断输入信号被提供至微处理器模块520的信号。

CW/CCW信号包括表示当编码器以正向移动时的输入脉冲速度的正向脉冲信号501,以及表示当编码器以反向移动时的输入脉冲速度的反向脉冲信号502。并且,正向脉冲信号501和反向脉冲信号502被用作或门(OR gate)506的输入。或门506的输出信号被用作MUX 508的输入。例如,如图7中所示,正向脉冲信号501和反向方向脉冲信号502可以被用作或门506的输入,并且或门506可以在正向脉冲信号501和反向方向脉冲信号502上执行或操作以输出信号。

PHASE信号包括具有彼此不同相位的第一信号503和第二信号504,并且第一信号503和第二信号504被用作异或门(XOR gate)507的输入。异或门507的输出信号被用作MUX 508的输入。例如,如图8中所示,第一信号503和第二信号504可以被用作异或门507的输入,并且异或门507可以对第一信号503和第二信号504执行异或操作以输出信号。

PULSE/DIR信号包括表示输入脉冲速度的脉冲信号和表示编码器的旋转方向的方向信号,并且脉冲信号和方向信号被用作MUX 508的输入。具体地,在本公开的一个实施例中,只有表示输入脉冲速度的脉冲信号可以被用作MUX 508的输入。

MUX 508输出并将或门506的输出信号、异或门507的输出信号以及PULSE/DIR信号中的一个信号作为中断输入信号提供至微处理器模块520。

图9是用于描述图5的微处理器模块的运行过程的图。

当接收到来自信号提供模块510的外部中断输入信号时,微处理器模块520使用外部中断输入信号作为触发信号。每当接收到外部中断输入信号时,在软件方法中存在对高速脉冲的将计数值拷贝至所期存储器的限制。因此,微处理器模块520可以在硬件方法中将计数值锁存至特定存储器。计数值可以在每个控制时段被初始化以与控制时段同步,从而测量编码器的输入速度。

图10是用于描述根据本公开的测量编码器主轴速度的方法的流程图。

参照图10,当开始控制时段时,在操作S1001中微处理器模块520验证被输入的编码器脉冲信号的数量是否存在。当在控制时段期间被输入的编码器脉冲信号的数量大于0时,在操作S1002中微处理器模块520计算编码器脉冲信号之间的间隔。

特别地,微处理器模块520根据编码器脉冲信号的输入时间处被锁存至特定存储器的计数值的次数来确定在控制时段期间被输入的编码器脉冲信号的数量。此后,微处理器模块520可以对应于编码器脉冲信号的数量关于每个编码器脉冲信号使用在编码器脉冲信号的输入时间处锁存至存储器的计数值来计算编码器脉冲信号之间的平均间隔。

也就是说,微处理器模块520可以根据在每个编码器脉冲信号的输入时间处锁存至存储器的计数值的变化来计算编码器脉冲信号之间的平均间隔。

微处理器模块520使用在控制时段期间被接收的编码器脉冲信号之间的平均间隔来生成要被映射至下一个时段的输出的脉冲。在操作S1004中微处理器模块520将生成的脉冲映射至下一个控制时段的输出,并且在操作S1005中等待控制时段的剩余时间。在另一方面,在操作S1001中当被输入的编码器脉冲信号的数量等于或小于0时,在操作S1005中微处理器模块520等待控制时段的剩余时间。

图11是描述用于根据本公开的控制编码器主轴速度同步的方法的一个实施例的流程图。

参照图11,在操作S1101中信号提供模块510处理多个编码器脉冲信号。

在S1101的一个实施例中,信号提供模块510可以使用PULSE/DIR信号、CW/CCW信号以及PHASE信号中的至少一个来生成编码器脉冲信号。

特别地,信号提供模块510对CW/CCW信号执行或操作并且对PHASE信号执行异或操作。此后,一信号作为或操作的结果被输出,一信号作为异或操作的结果被输出,并且PULSE/DIR信号可以通过MUX以生成编码器脉冲信号。

在操作S1102中信号提供模块510提供了被处理的编码器脉冲信号作为微处理器模块520的外部中断输入信号。

当接收到编码器脉冲信号时,在操作S1103中微处理器模块520在编码器脉冲信号的输入时间处将计数值锁存至特定存储器。如上面所描述的,在编码器脉冲信号的输入时间处计数值被锁定至特定存储器的原因是为了使用锁存至特定存储器的计数值来计算编码器脉冲信号之间的间隔。

在操作S1104中微处理器模块520基于被锁存的计数值来计算编码器脉冲信号之间的间隔以测量编码器输入速度。

特别地,微处理器模块520根据在编码器脉冲信号的输入时间处计数值至特定存储器的锁存次数来确定在控制期间输入的编码器脉冲信号的数量。

此后,微处理器模块520可以对应于编码器脉冲信号的数量关于每个编码器脉冲信号使用编码器脉冲信号的输入时间处被锁存至存储器的计数值来计算编码器脉冲信号之间的平均间隔。

也就是说,微处理器模块520可以根据在每个编码器脉冲信号的输入时间处锁存至存储器的每个计数值的变化来计算编码器脉冲信号之间的平均间隔。

如上面所描述的,微处理器模块520可以计算编码器脉冲信号之间的平均间隔来测量编码器输入速度,从而提供了优点,在于可以精确地测量编码器速度。

迄今为止,虽然已经描述了根据本公开的具体实施例,但是应该明白的是,在没有背离本公开的保护范围的情况下可以实施许多其他修改。因此,本公开的保护范围不应限于上面所描述的实施例,并且其应该由随后要被描述的附属权利要求以及其等同物限定。

根据本公开,目的是提供一种控制编码器主轴速度同步的方法,能够使用在每个编码器脉冲信号的输入时间处的计数值来计算编码器脉冲信号之间的间隔,并且根据编码器输入速度之间的间隔来测量编码器输入速度,从而准确地测量编码器速度。

此外,根据本公开,目的是提供一种控制编码器主轴速度同步的方法,该方法能够根据编码器输入速度来生成输出脉冲以将输出脉冲映射至下一个控制时段的输出,从而恒定地保持输出脉冲。

如上面所描述的,虽然已经结合示例性实施例和附图描述了本公开,但其不限于此,并且应该明白的是,各种改变和修改可以由本领域的那些技术人员从本文的公开而设计。因此,本公开的精神应该由随后描述的附属权利要求以及其等同体来解释并且等价的修改应该被包括在本公开的精神中。

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