编程语言及编程方法.ppt

上传人:小飞机 文档编号:6373981 上传时间:2023-10-21 格式:PPT 页数:74 大小:1.32MB
返回 下载 相关 举报
编程语言及编程方法.ppt_第1页
第1页 / 共74页
编程语言及编程方法.ppt_第2页
第2页 / 共74页
编程语言及编程方法.ppt_第3页
第3页 / 共74页
编程语言及编程方法.ppt_第4页
第4页 / 共74页
编程语言及编程方法.ppt_第5页
第5页 / 共74页
点击查看更多>>
资源描述

《编程语言及编程方法.ppt》由会员分享,可在线阅读,更多相关《编程语言及编程方法.ppt(74页珍藏版)》请在三一办公上搜索。

1、4.3 控制指令(P78),补充:FX系列PLC的功能指令实际上就是许多功能不同的子程序。FX系列功能指令格式采用梯形图和指令助记符相结合的形式每条功能指令都有一个指令助记符及功能编号(P228)。,1位元件和字元件位元件:只处理ON/OFF状态的元件。例如X、Y、M、S。字元件:处理数据的元件。例如T、C和D、V、Z等。,由位元件也可构成字元件进行数据处理,位元件组合由Kn加首元件号来表示。2位元件的组合4个位元件为一组组合成单元。KnM0中的n是组数,16位数操作时为K1K4,32位数操作时为K1K8。例如K2M0表示由M0M7组成的八位数据;K4M10表示由M10M25组成的16位数据,

2、M10是最低位。当一个16位数据传送到K1M0、K2M0或K3M0时,只传送相应的低位数据,较高位的数据不传送。32位数据传送也一样。在作16位数操作时,参与操作的位元件由K1K4指定。若仅由K1K3指定,不足部分的高位均作0处理,这就意味着只能处理正数(符号位为0)。在作32位数操作时也一样。,程序流控制 传送与比较 算术与逻辑运算功能指令分类 移位与循环 数据处理 高速处理 方便指令 外部IO设备 Fx功能模块 F2外部单元,循环移位与移位指令(P78)(功能号P229 FNC 3039)1、循环移位指令用法:使16/32位数据向左或向右循环移位ROR(rotation right):右循

3、环移位指令(FNC 30)。ROL(rotation left);左循环移位指令(FNC 31)。梯形图如下:,各位数据向右循环移位n位,每次移出来的那一位同时存入进位标志M8022.S是源操作数(其内容不随指令执行变化)。在可利用变址修改软元件编号的情况下,以加上“.”符合的S.表示。源操作数不止一个时,可用S1.S2.表示。D是目标操作数(其内容随执行指令变化)。同样可作变址修饰。目标操作数不止一个时,可用D1.D2.表示。,m与n表示其他操作数。十进制K和十六进制H。需注释的项目较多时可采用m1、m2等方式。,1)操作数的可用软元件可使用X、Y、M、S等位元件将这些位元件组合,以KnX、

4、KnY、KnM、KnS等形式表示,作为数值数据进行处理可处理数据寄存器D或定时器T或计数器C的当前值寄存器数据寄存器D为16位,在处理32位数据时使用一对数据寄存器的组合。例如:将数据寄存器D0指定为32位指令的操作数时,处理(D1,D2)32位数据(D1为高16位,D0为低16位)。T、C的当前值寄存器也可作为一般寄存器处理方法相同,2)数据长度功能指令可处理16位数据和32位数据。功能指令中有符号(D)表示处理32位数据。处理32位数据时,用元件号相邻的两元件组成元件对。元件对的首地址用奇数、偶数均可,建议元件对的首地址统一用偶数编号。,要说明的是32位计数器C200C255不能用作16位

5、指令的操作数。,3)程序步数功能指令的功能号和指令助记符占一个程序步。每个操作数占2个或4个程序步(做16位操作是2个程序步,32位操作是4个程序步)。,4)功能指令类型FX系列的功能指令有连续执行型和脉冲执行型两种形式。,操作码后加“P”,表示当其控制线路由“断开”到“闭合”时才执行该指令.,(P)和(D)可同时使用,如(D)ROL(P)用脉冲执行方式可缩短程序执行时间。,连续执行型,脉冲执行型,4.3.2 循环移位与移位指令5)注意事项:(1)ROL(P)每次X0由OFF变ON时,各位数据向左循环移位“n”位。ROR(P)则向右移。最后一次从最高位移出的状态存于进位标志M8022中。(2)

