欧姆龙编程速成.docx

上传人:牧羊曲112 文档编号:3602328 上传时间:2023-03-14 格式:DOCX 页数:140 大小:90.59KB
返回 下载 相关 举报
欧姆龙编程速成.docx_第1页
第1页 / 共140页
欧姆龙编程速成.docx_第2页
第2页 / 共140页
欧姆龙编程速成.docx_第3页
第3页 / 共140页
欧姆龙编程速成.docx_第4页
第4页 / 共140页
欧姆龙编程速成.docx_第5页
第5页 / 共140页
亲,该文档总共140页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《欧姆龙编程速成.docx》由会员分享,可在线阅读,更多相关《欧姆龙编程速成.docx(140页珍藏版)》请在三一办公上搜索。

1、欧姆龙编程速成常用指令与编程 现代PLC都具有丰富的指令系统,利用这些指令编程,能够容易地实现各种复杂的控制操作。对于PLC系统,指令是最基础的编程语言,掌握常用指令的功能及其应用方法,这对用好PLC及其系统设计极其重要。本章主要介绍CS1的各类指令,但由于该机型的指令数量较多,限于篇幅等因素,本书只对常用的指令进行介绍。按功能可将这些指令分为基本指令、数据操作指令、常用控制指令和高级指令等。其他指令,可参考OMRON公司提供的编程手册和操作手册等资料。 3.1 基本指令 可编程序控制器的基本指令主要包括顺序输入指令、顺序输出指令、顺序控制指令、定时器和计数器指令等。这些指令用来执行以位为单位

2、的逻辑操作,它们是用PLC替代继电器控制的基础。 梯形图中每个条件是否为ON或OFF,取决于分配给它的操作数位的状态。一般来说,当该操作数位为1时,对应的继电器线圈通电、常开条件变为ON和常闭条件变为OFF;反之,该操作数位为0,则对应的继电器线圈断电、常开条件为OFF和常闭条件为ON。在梯形图中,一条指令前面的常开、常闭等条件的逻辑组合产生了执行条件,执行条件是否具备,决定于指令的状态。对于继电器线圈类指令,当执行条件ON时,则对应的继电器线圈得电;当执行条件为OFF时,对应的继电器线圈断电。对于功能类指令,当执行条件为ON时,该功能指令执行;当执行条件为OFF时,则该功能指令不执行。指令行

3、上的逻辑组合可以分成几个部分,每一部分均为一个逻辑块。利用逻辑块能够更有效地编程。 3.1.1顺序输入指令 常用顺序输入指令包括加载、基本逻辑运算、逻辑块,主要用于对继电器进行最基本的输入操作,如表3-1所示。 表3-1 顺序输入指令表 指令名称 加载 助记符 操作数 LD 继电器号 典型梯形图 A 一般功能 将常开触点(A)接到母线上,在每个行或块的起点处使用,常用于创建一个ON/OFF执行条件。 加载非 与 LDNOT 继电器号 AND 继电器号 与非 ANDNOT 继电器号 或 OR 继电器号 A2 A1 将常开触点(A1)和常开触点(A2)并联。 A1 A2 将(常开或常闭)触点(A1

4、)与常闭触点(A2)串联。 A 将常闭触点(A)接到母线上,其他同上。 A1 A2 将常开触点(A1)与常开触点(A2)串联。 操作数范围 备注 CIO区、W区、 H区、A区、 T区、C区、任务标志区、条件标志、时钟脉冲、使用变址寄存器间接寻址。 特 定 功 能 99 指令名称 或非 助记符 ORNOT 继电器号 典型梯形图 A1 一般功能 将(常开或常闭)触点(A1)和 常闭触点(A2)并联。 操作数范围 同上。 备注 同上。 A2 将触点组(块)A和触点组(块) 无 无 逻辑块与 ANDLD A B B串联。 逻辑块或 ORLD A B 将触点组(A块)和触点组(B 块)并联。 非 NOT

