s7200高速计数器详细解说.docx

上传人:牧羊曲112 文档编号:3165368 上传时间:2023-03-11 格式:DOCX 页数:14 大小:40.63KB
返回 下载 相关 举报
s7200高速计数器详细解说.docx_第1页
第1页 / 共14页
s7200高速计数器详细解说.docx_第2页
第2页 / 共14页
s7200高速计数器详细解说.docx_第3页
第3页 / 共14页
s7200高速计数器详细解说.docx_第4页
第4页 / 共14页
s7200高速计数器详细解说.docx_第5页
第5页 / 共14页
亲,该文档总共14页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《s7200高速计数器详细解说.docx》由会员分享,可在线阅读,更多相关《s7200高速计数器详细解说.docx(14页珍藏版)》请在三一办公上搜索。

1、s7200高速计数器详细解说s7-200高速计数器详细解说 1.高速计数器指令 普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。在PLC中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。 在S7-200的CPU22X中,高速计数器数量及其地址编号表如下 CPU类型 高速计数器数量 高速计数器编号 CPU221 4 HC0,HC3HC5 CPU222 CPU224 6 HC0HC5 CPU226 1高速计数器指令 高速计数

2、器的指令包括:定义高速计数器指令HDEF 和执行高速计数指令HSC,如表 HDEF HSC (1) 定义高速计数器指令HDEF HDE指令功能是为某个要使用的高速计数器选定一种工作模式。每个高速计数器在使用前,都要用HDEF指令来定义工作模式,并且只能用一次。它有两个输入端:HSC为要使用的高速计数器编号,数据类型为字节型,数据范围为05的常数,分别对应HC0 HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据范围为011的常数,分别对应12种工作模式。当准许输入使能EN有效时,为指定的高速计数器HSC定义工作模式MODE。 执行高速计数指令HSC HSC指令功能功能是根据与高速计数

3、器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。它有一个数据输入端N:N为高速计数器的编号,数据类型的字型,数据范围为05的常数,分别对应高速计数器HC0HC5.当准许输入EN使能有效时,启动N号高速计数器工作。 2高速计数器的输入端 高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。每个高速计数器专用的输入点如表 高速计数器的输入点 高速计数器标号 HC0 HC1 HC2 输入点 I0.0,I0.

4、1,I0.2 I0.6,I0.7,I1.0,11.1 I1.2,I1.3,I1.4,I1.5 高速计数器标号 HC3 HC4 HC5 输入点 I0.1 I0.3,I0.4,I0.5 I0.4 3高速计数器的状态字节 系统为每个高速计数器都在特殊寄存器区SMB提供了一个状态字节,为了监视高速计数器的工作状态,执行由高速计数器引用的中断事件,其格式如表。 高速计数器的状态字节 HC0 SM36.0 SM36.1 SM36.2 SM36.3 SM36.4 SM36.5 HC1 SM46.0 SM46.1 SM46.2 SM46.3 SM46.4 SM46.5 HC2 SM56.0 SM56.1 SM

5、56.2 SM56.3 SM56.4 SM56.5 HC3 SM36.0 SM36.1 SM36.2 SM36.3 SM36.4 SM36.5 HC4 SM146.0 SM146.1 SM146.2 SM146.3 SM146.4 SM146.5 HC5 SM156.0 SM156.1 SM156.2 SM156.3 SM156.4 SM156.5 当前计数的状态位0=减计数,1=增计数 当前值等于设定值的状态位0=不等于,1=等于 SM36.7 SM46.7 SM56.7 SM36.7 SM146.7 SM156.7 当前值大于设定值得状态位0=小于等于,1=大于 只有执行高速计数器的中断程

6、序时,状态字节的状态位才有效。 描述 不用 SM36.6 SM46.6 SM56.6 SM36.6 SM146.6 SM156.6 4.高速计数器的工作模式 高速计数器有12种不同的工作模式,分为4类。每个高速计数器都有多种工作模式,可以通过编程的方法,使用定义高速计数器指令HDEF来选定工作模式。 各个高速计数器的工作模式 1 高速计数器HC0是一个通用的增减计数器,工有8种模式,可也通过编程来选择不同的工作模式,HC0的工作模式如表 HC0的工作模式 模式 0 1 3 4 6 7 9 10 描述 内部方向控制的单向增/减计数器 外部方向控制的单向增/减计数器 控制位 SM37.3=0,减