6、上面解释16bit指令的ROL、ROR的执行情况也适用于32bit指令。(3)用连续执行指令时,循环移位操作每个周期执行一次。(4)若在目标元件中指定“位”数,则只能用K4(16位指令)和K8(32位)指令,如:K4Y10,K8M0。,X0,4.3.2 循环移位与移位指令,5)举例:下图所示先给X11一个脉冲,而后再给X10一个脉冲,分析输出线圈的循环情况。,当将常开触点X11闭合,使输出线圈Y0、Y1置“1”,此时,各输出线圈的状态如图A所示。然后,再断开常开触点x11,将常开触点X10的状态由断开”到“闭合”一次,各输出线圈的状态向右移一次,其中最右端的Y0和Y1的状态循环移到最左位,如图

7、B所示。由于最右端移出的最后一位YI的状态为“I”,因此,持殊逻辑线圈M8022被量“1“。,图 A,图 B,4.3.2 循环移位与移位指令(P80),2带进位的循环指令用法:使16/32位数据连同进位一起向左或 向右循环移位 RCL(rotation left with carry):带进位的左移循环指令(FNC 33)RCR(rotation left with carry):带进位的右移循环指令(FNC 32)梯形图如下:,D n,移位量 n16(16位指令)n32(32位指令),D是目标操作数,n表示其他操作数,1)数据长度功能指令可处理16位数据和32位数据。功能指令中有符号(D)表

8、示处理32位数据。处理32位数据时,用元件号相邻的两元件组成元件对。元件对的首地址用奇数、偶数均可,建议元件对的首地址统一用偶数编号。,要说明的是32位计数器C200C255不能用作16位指令的操作数。,2)程序步数功能指令的功能号和指令助记符占一个程序步。每个操作数占2个或4个程序步(做16位操作是两个程序步,32位操作是4个程序步)。,3)功能指令类型FX系列的功能指令有连续执行型和脉冲执行型两种形式。,操作码后加“P”,表示当其控制线路由“断开”到“闭合”时才执行该指令.,(P)和(D)可同时使用,如(D)RCL(P)用脉冲执行方式可缩短程序执行时间。,连续执行型,脉冲执行型,4.3.2

9、 循环移位与移位指令,4)注意:(1)RCL(P)指令每次X0由OFF变ON时,各bit数据向左循环移位n位。RCR(P)向右移。(2)如果M8022在执行循环指令前ON,则循环中的进位标志被送到目标。(3)用连续执行指令时,循环移位操作每个周期执行一次。(4)要在目标元件中指定“位”数,则只能用K4(16bit指令)和K8(32bit)指令,如:K4Y10,K8M0。,3移位指令的用法:使位元件中的状态向左或向右移位,SFTL(shift left):左移位指令。SFTR(shift right):右移位指令。梯形图如图1所示:,图1,图2,溢出,(1)由n1指定位元件长度,n2指定移位位数

10、,二者的关系为n2n11024.操作元件如右图2所示。(2)当用脉冲指令时,在执行条件的上升沿时执行。用连续指令时每个扫描周期执行一次。,4、字右移位指令WSFR和字左移位指令WSFL的用法,WSFR(word shift right)使字元件中的状态向右或向左移位WSFL(word shift right)梯形图如图1所示:,图1,(1)由n1指定字元件长度,n2指定移位位数,二者的关系为n2n1512.操作元件如图2所示。(2)当用脉冲指令时,在执行条件的上升沿时执行.用连续指令时每个扫描周期执行一次。,4警戒时钟指令的用法及说明(P86)(FNC07)WDT、WDT(P):(watchd

11、og timer)刷新警戒时钟的值。没有操作元件。如图所示。在FX系列PLC中,警戒专用计时器的设定值寄存在D8000中,设定为100ms。如果程序的扫描周期时间(从0步到END或FEND指令)超过100ms,PC将停止运行。在这种情况下,应将WDT指令插到合适的程序步中刷新警戒时钟以使顺序程序得以继续执行,直到END或FEND指令。,4.3.3 程序流控制指令(P83)程序流控制指令用于改变程序的执行顺序,有10条指令,4警戒时钟指令的用法及说明该指令常在以下几方面使用:例如将一个扫描时间为120ms的程序分为2个60ms的程序。在这两个程序之间插入WDT指令。也可用MOV指令改写特殊数据寄

