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(高速计数器的输入端高速计数器的输入端不像普通输入端那样有用户定义,而是由系统指定的输入点输入信号,每个高速计数器对它所支持的脉冲输入端,方向控制,复位和启动都有专用的输入点,通过比较或中断完成预定的操作。
高速计数及脉冲输出指令
计数方向控制位: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脉冲
概述S7--200提供了三种方式的开环运动控制:•脉宽调制(PWM)--内置于S7--200,用于速度、位置或占空比控制。
•脉冲串输出(PTO)--内置于S7--200,用于速度和位置控制。
•EM253位控模块--用于速度和位置控制的附加模块。
S7—200的内置脉冲串输出提供了两个数字输出通道(Q0.0和Q0.1),该数字输出可以通过位控向导组态为PWM或PTO的输出。
当组态一个输出为PTO操作时,生成一个50%占空比脉冲串用于步进电机或伺服电机的速度和位置的开环控制。
内置PTO功能仅提供了脉冲串输出。
您的应用程序必须通过PLC内置I/O或扩展模块提供方向和限位控制。
PTO按照给定的脉冲个数和周期输出一串方波(占空比50%),如图1。
PTO可以产生单段脉冲串或者多段脉冲串(使用脉冲包络)。
可以指定脉冲数和周期(以微秒或毫秒为增加量):•脉冲个数:1到4,294,967,295•周期:10μs(100K)到65535μs或者2ms到65535ms。
图1200系列的PLC的最大脉冲输出频率除CPU224XP 以外均为20kHz。
CPU224XP可达100kHz。
如表1所示:表12 MAP库的应用2.1 MAP库的基本描述现在,200系列PLC 本体PTO 提供了应用库MAP SERV Q0.0 和MAP SERV Q0.1,分别用于Q0.0 和Q0.1 的脉冲串输出。
如图2所示:图2注:这两个库可同时应用于同一项目。
各个块的功能如表2所示:表2总体描述该功能块可驱动线性轴。
为了很好的应用该库,需要在运动轨迹上添加三个限位开关,如图3:•一个参考点接近开关(home),用于定义绝对位置C_Pos 的零点。
•两个边界限位开关,一个是正向限位开关(Fwd_Limit),一个是反向限位开关(Rev_Limit)。
•绝对位置C_Pos 的计数值格式为DINT ,所以其计数范围为(-2.147.483.648 to +2.147.483.647).•如果一个限位开关被运动物件触碰,则该运动物件会减速停止,因此,限位开关的安置位置应当留出足够的裕量ΔSmin 以避免物件滑出轨道尽头。
S7-200高速脉冲输出应用
S7-200高速脉冲输出应用前面学习了高速计数器的内容,紧接着我们就来学习一下高速脉冲输出的内容,高速脉冲输出一般是用在运动控制里面,用来控制步进或伺服,高速脉冲输出也是比较重要的一部分,我们必须得掌握好它。
在S7-200中有两个PTO/PWM高速脉冲发生器,可以产生高速脉冲串(PTO)或脉宽调制信号波形(PWM)。
在S7-200中有脉冲输出指令PLS,它用来控制在高速脉冲输出(Q0.0和Q0.1)中提供的高速脉冲串输出(PTO)和脉宽调制(PWM)功能。
PTO/PWM与数字量输出过程映像区共用输出点Q0.0和Q0.1,当在Q0.0或Q0.1上激活了PTO/PWM功能时,是会禁止普通输出点功能的,这时Q0.0或Q0.1的输出波形是不受过程映像区状态、输出点强制值或者立即输出指令的影响的,我们使用状态表或趋势图是监控不了的。
要做高速脉冲输出,我们应该选用24VDC晶体管输出的CPU,而不能选用继电器输出的CPU,这是我们要注意的。
高速脉冲输出一般是用在运动控制里面,用来控制步进或伺服。
利用高速脉冲输出实现运动控制,除了有PTO、PWM,还有EM253定位模块,这三种方式都可以实现运动控制,不过要注意的是PTO和PWM可以使用脉冲输出指令PLS和向导来实现,而且PTO方式的甚至还可以使用运动控制库指令来实现,而使用EM253定位模块的话就只能通过向导来实现,而不能使用PLS指令或运动控制库指令。
我们先看一下脉冲串操作PTO,PTO是按照给定的脉冲个数和周期输出一串方波(占空比50%)。
在使用时,我们要设定其脉冲个数和周期,我们要注意的是设定是周期数应该是偶数,如果设定的周期数为奇数的话,是会引起占空比失真的。
而脉宽调制PWM,它是产生一个占空比变化周期固定的脉冲输出的,我们可以设定其周期和脉宽,我们要注意的是当设定的脉宽等于周期时,输出是一直为ON的,当设定的脉宽等于0时,输出是断开的。
一般来说,使用脉冲串PTO会比较多,所以后面学习时也是重点学习脉冲串PTO的。
西门子s7200-PLC-基本指令
梯形图
操作数
无 无
NOT
NOP N
改变能流输入的状态
空操作
无
N=0~255
正负跳变指令、取反指令、空操作指令的几点规定
1. 正跳变指令(EU)检测到每一次正跳变(触点的输入信号 由0到1),或负跳变指令(ED)检测到每一次负跳变(触点的 输入信号由1到0),让能流接通一个扫描周期。对于正跳变指令 ,一旦发现有正跳变发生(由0到1),该栈顶值被置为1,否则 置0。对于负跳变指令,一旦发现有负跳变发生(由1到0),该 栈顶值被置为1,否则置0。 2. 取反指令(NOT)将它左边电路的逻辑运算结果取反,运算 结果为1,则变为0,为0则变为1。 3. 空操作指令(NOP)不影响程序的执行。
新值同时写到物理输出点和对 应的输出映像寄存器中 bit: Q N的取值范围为 :1~128
RI bit,N
=I bit
说明: “I”表示立即,当指令执行时,新值会同时被写到物理输出点和对 应的输出过程映象寄存器。这一点不同于非立即指令,只把新值写入 过程映像寄存器。
② 立即触点指令 语句表 LDI bit AI bit 功能 常开立即触点与左侧母线相连接 常开立即触点与其他程序段相串联 梯形图 操作数
特殊存储区的简单应用
案例1.
当报警信号I0.0接通时,报警指示灯Q0.1闪烁
例3扩展
特殊存储区,具有闪烁功 能
案例2.
在自动控制系统中,按下启动按钮I0.1,启动指示灯Q0.0输出,为了防止操 作员误动作,因此停止时需两个按钮I0.3及I0.2都按下,系统才能停止,启动 灯灭。
案例3.
水位低报警信号I0.1,故障指示灯Q0.1在有检测到故障时保持闪烁 直到按下复位按钮I0.2,指示灯灭。
SLC的功能指令
复位有效电平控制位;0(高电平有 效),1(低电平有效) 启动有效电平控制位;0(高电平有 效),1(低电平有效) 正交计数器计数速率选择,0(4X),1(1X)
计数方向控制位;0(减计数),1(增计数)
SM37.4 SM37.5 SM37.6 SM37.7
向HSC中写入计数方向;0(不更新),1(更 新计数方向)
返回目录
1.高速脉冲输出指令的格式
PLS Q STL指令
2.高速脉冲的输出方式 高速脉冲输出可分为:
高速脉冲串输出(PTO):提供方波输出,用户控制脉冲周期和脉冲数 宽度可调脉冲输出(PWM):提供连续、占空比可调的脉冲输出,用户 控制脉冲周期和脉冲宽度
返回目录
3.输出端子的连接 每个CPU有两个PTO/PWM发生器产生高速脉冲串和脉冲宽度可调
当前值大于预置值状 态位;0(小于等 于);1(大于)
指出了当前计数方向 当前值与预置值是否相等 当前值是否大于预置值的状态
可以通过监视高速计数器的状态位产生相应中断,完成重要操作。 返回目录
5. 高速计数器设置过程 为更好地理解和使用高速计数器,下面给出高速计数器的一般设置过
程。 (1)使用初始化脉冲触点SM0.1调用高速计数器初始化操作子程序。(这个 结构可以使系统在后续的扫描过程中不再调用这个子程序,从而减少了 扫描时间,且程序更加结构化)。
返回目录
2 指令功能 (1) 定义高速计数器指令(HDEF):
“HSC”端口指定高速计数器编号(0~5), “MODE”端口指定工作模式(0~11,各高速计 数器至多有12种工作模式)。EN端口执行条件 存在时,HDEF指令为指定的高速计数器选定一 种工作模式。在一个程序中,每一个高速计数器 只能使用一次HDEF指令。
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.高速计数功能。
西门子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系列PLC控制步进电机进行正反转的方法
1、主程序先正转,等到正转完了就中断,中断中接通个辅助触点(M0.X),当M.0X闭合,住程序中的反转开始运做。
这样子就OK了。
2、用PTO指令让Q0.0 OR Q0.1高速脉冲,另一个点如Q0.2做方向信号,就可以控制正反转了,速度快慢就要控制输出脉冲周期了,周期越短速度越快,如果你速度很快的话请考虑缓慢加速,不然它是启动不了的,如果方向也变的快的话就要还做一个缓慢减速,不然它振动会蛮厉害,而且也会失步。
3、程NETWORK 1 // 用于单段脉冲串操作的主程序(PTO)// 首次扫描时,将映像寄存器位设为低// 并调用子程序0LD SM0.1R Q0.0 1CALL SBR_0NETWORK 1 // 子程序0开始LD SM0.0MOVB 16#8D SMB67 // 设置控制字节:// - 选择PTO操作// - 选择单段操作// - 选择毫秒增加// - 设置脉冲计数和周期数值// - 启用PTO功能MOVW +500 SMW68 // 将周期设为500毫秒。
MOVD +4 SMD72 // 将脉冲计数设为4次脉冲。
ATCH INT_0 19 // 将中断例行程序0定义为// 处理PTO完成中断的中断。
ENI // 全局中断启用PLS 0 // 激活PTO操作,PLS0 =》Q0.0MOVB 16#89 SMB67 // 预载控制字节,用于随后的// 周期改动。
NETWORK 1 // 中断0开始// 如果当前周期为500毫秒:// 将周期设为1000毫秒,并生成4次脉冲LDW= SMW68 +500MOVW +1000 SMW68PLS 0CRETINETWORK 2// 如果当前周期为1000毫秒:// 将周期设为500毫秒,并生成4次脉冲LDW= SMW68 +1000MOVW +500 SMW68PLS 0序注释艾驰商城是国内最专业的MRO工业品网购平台,正品现货、优势价格、迅捷配送,是一站式采购的工业品商城!具有10年工业用品电子商务领域研究,以强大的信息通道建设的优势,以及依托线下贸易交易市场在工业用品行业上游供应链的整合能力,为广大的用户提供了传感器、图尔克传感器、变频器、断路器、继电器、PLC、工控机、仪器仪表、气缸、五金工具、伺服电机、劳保用品等一系列自动化的工控产品。
S7-200的高速脉冲输出
S7—200的高速脉冲输出在需要对负载进行高精度控制时,如对步进电机的控制,需要对步进电机提供一系列的脉冲,高速脉需求而开发的。
1.1高速脉冲输出---输出端子的确定S7—200只有输出继电器Q0.0和Q0。
1具有高速脉冲输出功能,不用高速脉冲时,作普通的1.2高速脉冲输出的形式高速脉冲输出有两种的形式:高速脉冲序列(或称高速脉冲串)输出PTO脉冲宽度调制输出PWM可通过特殊继电器来定义输出的形式1.3高速脉冲输出相关寄存器每个高速脉冲发生器对应一定数量特殊标志寄存器,这些寄存器包括控制字节寄存器、状态字用以控制高速脉冲的输出形式、反映输出状态和参数值。
1。
4编程中的脉冲输出指令PLS指令功能:EN有效,检测各相关寄存器的状态,激活由控制字节定义的高速脉冲输出操作。
Q取0或1图1。
4‑12PWM简介及编程运用PWM(Pulse WidthModulation脉冲调制)宽度可调脉冲输出PWM功能提供带变量占空比的固定周期输出。
可以微秒或毫秒为时间基准指定周期和脉宽。
2。
1S7—200的PWMS7—200有两台PWM发生器,建立高速脉冲串或脉宽调节信号信号波形。
一台发生器指定给数字指定给数字输出点Q0。
1。
一个指定的特殊内存(SM)位置为每台发生器存储以下数据:一个控制字值(一个不带符号的32位值)和一个周期和脉宽值(一个不带符号的16位值)。
PWM功能在Q0。
0或Q0.1位置现用时,PWM发生器控制输出,并禁止输出点的正常使用。
输出信状态、点强迫数值、执行立即输出指令的影响。
如图2。
1‑1图2。
1‑12。
2 PWM周期和脉冲宽度脉冲宽度为16为无符号数,脉冲宽度增量单位为us或ms.范围0~65535,占空比为0~100%。
当输出将连续接通。
为0时,输出一直被关断。
如表1表1周期和脉冲宽度脉宽时间/周期反应脉宽时间 >=周期值占空比为100%:输出连续运行。
脉宽时间 = 0占空比为0%:输出关闭。
西门子s7200-PLC-基本指令
例4.1:装载及驱动线圈指令用法示例
LD I0.0 = M0.0 LDN I0.1 = Q0.0 = Q0.1
说明: (1)LD、LDN指令总是与母线相连(包括在分支点引出的母线); (2)=指令不能用于输入继电器; (3)具有图3-1中的最后2条指令结构的输出形式,称为并联输出, 并联的=指令可以连续使用; (4)=指令的操作数不可重复使用。
指令练习
3. 根据下面设计要求写出对应的梯形图和语句表 设计要求: 当I0.0接通,且I0.1断开时,接通Q0.0 当接通Q0.0时,且T10接通时,则M0.1通电
请写出以下梯形图对应的语句表
3. 置位/复位指令S/R
普通线圈获得能量流时线圈通电,能量流不能到达时 ,线圈断电,置位/复位指令则是将线圈设成为置位 线圈和复位线圈两大部分,将存储器的置位、复位功 能分开,置位线圈受到脉冲前沿触发时,线圈通电锁 存(存储器位置1)、复位线圈受到脉冲前沿触发时 ,线圈断电锁存(存储器位置0)。下次置位、复位 操作信号到来前,线圈状态保持不变。
当存储器某地址的位(bit)值为1时,则与之对 应的常开触点闭合;而与之对应常闭触点断开。
1.装载指令及驱动线圈指令 LD/LDN/OUT
装载指令及驱动线圈指令如表4-2 所示。
语句表
表4-2装载指令及线圈输出指令
功能
梯形图
操作数
LD bit
常开触点与左侧母线 相连接
I、Q、M、SM、T、C、V、 S、L
LD I0.4 LPS EU = Q0.4 LPP ED = Q0.5
LD I0.4 EU = Q0.4 ED = Q0.5
跳变指令将信号的跳变转换成持续仅一个扫描周期的短脉冲。或者 可理解成把即将开始的较长过程转换成一种起始信号(有何意义)
西门子S7-200 PLC指令学习(1)
西门子S7-200 PLC指令学习S7-200系列的基本逻辑指令S7-200系列的基本逻辑指令与FX系列和CPM1A系列基本逻辑指令大体相似,编程和梯形图表达方式也相差不多,这里列表表示S7-200系列的基本逻辑指令(见表)。
表S7-200系列的基本逻辑指令S7-200系列PLC的比较指令在SIEMENS S7-200的编程软件STEP-7中,有专门的比较指令:IN1与IN2比较,比较的数据类型可以是B、I(W)、D、R,即字节、字整数、双字整数和实数;还可以有其他的比较式:>、<、≥、≤、<>等等。
当满足比较等式,则该触点闭合。
与LMODSOFT指令对照:在LMODSOFT中,没有直接的数的比较指令,但SUB指令可以通过其执行减法功能后的三个输出端的状态实现整数的比较功能。
若与LMODSOFT 中的SUB指令对应,则在STEP-7中应有三个比较指令: >、=、< 来分别对应SUB 指令的三个输出;若还要对应≥、≤、或<>,则根据SUB指令三个输出端的不同组合,均可找到对应的比较指令。
比如:①(30007)>(40030)②(30007)=(40030)③ (30007)<(40030)①+②(30007)≥②+③(30007)≤(40030)①+③(30007)<>(40030)S7-200系列PLC的定时器指令类型、编号及分辨率TON——接通延时TONR——有记忆接通延时TOF——断开延时3种分辨率(时基):1ms、10ms、100ms——分别对应不同的定时器号定时器6个要素:指令格式(时基、编号等)预置值——PT使能——IN 复位——3种定时器不同当前值——Txxx 定时器状态(位)——可由触点显示定时值=时基×预置值PT。
由于定时器的计时间隔与程序的扫描周期并不同步,定时器可能在其时基(1ms、10ms、100ms)内任何时间启动,所以,未避免计时时间丢失,一般要求设置PT预置值必须大于最小需要的时间间隔。
电气控制与PLC(案例教程)教学课件第11章 S7-200PLC高速计数和脉冲输出指令及应用——以
• (4)切割刀回程触发BG2限位开关后,回程结束。 • (5)设备再次运行进行下一次物料进给切割,循环往复,将材料切分成长度相同的成品。
11.2 步进电动机及驱动器
• (4)在启动中断程序之前,必须使中断事件与发生此事件时希望执行的程序段建立联系,使用ATCH指令建 立中断事件与程序段之间的联系。将中断事件连接到中断程序时,该中断自动被启动。根据指定事件优先 级组,PLC按照先来先服务的顺序对中断提供服务。
• (5)中断调用即调用中断程序,使系统对特殊的内部事件产生响应。系统响应中断时自动保存逻辑堆栈、 累加器和某些特殊标志存储器位,即保护现场。中断处理完成时又自动恢复这些单元原来的状态,即恢复 现场。
• 当把中断程序连接到定时中断事件上,如果该定时中断被允许,则开始计时,定时中断就连续 地运行,每当达到定时时间值,执行中断程序。通常可用定时中断以固定的时间间隔对模拟量输 入进行采样或者执行PID控制回路。
• 2)定时器T32/T96中断允许对定时时间间隔产生中断。这类中断只支持1ms分辨率的定时器 T32和T96。当定时器的当前值等于预设值时,响应中断,在CPU的正常1ms定时刷新中,执行 中断程序。
• CPU响应中断的原则:当不同优先级别的中断事件同时向CPU发出中断请求时,CPU总是 按照优先级别由高到低的顺序响应中断。在任何时刻,CPU只执行一个中断程序。一旦中断程 序开始执行,它要一直执行到结束,而且不会被别的中断程序,甚至是更高优先级的中断程序所 打断。中断程序执行中,新出现的中断请求按优先级和到来时间的先后顺序进行排队等候处理。
经典讲解S7-200PLC的PWM输出向导,请查收
经典讲解S7-200PLC的PWM输出向导,请查收S7-200 SMART CPU 提供脉冲宽度调制功能(PWM),使用向导或特殊寄存器(SM)控制CPU集成的高速输出点,最多可实现三路PWM输出,三个输出点分别为Q0.0、Q0.1和Q0.3。
PWM是指占空比可变、周期固定的脉冲。
PWM输出以指定频率(循环时间)启动之后将连续运行。
脉宽则根据所需要的控制要求而变化。
占空比可表示为周期的百分比或对应于脉冲宽度的时间值。
一、如何使用向导组态设置PWM除了直接使用设置特殊寄存器发送PWM,还可以使用软件中提供的向导。
下面使用个具体的例子来说明如何使用向导设置PWM。
假设发送的脉冲周期为100ms,脉冲宽度为50ms,使用Q0.0发送PWM。
具体组态步骤如下所述。
1、首先,在“工具”菜单功能区选择PWM,弹出向导组态界面,然后激活PWM0。
S7-200 SMART总共支持3个PWM输出。
2、选择脉冲的时基为毫秒或者微秒。
3、时基组态完毕,单击“生成”按钮(Generate),会生成一个名为PWM0_RUN 子程序,在项目树的调用子程序文件夹中可以找到此子程序。
4、调用生成的程序块调用PWM0_RUN,设置Cycle(周期)=100,Pulse(脉冲宽度,注:Pulse中文直译为脉冲的意思,但此处需翻译为脉宽,Pulse Width)=50,触发M0.0后,Q0.0就会输出周期为100ms、占空比为50%的连续方波。
二、使用SM特殊寄存器设置PWMPWM功能除了使用PWM向导配置以外,还可以使用特殊寄存器进行配置,特殊寄存器每个位的定义都不同,用户可以对照特殊寄存器的定义表,分别设置每个位,最后组成控制字节,由程序写入。
下面用一个具体的例子来说明,如何通过设置特殊寄存器来发送PWM。
假如需要发送的脉冲周期为100ms,脉宽为30ms,发送脉冲的输出点为Q0.0。
①使用M0.0上升沿触发,将控制字16#8B送入SMB67,16#8B 对应的功能为:使能Q0.0的PWM功能,使能更新脉冲周期、脉冲宽度,使用1ms时基。
最专业的PLC知识讲解:PLC高速脉冲输出指令
最专业的PLC知识讲解:PLC高速脉冲输出指令基本指令和顺序控制指令是PLC最常用的指令,为了适应现代工业自动控制需要,PLC制造商开始逐步为PLC增加很多功能指令,功能指令使PLC具有强大的数据运算和特殊处理功能,从而大大扩展了PLC的使用范围。
S7-200 PLC 内部有两个高速脉冲发生器,通过设置可让它们产生占空比为50%、周期可调的方波脉冲(即PTO脉冲),或者产生占空比及周期均可调节的脉宽调制脉冲(即PWM脉冲)。
占空比是指高电平时间与周期时间的比值。
PTO脉冲和PWM脉冲如图1所示。
图1 PTO脉冲和PWM脉冲说明在使用脉冲发生器功能时,其产生的脉冲从Q0.0和Q0.1端子输出,当指定一个发生器输出端为Q0.0时,另一个发生器的输出端自动为Q0.1,若不使用脉冲发生器,这两个端子恢复普通端子功能。
要使用高速脉冲发生器功能,PLC应选择晶体管输出型,以满足高速输出要求。
一、指令说明高速脉冲输出指令说明如下:二、高速脉冲输出的控制字节、参数设置和状态位要让高速脉冲发生器产生合符要求的脉冲,须对其进行有关控制及参数设置,另外,通过读取其工作状态可触发需要的操作。
1.控制字节高速脉冲发生器的控制采用一个SM 控制字节(8位),用来设置脉冲输出类型(PTO或PWM)、脉冲时间单位等内容。
高速脉冲发生器的控制字节说明见表5-14,例如当SM67.6=0时,让Q0.0端子输出PTO脉冲;当SM77.3=1时,让Q0.1端子输出时间单位为ms的脉冲。
表1 速脉冲发生器的控制字节2.参数设置高速脉冲发生器采用SM存储器来设置脉冲的有关参数。
脉冲参数设置存储器说明见表2,例如SM67.3=1,SMW68=25,则将脉冲周期设为25ms。
表2 脉冲参数设置存储器3. 状态位高速脉冲发生器的状态采用SM位来显示,通过读取状态位信息可触发需要的操作。
高速脉冲发生器的状态位说明见表3,例如SM66.7=1表示Q0.0端子脉冲输出完成。
PLC高速脉冲指令
高速脉冲串输出PTO
• (1)周期和脉冲数 • (2)PTO的种类 • (3)中断事件类型 • (4)PTO的使用
(1)周期和脉冲数
• 周期: 单位可以是微秒μs或毫秒ms;为16位无 符号数据,周期变化范围是50~65535μs或 2~65535ms,通常应设定周期值为偶数,若设 置为奇数,则会引起输出波形占空比的轻微失 真。如果编程时设定周期单位小于2,系统默 认按2进行设置。
步进电机工作过程
•(2)分析 ➢确定脉冲发生器及工作模式 ➢设置控制字节 ➢写入周期值、周期增量值和 脉冲数 ➢装入包络表首地址 ➢中断调用 ➢执行PLS指令
•(3)程序实现
•本控制系统主程序如下图5.16所示。初始化子程序 SBR_1如图5.17所示。包络表子程序如图5.18所示。 中断程序如图5.19所示。
• 单段管线 • 多段管线
•包络表由包络段数和各段构成。每段长度为8个字节, 包括: 脉冲周期值(16位)、周期增量值(16位)和 脉冲计数值(32位)。以包络3段的包络表为例,包 络表的结构如表所示。
(3)中断事件类型
• 高速脉冲串输出可以采用中断方式进行 控制, 各种型号的PLC可用的高速脉冲串 输出的中断事件有两个, 如表所示。
又从C点开始减速到D点, 完成这一过程时用指示灯显 示。电机的转动受脉冲控制, A点和D点的脉冲频率为 2kHz, B点和C点的频率为10kHz, 加速过程的脉冲数 为400个, 恒速转动的脉冲数为4000个, 减速过程脉冲 数为200个。 • 工作过程如图所示。
频率(KHz)
B 10
A 2
C
D 时间
• 脉冲数: 用双字长无符号数表示,脉冲数取值 范围是1~4294967295之间。如果编程时指定脉 冲数为0,则系统默认脉冲数为1个。
西门子S7-200实现高速脉冲输出
与其他品牌的PLC相比,西门子S7-200的价格可 能较高,对于一些预算有限的项目来说可能不太 合适。改进方向可以是降低成本或提供更多性价 比高的产品选项。
复杂编程
对于不熟悉西门子编程环境的用户来说,实现高 速脉冲输出可能需要较复杂的编程过程。改进方 向可以是提供更直观、易用的编程工具或教程。
提升了系统性能
丰富了控制功能
西门子S7-200 PLC在高速脉冲输出的基础上 ,还可以实现多种复杂的控制功能,如位置 控制、速度控制等,进一步拓展了其应用领 域。
高速脉冲输出功能的实现,提高了控 制系统的响应速度和精度,使得整个 系统的性能得到了显著提升。
未来发展趋势预测
更高速度、更高精度的脉冲输出
纺织机械
通过S7-200输出的高速脉冲信号,控制纺织机械 的各执行机构,实现纺织品的精确编织和加工。
西门子S7-200实现高速脉冲
05
输出优势与不足
优势分析
高速性能
西门子S7-200 PLC具有高速脉冲输 出功能,可以实现快速、准确的脉冲 信号输出,满足高速运动控制的需求。
高精度控制
通过精确的定时器和计数器,S7200可以实现高精度的脉冲输出控制,
性能测试与验证
测试脉冲输出功能
使用示波器或逻辑分析仪等测试 工具,对S7-200 PLC输出的高 速脉冲进行测试,验证脉冲的频 率、数量、宽度等参数是否符合
要求。
验证控制精度
通过与实际设备或模拟负载的连 接,验证高速脉冲输出的控制精 度和稳定性,确保满足实际应用
需求。
优化性能参数
根据测试结果,对控制程序或硬 件配置进行调整和优化,进一步
02 连接脉冲输出模块
将选定的脉冲输出模块正确连接到S7-200 PLC的 相应插槽上,并确保模块与PLC之间的通讯连接 正常。
S7-200_PLC的复杂功能指令-1(07)
主讲: 主讲: s7s7-200
机电一体化
§7-12 高速脉冲输出指令
1. 高速脉冲输出的几个概念 1) 高速脉冲输出的形式 ● 高速脉冲串输出 PTO :
( Pulse Train Output )
输出指定数量,占空比为50% 的方波脉冲串。 输出指定数量,占空比为50% 的方波脉冲串。 指定数量
PTO的种类 3) PTO的种类
PTO方式下,要输出多段脉冲串时, PTO方式下,要输出多段脉冲串时,允许脉 方式下 冲串排队。PTO输出多段脉冲的方式有两种: 冲串排队。PTO输出多段脉冲的方式有两种: 输出多段脉冲的方式有两种 ●单段PTO:定义一个脉冲串,输出一个脉冲 单段PTO 定义一个脉冲串 输出一个脉冲 PTO: 脉冲串, 特性参数通过特殊寄存器分别定义) 串 (特性参数通过特殊寄存器分别定义) 。 多段PTO 集中定义多个脉冲串 PTO: 多个脉冲串, ●多段PTO:集中定义多个脉冲串,按顺序输 出多个脉冲串(特性参数通过包络表集中定义) 。 多个脉冲串(特性参数通过包络表集中定义)
● 宽度可调脉冲输出 PWM :
( Pulse Width Modulation )
数量不限, 的脉冲串信号。 输出数量不限 占空比可调的脉冲串信号 输出数量不限,占空比可调的脉冲串信号。
2) 高速脉冲输出端子
每台CPU可以提供 高速脉冲发生器 每台CPU可以提供 2 个高速脉冲发生器 CPU 发生器0 ● PTO/PWM 发生器0 的输出端子是 Q0.0 发生器1 ● PTO/PWM 发生器1 的输出端子是 Q0.1
SM×6.5 SM×
PTO 包络 因用户命令 终止 无错, 0:无错, 1:终止