S7-200高速计数器的学习
[整理]s7-200高速计数器详细解说
[整理]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(高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
高速计数及脉冲输出指令
计数方向控制位:0(减计数); 1(增计数)
向HSC中写入计数方向: 0(不更新);1(更新计数方向)
向HSC中写入预置值: 0(不更新);1(更新预置值)
向HSC中写入新的当前值: 0(不更新);1(更新当前值)
HSC允许: 0(禁止HSC);1(允许HSC)
预置值
SMD42 SMD52 SMD62 SMD142 SMD152 SMD162
高速计数及脉冲输出指令
v高速计数器状态位
高速计数器状态字节,其中某些位指出了当前计数方向、当前值与预置 值是否相等、当前值是否大于预置值的状态。可以通过监视高速计数器的 状态位产生相应中断,完成重要操作。但要注意,状态位只有在执行高速 计数器终端程序时才有效。
(2) 在初始化子程序中,对相应高速计数器的控制字节写入希望的控制 字。如要使用HSC1,则对SMB47写入16#F8(2#11111000),表示允许高速 计数器运行,允许写入新的当前值,允许写入新的预置值,可以改变计数 器方向,置计数器的计数方向为增,置启动和复位输入为高电平有效。
(3) 执行HDEF指令,根据所选计数器号和运行模式将高速计数器号与 具体运行模式进行连接。
HSC 高速计数器指令,根据高速计数器特殊存储器位的设置, 按照HDEF指令指定的工作模式,控制高速计数器的工作。
高速计数及脉冲输出指令
高速计数器设置过程
为更好地理解和使用高速计数器,下面给出高速计数器的一般设置过 程。
(1) 使用初始化脉冲触点SM0.1调用高速计数器初始化操作子程序。这 个结构可以使系统在后续的扫描过程中不再调用这个子程序,从而减少了 扫描时间,且程序更加结构化。
I0.0 计数 计数 计数 计数
S7-200高速计数器简单案例(2)
S7-200高速计数器简单案例(2)前面以几个较简单的程序案例学习了一下高速计数器的应用,那么今天就做几个稍微复杂一些的程序案例,提高一下对高速计数器的掌握程度和熟练应用。
1、用编码器测量电机转速与频率主程序:子程序:中断程序:以上的程序中,在主程序中,用I0.7的上升沿调用高速计数器初始化子程序,然后做一个高速计数器初始化的子程序,首先是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,这里没有写入初始值和预设值,定义的是高速计数器HSC0和HSC模式1,然后激活高速计数器,还做了高速计数器中断,我们设置定时中断0的时间间隔为100ms,因为SMB34的定时中断0为中断事件号10,我们建立中断程序0和中断事件10的中断连接,并全局允许中断。
然后再看一下中断程序,因为是100ms的定时中断,每100ms 执行一次中断程序。
我们就用100ms计算的脉冲个数,再乘以600化成1分钟的脉冲个数,再除于分辨率就是等于转速,程序中的500就是编码器的分辨率。
而对于编码器的频率的计算,我们有这样一个公式,频率/工频50Hz=转速/工频下的转速,所以频率=(转速/工频下的转速)*工频50Hz,这里我们先把双整数的转速转换成实数,再除以工频下的转速1488.0,再乘以工频50.0Hz,那么就得到了编码器的频率了。
2、用编码器测量机床位置,不论机床朝正方向移动或朝反方向移动,都能知道机床的当前位置,有一原点位置感应开关I0.7,当原点位置感应开关接通时,机床的当前位置为0。
假设编码器的分辨率为1024,丝杆的进给量即转1圈移动的位置为10,计算公式是当前值除以分辨率,再乘于进给量)主程序:子程序:以上的程序中,首先做一个高速计数器初始化的子程序,首先是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,这里没有写入初始值和预设值,定义的是高速计数器HSC0和HSC模式1,然后激活高速计数器。
S7 200编码器高速计数器教程
编码器相关资料需要事先掌握的几个概念1、编码器是一个发出信号的装置,发出脉冲。
2、高速计数器是PLC内置的高速计数装置,(普通的计数器的技术跟扫描周期很大关系,无法计数快速的脉冲信息)。
3、高速计数器有很多个,很多个模式,不看手册,图是不可能记住的。
4、编码器的计数只是高速计数器的一种模式而已。
5、所谓的A B相,就是在A为1时B有上升沿,或者在B为1时A有上升沿。
右边正反转你掌握的就是正反转的时候,AB相的不同。
人家plc如何计数?那是西门子的事。
你所要知道的是,这个正反转加减技术就是根据这个不同plc自己来识别的。
不要乱操心。
6、编码器可以输出三路脉冲,你完全可以根据自己的需要只用其中的任何一路。
比如你只用Z技术圈数,或者只用AB计数螺杆位置,或者只用A或者B来技术一个单方向的脉冲。
根据自己需要,你也可以全部都用,来计数角度。
还可以只用一路单纯用作脉冲发生器来做实验。
它就是那么一个随着转动发脉冲的反馈装置。
7、中断程序:本质跟子程序是一样的,子程序只要一个纯点就可以来调用,中断程序需要“事件来调用”,为什么会这样的,因为就是有一些“事”要处理,比如上升下降就是要立即处理的情况,这都是根据需要搞出来的概念,不是凭空出来的。
8、事》》》有很多种事,很多件事,不能搞混,这根现实生活中的事情是一样的。
本就是一个概念。
那么多就要编号,这就是“事件号”。
9、中断程序可以有很多,int0123456,如果不指定哪个事件发生,我要处理哪个事件,这样的话,那岂不是乱套,对吧?事件1发生,我要调用可以调用任何一个int中断程序,要确定,就得在程序里预先“连接”上,这样的话当发生事件1了,那么相关子程序(中断子程序中断子程序也是子程序的一种嘛只不过调用是被“事件”来调用的)就会被调用。
10、所以整个过程是查看下表》》》》》确定高速计数器》》》》根据控制需要确定计数模式》》》查找高速计数器的输入通道I,接上线》》》》用高速计数器向导编程或者狂做实验(我第一次用,做了2小时试验,全会了)。
s7200高速计数器控制三段速度
s7200高速计数器控制三段速度
(最新版)
目录
1.S7200 高速计数器的概述
2.S7200 高速计数器控制三段速度的原理
3.S7200 高速计数器控制三段速度的实际应用
4.S7200 高速计数器控制三段速度的优势和局限性
正文
一、S7200 高速计数器的概述
S7200 是一款高速计数器,它能够对高速运动的物体进行精确的计数,被广泛应用于各种需要对速度进行控制的场合。
它的主要特点是计数速度快,精度高,而且能够实现连续计数,不受外界干扰的影响。
二、S7200 高速计数器控制三段速度的原理
S7200 高速计数器通过连接到电机或者其他旋转设备上,能够实时监测设备的转速。
然后,通过预设的参数,可以设定设备的速度区间,当设备的转速超出这个区间时,S7200 就会自动进行调整,使设备的转速恢复到设定的区间内。
三、S7200 高速计数器控制三段速度的实际应用
在实际应用中,S7200 高速计数器控制三段速度的功能主要体现在对设备的精细化控制上。
比如,在一些需要对速度进行精确控制的场合,如电梯控制、汽车发动机控制、风力发电控制等,都可以看到 S7200 的身影。
四、S7200 高速计数器控制三段速度的优势和局限性
S7200 高速计数器控制三段速度的最大优势就是能够实现设备的精
确控制,提高了设备的运行效率和安全性。
同时,S7200 的高速计数功能,也使得它能够适应各种高速运动的设备。
然而,S7200 也存在一些局限性,比如对于一些低速运动的设备,其控制效果可能并不理想。
s7-200高速计数器使用技巧
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高速计数器详细解说
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高速计数器详细解说
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高速计数器专题(上篇)
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高速计数器的使用方法
关于西门子S7-200高速计数器的使用方法程序通过先设定计数器的值,本例中设定值为13;按设备启动按钮I0.1启动设备,运行后通过信号输入点I0.0进行计数,当计数当前值等于设定值13时,输出点断开,设备运行停止。
I0.2为设备停止按钮。
程序如下:LD SM0.1MOVB 16#C8, SMB37HDEF 0, 0MOVD +0, SMD38HSC 0上述程序注解:(1)对高数记数器HSC0初始化,写入控制字节(16#C8含义为:要求进行初始值设定;不装入预设值;运行中不要求更改计数方向;计数器类型为增。
)(2)执行HDEF指令,进行高速计数器工作模式的选定设置(计数器为HSC0;模式为0)(3)初始值设定:装载高数记数器初始值为0(4)执行HSC指令,写入HSC0设置。
LDN M14.0EUMOVB 16#C8, SMB37MOVD +0, SMD38HSC 0上述程序注解:当记速值达到要求值时,M14.0复位,高速计数器计数将复位为初始值,以备下次计数使用。
LDD< HC0, +13= M14.0上述程序注解:当计数器值小于13 时,M14.0始终处于置位状态。
LD I0.1O Q0.0AN I0.2A M14.0= Q0.0上述程序注解:I0.1为设备启动信号;I0.1为设备停止信号。
高速计数器累计值达到13 时,设备运行停止。
本例程序设计的背景:(中断单点控制)程序是通过一个板材自动定长剪切设备工作程序简单设计进行高数计数器和中断指令的使用。
工作要求为:启动设备,料滚电机工作带动板材进行送料,同时由计数器记录长度脉冲信号,当达到脉冲预设值时,即板材设定长度时,中断指令发信号,停止料滚电机工作,执行压料、裁剪,裁剪完成后,压料阀和料剪同时复位,料滚电机工作,进行下一次裁剪,周而复始。
程序拓展:可根据实际需要设计成钢板的定长裁剪;或流量的控制。
通过本程序学习,可加深高数计数器指令和中断指令的使用了解。
西门子S7-200PLC高速计数器的使用
西门子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。
(完整word)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.高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
S7-200学习(DOC)
S7-200软件基础S7-200的数据区可以分为数字量输入和输出映像区、模拟量输入和输出映像区、变量存储器区、顺序控制继电器区、位存储器区、特殊存储器区、定时器存储器区、计数器存储器区、局部存储器区、高速计数器区和累加器区。
3.1 S7-200的数据区1. 数字量输入和输出映像区1) 数字量输入映像区(I区)数字量输入映像区是为保存当前输入端信号状态开辟的一个存贮区,用I表示。
该区的数据可以是位(1bit)、字节(8bit)、字(16bit)或者双字(32bit)。
其表示形式如下。
∙用位表示I0.0、I0.1、…I15.7共l28点。
∙用字节表示IB0、IB1、…IB15共l6个字节。
∙用字表示IW0、IW2、…IW14共8个字。
一个字含两个连续的字节,低位字节为高8位,高位字节为低8位。
比如,IW0中的IB0应该是高8位,IB1应该是低8位。
∙用双字表示ID0、ID4、…ID12共4个双字。
一个双字含四个连续的字节。
比如,ID0中的IB0应该是最高8位,IB1应该是次高8位,IB2应该是低8位,IB3应该是最低8位。
2) 数字量输出映像区(Q区)数字量输出映像区是为保存当前输出端信号状态开辟的一个存贮区,用Q表示。
该区的数据可以是位(1bit)、字节(8bit)、字(16bit)或者双字(32bit)。
其表示形式如下。
∙用位表示Q0.0、Q0.1、…Q15.7共l28点。
∙用字节表示QB0、QB1、…QB15共l6个字节。
∙用字表示QW0、IW2、…QW14共8个字。
一个字含两个连续的字节,低位字节为高8位,高位字节为低8位。
比如,QW2中的QB2应该是高8位,QB3应该是低8位。
∙用双字表示QD0、QD4、…QD12共4个双字。
一个双字含四个连续的字节。
比如,QD4中的QB4应该是最高8位,QB5应该是次高8位,QB6应该是低8位,QB7应该是最低8位。
实际没有使用的输入端和输出端的映像区的存储单元可以作中间继电器用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
例程
当I0.0的上升边沿时启用发送 子程序
例程
将Q0.0的输出选择成为PTO高速 输出,周期以毫秒为单位
将周期设置为5MS,也就是200 脉冲/S
将Q0.0的输出脉冲数量设置为 4000,也就是20圈
设置Q0.0启用
思考题
一个旋转机构待用步进电机,电机自带减速机变速比为 32/1。我们要这个旋转机构旋转90°,设这个电机的每一 步是0.9°。请给出设计方案
状态位
S7-200 高速计数器指令
高速计数 器定义 (HDEF) 指令选择 特定的高 速计数器 (HSCx) 的操作模 式。模式 选择定义 高速计数 器的时钟、 方向、起 始和复原 功能。
例:将HSC0设置 成计数模式1
S7-200 高速计数器指令
高速计数器 (HSC)指 令 根 据 HSC 特 殊内存位的 状态配置和 控制高速计 数 器。参 数 N 指定高速计 数 器 的 号 码。
16#8D
16#A0
是
是
PTO
PTO
单段
多段
1 ms/循环
1 μ S/循环
载入
载入
16#A8
16#D1 16#D2
是
是 是
PTO
PWM PWM
多段
同步 同步
1 μ S/循环
1 μ S/循环 1 μ S/循环 载入 载入
16#D3
16#D9 16#DA
是
是 是
PWM
PWM PWM
同步
同步 同步
1 μ S/循环
高速输出前言
S7-200自带了两个高速输出Q0.0和Q0.1(仅限 DC输出) 高速输出的分类: 分为两种:PTO和PWM
PTO提供方波(50%占空比)输出,配备周期和 脉冲数用户控制功能。 PWM提供连续性变量占空比输出,配备周期和脉 宽用户控制功能。
高速输出前言
PTO脉冲数
脉冲周期
旋转编码器
四倍频模式(4X )
S7-200 高速计数器基础
高速计数器对CPU扫描速率无法控制的高速事件进行计数,最多可配 置12种丌同的操作模式。高速计数器的最高计数频率取决亍CPU类型 。 其中CPU222和CPU221没有HSC1和HSC2
S7-200 高速计数器基础
模式0、 1、 2 的计数方式
SMB166
SMW168 SMB170 SMB171
SMB176
SMW178 SMB180 SMB181
进行中的段数(仅用亍多段PTO操作)
轮廓表起始位置,用距离V0的字节偏移量表示(仅用亍多段PTO操作) 线性轮廓状态字节 线性轮廓结果寄存器
SMB172
SMB182
手动模式频率寄存器
高速输出关联特殊寄存器
控制字节
S7-200 高速计数器特殊寄存器
载入 数值 新当 前值
HSC0
HSC1
HSC2
HSC3
HSC4
HSC5
SMD3 SMD4 SMD5 SMD1 SMD1 SMD1 8 8 8 38 48 58
新预 SMD4 SMD5 SMD6 SMD1 SMD1 SMD1 设值 2 2 2 42 52 62 当我们需要手动更新计数器预设值和当前值时,需要将SM**.5 和SM**.6设置为1。然后,将要输入的值更新给对应计数器的 特殊寄存器中
读取高速计数器当前值
欲存取高速计数器的计数值,您需要利用内存类型(HC)和计数器号码(例如HC0)指定高速计数 器的地址。如下所示,高速计数器的当前值是只读数值,只能作为双字(32位)编址。 格式:HC[高速计数器号码] 例如:HC2
例题
编写一个高速计数程序,将I0.6的输入模式设置高速计数, 为A/B正交计数,由外部信号启动和复位。当计数值为50的 时候将计数值清零重新计数。
HSC0 SM37. 0 HSC1 SM47. 0 HSC2 SM57. 0 HSC3 HSC4 SM147. 0 HSC5 说明 复原现用水平控制位:0=复原现用水平高1=复原现用 水平低
SM47. 1
SM37. 2 SM37. 3 SM37. 4 SM37. 5 SM37. 6 SM37. 7 SM47. 2 SM47. 3 SM47. 4 SM47. 5 SM47. 6 SM47. 7
S7-200 高速计数器特殊寄存器
HSC0 SM36.0 SM36.1 SM36.2 SM36.3 SM36.4 SM36.5 SM36.6 SM36.7 HSC1 SM46.0 SM46.1 SM46.2 SM46.3 SM46.4 SM46.5 SM46.6 SM46.7 HSC2 SM56.0 SM56.1 SM56.2 SM56.3 SM56.4 SM56.5 SM56.6 SM56.7 HSC3 SM136. 0 SM136. 1 SM136. 2 SM136. 3 SM136. 4 SM136. 5 SM136. 6 SM136. 7 HSC4 SM146. 0 SM146. 1 SM146. 2 SM146. 3 SM146. 4 SM146. 5 SM146. 6 SM146. 7 HSC5 SM156. 0 SM156. 1 SM156. 2 SM156. 3 SM156. 4 SM156. 5 SM156. 6 SM156. 7 说明 未使用 未使用 未使用 未使用 未使用 当前计数方向状态位:0 = 向下计数;1 = 向上计数 当前值等亍预设值状态位:0 = 丌相等;1 = 等亍 当前值大亍预设值状态位:0 = 小亍戒等亍 ;1 = 大亍
SMB67/ 77 16#81 16#84 16#85 16#89 16#8C 启用 是 是 是 是 是 选择模式 PTO PTO PTO PTO PTO PTO段操作 单段 单段 单段 单段 单段 PWM更 新方 法 1 μ S/循环 1 μ S/循环 1 μ S/循环 1 μ S/循环 1 ms/循环 载入 载入 载入 载入 载入 脉冲计 数 脉宽 周期 载入
1 μ S/循环 1 μ S/循环
载入
载入
载入
载入
16#DB
是
PWM
同步
1 μ S/循环
载入
载入
经过整理,我们得到上表
高速输出指令
例题
一台步进电机,每200个脉冲旋转一圈,我们需 要它在按下I0.0后旋转20圈,速度为1圈/秒。做 出设计实现功能!
项目分析: 本项目使用步进电机,对亍脉冲宽度没有要求,而对亍 发出的脉冲数有要求,采用的脉冲为PTO模式发送。发 送数量为200*20=4000个脉冲。速度为1圈/S,那么脉冲 的周期应当为1000/200=5ms。 PLC选型: CPU222 DC/DC/DC
子程序SBR_0
设置中断为预设值=当前
例程
当前值=预设值时,当前值清零
设置允许更新当前值
将设置传给HSC1
中断程序INT_0
思考练习题
编写一个高速计数程序,将I0.0的输入模式设置高速计数,为A相计数,B相高电平为加计数。由内 部信号启动和复位。当计数值为100的时候将计数值停止计数,并将Q0.0置位。存放计数器当前值 ,从V100.0开始
高速输出前言
脉冲周期
PKW宽度
高速输出关联特殊寄存器
Q0.0 SM66.4 SM66.5 SM66.6 SM66.7
Q0.1 SM76.4 SM76.5 SM76.6 SM76.7 PTO轮廓由亍计算错误异常中止 PTO轮廓由亍用户命令异常中止 PTO管线溢出/下溢 PTO空闲
状态位 0 = 无错: 0 = 无错: 0 = 无溢出; 0 = 进行中; 1 = 异常中止 1 = 异常中止 1 = 溢出/下溢 1 = PTO空闲
起始现用水平控制位:0=起始现用水平高1=起始现用 水平低
正交计数器的计数速率选项:0=4x计数速率1=1x计数 速率 计数方向控制位:0 = 向下计数1 = 向上计数 向HSC写入计数方向:0 = 无更新1 = 更新方向 向HSC写入新预设值:0 = 无更新1 = 更新预设值 向HSC写入新当前值:0 = 无更新1 = 更新当前值 启用HSC:0 = 禁用HSC1 = 启用HSC
孙丰浩
本章已完成
谢谢
S7-200 高速计数器基础
模式3、 4、 5 的计数方式
S7-200 高速计数器基础
模式6、7、8 的计数方式
S7-200 高速计数器基础
模式9、10、11 (1X)的计数方式
S7-200 高速计数器基础
模式9、10、11 (4X)的计数方式
S7-200 高速计数器特殊寄存器
例题
程序设计:在首次运行时需要对高速计数器参数初始化,初始化程序为SBR_0
例题
将HSC1的预设值和当前值设置为允许更新 ,方向允许更新,4倍频的向上计数
将HSC1的计数模式设置为11
将HS_0
例题
启用
将设置传
高速输出关联特殊寄存器
Q0.0 SM67.0 Q0.1 SM77.0 PTO/PWM更新周期值 控制位 0 = 无更新; 1 = 更新周期
SM67.1
SM67.2 SM67.3 SM67.4
SM77.1
SM77.2 SM77.3 SM77.4
PWM更新脉宽时间值
PTO更新脉冲计值 PTO/PWM选择 PWM更新方法:
0 = 无更新;
0 = 无更新; 0 = 1 μ S /tick; 0 = 异步更新;
1 = 更新脉宽
1 = 更新脉冲计数 1 = 1ms/tick 1 = 同步更新
SM67.5
SM67.6
SM77.5
SM77.6
PTO操作:
PTO/PWM模式选择
0 = 单段操作;