第五章PLC 的功能指令

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

•第五章S7-200系列PLC的功能指令第五章S7-200系列PLC的功能指令•5.1运算和数学指令•5.2传送、移位和填充指令•5.3表功能指令•5.4转换指令•5.5中断•5.6PID回路指令•5.7时钟指令•5.8高速处理类指令•第五章S7-200系列PLC的功能指令5.1运算和数学指令•5.1.1加法指令(ADD)•5.1.2减法指令SUBTRACT)•5.1.3乘法指令•5.1.4除法指令•5.1.5自增/自减指令•5.1.6数学函数指令•5.1.7逻辑运算指令返回本章首页•第五章S7-200系列PLC的功能指令5.1.1加法指令(ADD)•加法指令(ADD)是对有符号数进行相加操作。•加法指令把两个输入端(IN1、IN2)指定的数相加,结果送到输出端(OUT)指定的存储单元中,包括整数加法、双整数加法和实数加法。它们对应的操作数数据类型分别是有符号整数(INT)、有符号双整数(DINT)和实数(REAL)。如图5-1所示。返回本节•第五章S7-200系列PLC的功能指令5.1.2减法指令(SUBTRACT)•减法指令(Subtract)是对有符号数进行相减操作。减法指令把两个输入端(IN1、IN2)指定的数相减,结果送到输出端(OUT)指定的存储单元中去。它可以分为整数、双整数、实数减法指令。它们各自对应的操作数分别是有符号整数(INT)、有符号双整数(DINT)和实数(REAL)。如图5-2所示。•第五章S7-200系列PLC的功能指令5.1.3乘法指令•1.一般乘法指令(Multiply)•一般乘法指令是对有符号数进行相乘运算,它包括整数乘法、双整数乘法和实数乘法。他们各自对应的操作数分别是有符号整数(INT)、有符号双整数(DINT)和实数(REAL)。如图5-3(a)所示(图中处可为I、DI或R)。•2.完全整数乘法(MultiplyIntegertoDoubleInteger)•完全整数乘法是将两个单字长(16位)的符号整数IN1和IN2相乘,产生一个32位双整数乘积,并送到输出端(OUT)指定的存储单元中去。如图5-3(b)所示。•第五章S7-200系列PLC的功能指令5.1.4除法指令•1.一般除法指令(Divide)•一般除法指令是对有符号数进行相除操作。一般除法指令将两个输入端(IN1、IN2)指定的数相除,结果送到输出端(OUT)指定的存储单元中去。如图5-4(a)所示(图中处可为I、DI或R)。•2.完全除法指令(DivideIntegertoDoubleInteger)•完全除法指令将两个16位的符号整数相除,产生一个32位的结果,其中,低16位为商,高16位为余数。完全除法指令输入数据类型为INT,输出数据类型为DINT。如图5-4(b)所示。•第五章S7-200系列PLC的功能指令5.1.5自增/自减指令•1.自增指令(Increment)•自增指令包括字节自增、字自增和双字自增指令。字节自增指令输入输出均为字节,字自增指令输入输出均为INT,双字自增指令输入输出均为DINT。如图5-6(a)所示(图中处可为B、W、DW)。•2.自减指令(Decrement)•自减指令包括字节自减、字自减和双字自减指令。字节自减指令输入输出均为字节,字自减指令输入输出均为INT,双字自减指令输入输出均为DINT。如图5-6(b)所示(图中处可为B、W、DW)。•第五章S7-200系列PLC的功能指令5.1.6数学函数指令•1.平方根(SquareRoot)指令•实数的开方指令(SQRT),把输入端(IN)的32位实数开方,得到32位实数结果,并把结果存放到输出端(OUT)指定的存储单元中去。•2.自然对数(NaturalLogarithm)指令•自然对数指令(LN),将输入端(IN)的32位实数取自然对数,结果存放到输出端(OUT)指定的存储单元中去。•求常数对数(lgx,即以10为底的对数)时,只要将其自然对数(lnx)除以2.302585即可。•3.自然指数(NaturalExponential)指令•自然指数指令(EXP),将输入端(IN)的32位实数取以e为底的指数,结果存放到输出端(OUT)指定的存储单元中去。•4.正弦(sine)、余弦(cosine)和正切(tan)指令•第五章S7-200系列PLC的功能指令5.1.6数学函数指令数学函数指令•第五章S7-200系列PLC的功能指令5.1.7逻辑运算指令•1.逻辑“与”运算指令(LogicAnd)•2.逻辑“或”运算指令(LogicOr)•3.逻辑“异或”运算指令(LogicExclusiveOr)•4.取反指令(LogicInvert)•第五章S7-200系列PLC的功能指令5.2传送、移位和填充指令•5.1.1传送指令•5.2.2移位和循环移位指令•第五章S7-200系列PLC的功能指令5.1.1传送指令•1.数据传送指令(Move)•数据传输指令把输入(IN)指定的数据传送到输出(OUT),传送过程中数据值保持不变。数据传诵指令按操作数的数据类型可以分为字节传送(MOVB)、字传送(MOVW)、双字传送(MOVD)和实数传送指(MOVR)指令,如图5-10所示。•第五章S7-200系列PLC的功能指令5.1.1传送指令•2.数据块传送指令(BlockMove)•数据块传送指令把从输入(IN)指定地址的N个连续字节、字、双字的内容传送到从输出(OUT)指定地址开始的N个连续字节、字、双字的存储单元中去。传送过程中个存储单元的内容不变。N的数据范围为1~255。数据块传送指令按操作数的数据类型可以分为字节块传送(BMB)、字块传送(BMW)和双字块传送(BMD)指令,如图5-11所示。•第五章S7-200系列PLC的功能指令•3.传送字节立即读、写指令(MoveByImmediate)•传送字节立即读(BIR)指令,读取输入端(IN)指定字节地址的物理输入点(IB)的值,并写入输出端(OUT)指定字节地址的存储单元中。•传送字节立即写(BIW)指令,读取输入端(IN)指定字节地址的内容写入输出端(OUT)指定字节地址的物理输出点(QB)。•传送字节立即读、写指令如图5-13所示。传送字节立即读、写指令操作数数据类型为字节型(BYTE)。•第五章S7-200系列PLC的功能指令•4.字节交换指令(SwapBytes)•字节交换(SwapBytes)指令,把输入(IN)指定字的高字节内容与低字节内容互相交换。交换结果仍存放在输入(IN)指定的地址中。交换字节指令如图5-14所示。操作数数据类型为无符号整数型(WORD)。•第五章S7-200系列PLC的功能指令5.2.2移位和循环移位指令•1.移位指令(Shift)•(1)右移指令•右移位指令把输入端(IN)指定的数据右移N位,结果存入OUT。右移位指令按操作数的数据类型可以分为字节、字、双字右移位指令。如图5-16所示。•(2)左移指令•左移位指令把输入端(IN)指定的数据左移N位,结果存入OUT。左移位指令按操作数的数据类型可以分为字节、字、双字左移位指令。如图5-17所示。•第五章S7-200系列PLC的功能指令5.2.2移位和循环移位指令•2.循环移位指令(Rotate)•(1)循环右移指令•循环右移指令把输入端(IN)指定的数据循环右移N位,结果存入OUT。•循环右移指令按操作数的数据类型可以分为字节、字、双字循环右移指令。如图5-18所示。•(2)循环左移指令•循环左移指令把输入端(IN)指定的数据循环左移N位,结果存入OUT。•循环左移指令按操作数的数据类型可以分为字节、字、双字循环左移指令。如图5-19所示。•第五章S7-200系列PLC的功能指令5.2.2移位和循环移位指令•3.寄存器移位指令(ShiftRegister)•寄存器移位指令在梯形图中有3个数据输入端(如图5-20所示),即DATA为数据输入,将该位的值移入移位寄存器;S_BIT为移位寄存器的最低位端;N指定移位寄存器的长度。每次能使输入有效时,在每个扫描周期内,整个移位寄存器移动一位。所以要用边沿跳变指令来控制使能端的状态,不然该指令就失去了应用的意义。•第五章S7-200系列PLC的功能指令5.3表功能指令•5.3.1填表、查表指令•5.3.2表取数指令•5.3.3存储器填充指令•第五章S7-200系列PLC的功能指令5.3.1填表、查表指令•1.填表指令•填表指令(ATT),向表(TBL)中填入一个字值(DATA)。TBL指明表格的首地址,表中的第一个数是最大填表数(TL),第二个数是实际填表数(EC),指出已填入表的数据个数。新的数据填加在表的末尾。每向表中填加一个新的数据,EC会自动增加1。最多可向表中填入100个数据。DATA数据类型是INT型,TBL为WORD型。填表指令格式如图5-21(a)所示•2.查表指令•查表指令(FIND)从INDX开始搜索表(TBL),寻找满足查找条件的数据。TBL指明被访问表格的首地址;PTN端用来描述查表时进行比较的数据;命令参数CMD表明查找条件,它是一个1~4的数值,分别代表=、〈〉、〈、〉符号,INDX用来指定表中符合查找条件的数据的编号。如图5-22(b)所示。图5-21(a)填表指令(b)查表指令•第五章S7-200系列PLC的功能指令5.3.2表取数指令•1.先进先出指令•先进先出指令(FIFO),从表(TBL)中移走第一个数据(最先进入表中的数据),并将此数输出到DATA。剩余数据依次上移一个位置。每执行一次指令,表中的实际填表数(EC)减1。图5-23(a)为先进先出指令格式图•2.后进先出指令•后进先出(LIFO)指令从表(TBL)中移走最后一个数据(最后进入表中的数据),并将此数输出到DATA。每执行一次指令,表中的实际填表数(EC)减1,如图5-23(b)所示。•第五章S7-200系列PLC的功能指令5.3.3存储器填充指令•存储器填充(FILL)指令用输入值(IN)填充从输出(OUT)开始的N个字的内容,N为1~255。•指令操作数IN、OUT为WORD型数据,N为BYTE型数据。如图5-25为FILL指令在实际中的应用。•第五章S7-200系列PLC的功能指令5.4转换指令•5.4.1数据转换指令•5.4.2编码和译码指令•5.4.3段码指令(SEG)•5.4.4ASCII码转换指令•第五章S7-200系列PLC的功能指令5.4.1数据转换指令•1.BCD码与整数的转换•2.双字整数与实数的转换•3.双整数与整数之间的转换•4.字节与整数的转换•第五章S7-200系列PLC的功能指令5.4.2编码和译码指令•1.编码指令(Encode)•编码指令将字型输入数据(IN)的最低有效位(值为1的位)的位号输出到OUT所指定的字节单元的低4位,即用半个字节来对一个字型数据16位中的“1”位有效位进行编码。输入数据类型为字,输出的数据类型为字节。其指令格式如图5-30(a)所示。•2.译码指令(Decode)•译码指令将字节型输入数据IN的低4位所表达的位号对OUT所指定的字单元的对应位置1,其他位置0。即对半个字节的编码进行译码,以选择一个字型数据16位中的“1”位。输入的数据类型为字节,输出数据类型为字。起指令格式如图5-30(b)所示。•第五章S7-200系列PLC的功能指令5.4.3段码指令(SEG)•段码指令(SEG),把输入字节(IN)低4位的有效值(16#0~F)转换成七段显示码,送入OUT单元。如图5-31所示。•第五章S7-200系列PLC的功能指令5.4.4ASCII码转换指令•1.ASCII码与十六进制数的转换指令•2.整数转化为ASCII码指令(IntegertoASCII)•3.双整数转换成ASCII码(DoubleIntegertoASCII)•4.实数转化为ASCII码(RealtoASCII)•第五章S7-200系列PLC的功能指令5.5中断•5.5.1中断的分类及中断优先级•5.5.2中断指令•5.5

1 / 72
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功