《电气控制与PLC》S指令系统.ppt_第1页
《电气控制与PLC》S指令系统.ppt_第2页
《电气控制与PLC》S指令系统.ppt_第3页
《电气控制与PLC》S指令系统.ppt_第4页
《电气控制与PLC》S指令系统.ppt_第5页
已阅读5页,还剩70页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第八章S7-200系列PLC,基本功能指令及应用,2019/12/4,1,第一节功能指令的分类及用途,用途:用于数据的传输、运算、变换、程序控制及通讯等功能。分类:数据处理类、程序控制类、特种功能类及外部设备类。,2019/12/4,2,第二节功能指令的表达形式及使用要素,表达形式:梯形图功能框语句表助记符1、功能框及指令的标题,2019/12/4,3,2、语句表达格式由两部分组成:指令的功能、数据地址或数据如:IIN1,IN2/整数加法IIN1,IN2/整数减法MOVBIN,OUT/字节传送DIN1,OUT/双整数乘/DIN2,OUT/双整数除,功能,操作数,2019/12/4,4,3、操作数类型及长度源操作数:指令执行后不改变其内容。目标操作数:指令执行后改变其内容。长度:字节(B)、字(W)、双字(DW)。4、指令的执行条件及执行形式“能流”EN(可分为连续执行和脉冲执行)5、指令功能及ENO状态“能流”正常传递ENO为1,出错为06、指令执行结果对特殊标志位的影响如溢出、负值等。7、指令的机型适用范围不同机型可适用的指令不尽相同。,2019/12/4,5,第三节S7-200系列PLC基本功能指令,一、传送指令数据传送指令字节、字、双字、实数传送指令,在不改变原值的情况下将(IN)中的值传送到OUT中。使ENO=0的错误条件:0006(间接寻址)。,LAD,STL,2019/12/4,6,有效操作数:,2019/12/4,7,传送字节立即读、写指令,传送字节立即写(BIW)指令,将从输入端(IN)指定字节地址的内容写入输出端(OUT)指定字节地址的物理输出点(QB)。,传送字节立即读(BIR)指令,读取输入端(IN)指定字节地址的物理输入点(IB)的值,并写入输出端(OUT)指定字节地址的存储单元中。,传送字节立即读,传送字节立即写,STL,LAD,2019/12/4,8,数据块传送指令,数据块传送指令把从输入(IN)指定地址的(N)个连续字节、字、双字的内容传送到从输出(OUT)指定地址开始的N个连续字节、字、双字的存储单元中去。,MOVBIN,OUT,N,MOVWIN,OUT,N,MOVDWIN,OUT,N,字节,字,双字,有效操作数:,2019/12/4,9,举例:数据块传送指令,2019/12/4,10,二、比较指令比较指令含数值比较指令及字符串比较指令,数值比较指令用于比较两个数值,字符串比较指令用于比较两个字符串的ASC码字符。比较指令在程序中主要用于建立控制节点。本节仅说明数值比较指令。数值比较含IN1IN2,IN1IN2,IN1IN2,1N1IN2等6种情况。,2019/12/4,11,被比较的数据可以是字节、整数、双字及实数。其中,字节比较是无符号的,整数、双字、实数的比较是有符号的。比较指令以触点形式出现在梯形图及指令表中,因而有“LD、“A”、“O”三种基本形式。对于LAD,当比较结果为真时,指令使能点接通;对于STL,比较结果为真时,将栈顶值置1。比较指令为上下限控制及事件的比较判断提供了极大的方便。,2019/12/4,12,数值比较指令的表达形式及操作数,2019/12/4,13,举例:,2019/12/4,14,三、数字运算类指令数字运算指令是运算功能的主体指令,含四则运算指令、数学功能指令及递增、递减指令。四则运算含整数、双整数、实数四则运算,一般说来,源操作数与目标操作数具有一致性,但也有整数运算产生双整数的指令。数学功能指令指三角函数、对数及指数、平方根等指令。运算类指令与存储器及标志位的关系密切,使用时需注意。,2019/12/4,15,(一)四则运算指令1、整数四则运算指令使两个16位整数(IN1、IN2)运算后产生一个16位结果存入(OUT)中。且不保留余数。,整数加法、减法、乘法、除法操作数:,LAD,STL,2019/12/4,16,整数运算指令举例:,/AC1和AC0中的数据相加,和置于AC0中/AC1和VW100中的数据相乘,积置于VW100中/VW200中的数据为被除数,VW10中的数据为除数,商置于VW200中,2019/12/4,17,2、双整数四则运算指令使两个32位整数(IN1、IN2)运算后产生一个32位结果存入(OUT)中。且不保留余数。,双整数加法、减法、乘法、除法操作数:,2019/12/4,18,3、实数四则运算指令使两个32位整数(IN1、IN2)运算后产生一个32位结果存入(OUT)中。,实数加法、减法、乘法、除法操作数:,2019/12/4,19,实数运算指令举例:,/AC1和AC0中的数据相加,和置于AC0中/AC1和VD100中的数据相乘,积置于VD100中/VD200中的数据为被除数,VD10中的数据为除数,商置于VD200中,2019/12/4,20,4、整数乘法产生双整数(完全乘法)和带余数的整数除法指令整数乘法产生双整数指令将两个16位整数相乘,得到32位结果存入(OUT)中。带余数的整数除法指令将两个16位整数相除,得到32位结果存入(OUT)中。其中高16位为余数,低16位为商。,整数完全乘法、除法操作数:,LAD,STL,2019/12/4,21,整数乘法产生双整数和带余数的整数除法指令举例,2019/12/4,22,执行加法指令操作时,将操作数IN2与OUT共用一个地址单元:LAD:IN1+IN2=OUTSTL:IN1+OUT=OUT执行减法指令操作时,将操作数IN1与OUT共用一个地址单元:LAD:IN1IN2=OUTSTL:OUTIN2=OUT执行乘法指令操作时,将操作数IN2与OUT共用一个地址单元:LAD:IN1IN2=OUTSTL:IN1OUT=OUT执行除法指令操作时,将操作数IN1与OUT共用一个地址单元:LAD:IN1/IN2=OUTSTL:OUT/IN2=OUT,注意:,2019/12/4,23,(二)数学功能指令,SIN正弦COS余弦TAN正切LN自然对数EXP自然指数SQRT平方根,LAD,STL,操作数,2019/12/4,24,正弦、余弦、正切指令使输入端(IN)指定的32位实数的弧度值取正弦、余弦、正切,结果存入(OUT)中。自然对数指令(LN)将输入端(IN)的32位实数取自然对数,结果存入(OUT)中。求常用对数(x)时,只要将对应的自然对数(x)除以2.302585即可。自然指数指令(EXP)将输入端(IN)的32位实数取以e为底的指数,结果存入(OUT)中。自然指数指令与自然对数指令配合,即可完成以任意实数为底的指数运算。如:53=EXP(35)=125=EXP(5/3)=5实数的开方指令(SQRT)将输入端(IN)的32位实数开方,得到32位实数结果并存入(OUT)中。,2019/12/4,25,(三)递增、递减指令也称加1、减1指令,DECWOUT,DECW,EN,OUT,ENO,IN,INCDOUT,INCDW,EN,OUT,ENO,IN,DECDOUT,DECDW,EN,OUT,ENO,IN,LAD,STL,字减1,双字减1,双字加1,2019/12/4,26,操作数:,举例:,2019/12/4,27,四、逻辑操作指令逻辑操作指令适用于数据对应位间的逻辑操作,含与、或、异或及取反指令。(一)字节、字和双字取反指令将输入(IN)取反的结果存入(OUT)中。,2019/12/4,28,操作数:,举例:,2019/12/4,29,(二)与、或、异或指令1、字节的与、或、异或指令将两个输入字节(IN1,IN2)按位与、或、异或,得到的字节结果存入(OUT)中。,ANDBIN1,IN2,WANDB,EN,OUT,ENO,IN2,WORB,EN,OUT,ENO,IN2,WXORB,EN,OUT,ENO,IN2,字节与,字节或,字节异或,IN1,IN1,IN1,ORBIN1,IN2,XORBIN1,IN2,LAD,STL,2019/12/4,30,2、字的与、或、异或指令将两个输入字(IN1,IN2)按位与、或、异或,得到的字结果存入(OUT)中。,ANDWIN1,IN2,WANDW,EN,OUT,ENO,IN2,WORW,EN,OUT,ENO,IN2,WXORW,EN,OUT,ENO,IN2,字与,字或,字异或,IN1,IN1,IN1,ORWIN1,IN2,XORWIN1,IN2,LAD,STL,2019/12/4,31,3、双字的与、或、异或指令将两个输入双字(IN1,IN2)按位与、或、异或,得到的双字结果存入(OUT)中。,ANDDIN1,IN2,WANDDW,EN,OUT,ENO,IN2,WORDW,EN,OUT,ENO,IN2,WXORDW,EN,OUT,ENO,IN2,双字与,双字或,双字异或,IN1,IN1,IN1,ORDIN1,IN2,XORDIN1,IN2,LAD,STL,2019/12/4,32,操作数:,2019/12/4,33,举例:,2019/12/4,34,五、移位与循环移位指令包括移位、循环移位、移位寄存器及字节交换等指令。此类指令在程序中可方便地实现某些运算,如乘2及除2等。1、字节、字、双字左移和右移指令,SRBOUT,N,EN,OUT,ENO,N,SHLB,EN,OUT,ENO,N,字节右移,字节左移,IN,IN,SLBOUT,N,LAD,STL,SHRB,把输入端(IN)指定的数据字节右移或左移N位,结果存入OUT单元。,2019/12/4,35,SRWOUT,N,EN,OUT,ENO,N,SHLW,EN,OUT,ENO,N,字右移,字左移,IN,IN,SLWOUT,N,LAD,STL,SHRW,把输入端(IN)指定的数据字右移或左移N位,结果存入OUT单元。,2019/12/4,36,SRDOUT,N,EN,OUT,ENO,N,SHLDW,EN,OUT,ENO,N,双字右移,双字左移,IN,IN,SLDOUT,N,LAD,STL,SHRDW,把输入端(IN)指定的数据双字右移或左移N位,结果存入OUT单元。,2019/12/4,37,2、字节、字、双字循环移位指令,RRBOUT,N,EN,OUT,ENO,N,ROLB,EN,OUT,ENO,N,字节循环右移,IN,IN,RLBOUT,N,LAD,STL,RORB,把输入端(IN)指定的数据字节循环右移或循环左移N位,结果存入OUT单元。,字节循环左移,2019/12/4,38,RRWOUT,N,EN,OUT,ENO,N,ROLW,EN,OUT,ENO,N,字循环右移,IN,IN,RLWOUT,N,LAD,STL,RORW,把输入端(IN)指定的数据字循环右移或循环左移N位,结果存入OUT单元。,字循环左移,2019/12/4,39,RRDOUT,N,EN,OUT,ENO,N,ROLDW,EN,OUT,ENO,N,双字循环右移,IN,IN,RLDOUT,N,LAD,STL,RORDW,把输入端(IN)指定的数据双字循环右移或循环左移N位,结果存入OUT单元。,双字循环左移,2019/12/4,40,操作数:,2019/12/4,41,举例:,2019/12/4,42,3、移位寄存器指令和字节交换指令,移位寄存器指令(SHRB)把输入端DATA的数值移入移位寄存器,而该移位寄存器是有S-BIT和N决定的。S-BIT指定最低位N指定移位寄存器的长度和移位的方向(正向N,反向N).,SHRBDATA,S-BIT,N,EN,OUT,ENO,N,SWAP,EN,OUT,ENO,移位寄存器,DATA,IN,SWAPIN,LAD,STL,SHRB,字节交换,S-BIT,字节交换指令将输入字的高字节与低字节交换,2019/12/4,43,移位寄存器的操作数:,2019/12/4,44,字节交换操作数:,2019/12/4,45,六、表指令表指令是存储器指定区域中数据的管理指令。可以指定一个不大于100个字的数据区,可以依次向该数据区内填入数据,也可以依次取出数据,还可以在数据区内查找符合一定条件的数据,进而对表内的数据进行统计、排序、比较等处理。表指令含填表、查表、先进先出和后进先出及存储器填充指令,存储器填充指令常见于程序初始化。1、填表指令填表指令(ATT)可以向表(TBL)中填入一个数值(DATA),表中第一个数是最大填表数(TL),第二个数是实际填表数(EC),指已填入表的数据的个数。新填入的数据加在表中的上一个数据的后边。每向表中填加一个新数据(EC)会自动加1。,2019/12/4,46,ATTDATA,TBL,EN,OUT,ENO,TBL,表指令,DATA,LAD,STL,ADTTBL,表指令操作数:,2019/12/4,47,表指令举例:,2019/12/4,48,2、先进先出、后进先出指令先进先出(FIFO)指令从表(TBL)中移走第一个数据,并将此数据输出到DATA。剩余数据依次上移一个位置。后进先出(LIFO)指令从表中移走最后一个数据,并将此数据输出到DATA。每执行一次指令,表中的实际填表数(EC)减1。,FIFOTBL,DATA,EN,DATA,ENO,TBL,LIFO,EN,DATA,ENO,先进先出,TBL,LIFOTBL,DATA,LAD,STL,FIFO,后进先出,2019/12/4,49,先进先出、后进先出指令操作数:,2019/12/4,50,后进先出指令举例:,2019/12/4,51,3、查表指令,FND=TBL,PTN,INDX,EN,ENO,CMD,查表指令,TBLFIND,TBL,PTN,INDX,FNDTBL,PTN,INDX,FNDTBL,PTN,INDX,2019/12/4,52,查表指令操作数:,2019/12/4,53,查表指令举例:,2019/12/4,54,4、存储器填充指令,FILLIN,OUT,N,EN,OUT,ENO,N,存储器填充指令,IN,FILLN,存储器填充指令(FILL)用输入值(IN)填充从输出(OUT)开始的N个字的内容。N可取1255之间的整数。,操作数:,2019/12/4,55,举例:,2019/12/4,56,七、转换指令1、标准转换指令其中,四舍五入指令及取整指令用于实数向整数的转换,段码指令用于数据转换为七段码显示器所需的编码方式的场合。字节整数指令是将输入字节值转换成整数,存入OUT指定单元中,字节是无符号的,无需符号扩展位。整数字节指令是将输入整数值转换成字节,存入OUT指定单元中,只有0到255中的值被转换,其他值会溢出。,BTIIN,OUT,EN,OUT,ENO,IN,IB,EN,OUT,ENO,字节整数,IN,ITBIN,OUT,LAD,STL,BI,整数字节,2019/12/4,57,ITDIN,OUT,EN,OUT,ENO,IN,DII,EN,OUT,ENO,整数双整数,IN,DTIIN,OUT,LAD,STL,IDI,双整数整数,整数双整数指令是将输入整数值转换成双整数,存入OUT指定单元中,符号扩展到高字节中。双整数整数指令是将输入端(IN)的有符号双整数转换成整数,并存入OUT。被转换的输入值应是有效的双整数,否则溢出位(SM1.1)被置位。,2019/12/4,58,双字整数转为实数(DTR)指令:将输入端(IN)指定的32位有符号整数转换成32位实数,存入OUT指定的存储单元中。BCD码转为整数(BCDI)指令,将输入端(IN)指定的BCD码转换成整数,并将结果存放到输出端(OUT)指定的存储单元中去。输入数据的范围是0到9999(BCD码)。整数转为BCD码(IBCD)指令,将输入端(IN)指定的整数转换成BCD码,并将结果存放到输出端(OUT)指定的存储单元中去。输入数据的范围是0到9999。,2019/12/4,59,TRUNCIN,OUT,EN,OUT,ENO,IN,ROUND,EN,OUT,ENO,四舍五入指令,IN,ROUNDIN,OUT,LAD,STL,TRUNC,取整指令,SEG,EN,OUT,ENO,IN,SEGIN,OUT,段码指令,实数转为双字整数指令可分为四舍五入取整(ROUND)和舍去尾数后取整(TRUNC)指令。ROUND取整指令,转换时实数的小数部分四舍五入。TRUNC取整指令,实数舍去小数部分后,转换成32位有符号整数。段码指令点亮七段码显示器中的段,将IN中指定的字符转换生成一个点阵存入OUT.,2019/12/4,60,有效操作数:,欲将整数转换为实数,可先用ITD指令把整数转换为双整数,然后再用DTR指令把双整数转换为实数。,2019/12/4,61,标准转换指令举例:,101,C10,英寸,2019/12/4,62,七段显示器编码,段码指令编程举例,2019/12/4,63,2、编码和解(译)码指令编码指令将输入字(IN)的最低有效位的号写入输出字节(OUT)的低四位。解码指令依据输入字节(IN)的低四位所表示的位号置输出字(OUT)的相应位为1,其他清0。,ENCOIN,OUT,EN,OUT,ENO,IN,DECO,EN,OUT,ENO,编码指令,IN,DECOIN,OUT,LAD,STL,ENCO,解码指令,2019/12/4,64,编码、解码指令有效操作数:,编码、解码指令举例:,2019/12/4,65,八、时钟指令CPU214以上具有内置时钟,可以使用写时钟指令指定从T开始的8个字节分别存储年、月、日、时、分、秒、空及星期数据而建定时钟,并可用读时钟指令将时间读出,用于时间控制。日期及时间值采用BCD码格式。,TODRT,EN,ENO,T,SETRTC,EN,ENO,读实时时钟指令,T,TODWT,LAD,STL,READRTC,设置(写)实时时钟指令,2019/12/4,66,时钟指令有效操作数:,时钟的格式:,2019/12/4,67,第四节功能指令的编程思路及应用实例功能指令主要用于数字运算及处理,完成运算、比较、数据的生成、存储及某些控

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论