Plc高速计数器和其操作方法

文档序号:9809779阅读:2812来源:国知局
Plc高速计数器和其操作方法
【技术领域】
[0001] 本发明涉及PLC高速计数器,并且更具体而言,涉及能够通过线性计数器模式中 的方程和当前值来计算PLC高速计数器的环形计数器模式中的当前值以使微处理器的中 断负载最小化以及改善性能的PLC高速计数器及其操作方法。
【背景技术】
[0002] 可编程逻辑控制器(PLC)是用于对高速脉冲串(诸如来自于脉冲发生器或不能利 用典型的计数命令进行处理的编码器的信号)进行计数的模块。
[0003] 大体上,为了操作PLC高速计数器,通过使用诸如PC或者HMI的装置来建立用于 PLC高速计数器的模式。在这个情形中,取决于所建立的模式,PLC高速计数器操作在线性 计数器模式下或环形计数器模式下。
[0004] 在所建立的模式中,PLC高速计数器对从编码器输入的高速脉冲串进行计数并且 随后存储当前值。
[0005] 当PLC高速计数器在环形计数器模式中时,PLC高速计数器对脉冲串进行计数以 使得计数值位于由用户设置的最小环形计数值和最大环形计数值之间,并且随后存储当前 值。
[0006] 当PLC高速计数器在线性计数器模式中时,PLC高速计数器对脉冲串进行计数以 使得计数值位于计数范围内,并且随后存储当前值。
[0007] PC或者HMI从PLC高速计数器读取当前值并且将其显示在屏幕上以通知用户当前 的计数值(当前被计数的值)。
[0008] 图1示出了当最大计数范围被标识为32比特时根据PLC高速计数器的计数器模 式对当前值进行计数的处理。
[0009] 图1(a)示出了对在PLC高速计数器的线性计数器模式中的当前值进行计数的处 理。
[0010] 当脉冲串被输入至PLC高速计数器时,PLC高速计数器根据添加条件来添加当前 值。一旦当前值达到计数范围的上限(2, 147, 483, 647)时,PLC高速计数器不再执行添加, 即使添加条件被触发也是如此。
[0011] 另一方面,一旦在PLC高速计数器根据减除条件减去当前值之后当前值达到计数 范围的下限(-2, 147, 483, 647),PLC高速计数器就不再执行减除,即使减法条件被触发也 是如此。
[0012] 图1(b)示出了对在PLC高速计数器的线性计数器模式中的当前值进行计数的处 理。当PLC高速计数器操作在环形计数器模式中时,用户设置最大环形计数值和最小环形 计数值。
[0013] 当脉冲串被输入至PLC高速计数器时,PLC高速计数器根据添加条件或减除条件 来对当前值进行添加或减除。
[0014] 在这个情形中,在PLC高速计数器对当前值进行添加之后当前值达到最大环形计 数值的时刻,进位(Carry)被触发并且当前值改变为最小环形计数值。此后,当添加条件被 触发时,PLC高速计数器执行添加。
[0015] 另一方面,在PLC高速计数器对当前值进行减除之后当前值达到最小环形计数值 的时刻,借位(Borrow)被触发并且当前值变化为最大环形计数值。此后,当减除条件被触 发时,PLC高速计数器执行减除。
[0016] 图2为示出根据传统技术的PLC高速计数器的计数处理的流程图。
[0017] 当脉冲串被输入至PLC高速计数器时,PLC高速计数器使PLC扫描程序暂停,生成 中断并且每次当PLC高速计数器感测上升沿和下降沿时执行计数处理程序。
[0018] 在这个情形中,如图2所示,每当脉冲串被输入时,PLC高速计数器在中断例程中 确定计数器模式是否为线性计数器模式或环形计数器模式。从而,PLC高速计数器执行分 支以实施添加、减除或环形计数。
[0019] 相应地,在传统情形中,当中断在输入脉冲串的每个沿处被触发之后,高速计数器 功能需要被执行,并且根据如图2中显示的计数模型,复杂的分支处理应该被执行。从而, 长的时间被采用来处理中断。
[0020] 因而,当高速脉冲串被输入时,PLC高速计数器的MPU的源被过多地占据以处理中 断并且因此PLC扫描程序的处理速度被降低。
[0021] 此外,当高速脉冲串通过多个高速计数器通道被同时输入时,输入脉冲也许不能 被计数。
[0022] 此外,处理例程的分支针对相应的计数是必需的,并且因此软件容量增加,长的时 间被采用以执行写入,并且软件很难被保持。

