sbr是什么指令,身边人是什么意思

  

  小舒一直优先选择西门子PLC,并不是因为他严重偏袒凯哈。是因为和西门子接触的比较多,目前西门子在市场上的比例相当不错。昨天有个小伙伴给我发私信,说想让小舒发罗克韦尔PLC指令信息。那么小舒今天就整理一个给大家学习!有错误请不吝赐教~ ~   

  

     

  

   罗克韦尔控制器指令大全   

  

  一、位指令   

  

  用于监控和控制位状态。   

  

  XIC:检查指令是否关闭。   

  

  XIO:检查开关机指令是否可用。   

  

  注:输出励磁指令   

  

  OTL:输出锁存指令   

  

  OTU:输出解锁指令   

  

  ONS:一次性启动指令   

  

  OSR上升沿一旦开始指令   

  

  OSF上升沿一旦开始指令   

  

  二、计时器和计数器指令   

  

  TON延迟传导定时器指令   

  

  TOF延迟断开定时器指令   

  

  RTO保持定时器   

  

  CTU加法计数指令   

  

  安全防盗倒计时指令   

  

  RES复位指令   

  

  三、比较指令   

  

  CMP比较指令   

  

  EQU等于指导   

  

  GEQ大于或等于指令。   

  

  GRT大于指令   

  

  LEQ小于或等于指令   

  

  小于指令   

  

  LIM极限比较指令   

  

  MEQ掩码等于指令   

  

  NEQ不等于指令。   

  

  四、计算/算术指令   

  

  CPT计算说明   

  

  添加加法指令   

  

  减法指令   

  

  乘法指令   

  

  DIV指令   

  

  SQR平方根指令   

  

  NEG否定指令   

  

  五、传送/逻辑指令   

  

  MOV转移指令   

  

  Mv屏蔽转移指令   

  

  BTD比特字段分配   

  

  CLR清除指令   

  

  和按位AND指令   

  

  或按位或指令   

  

  逐位异或指令   

  

  非按位非指令   

  

  六、其它   

  

  FAL对数组中的数字执行算术、逻辑、移位和函数运算:对数组中存储的数据执行算术、逻辑、移位和函数运算。使用位置值(POS)提供整个数组的顺序。   

  

  EN:使能位,表FAL被使能。   

  

  DN:当指令处理完最后一个元素(POS=LIN)时,完成位被置位。   

  

  ER:当表达式求值时发生溢出时(SV置位),error位置位。   

  

  LEN:指定FAL指令操作的数组中元素的个数。   

  

  POS:位置值包含指令正在访问的当前元素的位置。控制:工序的控制结构   

  

  LENGTH:要处理的数组元素的数量   

  

  POSITION:当前元素在数组中的位置,(通常为0)   

  

  模式:对于数组中元素的操作模式,选择增量(INC)、整体(ALL)或输入数值。   

  

  DEST:目的地单位   

  

  表情:表情   

  

  FSC搜索并比较数组中的值:逐个元素比较数组中的值。对于逻辑运算,用户必须用表达式来解释。如果FSC指令被使能并且比较结果为真,则该指令设置发现位(FD)及其位置位(POS ),指示指令发现的比较为真的阵列位置。   

  

  COP将一个数组的内容复制到另一个数组:将源操作数的值复制到目标单元格,源操作数保持不变。字节数=长度*(目的单元数据类型的字节数),COP指令是不写数组尾的。对内存中的相邻数据进行操作,并在内存中进行字节到字节的直接复制。   

  

  用FLL:指定的数据填充数组用源值填充数组中的元素。来源不变。填充字节数为:字节数=长度*(目的单元数据类型的字节数),对内存中的相邻数据进行运算。AVE计算以下值中一组值的平均值:   

  

  按SRT:升序对数组中的一维数据进行排序按数值升序对一维数组进行排序。   

  

  计算STD:中一组值的标准差计算一个数组中一维数组中一组值的标准差,并将结果存储在目标单元格中array (file)/shift指令:使用array (file)/shift指令修改数组中数据的位置。   

  

  每当BSL/R完成加载、移动或卸载对齐数组中的一个位时,它将指定位向左(右)移动一个位置,当指令被使能时,它将指定位的最高位卸载到卸载位UL   

