s7—200plc指令功能

发布网友 发布时间:2022-04-20 09:38

我来回答

5个回答

热心网友 时间:2022-05-12 04:20

S7-200的功能指令很丰富,大致包括这几方面:算术与逻辑运算、传送、移位与循环移位、程序流控制、数据表处理、PID指令、数据格式变换、高速处理、通信以及实时时钟等。

功能指令的助记符与汇编语言相似,略具计算机知识的人学习起来也不会有太大困难。但S7-200系列PLC功能指令毕竟太多,一般读者不必准确记忆其详尽用法,需要时可可查阅产品手册。

表4-20 四则运算指令

名称

指令格式

(语句表)

功能

操作数寻址范围

加法指令

+I IN1,OUT

两个16位带符号整数相加,得到一个16位带符号整数。

执行结果:IN1+OUT=OUT(在LAD和FBD中为:IN1+IN2=OUT)

IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

IN1和IN2还可以是AIW和常数

+D IN1,IN2

两个32位带符号整数相加,得到一个32位带符号整数。

执行结果:IN1+OUT=OUT(在LAD和FBD中为:IN1+IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以是HC和常数

+R IN1,OUT

两个32位实数相加,得到一个32位实数。

执行结果:IN1+OUT=OUT(在LAD和FBD中为:IN1+IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以常数

减法指令

-I IN1,OUT

两个16位带符号整数相减,得到一个16位带符号整数。

执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)

IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

IN1和IN2还可以是AIW和常数

-D IN1,OUT

两个32位带符号整数相减,得到一个32位带符号整数。

执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以是HC和常数

-R IN1,OUT

两个32位实数相加,得到一个32位实数。

执行结果:OUT-IN1=OUT(在LAD和FBD中为:IN1-IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以常数

乘法指令

*I IN1,OUT

两个16位符号整数相乘,得到一个16整数。

执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)

IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

IN1和IN2还可以是AIW和常数

MUL IN1,OUT

两个16位带符号整数相乘,得到一个32位带符号整数。

执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)

IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常数

OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

*D IN1,OUT

两个32位带符号整数相乘,得到一个32位带符号整数。

执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以是HC和常数

*R IN1,OUT

两个32位实数相乘,得到一个32位实数。

执行结果:IN1*OUT=OUT(在LAD和FBD中为:IN1*IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以是常数

除法指令

/I IN1,OUT

两个16位带符号整数相除,得到一个16位带符号整数商,不保留余数。

执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)

IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW, T,C,AC,*VD,*AC,*LD

IN1和IN2还可以是AIW和常数

DIV IN1,OUT

两个16位带符号整数相除,得到一个32位结果,其中低16位为商,高16位为结果。

执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)

IN1,IN2:VW,IW,QW,MW,SW,SMW,LW,AIW,T,C,AC,*VD,*AC,*LD和常数

OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

/D IN1,OUT

两个32位带符号整数相除,得到一个32位整数商,不保留余数。

执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以是HC和常数

/R IN1,OUT

两个32位实数相除,得到一个32位实数商。

执行结果:OUT/IN1=OUT(在LAD和FBD中为:IN1/IN2=OUT)

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以是常数

数学函数指令

SQRT IN,OUT

把一个32位实数(IN)开平方,得到32位实数结果(OUT)

IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN还可以是常数

LN IN,OUT

对一个32位实数(IN)取自然对数,得到32位实数结果(OUT)

EXP IN,OUT

对一个32位实数(IN)取以e为底数的指数,得到32位实数结果(OUT)

SIN IN,OUT

分别对一个32位实数弧度值(IN)取正弦、余弦、正切,得到32位实数结果(OUT)

COS IN,OUT

TAN IN,OUT

增减指令

INCB OUT

将字节无符号输入数加1

执行结果:OUT+1=OUT(在LAD和FBD中为:IN+1=OUT)

IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

IN还可以是常数

DECB OUT

将字节无符号输入数减1

执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)

INCW OUT

将字(16位)有符号输入数加1

执行结果:OUT+1=OUT(在LAD和FBD中为:IN+1=OUT)

IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

IN还可以是AIW和常数

DECW OUT

将字(16位)有符号输入数减1

执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)

INCD OUT

将双字(32位)有符号输入数加1

执行结果:OUT+1=OUT(在LAD和FBD中为:IN+1=OUT)

IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN还可以是HC和常数

DECD OUT

将字(32位)有符号输入数减1

执行结果:OUT-1=OUT(在LAD和FBD中为:IN-1=OUT)

表4-21 逻辑运算指令

名称

指令格式

(语句表)

功能

操作数