【发明内容】

[0023] 技术问题
[0024] 设计为解决问题的本公开的目标是提供一种能够通过用于线性计数器模式的方 程和当前值来计算PLC高速计数器的环形计数器模式中的当前值以使微处理器的中断负 载最小化以及改善性能的PLC高速计数器及其操作方法。
[0025] 技术方案
[0026] 根据本公开的方面,通过提供可编程逻辑控制器(PLC)高速计数器的操作方法来 实现上述和其他目标,该操作方法包括:当脉冲被输入时以线性计数方式对脉冲进行计数, 并且生成计数值,将计数值存储在缓冲器中作为当前线性计数值,当从外部装置输入当前 值请求时确定PLC高速计数器的模式,并且,当作为所述确定的结果将PLC高速计数器模式 确定为环形计数器模式时将对应于当前线性计数值的当前环形计数值传送到外部装置。
[0027] 所述方法进一步包括在执行PLC高速计数器的模式的确定之前,基于计数值来计 算当前环形计数值并且将当前环形计数值存储在缓冲器中。
[0028] 此处,当前环形计数值的传送可以包括将存储在缓冲器中的当前环形计数值传送 到外部装置。
[0029] 此外,当前环形计数值的传送可以包括在执行PLC高速计数器的模式的确定之 后,基于存储在缓冲器中的作为当前线性计数值的计数值(count value)来计算当前环形 计数值,并且将计算出的当前环形计数值(current ring count value)传送到外部装置。
[0030] 当前环形计数值可以由以下方程来计算:
[0033] 此处,RINGmx表示最大环形计数值,RING MIN表示最小环形计数值,以及FLOOR ()表 示FLOOR函数。
[0034] 所述方法还进一步包括,当作为所述确定的结果而PLC高速计数器的模式为线性 计数器模式时,将存储在缓冲器中的当前线性计数值传送至外部装置。
[0035] 有益效果
[0036] 传统地,根据PLC高速计数器的模式,不同的处理被分支并且被执行。与此形成对 照,根据本发明的实施例,在PLC高速计数器的环形计数器模式中的当前值通过当前值和 线性计数器模式中的方程而被计算。
[0037] 相应地,在PLC高速计数器的任意模式中来执行一个处理。因此,不必要的分支操 作被排除并且中断处理时间可以被减少。
[0038] 此外,由于根据PLC高速计数器的模式来执行不同的分支处理,因此传统PLC高速 计数器具有增加软件容量和处理时间的问题。与此形成对照,根据本公开的实施例,当存在 来自于外部装置的针对当前值的请求时,仅仅需要在对应的方程中计算当前环形计数值, 并且仅短的中断处理被执行。因此,由过载引起的PLC扫描程序的执行时间的增加以及性 能降级可以被防止。
【附图说明】
[0039] 参考所附附图,通过采用的以下详细描述,本公开的上述目标及其他目标、特征以 及其他益处将变得显而易见,其中:
[0040] 图1示出了根据传统PLC高速计数器的计数器模式对当前值进行计数的处理;
[0041] 图2为示出传统PLC高速计数器的计数处理的流程图。
[0042] 图3为示出根据本公开实施例的PLC高速计数器的框图;
[0043] 图4为示出根据本公开的第一实施例的PLC高速计数器的计数器处理的流程图;
[0044] 图5为示出传送根据本公开的第一实施例的
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1