余的位向左(右)移动一个位置,并且装截位地址于数组的位0内。对连续存储单元单元进行操作。

  

FFL/U按相同的顺序装截或卸载数据:FFL指令复制源值到FIFO内,用FFL和FFU指令存储数据,并且可按先进/先出的顺序取回数据。当使用该指令对时,FFL和FFU指令建立了一个异步移位寄存器。当指令被使能时,FFL指令把源值装入由位置值(POS)确定的FIFO内的位置,每次指令被使能装载一个数值,直到FIFO满为止。源操作数和FIFO用相同的数据类型。FFL指令对连续存储单元进行操作。FFU指令卸载FIFO的位置0(第一位置)的数值并存放该值于目的单元。FIFO内的其余数据向下移动一个位置。FFU指令一起按选进/先出的顺序存储和返回数据。当指令被使能时,FFU指令从FIFO的第一个元素卸载数据并存放该值于目的单元,指令每次被使能时卸载一个数值,直到FIFO栈空为止。如果FIFO为空,则FFU指令向目的单元返回0值。

  

LFL/U按相反的顺序装截或卸载数据:LFL指令复制源值到LIFO内,用LFL和LFU指令存储数据,并且可按后进/先出的顺序取回数据。当使用该指令对时,LFL和LFU指令建立了一个异步移位寄存器。当指令被使能时,LFL指令把源值装入由位置值(POS)确定的LIFO内的位置内,每次指令被使能装载一个数值,直到LIFO栈满为止。源操作数和LIFO用相同的数据类型。LFL指令对连续存储单元进行操作。LFU指令卸载LIFO的位置值(POS)内的0值于该位置,LFU和LFL指令一起按后进/先出的顺序存储和返回数据。

  

LIFO必须和目的单元数据类型一致。当指令被使能时,LFO指令从LIFO的位置值(POS)内的数值并存该值于目的单元,指令每次被使能时都卸载一个数值并用0值替换该值,直到LIFO栈空为止。如果LIFO为空,则LFU指令返回0值到目的单元。

  

顺序器指令:监控一致性且重复性操作

  

SQI

  

顺序器输入指令:检测SQO/SQI顺序器指令对何时完成一步。当指令被使能时,SQI指令通过屏蔽使源

  

元素与一个数组元素作相等的比较SQI指令对连续存储器单元进行操作。输入立即数作为屏蔽值。

  

SQO

  

顺序器输出指令:SQO指令设置SQO/SQI顺序器指令对下一步输出条件。当指令被使能时,SQO指令增加位置值,通过屏蔽传送该位置内的数据,并把结果存入目的单元,若位置值(POS)〈长度值(LEN),则指令返回到顺序器数组的开始处,并从位置值(POS)处继续执行。SQO指令对连续存储器单元进行操作。输入立即数作为屏蔽值。

  

SQL

  

顺序器半装载指令:把参考条件装入顺序器数组内,当指令使能时,SQL指令增加位置值到顺序器数组的下一个位置,并装载源数值到该位置。若完成位被置位或位置值(POS)〈长度值(LEN),则指令设置位置值(POS)=1

  

程序控制指令:用程序控制指令改变程序的流程

  

JMP/ LBL

  

跳转到标号指令(JMP):当指令被使能时,JMP跳到其引用的LBL指令,控制器从该处继续继续执行:

  

当指令被禁止时,JMP不影响梯形图程序的执行。JMP可向前或向后跳转执行梯形图程序,向前跳转到标号可通过略过部分梯形图逻辑直到需要的程序,从机时节省程序扫描时间。向后跳使控制器重复执行梯形图逻辑。向后跳次数不要太多,否则看门狗定时器可能超时,因控制器不能到达程序的未尾,而导致控制器故障。

  