12、存器D8000的值;再如WDT指令还可用于与CJ指令对应的标号的步序低于CJ指令步序时,在标号后编入WDT指令;还可用于编入FOR-NEXT循环之中。,1条件跳转指令的用法及说明,CJ(conditional jump):条件跳转指令。该指令用于跳过顺序程序中的某一部分,以减少扫描时间。其梯形图如图1所示。CJ(P)操作码后加“P”,表示当其控制线路由“断开到“闭合”时才执行该指令。操作元件为指针P0P63,其中P63即END,无需再标号。FNC00 跳转指针标号一般在CJ指令之后,执行跳转指令时,其间的梯形图不再被扫描,这些梯形图的状态和数据被冻结。由于这些梯形图不再被扫描,因此扫描周期缩短

13、了。,图1,1条件跳转指令的用法及说明,跳转指针标号也可出现在跳转指令之前,如图2所示。图中触点X22的ON时间不能超过100ms,否则会引起警戒时钟出错。在一个程序中一个标号只能出现一次,否则程序会错。但同一程序中两条跳转指令可以用相同的指针号,编程时要注意两条跳转指令分别实现跳转。,CJ指令的应用 为了满足设备自动运行和调试的需要,可以实现设备手动与自动工作方式的转换,X7为手动自动转换开关,2.子程序指令CALL、SRET的用法及说明子程序是为一些特定的控制,编制的相对独立的程序,若某段程序在整个程序的不同位置多次出现,可把这段程序作为子程序,CALL和CALL(P):子程序调用指令。操

14、作元件为指针P0P62,操作码后加“P“表示当其控制线路由“断开”到“闭合”时才执行该指令。FNC01SRET:子程序返回指令,指令不需要控制线路,直接与左母线相连。FNC02,图1,子程序指令的梯形图如图1。当常开触点X0“断开”时不执行子程序P10的调用;当常开触点X0“闭合”时,CPU扫描到指针为P10的子程序时,调用指令的梯形图,立即停止对主程序的扫描。待扫描到SRET指令后,再返回到主程序继续扫描。编制程序时,子程序必须编制在FEND(first end FNC06)指令之后。,子程序指令CALL、SRET的用法及说明,CALL(P)指令和子程序可以嵌套,如图2所示。在执行P11子程

15、序时,如果CALLP12指令被执行,则程序跳到子程序P12,在SRET(2)指令执行后,程序返回子程序P11中CALL P12指令的下一步。在SRET(1)指令执行后再返问主程序。编程时,最多可有5级子程序嵌套。如果在子程序中使用定时器,规定范围为T192一T199和T246T249。,图2,3中断指令用法及说明,EI:(FNC04)允许中断指令DI:(FNC05)禁止中断指令。IRET:FNC03中断服务子程序返回指令。它们均为无操作元件,不需要控制线路,指令块直接与左母线相连。中断指令的使用如图所示。一般情况PLC禁止中断状态。指令EI与DI之间的程序为允许中断区域当程序处理到允许中断区域

16、时,转入子程序(1)或(2),每个子程序处理到IRET指令时返回原断点。,3中断指令用法及说明,在中断子程序中编入EI和DI时,中断指令允许有2级中断嵌套。程序中使用定时器,规定范围T192T199和T246T249。多个中断信号顺序产生时,最先产生的中断信号有优先权。若2个或2个以上的中断信号同时产生时,中断指针号较低的有优先权。如果中断信号产生于禁止中断DI与 EI区间,中断信号被存储,并在EI指令之后被执行。,5循环指令FOR-NEXT用法及说明FOR(FNC08)指令和NEXT(FNC09)指令是一组循环指令,必须成对使用。其梯形图如图1所示,两条指令都直接与左母线连接。指令操作数选用

