CPU 本体集成高速计数器

S7-200 SMART CPU具有集成的、硬件高速计数器。

固件版本V1.0 的CPU SR20、 CPU SR40、 CPUST40 、CPU SR60 和 CPU ST60可以使用4个60kHz单相高速计数器或2个40kHz的两相高速计数器,而CPU CR40可以使用4个30kHz单相高速计数器或2个20kHz的两相高速计数器。

固件版本V2.0 到V2.2的标准型CPU(ST/SR20、ST/SR30、ST/SR40、ST/SR60)可以使用4个200kHz单相高速计数器或2个100kHz的两相高速计数器,而紧凑型CPU CR40、CR60可以使用4个100kHz单相高速计数器或2个50kHz的两相高速计数器。

固件版本V2.3 的标准型CPU支持6个高速计数器,具体请参考表1和表2。

表1 标准CPU高速计数器

 
标准型CPU 参数 CPU SR20
AC/DC/Relay
CPU ST20
DC/DC/DC
CPU SR30
AC/DC/Relay
CPU ST30
DC/DC/DC
CPU ST40 DC/DC/DC CPU SR40 AC/DC/Relay CPU ST60
DC/DC/DC
CPU SR60
AC/DC/Relay
高速计数器 6(全部) 6(全部) 6(全部) 6(全部)
——单相/双相 4 @ 200 KHz +2 @30 KHz 5 @ 200 KHz +1 @30 KHz 4 @ 200 KHz +2 @30 KHz 4 @ 200 KHz +2 @30 KHz
——A/B相 2 @ 100 KHz+ 2@20Kz 3 @ 100 KHz+ 1@20Kz 2 @ 100 KHz+ 2@20Kz 2 @ 100 KHz+ 2@20Kz

表2 经济型CPU参数

 
经济型CPU 参数 CPU CR20s
AC/DC/Relay
CPU CR30s
AC/DC/Relay
CPU CR40s AC/DC/Relay CPU CR60s
AC/DC/Relay
高速计数器 4(全部)
——单相/双相 4 @100 KHz 4 @ 100 KHz 4 @ 100 KHz 4 @ 100 KHz
——A/B相 2 @ 50 KHz 2 @ 50 KHz 2 @ 50 KHz 2 @ 50 KHz

计数器共有四种基本类型:带有内部方向控制的单相计数器,带有外部方向控制的单相计数器,带有两个时钟输入的双相计数器和A/B相正交计数器。

表3. 高速计数器的模式及输入点:

模式 描述 输入点
  HSC0 I0.0 I0.1 I0.4
HSC1 I0.1    
HSC2 I0.2 I0.3 I0.5
HSC3 I0.3    
HSC4 I0.6 I0.7 I1.2
HSC5 I1.0 I1.1 I1.3
0 带有内部方向控制的单相计数器 时钟    
1 时钟   复位
3 带有外部方向控制的单相计数器 时钟 方向  
4 时钟 方向 复位
6 带有增减计数时钟的双相计数器 增时钟 减时钟  
7 增时钟 减时钟 复位
9 A/B相正交计数器 时钟A 时钟B  
10 时钟A 时钟B 复位

表4. 高速计数器的寻址

高速计数器号 HSC0 HSC1 HSC2 HSC3 HSC4 HSC5
新当前值(新 CV) SMD38 SMD48 SMD58 SMD138 SMD148 SMD158
新预置值(新 PV) SMD42 SMD52 SMD62 SMD142 SMD152 SMD162
当前计数值(仅读出) HC0 HC1 HC2 HC3 HC4 HC5

高速计数器的具体编程及相关的中断和其它参数,请参见《S7-200 SMART 系统手册》,上面有详细的阐述及例程。

STEP 7-Micro/WIN SMART提供了一个方便实用的高速计数器指令编程向导,用户可以简单快速地配置自己的高速计数器功能。

高速输入降噪

要正确操作高速计数器,可能需要执行以下一项或两项操作:
● 调整 HSC 通道所用输入通道的“系统块”数字量输入滤波时间。 在 S7-200 SMART CPU 中。 在 HSC 通道对脉冲进行计数前应用输入滤波。 这意味着,如果 HSC 输入脉冲以输入滤波过滤掉的速率发生,则 HSC 不会在输入上检测到任何脉冲。 请务必将 HSC 的每路输入的滤波时间组态为允许以应用需要的速率进行计数的值。 包括方向和复位输入。 下表显示可检测到的每种输入滤波组态的最大输入频率。

表5.输入滤波设置和可检测到的最大输入频率

输入滤波时间 可检测到的最大频率
0.2μs 200KHz (标准型CPU)
100KHz(紧凑型或经济型CPU)
0.4μs 200KHz (标准型CPU)
100KHz(紧凑型或经济型CPU)
0.8μs 200KHz (标准型CPU)
100KHz(紧凑型或经济型CPU)
1.6μs 200KHz (标准型CPU)
100KHz(紧凑型或经济型CPU)
3.2μs 156KHz (标准型CPU)
100KHz(紧凑型或经济型CPU)
6.4μs 78kHz
12.8μs 39 kHz
0.2ms 2.5kHz
0.4ms 1.25kHz
0.8ms 625 Hz
1.6ms 312 Hz
3.2ms 156 Hz
6.4ms 78 Hz
12.8ms 39 Hz

输入逻辑电平有效电压范围

表6. 输入逻辑电平有效电压范围

CPU型号 逻辑1信号(最小) 逻辑0信号(最大)
SR、CR、CRS 2.5mA时 15VDC 1mA时 5VDC
ST20/30

I0.0-I0.3:8mA时 4VDC
I0.6-I0.7:8mA时 4VDC
其他:2.5mA时15VDC

I0.0-I0.3:1mA时 1VDC
I0.6-I0.7:1mA时 1VDC
其他:1mA时5VDC
CPU ST40/60 I0.0-I0.3:8mA时 4VDC
其他:2.5mA时15VDC
I0.0-I0.3:1mA时 1VDC
其他:1mA时 5VDC

●加入下拉电阻是为了使输入输出信号达到其逻辑电平有效范围。 如果设备的输出是集电极开路晶体管,则可能出现这种情况。 晶体管关闭时,没有任何因素将信号驱动为低电平状态。 信号将转换为低电平状态,但所需时间将取决于电路的输入电阻和电容。 这种情况可能导致脉冲丢失。 可通过将下拉电阻接到输入信号的方法避免这种情况,如下图所示。 由于 CPU 的输入电压是24V,因此电阻的额定0功率必须为高功率。 100 欧 5 瓦的电阻是一个合适的选择。

图1. 集电极开路HSC输入驱动接线下拉电阻