字节逻辑运算指令

ANDB IN1,OUT

将字节IN1和OUT按位作逻辑与运算,OUT输出结果

IN1,IN2,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

IN1和IN2还可以是常数

ORB IN1,OUT

将字节IN1和OUT按位作逻辑或运算,OUT输出结果

XORB IN1,OUT

将字节IN1和OUT按位作逻辑异或运算,OUT输出结果

INVB OUT

将字节OUT按位取反,OUT输出结果

字逻辑运算指令

ANDW IN1,OUT

将字IN1和OUT按位作逻辑与运算,OUT输出结果

IN1,IN2,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

IN1和IN2还可以是AIW和常数

ORW IN1,OUT

将字IN1和OUT按位作逻辑或运算,OUT输出结果

XORW IN1,OUT

将字IN1和OUT按位作逻辑异或运算,OUT输出结果

INVW OUT

将字OUT按位取反,OUT输出结果

双字逻辑运算指令

ANDD IN1,OUT

将双字IN1和OUT按位作逻辑与运算,OUT输出结果

IN1,IN2,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN1和IN2还可以是HC和常数

ORD IN1,OUT

将双字IN1和OUT按位作逻辑或运算,OUT输出结果

XORD IN1,OUT

将双字IN1和OUT按位作逻辑异或运算,OUT输出结果

INVD OUT

将双字OUT按位取反,OUT输出结果

表4-22 数据传送指令

名称

指令格式

(语句表)

功能

操作数

单一传送指令

MOVB IN,OUT

将IN的内容拷贝到OUT中

IN和OUT的数据类型应相同,可分别为字,字节,双字,实数

IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

IN还可以是常数

MOVW IN,OUT

IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

IN还可以是AIW和常数

OUT还可以是AQW

MOVD IN,OUT

IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN还可以是HC,常数,&VB,&IB,&QB,&MB,&T,&C

MOVR IN,OUT

IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN还可以是常数

BIR IN,OUT

立即读取输入IN的值,将结果输出到OUT

IN:IB

OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

BIW IN,OUT

立即将IN单元的值写到OUT所指的物理输出区

IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数

OUT:QB

块传送指令

BMB IN,OUT,N

将从IN开始的连续N个字节数据拷贝到从OUT开始的数据块

N的有效范围是1~255

IN,OUT:VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LD

N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数

BMW IN,OUT,N

将从IN开始的连续N个字数据拷贝到从OUT开始的数据块

N的有效范围是1~255

IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,*VD,*AC,*LD

IN还可以是AIW

OUT还可以是AQW

N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数

BMD IN,OUT,N

将从IN开始的连续N个双字数据拷贝到从OUT开始的数据块

N的有效范围是1~255

IN,OUT:VD,ID,QD,MD,SD,SMD,LD, *VD,*AC,*LD

N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD和常数

表4-23 移位与循环移位指令

名称

指令格式

(语句表)

功能

操作数

字节移位指令

SRB OUT,N

将字节OUT右移N位,最左边的位依次用0填充

IN,OUT,N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

IN和N还可以是常数

SLB OUT,N

将字节OUT左移N位,最右边的位依次用0填充

RRB OUT,N

将字节OUT循环右移N位,从最右边移出的位送到OUT的最左位

RLB OUT,N

将字节OUT循环左移N位,从最左边移出的位送到OUT的最右位

字移位指令

SRW OUT,N

将字OUT右移N位,最左边的位依次用0填充

IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

IN还可以是AIW和常数

N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数

SLW OUT,N

将字OUT左移N位,最右边的位依次用0填充

RRW OUT,N

将字OUT循环右移N位,从最右边移出的位送到OUT的最左位

RLW OUT,N

将字OUT循环左移N位,从最左边移出的位送到OUT的最右位

双字移位指令

SRD OUT,N

将双字OUT右移N位,最左边的位依次用0填充

IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN还可以是HC和常数

N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数

SLD OUT,N

将双字OUT左移N位,最右边的位依次用0填充

RRD OUT,N

将双字OUT循环右移N位,从最右边移出的位送到OUT的最左位

RLD OUT,N

将双字OUT循环左移N位,从最左边移出的位送到OUT的最右位

位移位寄存器指令

SHRB DATA,S_BIT,N

将DATA的值(位型)移入移位寄存器;S_BIT指定移位寄存器的最低位,N指定移位寄存器的长度(正向移位=N,反向移位=-N)

DATA,S_BIT:I,Q,M,SM,T,C,V,S,L

N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数

表4-24 交换和填充指令

名称

指令格式

(语句表)

功能

操作数

换字节指令