17、范围如图2所示。当CPU扫描到FOR指令后,就将FOR指令到NEXT指令之间的梯形图重复扫描4次,然后再扫描NEXT指令下面的梯形图。,图2,该指令可以嵌套使用,最多允许5级嵌套。如果要求有条件执行重复扫描,则可以在FOR指令前面放置跳转指令。如图3所示,嵌套数为3,分别为循环体A、B和C,其中循环体A要求有条件执行重复扫描,因此在相应的FOR指令前面加了跳转指令。因此其重复扫描次数分两种情况;1)当跳转指令的控制线路(常开触点X10)断开时,循环体A的重复扫描次数为:654=120(次)2)当跳转指令的控制线路(常开触点X10)闭合时,则不再执行循环体A的重复扫描。在使用FOR、NEXT指令

18、时要注意二者必须成对使用,数目相符,并且NEXT指令不能编在END之后。,4.5 算术运算指令,4.5.1 加法指令ADD(addition)操作数选用范围及梯形图如下图 在其操作码之前加“D”表示操作数为32位的二进制数 在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行加法运算指令。源操作数S1.为被加数,S2作为加数,将和放入操作数D.中。,(D11D10)+(D13D12)(D15D14),4.5 算术运算指令,4.5.1 加法指令ADD指定源中的操作数必须是二进制,其最高M为符号位,如果该位为“o”,则表示该数为正;如果该位为“1”,则表示该数为负。操作数是16位的二

19、进制数,数据范围:32768一+32767。操作数是32位的二进制数,数据范围:-2147483648-+2147483647。如果运算结果为“o”,则零标志M8020置“1”;如果运算结果超过+32767(16位)或+2147483M7(32位),则进位标致M8022置“1”;如果运算结果小于-32767(16位)或-2147483647(32位),则借位标志M8021置“1“,4.5 算术运算指令,4.5.2 减法指令SUB操作数选用范围及梯形图如下图 在其操作码之前加“D”表示操作数为32位的二进制数 在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行加法运算指令。源操作

20、数S1.为被减数,S2作为减数,将差放入操作数D.中。,(D)SUB D10 D12 D14,X0,4.5 算术运算指令,4.5.2 减法指令SUB2.指定源中的操作数必须是二进制,其最高M为符号位,如果该位为“o”,则表示该数为正;如果该位为“1”,则表示该数为负。3.操作数是16位的二进制数,数据范围:32768一+32767。操作数是32位的二进制数,数据范围:-2147483648-+2147483647。4.如果运算结果为“o”,则零标志M8020置“1”;如果运算结果超过+32767(16位)或+2147483M7(32体),则进位标致M8022置“1”;如果运算结果小于-3276

21、7(16位)或-2147483647(32位),则借位标志M8021置“1“,4.5 算术运算指令,4.5.3 乘法指令MUL操作数选用范围及梯形图如下图,在其操作码之前加“D”表示操作数为32位的二进制数,在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行加法运算指令。源操作数S1.为被乘数,S2作为乘数,将积放入操作数D.指定的那个字软设备以及紧随其后的字软设备中。若源操作数S1.S2.为16位的二进制数,则存放积的是2个16位的字软设备,若源操作数S1.S2.为32位的二进制数,则存放积的是2个32位的字软设备。各操作数的其他规定与加法指令同,不再赘述。,4.5 算术运算

22、指令,4.5.4 除法指令DIV操作数选用范围及梯形图如下图,在其操作码之前加“D”表示操作数为32位的二进制数,在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行加法运算指令。源操作数S1.为被除数,S2作为除数,将商放入操作数D.指定的那个字软设备,把余数放在紧随其后的字软设备中。若源操作数S1.S2.为16位的二进制数,则存放积的是2个16位的字软设备,若源操作数S1.S2.为32位的二进制数,则存放积的是2个32位的字软设备。各操作数的其他规定与加法指令同,不再赘述。,4.5 算术运算指令,4.5.5 加1指令INC操作数选用范围及梯形图如下图,在其操作码之前加“D”表