LBL是具有同一标号名称的JMP指令的跳转目标,要确保LBL是其所在梯级的第一条指令。在一个程序内标号名称必须是唯一的,标号名称可是:最多有40个字符,可包含字母、数字、和下划线。

  

JSR

  

跳转到子程序指令JSR:JSR、SBR和RET指令使逻辑执行转到程序中的独立的子程序,对子程序进行一次扫描,然后返回到程序的转移点。

  

当指令被使能时,若有输入参数,JSR传递它的输入参数,并使执行转到子程序的第一梯级。SBR指令接收输入参数并复制这些到指定的标签。JSR输入参数的数量和类型需与SBR指令相匹配。JSR输入参数的数量比相应的SBR指令输入参数少,控制器出现主要错误,JSR输入参数的数量多没关系。

  

用户可使用SBR指令而不输入参数,表明其驻留的程序是子程序,不能把SBR放入主程序内。要返回参数到JSR指令,必须使用RET指令结束子程序,一个子程序可有多条RET指令。子程序指令SBR、返回指令RET。

  

JSR、SBR和RET指令通过数值把参数传入或传出子程序。需使用额外的执行时间和存储器来复制数值。

  

TND

  

暂停指令:当指令被使能,TND指令担当程序的未尾,若控制器扫描到一条TND指令,则控制器转移到当前程序的结束处。若TND在一个子程序内,则控制返回到调用它的程序。若TND在一个主程序内,则控制返回到当前程序的下一个程序。可在调试或故障诊断时使用TND指令使程序执行到一确定点。然后在程序内进一步移动TND指令到需调试程序的新部分。

  

MCR

  

主控复位指令:成对使用,当MCR区域被使能时,在MCR区域内的梯级的为真或为假条件被正常扫描。

  

必须成对使用,不能在MCR区域内嵌套另一个MCR区域,不要跳转到MCR区域,若MCR区域持续到程序的未尾,则不必在区域的结束处编制一条MCR指令。

  

UID

  

禁止用户中断指令:被使能时则继续执行当前任务,需不能被高优先级的任务中断,除非执行UIE指令或到程序的未尾,UID指令不能能禁止一个故障子程序或故障任务。当指令被使能时,UID指令增加内部计数器的数值,只要计数器的值不为零,当前执行的任务就不会被中断。

  

UIE

  

用户中断使能指令:被使能且内部计数器的值大于零,则计数器的值减少,当计数器的值等于零时,当前执行的任务可再次被中断,此时执行任何先前被禁止中断的高优先级任务。

  

AFI

  

恒假指令:设置它的梯级输出条件为假

  

NOP

  

空操作指令:NOP的功能相当于占符位,编程时可放置NOP于梯级的任何地方,当指令被使能时NOP执行空操作,当指令被禁止时,NOP指令也执行空操作。

  

循环/禁止循环指令:用FOR重复调用子程序,用BPK指令中断一个子程序的执行。

  

FOR

  

重复执行子程序:当指令被使能时,FOR重复执行子程序,直到索引值超过终止值。该指令不向子程序传递参数。每次FOR执行子程序时,它都把每步大小加到索引值。不要在单次扫描循环太多次,重复次数太多可引起控制器的看门狗超时,这会导致主要故障。

  

BRK

  

终止循环指令:中断被FOR指令调用的子程序的执行。当指令被使能时,BRK指令离开当前子程序并使控制器返回到FOR指令的下一条指令。若存在嵌套的FOR指令,则BRK指令使控制返回到FOR指令的最内层。

  

RET

  

返回指令:返回到调用的FOR指令,FOR不使用操作数,FOR忽略用户输入到RET指令的任何参数。当使能时,RET返回到FOR指令,FOR指令以每步大小为单位增加索引值,并再次执行子程序,若索引值超过终止值,则FOR指令完成,而且程序执行转移到FOR指令的下一条指令。用户可用TND指令结束子程序的执行。

  

专用指令:执行特殊应用操作

  

FBC

  

文件位比较:当指令使能时,比较源数组内的位与参考数组内的位,并且记录每个不匹配的位号于结果数组内。与DDT区别:每次DDT发现一个不匹配位,该指令改变参考位的值使之与原数组内的位匹配,而FBC不改变参考位的值。

  