5、 UP UP(521) NOT(520)每个循环将执行条件取反,在非指令的右侧需接指令(执行条件)。 当输入条件从OFF ON时,UP(521)把执行条件在一个周期内变ON。 条件通 条件断 DOWN DOWN(522) 当输入条件从ON OFF时,DOWN(522)把执行条件在一个周期内变ON 。 100 指令名称 位测试 助记符 操作数 LDTST S N 典型梯形图 一般功能 操作数范围 CIO区、W区、H区、A区、T区、C区、DM区、无区号EM区、有备注 无 LD TST(350),AND LDTST(350) S N TST(350)和OR TST(350)指令在程序中的用途类似于L

6、D、AND 和OR 指令,当指执行条件变为ON , 反之执行条件变为OFF 。 定字S中的指定位N为ON 时,区号EM区、二进制间接DM/EM地址、BCD间接DM/EM地址、数据寄存器、使用变位测试 AND TST OR TST OR TST(350) S AND TST(350) S N 同上。 址寄存器间接寻址。操作数N还可以是常数#0000#000F,即&0&15。 N 位测试 LD TSTN AND TSTN OR TSTN OR TSTN(351) S AND TSTN(351) S LD TSTN(351), AND LD TSTN(351) TSTN(351)和OR TSTN(3

7、51)S 指令在程序中的用途类似于LD NOT、ANT NOT 和OR NOT 指令,当指定字S中的指定位N为ON 时,执行条件为OFF ,反之执行条件为ON 。 无 N N N 2. 几点说明 上表中指令除了列出的一般功能外,有些指令还加注前缀符号,下面分别加以说明。 操作数位 上表中顺序输入指令的操作数,以位为单位进行操作,且不影响标志位。 101 指令的特定功能 表中的特定功能是指这些指令具有微分和刷新功能等,其中上升沿微分的前缀标志为“”,下降沿微分的前缀标志为“%”,刷新的前缀标志为“!”,它们还可以组合成前缀标志为 “!”和“!%”。如加载LD指令,有LD,%LD,!LD,!LD,

8、!%LD。因此,上表中的特定功能指这些指令具有,%,!,!,!%所规定的功能,在后面章节里,有一些只标明了其中一种,说明它只具有其中的某一种特定功能。 在指令符号前没有加前缀 “”和“%”及其组合标志的指令,称为微分型指令。当执行条件为ON时,指令在每个循环周期都将执行。而对于微分型指令,当执行条件为OFFON或ONOFF变化时,该指令只执行一次。在梯形图中,上升沿和下降沿微分指令中,通常采用和符号表示,例如LD A的梯形图可用 表示。 A 输入指令中的UP和DOWN指令与上述上升沿微分或下降沿微分的输入指令有相似功能。 当UP(521)所接收的执行条件从OFF变为ON时,使下一个指令的执行条

9、件变ON一个循环。当 DOWN(522)说接收的执行条件ON变为OFF时,使下一个指令的执行条件变ON一个循环。 在下面的顺序输出指令中的DIFU和DIFD指令也有微分功能,且可以和刷新指令相结合。 下降沿微分(%)仅LD、AND、OR和REST指令有效。为建立其他指令的下降沿微分变化,可用DIRU(014)或DOWN(522)控制工作位来控制指令的执行。 对于操作数中的可用数据区CIO、W、H、A、T、C等,如果没有特别说明,均指这些区中所有的位。而任务标志区为TK0000TK0031;时钟脉冲有0.02s、0.1s、0.2s、1s、1min时钟脉冲。DM区为D00000D32767,无区号

10、EM区为E00000E32767;有区号EM区为En_00000En_32767(n=0C)。二进制间接DM/EM地址为D00000D32767、E00000E32767、En_00000En_32767(n=0C)。数据寄存器为DR0DR15。BCD间接DM/EM地址为* D00000*D32767、*E00000*E32767、*En_00000*En_32767(n=0C)。 常见的条件标志,如表3-2所示。 表3-2 常见的条件标志 条件标志 错误标志 访问错误标志 进位标志 大于标志 等于标志 小于标志 负标志 上溢出标志 下溢出标志 编程器标志 ER AER CY N OF UF