23、示操作数为32位的二进制数,在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行加1运算指令。各操作数的其他规定与加法指令同,不再赘述。,4.5 算术运算指令,4.5.6 减1指令DEC操作数选用范围及梯形图如下图,在其操作码之前加“D”表示操作数为32位的二进制数,在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行减1运算指令。各操作数的其他规定与加法指令同,不再赘述。,4.5 算术运算指令,4.5.7 比较指令两数比较指令CMP(compare)操作数选用范围及梯形图如下图(D)CMP(P)执行比较操作后,即使其控制线路断开,其目的操作数的状态仍保持不变,除非

24、用RST指令将其复位。,4.5 算术运算指令,4.5.7 比较指令2.区间比较指令ZCP操作数选用范围及梯形图如下图不论S1 S2.还是S1.S2.,执行ZCP指令时总是将较大的那个数看作为S2.。执行比较操作后,即使其控制线路断开,其目的操作数的状态仍保持不变,除非用RST指令将其复位。,4.5 算术运算指令,4.5.8 求平均值指令DEC操作数选用范围及梯形图如下图,在其操作码之前加“D”表示操作数为32位的二进制数,在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行该运算指令。源操作数S表示参与求平均值的若干个数的首地址,常数n表示参与求平均值的数的个数,其取值范围为1一

25、64,求得的n个数的平均值存放在目的操作数D.中。如下图中,当常开触点X10断开时,不对数据寄存器D0D9内的数求平均位;当常开触点闭合时,每扫描一次梯形图,就将D0一D9内的数相加,所得的和除以10,求得的商(即平均值)存入目的操作数D10内。,n,4.6 特殊功能指令,4.6.1 传送指令MOV操作数选用范围及梯形图如下图,在其操作码之前加“D”表示操作数为32位的二进制数,在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行该运算指令。如果源操作数S.内的数据是十进制的常数,则CPU自动地将其转换成二进制数,然后再传送到目的操作数D.中去。,4.6 特殊功能指令,4.6.2

26、 取反传送指令CML操作数选用范围及梯形图如下图,在其操作码之前加“D”表示操作数为32位的二进制数,在其操作码之后加“P“表示当其控制线路由“断开”到“闭合”时才执行该运算指令。如果源操作数S.内的数据是十进制的常数,则CPU自动地将其转换成二进制数,然后再传送到目的操作数D.中去。,功能指令的应用,T、C设定值间接指定,位元件的传送,一组彩灯L1-L8,要求隔灯显示,每2S变化一次,反复进行,用一个开关实现启停控制,Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y00 1 0 1 0 1 0 11 0 1 0 1 0 1 00 0 0 0 0 0 0 0,Y17 Y16 Y15 Y14 Y13

27、 Y12 Y11 Y10 Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1,利用变址寄存器和加1、减1指令控制8盏彩灯,正序亮至全亮,反序熄至全熄.反复循环.彩灯状态变化时间为1S,Y7 Y6 Y5 Y4 Y3 Y2 Y1 Y00 1 0 1 0 1 0 11 0 1 0 1 0 1 00 0 0 0 0 0 0 0,4.6 特殊功能指令,4.6.3 数制转换指令BCD变换BCD是二十进制转换指令。其指令操作数选用范围及梯形图如图所示,在其操作码之前加“D”表示其操作数为32位的二进制数,在其操作码之后加“P”表示当其控制线路由“断

28、开”到“闭合”时才执行该指令操作。在BCD/BCD(P)指令执行中,即源操作数为16位的二进制数,则转换成的十进制数不要超出0-9999范围,否则出错。若(D)BCD(D)BCD(P)指令执行中,即源操作数为32位的二进制数,则转换成的十进制数不要超出0-99999999范围,否则出错。,4.6 特殊功能指令,4.6.3 数制转换指令2.BIN变换BIN是十二进制转换指令。其指令操作数选用范围及梯形图如图所示,在其操作码之前加“D”表示其操作数为32位的二进制数,在其操作码之后加“P”表示当其控制线路由“断开”到“闭合”时才执行该指令操作。若源操作数不是BCD码,就会出错,M8067置“ON”