DDT

  

诊断检测:当指令使能时,比较源数组内的位与参考数组内的位,并且记录每个不匹配的位号于结果数组内,而且改变参考数组内位的值,使其与相应的源数组内的位的数值相配。

  

DTR

  

数据传送指令:通过屏蔽传递源值并使其结果与参考值比较,同时也用屏蔽的源值覆盖参考值,用于下一次比较,源值保持不变。

  

屏蔽操作数内的一个1意味着通过位数据,一个0意味着位数据被阻止。当通过屏蔽后的源值与参考值不一致时,梯级输出条件为真一个扫描周期,若屏蔽的源值与参考值相同,则梯级输出条件为假。输入立即数为作为屏蔽值。

  

PID

  

比例、积分、微分指令:接收来自模拟量输入模块的过程变量(PV),并通过模拟量输出模块调节控制变量输出(CV),使能位(EN)表指令在执行状态PID通过防止CV输出达到其由MAXO和MINO设定的最大或最小值时,积分项继续累加来自动避免积分饱和。累加的积分项保持不变,直到CV输出降到其最大上限值以下,或升到其最小下限值以上,然后正常的积分累加值自动从新开始。

  

PID自动提供由软件手动模式到自动模式,或手动模式到自动模式的无冲击转换。要禁止微分平滑作用,可在配置制表栏中选择“禁止微分平滑(no derivative smoothing)”选项或在PID结构体中置位NDF位。

  

三角函数指令:用三角函数来进行算术运算

  

SIN

  

正弦指令:计算源操作数的正弦值(以弧度表示),存结果于目的单元内。源值必须大于或等于-205887.4且小于205887.4,目的单元内的结果数值总大于或等于-1且小于或等于1

  

COS

  

余弦指令:计算源操作数的余弦值(以弧度表示),存结果于目的单元内,同上

  

TAN

  

正切指令:计算源操作数的正切值(以弧度表示),存结果于目的单元内。 源值必须大于或等于-102943.7且小于102943.7

  

ASN

  

反正弦指令:计算源操作数的反正弦值,存结果于目的单元内(以弧度表示)。源值必须大于或等于-1且小于或等于1,目的单元内的结果数值总大于或等于-2π且小于或等于2π。

  

ACS

  

反余弦指令:计算源操作数的反余弦值,存结果于目的单元内(以弧度表示)。源值必须大于或等于-1且小于或等于1,目的单元内的结果数值总大于或等于0且小于或等于π。

  

ATN

  

反正切指令:计算源操作数的反正切值,存结果于目的单元内(以弧度表示),源值必须大于或等于-1且小于或等于1,目的单元内的结果数值总大于或等于-π/2且小于或等于π/2。

  

高级算术指令:

  

LN

  

自然对数指令:计算源操作数的自然对数并存结果于目的单元内。源数值必须大于零,否则S:V被置位。目的单元结果值大于或等于-87.33655且小于或等于88.72284.

  

LOG

  

以10为底的对数指令: 计算源操作数的以10为底的对数并存结果于目的单元内。源数值必须大于零,否则S:V被置位。目的单元结果值大于或等于-37.92978且小于或等于38.53184.

  

XPY

  

X的Y次幂指令:计算源A(X)的源B(Y)次幂并存结果于目的单元。若源A是负数,则源B必须是一个整数值,否则将发生次要错误.

  

数学转换指令:

  

DEG

  

转换弧度为角度:转换源值(以弧度表示)为角度并存结果于目的单元内。

  

RAD

  

转换角度为弧度:转换源值(以角度表示)为弧度并存结果于目的单元内。

  

TOD

  

转换整数值为BCD码:转换一个十进制的值(0≤源操作数≤99999999)为BCD码并存结果于目的单元内。

  

若输入源操作数为一个负数,则发生次要错误并清零目的单元。

  

FRD

  

转换BCD码为整数值:转换一个BCD码值为十进制值并存结果于目的单元内。

相关文章