西门子模块6ES7365-0BA01-0AA0技术参数
RS触发器指令分为置位优先触发器指令SR和复位优先触发器指令RS两种。 置位优先触发器是一个置位优先的锁存器。当置位信号(S1)和复位信号(R)都为真时,输出为“1”。 复位优先触发器是一个复位优先的锁存器。当置位信号(S)和复位信号(R1)都为真时,输出为“0”。 触发器指令用法如图所示。
图 SR触发器指令 |
按时间控制是常用的逻辑控制形式,定时器是plc中常用的元件之一。用好、用对定时器对PLC程序设计非常重要。 定时器是根据预先设定的定时值,按一定的时间单位进行计时的PLC内部装置,在运行过程中当定时器的输入条件满足时,当前值从0开始按一定的单位增加。当定时器的当前值到达设定值时,定时器发生动作,从而满足各种定时逻辑控制的需要。下面详细介绍定时器的使用。 1、S7—200PLC定时器种类 S7—200PLC为用户提供了三种类型的定时器:接通延时定时器(TON)、有记忆接通延时定时器(TONR)和断开延时定时器(TOF)。对于每一种定时器,又根据定时器的分辨率的不同,分为:1ms、10 ms和100 ms三个精度等级。 定时器定时时间T的计算:T=PT×S。式中:T为实际定时时间,PT为设定值,S为分辨率。例如:TON指令使用T35(为10ms的定时器),设定值为100,则实际定时时间为: T=100 X 10=1 000 ms 定时器的设定值PT:数据类型为INT型。操作数可为:VW、IW、QW、MW、SW、SMW、LW、AIW、T、C、AC、*VD、*AC、*LD和常数,其中常数为常用。 定时器的编号用定时器的名称和它的常数编号(大为255)来表示,即T×××。如:T40。定时器的编号包含两方面的变量信息:定时器位和定时器当前值。定时器位即定时器触点,与其他继电器的输出相似。当定时器的当前值达到设定值PT时,定时器的触点动作。定时器当前值即定时器当前所累计的时间值,它用16位符号整数来表示,大计数值为32767。 定时器的分辨率和编号如表所列。 定时器类型分辨率/ms大当前值/s定时器编号 TONR132.767T0,T6410327.67T1~T4,T65~681003276.7T5~T31,T69~T95 TON,TOF132.767T32,T9610327.67T33~T36,T97~T1001003276.7T37~T63,T101~T255 从上表可以看出TON和TOF使用相同范围的定时器编号,需要注意的是,在同一个PLC程序中决不能把同一个定时器号用作TON和TOF。例如在程序中,不能既有接通延时(TON)定时器T32,又有断开延时(TOF)定时器T32。 2、定时器指令的使用 三种定时器指令的LAD和STL格式如表所列。 表 定时器指令的LAD和STL形式 三种定时器指令的LAD和STL格式如表7.10所列。表7.10 定时器指令的LAD和STL形式格式名称接通延时定时器有记忆接通延时定时器断开延时定时器LADSTLTONT***, PTTONR T***, PTTOF T***, PT (1)接通延时定时器TON(On—Delay Timer) 接通延时定时器用于单一时间间隔的定时。上电周期或扫描时,定时器位为OFF,当前值为0。输入端接通时,定时器位为OFF,当前值从0开始计时,当前值达到设定值时,定时器位为ON,当前值仍继续计数,直到32767为止。输入端断开,定时器自动复位,即定时器位为OFF,当前值为0。 (2)记忆接通延时定时器TONR(Retentive On—Delay Timer) 记忆接通延时定时器对定时器的状态具有记忆功能,它用于对许多间隔的累计定时。扫描或复位后上电周期,定时器位为OFF,当前值为0。当输入端接通时,当前值从0开始计时。当输入端断开时,当前值保持不变。当输入端接通时,当前值从上次的保持值继续计时,当前值累计达到设定值时,定时器位ON并保持,只要输入端继续接通,当前值可继续计数到32767。 需要注意的是,断开输入端或断开电源都不能改变TONR定时器的状态,只能用复位指令R对其进行复位操作。 (3)断开延时定时器TOF(Off—Delay Timer) 断开延时定时器用来在输入断开后延时一段时间断开输出。上电周期或扫描,定时器位为OFF,当前值为0。输入端接通时,定时器位为ON,当前值为0。当输入端由接通到断开时,定时器开始计时。当达到设定值时定时器位为OFF,当前值等于设定值,停止计时。输入端由OFF—ON时,TOF复位;如果输入端再从ON—OFF,则TOF可实现启动。 图1所示为三种类型定时器的基本使用举例,其中T35为TON、T2为TONR、T36为TOF。
图1 定时器指令 3、定时器的分辨率(时基)及其正确使用 定时器实质就是对时间间隔计数。定时器的分辨率(时基)决定了每个时间间隔的时间长短。在S7—200系列PLC的定时器中,定时器的分辨率有1ms、10 ms、100ms三种,这三种定时器的刷新方式是不同的,从而在使用方法上也有很大的不同。这和其他PLC是有很大区别的。使用时一定要注意根据使用场合和要求来选择定时器。 (1)定时器的刷新方式 ①1 ms定时器 1 ms定时器采用的是中断刷新方式,由系统每隔1ms刷新一次,与扫描周期及程序处理无关。对于大于1ms的程序扫描周期,在一个扫描周期内,定时器位和当前值刷新多次。其当前值在一个扫描周期内不一定保持一致。 ②10 ms定时器 10ms定时器由系统在每个扫描周期开始时自动刷新,在每个扫描周期的开始会将一个扫描累计的时间间隔加到定时器当前值上。由于是每个扫描周期只刷新一次,故在一个扫描周期内定时器位和定时器的当前值保持不变。 ③100 ms定时器 100 ms定时器在定时器指令执行时被刷新,如果100ms定时器被激活后,如果不是每个扫描周期都执行定时器指令或在一个扫描周期内多次执行定时器指令,都会造成计时失准。100ms定时器仅用在定时器指令在每个扫描周期执行一次的程序中。 (2)定时器的正确使用 图2所示为正确使用定时器的一个例子。它用来在定时器计时时间到时产生一个宽度为一个扫描周期的脉冲。
图2定时器指令的正确使用 结合各种定时器的刷新方式规定,从图中可以看出: ①对1ms定时器T32,在使用错误方法时,只有当定时器的刷新发生在T32的常闭触点执行以后到T32的常开触点执行以前的区间时,Q0.0才能产生一个宽度为一个扫描周期的脉冲,而这种可能性是极小的。在其它情况下不会产生这个脉冲。 ②对10ms定时器T33,使用错误方法时,Q0.0永远产生不了这个脉冲。因为当定时器计时到时,定时器在每次扫描开始时刷新。该例中T33被置位,但执行到定时器指令时,定时器将被复位(当前值和位都被置0)。(http://www.diangon.com/版权所有)当常开触点T33被执行时,T33永远为OFF,Q0.0也将为OFF,即永远不会被置位ON。 ③100ms的定时器在执行指令时刷新,当定时器T37到达设定值时,Q0.0肯定会产生这个脉冲。改用正确使用方法后,把定时器到达设定值产生结果的元器件的常闭触点用做定时器本身的输入,则不论哪种定时器,都能保证定时器达到设定值时,Q0.0产生一个宽度为一个扫描周期的脉冲。在使用定时器时,要弄清楚定时器的分辨率,否则,一般情况下不要把定时器本身的常闭触点作为自身的复位条件。在实际使用时,为了简单,100ms的定时器常采用自复位逻辑,100 ms定时器也是使用多的定时器。 |
西门子S7—200系列plc使用一个9层堆栈来处理所有逻辑操作,它和计算机中的堆栈结构相同。堆栈是一组能够存储和取出数据的暂存单元,其特点是“先进后出”。每一次进行人栈操作,新值放人栈顶,栈底值丢失;每一次进行出栈操作,栈顶值弹出,栈底值补进随机数。逻辑堆栈指令主要用来处理对触点进行的复杂连接。
逻辑堆栈指令有:逻辑入栈LPS、逻辑读栈LRD和逻辑出栈LPP指令。上述三条指令的用法如图所示。
LPS(LogicPush):逻辑入栈指令(分支电路开始指令)。在梯形图中的分支结构中,可以形象地看出,它用于生成一条新的母线,其左侧为原来的主逻辑块;右侧为若干个新的从逻辑块。从堆栈使用上来讲,LPS指令的作用是把当前运算值复制后压人堆栈,以备后用。对于右侧个新的从逻辑块,由于其之前的逻辑运算结果就是刚复制并入栈的运算值,可以直接在LPS指令之后继续编程。
LRD(Logic Read):逻辑读栈指令。在梯形图分支结构中,当新母线左侧为主逻辑块时,经过右侧个新的从逻辑块的运算,主逻辑块运算结果已经不存在(但在此之前已经被LPS指令复制到堆栈中),要进行后续的从逻辑块编程时,就需要使用LRD指令从堆栈中读回主逻辑块运算结果,LRD指令用于第二个以后的从逻辑块编程。从堆栈使用上来讲,LRD读取近的LPS压人堆栈的内容,而不进行Push和Pop工作。
LPP(LogicPop):逻辑出栈指令(分支电路结束指令)。在梯形图分支结构中,LPP用于LPS产生的新母线右侧的后一个从逻辑块编程,它在读取完离它近的LPS压入堆栈内容的复位该条新母线。从堆栈使用上来讲,LPP把堆栈弹出一级,堆栈内容依次上移。
图 LPS、LRD、LPP指令
使用说明:
(1)由于受堆栈空间的限制(9层堆栈),LPS、LPP指令连续使用时应少于9次。
(2)LPS和LPP指令必须成对使用,它们之间可以使用LRD指令。
(3)LPS、LRD、LPP指令无操作数。
边沿脉冲指令分为上升沿脉冲EU(Edge Up)和下降沿脉冲ED(EdgeDown)。
边沿脉冲指令的使用及说明如表所列。
表 边沿脉冲指令使用说明
指令名称 | LAD | STL | 功能 | 说明 |
上升沿脉冲 | -|P|- | EU | 在上升沿产生一个扫描周期的脉冲 | 无操作数 |
下降沿脉冲 | -|N|- | ED | 在下降沿产生一个扫描周期的脉冲 |
边沿脉冲指令EU、ED用法如图所示。
图 边沿脉冲EU、ED指令
EU指令对其之前的逻辑运算结果的上升沿产生一个宽度为一个扫描周期的脉冲,如图中的M0.0。ED指令对逻辑运算结果的下降沿产生一个宽度为一个扫描周期的脉冲,如图中的M0.1。脉冲指令常用于复位、启动及关断条件的判定以及配合功能指令完成一些逻辑控制任务。