11、CX-P标志 P-ER P-AER P-CY P-GT P-EQ P-LT P-N P-OF P-UF P-GE P-NE 大于或等于标志 不等于标志 本书后面出现的特定功能以上述为参考,不再累述。 3.1.2顺序输出指令 102 1.顺序输出指令表 常用顺序输出指令,包括输出和输出非、各种置位和复位以及保持指令等,如表3-3所示。 表3-3 常用的顺序输出指令表 指令名称 输出 助记符 OUT 输出非 OUT NOT 保持 KEEP S(置位) KEEP(011) A 输出非指令,将把执行运算的结果取反后,再输出到指定的继电器,也是继电器线圈的驱动指令。 用于将输出继电器置为ON并保持。当置

12、位端S为ON时,KEEP使B为ON,直到复位端R为ON。当S和R同时为ON时,R端输入优先。 !KEEP !OUT NOT 典型梯形图 A 一般功能 输出指令,将把执行运算的结果输出到指定的继电器,是继电器线圈的驱动指令。 特定功能 !OUT B R(复位) 上升沿微分 DIFU 下降沿微分 DIFU(013) 当检测到执行条件从OFFON变化瞬间,!DIFU 继电器触点B仅接通一个扫描周期。 B DIFD DIFD(014) B 当检测到执行条件从ONOFF变化瞬间,!DIFD 继电器触点B仅接通一个扫描周期。 注:DIFU和DIFD指令对使用次数不加限制。 是 置位 SET SET B 当

13、执行条件为ON时,把操作位B变为ON,并且当执行条件为OFF时,不影响操作数的状态。简单讲就是将输出继电器置为ON状态,简称置位。 复位 RSET RSET B 当执行条件为ON时,把操作位B置为OFF,并且当执行条件为OFF时,不再影响操作数的状态。简单讲是将输出继电器置为OFF状态,简称复位。 是 多位置位 SETA SETA(530) D N1 N2 将指定连续位的数都置为ON。其中D为起始字, N1为起始位, N2为位数。即 SETA将从D的N1位开始连续到N2位的数都变为ON,其他位保持不变。 SETA 103 指令名称 多位复位 助记符 RSTA 典型梯形图 一般功能 RSTA各个

14、表示和SETA一致,只是特定功能 RSTA RSTA(531) D N1 N2 结果相反,使从D的N1位开始连续到 N2位的数都变为OFF,其他位保持不变。 当执行条件为ON时,SETB将指定字中的某SETB !SETB 单位置位 SETB SETB(532) D N 位N置为ON。当执行条件为OFF时,该位状态保持不变。它与SET指令不同,SETB可用在一个DM或EM字中将某一位置为ON。其中,D为字地址,N为位号。 这条指令用法和SETB大致相同,不同的是当执行条件为ON时,SETB将指定字中的某位N置为OFF。 单位复位 RSTB RSTB D N RSTB 单位输出 OUTB N OU

15、TB D OUTB将指令执行条件的状态输出给指定位。OUTB 与OUT不同的是OUTB能控制DM区或EM区。当执行条件为ON时,OUTB使字D的第N位变为ON;当执行条件为OFF时,OUTB使字D第N位变为OFF。 !OUTB 2. 可用数据区的说明 OUT、OUT NOT指令可用的数据区有CIO区、W区、H区、A区、TR区以及可使用变址寄存器间接寻址。 KEEP、DIFU、DIFD、SET和RESET指令可用的数据区有CIO区、W区、H区、A区、使用变址寄存器间接寻址,没有TR区。 SETA/RSTA、SETB/RSTB、OUTB指令可用的数据区有CIO区、W区、H区、T区、C区、DM区、无

