S7-200 SMART 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 系统手册》,上面有详细的阐述及例程。

下面有编程向导

高速输入降噪

要正确操作高速计数器,可能需要执行以下一项或两项操作:
● 调整 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 的输入电压是24V,因此电阻的额定0功率必须为高功率。 100 欧 5 瓦的电阻是一个合适的选择。

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

 

高速计数器指令向导

在 Micro/WIN SMART 中的命令菜单中选择 Tools(工具)> Wizards(向导)中选择 High Speed Counter(高速计数器向导) ,也可以在项目树中选择 Wizards(向导)文件夹中的 High Speed Counter(高速计数器向导)按钮,如图 1所示。


图 1.选择 HSC 向导

步骤一:选择 HSC 编号,如图 2所示。


图 2.选择计数器编号

步骤二:为计数器命名,在左侧树形目录中选择“高速计数器”,如图 3所示。


图 3.高速计数器命名

步骤三:选择计数器模式,详细信息请见“表1.高速计数器的模式及输入点”。


图 4.选择高速计数器模式

步骤四:配置初始化信息。


图 5. HSC 初始化选项

在上图中:

  1. 为初始化子程序命名,或者使用默认名称。
  2. 设置计数器预置值:可以为整数、双字地址或符号名:如 5000、VD100、PV_HC0。用户可使用全局符号表中双字整数对应的符号名。如果用户输入的符号名尚未定义,点击‘ Generate (生成)’后会看到:

    这个提示框显示:“这不是定义的全局符号。您希望定义符号吗”,点击“是”

    填入地址和注释,注意:地址必须为双字地址, 注释可以不填。
  3. 设置计数器初始值:可以为整数、双字地址或符号名:5000、VD100、CV_HC0。
  4. 初始化计数方向:增,减。
  5. 对于带外部复位端的高速计数器,可以设定复位信号为高电平有效或者低电平有效。
  6. 使用A/B相正交计数器时,可以将计数频率设为1倍速或4倍速。使用非A/B相正交计数器时,此项为虚。
  7. S7-200 SMART 均不支持带外部启动端的高速计数器,因此此项为虚。
    注意:所谓“高/低电平有效”指的是在物理输入端子上的有效逻辑电平,即可以使 LED 灯点亮的电平。这取决于源型/漏型输入接法,并非指实际电平的高、低。

步骤五:配置中断事件,如图 6所示。


图 6.配置中断

如图 6所示,一个高速计数器最多可以有 3 个中断事件,在白色方框中填写中断服务程序名称或者使用默认名称:

在这里配置的中断事件并非必须,系由用户根据自己的控制工艺要求选用。

  1. 外部复位输入有效值时中断,如果使用的高速计数器模式不具有外部复位端,则此项为虚。
  2. 方向控制输入状态改变时的中断,有以下 3 种情况会产生该中断:
    • 单项计数器的内部或外部方向控制位改变瞬间
    • 双相计数器增、减时钟交替的瞬间
    • A/B相脉冲相对相位(超前或滞后)改变时瞬间
  3. 当前值等于预置值时产生的中断,通过向导,可以在该中断的服务程序中重新设置高速计数器的参数,如预置值、当前值。一个这样的过程称为‘一步‘。

步骤六:配置 HSC 步数,如图 7所示,最多可设置 10 步。


图 7. 配置 HSC 步数

步骤七:定义高速计数器每一步的操作,如图 8所示:


图 8. HSC 第一步

在这里配置的是当前值等于设定值中断的服务程序中的操作:

  1. 向导会自动为当前值等于预置值匹配一个新的中断服务程序,用户可以对其重新命名,或者使用默认的名称。
  2. 勾选后,用户在右侧输入新的预置值。
  3. 勾选后,用户在右侧输入新的当前值。
  4. 如果选用的高速计数器模式有内部方向控制位。
  5. 使用相同的方法完成其余两步的设置

步骤八:完成向导,如图 9所示:


图 9. 完成向导

点击向导对话框左侧树形目录中的选项“组件(Components)”可以看到此时向导生成的子程序和中断程序名称及描述,点击“生成(Generate)”按钮,完成向导。

注意:Micro/WIN SMART 高速计数器指令向导采用树形目录的形式,用户可以直接在目录树中选择相应选项进行设置,这种方式便于用户在完成指令向导后根据实际需求进行快速修改。

步骤九:调用子程序:

注意:

  • HSC_INIT 为初始化子程序,请在主程序块中使用 SM0.1 或一条边沿触发指令调用一次此子程序。
  • 向导生成的中断服务程序及子程序都未上锁,用户可以根据自己的控制需要进行修改。
微信长按或扫描下方二维码(或加公众号:gkplc888)并关注,每天推送经典文章,电话/微信咨询:18861496300

抢沙发

评论已关闭!