版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、第第6章章 S7-200 PLC的指令系统的指令系统 6.1概述概述6.2 基本逻辑指令基本逻辑指令6.3定时器与计数器指定时器与计数器指令令 6.4数据处理指令数据处理指令6.5 数学运算指令数学运算指令6.6 程序控制指令程序控制指令6.7 子程序指令子程序指令6.8 PID操作指令操作指令6.1 概述概述 PLC指令分类的方法很多,按功能即指令能处理指令分类的方法很多,按功能即指令能处理的任务可分为:的任务可分为: (1)基本逻辑类指令)基本逻辑类指令 (2)定时、计数类指令)定时、计数类指令 (3)数据处理类指令)数据处理类指令 (4)流程控制类指令)流程控制类指令 (5)监控类指令)
2、监控类指令 (6)处理)处理I/O类指令类指令 (7)通信类指令)通信类指令 (8)内存管理指令)内存管理指令6.2 基本逻辑指令基本逻辑指令 对一个二进制数(对一个二进制数(bit、位)进行、位)进行“与、或、与、或、非非”逻辑操作,用来完成基本的位逻辑运逻辑操作,用来完成基本的位逻辑运算及控制,实现继电触点串、并联的控制算及控制,实现继电触点串、并联的控制功能,称功能,称基本逻辑操作指令基本逻辑操作指令。 主要包括主要包括: 位逻辑运算指令、输入位逻辑运算指令、输入/输出指令、置位输出指令、置位/复复位指令、正位指令、正/负跳变指令、立即指令以及堆负跳变指令、立即指令以及堆栈操作指令等。栈
3、操作指令等。1装载指令装载指令 LD(Load):):把操作数把操作数Bit的内容送入栈顶,准备参加逻辑的内容送入栈顶,准备参加逻辑运算。在梯形图上,表示将常开触点与左逻辑母线相连,表示运算。在梯形图上,表示将常开触点与左逻辑母线相连,表示一个梯级的开始。常开触点在不带电时,触点是断开的,而带一个梯级的开始。常开触点在不带电时,触点是断开的,而带电时,触点是闭合的。电时,触点是闭合的。 LDN (Load Not):):取反装载指令,是操作数取反装载指令,是操作数Bit的内容先的内容先取反(代表常闭触点),再送入栈顶。在梯形图上,表示此常取反(代表常闭触点),再送入栈顶。在梯形图上,表示此常闭
4、触点与左逻辑母线相连。常闭触点在不带电时,触点是闭合闭触点与左逻辑母线相连。常闭触点在不带电时,触点是闭合的,而带电时,触点是断开的。的,而带电时,触点是断开的。 装载指令的LAD及STL的指令格式 LD LDN STL LADBitBitBitBit2与指令与指令 A(And):):把操作数的内容与栈顶中的内容相与,结果把操作数的内容与栈顶中的内容相与,结果送入栈顶,不可以作为一个梯级的开始。在梯形图上,表示送入栈顶,不可以作为一个梯级的开始。在梯形图上,表示将常开触点串联在支流上。将常开触点串联在支流上。 AN(And Not):):与非指令,是先取反(代表常闭触点),与非指令,是先取反(
5、代表常闭触点),然后再和栈顶中的内容作与运算。在梯形图上,表示将常闭然后再和栈顶中的内容作与运算。在梯形图上,表示将常闭触点串联在支流上。触点串联在支流上。A AN STLLADBitBitBitBit与/与非指令的LAD及STL的指令格式3或指令或指令 O(Or):):把操作数的内容与栈顶中的内容相或,结果送入把操作数的内容与栈顶中的内容相或,结果送入栈顶,不可以作为一个梯级的开始。在梯形图上,表示将常开栈顶,不可以作为一个梯级的开始。在梯形图上,表示将常开触点并联在支流上。触点并联在支流上。 ON(Or Not):):或非指令,是先取反(代表常闭触点),或非指令,是先取反(代表常闭触点),
6、然后再和栈顶中的内容作或运算,结果存入栈顶。在梯形图上,然后再和栈顶中的内容作或运算,结果存入栈顶。在梯形图上,表示将常闭触点并联在支流上。表示将常闭触点并联在支流上。O ON STLBitBitLADBitBit或/或非指令的LAD 及STL的指令格式4输出指令输出指令 =(OUT):):线圈驱动指令,驱动线圈的触点电路接通时,线圈驱动指令,驱动线圈的触点电路接通时, 线圈流过线圈流过“能流,指定位对应的映像寄存器为能流,指定位对应的映像寄存器为1,反之则为,反之则为0。执行。执行输出指令时,将栈顶值复制到对应的映像寄存器。输出类指令应放输出指令时,将栈顶值复制到对应的映像寄存器。输出类指令
7、应放在梯形图的最右边,变量为在梯形图的最右边,变量为BOOL型。型。一般情况下,输出以线圈的形式表示。一般情况下,输出以线圈的形式表示。Bit= STLLADBit输出指令的LAD及STL的指令格式位逻辑指令的应用示例位逻辑指令的应用示例网络 1网络 2I0.2I0.5Q0.0Q0.1I0.0I0.3网络 1网络 2LD I0.0 / 装入常开触点O I0.1 / 或常开触点A I0.2 / 与常开触点= Q0.0 / 输出触点LDN I0.3 / 装入常闭触点ON I0.4 / 或常闭触点AN I0.5 / 与常闭触点= Q0.1 / I0.1I0.4 输出触点位逻辑指令的应用5堆栈的基本概
8、念堆栈的基本概念 S7-200有1个9位的堆栈,栈顶用来存储逻辑运算的结果,下面的8位用来存储中间运算结果。堆栈中的数据一般按“先进后出”的原则存取。 执行LD指令时,将指令指定的位地址中的二进制数据装载入栈顶。执行A(与)指令时,将指令指定的位地址中的二进制数和栈顶中的二进制数相“与”,结果存入栈顶。执行O(或)指令时,将指令指定的位地址中的二进制数和栈顶中的二进制数相“或”,结果存入栈顶。 执行常闭触点对应的LDN,AN和ON指令时,取出指令指定的位地址中的二进制数据后,将它取反(0变为1,l变为0),然后再做对应的装载、与、或操作。6逻辑堆栈指令逻辑堆栈指令 在梯形图中没有对应的堆栈指令
9、格式,但在将在梯形图中没有对应的堆栈指令格式,但在将LAD转化为转化为STL的过程中,编译系统软件会自动为的过程中,编译系统软件会自动为LAD加上相应的堆栈指加上相应的堆栈指令。当使用令。当使用STL时,必须自己操作管理逻辑堆栈。堆栈操作从时,必须自己操作管理逻辑堆栈。堆栈操作从本质上较好地解决了逻辑位值的与、或运算问题,即控制电路本质上较好地解决了逻辑位值的与、或运算问题,即控制电路的串、并联问题。的串、并联问题。7取反取反(NOT)指令指令 取反指令改变能流输入的状态(即将栈顶的值取反后,放取反指令改变能流输入的状态(即将栈顶的值取反后,放入栈顶),也就是说将其左边的逻辑运算结果取反,运算
10、结果入栈顶),也就是说将其左边的逻辑运算结果取反,运算结果若为若为1则变为则变为0,为,为0则变为则变为1,指令没有操作数。取反指令只是,指令没有操作数。取反指令只是作为条件参入控制,不与存储器中任何单元发生联系。作为条件参入控制,不与存储器中任何单元发生联系。8正、负跳变指令正、负跳变指令 正、负跳变指令又叫边沿触发指令或微分指令,正、负跳变指令又叫边沿触发指令或微分指令,分为正跳变指令和负跳变指令。用于检测开关量状态分为正跳变指令和负跳变指令。用于检测开关量状态的变化方向。的变化方向。9置位与复位指令置位与复位指令 置位置位(S,Set)指令:支流导通的上升沿,使线圈指令:支流导通的上升沿
11、,使线圈得电并保持。得电并保持。复位复位(R,Rest)指令:支流导通的上升沿,使线圈失指令:支流导通的上升沿,使线圈失电并保持。电并保持。10立即指令立即指令 立即指令(立即指令(I )是为了提高是为了提高PLC对输入对输入/输出的响应速度而输出的响应速度而设置的,它不受设置的,它不受PLC扫描周期的影响,允许对输入和输出点进扫描周期的影响,允许对输入和输出点进行快速直接存取。行快速直接存取。立即指令立即指令I包含包含:LDI、LDNI;OI、ONI;AI、ANI;=I;SI、RI几条命令,各命几条命令,各命 令功能描述如下:令功能描述如下:LDI、LDNI:立即取、立即取非指令。:立即取、
12、立即取非指令。OI、ONI:立即:立即“或或”、立即、立即“或非或非”指令。指令。AI、ANI:立即:立即“与与”、立即、立即“与非与非”指令。指令。=I:立即输出指令。:立即输出指令。SI、RI:立即置位、立即复位指令。:立即置位、立即复位指令。触点符号中间的触点符号中间的“I”和和“I”表示立即常开和立即常闭。表示立即常开和立即常闭。11RS触发器指令触发器指令 RS触发器指令触发器指令,其基本功能与置位指令其基本功能与置位指令S和复位指和复位指令令R的功能相同。的功能相同。置位优先(置位优先(SR)触发器是一个置位优先的锁存器。当置)触发器是一个置位优先的锁存器。当置位信号位信号S1和复
13、位信号和复位信号R同时为同时为1时,输出信号时,输出信号OUT为为1。复位优先(复位优先(RS)触发器是一个复位优先的锁存器。当置)触发器是一个复位优先的锁存器。当置位信号位信号S和复位信号和复位信号R1同时为同时为1时,输出信号时,输出信号OUT为为0。12空操作指令空操作指令 空操作指令空操作指令(NOP N):不影响程序的执行。:不影响程序的执行。 STL指令格式如下:指令格式如下: NOPN N为执行空操作指令的次数,为执行空操作指令的次数,N=0255。6.3 定时器与计数器指令定时器与计数器指令6.3.1、定时器指令、定时器指令6.3.2、计数器指令、计数器指令6.3.1、定时器指
14、令、定时器指令 S7-200系列系列PLC有三种类型的定时器,即:有三种类型的定时器,即:接通延时定时器(接通延时定时器(TON)、断开延时定时)、断开延时定时器(器(TOF)和有记忆的(保持型)接通延)和有记忆的(保持型)接通延时定时器(时定时器(TONR),共计),共计256个。个。 定时器分辨率(定时器分辨率(S)可分为三个等级:)可分为三个等级:1ms、10ms和和100ms。定时器指令说明定时器指令说明 PT(16位整形,可是常数,位整形,可是常数,也可是直接寻址或指针寻址也可是直接寻址或指针寻址的变量)用于设置定时的长的变量)用于设置定时的长短,短,IN(布尔变量)用于启布尔变量)
15、用于启动、复位或停止计时,动、复位或停止计时,Txxx标明定时器号,用于寻址标明定时器号,用于寻址(xxx:0-255)。 定时器分三种类型定时器分三种类型TON(通电延时定时器)通电延时定时器)TONR(保持型通电延时定时器)保持型通电延时定时器)TOF(断电延时定时器)断电延时定时器)1 TON (延时通定时器)(延时通定时器)工作特点工作特点q使能端(使能端(IN)ON时,开始计时。时,开始计时。q当计时值(当计时值( Txxx 单元内容)大于等于预定值单元内容)大于等于预定值PT后,状态位置位。后,状态位置位。q计时值达到预定值后,继续计时直至最大值计时值达到预定值后,继续计时直至最大
16、值32767。q使能端(使能端(IN)OFF时,清除计时单元并复位状态时,清除计时单元并复位状态位。位。q复位指令(复位指令(R)可同时清除计时单元并复位状态)可同时清除计时单元并复位状态位。位。qTON定时器用于单个时间间隔的计时。定时器用于单个时间间隔的计时。TON(延时通定时器)时序图(延时通定时器)时序图2 TONR (保持型延时通)工作特点(保持型延时通)工作特点q使能端(使能端(IN)ON时,开始计时。时,开始计时。q当计时值(当计时值( Txxx 单元内容)大于等于预单元内容)大于等于预定值定值PT后,状态位置位。后,状态位置位。q计时值达到预定值后,继续计时直至最大计时值达到预
17、定值后,继续计时直至最大值值32767。q使能端(使能端(IN)OFF时,停止计时,计时单时,停止计时,计时单元的内容将被保持。元的内容将被保持。q只能用复位指令(只能用复位指令(R)清除计时单元并复位)清除计时单元并复位状态位。状态位。qTONR定时器用于累计固定时间间隔的脉冲定时器用于累计固定时间间隔的脉冲TONR(保持型延时通)时序图(保持型延时通)时序图3 TOF (断电延时)工作特点(断电延时)工作特点qTOF用于延时关断输出,延时长短由用于延时关断输出,延时长短由TOF控控制。制。q当使能端(当使能端(IN)ON时,状态位立即置位。时,状态位立即置位。 而计时单元随之清零。而计时单
18、元随之清零。q使能端(使能端(IN) OFF时,开始计时。达到预时,开始计时。达到预定值后,状态位复位(定值后,状态位复位( OFF) 同时计时单同时计时单元停止计时。元停止计时。q如果(如果(IN)端的)端的 OFF时间小于预定时间,时间小于预定时间,状态位将保持状态位将保持ON状态。状态。 qTOF一定是在(一定是在(IN)端由)端由 ON to OFF 的跳的跳变时才开始计时。变时才开始计时。qRESET指令可用于指令可用于TOF复位。复位。TOF(断电延时)时序图(断电延时)时序图4时间间隔定时器时间间隔定时器时间间隔定时器指令有两个:触发时间间隔(时间间隔定时器指令有两个:触发时间间
19、隔(BITIM)指令和)指令和计算时间间隔(计算时间间隔(CITIM)指令)指令(1)触发时间间隔()触发时间间隔(BITIM)指令读内置的)指令读内置的1毫秒计数器的毫秒计数器的当前值,并将此值存储到当前值,并将此值存储到OUT中。双字毫秒值的最大定时间中。双字毫秒值的最大定时间隔是隔是2的的32次幂,或次幂,或49.7天。天。(2)计算时间间隔()计算时间间隔(CITIM)指令计算当前时间和输入)指令计算当前时间和输入IN提提供的值之间的时间差。时间差被存储在供的值之间的时间差。时间差被存储在OUT中。双字毫秒值中。双字毫秒值的最大定时间隔是的最大定时间隔是2的的32次幂,或次幂,或49.
20、7天。依据于天。依据于BITIM指令指令执行的时间,执行的时间,CITIM自动处理在最大间隔内发生的自动处理在最大间隔内发生的1毫秒定时毫秒定时器翻转。器翻转。5定时器的分辨率定时器的分辨率在在S7-200系列系列PLC的定时器中,定时器的分辨率有的定时器中,定时器的分辨率有1ms、10ms、100ms三种。分辨率与定时器的编号有关。不同分辨率的定时三种。分辨率与定时器的编号有关。不同分辨率的定时器,由于刷新处理方法不同,从而对定时器的精度产生的影响器,由于刷新处理方法不同,从而对定时器的精度产生的影响也不同也不同 定时器编号和定时器编号和分辨率分辨率定时器类型定时器类型分辨率(分辨率(ms)
21、定时范围(最大值)定时范围(最大值)定时器号定时器号TONR 1ms 32.767s T0和和T64 10ms 327.67s T1T4和和T65T68 100ms 3276.7s T5T31和和T69T95TONTOF 1ms 32.767s T32和和T96 10ms 327.67s T33T36和和T97T100 100ms 3276.7s T37T63和和T101T2556.3.2、计数器指令、计数器指令S7-200提供三种类型的计数器,对计数器指提供三种类型的计数器,对计数器指令要掌握以下几点:令要掌握以下几点:触发计数的方式触发计数的方式停止计数的条件停止计数的条件复位计数器的方法
22、复位计数器的方法不同类型计数器的基本功能不同类型计数器的基本功能计数器指令说明计数器指令说明q 计数器分三种类型计数器分三种类型加计数加计数(CTU)减计数减计数(CTD)加减计数加减计数(CTUD)q Cxxx标明计数器号,用于寻标明计数器号,用于寻址(址(xxx:0-255)。)。PV预置预置值(值(16位整型,可是常数,也位整型,可是常数,也可是直接寻址或指针寻址的变可是直接寻址或指针寻址的变量)量) 。q CU、CD、LD、R控制计数器控制计数器的工作方式和状态(布尔变的工作方式和状态(布尔变量)。在量)。在STL指令中虽没标明,指令中虽没标明,尤应注意堆栈的应用。尤应注意堆栈的应用。
23、CTU指令指令qCTU计数计数CU端的脉冲数。脉冲正跳沿触发端的脉冲数。脉冲正跳沿触发计数,计数以加计数,计数以加1的方式进行。的方式进行。q当计数值(当计数值( current value)大于或等于预)大于或等于预定值(定值( Preset Value ),状态位置位),状态位置位q当计数到最大值当计数到最大值32767停止计数。停止计数。qR( Reset )端置位,复位计数器和状态位)端置位,复位计数器和状态位q也可用复位指令同时复位计数单元和状态位也可用复位指令同时复位计数单元和状态位q在在STL中中CU的状态存放在堆栈的第二层,的状态存放在堆栈的第二层,R的状态存放在堆栈的顶部。的
24、状态存放在堆栈的顶部。CTD指令指令qCD端的正跳沿触发计数。计数以减端的正跳沿触发计数。计数以减1的方的方式进行。式进行。q当计数值等于零时,置位状态位,并停止当计数值等于零时,置位状态位,并停止计数。计数。. qLD (load)端置位,将预定值()端置位,将预定值(PV)移)移入计数单元,同时复位状态位。入计数单元,同时复位状态位。q可用复位指令同时复位计数单元和状态位。可用复位指令同时复位计数单元和状态位。q在在STL中,中,LD存入栈顶,存入栈顶,CD存入堆栈的存入堆栈的第二层。第二层。qCTD举例见下页举例见下页CTUD指令指令qCU 端的正跳沿触发加计数,端的正跳沿触发加计数,C
25、D端的正跳沿触发端的正跳沿触发减计数。减计数。q当计数值大于等于预定值当计数值大于等于预定值PV ,置位状态位。,置位状态位。qR端置位,复位计数器(计数单元清零,同时状端置位,复位计数器(计数单元清零,同时状态位复位)。态位复位)。q加计数到最大值加计数到最大值32767后,下个加计数脉冲将使后,下个加计数脉冲将使计数值变成最小值计数值变成最小值-32768。减到最小。减到最小-32768后,后,下个减脉冲将使计数值变成最大值下个减脉冲将使计数值变成最大值32767。q也可用复位指令同时复位计数单元和状态位。也可用复位指令同时复位计数单元和状态位。q在在STL, R存栈顶,存栈顶,CD存堆栈
26、第二层,存堆栈第二层,CU存堆存堆栈第三层。栈第三层。6.4 数据处理指令 PLC的数据处理指令使的数据处理指令使PLC不仅可进行逻不仅可进行逻辑控制也可方便地用于模拟量处理和其它辑控制也可方便地用于模拟量处理和其它数字控制。数字控制。 数据处理指令很多,大多以字为单位操作,数据处理指令很多,大多以字为单位操作,主要包括比较指令、传送指令、移位指令、主要包括比较指令、传送指令、移位指令、数据转换指令等。数据转换指令等。6.4.1 比较指令比较指令 比较指令包括数值比较和字符串比较两类,他们比较指令包括数值比较和字符串比较两类,他们都属于逻辑运算类指令。都属于逻辑运算类指令。1数值比较指令数值比
27、较指令 数制比较指令用来比较两个数值数制比较指令用来比较两个数值INl与与IN2的大小。的大小。在梯形图中,当比较结果为真时,使能流通过,否则在梯形图中,当比较结果为真时,使能流通过,否则切断能流。切断能流。在语句表中,当比较结果为真时,将栈顶值置在语句表中,当比较结果为真时,将栈顶值置1,否,否则置则置0。数值的类型有:单字节无符号数(数值的类型有:单字节无符号数(B)、有符号单字长整数)、有符号单字长整数(I)、有符号双字整数()、有符号双字整数(D)、有符号实数(浮点数)。)、有符号实数(浮点数)。比较的运算有:比较的运算有:IN1=IN2(等于),(等于),IN1IN2(大于),(大于
28、),IN1IN2(不等于),(不等于),IN1=IN2(大于等于)。(大于等于)。2字符串比较指令字符串比较指令 字符串比较指令用来比较两个字符串比较指令用来比较两个ASCII码字符串是否相同。码字符串是否相同。在梯形图中,当比较结果为真时,使能流通过允许其后续指令在梯形图中,当比较结果为真时,使能流通过允许其后续指令执行,否则切断能流。执行,否则切断能流。在语句表中,当比较结果为真时,将栈顶值置在语句表中,当比较结果为真时,将栈顶值置1,否则置,否则置0。比较的运算有:比较的运算有:IN1=IN2(字符串相同),(字符串相同),IN1IN2(字符串(字符串不相同)。不相同)。= =SIN1I
29、N2LADSTL字符串字符串比较比较指令的指令的LAD及及STL指令格式指令格式LDS= IN1, IN2AS= IN1, IN2OS= IN1, IN2LDS IN1, IN2AS IN1, IN2OS IN1, IN2SIN1IN2无论是否有能流,比较指令都执行。如果没有能流输入,无论是否有能流,比较指令都执行。如果没有能流输入,输出为输出为0;如果有能流输入,则能流输出的情况取决于比;如果有能流输入,则能流输出的情况取决于比较指令的执行结果。结果为真,允许能流通过;结果为较指令的执行结果。结果为真,允许能流通过;结果为假,切断能流。假,切断能流。6.4.2 数据传送指令数据传送指令 数据
30、传送指令用于各个编程元件之间进行数据传送,将输数据传送指令用于各个编程元件之间进行数据传送,将输入的数据入的数据(IN)传送到输出传送到输出(OUT),传送过程中不改变源地址中数,传送过程中不改变源地址中数据的值。根据每次传送数据的数量多少可分为:单个传送指令据的值。根据每次传送数据的数量多少可分为:单个传送指令和块传送指令。和块传送指令。 1单个数据传送指令单个数据传送指令 单个数据传送指令每次传送一个数据,传送数据的类型分单个数据传送指令每次传送一个数据,传送数据的类型分为:字节(为:字节(Byte,B)传送、字()传送、字(Word,W)传送、双字)传送、双字(Double Word,D
31、W)传送和实数()传送和实数(Real,R)传送)传送 2块传送指令块传送指令 块传送指令可用来一次传送多个数据,将从输入地址(块传送指令可用来一次传送多个数据,将从输入地址(IN)开始的开始的N个数据传送到输出地址个数据传送到输出地址(0UT)开始的开始的N个单元,个单元,N=1255,最多可将,最多可将255个数据组成一个数据块,数据块的类型可以个数据组成一个数据块,数据块的类型可以是字节块、字块和双字块。是字节块、字块和双字块。 6.4.3 移位和循环指令移位和循环指令 S7-200 CPU可以进行字节、字、双字类型的左移位、可以进行字节、字、双字类型的左移位、右移位、循环左移位及循环右
32、移位,它们的指令格式相同,右移位、循环左移位及循环右移位,它们的指令格式相同,不同的指令格式代表不同的指令。不同的指令格式代表不同的指令。 移位和循环移位指令移位和循环移位指令的的LAD指令格式指令格式ENINOUTENO指令名称N包括:包括:1右移位和左移位指令右移位和左移位指令 2循环右移位和循循环右移位和循环左移位指令环左移位指令3移位寄存器指令移位寄存器指令4字节交换指令字节交换指令6.4.4 数据转换指令数据转换指令数据转换指令数据转换指令是对操作数的类型进行转换的指令。是对操作数的类型进行转换的指令。数值转换指令数值转换指令是将一个固定的数据,根据操作指令对数据类型是将一个固定的数
33、据,根据操作指令对数据类型的需要,进行相应类型的转换。的需要,进行相应类型的转换。 数值转换指令的LAD指令格式ENINENO指令名称OUT(1)字节转换为整数指令()字节转换为整数指令(BTI)(2)整数转换成字节指令()整数转换成字节指令(ITB)(3)整数转换成双整数指令()整数转换成双整数指令(ITD)(4)双整数转换成整数指令()双整数转换成整数指令(DTI)(5)双整数转换成实数指令()双整数转换成实数指令(DTR)(6)四舍五入取整指令()四舍五入取整指令(ROUND)(7)取整指令()取整指令(TRUNC)(8)BCD码转换成整数指令(码转换成整数指令(BCDI)(9)段码指令
34、()段码指令(SEG )(10)整数转换成)整数转换成BCD码指令(码指令(IBCD)6.4.5 表功能指令表功能指令1填表指令填表指令 填表指令填表指令ATT:向表格(:向表格(TBL)中增加一个字的数值)中增加一个字的数值(DATA),),DATA为数值输入,指出将被存储的字型数为数值输入,指出将被存储的字型数据或其地址;据或其地址;TBL为表格的首地址,用以指明被访问的表为表格的首地址,用以指明被访问的表格。格。 填表指令的LAD及STL指令格式ATTDATA, TBLSTLLADENDATAENOAD_T_TBLTBL2查表指令查表指令 查表指令(查表指令(Table Find)从指针
35、)从指针INDX所指的地址开始查所指的地址开始查表格表格TBL,搜索与数据,搜索与数据PTN的关系满足的关系满足CMD定义的条件的数定义的条件的数据。据。 查表指令的LAD及STL指令格式FIND= TBL, PTN, INDXFINDTBL, PTN, INDXFIND TBL, PTN, INDXSTLLADENTBLENOTBL_FINDPTNINDXCMD3先进先出和后进先出指令先进先出和后进先出指令 S7-200中,可以将表中的字型数据按照中,可以将表中的字型数据按照“先进先出先进先出”或或“后进先出后进先出”的方式取出,送到指定的存储单元。的方式取出,送到指定的存储单元。 先进先出
36、和后进先出指令先进先出和后进先出指令的的LAD及及STL指令格式指令格式FIFOTBL, DATA先进先出指令LIFOTBL, DATA后进先出指令ENTBLDATAENOFIFOLADSTLLAD指令名称分别为:FIFO、 LIFO4存储器填充指令存储器填充指令 存储器填充指令存储器填充指令FILL(Memory Fill)用输入值()用输入值(IN)填)填充从输出充从输出OUT开始的开始的N个字的内容,字节型整数个字的内容,字节型整数N=l255。 存储器填充指令的存储器填充指令的LAD及及STL指令格式指令格式FILLIN, OUT, NSTLLADENINENOFILL_NNOUT6.
37、4.6 字符串指令字符串指令求字符串长度(求字符串长度(SLEN)、字符串复制()、字符串复制(SCPY)和字符串连接)和字符串连接(SCAT)指令的)指令的LAD指令格式相同,只是指令名称不同。指令格式相同,只是指令名称不同。先进先出和后进先出指令先进先出和后进先出指令的的LAD及及STL指令格式指令格式SLENIN, OUT求字符串长度指令SCPYIN, OUT字符串复制指令SCATIN, OUT字符串连接指令ENINOUTENOSTR_LENLADSTLLAD指令名称分别为:STR_LEN(求字符串长度)、 STR_CPY(字符串复制)、STR_CAT(字符串连接)1求字符串长度指令求字
38、符串长度指令(SLEN)指令返回输入)指令返回输入IN中指定的字符串的长度值。中指定的字符串的长度值。 2字符串复制指令字符串复制指令(SCPY)指令将输入)指令将输入IN中指定的字符串复制到中指定的字符串复制到OUT指定的地指定的地址区中。址区中。 3字符串连接指令字符串连接指令(SCAT)指令将输入)指令将输入IN中指定的字符串连接到中指定的字符串连接到OUT指定的字符指定的字符串的后面。串的后面。 4从字符串中复制子字符串指令从字符串中复制子字符串指令(SSCPY)从)从INDX指定的字符编号开始,将指定的字符编号开始,将IN中存储的字符串中存储的字符串中的中的N个字符复制到个字符复制到
39、OUT中。中。 5字符串搜索和字符搜索指令字符串搜索和字符搜索指令(1)字符串搜索指令()字符串搜索指令(SFND)在字符串)在字符串IN1中搜索字符串中搜索字符串IN2,由字节变量由字节变量OUT指定搜索的起始位置。指定搜索的起始位置。 (2)字符搜索指令()字符搜索指令(CFND)查找在字符串)查找在字符串IN1中是否有字符中是否有字符串串IN2中包含的任意字符,字节变量中包含的任意字符,字节变量OUT指定搜索的起始位置。指定搜索的起始位置。 6.4.7 时钟指令时钟指令时钟指令包括读实时时钟指令时钟指令包括读实时时钟指令TODR和写实时时钟指令和写实时时钟指令TODW 时钟指令的LAD及
40、STL指令格式TODRT读实时时钟指令TODW T写实时时钟指令ENTENOREAD_RTCLADSTLLAD指令名称分别为:READ_RTC(读实时时钟)、 SET_RTC(写实时时钟) 6.5 数学运算指令数学运算指令1算术运算指令算术运算指令 算术运算指令是反映算术运算指令是反映CPU计算能力的一组指令,也是编程计算能力的一组指令,也是编程时经常使用的一组指令,包括加、减、乘、除及其相关的辅助时经常使用的一组指令,包括加、减、乘、除及其相关的辅助指令。指令。S7-200支持相同位数的各种数据类型的加、减、乘、除支持相同位数的各种数据类型的加、减、乘、除运算,它们的指令格式相同运算,它们的
41、指令格式相同 ENIN1OUTENO指令名称IN2算术运算指令的LAD指令格式2递增和递减指令递增和递减指令 递增(递增(Increment)和递减()和递减(Decrement)指令又称为加)指令又称为加1和减和减1指令指令 递增和递减指令的LAD指令格式ENINENO指令名称OUT3函数运算指令函数运算指令 S7-200系列系列PLC中的数学函数运算指令包括指数运算、对数运中的数学函数运算指令包括指数运算、对数运算、求三角函数的正弦、余弦及正切值。这些指令都是双字长的实算、求三角函数的正弦、余弦及正切值。这些指令都是双字长的实数(即浮点数)运算,其数(即浮点数)运算,其LAD指令格式同递增
42、和递减指令,只是指指令格式同递增和递减指令,只是指令名称不同令名称不同 (1)三角函数指令)三角函数指令正弦(正弦(SIN)、余弦()、余弦(COS)和正切()和正切(TAN)指令。)指令。 (2)自然对数和自然指数指令)自然对数和自然指数指令自然对数指令自然对数指令LN自然指数指令自然指数指令EXP (3)平方根指令)平方根指令平方根指令平方根指令SQRT (4)逻辑运算指令)逻辑运算指令1取反指令取反指令 字节取反(字节取反(INVB)、字取反()、字取反(INVW)和双字取反()和双字取反(INVD)指令将输入指令将输入IN中二进制数逐位取反(求反码),即二进制数的各中二进制数逐位取反(
43、求反码),即二进制数的各位由位由0变为变为1,由,由1变为变为0,并将结果存入到,并将结果存入到OUT中。中。2与、或、异或指令与、或、异或指令 字节与(字节与(ABDB)、字与()、字与(ANDW)和双字与()和双字与(ANDD)指令)指令将输入将输入IN1和和IN2的相应位作与操作,即如果两个操作数的同一位的相应位作与操作,即如果两个操作数的同一位均为均为1,运算结果的对应位为,运算结果的对应位为1,否则为,否则为0,并将结果存入到,并将结果存入到OUT中。中。 字节或(字节或(ORB)、字或()、字或(ORW)和双字或()和双字或(ORD)指令)指令将输将输入入IN1和和IN2的相应位作
44、或操作,即如果两个操作数的同一位均为的相应位作或操作,即如果两个操作数的同一位均为0,运算结果的对应位为,运算结果的对应位为0,否则为,否则为1,并将结果存入到,并将结果存入到OUT中。中。 字节异或(字节异或(XORB)、字异或()、字异或(XORW)和双字异或()和双字异或(XORD)指令指令将输入将输入IN1和和IN2的相应位作异或操作,即如果两个操作数的的相应位作异或操作,即如果两个操作数的同一位不同,运算结果的对应位为同一位不同,运算结果的对应位为1,否则为,否则为0,并将结果存入到,并将结果存入到OUT中。中。6.6 程序控制指令程序控制指令程序控制类指令程序控制类指令主要用于较复
45、杂程序设计,使用该类指令可以主要用于较复杂程序设计,使用该类指令可以用来优化程序结构,增强程序功能。它包括循环、跳转、停止、用来优化程序结构,增强程序功能。它包括循环、跳转、停止、子程序调用、看门狗及顺序控制等指令。子程序调用、看门狗及顺序控制等指令。1结束指令结束指令结束指令包括两条:条件结束指令(结束指令包括两条:条件结束指令(END)和无条件结束指令)和无条件结束指令(MEND)。)。 2停止指令停止指令停止指令(停止指令(STOP)使)使PLC从运行(从运行(RUN)模式进入停止)模式进入停止(STOP)模式,立即停止程序的执行。)模式,立即停止程序的执行。 3看门狗复位指令看门狗复位
46、指令看门狗复位(看门狗复位(WDR)指令允许)指令允许CPU的看门狗定时器重新被触发。的看门狗定时器重新被触发。 4循环指令循环指令在控制系统中经常遇到需要重复执行若干次同样的任务的情况,在控制系统中经常遇到需要重复执行若干次同样的任务的情况,这时可以使用循环指令。这时可以使用循环指令。 5跳转指令跳转指令与跳转相关的指令有下面两条:与跳转相关的指令有下面两条:(1)跳转指令)跳转指令JMP:使能输入有效时,使程序流程跳到同一:使能输入有效时,使程序流程跳到同一程序段中的指定标号程序段中的指定标号N处执行。执行跳转指令时,逻辑堆栈的处执行。执行跳转指令时,逻辑堆栈的栈顶值总是栈顶值总是1。(2
47、)标号指令)标号指令LBL:标记程序段,作为跳转指令执行时跳转:标记程序段,作为跳转指令执行时跳转到的目的位置到的目的位置N。6诊断诊断LED指令指令S7-200检测到致命错误时,检测到致命错误时,SF/DIAG(故障(故障/诊断)诊断)LED发出发出红光。红光。 7顺序控制继电器指令顺序控制继电器指令顺序控制继电器(顺序控制继电器(SCR)指令是)指令是PLC生产厂家为用户提供的生产厂家为用户提供的可使功能图编程简单化和规范化的指令。可使功能图编程简单化和规范化的指令。 8与与ENO指令指令与与ENO指令(指令(AENO)是梯形图和功能框图编程时指令盒的布)是梯形图和功能框图编程时指令盒的布
48、尔能流输出端。尔能流输出端。 6.7 子程序指令子程序指令 6.7.1 局部变量表局部变量表 1局部变量与全局变量局部变量与全局变量 在在SIMATIC符号表或符号表或IEC的全局变量表中定的全局变量表中定义的变量为全局变量。义的变量为全局变量。 程序中的每个程序中的每个POU(程序组织单元)均有(程序组织单元)均有自己的由自己的由64字节字节L存储器组成的局部变量表。存储器组成的局部变量表。它们用来定义有范围限制的变量,局部变它们用来定义有范围限制的变量,局部变量只在它被创建量只在它被创建POU中有效。中有效。 2局部变量的类型局部变量的类型(1)TEMP(临时变量)(临时变量)TEMP是暂
49、时保存在局部数据区中的变量,不能用来传递参数,是暂时保存在局部数据区中的变量,不能用来传递参数,它们只能在子程序中使用,暂时存储数据。它们只能在子程序中使用,暂时存储数据。 (2)IN(输入变量)(输入变量)IN是由调用它的是由调用它的POU提供的传入子程序的输入参数。提供的传入子程序的输入参数。 (3)OUT(输出变量)(输出变量)OUT是子程序的执行结果,它作为输出参数被返回给调用它的是子程序的执行结果,它作为输出参数被返回给调用它的POU。 (4)IN_OUT(输入(输入_输出变量)输出变量)IN_OUT的初始值由调用它的的初始值由调用它的POU传送给子程序,并用同一变量传送给子程序,并
50、用同一变量将子程序的执行结果返回给调用它的将子程序的执行结果返回给调用它的POU。常数和地址不能作输。常数和地址不能作输入入/输出变量。输出变量。 3局部变量的赋值局部变量的赋值 在局部变量表中赋值时,只需指定局部变量的类型在局部变量表中赋值时,只需指定局部变量的类型(TEMP,IN,IN_OUT或或OUT)和数据类型,不用指定存储器地址;程序编辑器自和数据类型,不用指定存储器地址;程序编辑器自动地在动地在L存储区中为所有局部变量指定存储器位置,起始地址为存储区中为所有局部变量指定存储器位置,起始地址为L0,18个连续的位参数分配一个字节,字节中的地址为个连续的位参数分配一个字节,字节中的地址
51、为Lx.0Lx.7。字。字节、字和双字值在局部存储器中按字节顺序分配。节、字和双字值在局部存储器中按字节顺序分配。4在局部变量表中增加新的变量在局部变量表中增加新的变量 对于主程序与中断程序,局部变量表显示一组已被预先定义为对于主程序与中断程序,局部变量表显示一组已被预先定义为TEMP(临时)变量的行。要向表中增加行,只需用右键单击表中(临时)变量的行。要向表中增加行,只需用右键单击表中的某一行,在弹出的菜单中选择的某一行,在弹出的菜单中选择“插入插入”“行行”命令,在所选行命令,在所选行的上部插入新的行。选择的上部插入新的行。选择“插入插入”“下一行下一行”命令,在所选行的命令,在所选行的下面插入新的行。下面插入新的行。 对于子程序,局部变量表显示数据类型被预先定义为对于子程序,局部变量表显示数据类型被预先定义为IN、IN_OUT、O
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 西南医科大学附属医院2026年度第一轮人才招聘备考题库有完整答案详解
- 初中生物细胞膜通道蛋白3D打印结构分析课题报告教学研究课题报告
- 2026年北海市中医医院医疗备考题库科工作人员招聘备考题库及完整答案详解
- 山东高速集团有限公司2025年下半年校园招聘(管培生和战略产业人才招聘)备考题库完整答案详解
- 安徽港航能源储运有限公司2025年第二批次劳务派遣员工社会招聘备考题库有答案详解
- 2026年福建省农业科学院植物保护研究所公开招聘科研助理的备考题库及一套参考答案详解
- 2025年区块链跨境电商供应链溯源存证挑战报告
- 2025年法律咨询平台五年国际化发展报告
- 小学科学教育中智能设备互联互通对教学效果的影响分析教学研究课题报告
- 2023-2024学年高二上学期地理期末模拟卷
- TSG特种设备安全技术规范TSGD-202工业管道安全技术规程
- 利用EXCEL画风机特性曲线-模版
- 人体工效评估程序
- EPC工程总承包项目设计及施工的配合制度
- 西南大学PPT 04 实用版答辩模板
- 国家开放大学电大《政治学原理》形考任务1及4网考题库答案
- 管理百年智慧树知到答案章节测试2023年
- 国家开放大学《刑法学(1)》形成性考核作业1-4参考答案
- 工艺美术专业课程配套练习二
- 2022“博学杯”全国幼儿识字与阅读大赛选拔试卷
- 临床试验监查计划
评论
0/150
提交评论