16、区号EM区、有区号EM区、二进制间接DM/EM地址、BCD间接DM/EM地址、数据寄存器、使用变址寄存器间接寻址。特别是SETA/RSTA、SETB/RSTB、OUTB指令的操作数D在A区104 为A448A959,N或N1、N2在A区为A000A959。SETB/RSTB、OUTB指令N的操作数也可以是常数,其值为015。SETA/RSTA的操作数N1的范围为015,操作数N2的范围为065535。 顺序输入和顺序输出指令是最基本的指令,也是最常用的指令,这些指令在所有程序中几乎都会用到。除此之外,还有顺序控制、定时器和计数器指令,它们也是PLC程序中常用的指令,下面分别加以介绍。 3.1.

17、3 顺序控制指令 1. 顺序控制指令表 顺序控制指令包括联锁与解锁、跳转、循环以及结束指令等,如表3-4所示。 表3-4 顺序控制指令表 指 令 空操作 助记符 NOP(000) 结束 END(001) 联锁与 联锁解除 IL(002) ILC(003) 跳转与 跳转结束 JMP(004) JME(005) JMP(004) N JME(005) N 条件跳转 CJP(510) CJP(510) 典型梯形图 一般功能 此指令不执行任何操作,简称空操作。在编程时插入该指令便于程序的检查和修改。 END(001) IL(002) ILC(003) 表示主程序结束。程序最后结束时若无此指令,执行时将

18、视为错误。 联锁IL(002) 和联锁解除ILC(003) 指令用于互锁IL(002)和ILC(003)之间的所有输出,它们总是一起使用,用于成组控制IL(002) 和ILC(003)之间的指令, 可解决分支点执行条件的存储问题。 JMP(004)是根据一个指定条件,可跳过程序中的某一个程序段。当执行条件为ON时,则程序和没有跳转指令一样运行;当条件为OFF时,则程序立即跳转到跳转结束指令之后的程序继续执行,JMP(004)与 JME(005)之间维持上一扫描周期的执行结果。 CJP(510)的用法和JMP(004)相反。当CJP(510)的执行条件为ON时,程序直接跳转至CJP(510)指令

19、相同编号N的第一个JME(005)去执行。CJP(510)与JME(005)总是成对使用。 N 条件跳转 CJPN(511) CJPN(511) N CJPN(511)用法几乎等同于JMP(004)。当CJPN(511)的执行条件为OFF时,程序直接跳转至与CJPN(511)指令相同编号N的第一个JME(005)。CJPN(511)和JME(005)总是成对使用。 多路跳转与跳转结束 JMP0(515) JME0(516) JMP0 当JMP0(515)的执行条件为OFF时,从JMP0(515)至下一个JME0(516)的所有指令都被当作是空操作NOP(000)。JMP0(515)和JME0(

20、516)也是成对使用。在程序中使用的对数无任何限制。 JME0(516) FOR(512) N NEXT(513) 105 循环 FOR-NEXT 退出循环 FOR(512) NEXT(513) 对FOR(512)和NEXT(513)之间的指令,重复执行指定的次数N。R然后继续执行NEXT后面的程序,可用BREAK(512)指令退出循环。FOR(512)和NEXT(513)成对使用。 BREAK(514) BREAK(514) 在FOR-NEXT循环中编程,BREAK(514)指令对所给的执行条件取消循环执行。循环中余下的指令作为空操作处理。 2.可用数据区的说明 END、IL/ILC、JMP

21、0/JME0、NEXT和 BREAK指令无操作数。 JMP、CJP、CJPN、FOR指令可用的数据区为CIO区、W区、H区、A区、T区、C区、DM区、有区号EM区、无区号EM区、二进制间接DM/EM地址、BCD间接DM/EM地址、常数,数据寄存器使用变址寄存器间接寻址。当这些指令的操作数为常数时,取值范围为#0000#03FF,即&0&1023。 JME指令的操作数只能为常数,范围为#0000#03FF,即&0&1023。 分支电路的编程方法 分支电路如图3-1所示。图中A点为分支点,右侧分为三条支路,且每条支路都有触点控制,这种连接方式既不同于触点与触点的连接或逻辑块与逻辑块的连接,也不同于