SWAP IN

将输入字IN的高位字节与低位字节的内容交换,结果放回IN中

IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

填充指令

FILL IN,OUT,N

用输入字IN填充从OUT开始的N个字存储单元

N的范围为1~255

IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

IN还可以是AIW和常数

OUT还可以是AQW

N:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数

表4-25 表操作指令

名称

指令格式

(语句表)

功能

操作数

表存数指令

ATT DATA,TABLE

将一个字型数据DATA添加到表TABLE的末尾。EC值加1

DATA,TABLE:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

DATA还可以是AIW,AC和常数

表取数指令

FIFO TABLE,DATA

将表TABLE的第一个字型数据删除,并将它送到DATA指定的单元。表中其余的数据项都向前移动一个位置,同时实际填表数EC值减1

DATA,TABLE:VW,IW,QW,MW,SW,SMW,LW,T,C, *VD,*AC,*LD

DATA还可以是AQW和AC

LIFO TABLE,DATA

将表TABLE的最后一个字型数据删除,并将它送到DATA指定的单元。剩余数据位置保持不变,同时实际填表数EC值减1

表查找指令

FND= TBL,PTN,INDEX

FND<> TBL,PTN,INDEX

FND< TBL,PTN,INDEX

FND> TBL,PTN,INDEX

搜索表TBL,从INDEX指定的数据项开始,用给定值PTN检索出符合条件(=,<>,<,>)的数据项

如果找到一个符合条件的数据项,则INDEX指明该数据项在表中的位置。如果一个也找不到,则INDEX的值等于数据表的长度。为了搜索下一个符合的值,在再次使用该指令之前,必须先将INDEX加1

TBL:VW,IW,QW,MW,SMW,LW,T,C, *VD,*AC,*LD

PTN,INDEX:VW,IW,QW,MW,SW,SMW,LW,T,C,AC, *VD,*AC,*LD

PTN还可以是AIW和AC

表4-26 数据转换指令

名称

指令格式

(语句表)

功能

操作数

数据类型转换指令

BTI IN,OUT

将字节输入数据IN转换成整数类型,结果送到OUT,无符号扩展

IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数

OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

ITB IN,OUT

将整数输入数据IN转换成一个字节,结果送到OUT。输入数据超出字节范围(0~255)则产生溢出

IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,*LD,常数

OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

DTI IN,OUT

将双整数输入数据IN转换成整数,结果送到OUT。

IN:VD,ID,QD,MD,SD,SMD,LD,HC,AC,*VD,*AC,*LD,常数

OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

ITD IN,OUT

将整数输入数据IN转换成双整数(符号进行扩展),结果送到OUT

IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,*LD,常数

OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

ROUND IN,OUT

将实数输入数据IN转换成双整数,小数部分四舍五入,结果送到OUT

IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN还可以是常数

在ROUND指令中IN还可以是HC

TRUNC IN,OUT

将实数输入数据IN转换成双整数,小数部分直接舍去,结果送到OUT

DTR IN,OUT

将双整数输入数据IN转换成实数,结果送到OUT

IN,OUT:VD,ID,QD,MD,SD,SMD,LD,AC,*VD,*AC,*LD

IN还可以是HC和常数

BCDI OUT

将BCD码输入数据IN转换成整数,结果送到OUT。IN的范围为0~9999

IN,OUT:VW,IW,QW,MW,SW,SMW,LW,T,C,AC,*VD,*AC,*LD

IN还可以是AIW和常数

AC和常数

IBCD OUT

将整数输入数据IN转换成BCD码,结果送到OUT。IN的范围为0~9999

编码译码指令

ENCO IN,OUT

将字节输入数据IN的最低有效位(值为1的位)的位号输出到OUT指定的字节单元的低4位

IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AIW,AC,*VD,*AC,*LD,常数

OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

DECO IN,OUT

根据字节输入数据IN的低4位所表示的位号将OUT所指定的字单元的相应位置1,其它位置0

IN:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD,常数

IN:VW,IW,QW,MW,SW,SMW,LW,T,C,AQW,AC,*VD,*AC,*LD

段码指令

SEG IN,OUT

根据字节输入数据IN的低4位有效数字产生相应的七段码,结果输出到OUT,OUT的最高位恒为0

IN,OUT:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

IN还可以是常数

字符串转换指令

ATH IN,OUT,LEN

把从IN开始的长度为LEN的ASCⅡ码字符串转换成16进制数,并存放在以OUT为首地址的存储区中。合法的ASCⅡ码字符的16进制值在30H~39H,41H~46H之间,字符串的最大长度为255个字符

IN,OUT,LEN:VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LD

