【西门子S7-200】s7-200高速计数器详细解说
- 格式:pdf
- 大小:209.14 KB
- 文档页数:8
[整理]s7-200高速计数器详细解说s7-200高速计数器详细解说1.高速计数器指令普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。
在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。
在PLC 中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。
在S7-200的CPU22X中,高速计数器数量及其地址编号表如下CPU类型 CPU221 CPU222 CPU224 CPU226 高速计数器数量 4 6 高速计数器编号 HC0,HC3~HC5 HC0~HC51(高速计数器指令高速计数器的指令包括:定义高速计数器指令HDEF 和执行高速计数指令HSC,如表HDEF HSC(1) 定义高速计数器指令HDEFHDE指令功能是为某个要使用的高速计数器选定一种工作模式。
每个高速计数器在使用前,都要用HDEF指令来定义工作模式,并且只能用一次。
它有两个输入端:HSC为要使用的高速计数器编号,数据类型为字节型,数据范围为0~5的常数,分别对应HC0~HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据范围为0~11的常数,分别对应12种工作模式。
当准许输入使能EN有效时,为指定的高速计数器HSC 定义工作模式MODE。
(2)执行高速计数指令HSCHSC指令功能功能是根据与高速计数器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。
它有一个数据输入端N:N为高速计数器的编号,数据类型的字型,数据范围为0~5的常数,分别对应高速计数器HC0~HC5.当准许输入EN使能有效时,启动N号高速计数器工作。
2(高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
(2条消息)西门子S7目录一、高速计数器的简介1、高速计数器的工作模式和输入2、高速计数器的控制字和初始值、预置值二、高速输入降噪三、高速计数器指令向导一、高速计数器的简介对超出CPU普通计数器能力的脉冲信号进行测量。
S7-200 SMART CPU提供了多个高速计数器(HSCO~HSC6,具体请参考表1和表2)以响应快速脉冲输入信号。
高速计数器的计数速度比PLC的扫描速度要快得多,因此高速计数器可独立于用户程序工作,不受扫描时间的限制。
用户通过相关指令,设置相应的特殊存储器控制计数器的工作。
高速计数器的一个典型的应用是利用光电编码器测量转速和位移。
表1 标准型CPU高速计数器表2 经济型CPU参数1、高速计数器的工作模式和输入高速计数器有8种工作模式,每个计数器都有时钟、方向控制、复位启动等特定输入。
对于双向计数器,两个时钟都可以运行在最高频率上,高速计数器的最高计数频率取决于CPU的类型。
在正交模式下,可选择1× (1倍速)或者4× (4倍速)输入脉冲频率的内部计数频率。
高速计数器有8种4类工作模式:(1)无外部方向输入信号的单/减计数器(模式0和模式1)用高数计数器的控制字的第3位控制加减计数,该位为1时为加计数,为0时为减计数。
(2)有外部方向输入信号的单/减计数器(模式3和模式4)方向信号为1时,为加计数,方向信号为0时,为减计数。
(3)有加计数时钟脉冲和减计数时钟脉冲输入的双相计数器(模式6和模式7)若加计数脉冲和减计数脉冲的上升沿出现的时间间隔短,高速计数器认为这两个事件同时发生,当前值不变,也不会有计数方向的变化的指示。
否则高速计数器能捕捉到每个独立的信号。
(4)A/B相正交计数器(模式9和模式10)它的两路计数脉冲的相位相差90。
,正转时A相时钟脉冲比B相时钟脉冲超前90。
反转时, A相时钟脉冲比B相时钟脉冲滞后90%。
利用这一特点,正转时加计数,反转时减计数。
s7-200高速计数器详细解说1.高速计数器指令普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。
在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。
在PLC中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。
在S7-200的CPU22X中,高速计数器数量及其地址编号表如下CPU类型CPU221 CPU222 CPU224 CPU226高速计数器数量 4 6高速计数器编号HC0,HC3~HC5 HC0~HC51.高速计数器指令高速计数器的指令包括:定义高速计数器指令HDEF 和执行高速计数指令HSC,如表HDEF HSC(1)定义高速计数器指令HDEFHDE指令功能是为某个要使用的高速计数器选定一种工作模式。
每个高速计数器在使用前,都要用HDEF指令来定义工作模式,并且只能用一次。
它有两个输入端:HSC为要使用的高速计数器编号,数据类型为字节型,数据范围为0~5的常数,分别对应HC0~ HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据范围为0~11的常数,分别对应12种工作模式。
当准许输入使能EN有效时,为指定的高速计数器HSC定义工作模式MODE。
(2)执行高速计数指令HSCHSC指令功能功能是根据与高速计数器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。
它有一个数据输入端N:N为高速计数器的编号,数据类型的字型,数据范围为0~5的常数,分别对应高速计数器HC0~HC5.当准许输入EN使能有效时,启动N号高速计数器工作。
2.高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
西门子PLCS7-200高速计数器指令用法高速计数器计数器输入/输出操作数数据类型N常数(0,1,2,3,4或5)字内存范围错误S7-200 CPU指令支持SIMATIC/国际助记符数据范围CPU内存中的指令大小编址内存高速计数器(HSC)指令根据HSC特殊内存位的状态配置和控制高速计数器。
参数N指定高速计数器的号码。
高速计数器最多可配置为十二种不同的操作模式。
每台计数器在功能受支持的位置有专用时钟、方向控制、复原和起始输入。
对于双相计数器,两个时钟均可按最高速度运行。
在正交模式中,您可以选择一倍\(1x)或四倍(4x)的最高计数速率。
所有的计数器按最高速率运行,而不会相互干扰。
注释:CPU 221和CPU 222支持4台高速计数器 (HSC0、HSC3、HSC4、HSC5)CPU 221和CPU 222不支持HSC1和HSC2CPU 224、CPU224XP、CPU 226支持6台高速计数器 (HSC0至HSC5)您可以为每台高速计数器使用一条"高速计数器定义"指令。
文档光盘中"提示与技巧"中的第4条提示和第29条提示提供使用高速计数器的程序。
设置ENO = 0的错误条件:0001 HSC在HDEF之前0005 HSC/PLS同步程序举例LAD FBDSTL NETWORK 1 // 主程序// 首次扫描时,调用SBR_0LD SM0.1CALL SBR_0NETWORK 1 // 子程序0开始// 配置HSC1LD SM0.1 // 首次扫描时MOVB 16#F8 SMB47 // 配置HSC1:// - 启用计数器// - 写入新当前值// - 写入新预设值// - 将初始方向设为向上计数// - 选择现用水平高的起始和复原输入// - 选择4x模式HDEF 1 11 // 将HSC1配置为正交模式,// 具有复原和起始输入功能MOVD +0 SMD48 // 清除HSC1的当前值MOVD +50 SMD52 // 将HSC1预设值设为50ATCH INT_0 13 // HSC1当前值 = 预设值(事件13)// 附加在中断例行程序INT_0上ENI// 全局中断启用HSC 1 // 程序HSC1NETWORK 1 // 中断0开始LD SM0.0MOVD +0 SMD48 // 清除HSC1的当前值MOVB 16#C0 SMB47 // 选择仅写入一个新当前值,// 使HSC1保持启用状态HSC 1 // 程序HSC1另请参阅:识别高速计数器指令HSC向导HDEF指令。
s7-200高速计数器详细解说一、高速计数器普通计数器是通过两次扫描中输入端子的电平变化实现计数的,可以用普通的寄存器通过加1指令实现。
特点是受扫描的影响,只能用于低频脉冲计数。
高速脉冲使用PLC内部的高速计数器,各种PLC都内置高速计数器。
S7-200 CPU具有集成的、硬件高速计数器。
CPU221和CPU222可以使用4个30kHz单相高速计数器或2个20kHz的两相高速计数器,而CPU224和CPU226可以使用6个30kHz单相高速计数器或4个20kHz的两相高速计数器。
高速计数器的主要功能就是对主机实际转速反馈进行测量,这是电子调速器的一项重要功能,因为主机实际转速反馈测量的准确与否直接关系到保证主机转速稳定,保证主机运行的安全。
重点介绍了S7-200 PLC高速计数器。
在开发研制中发现,采用S7-200 PLC高速计数器可以非常准确地对电动机实际转速反馈进行测量,而且硬件实现非常简单,价格也比较低,具有很大的应用价值。
(一)概述普通计数器是通过两次扫描输入端子电平变化来进行计数的,因此其端子输入脉冲的频率必须必扫描频率低得多。
对于高速脉冲而言,这种方法会出现丢失脉冲导致计数错误。
S7-200内置了高速计数器HSC,其工作情况类似于单片机中的计数器。
起动后不受扫描周期的影响,由硬件自动计数,当满足一定条件时发出中断申请。
其最高技术频率高达30KHz。
S7-200的计数器最多可以设置12种不同的工作模式,用于实现高速运动的精确控制。
S7-200还设有高速脉冲输出,输出频率可以高达20KHz。
用于PTO(脉冲串输出,输出一个频率可调,占空比50%的脉冲。
)和PWM(脉宽调制脉冲)。
PTO用于带有位置控制功能的步进电机控制或者伺服电机驱动器控制,通过输出脉冲的个数作为位置给定值的输入,以实现定位控制功能。
通过改变脉冲的输出频率,可以改变运动的速度。
PWM用于直接驱动调速系统或运动控制系统的输出,控制主逆变回路。
s7-200高速计数器详细解说1.高速计数器指令普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。
在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。
在PLC中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。
在S7-200的CPU22X中,高速计数器数量及其地址编号表如下CPU类型CPU221 CPU222 CPU224 CPU226高速计数器数量 4 6高速计数器编号HC0,HC3~HC5 HC0~HC51.高速计数器指令高速计数器的指令包括:定义高速计数器指令HDEF 和执行高速计数指令HSC,如表HDEF HSC(1)定义高速计数器指令HDEFHDE指令功能是为某个要使用的高速计数器选定一种工作模式。
每个高速计数器在使用前,都要用HDEF指令来定义工作模式,并且只能用一次。
它有两个输入端:HSC为要使用的高速计数器编号,数据类型为字节型,数据围为0~5的常数,分别对应HC0~HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据围为0~11的常数,分别对应12种工作模式。
当准许输入使能EN有效时,为指定的高速计数器HSC定义工作模式MODE。
(2)执行高速计数指令HSCHSC指令功能功能是根据与高速计数器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。
它有一个数据输入端N:N为高速计数器的编号,数据类型的字型,数据围为0~5的常数,分别对应高速计数器HC0~HC5.当准许输入EN使能有效时,启动N号高速计数器工作。
2.高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
s7200高速计数器控制三段速度摘要:一、引言二、S7-200高速计数器介绍三、控制三段速度的方法1.方法一:使用两个高速计数器2.方法二:使用一个高速计数器和两个比较器四、实际应用案例1.案例一:使用两个高速计数器实现三段速度控制2.案例二:使用一个高速计数器和两个比较器实现三段速度控制五、总结正文:一、引言在工业自动化领域,S7-200是一款非常受欢迎的PLC(可编程逻辑控制器)型号。
通过合理利用S7-200的高速计数器功能,可以实现对设备的精准控制。
本文将详细介绍如何利用S7-200高速计数器控制三段速度。
二、S7-200高速计数器介绍S7-200高速计数器是一种专门用于计数脉冲信号的特殊模块。
它具有高分辨率、高速计数、精确测量等特点,可以满足各种工业控制场景的需求。
在S7-200中,高速计数器可分为单相和双相两种类型,用户可以根据实际需求进行选择。
三、控制三段速度的方法为了实现对三段速度的控制,我们可以采用以下两种方法:1.方法一:使用两个高速计数器在这种方法中,我们需要使用两个高速计数器分别检测三段速度信号。
当第一段速度信号到达预设值时,第一个高速计数器开始计数;当第二段速度信号到达预设值时,第二个高速计数器开始计数。
通过比较两个高速计数器的计数值,可以实现对三段速度的控制。
2.方法二:使用一个高速计数器和两个比较器在这种方法中,我们只需使用一个高速计数器和一个比较器即可实现对三段速度的控制。
首先,将三段速度信号输入到高速计数器中,然后将高速计数器的输出信号分别与三个预设值进行比较。
当高速计数器的输出信号大于第一个预设值时,表示当前速度处于第一段;当输出信号大于第二个预设值时,表示当前速度处于第二段;当输出信号大于第三个预设值时,表示当前速度处于第三段。
通过这种方法,我们可以实现对三段速度的控制。
四、实际应用案例1.案例一:使用两个高速计数器实现三段速度控制在某生产线中,需要对一个输送带的速度进行三段控制。
s7-200高速计数器详细解说1.高速计数器指令普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。
在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。
在PLC中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。
CPU类型CPU221 CPU222 CPU224 CPU226高速计数器数量 4 6高速计数器编号HC0,HC3~HC5 HC0~HC51.高速计数器指令HDEF HSC(1)定义高速计数器指令HDEFHDE指令功能是为某个要使用的高速计数器选定一种工作模式。
每个高速计数器在使用前,都要用HDEF指令来定义工作模式,并且只能用一次。
它有两个输入端:HSC为要使用的高速计数器编号,数据类型为字节型,数据范围为0~5的常数,分别对应HC0~ HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据范围为0~11的常数,分别对应12种工作模式。
当准许输入使能EN有效时,为指定的高速计数器HSC定义工作模式MODE。
(2)执行高速计数指令HSCHSC指令功能功能是根据与高速计数器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。
它有一个数据输入端N:N为高速计数器的编号,数据类型的字型,数据范围为0~5的常数,分别对应高速计数器HC0~HC5.当准许输入EN使能有效时,启动N号高速计数器工作。
2.高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
每个高速计数器专用的输入点如表高速计数器的输入点3.高速计数器的状态字节系统为每个高速计数器都在特殊寄存器区SMB提供了一个状态字节,为了监视高速计数器的工作状态,执行由高速计数器引用的中断事件,其格式如表。
S7-200SMARTCPU⾼速计数器专题(上篇)⼀、⾼速计数的概念⾼速计数器是PLC CPU的内部集成的硬件⾼速计数器,通俗的讲就是对普通计数器⽆法记录到的⾼速脉冲信号进⾏计数,响应时间⽐普通计数器快,并且不受CPU的扫描时间影响,但会受脉冲输⼊信号的滤波时间影响计数。
普通计数器在计数的过程中受PLC的扫描⼯作⽅式限制,如果被测信号的频率较⾼时,就会丢失计数脉冲;普通计数器⼀般仅为⼏⼗HZ。
当脉冲频率⽐较⾼的时候,那么就需要⾼速计数器进⾏计数。
⾼速计数⾃然和编码器有着密不可分的关系。
编码器分绝对值式编码器和增量式编码器;增量式编码式分PNP输出和NPN输出两种,其输出信号为脉冲信号;⽽绝对值式编码器输出是格雷码。
实际项⽬多为增量式编码器,200SMART不能接5V差分信号编码器⼆、各CPU型号所⽀持的⾼速计数个数固件版本为2.3 版以上的CPU型号最多⽀持6路⾼速计数,但紧凑型的CPU只⽀持4路标准型CPU⾼速计数器如下图:紧凑型CPU⾼速计数器三、⾼速计数器的输出模式200 SMART CPU⾼速共有四种基本类型:带有内部⽅向控制的单相计数器,带有外部⽅向控制的单相计数器,带有两个时钟输⼊的双相计数器和A/B相正交计数器。
其输出模式有⼋种:0/1/3/4/6/7/9/10 下⾯分别做详细介绍模式0/1模式3/4模式6/7 带有增减计数时钟的双相计数器 6模式⽆复位输⼊,7模式使⽤外部复位输⼊模式9和10 常⽤9模式⾼速计数器所对应的编号及输⼊点和模式对照表四、⾼速计数器的状态字和控制字及寻址五、⾼速计数器的控制字节各个位的定义控制字节常⽤16#F8⾼速计数器的状态字节各个位的定义bit 0 -bit4 保留bit5 当前计数⽅向状态0=减计数 1=加计数bit6 当前值等于预设值的状态位0=不相等 1=相等bit7 当前值⼤于预设值状态位0=⼩于或等于1=⼤于。
关于西门子S7-200高速计数器的使用方法(转载自网络)
程序通过先设定计数器的值,本例中设定值为13;按设备启动按钮I0.1启动设备,运行后通过信号输入点I0.0进行计数,当计数当前值等于设定值13时,输出点断开,设备运行停止。
I0.2为设备停止按钮。
程序如下:
LD SM0.1
MOVB 16#C8, SMB37
HDEF 0, 0
MOVD +0, SMD38
HSC 0
上述程序注解:(1)对高数记数器HSC0初始化,写入控制字节(16#C8含义为:要求进行初始值设定;不装入预设值;运行中不要求更改计数方向;计数器类型为增。
)
(2)执行HDEF指令,进行高速计数器工作模式的选定设置(计数器为HSC0;模式为0)
(3)初始值设定:装载高数记数器初始值为0
(4)执行HSC指令,写入HSC0设置。
LDN M14.0
EU
MOVB 16#C8, SMB37
MOVD +0, SMD38
HSC 0
上述程序注解:当记速值达到要求值时,M14.0复位,高速计数器计数将复位为初始值,以备下次计数使用。
LDD< HC0, +13
= M14.0
上述程序注解:当计数器值小于13 时,M14.0始终处于置位状态。
LD I0.1
O Q0.0
AN I0.2
A M14.0
= Q0.0
上述程序注解:I0.1为设备启动信号;I0.1为设备停止信号。
高速计数器累计值达到13 时,设备运行停止。
s7200高速计数器控制三段速度摘要:一、引言二、S7-200 高速计数器的介绍三、控制三段速度的方法1.方法一:使用PLC 的指令2.方法二:使用功能块3.方法三:使用通讯功能四、总结正文:一、引言在工业自动化领域,S7-200 系列PLC 被广泛应用于各种工程中。
其中,高速计数器是S7-200 系列PLC 的一个重要功能,可以实现对设备运行速度的精确控制。
本文将详细介绍如何利用S7-200 高速计数器控制三段速度。
二、S7-200 高速计数器的介绍S7-200 系列PLC 的高速计数器具有高速、高精度的特点,可以实现对设备运行速度的实时监测和控制。
高速计数器可以分为两类:一类是可编程高速计数器,另一类是绝对值高速计数器。
两类高速计数器都可以实现对设备运行速度的控制,但绝对值高速计数器具有更高的精度和更广泛的应用范围。
三、控制三段速度的方法1.方法一:使用PLC 的指令利用PLC 的指令可以实现对高速计数器的简单控制。
例如,可以使用以下指令实现对三段速度的控制:(1) 使能高速计数器:`SM0.0`(2) 设置高速计数器的工作模式:`CTU0`(3) 设置高速计数器的计数范围:`CTUD`(4) 设置高速计数器的计数方向:`CTUD`(5) 启动高速计数器:`CTU0`(6) 读取高速计数器的当前值:`CTUD`2.方法二:使用功能块S7-200 系列PLC 提供了丰富的功能块,可以通过编写功能块实现对高速计数器的复杂控制。
例如,可以使用以下功能块实现对三段速度的控制:(1) 使能高速计数器功能块:`FB1`(2) 设置高速计数器工作模式功能块:`FB2`(3) 设置高速计数器计数范围功能块:`FB3`(4) 设置高速计数器计数方向功能块:`FB4`(5) 启动高速计数器功能块:`FB5`(6) 读取高速计数器当前值功能块:`FB6`3.方法三:使用通讯功能S7-200 系列PLC 支持多种通讯协议,可以通过通讯功能实现与其他设备的联动控制。
高速脉冲计数器高速计数器专用输入高速计数器使用的输入HSC0 I0.0, I0.1, 0.2HSC1 I0.6, I0.7, I1.0, I1.1HSC2 I1.2, I1.3, I1.4, I1.5HSC3 I0.1HSC4 I0.3, I0.4, I0.5HSC5 I0.4有些高速计数器和边缘中断的输入点赋值存在某些重叠。
同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。
例如,如果在模式2中使用HSC0,模式2使用I0.0和I0.2,则I0.1可用于边缘中断或用于HSC3。
如果所用的HSC0模式不使用输入I0.1,则该输入可用于HSC3或边缘中断。
与此相似,如果所选的HSC0模式不使用I0.2,则该输入可用于边缘中断;如果所选HSC4模式不使用I0.4,则该输入可用于HSC5。
请注意HSC0的所有模式均使用I0.0,HSC4的所有模式均使用I0.3,因此当使用这些计数器时,这些输入点四台计数器有三个控制位,用于配置复原和起始输入的激活状态并选择1x或4x计数模式(仅限正交计数器)。
这些控制位位于各自计数器的控制字节内,只在执行HDEF指令时才使用。
执行HDEF指令之前,必须将这些控制位设为所需的状态,否则计数器采用所选计数器模式的默认配置。
复原输入和起始输入的默认设置为现用水平高,正交计数速率为4x(或4乘以输入时钟频率)。
一旦执行了HDEF指令,就不能再改变计数器设置,除非首先将CPU设为STOP(停止)模式。
下表复位和启动输入的有效电平以及1x/4x控制位**缺省设置为:复位输入和启动输入高电平有效,正交计数率为四倍速(四倍输入时钟频率)。
定义控制字节一旦定义了计数器和计数器模式,您就可以为计数器动态参数编程。
每台高速计数器均有一个控制字节,允许完成以下作业:* 启用或禁止计数器* 控制方向(仅限模式0、1和2)或初始化所有其他模式的计数方向* 载入当前值每台高速计数器都有一个32位初始值和一个32位预设值,初始值和预设值均为带符号的整数值。
高速脉冲计数器高速计数器专用输入高速计数器使用的输入HSC0 I0.0, I0.1, 0.2HSC1 I0.6, I0.7, I1.0, I1.1HSC2 I1.2, I1.3, I1.4, I1.5HSC3 I0.1HSC4 I0.3, I0.4, I0.5HSC5 I0.4有些高速计数器和边缘中断的输入点赋值存在某些重叠。
同一个输入不能用于两种不同的功能;但是高速计数器当前模式未使用的任何输入均可用于其他目的。
例如,如果在模式2中使用HSC0,模式2使用I0.0 和I0.2,则I0.1可用于边缘中断或用于HSC3。
如果所用的HSC0模式不使用输入I0.1,则该输入可用于HSC3或边缘中断。
与此相似,如果所选的HSC0 模式不使用I0.2,则该输入可用于边缘中断;如果所选HSC4模式不使用I0.4,则该输入可用于HSC5。
请注意HSC0的所有模式均使用I0.0,HSC4的所有模式均使用I0.3,因此当使用这些计数器时,这些输入点绝不会用于其他用途。
四台计数器有三个控制位,用于配置复原和起始输入的激活状态并选择1x或4x计数模式(仅限正交计数器)。
这些控制位位于各自计数器的控制字节内,只在执行HDEF指令时才使用。
执行HDEF指令之前,必须将这些控制位设为所需的状态,否则计数器采用所选计数器模式的默认配置。
复原输入和起始输入的默认设置为现用水平高,正交计数速率为4x (或4乘以输入时钟频率)。
一旦执行了HDEF指令,就不能再改变计数器设置,除非首先将CPU设为STOP (停止)模式。
**缺省设置为:复位输入和启动输入高电平有效,正交计数率为四倍速(四倍输入时钟频率)。
定义控制字节一旦定义了计数器和计数器模式,您就可以为计数器动态参数编程。
每台高速计数器均有一个控制字节,允许完成以下作业:*启用或禁止计数器*控制方向(仅限模式0、1和2)或初始化所有其他模式的计数方向*载入当前值设置当前值和预设值每台高速计数器都有一个32位初始值和一个32位预设值,初始值和预设值均为带符号的整数值。
西门子S7-200PLC高速计数器的使用由于西门子S7-200系列PLC高速计数器需要定义才能有效,所以需要注意一些细节。
一、S7-200系列PLC的编程环境有向导可以自动生成高速计数器指令,打开STEP 7 MicroWIN,点击“工具”菜单下的“指令向导”,在弹出的对话框内选择HSC配置高速计数器操作,如下图:点击下一步,弹出选择高数计数器及模式对话框,选择所需要的高数计数器及其模式,如下图:再点击下一步,弹出配置计数器方向及速率的对话框,选择适合的选项。
选择后再点击下一步,弹出配置当前值=预置值中断选择对话框,并可以选择中断步数。
每一步都可以执行一系列动作,根据自己的需要来选择。
点击下一步,弹出配置第一步的对话框,根据自己选择的步数,会出现多个这样的对话框。
各步完成后,点击下一步弹出完成对话框,点击完成,系统自动生成了高速计数器的指令。
二、使用自动生成的指令有些死板,我习惯自己编写程序。
1、首先建立子程序,在子程序内定义高速计数器,如下:主程序内各步执行采用比较指令实现:2、西门子S7-200系列PLC没有高速计数器当前值断电保持功能(不能在系统块断电保持内设置),所以要用编程的方式实现。
例如:采用VD1000作为中间值寄存器,在系统上电时调用定义高速计数器子程序时,将VD1000内的数据传送到高速计数器当前值,如下:在主程序内定义系统第一次上电扫描不传送高速计数器当前值至VD1000,如下:3、在系统块设置VD1000断电保持。
三、西门子S7-200系列PLC高速计数器输入端口选择:根据自己的编码器的PNP、NPN形式,配置PLC的端口高低电平有效,如果是高电平有效,应选择PNP编码器;如果低电平有效,应选择NPN编码器。
高电平有效时,应将输入端口的M接至0V;低电平有效时,应将输入端口的M接至+24V。
s7-200高速计数器详细解说1.高速计数器指令普通计数器受CPU扫描速度的影响,是按照顺序扫描的方式进行工作。
在没个扫描周期中,对计数脉冲只能进行一次累加;对于脉冲信号的频率比PLC的扫描频率高时,如果仍采用普通计数器进行累加,必然会丢失很对输入脉冲信号。
在PLC中,对比扫描频率高的输入信号的计数可也使用高速计数器指令来实现。
在S7-200的CPU22X中,高速计数器数量及其地址编号表如下CPU类型CPU221 CPU222 CPU224 CPU226高速计数器数量 4 6高速计数器编号HC0,HC3~HC5 HC0~HC51.高速计数器指令高速计数器的指令包括:定义高速计数器指令HDEF 和执行高速计数指令HSC,如表HDEF HSC(1)定义高速计数器指令HDEFHDE指令功能是为某个要使用的高速计数器选定一种工作模式。
每个高速计数器在使用前,都要用HDEF指令来定义工作模式,并且只能用一次。
它有两个输入端:HSC为要使用的高速计数器编号,数据类型为字节型,数据范围为0~5的常数,分别对应HC0~ HC5;MOCE为高速计数的工作模式,数据类型为字节型,数据范围为0~11的常数,分别对应12种工作模式。
当准许输入使能EN有效时,为指定的高速计数器HSC定义工作模式MODE。
(2)执行高速计数指令HSCHSC指令功能功能是根据与高速计数器相关的特殊继电器确定在控制方式和工作状态,使高速计数器的设置生效,按照指令的工作模式的工作模式执行计数操作。
它有一个数据输入端N:N为高速计数器的编号,数据类型的字型,数据范围为0~5的常数,分别对应高速计数器HC0~HC5.当准许输入EN使能有效时,启动N号高速计数器工作。
2.高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
S7-200 CPU具有集成的、硬件高速计数器。
CPU221和CPU222可以使用4个30kHz单相高速计数器或2个20kHz的两相高速计数器,而CPU224和CPU226可以使用6个30kHz单相高速计数器或4个20kHz的两相高速计数器。
S7-200的新一代产品CPU224 XP 支持更高的计数速度。
高速计数器可以被配置为12种模式中的任意一种,但并不是所有计数器都能使用每一种模式。
在正交模式下,你可以选择一倍速或者四倍速计数速率。
对于操作模式相同的计数器,其计数功能是相同的。
计数器共有四种基本类型:带有内部方向控制的单相计数器,带有外部方向控制的单相计数器,带有两个时钟输入的双相计数器和A/B相正交计数器。
表1. 高速计数器的模式及输入点:模式描述输入点备注HSCO I0.0 I0.1 I0.2 (1)HSC1 I0.6 I0.7 I1.0 I1.1 (2)HSC2 I1.2 I1.3 I1.4 I1.5 (2)HSC3 I0.1 (1)HSC4 I0.3 I0.4 I0.5HSC5 I0.40 带有内部方向控制的单相计数器时钟1 时钟复位2 时钟复位启动3 带有外部方向控制的单相计数器时钟方向4 时钟方向复位5 时钟方向复位启动6 带有增减计数时钟的双相计数器增时钟减时钟7 增时钟减时钟复位8 增时钟减时钟复位启动9 A/B相正交计数器时钟A 时钟B10 时钟A 时钟B 复位11 时钟A 时钟B 复位启动12 只有HSC0 和HSC3 支持模式12。
HSC0 计数高速脉冲输出Q0.0;HSC3 计数高速计数脉冲输出Q0.1。
(1) 支持模式12。
• 高速计数器的实际输入要根据用户选择的高速计数器号和模式来确定,如上表。
例:如果你选择了HSC0的模式1,则你的外部高速计数输入点应接在I0.0,外部复位点应接在I0.2。
• 如果用户使用了多个高速计数器,则被某一高速计数器占用了的输入点,其它高速计数器不能再使用。