22、连续输出,因此用前面介绍的输入或逻辑等指令都不能编程,此时需要用到联锁和联锁解除指令。分析该图的功能可以看出,当000000为OFF时,000210、000211、000212都处于断电状态;当000000为ON时,000210、000211、000212的状态取决于各自支路上的控制触点。所以,将图用联锁和联锁解除指令时,梯形图可修改为图所示, 000000用于控制IL和ILC之间的联锁程序执行。当000000为ON时,IL和ILC之间的程序正常执行,相当于没有这对指令存在一样;当000000为OFF时,在IL和ILC之间的所有程序互锁,则三条支路都处于断开状态,每个线圈都处于断电状态。可见,

23、图与图的功能完全一样,这种电路又称为复合输出。 0 0 0 000210 (002) 0 000211 0 000211 0 000212 (003) 0 000213 000210 0 0 0 000212 0 000213 0 。在图3-2中,图联锁程序实现的功能和图一样,图是用助记符编写的同一程序。当多个IL指令配一个ILC指令使用时,程序检查时虽然会有出错信息显示,但不影响程序的正常执行。 0 0 0 0 (002) 0 000210 0 0 0 0 000210 000211 000212 0 000210 0 0 000211 0 000212 0 (002) 000211 000

24、212 0 (003) 图3-2 IL/ILC的应用举例 (a) (b) 原电路 等效电路 图3-3 用TR位处理分支的编程举例 几点说明: TR位只有16位,在使用次数上虽然没有限制,但在在同一程序段中,TR号不能重复使用; TR不是独立的编程指令,只能和LD或OUT等基本指令一起使用; 107 TR位不能用编程器或其他设备进行监视; 直接用梯形图编程时,则不用TR,该程序能够自动执行图的梯形图;如果梯形图用图表示时,则会提示“会和地址混淆,TR00不允许作为符号名”。所以,图是对应于图的一种等效,只是为了说明问题方便。 跳转指令的编程方法 如图3-4所示为 JMP(004)和JME(005

25、)指令的应用示例 0 0 000211 000002 000000 0 JMP00 000001 0 000210 000001 JMP00 000210 000211 000212 LD 000000 JMP 图3-4 JMP和JME指令的应用示例 上例中,000000作为JMP00指令的条件,当000000为ON时,JMP和JME指令之间的程序顺序连续执行,相当于没有这对指令一样,不会发生跳转;当000000为OFF时,跳过JMP和JME指令之间的程序,即输出000210、000211和000212保持原来状态,转到JME00之外的程序去执行。在程序的梯形图中使用图形式进行编程。 使用JM

26、P和JME指令时,需注意以下几点: 在一个程序中可以有多组JMP和JME指令,用跳转号对其进行编号,跳转号的范围为001023。若跳转号不在此范围时,ER将出错。 跳转号00是专用跳转号。当JMP00指令的输入条件OFF时,在JMP00和JME00指令之间的程序将被扫描但是不被执行。因此,它将占用扫描时间,而其他跳转号的跳转指令在相同条件下,相应程序段不被扫描; 在一个程序中,JMP00和JME00指令可以多次使用,而其他跳转号的跳转指令只能使用一次,故JMP00和JME00指令可以不成组使用,即“JMPJMPJME”格式。虽然这种格式在程序检查时会提示出错,但程序能够正常执行。 JME(00

27、5)-JMP(004)可做循环用,在JMP(004)前用JME(005),只要JMP(004)的执行条件OFF,在JME(005)和JMP(004)间的指令会重复执行,如果执行条件不变ON或在最大循环时间内不执行结束指令END会产生循环时间太长错误。 不同的任务块之间不允许相互跳转,即JMP(004)和JME(005)必须在同一任务块中使用,否则ERR会出错。 循环指令的编程方法 FOR(512)和NEXT(513)循环可以嵌套使用,且多至15级,如图3-5所示为FOR(512)和NEXT(513)循环调用的举例。在这个例子中,程序段A、B和C按ABBC ,ABBC 和 ABBC的顺序循环执行

