9功能指令(一)

上传人:优*** 文档编号:240446845 上传时间:2024-04-11 格式:PPT 页数:47 大小:196KB
返回 下载 相关 举报
9功能指令(一)_第1页
第1页 / 共47页
9功能指令(一)_第2页
第2页 / 共47页
9功能指令(一)_第3页
第3页 / 共47页
点击查看更多>>
资源描述
功能指令FX2N系列PLC的功能指令概述2021/7/11PLC功能指令nPLC的功能指令实际上就是系统定义的许多功能不同的子程序,用户在使用这些功能指令时,相当于调用了对应的系统子程序。2021/7/12FX2N系列PLC功能指令分类程序流向控制数据传送与比较算术与逻辑运算数据移位与循环数据处理n高速处理n方便指令n外部设备通信n浮点运算n定位运算n时钟运算n触点比较2021/7/13功能指令格式n采用梯形图和指令助记符相结合形式。n当X0条件满足时,MOV指令执行。X0MOVK125D20nK125源操作数,D20目标操作数,X0执行条件2021/7/14功能指令一般规则n每一条功能指令有一个功能号和一个助记符,功能号按FNC00FNC299编排n有的功能指令只有操作码无操作数,而有的功能指令既有操作码又有操作数n每条功能指令占用一定的程序步数:功能号和助记符占一个程序步,操作数占2步(16位数)或4步(32位),当某条功能指令处理32位操作数时,前面加D表示,否则默认处理16位数据2021/7/15功能指令的操作数nS表示源操作数(其内容不随指令执行而变化的操作数标为源)n在使用变址寄存器时,表示为S.n多个操作数用S1、S2X1MEAND0D40K3SDn2021/7/16功能指令与操作数nD表示目标操作数(其内容随执行指令改变的操作数被称为目标)n在使用变址寄存器时,表示为D.n多个操作数用D1、D2X1MEAND0D40K3SDn2021/7/17功能指令与操作数nm,n表示其他操作数,常用于表示常数或表示S、D的补充说明。有多个时用m1、m2或n1、n2X1MEAND0D40K3SDn2021/7/18功能指令的执行方式n执行方式:连续执行、脉冲执行n在指令助记符号后加符号(P)表示脉冲执行方式X0MOV(P)K125D202021/7/19位元件和字元件n位元件:只处理ON/OFF状态的元件,如X、Y、M、Sn字元件:处理数据的元件,如T、C、D 如:数据寄存器D为16位,在处理32位数据时使用一 对数据寄存器的组合 将数据寄存器D0指定为32位指令的操作数时处理 (D1,D0)32位数据(D1为高16位,D0为低16位)2021/7/110位元件组合及数据处理方式n位元件通过组合使用也可处理数值,此时,以位数Kn和起始的元件号组合来表示n采用4位为单位,位数成为K1K4(16位数据),K1K8(32位数据)n例如K2M0表示由M7M0组成的8位数据,M0是低位,K4M10表示由M25 M10组成的16位数据,M10是最低位。2021/7/111位元件组合及数据处理方式n当一个16位数据传送到K1M0、K2M0、K3M0时只传送相应的低位数据,较高位不传送,32位数据的传送相同。n在做16位数据操作时,参与操作的位元件由K1K4指定,若仅有K1K3指定,不足部分的高位均作0处理,32位数据操作时相同。n被组合的位元件首元件习惯上用以0结尾元件,如K2X0,K4Y102021/7/112数据长度与指令执行方式n功能指令可以处理16位数据,也可以处理32位数据;n指令助记符前加(D)符号时,表示该指令处理32位数据n处理32位数据时,用元件号相邻的两个元件组成元件对。元件对的首地址用奇数、偶数均可,建议元件首地址统一用偶数2021/7/113数据长度与指令执行方式n当X0接通时,执行(D)MOV指令,将D21和D20的数据传送到D23和D22中去(处理32位数据)X0(D)MOVD20D222021/7/114变址寄存器V,Zn变址寄存器在传送、比较指令中用来修饰操作对象的元件号,其操作方式与普通寄存器一样n对32位指令,V作高16位,Z作低16位nLD,AND,OUT等PLC的基本逻辑指令和步 进梯形图指令不可变址修改2021/7/115变址寄存器V,Zn当各逻辑行分别满足时,K10送到V,K20送到Z,所以(V)、(Z)内容分别为10,20n当(D5V)(D15Z)D40Z,即 (D15)(D35)(D60)X1X2X3MOVK10VMOVK20ZADDD5VD15ZD40Z2021/7/116程序流向控制指令(FNC00-FNC09)nCJ (条件跳转)nCALL (子程序调用)nSRET (子程序返回)nIRET (中断返回)nEI、DI (中断允许与中断禁止、开中断与关中断)nFEND (主程序结束)nWDT (监控定时器刷新)nFOR、Next(循环开始和循环结束)2021/7/117CJ(Conditional Jump)n指令编号为FNC00,操作数为P0P63nCJ和CJ(P)指令用于跳过顺序程序中的某一部分,以减少扫描时间n两个执行条件不同的跳转指令可以使用相同的标号,但一个标号只允许出现一次n采用M8000作为跳转条件,则称为无条件跳转,因为PLC运行中M8000一直接通。2021/7/118CJ(Conditional Jump)X20CJP10X21Y10X22Y11标号标号P10X20CJP10X21标号标号P10CJP102021/7/119CJ(Conditional Jump)n对于T、C,如果跳转时定时器或计数器正发生动作,则此时立即中断计数或停止计时,直到跳转结束后继续进行计时或计数。但是,正在动作的定时器T192-T199(子程序控制定时器)与高速计数器C235-C255,不管有无跳转仍旧继续工作。n功能指令在跳转时不执行,但脉冲输出指令PLSY、脉宽调制输出PWM、带加减速脉冲输出PLSR,除外。2021/7/120子程序调用与子程序返回指令n子程序调用指令CALL(Sub Routine Call)的功能指令编号为FNC01,操作数为P0P62(不包括P63),占3个程序步,允许用变址寄存器修改。n子程序可以嵌套调用,最多嵌套5级n子程序返回指令SRET(Sub Routine Return)的功能指令编号为FNC02,无操作数2021/7/121子程序调用与子程序返回指令CALL子子程程序序X1CALL(P)P11FENDCALLP12SRET(1)SRET(2)标号标号P11标号标号P12X0CALLP10100104标号标号P10FENDSRET2021/7/122与中断有关的指令n中断返回指令IRET(Interruption Return)FNC03n允许中断指令EI(Interruption Enable)FNC04n禁止中断指令DI(Interruption Disable)FNC05n以上三条指令均无操作数,分别占用一个程序步nPLC通常处于禁止中断状态,而EI与DI指令之间的程序段为允许中断区间,当程序扫描到该区间并出现中断信号时,则停止执行主程序,转去执行相应的中断子程序,处理到中断返回指令IRET,返回原断点,继续执行主程序。2021/7/123与中断有关的指令EIX10M8050DIFENDX0IRETX1IRET允许中断范围允许中断范围中断服务程序(中断服务程序(1)中断服务程序(中断服务程序(2)I001I1012021/7/124程序结束指令(FEND)nFEND的功能指令编号为FNC06,无操作数,占用一个程序步nFEND表示主程序结束,执行到FEND指令时PLC进行输入输出处理、监控定时器刷新,完成后返回第0步n子程序(包括中断子程序)应放在FEND指令之后,END之前。2021/7/125程序结束指令(FEND)nCALL指令调用的子程序必须用SRET指令结束,中断子程序必须以IRET指令结束n若FEND指令在CALL指令执行之后和SRET指令执行之前(指在子程序中)出现,则程序出错n另一个类似的错误是FEND指令出现在FORNEXT循环之中。n使用多条FEND指令时,中断程序应放在最后的FEND指令和END指令之间2021/7/126程序结束指令(FEND)主主 程程 序序X10CJP20主主 程程 序序FEND主主 程程 序序FENDENDP20如如果果 X10=OFF如果如果 X10=ON2021/7/127程序结束指令(FEND)主主 程程 序序X11CALLP21主主 程程 序序FEND子子 程程 序序中断服务程序中断服务程序ENDP21如如果果 X11=OFFI100如如果果 X11=ON2021/7/128警戒时钟指令(WDT)nWDT的功能指令编号FNC07,无操作数,占用一个程序步,功能为警戒时钟刷新nFX2N系列PLC警戒定时器的设定值(一般为200ms)存放在专用数据寄存器D8000中n在不执行WDT情况下,每扫描到FEND时,刷新警戒定时器的计时值n当扫描周期超过警戒定时器设定值时,警戒定时器逻辑线圈被接通,PLC的CPU立即停止扫描用户程序,同时切断PLC的所有输出,并报警显示2021/7/129循环指令nFOR,FNC08,指令用来表示循环区的起点,它的源操作数用来表示循环次数N,可以取任意的数据格式。循环次数N132767,如N在327670之间,当作N1处理,循环可嵌套5层nNEXT是循环区终点指令,功能指令编号为FNC09,占用一个程序步,无操作数nFOR与NEXT之间的程序被反复执行,执行次数由FOR指令的源操作数设定。执行完后,执行NEXT后面的指令2021/7/130循环指令FORK4FORD10X10CJP20FORK1X0NEXTNEXTNEXTP20A(1)B(2)C(3)2021/7/131比较、传送、交换、变换指令n比较指令CMP(Compare)n区间比较ZCP(Zone Compare)n传送指令MOV(Move)n移位传送SMOV(Shift Move)n取反传送指令CML(Complement)n块传送指令BMOV(Block Move)n多点传送指令FMOV(Fill Move)n数据交换指令XCH(Exchange)nBCD变换指令(二进制数转换成BCD码并传送)nBIN变换指令(BCD码转换为二进制数并传送)2021/7/132比较指令CMPnFNC10,将源操作数S1和源操作数S2进行比较,结果送到目标操作数D中,比较结果有三种,大于、等于、小于n目标操作数D由3个软元件组成,梯形图中软元件标出的是首地址,另外两个软元件紧跟其后2021/7/133比较指令CMPX0CMPK100C20M0M0M1M2(C20)K100 M2=ON2021/7/134区间比较指令ZCPnFNC11,将一个数据与两个源数据进行比较n源操作数S1的数值不得大于S2的值n若S1的数值大于S2,例如S1K100,S2K90,ZCP指令执行时就把S2100来执行2021/7/135区间比较指令ZCPX0ZCPK100K120C30M3M3M4M5S1S2SDSS1S1=SS22021/7/136传送指令MOV(Move)nFNC12,传送指令将源数据传送到指定的目标操作数中X0MOVK100D10SD当X0闭合时,每扫描到MOV指令时,就把存于源操作数十进制数100(K100)转换成二进制数,再传送到目标操作数D10中;当X0断开时,不执行MOV指令,数据保持不变2021/7/137移位传送SMOV(Shift Move)nFNC13源数据(二进制数)被转换成4位BCD码,然后将它移位传送X10SMOVD1K4K2D2K3Sm1m2DnX10满足条件时,源操作数S内的16位二进制数自动转换成4位BCD码,然后将自源操作数(4位BCD码)右起第m1位开始,向右数共m2位的数,传送到目的操作数(4位BCD码)的右起第n位开始,向右数共m2位上去,最后自动将目的操作数D中的四位BCD码转换成16位二进制数2021/7/138移位传送SMOV(Shift Move)M8000FNC19 BINK2X20D2FNC19 BINK2X40D1FNC13SMOVD1K2K2D2K42021/7/139取反传送指令CML(Complement)nFNC14,将源元件中的数据逐位取反(1 0,0 1)并传送到指定目标。n若源数据为常数K,该数据会自动转换为二进制数,CML用于PLC反逻辑输出时非常方便X0CMLD0K1Y0SD2021/7/140块传送指令BMOV(Block Move)nFNC15,将源操作数指定的元件开始的n个数据组成的数据块传送到指定的目标。如果元件符合超出允许的范围,数据仅仅传送到允许的范围。n若用到指定位数的位元件,则源和目标的指定位数必须相同。2021/7/141块传送指令BMOV(Block Move)BMOVX0D5D10K3SDnD5D6D7D10D11D12n3BMOVX1D20D15K3SDnD20D21D22D15D16D17n32021/7/142多点传送指令FMOV(Fill Move)nFNC16,将源元件中的数据传送到指定目标开始的n个元件中,传送后n个元件中的数据完全相同n如果元件号超出允许的范围,数据仅仅送到允许的范围中X0FMOVK0D0K102021/7/143数据交换指令XCH(Exchange)nFNC17,执行数据交换指令时,数据在指定的目标元件之间交换,交换指令一般采用脉冲执行方式,否则在每一个扫描周期都要交换一次X0XCHD1D17D1D2指令执行前,目标元件(D1)20,(D17)530;当X0=ON时,执行指令,目标元件D1和D17中的数据进行交换,即(D1)=530,(D17)202021/7/144BCD变换指令nFNC18,该指令将源元件中的二进制数转换为BCD码并送到目标元件中。n如果BCD指令执行的结果超过09999的范围,将会出错X0BCDD12K2Y0SD2021/7/145BIN变换指令nFNC19,将源元件中的BCD码转换成二进制数据送到目标元件中X0BIND12K2Y0SD2021/7/146 结束语结束语若有不当之处,请指正,谢谢!若有不当之处,请指正,谢谢!
展开阅读全文
相关资源
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!