7、SM37.3=1,增 I0.1=0,减 I0.1=1,增 I0.0 脉冲 脉冲 曾计数 脉冲 A相脉冲 I0.1 方向 减计数 脉冲 B相脉冲 I0.2 复位 复位 复位 复位 增/减计数脉冲输入控制外部输入控的双向计数器 制 A/B相正交计数器 A超前B,曾计数 B超前A,外部输入控制 减计数 2高速计数器HC1共有12种操作模式如表 HCI的操作模式 模式 描述 0 1 2 3 4 5 6 7 8 9 10 外部方向控制的单向增/减计数器 I0.7=0,减 I0.7=1,增 曾计数 脉冲 A相 脉冲 减计数 脉冲 B相 Mc 脉冲 方向 复位 启动 增/减计数脉冲输入外部输入控控制的双向计

8、数器 制 A/B相正交计数器 A超前B,曾计数 外部输入控制 复位 复位 启动 启动 内部方向控制的单向增/减计数器 控制位 I0.6 SM47.3=0,减 脉冲 SM47.3=1,增 I0.7 I1.0 复位 I1.1 启动 B超前A,减计数 11 3.高速计数器HC2共有12种操作模式,如表 0 1 2 3 4 5 6 7 8 9 10 11 A/B相正交计数器 A超前B,曾计数 B超前A,减计数 外部输入控制 A相 脉冲 B相 Mc 复位 外部方向控制的单向增/减计数器 I1.3=0,减 I1.3=1,增 脉冲 方向 复位 复位 HC2的操作模式 控制位 I1.2 SM573=0,减 脉

9、冲 SM57.3=1,增 I1.3 I1.4 复位 模式 描述 内部方向控制的单向增/减计数器 I1.5 启动 启动 增/减计数脉冲输入外部输入控控制的双向计数器 制 曾计数 脉冲 减计数 脉冲 启动 启动 4高速计数器HC3只有一种操作模式,如表 HC3的操作模式 模式 0 描述 控制位 内部方向控制的单向增/减计数器 SM137.0=0,减SM137.3=1,增 I0.1 ;脉冲 5.高速计数器HC4有8操作模式,如表 HC4的操作模式 模式 0 1 3 描述 内部方向控制的单向增/减计数器 外部方向控制的单向增/减计数控制位 SM147.3=0,减 SM147.3=1,增 I0.1=0,

10、减 I0.3 脉冲 脉冲 I0.4 方向 I0.5 复位 4 6 7 9 10 器 增/减计数脉冲输入控制的双向计数器 A/B相正A超前B,曾计数 交计数器 B超前A,减计数 I0.1=1,增 外部输入控制 增计数 脉冲 减计数 脉冲 复位 复位 外部输入控制 A相 脉冲 B相 脉冲 复位 6.高速计数器HC5只有一种操作模式如表 HC5的操作模式 模式 0 描述 控制位 内部方向控制的单向增/减计数器 SM157.3=0,减SM157.3=1,增 I0.4 脉冲 4.高速计数器的控制字节 系统为每个高速计数器都安排了一个特殊寄存器SMB作为控制字,可也通过对控制字节指定为的设置,确定高速计数

11、器的工作模式。S7-200在执行HSC指令前,首先要检查与每个高速计数器相关的控制字节,在控制字节中设置了启动输入信号和复位输入信号的有效电平,正交计数器的计数倍率,计数方向采用内部控制的有效电平,是否允许改变计数方向,是否允许更新设定值,是否允许更新当前值,以及是否允许执行高速计数指令。 HC2 高数计数器的控制字节 HC3 HC4 SM147.0 - SM147.2 SM147.3 SM147.4 SM147.5 SM147.6 SM147.7 HC5 - - - 描述 复位输入控制电平有效值:、 0=高电平有效,1=低电平有效 启动输入控制电平有效值: 0=高电平有效,1=低电平有效 倍

12、率选择:0=4倍率,1=1倍率 HCO HC1 SM37.0 SM47.0 SM57.0 - - SM47.1 SM57.1 - SM37.2 SM47.2 SM57.2 - SM37.3 SM47.3 SM57.3 SM137.3 SM37.4 SM47.4 SM57.4 SM137.4 SM37.5 SM47.5 SM57.5 SM137.5 SM37.6 SM47.6 SM57.6 SM137.6 SM37.7 SM47.7 SM57.7 SM137.7 SM157.3 计数方向控制:0为减1为曾 SM157.4 改变计数方向控制:0=不改变 1=准许改变 SM157.5 改变设定值控制