28、3次。 使用一个BREAK(514),则从一个FOR-NEXT循环中退出;若需要从嵌套循环中退出,则需要多108 个BREAK(514)指令,BREAK (514)后循环中余下的指令作空操作处理。如图3-5所示为BREAK(514)在多个FOR-NEXT循环指令中的运用。 图3-5为循环的一个简单例子,循环程序段中将D00100的内容传给D00200中所示的地址里,然后,D00200中的内容+1。循环程序段循环了3次。 C B NEXTFOR #3 FOR #3 FOR #2 FOR #3 重复3次 A FOR #2 MOV D00100 D002000 1 2 BREAK 退出循环2 NEX

29、T+ D00200 T BREAK 退出循环1 NEXTNEXTNEXT退出循环,执行循环外的程序。 图3-5 FOR(512)和NEXT(513)循环指令的应用示例 使用循环指令FOR-NEXT时,应注意以下问题。 当FOR-NEXT的嵌套循环数超过15个时,错误标志ER为ON; FOR-NEXT循环一定要编在同一个任务中,如果这些指令不在同一个任务中,则不执行重复; JMP(004)跳转指令可以在FOR-NEXT循环中执行,但它不能跳出FOR-NEXT循环; 块编程指令、多重跳转和结束指令、步定义和步开始指令不能用在FOR-NEXT循环指令中。 KEEP指令的应用 利用KEEP指令可以设计

30、报警输出,如图3-6所示,图中000000、000001和000002为异常输入信号。当控制电路发生异常情况时,继电器380000工作,使输出继电器000200得电,可接通报警信号灯进行报警,直至复位输入时报警才能解除。 图3-6 应用KEEP指令的梯形图程序 000000 S R KEEP(011) 380000 000001 000002 000003 380000 000200 109 利用SETB(532)/RSTB(533)也可以和KEEP指令一样直接对操作数的位进行置位或复位,但使用时也有不同点。KEEP指令的置位和复位输入必须与这个指令一起被编入程序,而SETB(532)/RST

31、B(533)完全可以独立编程,并可任意次使用。 3.1.4 定时器和计数器指令 定时器和计数器的指令主要包括普通定时器、高速定时器、1ms定时器、累积定时器、长定时器、多路输出定时器和普通计数器、可逆计数器以及复位定时器/计数器。除长定时器、多路输出定时器的指令外,其他的指令都有一个定时器/计数器号N。其中,1ms定时器号为00000015之间,其他的定时器号为00004095之间。在编程时,定时器号不能重叠。计数器号为00004095,计数器号也不能重叠。与小型机不同,CS1系列的定时器号和计数器号是各自独立编号的。 在定时方式上,除了累积定时器和多路输出定时器是递增方式之外,其他的都为递减

32、方式。 在刷新方法上,除了可以用BCD码之外,还可以用二进制数设置。用二进制数时,只要在BCD码指令助记符的后缀加“X”字母即可。如普通定时器TIM,输入是BCD码;而TIMX(550)输入为二进制数。输入BCD码的设定值为09999,而二进制数的SV为065535。当使用二进制数指令进行计算时,其中间结果也可以直接用于定时器/计数器的SV。 1.普通定时器和高速定时器 (1) 普通定时器指令TIM/TIMX(550) 普通定时器TIM/TIMX(550)是单位为0.1s的递减计数器,其梯形图如图3-7所示。 N 为定时器号,TIM和TIMX的定时器号都为04095;SV为设定值,TIM的SV

33、为09999,定时精度为0.1s,则定时的时间范围为0999.9S;TIMX(550)的SV为065535,定时精度是0.1s,故定时范围为06553.5s。 在CIO区、W区、H区、A区、定时器区、DM区、无区号EM区和有区号EM区的字可以作为SV的操作数;二进制间接DM/EM地址、BCD间接DM/EM地址、常数数据寄存器、使用变址寄存器间接寻址这些数据以及常数也可以作为SV的操作数。当SV为常数时,若输入用BCD码表示,应加前缀#符号;用二进制数表示时,其前缀符号和数的范围为&0000&65535,而用十六进制表示为#0000#FFFF。N操作数只能是定时器区和使用寄存器区的间接寻址数据。