29、。常数K不能作为本指令的操作数据元件,因为在处理之前它会被转换成二进制数。,4.6 特殊功能指令,4.6.4 译码和编码指令 1译码指令DECODECO是译码指令。该指令操作数选用范围及梯形图如图所示,在其操作码之后加“P”表示当其控制线路由“断开”到“闭合”时才执行译码操作。如果目的操作数D.选用字软设备T、C或D,应使常数n4。常数n表明参与该指令的源操作数共有n位,目的操作数共有2n个位。执行译码操作后,即便控制线路断开,其译码的结果仍被保持不变,除非用RST指令将其复位。,4.6 特殊功能指令,4.6.4 译码和编码指令 2编码指令ENCOENCO是编码指令。该指令操作数选用范围及梯形

30、图如图所示,在其操作码之后加“P”表示当其控制线路由“断开”到“闭合”时才执行译码操作。如果目的操作数D.选用字软设备T、C或D,应使常数n4。常数n表明参与该指令的源操作数共有n位,目的操作数共有2n个位。执行编码操作后,即便控制线路断开,其编码的结果仍被保持不变,除非用RST指令将其复位。,4.6 特殊功能指令,4.6.5 脉冲输出指令PLSY PLSY是脉冲输出指令。该指令操作数选用范围及梯形图如图所示,在其操作码之前加“D”表示其操作数为32位的二进制数。源操作数S1表示输出脉外的频率,可选用范围为11000HZ。源操作数S2指定产生脉冲的个数,范围为:若操作数为16位的二进制数,则产

31、生的脉冲范围为1-32767个;若操作数为32份的二进制数,则产生的脉冲范围为12147483647个;若指定脉冲数为“0”,则产生无穷多个脉冲。指令执行过程中,源操作数S1冲的数据在执打过程中pJ以改变,源操作数S2中的数据改变则要本指令执行之后才生效。脉冲的占空比为50,以中断方式输出,与扫描周期无关。当指定脉冲数输出之后,完成标志M8029置”1“,PLSY指令从“闭合”到“断开”时,M8029复位到“o”。在下 图中,当常开触点xo断开时,不执行脉冲输出操作;当常开触点xo闭合时,程序执行到该梯形图时,立即以中断方式通过输出线圈Y0输出占空比为50的脉冲,且以1000HZ的频率输出,直

32、到脉冲数目达到源操作数s2所规定的数时才停止,同时将M8029置“1”。本指令只能使用一次,即X0每次从“闭合”到“断开”时才执行该指令。,4.6 特殊功能指令,4.6.6 专用计时器指令STMR STMR是专用计时器指令。该指令产生延时断开定时、单脉冲式定时和闪动定时等控制信号。该指令操作数选用范围及梯形图如图1所示,源操作数S.限制选用T0T199:目的操作数D.选用范围在图中表示的是首地址,紧跟其后还有三个位软设备,如Mo之后,还有MI、M2、M3组成4个目的操作数。常数m为132767,作为计时器的设定值。当扫描如下图所示梯形图时,在常开触点xo的控制下,目的操作数波形如图2所示。M0

33、为延时断开逻辑定时线圈;M1和 M2为单脉冲式逻辑定时线圈,当常开触点xo由“闭合”到“断开”时,M1产生一个脉宽为设定值的脉冲;当常开触点X0由“断开”到“闭合”时,M2产生个脉宽为设定值的脉冲;M3为延时接通和延时断开定时逻辑线圈。利用STMR指令产生闪动信号的梯形图如图3所示。M2和M1产生闪动信出。当X0关断时M0、M1、M3在经过设定时间关断,T10同时复位。,图1,图2,图3,4.6 特殊功能指令,4.6.7 高速计数器指令 高速计数器指令共有21个32位的高速计数器C235一C255,计数脉冲通过6个高速输入端X0X5输入。高速计数器采用中断方式进行计数,与扫描周期无关。1高速计