LEN还可以是AC和常数

表4-27 特殊指令

名称

指令格式

(语句表)

功能

操作数

中断指令

ATCH INT,EVNT

把一个中断事件(EVNT)和一个中断程序联系起来,并允许该中断事件

INT:常数

EVNT:常数(CPU221/222:0~12,19~23,27~33;CPU224:0~23,27~33;CPU226:0~33)

DTCH EVNT

截断一个中断事件和所有中断程序的联系,并禁止该中断事件

ENI

全局地允许所有被连接的中断事件



DISI

全局地关闭所有被连接的中断事件

CRETI

根据逻辑操作的条件从中断程序中返回

RETI

位于中断程序结束,是必选部分,程序编译时软件自动在程序结尾加入该指令

通信指令

NETR TBL,PORT

初始化通讯操作,通过指令端口(PORT)从远程设备上接收数据并形成表(TBL)。可以从远程站点读最多16个字节的信息

TBL:VB,MB,*VD,*AC,*LD

PORT:常数

NETW TBL,PORT

初始化通讯操作,通过指定端口(PORT)向远程设备写表(TBL)中的数据,可以向远程站点写最多16个字节的信息

XMT TBL,PORT

用于自由端口模式。指定激活发送数据缓冲区(TBL)中的数据,数据缓冲区的第一个数据指明了要发送的字节数,PORT指定用于发送的端口

TBL:VB,IB,QB,MB,SB,SMB,*VD,*AC,*LD

PORT:常数(CPU221/222/224为0;CPU226为0或1)

RCV TBL,PORT

激活初始化或结束接收信息的服务。通过指定端口(PORT)接收的信息存储于数据缓冲区(TBL),数据缓冲区的第一个数据指明了接收的字节数

GPA ADDR,PORT

读取PORT指定的CPU口的站地址,将数值放入ADDR指定的地址中

ADDR:VB,IB,QB,MB,SB,SMB,LB,AC,*VD,*AC,*LD

在SPA指令中ADDR还可以是常数

PORT:常数

SPA ADDR,PORT

将CPU口的站地址(PORT)设置为ADDR指定的数值

时钟指令

TODR T

读当前时间和日期并把它装入一个8字节的缓冲区(起始地址为T)

T:VB,IB,QB,MB,SB,SMB,LB,*VD,*AC,*LD

TODW T

将包含当前时间和日期的一个8字节的缓冲区(起始地址是T)装入时钟

高速计数器指令

HDEF HSC,MODE

为指定的高速计数器分配一种工作模式。每个高速计数器使用之前必须使用HDEF指令,且只能使用一次

HSC:常数(0~5)

MODE:常数(0~11)

HSC N

根据高速计数器特殊存储器位的状态,按照HDEF指令指定的工作模式,设置和控制高速计数器。N指定了高速计数器号

N:常数(0~5)

高速脉冲输出指令

PLS Q

检测用户程序设置的特殊存储器位,激活由控制位定义的脉冲操作,从Q0.0或Q0.1输出高速脉冲

可用于激活高速脉冲串输出(PTO)或宽度可调脉冲输出(PWM)

Q:常数(0或1)

PID回路指令

PID TBL,LOOP

运用回路表中的输入和组态信息,进行PID运算。要执行该指令,逻辑堆栈顶(TOS)必须为ON状态。TBL指定回路表的起始地址,LOOP指定控制回路号

回路表包含9个用来控制和监视PID运算的参数:过程变量当前值(PVn),过程变量前值(PVn-1),给定值(SPn),输出值(Mn),增益(Kc),采样时间(Ts),积分时间(Ti),微分时间(Td)和积分项前值(MX)

为使PID计算是以所要求的采样时间进行,应在定时中断执行中断服务程序或在由定时器控制的主程序中完成,其中定时时间必须填入回路表中,以作为PID指令的一个输入参数

TBL

热心网友 时间:2022-05-12 05:38

爱情金刚二百兆应该指令功能,我认为这能搞这些人共同所有这个这个还分不能告诉他,真的麻烦你用反而机子。

热心网友 时间:2022-05-12 07:13

Plc置顶功能是可以直接通过里面的编程,然后编为程序之后就可以通过里面去进行检测并运作了。

热心网友 时间:2022-05-12 09:04

27跟200 plc指令功能,我不知道是什么意思?你还上百度搜一搜,或者问问其他人

热心网友 时间:2022-05-12 11:12

你要查询一下,看说明手册。一般你买的嗯,飘摇软件的话,他都是有说明书的,在那上面说明书就可以了。
声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。
E-MAIL:11247931@qq.com