进口调节阀

进口调节阀

进口减压阀

进口电磁阀

微信扫码
在线客服
用户中心 意见反馈
热线电话
返回顶部
广州鸿懿电气设备有限公司

    西门子S7-1200PLC高速计数器功能简介

    分享到:
    点击次数:5190 更新时间:2018年07月07日10:34:42 打印此页 关闭

    1.高速计数器
    S7-1200 CPU提供了最多6个(1214C)高速计数器,其独立于CPU的扫描周期进行计数。可测量的单相脉冲频率最高为100KHz,双相或A/B相最高为30KHz,除用来计数外还可用来进行频率测量,高速计数器可用于连接增量型旋转编码器,用户通过对硬件组态和调用相关指令块来使用此功能。


    2.高速计数器工作模式

    高速计数器定义为5种工作模式

    • 计数器,外部方向控制。
    • 单相计数器,内部方向控制。
    • 双相增/减计数器,双脉冲输入。
    • A/B相正交脉冲输入。
    • 监控PTO输出。

    每种高速计数器有两种工作状态。

    • 外部复位,无启动输入。
    • 内部复位,无启动输入。

    所有的计数器无需启动条件设置,在硬件向导中设置完成后下载到CPU中即可启动高速计数器,在A/B相正交模式下可选择1X(1倍) 和4X(4倍)模式,高速计数功能所能支持的输入电压为24V DC,目前不支持5V DC的脉冲输入,表1列出了高速计数器的硬件输入定义和工作模式

    描述输入点定义功能
    HSCHSC1使用CPU集成I/O或信号板或监控PTO0I0.0I0.1I0.3
    I4.0I4.1
    PTO 0 PTO 0 方向
    HSC2使用CPU集成I/O或监控PTO0I0.2I0.3I0.1
    PTO 1 PTO 1 方向
    HSC3使用CPU集成I/OI0.4I0.5I0.7
    HSC4使用CPU集成I/OI0.6I0.7I0.5
    HSC5使用CPU集成I/O或信号板I1.0I1.1I1.2
    I4.0I4.1
    HSC6使用CPU集成I/OI1.3I1.4I1.5
    模式单相计数,内部方向控制时钟

    计数或频率
    复位计数
    单相计数,外部方向控制时钟方向
    计数或频率
    复位计数
    双相计数,两路时钟输入增时钟减时钟
    计数或频率
    复位计数
    A/B相正交计数AB
    计数或频率
    Z计数
    监控PTO输出 时钟方向
    计数

    表1 高速计数器硬件输入定义与工作模式

    并非所有的CPU都可以使用6个高速计数器,如1211C只有6个集成输入点,所以最多只能支持4个(使用信号板的情况下)高速计数器。
    由于不同计数器在不同的模式下,同一个物理点会有不同的定义,在使用多个计数器时需要注意不是所有计数器可以同时定义为任意工作模式。
    高速计数器的输入使用与普通数字量输入相同的地址,当某个输入点已定义为高速计数器的输入点时,就不能再应用于其它功能,但在某个模式下,没有用到的输入点还可以用于其它功能的输入
    监控PTO的模式只有HSC1和HSC2支持,使用此模式时,不需要外部接线,CPU在内部已作了硬件连接,可直接检测通过PTO功能所发脉冲。


    3高速计数器寻址
    CPU将每个高速计数器的测量值,存储在输入过程映像区内,数据类型为32位双整型有符号数,用户可以在设备组态中修改这些存储地址,在程序中可直接访问这些地址,但由于过程映像区受扫描周期影响,在一个扫描周期内,此数值不会发生变化,但高速计数器中的实际值有可能会在一个周期内变化,用户可通过读取外设地址的方式,读取到当前时刻的实际值。以ID1000为例,其外设地址为“ID1000:P”。表2 所示为高速计数器寻址列表

    高速计数器号数据类型默认地址
    HSC1DINTID1000
    HSC2DINTID1004
    HSC3DINTID1008
    HSC4DINTID1012
    HSC5DINTID1016
    HSC6DINTID1020

    表1 高速计数器寻址

     

    4频率测量
    S7-1200 CPU除了提供计数功能外,还提供了频率测量功能,有3种不同的频率测量周期:1.0秒,0.1秒和0.01秒,频率测量周期是这样定义的:计算并返回新的频率值的时间间隔。返回的频率值为上一个测量周期中所有测量值的平均,无论测量周期如何选择,测量出的频率值总是以Hz(每秒脉冲数)为单位。

     

    5高速计数器指令块

    高速计数器指令块,需要使用指定背景数据块用于存储参数。图1所示为高速计数器指令块


    图1高速计数器指令块

    表3所示为高速计数器指令块参数说明

      HSC  (HW_HSC)  高速计数器硬件识别号
      DIR  (BOOL)  TRUE =使能新方向
      CV  (BOOL)  TRUE = 使能新初始值
      RV (BOOL)  TRUE = 使能新参考值
      PERIODE  (BOOL)  TRUE = 使能新频率测量周期
      NEW_DIR  (INT)  方向选择1=正向
                    0=反向
      NEW_CV  (DINT) 新初始值
      NEW_RV  (DINT) 新参考值
      NEW_PERIODE  (INT) 新频率测量周期 

    表1 高速计数器指令块参数

     

    6应用举例
    为了便于理解如何使用高速计数功能,通过一个例子来学习组态及应用。
    假设在旋转机械上有单相增量编码器作为反馈,接入到S7-1200 CPU,要求在计数25个脉冲时,计数器复位,并重新开始计数,周而复始执行此功能。
    针对此应用,选择CPU 1214C,高速计数器为:HSC1。模式为:单相计数,内部方向控制,无外部复位。据此,脉冲输入应接入I0.0,使用HSC1的预置值中断(CV=RV)功能实现此应用。

    组态步骤:

    • 先在设备与组态中,选择CPU,单击属性,激活高速计数器,并设置相关参数。此步骤必须实现执行,1200的高速计数器功能必须要先在硬件组态中激活,才能进行下面的步骤
    • 添加硬件中断块,关联相对应的高速计数器所产生的预置值中断
    • 在中断块中添加高速计数器指令块,编写修改预置值程序,设置复位计数器等参数
    • 将程序下载,执行功能


    1硬件组态
    选中CPU如图2


    图2选中CPU


    图3所示为选择属性打开组态界面


    图3 选择属性打开组态界面

    激活高速计数功能如图4


    图4 激活高速计数功能

    计数类型,计数方向组态如图5所示


    图5 计数类型,计数方向

    1 此处计数类型分为3种,Axis of motion(运动轴),Frequency(频率测量),Counting(计数)。这里选择Counting
    2 模式分为4种:Single phase(单相), Two phase(双相), AB Quadrature 1X(A/B相正交1倍速), AB Quadrature 4X(A/B相正交4倍速)。这里择Single phase
    3 输入源,这里使用的为CPU集成输入点。
    4 计数方向选择,这里选用User program (internal direction control)(内部方向控制)
    5初始计数方向。这里选择Count up(向上计数)
    初始值及复位组态如图6


    图6 初始值及复位组态

    预置值中断组态如图7


    图7 预置值中断组态


    图8 添加硬件中断

    组态添加的硬件中断,如图8


    图8 组态添加的硬件中断

    地址分配与硬件识别号如图9


    图9 地址分配与硬件识别号

    至此硬件组态部分已经完成,下面进行程序编写


    2程序编写
    将高速计数指令块添加到硬件中断中



    图10 打开硬件中断块                             图11 添加高速计数器

     


    图12 定义高速计数器背景数据块

    程序视图如图13


    图13 程序视图

    1 这里就是图9中系统指定的高速计数器硬件识别号,这里填1
    2 “1”为使能更新初值
    3 “0”新初始值为0
    至此程序编制部分完成,将完成的组态与程序下载到CPU后即可执行,当前的计数值可在ID1000中读出 ,关于高速计数器指令块,若不需要修改硬件组态中的参数,可不需要调用,系统仍然可以计数。

    上一条:西门子S7-1200PLC与S7-300PLC通信通过S7协议实现 下一条:怎么转换S7-1200PLCCPU模拟量
    • 发表评论
    • 查看评论
    文明上网理性发言,请遵守评论服务协议。
    首页 上一页 下一页 尾页