34、数器置位指令HSCSHSCS是高速计数器置位指令。该指令操作数选用范围及梯形图如图所示,在其操作码之前加“D”表示其操作数为32位的二进制数。在图中,当常开触点X10断开时,不执行HSCS操作:当常开触点X10闭合时,当高速计数器C255的当前值等于设定常数值K100,就将Y10立即置I。,4.6 特殊功能指令,4.6.7 高速计数器指令 2高速计数器复位指令HSCRHSCR是高速计数器复位指令。该指令操作数选用范围及梯形图如图所示,在其操作码之前加“D”表示其操作数为32位的二进制数。操作数除与HSCS指令相同外,目的操作数还可以选用与源操作数S2.相同的高速计数器。在图中,当常开触点X10

35、断开时,不执行HSCR操作:当常开触点X10闭合时,当高速计数器C255的当前值等于设定常数值K100,就将Y10立即置0。并且采用I/O立即刷新方式将Y10的输出切断。,4.6 特殊功能指令,4.6.7 高速计数器指令 3高速计数器区间比较指令HSZHSZ是高速计数器区间比较指令。该指令操作数选用范围及梯形图如图所示,在其操作码之前加“D”表示其操作数为32位的二进制数。目的操作数由三个伙软设备组成,梯形图中表明的是其首地址,另外两个位软设备紧随其后。图个86b中,目的操作数由辅助线圈M0、M1和M2组成。,3高速计数器区间比较指令HSZ HSZ是高速计数器区间比较指令。该指令操作数选用范围

36、及梯形图如图1所示,在其操作码之前加“D”表示其操作数为32位的二进制数。目的操作数由三个位软设备组成,梯形图中表明的是其首地址,另外两个位软设备紧随其后。在图中,目的操作数由辅助线圈M0、M1和M2组成。在图2中,当常开触点X10断开时,不执行HSZ操作;当常开触点X10闭合时,高速计数器C251投入计数操作,将C251的当前值与常数1000和1200构成的区间进行比较:若S1.S.,即图中1000C251的当前计数值,则将M0置1,线圈Y1接通;若S1 S.S2,即1000C251的当前计数值1200,则M1置1,Y4接通;若S.S2.,c251的当前计数值1200,则M2置1,线圈Y6接

37、通。此指令计数、比较、外部输出均以中断方式进行,并且其执行条件不仅肖要控制线路闭合,而且还必须在该高速计数器投入计数操作后才运行。,图1,图2,4.6.8 转速测量指令SPD,SPD是转速测量指令。指令操作数选用范围及梯形图如图所示源操作数S1.的选用范同为6个高速输入端X0一X5。源操作数S2.表示温量周期T,单位为ms。目的操作数D.由三个数据寄存器组成,梯形图中标明的是首地址,另外两个数据寄存器紧跟其后。在图中,个常开触点X10断开时,不执行测速操作:当常开触点X10闭合时,扫描梯形图,便开始转速测量的操作,目的操作数D.内存放正进行的测量周期内已经输入的脉冲数,D2内存放正进行着的测量

38、周期内还剩余的时间。当该测量周期的计时时间到,则将D1内的数据传送到D0中去,然后将D1清0,并且重新开始存放下一个测量周期内输入的脉冲数。D0中存放的数正比于转速,转速N可通过下式计算:N(60(D0)/nt)103;式中:n-脉冲数 t-测量周期(ms)注意:SPD指令的执行采用k中断方式进行,与扫描周期无关。,4.6.9 数据输入、输出指令,数据输入、输出指令包括十键数据输入指令、十六键数据输入指令、码盘数据输入指令、七段译码指令、BCD码显示指令和用带箭头的开关移位并修改该位数据指令等。本节只介绍十六键数据输入指令和七段译码指令。,1十六键输入数据指令HKY,该指令操作数选用范围及梯形

39、图如图所示,在其操作码之前加“D”表示生成8位BC码数099999999,大于的数溢出。梯形图中的源操作数S.,目的操作数D1和D3为各自的首地址,源操作数s.由4个开关量组成,分别为Xo、X1、X2和X3;目的操作数D1.也由4个开关量组成,分别为Y0、Y1、Y2和Y3。目的操作数D3.由8个位软设备组成,即逻辑线圈M0M7。,4.6.9 数据输入、输出指令,1十六键输入数据指令HKY,16个按钮开关与开关量输入端XO、X1、X2,开关量输出端Y0、Y1、Y2之间的接线如图所示。16个按钮中的前十个分别生成数字0一9,后6个按钮分别生成字母AF。当多个按钮同时按下时,最先按下的键有效。当控制