34、 关于SV和N的设置涉及到标志问题,如果N通过变址寄存器间接寻址,但变址寄存器中的地址不是定时器PV的地址;或者在BCD模式下,而SV不包含BCD数据时,则ER标志都变为ON。等于标志、负标志为OFF。其他情况下的ER标志为OFF。 当定时器输入为OFF时,指定的定时器N被复位,即定时器当前值(PV)恢复为SV,并且完成标志位变为OFF;当定时器输入从OFF到ON时,定时器开始从PV=SV递减,只要定时器输入保持为ON,则当前值每间隔0.1s就自动减1,且连续递减;直到PV减为0000时,定时器的完成标志才变为ON;此后,PV值和完成标志状态将保持,直到重新启动定时器,即定时器输入由OFF再变

35、ON时, TIM N SV TIMX(550) N SV 图3-7 普通定时器的梯形图 110 PV恢复为SV,重新进入定时。定时器的时序关系如图3-8所示。 ON 定时器输入 OFF ON 定时器当前值 OFF ON 完成标志 OFF 图3-8 普通定时器的时序图 (2) 高速定时器指令TIMH(015)/TIMHX(551) 高速定时器TIMH(015)/TIMHX(551)的梯形图如图3-9所示。 TIMH(015)TIMHX(015) N SV N SV 图3-9 高速定时器的梯形图 高速定时器TIMH(015)和定时器TIM的符号含义相同,N是定时器号,其范围为04095,SV为设定

36、值,设定范围为09999。它们的主要差异是定时精度不同。高速定时器TIMH(015)/TIMHX(551)的定时精度为0.01s,所以TIMH(015)的定时范围为099.99s,而TIMHX(551)的定时范围为0655.35s。 高速定时器TIMH(015)的SV 和N值的操作数、功能和注意事项与普通定时器基本一致,这里不再累述。 2.其他定时器指令 (1) 1ms定时器指令TMHH(540) 1ms定时器指令是单位为1ms的递减定时器,其梯形图如图3-10所示。 TMHH(540) TMHHX(540) N N SV SV 图3-10 1ms定时器的梯形图 这里的N与前面的定时器号不同,

37、只能在十进制的00000015之间选择。SV的设定值为09999,则定时时间为09.999s;TMHHX(552)的SV为065535,所以它的定时范围为065.535s。 1ms定时器指令的基本功能与TIM指令一致,但定时器的精度为0.001s,即1ms。 1ms定时器指令的操作数SV 与TIM指令一致;操作数N也在定时器区和可使用变址寄存器间接寻址,只是范围不一样。1ms定时器指令的注意事项也与TIM 指令一致。 累积定时器指令TTIM 累积定时器TTIM(087)/TTIMX(555)是单位为0.1S的递增定时器,其梯形图如图3-11所示。 111 定时器输入 复位输入 TTIM(087

38、) 定时器输入 TTIMX(087) N N SV 复位输入 SV 图3-11 累积定时器的梯形图 N的范围为04095,TTIM(087)的设定值SV必须为#0000#9999。所以,其累积时间为0999.9s。TTIMX(555) 的设定值SV必须为&0&65535,用十六进制表示为#0000#FFFF,其累积时间为06553.5s。 当定时器输入为ON,TTIM(087)开始从当前值递增。当定时器输入为OFF,定时器当前值会停止递增,但维持原值。当定时器输入又为ON,定时器在原值的基础上继续递增计时。当前值PV到达设定值SV时,则定时器完成标志变为ON。其时序关系如图3-12所示。 复位

39、输入 图3-12 累积定时器的时序图 完成标志位 定时器输入 定时器PV值 SV 计时 继续 PV 保持 累积定时器与其他定时器的最大区别在于其输入为OFF时,PV值会维持原值,在输入再次为ON时,PV值会继续递增。这种功能可应用于许多间断定时的控制程序,可防止意外如断电时能够记忆前段的计时时间。例如在传送带操作过程中意外断电,当继续上电后,在累积定时器的控制下,传送物品可以准时传送。 长定时器TIML(542)/ TIMLX(534) 长定时器TIML(542)是单位为0.1S的递减定时器,其梯形图如图3-13所示。 。 D1为完成标志,其中0位作为TIML的完成标志,其他位不用;D2为PV

