s7200高速计数器详细解说.docx
- 文档编号:1016183
- 上传时间:2022-10-15
- 格式:DOCX
- 页数:8
- 大小:53.94KB
s7200高速计数器详细解说.docx
《s7200高速计数器详细解说.docx》由会员分享,可在线阅读,更多相关《s7200高速计数器详细解说.docx(8页珍藏版)》请在冰豆网上搜索。
s7200高速计数器详细解说
s7-200高速计数器详细解说
s7-200高速计数器详细解说1.高速计数器指令
普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。
在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。
在PLC中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。
在S7-200的CPU22X中,高速计数器数量及其地址编号表如下
CPU类型CPU221CPU222CPU224CPU226高速计数器数量46高速计数器编号HC0,HC3~HC5HC0~HC5
1(高速计数器指令
高速计数器的指令包括:
定义高速计数器指令HDEF和执行高速计数指令HSC,如表
HDEFHSC
(1)定义高速计数器指令HDEF
HDE指令功能是为某个要使用的高速计数器选定一种工作模式。
每个高速计数器在使用
前,都要用HDEF指令来定义工作模式,并且只能用一次。
它有两个输入端:
HSC为要
使用的高速计数器编号,数据类型为字节型,数据范围为0~5的常数,分别对应HC0~
HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据范围为0~11的常数,分
别对应12种工作模式。
当准许输入使能EN有效时,为指定的高速计数器HSC定义工
作模式MODE。
(2)执行高速计数指令HSC
HSC指令功能功能是根据与高速计数器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。
它有一个数据输入端N:
N为高速计数器的编号,数据类型的字型,数据范围为0~5的常数,分别对应高速计数器HC0~HC5.当准许输入EN使能有效时,启动N号高速计数器工作。
2(高速计数器的输入端
高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
每个高速计数器专用的输入点如表
高速计数器的输入点
高速计数器标号输入点高速计数器标号输入点HC0I0.0,I0.1,I0.2HC3I0.1HC1I0.6,I0.7,I1.0,11.1HC4I0.3,I0.4,I0.5HC2I1.2,I1.3,,I1.4,I1.5HC5I0.43(高速计数器的状态字节
系统为每个高速计数器都在特殊寄存器区SMB提供了一个状态字节,为了监视高速计数器的工作状态,执行由高速计数器引用的中断事件,其格式如表。
高速计数器的状态字节
HC0HC1HC2HC3HC4HC5描述SM36.0SM46.0SM56.0SM36.0SM146.0SM156.0不用SM36.1SM46.1SM56.1SM36.1SM146.1SM156.1SM36.2SM46.2SM56.2SM36.2SM146.2SM156.2SM36.3SM46.3SM56.3SM36.3SM146.3SM156.3SM36.4SM46.4SM56.4SM36.4SM146.4SM156.4SM36.5SM46.5SM56.5SM36.5SM146.5SM156.5当前计数的状态位0=
减计数,1=增计数SM36.6SM46.6SM56.6SM36.6SM146.6SM156.6当前值等于设定值的状
态位0=不等于,1=等于SM36.7SM46.7SM56.7SM36.7SM146.7SM156.7当前值大于设定值得状
态位0=小于等于,1=大
于只有执行高速计数器的中断程序时,状态字节的状态位才有效。
4.高速计数器的工作模式
高速计数器有12种不同的工作模式(0`~11),分为4类。
每个高速计数器都有多种工作模式,可以通过编程的方法,使用定义高速计数器指令HDEF来选定工作模式。
(1)各个高速计数器的工作模式
1(高速计数器HC0是一个通用的增减计数器,工有8种模式,可也通过编程来选择
不同的工作模式,HC0的工作模式如表
HC0的工作模式
模式描述控制位I0.0I0.1I0.20内部方向控制的单向增/SM37.3=0,减脉冲
减计数器1SM37.3=1,增复位3外部方向控制的单向增/I0.1=0,减脉冲方向
减计数器4I0.1=1,增复位6增/减计数脉冲输入控制外部输入控曾计数减计数
的双向计数器制脉冲脉冲7复位9A/B相正交A超前B,外部输入控A相脉冲B相脉冲
计数器曾计数制
10B超前A,复位
减计数
2高速计数器HC1共有12种操作模式如表
HCI的操作模式
模式描述控制位I0.6I0.7I1.0I1.10内部方向控制的单向SM47.3=0,减脉冲
增/减计数器SM47.3=1,增1复位2启动3外部方向控制的单向I0.7=0,减脉冲方向
增/减计数器I0.7=1,增4复位5启动6增/减计数脉冲输入外部输入控曾计数减计数
控制的双向计数器制脉冲脉冲7复位8启动9A/B相正交计数器外部输入控A相B相
A超前B,曾计数制脉冲Mc10复位
B超前A,减计数11启动3.高速计数器HC2共有12种操作模式,如表
HC2的操作模式
模式描述控制位I1.2I1.3I1.4I1.50内部方向控制的单向SM573=0,减脉冲
增/减计数器SM57.3=1,增1复位2启动3外部方向控制的单向I1.3=0,减脉冲方向
增/减计数器I1.3=1,增4复位5启动6增/减计数脉冲输入外部输入控曾计数减计数
控制的双向计数器制脉冲脉冲7复位8启动9A/B相正交计数器外部输入控A相B相
A超前B,曾计数制脉冲Mc10复位
B超前A,减计数11启动4高速计数器HC3只有一种操作模式,如表
HC3的操作模式
模式描述控制位I0.10内部方向控制的单向增/减计数器SM137.0=0,减;脉冲
SM137.3=1,增
5.高速计数器HC4有8操作模式,如表
HC4的操作模式
模式描述控制位I0.3I0.4I0.50内部方向控制的单向增/减计数SM147.3=0,减脉冲
器1SM147.3=1,增复位3外部方向控制的单向增/减计数I0.1=0,减脉冲方向
4器I0.1=1,增复位
外部输入控制增计数减计数6增/减计数脉冲输入控制的双向脉冲脉冲
计数器7复位
9A/B相正A超前B,曾计数外部输入控制A相B相
交计数器脉冲脉冲
10B超前A,减计数复位6.高速计数器HC5只有一种操作模式如表
HC5的操作模式
模式描述控制位I0.40内部方向控制的单向增/减计数器SM157.3=0,减SM157.3=1,增脉冲
4.高速计数器的控制字节
系统为每个高速计数器都安排了一个特殊寄存器SMB作为控制字,可也通过对控制字节指定为的设置,确定高速计数器的工作模式。
S7-200在执行HSC指令前,首先要检查与每个高速计数器相关的控制字节,在控制字节中设置了启动输入信号和复位输入信号的有效电平,正交计数器的计数倍率,计数方向采用内部控制的有效电平,是否允许改变计数方向,是否允许更新设定值,是否允许更新当前值,以及是否允许执行高速计数指令。
高数计数器的控制字节
HCOHC1HC2HC3HC4HC5描述SM37.0SM47.0SM57.0----SM147.0------复位输入控制电平有效值:
、
0=高电平有效,1=低电平有效------SM47.1SM57.1-----------------启动输入控制电平有效值:
0=高电平有效,1=低电平有效SM37.2SM47.2SM57.2-----SM147.2--------倍率选择:
0=4倍率,1=1倍率SM37.3SM47.3SM57.3SM137.3SM147.3SM157.3计数方向控制:
0为减1为曾SM37.4SM47.4SM57.4SM137.4SM147.4SM157.4改变计数方向控制:
0=不改变
1=准许改变SM37.5SM47.5SM57.5SM137.5SM147.5SM157.5改变设定值控制:
0=不改变
1=准许改变SM37.6SM47.6SM57.6SM137.6SM147.6SM157.6改变当前值控制:
0=不改变
1=准许改变SM37.7SM47.7SM57.7SM137.7SM147.7SM157.7高速计数控制:
0=禁止计数
1=准许计数
说明:
(1)在高速计数器的12种工作模式中,模式0、模式3、模式6和模式9,是既无
启动输入,又无复位输入的计数器,在模式1、模式4、模式7和模式10中,
是只有复位输入,而没有启动输入的计数器;在模式2、模式5、模式8和模式
11中,是既有启动输入,又有复位输入的计数器。
(2)当启动输入有效时,允许计数器计数;当启动输入无效时,计数器的当前值保
持不变;当复位输入有效时,将计数器的当前值寄存器清零;当启动输入无效,
而复位输入有效时,则忽略复位的影响,计数器的当前值保持不变;当复位输
入保持有效,启动输入变为有效时,则将计数器的当前值寄存器清零。
(3)在S7-200中,系统默认的复位输入和启动输入均为高电平有效,正交计数器为
4倍频,如果想改变系统的默认设置,需要设置如上表中的特殊继电器的第0,
1,2位。
各个高速计数器的计数方向的控制,设定值和当前值的控制和执行高速计数的控制,是由表4-22中各个相关控制字节的第3位至第7位决定的。
6.高速计数器的当前值寄存器和设定值寄存器
每个高速计数器都有1个32位的经过值寄存器HC0-HC5,同时每个高速计数器还有1个32位的当前值寄存器和1个32位的设定值寄存器,当前值和设定值都是有符号的整数。
为了向高速计数器装入新的当前值和设定值,必须先将当前值和设定值以双字的数据类型装入如表所列的特殊寄存器中。
然后执行HSC指令,才能将新的值传送给高速计数器。
高速计数器的当前值和设定值
HC0HC1HC2HC3HC4HC5说明
SMD38SMD48SMD58SMD138SMD148SMD158新当前值
SMD42SMD52SMD62SMD142SMD152SMD162新设定值
7.高速计数器的初始化
由于高速计数器的HDEF指令在进入RUN模式后只能执行1次,为了减少程序运行时间优化程序结构,一般以子程序的形式进行初始化。
下面以HC2为例,介绍高速计数器的各个工作模式的初始化步骤。
1(利用SM0.1来调用一个初始化子程序。
2(在初始化子程序中,根据需要向SMB47装入控制字。
例如,SMB47=16#F8,
其意义是:
准许写入新的当前值,准许写入新的设定值,计数方向为曾计数,
启动和复位信号为高电平有效。
3(执行HDEF指令,其输入参数为:
HSC端为2(选择2号高速计数器),MODE
端为0/1/2(对应工作模式0,模式1,模式2)
4(将希望的当前技术值装
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- s7200 高速 计数器 详细 解说