新闻
三明西门子(中国)授权总代理商
2023-03-21 13:42  浏览:46
三明西门子(中国)授权总代理商

三明西门子(中国)授权总代理商

 1.区间复位指令

区间复位指令ZRST(P)的编号为FNC40。它是将指定范围内的同类元件成批复位。如图3-53所示,当M8002由OFF→ON时,位元件M500~M599成批复位,字元件C235~C255也成批复位。

图3-53  区间复位指令的使用

使用区间复位指令时应注意:

1)[D1.]和[D2.]可取Y、M、S、T、C、D,且应为同类元件,同时[D1]的元件号应小于[D2]指定的元件号,若[D1]的元件号大于[D2]元件号,则只有[D1]指定元件被复位。

2)ZRST指令只有16位处理,占5个程序步,但[D1.][D2.]也可以指定32位计数器。

2.译码和编码指令

(1)译码指令DECO   DECO(P) 指令的编号为FNC41。如图3-54所示,n=3 则表示[S.]源操作数为3位,即为X0、X1、X2。其状态为二进制数,当值为011时相当于十进制3,则由目标操作数M7~M0组成的8位二进制数的第三位M3被置1,其余各位为0。如果为000则M0被置1。用译码指令可通过[D.]中的数值来控制元件的ON/OFF。

图3-54  译码指令的使用

使用译码指令时应注意:

1)位源操作数可取X、T、M和S,位目标操作数可取Y、M和S,字源操作数可取K,H,T,C,D,V和Z,字目标操作数可取T,C和D。

2)若[D.]指定的目标元件是字元件T、C、D,则n≦4;若是位元件Y、M、S,则n=1~8。译码指令为16位指令,占7个程序步。

(2)编码指令ENCO  ENCO(P)指令的编号为FNC42。如图3-55所示,当X1有效时执行编码指令,将[S.]中高位的1(M3)所在位数(4)放入目标元件D10中,即把011放入D10的低3位。

图3-55  编码指令的使用

    使用编码指令时应注意:

1)源操作数是字元件时,可以是T、C、D、V和Z;源操作数是位元件,可以是X、Y、M和S。目标元件可取T、C、D、V和Z。编码指令为16位指令,占7个程序步。

2)操作数为字元件时应使用n≦4,为位元件时则n=1~8,n=0时不作处理。

3)若指定源操作数中有多个1,则只有高位的1有效。

3. ON位数统计和ON位判别指令

(1)ON位数统计指令SUM  (D)SUM(P)指令的编号为FNC43。该指令是用来统计指定元件中1的个数。如图3-56所示,当X0有效时执行SUM指令,将源操作数D0中1的个数送入目标操作数[D2中,若D0中没有1,则零标志M8020将置1。

图3-56  ON位数统计和ON位判别指令的使用

使用SUM指令时应注意:

1)源操作数可取所有数据类型,目标操作数可取KnY,KnM,KnS,T,C,D,V和Z。

2)16位运算时占5个程序步,32位运算则占9个程序步。

(2)ON位判别指令BON   (D)BON(P)指令的编号为FNC44。它的功能是检测指定元件中的指定位是否为1。如图3-56所示,当X1为有效时,执行BON指令,由K4决定检测的是源操作数D10的第4位,当检测结果为1时,则目标操作数M0=1,否则M0=0。

使用BON指令时应注意:

1)源操作数可取所有数据类型,目标操作数可取Y、M和S。

2)进行16位运算,占7程序步,n=0~15;32位运算时则占13个程序步,n=0~31。

4.平均值指令

    平均值指令(D)N(P)的编号为FNC45。其作用是将n个源数据的平均值送到指定目标(余数省略),若程序中指定的n值超出1~64的范围将会出错。

5.报警器置位与复位指令

报警器置位指令ANS(P)和报警器复位指令ANR(P)的编号分别为FNC46 和FNC47。如图3-57所示,若X0和X1同时为ON时超过1S,则S900置1;当X0或X1变为OFF,虽定时器复位,但S900仍保持1不变;若在1S内X0或X1再次变为OFF则定时器复位。当X2接通时,则将S900~S999之间被置1的报警器复位。若有多于1个的报警器被置1,则元件号低的那个报警器被复位。

图3-57   报警器置位与复位指令的使用

使用报警器置位与复位指令时应注意:

1)ANS指令的源操作数为T0~T199,目标操作数为S900~S999,n=1~32767’; ANR指令无操作数。

2)ANS为16位运算指令,占7的程序步;ANR指令为16位运算指令,占1个程序步。

3)ANR指令如果用连续执行,则会按扫描周期依次逐个将报警器复位。

6.二进制平方根指令

二进制平方根指令(D)SQR(P)的编号为FNC48。如图3-58所示,当X0有效时,则将存放在D45中的数开平方,结果存放在D123中(结果只取整数)。

图3-58  二进制平方根指令的使用

   使用SQR指令时应注意:

1)源操作数可取K、H、D,数据需大于0,目标操作数为D。

2)16位运算占5个程序步,32位运算占9个程序步。

7.二进制整数→二进制浮点数转换指令

二进制整数→二进制浮点数转换指令(D)FLT(P)的编号为FNC49。如图3-59所示,当X1有效时,将存入D10中的数据转换成浮点数并存入D12中。

图3-59  二进制整数→二进制浮点数转换指令的使用

使用FLT指令时应注意:

1)源和目标操作数均为D。

2)16位操作占5个程序步,32位占9个程序步。

1.A/B 相正交计数器原理    
       S7-200 plc高速计数器模式9﹑10﹑11支持A/B相正交计数器,其原理是判断A/B相正交脉冲输入信号A相超前或落后B相90度相位角,对应A/B相正交计数器增或减计数。
2.如何在S7-200 PLC中判断A/B相正交计数器方向
    根据以上原理,比较相邻两次定时中断采集的高速计数器当前值大小,我们可以在S7-200 PLC中判断A/B相正交计数器的方向。具体可参考以下三部分编程来实现:
       首先,设置定时中断时间(可设为0-255ms内任意值)并连接该中断。如下图1所示:


图1启用定时中断
    其次在相邻两次定时中断执行时,分别采集高速计数器当前值并将其传送到两个不同寄存器地址中,如下图2所示:


图2采集高速计数器当前值
    后,在程序中比较相邻两次定时中断采集的高速计数器当前值大小,即可实现S7-200PLC中A/B相正交计数器的方向判断。
注意:判断方向的时间间隔是设置的定时中断周期的两倍。如下图3所示:
(1) 状态1的高速计数器数值大于状态0的高速计数器数值,A/B相正交计数器增计数;
(2) 状态1的高速计数器数值小于状态0的高速计数器数值,A/B相正交计数器减计数。


图3 A/B相正交计数器方向判断


相关新闻
联系方式
公司:浔之漫智控技术-西门子PLC代理商
姓名:聂航(先生)
电话:15221406036
手机:15221406036
地区:直辖市-上海
地址:上海市松江区广富林路4855弄88号3楼
QQ:3064686604
微信:15221406036
15221406036 请卖家联系我
拨打电话
微信咨询
请卖家联系我