40、字,由D2和D2+1两个字的BCD码组成,D2和D2+1必须在同一数据区; SV字由S和S+1两个字的BCD码组成,SV和SV+1必须在同一数据区,TIML(542)的SV范围为099999999,而TIML(542)的SV范围TIML(542) D1 D2 SV TIMLX(542D1 D2 SV 图3-13 长定时器的梯形图 112 为#0#99999999。因此,TIML最长的定时时间可达到115天,而TIMLX(534)最长的定时时间可达49710天。 上述三者操作数可用的数据区为CIO区、W区、H区、A区、DM区、无区号EM区、有区号EM区。在这些区里,D1操作数为这些区里所有的单元

41、,而D2和SV这些区的最高单元不可用,如D1的操作是在CIO区为00006143,而D2和SV则为00006142。另外采用二进制间接DM/EM区、BCD间接DM/EM区和使用变址寄存器间接寻址时,都可作为这三者的操作数。对于SV,定时器区、计数器区的单元和常数也可以用作操作数。 注意:D2和D2+1中包含的PV值或SV和SV+1中包含的SV值,如果它们不是BCD码,则长定时器的错误标志为ON,其他情况都为OFF。 多路输出定时指令MTIM(543)/ MTIMX(544) 多路输出定时器指令MTIM/ MTIMX(544)是一个具有8个独立的SV和完成标志,单位为0.1s的递增定时器,梯形图

42、如图3-14所示。 MTIM(543) D1 D2 S MTIMX(544) D1 D2 S 图3-14 多路输出定时器的梯形图 D1为完成标志字,包括了8位完成标志、暂停和复位,其中前8位即第0位到第7位为完成标志位,第8、9位为复位和暂停位。D2为PV字,其数值范围为#0000#9999。S为具有8个独立的SV字,其中S0S+7的每个S字分别对应一个完成标志位,即S0对应D1中的第0位完成标志位,S+1对应D1中的第1位完成标志位,依此类推,S+7对应D1字中的第7位完成标志位。每个SV的BCD码范围为#0000#9999。MTIMX(544)指令仅与MTIM的SV范围不同而已,为&0&6

43、5535,用十六进制表示为#0#FFFF。 D1、D2和S的操作数可用的数据区为CIO区、W区、H区、A区、DM区、无区号EM区、有区号EM区、定时器区、计数器区。D1和D2为上述区中所有的字,而S为这些区除后面7个字的所有字。如在CIO区,D1和D2为00006143,而S 为00006136。另外二进制间接DM/EM地址,BCD间接DM/EM地址、使用变址寄存器间接寻址也可作为这三者的操作数。特别提醒的是数据寄存器DR0DR15可作为D2的操作数,而常数不能作为这三者的操作数。 当执行条件为ON,而复位和暂停位为OFF时,MTIM(543)在D2中PV值递增;如果复位为OFF和暂停位为ON

44、时,定时器则暂时停止递加PV值,并保持原值;当暂停位再次变为OFF时,MTIM恢复定时,即在原来定时器定时的基础上继续递加PV值。每次MTIM执行后,PV会与S0S+7中的8个SV相比较。如果其中一些小于或等于PV值,相应完成标志会变为ON。当PV递增到达最大值9999时,则PV自动复位到0000,并且所有的完成标志位都变为OFF。 当复位为ON时,不管暂停位如何,PV都复位到0000,所有的标志位都变为OFF,并且PV不会被更新。如果D1指定为CIO区域中的字,则可用SET和RSST指令来控制暂停和复位。 当使用少于8个SV时,则对应最后一个被用的SV后面的字应设置为0000,MTIM(543)会忽略为SV值为0000及余下的所有SV。 多路输出定时器的PV值及完成标志都在MTIM(543)执行时刷新。多路输出定时器用在IL和ILC、JMP和J

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号