西门子S7-200系列PLC高速计数器的应用步骤有哪些
[整理]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(高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
200高速计数器向导的使用
高速计数器的使用向导在STEP 7 MicroWIN 菜单中点选—工具—指令向导---HSC(配置高速计数器)第一步,项目编译无错误后,选择HSC编号和模式,详细信息请见.高速计数器的模式及输入点。
高速计数器及模式选择配置初始化信息为初始化子程序命名,或者使用默认名称设置计数器预置值:可以为整数、双字地址或符号名:如5000、VD100、PV_HC1。
用户可使用全局符号表中双字整数对应的符号名。
地址必须为双字地址,注释可以不填设置计数器初始值:可以为整数、双字地址或符号名:5000初始化计数方向:增,减。
对于带外部复位端的高速计数器,可以设定复位信号为高电平有效或者低电平有效。
对于带外部启动端的高速计数器,可以设定启动信号为高电平有效或者低电平有效。
如果使用的高速计数器或工作模式没有外部复位或启动端,则对应选项为虚。
使用A/B相正交计数器时,可以将计数频率设为1倍速或4倍速。
使用非A/B相正交计数器时,此项为虚。
程序例子// 主程序:// 在主程序中,首先将输出Q0.0置,0,因为这是脉冲输出功能的需要。
再初始化高速计// 数器HSC0,然后调用子程序0和1。
// HSC0起动后具有下列特性:可更新CV和PV值,正向计数。
// 当脉冲输出数达到SMD72中规定的个数后,程序就终止。
// 主程序LD SM0.1 // 首次扫描标志(SM0.1=1)。
R Q0.0,1 // 脉冲输出Q0.0复位(Q0.0=0)。
MOVB 16#F8,SMB37 // 装载HSC0的控制位:// 激活HSC0,可更新CV,可更新PV,// 可改变方向,正向计数。
// HSC指令用这些控制位来组态HSC。
MOVD 0,SMD38// HSC0当前值(CV)为0。
MOVD 1000,SMD42 // HSC0的第一次设定值(PV)为1000。
HDEF 0,0 // HSC0定为模式0。
CALL 0 // 调用子程序0。
CALL 1 // 调用子程序1。
西门子200(CPU226cn)高速计数器部分调试说明(适用于飞剪系统)
编者注:此文档主要针对西门子S7-200系列中的CPU226CN的高速计数器模块,内容包括S7-200实验平台的搭建、CPU226CN高速计数器部分的解决方案和高速计数器部分的简单程序讲解。
建议:首先请简单阅读用户手册相关内容,再做此实验。
目录:1、S7-200实验平台的搭建 (2)1.1实验材料的准备 (2)1.2安装microwinv4.0 (2)1.3对实验器材进行连线安装 (3)2、CPU226CN高速计数器部分的解决方案 (4)2.1 配置通讯 (4)2.2 配置高速计数器,使用高速计数器向导 (6)2.3 完善高速计数器程序,实现高速计数功能 (10)2.4 高速计数程序的简单描述 (13)2.5 修改程序参数,实现I0.2上升沿清零 (17)3、实验小结 (18)1. S7-200实验平台的搭建进行本次实验的主要目的是要了解S7-200系列中的CPU226CN CPU的高速计数功能以及配置使用方法。
在进行实验以前首先要将实验中要用到的软件和硬件做一个详细的准备,避免在实验过程中因为缺少材料而导致实验失败。
1.1 实验材料的准备硬件:z CPU226CN模块(6ES7 216-2BD23-OX8)z S7-200系列CPU编程电缆z编程计算机(带9针串口)z24V开关电源z编码器1-2个软件:z microwinv4.01.2 安装microwinv4.0运行microwinv4.0的安装程序,正常安装。
安装过程中程序会提示选择将来要使用的通讯方式,如下图所示其默认选项为“PC/PPI cable(PPI)”,即计算机串口对PLC的PPI的通讯方式,此选项可以视实际实验时选用的通讯方式自由选择。
选择好通讯方式后完成程序安装,并重新启动计算机。
1.3 对实验器材进行连线安装西门子CPU226CN的进线电压为交流220V,在对CPU进行接线时一定要按照西门子提供的接线方法规范接线,西门子CPU226CN的接线图如下所示完成连接所有硬件的线路并检查无误后,接通电源。
S7-200系列PLC编程器的高速计数器使用示例
S7-200系列PLC编程器的使用示例Siemens编程器S7-200系列用在中小型设备上的自动系统的控制单元,适用于各行各业,各种场合中的检测,监测及控制。
在这里,和大家一起来讨论S7-200几个使用方面的情况。
1.步进,伺服脉冲定位控制。
在设备的控制系统中,有关运动控制是很重要的,下面我们来看一看西门子S7-200系列PLC怎样来实现这个功能。
首先,确定使用哪个端口来发脉冲,如采用Q0.0发脉冲,则它的控制字为SMB67,脉冲同期为SMW68,脉冲个数存放在SMD72中,下面是控制字节的说明:Q0.0 Q0.1 控制字节说明SM67.0 SM77.0 PTO/PWM更新周期值 0=不更新,1=更新周期值SM67.1 SM77.1 PWM更新脉冲宽度值 0=不更新,1=脉冲宽度值SM67.2 SM77.2 PTO更新脉冲数 0=不更新,1=更新脉冲数SM67.3 SM77.3 PTO/PWM时间基准选择 0=1微秒值,1=1毫秒值SM67.4 SM77.4 PWM更新方法 0=异步更新,1=同步更新SM67.5 SM77.5 PTO操作 0=单段操作,1=多段操作SM67.6 SM77.6 PTO/PWM模式选择 0=选择PTO,1=选择PWMSM67.7 SM77.7 PTO/PWM允许 0=禁止PTO/PWM,1=允许这样根据以上表格,我们得出Q0.0控制字:SMB67为:10000101采用PTO输出,微妙级周期,发脉冲的周期(也就是频率)与脉冲个数都要重新输入。
10000101转化为16进制为85,有了控制字以后,我们来写这一段程序:根据上面这段程序,我们知道了控制字的使用,同时也知道步进电机的脉冲周期与冲个数的存放位置(对Q0.0来说是SMW68与SMD72)。
当然,VW100与VD102内的数据不同的话,步进电机的转速和转动圈数就不一样。
还有一点需要说明得是:M0.0导通---PLC捕捉到上升沿发动脉冲输出后,想停止的话,只须改变端口脉冲的控制字,再启动PLS即可,程序如下:2.高速计数功能。
西门子PLC高速计数器使用方法
高速计数器对CPU扫描速率无法控制的高速事件进行计数,最多可配置12种不同的操作模式。
高速计数器的最高计数频率取决于您的CPU类型。
每台计数器对支持此类功能的时钟、方向控制、复原和起始均有专用输入。
对于二相计数器,两个时钟均可以最高速率运行。
在正交模式中,可选择1乘以(1x)或4乘以(4x)最高计数速率。
所有计数器均以最高速率运行,互不干扰。
本标题讨论下列主题:使用高速计数器识别高速计数器的详细计时功能为高速计数器连接输入线高速计数器编址(HC)识别不同的高速计数器选择现用状态和1x/4x模式高速计数器初始化顺序控制字节HSC模式设置当前值和预设值状态字节为中断赋值使用高速计数器返回顶端通常高速计数器被用作鼓式计数器驱动器,以恒速旋转的转轴配有增量轴式编码器。
轴式编码器提供每次旋转的指定计数以及每次旋转一个复原脉冲。
轴式编码器的时钟和复原脉冲为高速计数器提供输入。
用最先的几个预设值载入高速计数器,并在当前计数小于当前预设值的期间内激活所需输出。
当前计数等于预设值或复原时,计数器设置提供中断。
每次发生当前计数值等于预设值中断事件时,载入新预设值,并设置下一个输出状态。
发生复原中断事件时,设置第一个预设值和第一个输出状态,并重复该循环。
因为中断的发生速率远远低于高速计数器的计数速率,可对高速操作执行精确的控制,并对整体PLC扫描循环产生相对较小的影响。
中断附加方法允许在独立中断例行程序中执行每个载入的新预设值,以便进行状态控制。
(另一种方法是在单个中断例行程序中处理所有的中断事件。
)识别高速计数器的详细计时功能返回顶端下列时序图显示根据模式分类的每台计数器的功能。
在另一个时序图中显示复原和起始输入操作,并应用于所有使用复原和起始输入的模式。
在复原和起始输入图中,复原和起始的现用状态均被编程为高级。
有复原、无起始的操作举例有复原和起始的操作举例模式0、1和2操作举例模式3、4和5操作举例使用计数模式6、7和8时,上下时钟输入的上升沿间隔0.3微秒,高速计数器可能认为这些事件同时发生。
S7200高速计数器
∙高速计数器的实际输入要根据用户选择的高速计数器号和模式来确定,如上表。
例:如果你选择了HSC0的模式1,则你的外部高速计数输入点应接在I0.0,外部复位点应接在I0.2。
∙如果用户使用了多个高速计数器,则被某一高速计数器占用了的输入点,其它高速计数器不能再使用。
如HSC0的模式3已经占用了I0.1作为外部方向控制点,那么HSC3高速计数器就不能再使用了,因为它的计数输入点也是I0.1,与之冲突了。
常问问题:CPU 224 XP的高速计数器模式12,是否可以计数30 KHz以上的脉冲?CPU 224 XP 支持最多100 KHz 的高速脉冲输出。
S7-200 系列CPU 只有高速计数器HSC0, HSC3 能够被设置为模式12,使用的输入端子为I0.0, I0.1,而不是特高速输入端子:I0.3、I0.4、I0.5。
非特高速脉冲信号输入端由于硬件电路的限制(如光电耦合等)只能支持最高30 KHz 的高速脉冲输入。
用户使用高速计数器模式12 时不需要任何外部连线,Q0.0(Q0.1) 与I0.0(I0.1) 通过集成电路内部关联,越过了外部信号处理电路,因此HSC0(HSC1) 可以计100KHz 或者更高频率的脉冲。
用户在使用向导配置S7-200 内部PTO/ PWM 操作时,勾选“使用高速计数器HSCx(模式12)自动计数线性PTO 生成的脉冲”即可。
高速计数器怎样占用输入点?高速计数器根据被定义的工作模式,按需要占用CPU上的数字量输入点。
每一个计数器都按其工作模式占用固定的输入点。
在某个模式下没有用到的输入点,仍然可以用作普通输入点;被计数器占用的输入点(如外部复位),在用户程序中仍然可以访问到。
为什么高速计数器不能正常工作?在程序中要使用初次扫描存储器位SM0.1来调用HDEF指令,而且只能调用一次。
如果用SM0.0调用或者第二次执行HDEF指令会引起运行错误,而且不能改变第一次执行HDEF指令时对计数器的设定。
西门子S7-200 PLC高速脉冲输出向导使用方法
1、概述S7-200 有两个置PTO/PWM 发生器,用以建立高速脉冲串(PTO)或脉宽调节(PWM)信号波形。
当组态一个输出为PTO 操作时,生成一个50%占空比脉冲串用于步进电机或伺服电机的速度和位置的开环控制。
置PTO功能提供了脉冲串输出,脉冲周期和数量可由用户控制。
但应用程序必须通过PLC内置I/O 提供方向和限位控制。
为了简化用户应用程序中位控功能的使用,STEP7--Micro/WIN 提供的位控向导可以帮助您在几分钟内全部完成PWM,PTO或位控模块的组态。
向导可以生成位置指令,用户可以用这些指令在其应用程序中为速度和位置提供动态控制。
2、开环位控用于步进电机或伺服电机的基本信息借助位控向导组态PTO 输出时,需要用户提供一些基本信息,逐项介绍如下:⑴最大速度(MAX_SPEED)和启动/停止速度(SS_SPEED)图1是这2 个概念的示意图。
MAX_SPEED是允许的操作速度的最大值,它应在电机力矩能力的范围。
驱动负载所需的力矩由摩擦力、惯性以及加速/减速时间决定。
图1 最大速度和启动/停止速度示意SS_SPEED:该数值应满足电机在低速时驱动负载的能力,如果SS_SPEED的数值过低,电机和负载在运动的开始和结束时可能会摇摆或颤动。
如果SS_SPEED的数值过高,电机会在启动时丢失脉冲,并且负载在试图停止时会使电机超速。
通常,SS_SPEED 值是MAX_SPEED 值的5%至15%。
⑵加速和减速时间加速时间ACCEL_TIME:电机从SS_SPEED速度加速到MAX_SPEED速度所需的时间。
减速时间DECEL_TIME:电机从MAX_SPEED速度减速到SS_SPEED速度所需要的时间。
图2 加速和减速时间加速时间和减速时间的缺省设置都是1000毫秒。
通常电机可在小于1000 毫秒的时间工作。
参见图2。
这2个值设定时要以毫秒为单位。
注意:电机的加速和失速时间要过测试来确定。
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、用比较指令来实现正反转控制,按下启动按钮I0.3,Q0.0输出,电机正转,高速计数器计到50个脉冲后电机停止,过5秒后Q0.1输出,电机反转,计数器计到50个脉冲后电机停止,过5s后又开始电机的正转,如此循环。
主程序:子程序:以上的程序中,首先做一个高速计数器初始化的子程序,首先是定义控制字节,送16#F8到SMB37,定义为加计数更新当前值,这里写入初始值为0和预设值为50,定义的是高速计数器HSC0和HSC 模式1,然后激活高速计数器。
因为控制要求是按下启动按钮I0.3,Q0.0输出,电机正转。
首先就做个起保停程序,I0.3启动串联I0.4停止,来驱动输出Q0.0并做Q0.0的自锁,同时做一个用I0.3的上升沿来调用高速计数器初始化子程序,注意这里的起保停是有做正反转的互锁的。
然后再用Q0.0常开触点串联一个HC0大于等于SMD42的比较指令来输出M0.0,并把M0.0的常闭触点串联在起保停程序中,作为高速计数器计到50个脉冲后电机停止。
电机停止过5秒后Q0.1输出,电机反转,那么我们就用M0.0来置位M0.1,再用M0.1常开触点来驱动来驱动定时器T37延时5秒,并用T37常开触点来驱动复位M0.1,这里是为了让定时器定时时间到时复位定时器。
然后再用T37常开触点来驱动输出Q0.1并做Q0.1的自锁,同时也用T37的上升沿来调用高速计数器初始子程序。
然后再用Q0.1常开触点串联一个HC0大于等于SMD42的比较指令来输出M0.2,并把M0.2的常闭触点串联在起保停程序中,作为高速计数器计到50个脉冲后电机停止。
电机停止过5s后又开始电机的正转,那么我们就用M0.2来置位M0.3,再用M0.3常开触点来驱动来驱动定时器T38延时5秒,并用T38常开触点来驱动复位M0.3,这里也是为了让定时器定时时间到时复位定时器。
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提供了一个状态字节,为了监视高速计数器的工作状态,执行由高速计数器引用的中断事件,其格式如表。
西门子Smart200PLC高速计数器讲解
建议收藏!西门子Smart200PLC高速计数器讲解
2018-12-05 10:14
通过一个例子讲解一下西门子Smart200PLC的高速计数输入应用。
用到的实验器材为:SmartPLC ST30 PLC 一个,编码器一个。
一、硬件接线
本例用PLC的I0.0与I0.1口主要接线见下图。
smartPLC集成有4个高速计数器,分别是HSC0,HSC1,HSC2,HSC3.对应的接线图中标记很清楚了。
这边我用红色部分标记的是我们这次实验用的接线与模式。
接线原理图
编码器类型为E6B2-CWZ5B,1000P/R
二、软件编程
1.把定义的I0.0与I0.1口的输入降噪滤波时间调整一下,满足实际高速输入的需求,具体见下图
对应的时间,对应的最大频率如下
2.通过向导定义高速计数
a.打开工具----高速计数器
b.定义HSC0
c.定义模式
d.预设值和倍频
e.定义当预设值和当前值一样时,触发中断程序
f.中断程序里面,我定义到达5000脉冲后把当前计数清零
3.向导生成后程序如下图
a.初始化程序和中断程序
b.在主程序里面SM0.1触发初始化程序
C.初始化程序部分
d.中断清零程序
三、最后程序监控HCO计数值。
关于西门子S7-200高速计数器的使用方法(转载自网络)
关于西门子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 时,设备运行停止。
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高速计数器的使用方法程序通过先设定计数器的值,本例中设定值为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.高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1、建一个初始化程序,用SM0.1控制;
2、在初始化程序中,初始化高速计数器
2.1 设置控制寄存器(HSC0为SMB37),不同的计数器对应不同的DI点,HSC0为I0.0,HSC3为I0.1,HSC4为I0.2,HSC5为I0.3(222不支持HSC1和HSC2)
2.2 执行HDEF指令,你可以用模式0
2.3 置计数器初始值(HSC0为SMD38),如果从零启动就置零
2.4 置预置值(HSC0为SMD42),计数器计到这个值可以产生一个中断,一般利用这个中断调用相应的中断程序把当前值(SMD38)复零,否则计数器到头就不再计数了,当然你也可以置一个大点的值,在其他程序中清除当前值(SMD38),确保永远到不了头就可以了。
2.5 指定中断程序(ATCH),中断事件是12,程序号看你程序了
2.6 打开中断(ENI),这条指令没有的话,2.5是不起作用的
2.7 启动高速计数器(HSC),按前面的初始化,你就要启动HSC0,即N 为0
3、程序中读取高速计数器的值,对于HSC0,HC0单元中的内容就是当前的计数值,这个单元只读不能写,你可以通过修改SMD38的内容改变当前的计数值。
艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。
如需进一步了解台达PLC、西门子PLC、施耐德plc、欧姆龙PLC的选型,报价,采购,参数,图片,批发等信息,请关注艾驰商城/。