版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、6.1 概述概述6.2 基本编程指令基本编程指令6.3 保持、微分指令保持、微分指令6.4 顺序控制和暂存指令顺序控制和暂存指令6.5 定时器和计数器应用指令定时器和计数器应用指令6.6 数据比较类应用指令数据比较类应用指令6.7 数据转换类应用指令数据转换类应用指令6.8 数据移位类应用指令数据移位类应用指令6.9 数据传送类应用指令数据传送类应用指令6.10 数据运算类应用指令数据运算类应用指令 子程序和中断控制类应用指令子程序和中断控制类应用指令 高速计数器应用指令高速计数器应用指令 其他特殊应用指令其他特殊应用指令 特殊运算指令特殊运算指令 通信指令通信指令 典型应用举例典型应用举例第
2、1页/共319页CPM1ACPM1A共有:共有:基本指令基本指令1414条,应用指令条,应用指令7979条条(有功能号)。(有功能号)。指令执行的典型时间是:指令执行的典型时间是: 基本指令基本指令:LDLD指令的执行时间为指令的执行时间为0.64 s0.64 s。 应用指令应用指令:MOVMOV指令:指令:16.3 s16.3 s。PLCPLC编程可以以梯形图形式出现,也可以用指令编程可以以梯形图形式出现,也可以用指令形式表示,两者可以相互转化。形式表示,两者可以相互转化。 6.1 概述概述第2页/共319页助记符指令的一般格式为:指令码 操作数1 操作数2操作数3或 指令码 操作数第3页/
3、共319页【例1】 某指令ADD(30)#1270*DM0101DM0123 由指令码可知,该指令为一条BCD码加法运算指令。指令的三个操作数分别为参加运算的加数、被加数和结果。其中加数为立即数操作数1270。被加数为间接寻址操作数,程序在DM0101通道中取出操作数的实际地址。运算结果为直接寻址操作数,即把和数送至DM0123通道。第4页/共319页 小于标志LE(25507),执行比较指令时,如果第一操作数小于第二操作数,该位置ON。 等于标志EQ(25506),执行比较指令时两操作数相等,或执行运算指令时运算结果等于0,该位置ON。 大于标志GR(25505),执行比较指令时,如果第一操
4、作数大于第二操作数,该位置ON。 进位标志CY(25504),执行运算指令时,如果结果最高位向上有进位或借位,该位置ON。 出错标志ER(25503),执行指令出错时该位置ON。典型的执行错误有操作数地址错、控制字无定义等。出错标志为ON时,指令将停止执行。第5页/共319页第6页/共319页第7页/共319页基本编程指令基本编程指令 基本编程指令主要包括基本编程指令主要包括与、或、非、输出、与、或、非、输出、复位、置位复位、置位等逻辑指令。等逻辑指令。另外,另外,普通定时器和计数器指令普通定时器和计数器指令也没有功也没有功能号,也归为基本指令。能号,也归为基本指令。共共1414条。条。所有所
5、有无功能无功能号的指令称为基本编程指令。号的指令称为基本编程指令。第8页/共319页第9页/共319页第10页/共319页第11页/共319页1 1 LDLD和LD NOTLD NOT 指令格式: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的常闭触点与左端母线相连。说明:
6、LD和LD NOT指令的执行不会影响标志位。 第12页/共319页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 NOT指令也只能以位为单位进行操作。它们的执行不会影响标志位。在程序中不同的线圈可以同条件并联输出。 第13页/共319页【例1 1】 OUT OUT和OUT N
7、OTOUT NOT等指令的应用,0000001000010010100200001指令的程序如下: LD00000OUT01000OUT NOT01001LD NOT 00002OUT01002第14页/共319页 3 AND3 AND和AND NOTAND NOT指令格式:ANDANDN NAND NOTAND NOT N N其中的操作数N N也是位,它可以是IRIR、SRSR、ARAR、LRLR、HRHR或TCTC。功能:逻辑与运算指令。ANDAND表示N N与前面的逻辑结果进行与运算。即N N的常开触点与前面的逻辑串联。AND NOTAND NOT表示N N取非并与前面的逻辑结果进行与运
8、算。即N N的常闭触点与前面的逻辑串联。说明:AND和AND NOT指令只能以位为单位进行操作。它们的执行不会影响标志位。在程序中逻辑与运算的串联触点个数是没有限制的。 第15页/共319页【例2 2】 AND AND和AND NOTAND NOT指令的应用。 指令的程序如下: LD 00001AND00002AND NOT00003OUT01000 00001000020000301001第16页/共319页4 OR4 OR和OR NOTOR NOT指令格式:ORORN NOR NOTOR NOTN N其中的操作数N N也是位,它可以是IRIR、SRSR、ARAR、LRLR、HRHR或TCT
9、C。功能:逻辑或运算指令。OROR表示N N与前面的逻辑结果进行或运算。即N N的常开触点与前面的逻辑并联。OR NOTOR NOT表示N N取非并与前面的逻辑结果进行或运算。即N N的常闭触点与前面的逻辑并联。说明:OR和OR NOT指令只能以位为单位进行操作。它们的执行不会影响标志位。在程序中逻辑或运算的并联触点个数是没有限制的。 第17页/共319页【例3 3】 OROR和OR NOTOR NOT等指定的应用程序段为: LD00000OR 00001OR NOT00002OUT01001这段程序表示的运算逻辑为:当三个输入条件00000为ON或00001为ON,或00002为OFF中有一
10、个被满足时,输出01001就会被置ON。 第18页/共319页5 AND LD5 AND LD和OR LDOR LD指令格式:AND LDAND LDOR LDOR LD功能:触点组操作指令。AND LDAND LD指令表示对触点组进行逻辑与运算。OR LDOR LD指令表示对触点组进行逻辑或运算。说明:AND LD指令和OR LD指令不需要任何操作数,只表明触点组之间的逻辑运算关系。使用这两条指令有两种方法:分置法和后置法。两种方法可以得到相同的运算结果,但使用分置法时触点组数是没有限制的,而采用后置法时触点组数不能超过8 第19页/共319页【例4】 设有梯形图为图 (a)、(b)所示的两
11、个逻辑运算。将该运算用AND LD和OR LD指令完成,有两种方法实现助记符程序段,分别如下: 0000000001000020000300004000050100100000000020000300004000050000601001(a)(b)第20页/共319页 图(a)(a)逻辑分置法实现程序段:LD00000OR00003LD00001OR 00004AND LDLD NOT 00002OR NOT 00005AND LDOUT01001第21页/共319页 图(a)(a)逻辑后置法实现程序段:LD00000OR00003LD00001OR 00004LD NOT00002OR NO
12、T 00005AND LDAND LDOUT01001 第22页/共319页 图(b)(b)逻辑分置法实现程序段:LD00000AND00002LD00003AND NOT00004OR LDLD NOT00005AND NOT 00006OR LDOUT01001 第23页/共319页 图(b)(b)逻辑后置法实现程序段:LD00000AND00002LD00003AND NOT 00004LD NOT00005AND NOT00006OR LDOR LDOUT01001 第24页/共319页6 SET和RESET指令格式:SETNRESETN其中的操作数N也是位,它可以是IR、SR、AR、
13、LR或HR。功能:置位和复位指令。用来完成直接对位的置位或复位操作。当SET指令的执行条件满足时置N为ON。当RESET指令的条件满足时置N为OFF。 第25页/共319页【例5 5】 在0000000000和0000200002的状态变化已知的条件下,下面程序段执行的结果如图所示。LDLD0000000000SETSET2000020000LDLD0000200002RESETRESET20000200000000000002SET 20000RESET 20000000000000220000(a)(b)第26页/共319页7、编 程 规 则在编制梯形图或助记符程序时,应注意遵循以下编在编
14、制梯形图或助记符程序时,应注意遵循以下编程规则:程规则:(1) (1) 每一个每一个内部继电器的触点内部继电器的触点在程序中可以在程序中可以无限无限次次重复使用,但其重复使用,但其线圈在同一程序中一般只能使线圈在同一程序中一般只能使用一次用一次。同一继电器的多线圈使用会引起逻辑。同一继电器的多线圈使用会引起逻辑上的混乱,应尽量避免。上的混乱,应尽量避免。(2) (2) 梯形图信号流向只能梯形图信号流向只能自左向右自左向右,垂直分支上垂直分支上不可以有任何不可以有任何触点。触点。 第27页/共319页【例例1 1】 梯形图的编制举例。梯形图的编制举例。在下图的梯形图例中,在下图的梯形图例中,图图
15、(a)(a)为不规范的梯形图,为不规范的梯形图,图图(b)(b)为规范的梯形图。为规范的梯形图。第28页/共319页000010000200004000050100000004000030000101000(a)(b)0000301001000020000100003000040100100005第29页/共319页(3) (3) 继电器的线圈应该放在每一运算逻辑的最右端,继电器的线圈应该放在每一运算逻辑的最右端,在线圈右端不能再有任何触点。线圈不可以与左端在线圈右端不能再有任何触点。线圈不可以与左端母线直接相连,如果逻辑上有这种需要时也要通过母线直接相连,如果逻辑上有这种需要时也要通过一合适
16、的常闭触点来实现。一合适的常闭触点来实现。【例例2 2】 下图所示逻辑应用了特殊继电器中的常下图所示逻辑应用了特殊继电器中的常ONON触点来实现上电后一直执行的操作。触点来实现上电后一直执行的操作。 2531301001图 43.2第30页/共319页(4) (4) 编程时对于复杂逻辑关系的程序段,可编程时对于复杂逻辑关系的程序段,可按照先难后易的基本原则实现。按照先难后易的基本原则实现。 当有几个串联支路相并联时,可按先串后当有几个串联支路相并联时,可按先串后并的原则将触点多的支路放在梯形图的最上并的原则将触点多的支路放在梯形图的最上端。端。当有几个并联支路相串联时,可按先并后串当有几个并联
17、支路相串联时,可按先并后串的原则将触点多的支路放在梯形图的最左端。的原则将触点多的支路放在梯形图的最左端。 第31页/共319页【例例3 3】 梯形图等效变换图例如图所示。梯形图等效变换图例如图所示。00001000020000301001(a)000020000301001000010000100002010010000300002000010100100003(b)第32页/共319页LD00001 LD00002LD00002 AND00003AND00003 OR00001OR LD OUT01001OUT01001 图图(a)(a)等效变换前程序段等效变换前程序段 图图(a)(a)等
18、效变换后程序段等效变换后程序段第33页/共319页图(b) (b) 等效变换前程序段 图(b) (b) 等效变换后程序段LDLD0000100001 LD LD0000200002LDLD0000200002 OR OR0000300003OROR0000300003 AND AND0000100001AND LDAND LD OUTOUT0100101001OUTOUT0100101001第34页/共319页8 TIM指令格式: TIMNSV其中: 操作数N为定时器TC号,取值范围为十进制数000127 。 操作数SV为定时器的设定值,由4位BCD码组成,可以是IR、SR、HR、AR、LR、
19、DM、*DM、#,取值范围00009999。功能:定时器指令。TIM是最小单位为秒的减一计数器,故定时范围为0秒。当输入条件为ON时,TIM开始记时。记时操作为每秒当前值PV减一。当PV等于0时,定时到,TIM状态置ON。当输入条件为OFF或电源掉电时,TIM被复位。复位后状态置OFFOFF,送SVSV为新的PVPV值。 第35页/共319页【例1】 TIM指令应用图例之一如图所示。 图中的定时器TIM000的定时时间为60秒,即当00000为ON时,TIM开时记时。60秒以后定时器定时到,程序段中的01000为ON。相应的梯形图程序如下:LD00000TIM000#0600LDTIM000O
20、UT0100000000TIM 000 #0600TIM 00001000第36页/共319页9 计数器CNT指令格式:CP条件R条件CNTNSV其中: 操作数N为计数器TC号,取值范围为十进制数000127。 操作数SV为计数器的设定值,由4位BCD码组成,可以是IR、SR、HR、AR、LR、DM、*DM、#,取值范围00009999。 CNT在程序中有两个输入条件,故在格式中专门列出。在这里CP为计数脉冲输入端。R为复位端。 第37页/共319页功能:功能:计数器指令计数器指令。减一计数器减一计数器。当。当R R为为OFFOFF时计时计数器为数器为计数状态计数状态。计数时,。计数时,CPC
21、P每次由每次由OFFOFF变为变为ONON计计数一次。计数操作由数一次。计数操作由PVPV值减一完成。当值减一完成。当PVPV值减到值减到0 0时计数到,计数器输出状态置时计数到,计数器输出状态置ONON。当。当R R为为ONON时计时计数器为复位数器为复位状态,复位后计数器输出状态,复位后计数器输出状态置状态置OFFOFF,PVPV被重新置入被重新置入SVSV值。值。 第38页/共319页【例3】 ONT指令的应用。CNT指令的程序段如下:LD00000LD00001CNT127#0050LDCNT127OUT0100100000 CNT 1270100100001CNT 127 #0050
22、第39页/共319页6.3 6.3 保持指令、微分指令、空操作和结束指令保持指令、微分指令、空操作和结束指令第40页/共319页KEEP指令格式:条件S条件RKEEP(11) N其中的操作数N也是位,它可以是IR、SR、AR、LR或HR。 功能:锁存指令。KEEP相当于一个软件保持器。它前面要有两个条件,故在格式中专门列出。条件S为保持器的置位输入。条件R为保持器的复位输入。即:当条件S满足,操作数N置ON并保持;当条件R满足,则操作数N置OFF。特别地,当 S和R同时满足时,按复位优先的运算,操作数N置OFF。第41页/共319页 【例6】 KEEP指令的应用。KEEP指令的程序段如下: L
23、D00001LD00002KEEP(11)01000 与程序段对应的梯形图例及其相应波形如图所示。例中的置位输入为00001,复位输入为00002,显然利用KEEP指令可以代替相应的自锁运算逻辑。第42页/共319页图KEEP指令应用梯形图例及相应的波形0000100002000010000201001(a)(b)SR01001第43页/共319页DIFU(13)和DIFD(14)指令格式:DIFU(13)NDIFD(14)N其中的操作数N也是位,它可以是IR、SR、AR、LR或HR。 功能:微分指令。 DIFU为上升沿微分指令,当执行条件上升沿时使操作数N有一个扫描周期的ON。 DIFD为下
24、降沿微分指令,当执行条件下降沿时使操作数N有一个扫描周期的ON。第44页/共319页 【例7】 DIFU和DIFD指令的应用。DIFU和DIFD指令的程序段如下:LD00001DIFU(13)20001DIFD(14)20002 与程序段的对应的梯形图例及其相应波形如图所示。其中微分指令的输出脉冲宽度为一个扫描周期。第45页/共319页图4.2.6 DIFU(13)和DIFD(14)指令应用梯形图例及相应的波形00001DIFU 20001DIFD 20002000012000120002(a)(b)第46页/共319页NOP(00)指令 格式:NOP(00) 功能:空操作指令。不做任何操作,
25、可用于程序调试时的指令暂时删除或程序执行时间微调等特殊用途。第47页/共319页END(01)指令 格式:END(01) 功能:结束指令。表示程序的结束。每一程序的最后一条指令必须是END指令。没有END指令的程序不能被执行并会显示相应的出错信息。END指令以后的程序段将不会被执行。 说 明:执行END指令时标志位ER、CY、GR、EQ和LE将被置OFF。第48页/共319页6.4 顺序控制和暂存指令6.4.1 IL和ILC指令格式:IL(02)ILC(03)功能:互锁和互锁解除指令。第49页/共319页 IL定义互锁程序段的开始,IL指令的条件就是互锁的条件。ILC定义互锁程序段的结束。当I
26、L前的逻辑条件为ON时,位于IL和ILC指令之间的互锁程序段照常运行。当IL前的逻辑条件为OFF时,互锁程序段将不被执行。此时该程序中的各个输出的状态为:所有的输出线圈置为OFF,所有的定时器被复位,所有的计数器、保持继电器和移位寄存器保持当前状态不变。 说明:IL和ILC指令应成对使用,否则在检查程序时会得到出错信息。但该错误并不影响程序的执行。第50页/共319页 例1】 IL和ILC指令的应用。 有互锁程序段如图4.4.1(a)所示,无互锁程序段如图4.4.1(b)所示。 当互锁条件00001为OFF时,无论其他条件如何变化,程序段中的所有输出均保持OFF不变。从逻辑运算上看图(a)和图
27、(b)具有完全相同的功能。第51页/共319页图4.4.1 IL和ILC指令应用例梯形图00001000020000300004(a)IL(02)ILC(03)0100101001000010000200003000040100101001(b)第52页/共319页6.4.2 TR指令 功能:TR被称为暂存继电器。与LD和OUT指令配合,TR可以用来暂存程序运行的中间结果。利用TR可以方便编程。在程序中可以使用的TR共有8个,分别编号为TR0到TR7。第53页/共319页 【例2】 TR指令的应用。TR指令的程序段如下:LD00000OUTTR0AND00001OUT01000LDTR0AND
28、00002OUTTR1AND00003OUT01001LDTR1AND00004OUT01002第54页/共319页图4.4.2 TR指令应用例梯形图 000000000100002000030100001001TR0TR10000401002第55页/共319页6.4.3 JMP和JME格式:JMP(04)NJME(05)NN为跳转号,可以是0049之间任何十进制数字。功能:跳转和跳转结束指令。第56页/共319页 当JMP指令前的执行条件为OFF时,CPU将跳过JMP和JME指令之间的程序段,直接执行其后面的程序内容。当JMP指令前的执行条件为ON时,则不进行跳转,如同没有跳转指令时一样执
29、行。 JMP、JME指令和互锁程序的最大不同是,当发生跳转时,JMP和JME指令之间程序段中的所有输出、保持器、定时器和计数器状态都会保持不变。且被跳转的程序段不再占用扫描时间。第57页/共319页【例3】 JMP和JME指令应用图例如图所示。图4.4.3 JMP和JME指令应用例梯形图 00000JEP(04) 00JME(05) 00程序段A第58页/共319页4.4.4 JMP指令嵌套应用例梯形图00001JEP(04) 00JME(05) 01程序段A00002JEP(04) 01程序段BJME(05) 00程序段C第59页/共319页6.5 定时器和计数器应用指令第60页/共319页
30、6.5.2 TIMH指令格式:TIMH(15)NSV其中: 操作数N和SV的定义和取值范围与TIM指令相同。 功能:高速定时器指令。最小定时单位为秒。定时范围为0秒。其应用和使用方法与TIM指令相同。第61页/共319页6.5.4 CNTR指令格式:ACP条件SCP条件R条件CNTR(12)NSV第62页/共319页其中: 操作数N为计数器TC号,取值范围为十进制数000225(CPM/A为000127)。操作数SV为计数器的设定值,由4位BCD码组成,可以是IR、SR、HR、AR、LR、DM、*DM、#,取值范围00009999。 CNTR在程序中有三个输入条件。ACP为加计数脉冲输入端。S
31、CP为减计数脉冲输入端。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脉冲不起作用。第63页/共319页【例4】 CNTR指令的应用。CNTR指令的程序段如下:LD00000LD00001LD00002CNTR(12)126#0100LDCNT126OUT01
32、000第64页/共319页 由程序可知可逆计数器CNTR126的SV=100,在加一运算时,当加到PV=SV,再加一,PV=0,CNTR为ON。若再加一,PV=1,CNTR为OFF。在减一运算时,当减到PV=0,再减一,PV=SV,CNTR为ON。若再减一,PV=SV-1,CNTR为OFF。与程序段对应的梯形图例及其相应的工作时序波形如图所示。第65页/共319页图4.5.4 CNTR指令应用例梯形图及工作时序波形图00000 CNTR 126010000000100002ACPSCPRCNTR (12)126 #0100(a)OFFPV99 100012PV10100 9998ONOFFCN
33、TR 126000010000000002(b)第66页/共319页6.5.4 定时器和计数器的扩展第67页/共319页第68页/共319页第69页/共319页第70页/共319页第71页/共319页第72页/共319页第73页/共319页第74页/共319页6.6 数据比较类应用指令6.6.1 CMP和CMPL指令格式:CMP(20)C1C2CMPL(60)C1C2第75页/共319页 其中: 操作数C1为比较数1,操作数C2为比较数2。 CMP的两个比较数可以是IR、SR、AR、LR、HR、TC、DM、*DM、#。 CMPL的两个比较数可以是IR、SR、AR、LR、HR、TC、DM、*DM
34、。 第76页/共319页 功能:CMP为单字比较指令,完成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中的比较结果,可以用做其他运算的条件。第77页/共319页【例1】 CMP指令的应用。CMP指令的程序段如下:LD00000CMP(20)HR10#0100LD00000AND25505OUT010
35、00LD00000AND25506OUT01001LD00000AND25507OUT01002第78页/共319页图4.6.1 CMP指令应用例梯形图 0000001000CMP (20)HR10#01000000025505010010000025506010020000025507第79页/共319页6.6.2 BCMP指令格式:BCMP(68)BCMP(68)CDCDCBCBRR第80页/共319页其中: 操作数CD为比较数据,它可以是IR、SR、AR、LR、HR、TC、DM、*DM、#。 操作数CB为比较数据块起始通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 操作
36、数R为比较结果通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 功能:块比较指令。用数据CD和CB开始的16个上下限数据进行比较,比较结果送R通道。第81页/共319页表6.6.1 CB通道与R位的对应关系 序号上限下限R中的对应位1CBCB+1第0位2CB+2CB+3第1位3CB+4CB+5第2位16CB+30CB+31第15位第82页/共319页【例2】 设以下数据存储区中的数据值为:DM0005=0000DM0006=0100DM0007=0101DM0008=0200DM0009=0201DM0010=0300 DM0036=1600第83页/共319页执行下边程序段:
37、LD20000BCMP(68)#0210DM0005HR05当20000为ON时进行块比较操作。由于比较数据等于210,介于201和300之间,因此,比较操作的结果是将HR05通道的第二位即HR0502置ON。 配合相应的硬件设备,BCMP指令可以用来实现运动部件的位置控制。第84页/共319页6.6.3 TCMP指令格式:TCMP(85)TCMP(85)CDCDCBCBRR第85页/共319页其中: 操作数CD为比较数据,它可以是IR、SR、AR、LR、HR、TC、DM、*DM、#。 操作数CB为比较数据表起始通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 操作数R为比较结
38、果通道,它可以是IR、SR、AR、LR、HR、TC、DM、*DM。 功能:表比较指令。当指令的执行条件满足时,将数据CD与从TB开始的16个通道分别进行比较。若CD与其中的某一通道数据相等,则置R中的相应位为ON。TCMP指令在程序中可以用来查询某一指定数据。第86页/共319页 【例3】 设由HR00到HR15的16个通道中只有HR06和HR07等于100,则表比较指令执行后,01006和01007为ON。LD00000TCMP(85)#0100HR00010第87页/共319页6.6.4 ZCP和ZCPL指令格式:ZCP的指令格式:ZCP(-)CDLLUL第88页/共319页其中: 操作数
39、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。第89页/共319页ZCPL指令格式: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。第90页/共319页 功能:ZCP是数据区域范
40、围比较指令;ZCPL是双字数据区域范围比较指令。 数据区域范围比较时用CD和由LL和UL指定的数据区域进行比较,根据比较结果置相应的标志位:若CDLL,则置LE为ON;若LLCDUL,则置EQ为ON;若ULSV时MV增加取1为反作用,PVSV时MV减少P1+5415位输入滤波系数()BCD码100199对应系数0.000.99越小滤波作用越弱取000时为默认值0.65P1+607位输出范围08对应输出二进制位数816位P1+6815位输入范围08对应输入二进制位数816位P1+7P1+32工作区系统使用第271页/共319页 说明:PID指令是按照可编程控制器的CPU周期执行的,所以如果其采样
41、周期大于CPU周期,PID运算将会等待到该采样周期完成后的下一CPU周期完成。PID控制运算要使用从P1P1+32共33个通道,用户在编程时将不能在使用该33个通道。在下列情况下不可以使用PID指令:中断程序中、互锁程序中、跳转程序中、步进程序中、子程序中。标志CY为ON,表示系统正在进行PID处理;CY为OFF,表示系统采样周期还没有结束。第272页/共319页4.13.9 SRCH指令格式:SRCH(-)SRCH(-)NNR1R1CC第273页/共319页其中: 操作数N为查找通道数,它可以是IR、SR、HR、AR、LR、TC、DM、#。通道数取值范围4位BCD码00009999。 操作数
42、R1为查找范围开始通道,它可以是IR、SR、HR、AR、LR、TC、DM。 操作数C为比较数和结果通道,它可以是IR、SR、HR、AR、LR、TC、DM。第274页/共319页 功能;数据查找指令。执行条件满足时在R1到R1+N-1范围内N个通道里查找与C中相同的数据。如果在指定范围内找到一个以上的符合查找条件的通道,首先置标志EQ为ON,并把与符合条件通道的最低地址相关的一个量赋于C+1。赋值的方式是:若查找范围在DM区,赋值符合条件DM通道的最低地址值;若查找范围在其他数据区,赋值符合条件最低通道地址与开始通道地址之差。如果查找范围内没有符合条件的通道,EQ置OFF,C+1内容不变。第27
43、5页/共319页 【例5】 若设符合查找要求的最低通道地址为DM0118,则C+1被赋值0118。 若设符合查找要求的最低通道地址为IR114,且R1为IR100,则C+1被赋值0014。第276页/共319页4.13.10 SYNC指令格式:SYNC(-)SYNC(-)P1P1P2P2CC其中: 操作数P1为输入口定义,只取000。 操作数P2为输出口定义,可以取000(定义输出口01000)或010(定义输出口01001)。 操作数C为比例因子,它可以是IR、SR、HR、AR、LR、DM、#,取值范围BCD码00011000,对应比例因子值11000%。第277页/共319页 功能:同步脉
44、冲控制指令。执行时将高速计数器的输入脉冲频率乘以给定的比例因子后从输出口输出,即:输出频率=输入频率(C/100)。 输出频率的范围是10 Hz10 kHz,大于10 kHz时只输出10 kHz。小于10 Hz时只输出10 Hz。输入频率来自高速计数器的工作模式。在同步脉冲执行时不可以再改变输出口,但可以用再次执行SYNC指令的办法来改变比例因子。 只有在DM6642中设置输出00000到00003为同步脉冲控制时才能实现该指令操作。当同步脉冲控制执行时,高速计数器和脉冲输出功能均不可使用。应用中可以用C=005的INI指令或将可编程控制器工作方式切换的编程来停止同步脉冲输出。第278页/共3
45、19页4.13.11 PWM指令格式:PWM(-)PWM(-)PPFFDD第279页/共319页其中: 操作数P为口定义,可以取000或010。P取000,定义可变占空比输出0;输出口01000。P取010,定义可变占空比输出1;输出口01001。 操作数F为频率,它可以是IR、SR、HR、AR、LR、DM、#,取值范围BCD码00019999,对应频率999.9 Hz。 操作数D为占空比,它可以是IR、SR、HR、AR、LR、DM、#,取值范围BCD码00010100,对应脉冲占空比1%100%。第280页/共319页 功能:可变占空比脉冲指令。执行时从指定输出口输出指定占空比的脉冲序列。可
46、变占空比脉冲可以同时在两个输出口独立输出。PWM指令执行后指定占空比的脉冲将连续输出直至新PWM指令或C=003的INI指令的执行。脉冲输出过程中可以用新PWM指令改变占脉冲空比但不能改变其频率。在输出口被SPED或ACC指令使用时PWM指令不能实现对该口的操作。第281页/共319页4.13.12 ACC指令格式:ACC(-) ACC(-)PPMMCC其中: 操作数P为口定义,取000,即定义为梯形加/减速单相脉冲输出0。第282页/共319页表4.13.4 ACC指令输出模式定义M定义000独立模式和加减脉冲模式002独立模式和脉冲加方向模式010顺时针连续模式和加减脉冲模式011逆时针连
47、续模式和加减脉冲模式012顺时针连续模式和脉冲加方向模式013逆时针连续模式和脉冲加方向模式第283页/共319页 操作数C为控制字开始通道,它可以是IR、SR、HR、AR、LR、DM。控制字从C开始共有三个,取值范围均为BCD码00011000,对应频率10 Hz10 kHz。其中C为加速率,指定加速时输出频率每10 ms的增加值。C+1为目标频率。C+2为减速率,指定减速时输出频率每10 ms的减少值。 功能:加速控制指令。用来启动梯形加/减速脉冲输出和定义加减速率。一但脉冲输出被启动后,输出频率将按指定的变化率到达指定的目标值。使用下列方法可以停止脉冲输出:减速停止:执行C+1的值为00
48、00的ACC指令或在独立模式下输出脉冲数达到PULS指令的指定数。立即停止:执行C=003的INI指令或将可编程控制器工作方式切换的编程。第284页/共319页 独立模式工作时在ACC指令执行前需要由PULS指令指定输出脉冲数,且每次输出停止后都需重新指定。输出在满足指定脉冲数、目标频率和加/减速率的时间段里完成加速、衡速、减速和停止的过程,在几个参数值比较合适的情况下,会输出一个频率变化为梯形的脉冲序列。当预置的脉冲数小于加/减速所需要的时就会输出一频率变化为三角形的脉冲序列。 连续模式工作时,脉冲将持续输出,只能使用上述几个减速或立即停止方法来终止。在连续模式下脉冲正在输出时还可以再给定加
49、减速率改变目标频率值。第285页/共319页4.13.13 FCS指令格式:FCS(-)FCS(-)CCR1R1DD第286页/共319页表4.13.5 FCS指令控制字定义C意义第0位第11位参加运算的数据项数N(通道数或字节数)BCD 001999第12位运算起始的字节(13位为ON时有效)1:高字节0:低字节第13位运算数据单位1:字节0:字第1415位00第287页/共319页 操作数R1为帧开始通道,它可以是IR、SR、HR、AR、LR、TC、DM。 操作数D为目的开始通道,它可以是IR、SR、HR、AR、LR、DM。 功能:FCS计算指令。计算帧校验码,用来检查通信数据的传输错误。
50、当指令的执行条件满足时,以按位异或的方法计算从R1R1+N-1范围内所有字或字节的帧校验码,并将结果转换为ASCII码的形式存入D及D+1。所以按字节计算的2位十六进制结果和按字计算的4位十六进制结果在目的通道中实际应该是4位或5位ASCII码数据。第288页/共319页【例6】 设下面程序段中在FCS指令被执行前有源数据:DM0000=0001DM0001=0002DM0002=0003DM0003=0004DM0004=0005DM0005=0006DM0006=0007DM0007=0008第289页/共319页 FCS指令在输入00001为ON时执行,帧校验码原始结果应为0008,转换
51、为ASCII码送到目的通道中的最后结果是:DM0010=3030DM0011=3038LD00001FCS(-)#0008DM0000DM0001第290页/共319页4.14 特殊运算指令1.14.1 MAX和MIN指令格式:MAX(-)MAX(-)CCR1R1DDMIN(-)MIN(-)CCR1R1DD第291页/共319页表4.14.1 MAX和MIN指令控制字定义C意义第011位查找范围的通道数N:(BCD)001000第1213位00第14位是否输出地址到D+10:输出1:不输出第15位1:按带符号二进制数处理2:按不带符号二进制数处理第292页/共319页 操作数R1为查找范围开始
52、通道,它可以是IR、SR、HR、AR、LR、DM、TC。 操作数D为目标通道,它可以是IR、SR、HR、AR、LR、DM。 功能:MAX是查找最大值指令。MIN是查找最小值指令。当执行条件满足时,执行查找最大值或最小值操作。在R1到R1+N-1范围内的N个通道里找到一个最大或最小的数值送到D。把与符合查找条件的最低一个通道地址相关的一个量赋于D+1。赋值的方式与SRCH指令为C+1通道的方法相同。第293页/共319页4.14.2 AVG指令格式:AVG(-)SND 操作数S为源通道,它可以是IR、SR、HR、AR、LR、TC、DM。 操作数N为周期数,它可以是IR、SR、HR、AR、LR、T
53、C、DM、#。N的取值范围为BCD码00010064,N大于64时按等于64处理。 操作数D为目的开始通道,它可以是IR、SR、HR、AR、LR、DM。第294页/共319页 功能:平均值计算指令。计算N个数的平均值,计算的过程是在每个周期内将S中的内容顺序存入D+2开始的通道,同时计算一次已存入数据的平均值,平均值结果按四舍五入取整数送D。直至被平均的数据数达到N。故AVG指令的执行共须占用D+N+1个通道,其中:D: 存放平均值;D+1:系统使用;D+2:第一个周期时的S值;D+3:第二个周期时的S值;D+N+1:第N个周期时的S值。第295页/共319页 【例1】 下面程序段在执行条件满
54、足时先将IR200置为0000。在此后的每个扫描周期IR200的内容要加一。AVG指令经过几个周期的运算最后在DM1000中结果是DM1002开始的N个通道的平均值。LD00001MOV(21)#0000200AVG(-)200#0003DM1000CLC(41)ADB(50)200#0001200第296页/共319页4.14.3 SUM指令格式:SUM(-)SUM(-)CCR1R1DD第297页/共319页表4.14.2 SUM指令控制字定义C意义第0位第11位参加累计运算的数据项数N(通道数或字节数)BCD 001999第12位运算起始的字节(13位为ON时有效)1:高字节0:低字节第1
55、3位运算数据单位1:字节0:字第14位运算数据类型1:二进制0:BCD第15位(14位为ON时有效)1:带符号二进制数0:不带符号二进制数第298页/共319页 操作数R1为源开始通道,它可以是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。第299页/共319页 【例2】 下面程序段在输入条件满足时执行累加运算。累加过程是将DM0000DM0007八个通道的BCD数据相加,加得结果送DM0010和DM0011,其中
56、DM0010为结果的低四位,DM0011为结果的高四位。LD00001SUM(-)#0008DM0000DM0010第300页/共319页4.15 通 信 指 令4.15.1 RXD和TXD指令格式:RXD(47) RXD(47)DDCCNNTXD(47) TXD(47)SSCCNN第301页/共319页其中: 操作数D为目的开始通道,它可以是IR、SR、AR、DM、HR、TC、LR。 操作数S为源开始通道,它可以是IR、SR、AR、DM、HR、TC、LR。表4.15.1 RXD指令控制字定义C功能第0位定义写字节顺序0:存入字、最高有效字节在先1:存入字、最低有效字节在先2:存入最低有效字节
57、、下一字最高有效字节在先3:存入最高有效字节、下一字最高有效字节在先第1位第2位00第3位定义输入口0:RS-232C口1:外设口第302页/共319页表4.15.2 TXD指令控制字定义C功能第0位定义字节顺序0:最高有效字节在先1:最低有效字节在先第1位第2位00第3位定义输出口0:RS-232C口1:外设口第303页/共319页 操作数N为传送字节数,它可以是IR、SR、AR、DM、HR、TC、LR、#。取值范围为:#0000#0256 BCD(Host Link模式下为#0000#0061)。 功能:RXD为接收指令。当执行条件满足时从输入口上读入N个字节的数据并按照C所定义的方式存入
58、由D开始的目的通道中。TXD为发送指令。当执行条件满足时从S开始的源通道上读出N个字节的数据转换成相应的ASCII码并按照C所定义的方式从输出口送出。 第304页/共319页【例】 设有数据:S =12S+1=34S+2=56S+3=78则当C=0000时,TXD指令传送顺序为:12345678则当C=0001时,TXD指令传送顺序为:21436587第305页/共319页4.15.2 STUP指令格式:STUP(-)STUP(-)NNSSOO其中:操作数N取000。操作数S为源开始通道,它可以是IR、SR、AR、DM、HR、TC、LR、#。第三个操作数O忽略不计。第306页/共319页 功能:改变RS-232C设置指令。执行条件满足时改变内置RS-232C口的设置。但这个改变只有在可编程控制器关电后重新启动或者工作方式由运行和监控转换到编程时才会被写入内存。 在CPM2A中内置RS-232C口的参数设定值包括通信方式、波特率、帧格式、上位节点号等均存放在DM中的指定通道中。当STUP指令执行时,如果S为通道地址,S到S+4中的内容将会被写入DM6645DM6649。如果S为#0000,DM6645DM6649会被重新设置为默认值。第307页/共319页4.16
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 家纺环保设备创新创业项目商业计划书
- 制药机械智能配料系统创新创业项目商业计划书
- 多功能厨房开罐器与剥壳器创新创业项目商业计划书
- 固定资产管理工作计划与资产盘点方案
- 研发项目管理方案及研发流程优化
- 基于AB测试的产品优化方案实施报告
- 功率人教教案(2025-2026学年)
- 小学三年级语文鹿角和鹿腿原文教案及教学反思(2025-2026学年)
- 控烟健康教育讲座教案(2025-2026学年)
- 高中语文人教版中国文化经典研读第七单元相关读物教案(2025-2026学年)
- 循证思维在临床护理教学中的应用
- 围手术期管理制度与流程
- 2025大连机场招聘109人高频重点提升(共500题)附带答案详解
- 湘教版(2024新版)七年级上册地理期末复习必背知识提纲
- 【MOOC】大学生心理健康-厦门大学 中国大学慕课MOOC答案
- 企业用地申请报告范文
- 快递突发事件应急预案(3篇)
- 2024年自助售货店转让合同范文
- 2023年凉山州雷波重点国有林保护局招聘工作人员笔试真题
- 大班科学课件《它到哪里去了》
- 2024-2025学年广东省茂名市信宜市北师大版二年级上册期中测试数学试卷
评论
0/150
提交评论