13、:0=不改变 1=准许改变 SM157.6 改变当前值控制:0=不改变 1=准许改变 SM157.7 高速计数控制:0=禁止计数 1=准许计数 说明: 在高速计数器的12种工作模式中,模式0、模式3、模式6和模式9,是既无启动输入,又无复位输入的计数器,在模式1、模式4、模式7和模式10中,是只有复位输入,而没有启动输入的计数器;在模式2、模式5、模式8和模式11中,是既有启动输入,又有复位输入的计数器。 当启动输入有效时,允许计数器计数;当启动输入无效时,计数器的当前值保持不变;当复位输入有效时,将计数器的当前值寄存器清零;当启动输入无效,而复位输入有效时,则忽略复位的影响,计数器的当前值保

14、持不变;当复位输入保持有效,启动输入变为有效时,则将计数器的当前值寄存器清零。 在S7-200中,系统默认的复位输入和启动输入均为高电平有效,正交计数器为4倍频,如果想改变系统的默认设置,需要设置如上表中的特殊继电器的第0,1,2位。 各个高速计数器的计数方向的控制,设定值和当前值的控制和执行高速计数的控制,是由表4-22中各个相关控制字节的第3位至第7位决定的。 6.高速计数器的当前值寄存器和设定值寄存器 每个高速计数器都有1个32位的经过值寄存器HC0-HC5,同时每个高速计数器还有1个32位的当前值寄存器和1个32位的设定值寄存器,当前值和设定值都是有符号的整数。为了向高速计数器装入新的

15、当前值和设定值,必须先将当前值和设定值以双字的数据类型装入如表所列的特殊寄存器中。然后执行HSC指令,才能将新的值传送给高速计数器。 HC0 SMD38 SMD42 HC1 SMD48 SMD52 HC2 SMD58 SMD62 高速计数器的当前值和设定值 HC3 SMD138 SMD142 HC4 SMD148 SMD152 HC5 SMD158 SMD162 说明 新当前值 新设定值 7.高速计数器的初始化 由于高速计数器的HDEF指令在进入RUN模式后只能执行1次,为了减少程序运行时间优化程序结构,一般以子程序的形式进行初始化。下面以HC2为例,介绍高速计数器的各个工作模式的初始化步骤。

16、 1 利用SM0.1来调用一个初始化子程序。 2 在初始化子程序中,根据需要向SMB47装入控制字。例如,SMB47=16#F8,其意义是:准许写入新的当前值,准许写入新的设定值,计数方向为曾计数,启动和复位信号为高电平有效。 3 执行HDEF指令,其输入参数为:HSC端为2,MODE端为0/1/2(对应工作模式0,模式1,模式2) 4 将希望的当前技术值装入SMD58(装入0可进行计数器的清零操作) 5 将希望的设定值装入SMD62 6 如果希望捕获当前值等于设定值的中断事件,编写与中断事件号16相关联的中断服务程序 7 如果希望捕获外部复位中断事件,编写与中断事件号18相关联的中断服务程序

17、。 8 执行ENI指令 9 执行HSC指令 10 退出初始化子程序 8高速计数器应用举例 某产品包装生产线用高速计数器对产品进行累计和包装,每检测1000个产品时,自动启动包装机进行包装,计数方向可由外部信号控制,。 设计步骤: 1 选择高速计数器,确定工作模式 在本例中,选择的高速计数器为HC0,由于要求技术方向可由外部信号控制,而其不要复位信号输入,确定工作模式为模式3,采用当前值等于设定值得中断事件,中断事件号为12,启动包装机工作子程序,高速计数器的初始化采用子程序。 2 用SM0.1调用高速计数器初始化子程序,子程序号为SBR_0 3 向SMB37写入控制字SMB37=16#F8 4 执行HDEF指令,输入参数:HSC为0,MODE为3 5 向SMD38写入当前值,SMD38=0 6 向SMD42写入设定值。SMD42=1000 7.,执行建立中断连接指令ATCH,输入参数:INT为INT-0,EVNT为12 8编写中断服务程序INT0,在本例中为调用包装机控制子程序,子程序号为SBR -1 9.执行全局开中断指令ENI 10.执行HSC指令,对高速计数器编程并投入运行。 MAIN SBR_0 SBR_1包装机控制程序不写了 INT_0

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号