版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、6.1 概述概述6.2 基本编程指令基本编程指令6.3 保持、微分指令保持、微分指令6.4 顺序控制和暂存指令顺序控制和暂存指令6.5 定时器和计数器应用指令定时器和计数器应用指令6.6 数据比较类应用指令数据比较类应用指令6.7 数据转换类应用指令数据转换类应用指令6.8 数据移位类应用指令数据移位类应用指令6.9 数据传送类应用指令数据传送类应用指令6.10 数据运算类应用指令数据运算类应用指令6.11 子程序和中断控制类子程序和中断控制类应用指令应用指令6.12 高速计数器应用指令高速计数器应用指令6.13 其他特殊应用指令其他特殊应用指令6.14 特殊运算指令特殊运算指令6.15 通信
2、指令通信指令6.16 典型应用举例典型应用举例CPM1ACPM1A共有:共有:基本指令基本指令1414条,应用指令条,应用指令7979条条(有功能号)。(有功能号)。指令执行的典型时间是:指令执行的典型时间是: 基本指令基本指令:LDLD指令的执行时间为指令的执行时间为0.64 s0.64 s。 应用指令应用指令:MOVMOV指令:指令:16.3 s16.3 s。PLCPLC编程可以以梯形图形式出现,也可以用指令编程可以以梯形图形式出现,也可以用指令形式表示,两者可以相互转化。形式表示,两者可以相互转化。 6.1 概述概述助记符指令的一般格式为:指令码 操作数1 操作数2操作数3或 指令码 操
3、作数【例1】 某指令ADD(30)#1270*DM0101DM0123 由指令码可知,该指令为一条BCD码加法运算指令。指令的三个操作数分别为参加运算的加数、被加数和结果。其中加数为立即数操作数1270。被加数为间接寻址操作数,程序在DM0101通道中取出操作数的实际地址。运算结果为直接寻址操作数,即把和数送至DM0123通道。(1 1)助记符表示指令的功能,它表明了执行该)助记符表示指令的功能,它表明了执行该指令所完成的操作。助记符常用英文或其缩写来指令所完成的操作。助记符常用英文或其缩写来表示。对不同生产厂家的表示。对不同生产厂家的PLCPLC,相同功能的指令,相同功能的指令其助记符可能不
4、同。其助记符可能不同。(2 2)指令码是指令的代码,用两位数()指令码是指令的代码,用两位数(00990099)表示,基本指令没有指令码,应用指令都有功)表示,基本指令没有指令码,应用指令都有功能码。能码。(3 3)操作数提供了指令执行的对象、数据或寻)操作数提供了指令执行的对象、数据或寻址方式。各种指令的操作数个数不同,有的指令址方式。各种指令的操作数个数不同,有的指令不带操作数,有的指令只带不带操作数,有的指令只带1 1个操作数,有的指个操作数,有的指令带令带2 2个或个或3 3个操作数。个操作数。(4 4)操作数可以是继电器号(位)、通道号()操作数可以是继电器号(位)、通道号(字)或常
5、数。为了区别一个操作数是常数还是通字)或常数。为了区别一个操作数是常数还是通道号,在作为操作数的常数前加前缀道号,在作为操作数的常数前加前缀# #。(5 5)操作数位常数时,可以是十进制或十六进)操作数位常数时,可以是十进制或十六进制,这取决于指令的要求。制,这取决于指令的要求。(6 6)间接寻址的操作数用)间接寻址的操作数用* *DMDM表示,这种操作表示,这种操作时以时以DMDM* * * * *中的数据为地址的另一个中的数据为地址的另一个DMDM通道中的通道中的数据。数据。DMDM* * * * *中的内容必须是中的内容必须是BCDBCD码,且不得超码,且不得超出出DMDM区的范围。区的
6、范围。3 3、指令的微分和非微分形式、指令的微分和非微分形式在在CPM1ACPM1A中绝大多数应用指令都有微分型和非微分型两中绝大多数应用指令都有微分型和非微分型两种指令形式。微分型指令由在指令码前面加上前缀种指令形式。微分型指令由在指令码前面加上前缀 来区来区分。两种形式指令在执行中的区别是:非微分指令在条件分。两种形式指令在执行中的区别是:非微分指令在条件满足时,每个循环周期都将被执行一次;而微分形式指令满足时,每个循环周期都将被执行一次;而微分形式指令则只在其条件由则只在其条件由OFFOFF变为变为ONON的上升沿时才会被执行。的上升沿时才会被执行。 例例1 1 数据传送指令如下:数据传
7、送指令如下:例例2 2 数据传送数据传送指令如下:指令如下:LDLD 00000 00000LDLD0000000000MOV(21) #2000MOV(21) #2000 MOV(21) #2000MOV(21) #2000 DM0000 DM0000 DM0000 DM0000 小于标志LE(25507),执行比较指令时,如果第一操作数小于第二操作数,该位置ON。 等于标志EQ(25506),执行比较指令时两操作数相等,或执行运算指令时运算结果等于0,该位置ON。 大于标志GR(25505),执行比较指令时,如果第一操作数大于第二操作数,该位置ON。 进位标志CY(25504),执行运算指
8、令时,如果结果最高位向上有进位或借位,该位置ON。 出错标志ER(25503),执行指令出错时该位置ON。典型的执行错误有操作数地址错、控制字无定义等。出错标志为ON时,指令将停止执行。6.26.2基本编程指令基本编程指令 基本编程指令主要包括基本编程指令主要包括与、或、非、输与、或、非、输出、复位、置位出、复位、置位等逻辑指令。等逻辑指令。另外,另外,普通定时器和计数器指令普通定时器和计数器指令也没有也没有功能号,也归为基本指令。功能号,也归为基本指令。共共1414条。条。所有所有无功能无功能号的指令称为基本编程指令。号的指令称为基本编程指令。1 1 LDLD和和LD NOTLD NOT 指
9、令指令格式:格式:LDLDN NLD NOT LD NOT N N其中的操作数其中的操作数N N为位,即为位,即LDLD和和LD NOTLD NOT指令只能以指令只能以位为单位位为单位进进行操作。这里的行操作。这里的N N可以是可以是IRIR、SRSR、ARAR、HRHR、LRLR、TRTR或或TCTC。功能功能:装入指令。用来表示一个逻辑运算的开始,它们的执:装入指令。用来表示一个逻辑运算的开始,它们的执行不会影响标志位。行不会影响标志位。LDLD表示表示N N的常开触点与左端母线的常开触点与左端母线相连。相连。LD NOTLD NOT表示表示N N的常闭触的常闭触点与左端母线点与左端母线相
10、连。相连。说明:说明:LD和和LD NOT指令的执行不会影响标志位。指令的执行不会影响标志位。 2 2 OUTOUT和和OUT NOTOUT NOT指令指令格式:格式:OUTOUTN N OUT NOTOUT NOTN N其中的操作数其中的操作数N N也是位,它可以是也是位,它可以是IRIR、SRSR、ARAR、LRLR、TRTR或或HRHR。功能功能:输出指令。用来表示一个运算结果。:输出指令。用来表示一个运算结果。OUTOUT指令将指令将运算结果输出到运算结果输出到N N。OUT NOTOUT NOT指令将运算结果取反后指令将运算结果取反后输出到输出到N N。说明:说明:OUT 和和OUT
11、 NOT指令也只能以位为单位进行操作。指令也只能以位为单位进行操作。它们的执行不会影响标志位。在程序中它们的执行不会影响标志位。在程序中不同的线圈可以同条不同的线圈可以同条件并联输出件并联输出。 【例例1 1】 OUT OUT和和OUT NOTOUT NOT等指令的应用,等指令的应用,0000001000010010100200001指令的程序如下:指令的程序如下: LD00000OUT01000OUT NOT01001LD NOT00002OUT01002 3 AND3 AND和和AND NOTAND NOT指令指令格式:格式:ANDANDN NAND NOTAND NOTN N其中的操作数
12、其中的操作数N N也是位,它可以是也是位,它可以是IRIR、SRSR、ARAR、LRLR、HRHR或或TCTC。功能:逻辑与运算指令。功能:逻辑与运算指令。ANDAND表示表示N N与前面的逻辑结果进行与与前面的逻辑结果进行与运算。即运算。即N N的常开触点与前的常开触点与前面的逻辑串联。面的逻辑串联。AND NOTAND NOT表示表示N N取非并与前面的逻辑结果进行取非并与前面的逻辑结果进行与与运算。即运算。即N N的常闭触点与前面的逻辑串联。的常闭触点与前面的逻辑串联。说明:说明:AND和和AND NOT指令只能以位为单位进行操作。它们指令只能以位为单位进行操作。它们的执行不会影响标志位
13、。在程序中逻辑与运算的串联触点个的执行不会影响标志位。在程序中逻辑与运算的串联触点个数是没有限制的。数是没有限制的。 【例例2 2】 AND AND和和AND NOTAND NOT指令的应用。指令的应用。 指令的程序如下:指令的程序如下: LD 00001AND00002AND NOT00003OUT01000 000010000200003010014 OR4 OR和和OR NOTOR NOT指令指令格式:格式:ORORN NOR NOTOR NOTN N其中的操作数其中的操作数N N也是位,它可以是也是位,它可以是IRIR、SRSR、ARAR、LRLR、HRHR或或TCTC。功能:逻辑或运
14、算指令。功能:逻辑或运算指令。OROR表示表示N N与前面的逻辑结果进行或运算与前面的逻辑结果进行或运算。即。即N N的常开触点与前的常开触点与前面的逻辑并联。面的逻辑并联。OR NOTOR NOT表示表示N N取非并与前面的逻辑结果进行取非并与前面的逻辑结果进行或运算或运算。即。即N N的常闭触点与前面的逻辑并联。的常闭触点与前面的逻辑并联。说明:说明:OR和和OR NOT指令只能以位为单位进行操作。它们指令只能以位为单位进行操作。它们的执行不会影响标志位。在程序中逻辑或运算的并联触点个的执行不会影响标志位。在程序中逻辑或运算的并联触点个数是没有限制的。数是没有限制的。 【例例3 3】 OR
15、OR和和OR NOTOR NOT等指定的应用程序段为:等指定的应用程序段为: LD00000OR 00001OR NOT00002OUT01001这段程序表示的运算逻辑为:当三个输入条件这段程序表示的运算逻辑为:当三个输入条件00000为为ON或或00001为为ON,或,或00002为为OFF中有一个被满足时,输出中有一个被满足时,输出01001就会被置就会被置ON。 5 AND LD5 AND LD和和OR LDOR LD指令指令格式:格式:AND LDAND LDOR LDOR LD功能:触点组操作指令。功能:触点组操作指令。AND LDAND LD指令表示对触点组进行逻辑与运算指令表示对
16、触点组进行逻辑与运算。OR LDOR LD指令表示对指令表示对触点组进行逻辑或运算触点组进行逻辑或运算。说明:说明:AND LD指令和指令和OR LD指令指令不需要任何操作数不需要任何操作数,只表,只表明触点组之间的逻辑运算关系。使用这两条指令有两种方法:明触点组之间的逻辑运算关系。使用这两条指令有两种方法:分置法和后置法。两种方法可以得到相同的运算结果,但使分置法和后置法。两种方法可以得到相同的运算结果,但使用分置法时触点组数是没有限制的,而采用后置法时触点组用分置法时触点组数是没有限制的,而采用后置法时触点组数不能超过数不能超过8 【例例4】 设有梯形图为图设有梯形图为图 (a)、(b)所
17、示的两个逻辑运算。所示的两个逻辑运算。将该运算用将该运算用AND LD和和OR LD指令完成,有两种方法实指令完成,有两种方法实现助记符程序段,分别如下:现助记符程序段,分别如下: 0000000001000020000300004000050100100000000020000300004000050000601001(a)(b) 图图(a)(a)逻辑分置法实现程序段:逻辑分置法实现程序段:LD00000OR00003LD00001OR 00004AND LDLD NOT00002OR NOT00005AND LDOUT01001 图图(a)(a)逻辑后置法实现程序段:逻辑后置法实现程序段:
18、LD00000OR00003LD00001OR 00004LD NOT00002OR NOT00005AND LDAND LDOUT01001 图图(b)(b)逻辑分置法实现程序段:逻辑分置法实现程序段:LD00000AND00002LD00003AND NOT00004OR LDLD NOT00005AND NOT00006OR LDOUT01001 图图(b)(b)逻辑后置法实现程序段:逻辑后置法实现程序段:LD00000AND00002LD00003AND NOT00004LD NOT00005AND NOT00006OR LDOR LDOUT01001 6 SET和RESET指令格式:
19、SETNRESETN其中的操作数N也是位,它可以是IR、SR、AR、LR或HR。功能:置位和复位指令。用来完成直接对位的置位或复位操作。当SET指令的执行条件满足时置N为ON。当RESET指令的条件满足时置N为OFF。 【例例5 5】 在在0000000000和和0000200002的状态变化已知的条件下,的状态变化已知的条件下,下面程序段执行的结果如图下面程序段执行的结果如图4.2.44.2.4所示。所示。LDLD0000000000SETSET2000020000LDLD0000200002RESETRESET20000200000000000002SET 20000RESET 20000
20、000000000220000(a)(b)7、编编 程程 规规 则则在编制梯形图或助记符程序时,应注意遵循以在编制梯形图或助记符程序时,应注意遵循以下编程规则:下编程规则:(1) (1) 每一个每一个内部继电器的触点内部继电器的触点在程序中可以在程序中可以无无限次限次重复使用,但其重复使用,但其线圈在同一程序中一般只线圈在同一程序中一般只能使用一次能使用一次。同一继电器的多线圈使用会引起。同一继电器的多线圈使用会引起逻辑上的混乱,应尽量避免。逻辑上的混乱,应尽量避免。(2) (2) 梯形图信号流向只能梯形图信号流向只能自左向右自左向右,垂直分支垂直分支上不可以有任何上不可以有任何触点。触点。
21、【例例1 1】 梯形图的编制举例。梯形图的编制举例。在下图的梯形图例中,在下图的梯形图例中,图图(a)(a)为不规范的梯形图,为不规范的梯形图,图图(b)(b)为规范的梯形图。为规范的梯形图。000010000200004000050100000004000030000101000(a)(b)0000301001000020000100003000040100100005(3) (3) 继电器的线圈应该放在每一运算逻辑的最继电器的线圈应该放在每一运算逻辑的最右端,在线圈右端不能再有任何触点。线圈不右端,在线圈右端不能再有任何触点。线圈不可以与左端母线直接相连,如果逻辑上有这种可以与左端母线直接
22、相连,如果逻辑上有这种需要时也要通过一合适的常闭触点来实现。需要时也要通过一合适的常闭触点来实现。【例例2 2】 下图所示逻辑应用了特殊继电器中的下图所示逻辑应用了特殊继电器中的常常ONON触点来实现上电后一直执行的操作。触点来实现上电后一直执行的操作。 2531301001图 43.2(4) (4) 编程时对于复杂逻辑关系的程序段,编程时对于复杂逻辑关系的程序段,可按照先难后易的基本原则实现。可按照先难后易的基本原则实现。 当有几个串联支路相并联时,可按先串当有几个串联支路相并联时,可按先串后并的原则将触点多的支路放在梯形图的后并的原则将触点多的支路放在梯形图的最上端。最上端。当有几个并联支
23、路相串联时,可按先并后当有几个并联支路相串联时,可按先并后串的原则将触点多的支路放在梯形图的最串的原则将触点多的支路放在梯形图的最左端。左端。 【例例3 3】 梯形图等效变换图例如图所示。梯形图等效变换图例如图所示。00001000020000301001(a)000020000301001000010000100002010010000300002000010100100003(b)LD00001 LD00002LD00002 AND00003AND00003 OR00001OR LD OUT01001OUT01001 图图(a)(a)等效变换前程序段等效变换前程序段 图图(a)(a)等效变
24、换后程序段等效变换后程序段图图(b) (b) 等效变换前程序段等效变换前程序段 图图(b) (b) 等效变换后程序段等效变换后程序段LDLD0000100001 LD LD0000200002LDLD0000200002 OR OR0000300003OROR0000300003 AND AND0000100001AND LDAND LD OUTOUT0100101001OUTOUT01001010018 TIM指令指令格式:格式: TIMNSV其中:其中: 操作数操作数N为定时器为定时器TC号号,取值范围为十进制数,取值范围为十进制数000127 。 操作数操作数SV为定时器的设定值,为定时
25、器的设定值,由由4位位BCD码组成码组成,可以,可以是是IR、SR、HR、AR、LR、DM、*DM、#,取值范围,取值范围00009999。功能:定时器指令。功能:定时器指令。TIM是是最小单位为最小单位为0.1秒秒的的减一计数器减一计数器,故故定时范围为定时范围为0999.9秒秒。当输入条件为。当输入条件为ON时,时,TIM开始开始记时。记时操作为每记时。记时操作为每0.1秒当前值秒当前值PV减一。当减一。当PV等于等于0时,时,定时到,定时到,TIM状态置状态置ON。当输入条件为。当输入条件为OFF或电源掉电或电源掉电时,时,TIM被复位。复位后状态置被复位。复位后状态置OFFOFF,送,
26、送SVSV为新的为新的PVPV值。值。 【例1】 TIM指令应用图例之一如图所示。 图中的定时器TIM000的定时时间为60秒,即当00000为ON时,TIM开时记时。60秒以后定时器定时到,程序段中的01000为ON。相应的梯形图程序如下:LD00000TIM000#0600LDTIM000OUT0100000000TIM 000 #0600TIM 000010009 计数器计数器CNT指令指令格式:格式:CP条件条件R条件条件CNTNSV其中:其中: 操作数操作数N为计数器为计数器TC号号,取值范围为十进制数,取值范围为十进制数000127。 操作数操作数SV为计数器的设定值,由为计数器的
27、设定值,由4位位BCD码码组成,可以组成,可以是是IR、SR、HR、AR、LR、DM、*DM、#,取值范围,取值范围00009999。 CNT在程序中有在程序中有两个输入条件两个输入条件,故在格式中专门列出。,故在格式中专门列出。在这里在这里CP为计数脉冲输入端为计数脉冲输入端。R为复位端为复位端。 功能:功能:计数器指令计数器指令。减一计数器减一计数器。当。当R R为为OFFOFF时时计数器为计数器为计数状态计数状态。计数时,。计数时,CPCP每次由每次由OFFOFF变为变为ONON计数一次。计数操作由计数一次。计数操作由PVPV值减一完成。当值减一完成。当PVPV值减到值减到0 0时计数到
28、,计数器输出状态置时计数到,计数器输出状态置ONON。当。当R R为为ONON时计数器为复位时计数器为复位状态,复位后计数器输出状态,复位后计数器输出状态置状态置OFFOFF,PVPV被重新置入被重新置入SVSV值。值。 【例例3】 ONT指令的应用。指令的应用。CNT指令的程序段如下:指令的程序段如下:LD00000LD00001CNT127#0050LDCNT127OUT0100100000 CNT 1270100100001CNT 127 #00506.3 6.3 保持指令、微分指令、空操作和结束指令保持指令、微分指令、空操作和结束指令KEEP指令指令格式格式:条件S条件RKEEP(11
29、)N其中的操作数N也是位,它可以是IR、SR、AR、LR或HR。 功能:功能:锁存指令。KEEP相当于一个软件保持器。它前面要有两个条件,故在格式中专门列出。条件S为保持器的置位输入。条件R为保持器的复位输入。即:当条件S满足,操作数N置ON并保持;当条件R满足,则操作数N置OFF。特别地,当 S和R同时满足时,按复位优先的运算,操作数N置OFF。 【例6】 KEEP指令的应用。KEEP指令的程序段如下: LD00001LD00002KEEP(11)01000 与程序段对应的梯形图例及其相应波形如图4.2.5所示。例中的置位输入为00001,复位输入为00002,显然利用KEEP指令可以代替相
30、应的自锁运算逻辑。图4.2.5KEEP指令应用梯形图例及相应的波形0000100002000010000201001(a)(b)SR01001DIFU(13)和和DIFD(14)指令指令格式:DIFU(13)NDIFD(14)N其中的操作数N也是位,它可以是IR、SR、AR、LR或HR。 功能:微分指令。 DIFU为上升沿微分指令,当执行条件上升沿时使操作数N有一个扫描周期的ON。 DIFD为下降沿微分指令,当执行条件下降沿时使操作数N有一个扫描周期的ON。 【例7】 DIFU和DIFD指令的应用。DIFU和DIFD指令的程序段如下:LD00001DIFU(13)20001DIFD(14)20
31、002 与程序段的对应的梯形图例及其相应波形如图4.2.6所示。其中微分指令的输出脉冲宽度为一个扫描周期。图4.2.6 DIFU(13)和DIFD(14)指令应用梯形图例及相应的波形00001DIFU 20001DIFD 20002000012000120002(a)(b)NOP(00)指令指令 格式:格式:NOP(00) 功能:功能:空操作指令。不做任何操作,可用于程序调试时的指令暂时删除或程序执行时间微调等特殊用途。END(01)指令指令 格式:END(01) 功能:结束指令。表示程序的结束。每一程序的最后一条指令必须是END指令。没有END指令的程序不能被执行并会显示相应的出错信息。EN
32、D指令以后的程序段将不会被执行。 说 明:执行END指令时标志位ER、CY、GR、EQ和LE将被置OFF。6.4 顺序控制和暂存指令顺序控制和暂存指令6.4.1 IL和和ILC指令指令格式:格式:IL(02)ILC(03)功能:功能:互锁和互锁解除指令。 IL定义互锁程序段的开始,IL指令的条件就是互锁的条件。ILC定义互锁程序段的结束。当IL前的逻辑条件为ON时,位于IL和ILC指令之间的互锁程序段照常运行。当IL前的逻辑条件为OFF时,互锁程序段将不被执行。此时该程序中的各个输出的状态为:所有的输出线圈置为OFF,所有的定时器被复位,所有的计数器、保持继电器和移位寄存器保持当前状态不变。
33、说明:IL和ILC指令应成对使用,否则在检查程序时会得到出错信息。但该错误并不影响程序的执行。 例1】 IL和ILC指令的应用。 有互锁程序段如图4.4.1(a)所示,无互锁程序段如图4.4.1(b)所示。 当互锁条件00001为OFF时,无论其他条件如何变化,程序段中的所有输出均保持OFF不变。从逻辑运算上看图(a)和图(b)具有完全相同的功能。图4.4.1 IL和ILC指令应用例梯形图00001000020000300004(a)IL(02)ILC(03)0100101001000010000200003000040100101001(b)6.4.2 TR指令指令 功能:TR被称为暂存继电
34、器。与LD和OUT指令配合,TR可以用来暂存程序运行的中间结果。利用TR可以方便编程。在程序中可以使用的TR共有8个,分别编号为TR0到TR7。 【例2】 TR指令的应用。TR指令的程序段如下:LD00000OUTTR0AND00001OUT01000LDTR0AND00002OUTTR1AND00003OUT01001LDTR1AND00004OUT01002图4.4.2 TR指令应用例梯形图 000000000100002000030100001001TR0TR100004010026.4.3 JMP和和JME格式:格式:JMP(04)NJME(05)NN为跳转号,可以是0049之间任何十
35、进制数字。功能:功能:跳转和跳转结束指令。 当JMP指令前的执行条件为OFF时,CPU将跳过JMP和JME指令之间的程序段,直接执行其后面的程序内容。当JMP指令前的执行条件为ON时,则不进行跳转,如同没有跳转指令时一样执行。 JMP、JME指令和互锁程序的最大不同是,当发生跳转时,JMP和JME指令之间程序段中的所有输出、保持器、定时器和计数器状态都会保持不变。且被跳转的程序段不再占用扫描时间。【例3】 JMP和JME指令应用图例如图4.4.3所示。图4.4.3 JMP和JME指令应用例梯形图 00000JEP(04) 00JME(05) 00程序段A4.4.4 JMP指令嵌套应用例梯形图0
36、0001JEP(04) 00JME(05) 01程序段A00002JEP(04) 01程序段BJME(05) 00程序段C6.5 定时器和计数器应用指令定时器和计数器应用指令6.5.2 TIMH指令指令格式:TIMH(15)NSV其中: 操作数N和SV的定义和取值范围与TIM指令相同。 功能:高速定时器指令。最小定时单位为0.01秒。定时范围为099.99秒。其应用和使用方法与TIM指令相同。6.5.4 CNTR指令指令格式:ACP条件SCP条件R条件CNTR(12)NSV其中: 操作数N为计数器TC号,取值范围为十进制数000225(CPM/A为000127)。操作数SV为计数器的设定值,由
37、4位BCD码组成,可以是IR、SR、HR、AR、LR、DM、*DM、#,取值范围00009999。 CNTR在程序中有三个输入条件。ACP为加计数脉冲输入端。SCP为减计数脉冲输入端。R为复位端。 功能:功能:可逆循环计数器指令。当R为OFF时,为计数状态。计数时每当ACP由OFF变为ON时,PV值做一次加法运算。每当SCP由OFF变为ON时,PV值做一次减法运算。当PV值加到等于SV后再有加一脉冲,CNTR的状态置ON,PV值变为0。当PV值减到0再有减一脉冲,CNTR的状态置ON,PV值被置入SV值。当R为ON时为复位状态。复位时CNTR状态为OFF,ACP和SCP脉冲不起作用。【例4】
38、CNTR指令的应用。CNTR指令的程序段如下:LD00000LD00001LD00002CNTR(12)126#0100LDCNT126OUT01000 由程序可知可逆计数器CNTR126的SV=100,在加一运算时,当加到PV=SV,再加一,PV=0,CNTR为ON。若再加一,PV=1,CNTR为OFF。在减一运算时,当减到PV=0,再减一,PV=SV,CNTR为ON。若再减一,PV=SV-1,CNTR为OFF。与程序段对应的梯形图例及其相应的工作时序波形如图4.5.4所示。图4.5.4 CNTR指令应用例梯形图及工作时序波形图00000 CNTR 126010000000100002ACP
39、SCPRCNTR (12)126 #0100(a)OFFPV 99100012PV 101009998ONOFFCNTR 126000010000000002(b)6.5.4 定时器和计数器的扩展定时器和计数器的扩展6.6 数据比较类应用指令数据比较类应用指令6.6.1 CMP和和CMPL指令指令格式:CMP(20)C1C2CMPL(60)C1C2 其中: 操作数C1为比较数1,操作数C2为比较数2。 CMP的两个比较数可以是IR、SR、AR、LR、HR、TC、DM、*DM、#。 CMPL的两个比较数可以是IR、SR、AR、LR、HR、TC、DM、*DM。 功能:功能:CMP为单字比较指令,完
40、成C1和C2 两个字的比较。CMPL为双字比较指令,完成C1与C1+1组成的双字和C2与C2+1组成的双字的比较。 当指令前的执行条件为ON时执行比较操作,比较操作的结果送SR中的标志位。 若C1C2,大于标志位(LG)25505置ON。 若C1=C2,等于标志位(EQ)25506置ON。 若C1C2,小于标志位(LE)25507置ON。 SR中的比较结果,可以用做其他运算的条件。【例1】 CMP指令的应用。CMP指令的程序段如下:LD00000CMP(20)HR10#0100LD00000AND25505OUT01000LD00000AND25506OUT01001LD00000AND255
41、07OUT01002图4.6.1 CMP指令应用例梯形图 0000001000CMP (20)HR10#010000000255050100100000255060100200000255076.6.2 BCMP指令指令格式:BCMP(68)BCMP(68)CDCDCBCBRR其中: 操作数CD为比较数据,它可以是IR、SR、AR、LR、HR、TC、DM、*DM、#。 操作数CB为比较数据块起始通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 操作数R为比较结果通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 功能:块比较指令。用数据CD和CB开始的16个上下限
42、数据进行比较,比较结果送R通道。表表6.6.1 CB通道与通道与R位的对应关系位的对应关系 序号上限下限R中的对应位1CBCB+1第0位2CB+2CB+3第1位3CB+4CB+5第2位16CB+30CB+31第15位【例2】 设以下数据存储区中的数据值为:DM0005=0000DM0006=0100DM0007=0101DM0008=0200DM0009=0201DM0010=0300 DM0036=1600执行下边程序段:LD20000BCMP(68)#0210DM0005HR05当20000为ON时进行块比较操作。由于比较数据等于210,介于201和300之间,因此,比较操作的结果是将HR
43、05通道的第二位即HR0502置ON。 配合相应的硬件设备,BCMP指令可以用来实现运动部件的位置控制。6.6.3 TCMP指令指令格式:TCMP(85)TCMP(85)CDCDCBCBRR其中: 操作数CD为比较数据,它可以是IR、SR、AR、LR、HR、TC、DM、*DM、#。 操作数CB为比较数据表起始通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 操作数R为比较结果通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 功能:功能:表比较指令。当指令的执行条件满足时,将数据CD与从CB开始的16个通道分别进行比较。若CD与其中的某一通道数据相等,则置R中的相
44、应位为ON。TCMP指令在程序中可以用来查询某一指定数据。 【例3】 设由HR00到HR15的16个通道中只有HR06和HR07等于100,则表比较指令执行后,01006和01007为ON。LD00000TCMP(85)#0100HR000106.6.4 ZCP和和ZCPL指令指令格式:格式:ZCP的指令格式:ZCP(-)CDLLUL其中: 操作数CD为比较字,它可以是IR、SR、AR、LR、HR、TC、DM、#。 操作数LL为数据范围下限,它可以是IR、SR、AR、LR、HR、TC、DM、#。 操作数UL为数据范围上限,它可以是IR、SR、AR、LR、HR、TC、DM、#。 LLUL。ZCP
45、L指令格式:指令格式:ZCPL(-)CDLLUL其中: 操作数CD为比较字,它可以是IR、SR、AR、LR、HR、TC、DM。 操作数LL为数据范围下限,它可以是IR、SR、AR、LR、HR、TC、DM。 操作数UL为数据范围上限,它可以是IR、SR、AR、LR、HR、TC、DM。 LLUL。 功能:ZCP是数据区域范围比较指令;ZCPL是双字数据区域范围比较指令。 数据区域范围比较时用CD和由LL和UL指定的数据区域进行比较,根据比较结果置相应的标志位:若CDLL,则置LE为ON;若LLCDUL,则置EQ为ON;若ULSV时MV增加取1为反作用,PVSV时MV减少P1+5415位输入滤波系数
46、()BCD码100199对应系数0.000.99越小滤波作用越弱取000时为默认值0.65P1+607位输出范围08对应输出二进制位数816位P1+6815位输入范围08对应输入二进制位数816位P1+7P1+32工作区系统使用 说明:PID指令是按照可编程控制器的CPU周期执行的,所以如果其采样周期大于CPU周期,PID运算将会等待到该采样周期完成后的下一CPU周期完成。PID控制运算要使用从P1P1+32共33个通道,用户在编程时将不能在使用该33个通道。在下列情况下不可以使用PID指令:中断程序中、互锁程序中、跳转程序中、步进程序中、子程序中。标志CY为ON,表示系统正在进行PID处理;
47、CY为OFF,表示系统采样周期还没有结束。4.13.9 SRCH指令指令格式:格式:SRCH(-)SRCH(-)NNR1R1CC其中: 操作数N为查找通道数,它可以是IR、SR、HR、AR、LR、TC、DM、#。通道数取值范围4位BCD码00009999。 操作数R1为查找范围开始通道,它可以是IR、SR、HR、AR、LR、TC、DM。 操作数C为比较数和结果通道,它可以是IR、SR、HR、AR、LR、TC、DM。 功能;数据查找指令。执行条件满足时在R1到R1+N-1范围内N个通道里查找与C中相同的数据。如果在指定范围内找到一个以上的符合查找条件的通道,首先置标志EQ为ON,并把与符合条件通
48、道的最低地址相关的一个量赋于C+1。赋值的方式是:若查找范围在DM区,赋值符合条件DM通道的最低地址值;若查找范围在其他数据区,赋值符合条件最低通道地址与开始通道地址之差。如果查找范围内没有符合条件的通道,EQ置OFF,C+1内容不变。 【例5】 若设符合查找要求的最低通道地址为DM0118,则C+1被赋值0118。 若设符合查找要求的最低通道地址为IR114,且R1为IR100,则C+1被赋值0014。4.13.10 SYNC指令指令格式:SYNC(-)SYNC(-)P1P1P2P2CC其中: 操作数P1为输入口定义,只取000。 操作数P2为输出口定义,可以取000(定义输出口01000)
49、或010(定义输出口01001)。 操作数C为比例因子,它可以是IR、SR、HR、AR、LR、DM、#,取值范围BCD码00011000,对应比例因子值11000%。 功能:同步脉冲控制指令。执行时将高速计数器的输入脉冲频率乘以给定的比例因子后从输出口输出,即:输出频率=输入频率(C/100)。 输出频率的范围是10 Hz10 kHz,大于10 kHz时只输出10 kHz。小于10 Hz时只输出10 Hz。输入频率来自高速计数器的工作模式。在同步脉冲执行时不可以再改变输出口,但可以用再次执行SYNC指令的办法来改变比例因子。 只有在DM6642中设置输出00000到00003为同步脉冲控制时才
50、能实现该指令操作。当同步脉冲控制执行时,高速计数器和脉冲输出功能均不可使用。应用中可以用C=005的INI指令或将可编程控制器工作方式切换的编程来停止同步脉冲输出。4.13.11 PWM指令指令格式:PWM(-)PWM(-)PPFFDD其中: 操作数P为口定义,可以取000或010。P取000,定义可变占空比输出0;输出口01000。P取010,定义可变占空比输出1;输出口01001。 操作数F为频率,它可以是IR、SR、HR、AR、LR、DM、#,取值范围BCD码00019999,对应频率0.1999.9 Hz。 操作数D为占空比,它可以是IR、SR、HR、AR、LR、DM、#,取值范围BC
51、D码00010100,对应脉冲占空比1%100%。 功能:可变占空比脉冲指令。执行时从指定输出口输出指定占空比的脉冲序列。可变占空比脉冲可以同时在两个输出口独立输出。PWM指令执行后指定占空比的脉冲将连续输出直至新PWM指令或C=003的INI指令的执行。脉冲输出过程中可以用新PWM指令改变占脉冲空比但不能改变其频率。在输出口被SPED或ACC指令使用时PWM指令不能实现对该口的操作。4.13.12 ACC指令指令格式:ACC(-) ACC(-)PPMMCC其中: 操作数P为口定义,取000,即定义为梯形加/减速单相脉冲输出0。表表4.13.4 ACC指令输出模式定义指令输出模式定义M定义00
52、0独立模式和加减脉冲模式002独立模式和脉冲加方向模式010顺时针连续模式和加减脉冲模式011逆时针连续模式和加减脉冲模式012顺时针连续模式和脉冲加方向模式013逆时针连续模式和脉冲加方向模式 操作数C为控制字开始通道,它可以是IR、SR、HR、AR、LR、DM。控制字从C开始共有三个,取值范围均为BCD码00011000,对应频率10 Hz10 kHz。其中C为加速率,指定加速时输出频率每10 ms的增加值。C+1为目标频率。C+2为减速率,指定减速时输出频率每10 ms的减少值。 功能:加速控制指令。用来启动梯形加/减速脉冲输出和定义加减速率。一但脉冲输出被启动后,输出频率将按指定的变化
53、率到达指定的目标值。使用下列方法可以停止脉冲输出:减速停止:执行C+1的值为0000的ACC指令或在独立模式下输出脉冲数达到PULS指令的指定数。立即停止:执行C=003的INI指令或将可编程控制器工作方式切换的编程。 独立模式工作时在ACC指令执行前需要由PULS指令指定输出脉冲数,且每次输出停止后都需重新指定。输出在满足指定脉冲数、目标频率和加/减速率的时间段里完成加速、衡速、减速和停止的过程,在几个参数值比较合适的情况下,会输出一个频率变化为梯形的脉冲序列。当预置的脉冲数小于加/减速所需要的时就会输出一频率变化为三角形的脉冲序列。 连续模式工作时,脉冲将持续输出,只能使用上述几个减速或立
54、即停止方法来终止。在连续模式下脉冲正在输出时还可以再给定加减速率改变目标频率值。4.13.13 FCS指令指令格式:FCS(-)FCS(-)CCR1R1DD表表4.13.5 FCS指令控制字定义指令控制字定义C意义第0位第11位参加运算的数据项数N(通道数或字节数)BCD 001999第12位运算起始的字节(13位为ON时有效)1:高字节0:低字节第13位运算数据单位1:字节0:字第1415位00 操作数R1为帧开始通道,它可以是IR、SR、HR、AR、LR、TC、DM。 操作数D为目的开始通道,它可以是IR、SR、HR、AR、LR、DM。 功能:FCS计算指令。计算帧校验码,用来检查通信数据
55、的传输错误。当指令的执行条件满足时,以按位异或的方法计算从R1R1+N-1范围内所有字或字节的帧校验码,并将结果转换为ASCII码的形式存入D及D+1。所以按字节计算的2位十六进制结果和按字计算的4位十六进制结果在目的通道中实际应该是4位或5位ASCII码数据。【例6】 设下面程序段中在FCS指令被执行前有源数据:DM0000=0001DM0001=0002DM0002=0003DM0003=0004DM0004=0005DM0005=0006DM0006=0007DM0007=0008 FCS指令在输入00001为ON时执行,帧校验码原始结果应为0008,转换为ASCII码送到目的通道中的最
56、后结果是:DM0010=3030DM0011=3038LD00001FCS(-)#0008DM0000DM00014.14 特殊运算指令特殊运算指令1.14.1 MAX和和MIN指令指令格式:MAX(-)MAX(-)CCR1R1DDMIN(-)MIN(-)CCR1R1DD表表4.14.1 MAX和和MIN指令控制字定义指令控制字定义C意义第011位查找范围的通道数N:(BCD)001000第1213位00第14位是否输出地址到D+10:输出1:不输出第15位1:按带符号二进制数处理2:按不带符号二进制数处理 操作数R1为查找范围开始通道,它可以是IR、SR、HR、AR、LR、DM、TC。 操作
57、数D为目标通道,它可以是IR、SR、HR、AR、LR、DM。 功能:MAX是查找最大值指令。MIN是查找最小值指令。当执行条件满足时,执行查找最大值或最小值操作。在R1到R1+N-1范围内的N个通道里找到一个最大或最小的数值送到D。把与符合查找条件的最低一个通道地址相关的一个量赋于D+1。赋值的方式与SRCH指令为C+1通道的方法相同。4.14.2 AVG指令指令格式:AVG(-)SND 操作数S为源通道,它可以是IR、SR、HR、AR、LR、TC、DM。 操作数N为周期数,它可以是IR、SR、HR、AR、LR、TC、DM、#。N的取值范围为BCD码00010064,N大于64时按等于64处理
58、。 操作数D为目的开始通道,它可以是IR、SR、HR、AR、LR、DM。 功能:平均值计算指令。计算N个数的平均值,计算的过程是在每个周期内将S中的内容顺序存入D+2开始的通道,同时计算一次已存入数据的平均值,平均值结果按四舍五入取整数送D。直至被平均的数据数达到N。故AVG指令的执行共须占用D+N+1个通道,其中:D: 存放平均值;D+1:系统使用;D+2:第一个周期时的S值;D+3:第二个周期时的S值;D+N+1:第N个周期时的S值。 【例1】 下面程序段在执行条件满足时先将IR200置为0000。在此后的每个扫描周期IR200的内容要加一。AVG指令经过几个周期的运算最后在DM1000中
59、结果是DM1002开始的N个通道的平均值。LD00001MOV(21)#0000200AVG(-)200#0003DM1000CLC(41)ADB(50)200#00012004.14.3 SUM指令指令格式:SUM(-)SUM(-)CCR1R1DD表表4.14.2 SUM指令控制字定义指令控制字定义C意义第0位第11位参加累计运算的数据项数N(通道数或字节数)BCD 001999第12位运算起始的字节(13位为ON时有效)1:高字节0:低字节第13位运算数据单位1:字节0:字第14位运算数据类型1:二进制0:BCD第15位(14位为ON时有效)1:带符号二进制数0:不带符号二进制数 操作数R
60、1为源开始通道,它可以是IR、SR、HR、AR、LR、TC、DM。 操作数D为目的开始通道,它可以是IR、SR、HR、AR、LR、DM。 功能:累加指令。执行时计算R1到R1+N-1的N个字或R1到R1+N/2-1的N个字节的累加和,结果送D和D+1。 【例2】 下面程序段在输入条件满足时执行累加运算。累加过程是将DM0000DM0007八个通道的BCD数据相加,加得结果送DM0010和DM0011,其中DM0010为结果的低四位,DM0011为结果的高四位。LD00001SUM(-)#0008DM0000DM00104.15 通通 信信 指指 令令4.15.1 RXD和和TXD指令指令格式:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025鞋类服装运动品牌市场竞争分析及品牌建设策略研究报告
- 基于大数据的家电维修服务精准营销分析-洞察及研究
- 2025鞋类产品定制服务行业市场发展前景评估运营模式投资布局规划研究报告
- 2025鞋履行业运动鞋市场消费行为分析及产品设计创新报告
- 2026年卫生专业技术资格考试神经电生理(脑电图)技术复习题及答案解析
- 2025镇江新材料产业集群发展现状调研及投资布局规划研究报告
- 2025邮政物流行业数字化转型实施计划分析报告书
- 白土补充精制装置操作工操作知识测试考核试卷含答案
- 观众情绪波动对电视节目表现周期性影响-洞察及研究
- 金桥区域AI政策与产业创新研究-洞察及研究
- 本田供应商品质监查1
- 创业人生(上海大学)【超星尔雅学习通】章节答案
- 开放系统10862人文英语(4)期末机考真题及答案
- GB/T 4957-2003非磁性基体金属上非导电覆盖层覆盖层厚度测量涡流法
- GB/T 27806-2011环氧沥青防腐涂料
- GB/T 12618.1-2006开口型平圆头抽芯铆钉10、11级
- FZ/T 52051-2018低熔点聚酯(LMPET)/聚酯(PET)复合短纤维
- 设备吊装方案编制受力计算
- 食品工程原理概述经典课件
- 养老院机构组织架构图
- 《中国传统文化心理学》课件第五章 传统文化与心理治疗(修)
评论
0/150
提交评论