40、线路断开时,即X0“断开”不执行HKY指令操作;当控制线路闭合时,即X0“闭合”执行HKY指令操作;每执行一次HKY指令的操作,需要8个扫描周期,目的操作数D1.中的4个开关量输出依次产生脉宽为2个扫描周期的选通脓肿。为了保证在每个选通脉冲期间将按钮的状态读入,每个扫描周期必须大于10ms,4.6.9 数据输入、输出指令,2七段译码指令SEGD,SEGD是七段译码指令是显示十六进制数的指令,该指令操作数选用范围及梯形图如图所示,在其操作码之后加“P“,表示当其控制线路由“断开”到“闭合”时才执行该指令操作。在下图中,当常开触点X10断开时,不执行指令操作:当常开触点X10闭合时,每扫描一次梯形

41、图,就将数据寄存器D0中16位二进制数的低4位所表示的十六进制数译成驱动与输出端Y0Y7相连接的七段数码管的控制信号,其中Y7始终为0。见7段译码表。,功能指令的表示形式:Mean(P),S,D,n,使用PLS、PLF指令说明:,4)使用这两条指令时,要特别注意目标元件。,1)使用PLS指令,元件Y、M仅在驱动输入接通后的一个扫描周期内动作(置1)。,2)使用PLF指令,元件仅在驱动输入断开后的一个扫描周期内动作。,3)特殊继电器不能用作PLS或PLF的操作元件。,NOP指令的使用说明,图6-17 NOP指令的使用说明,遇到不可编程的梯形图时,可根据信号流对原梯形图重新编排,以便于正确应用PL

42、C基本指令来编程。,MC、MCR指令的使用说明之二,4.4.4 操作方式,1操作方式的分类设备的操作方式大致分为手动和自动两种方式。手动方式是用各自的按钮使各个负载单独接通或断开的方式,该方式下按动回原点按钮时,被控制的机械自动向原点回归。自动方式又分为单步运行、单周期运行和连续运行等形式。单步运行为按动一次启动按钮,动作前进一个工步或工序。单周期运行是在原点位置按动启动按钮,自动运行一遍再在原点停止:若在中途按动停止按钮就停止运行,再按动启动按钮,从断点处开始继续运 行,回到原点自动停止。连续运行:是在原点位置按动启动按钮,设备开始连续反复运行;若中途按动停止按钮,动作将继续到原点为止。一般

43、情况下。配合初始状态指令的编程,必须指定具有连续编号的输入点;如果无法指定连续编号,则要使用辅助继电器M,重新安排输入编号。连续编号的输入点:X20:手动工作方式 X24:连续运行 X21:回归原点 X25:回归点启动 X22:单步运行 X26:自动启动 X23:单周期运行停止 X27:停止,IST:初始状态指令。如图所示是该指令的梯形图和操作数选用的范围。梯形图中(1)表示输入的首元件号,由X20-X27组成:(2)表示自动状态下的最小状态号;(3)表示自动状态下的最大状态号。其中(2)、(3)的状态号S选用范围为S20S899,并且,最大状态号的地址必须大于最小状态号的地址。与该指令有关的

44、特殊逻辑线圈有8个,即M8040一M8047。其中当M8040为1时,禁止状态转移,当M8040为0时,允许状态转移;当M8040为1时,允许在自动工作方式下,从目的操作数D.所使用的最低位状态开始,进行状态转移,反之,则禁止转移;当输入端X26由“断开”到“闭合”时,M8042产生一个脉宽为一个扫描周期的脉冲;当M8043为1时,表示返回原点工作方式结束,允许进入自动工作方式,反之,则不允许进入自动工作方式;当M8047为1时,只要状态S0S999中任何一个状态为1,M8046就为1,同时,特殊数据寄存器D8040内的数表示S0S999中状态为1的最低的地址,D8041一D8047内的数依次代表其他各状态为1的地址,当M8047为0时,不论状态S0S999中有多少个1,M8046始终为0,D8040一D8047内的数不变。,初始状态指令,S.,

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

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


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号