西门子S7-1500 PLC的跳转类型指令
时间:2017-10-16 阅读:10579
西门子S7-1500 PLC的跳转类型指令
跳转类型指令的梯形图形式如图5-142~图5-147所示,主要包括跳转标签指令(LABEL)、若RLO=“1”则跳转指令(JMP)、若RLO=“1”则跳转指令(JMPN)、定义跳转列表指令( JMP_LIST)、跳转分配器指令(SWITCH)和返回指令(RET)。
图5-142 LABEL指令
图5-143 JMP指令
图5-144 JMPN指令
图5-145 RET指令
图5-146 JMP_LIST指令
图5-147 SWITCH指令
跳转标签指令( LABEL)是配合跳转指令实现程序跳转,该指令用来标识一个目标程序段,执行程序跳转时,程序跳转到跳转标签下方的程序段开始执行。
“若RLO=”1”则跳转”指令(JMP)在满足该指令输入的条件(RLO =1)时可中断当前程序的顺序执行,而跳转到由跳转标签( LABEL)进行标识的程序段开始执行;如果不满足该指令输入的条件( RLO =0),则程序将继续执行下一程序段。
“若RLO=”0”则跳转”指令(JMPN)与JMP指令的跳转条件正好相反,即当RLO =0时程序跳转到由跳转标签( LABEL)进行标识的程序段开始执行,否则顺序执行。
“返回”指令( RET)可停止当前程序块的执行。如果“返回”指令输入端的逻辑运算结果( RLO)为“1”,则将终止当前调用块中的程序执行,并在调用块(例如,在调用OB中)中调用函数之后,继续执行。
对于LABEL、JMP、JMPN和RET指令,的跳转标签与执行的跳转指令必须位于同一程序块中,的跳转标签名称在程序块中只能出现一次,一个程度段中只能使用一条跳转指令(JMP、JMPN和RET)。CPU S7 -1200zui多可以声明32个跳转标签,而CPU S7 -1500zui多可以声明256个跳转标签。
“定义跳转列表”指令( JMP_LIST)与LABEL指令配合使用,根据K值实现跳转。在指令的输出中只能跳转标签,而不能指令或操作数。当EN使能输入的信号状态为“1”时,执行JMP_LIST指令,程序将跳转到由K参数的值的输出编号所对应的目标程序段开始执行。如果K参数值大于可用的输出编号,则顺序执行程序。可在指令框中通过鼠标单击“*”来扩展输出的数量(CPU S7 -1200zui多可以声明32个输出,而CPU S7 -1500zui多可以声明99个输出),输出编号从“0”开始,每增加一个新输出,都会按升序连续递增。
“跳转分支指令”指令( SWITCH)也与LABEL指令配合使用,根据比较结果,定义要执行的程序跳转。在指令框中为每个输入选择比较类型(==、<>、>=、<=、>、<,各比较指令的可用性取决于指令的数据类型),在指令的输出中跳转标签( LABEL),在参数K中要比较的值,将该值依次与各个输入(编号按照从小到大的顺序)提供的值按照选择的比较类型进行比较,直至满足比较条件为止,选择满足条件的输入编号所对应的输出的跳转标签进行程序跳转。如果满足比较条件,则将不考虑后续比较条件;如果不满足任何的比较条件,则将执行输出ELSE处的跳转;如果输出ELSE中未定义程序跳转,则程序顺序执行。可在指令框中通过鼠标单击“*”增加输出的数量,输出编号从“0”开始,每增加一个新输出,都会按升序连续递增,同时会自动插入一个输入。
基本指令下的“原有”指令集如图5-148所示,包括执行顺控程序指令、离散控制定时器报警指令、电动机控制定时器报警指令、比较输入位与掩码位指令、比较扫描矩阵指令、提前和滞后算法指令、创建7段显示的位模式指令、求十进制补码指令和统计设置位数量指令。
图5-148 “原有”指令集
在TIA Portal STEP 7指令系统中,除了基本指令集,还有扩展指令集、工艺指令集、通信指令集和选件包指令集。
扩展指令集中主要包括日期和时间、分布式I/O、中断、报警、诊断、数据块控制和寻址等方面的指令。工艺指令集中主要包括计数和测量、PID控制、运动控制和时基I/O等与工艺功能有关的指令。通信指令集中主要包括S7通信、开放式用户通信、WEB服务器以及,通信处理器等与通信有关的指令。选件包指令中为部分插件功能指令。使用时请查阅Portal STEP 7软件的帮助信息系统或相关的系统手册。