首页 > 立知

test什么意思(test什么指令)

小猫咪 立知 2022-03-09什么意思   指令   test

三菱FX5U的PLC指令中,我注意到2个比较新颖的指令,至少西门子200PLC中是没有这样的指令的,所以特意写了一段程序,来和大家分享一下。

这2个指令是BSET指令和TEST指令,且这两个在FX3U的PLC指令表中是没有的!

BSET(字软元件的位设置),这里的SET就是置位的意思,对指定的字元件的指定位置1。

TEST(位测试),这个位测试叫法挺新的,因为做PLC的人做I/O测试的时候对DI/DO点的测试,也算是对位的测试。三菱中的这个TEST(位测试)其实算是读出一个字软元件中的某一位的状态,并把这个状态写到一个指定的位软元件中去!

先看一个图片吧:

两个新颖的三菱PLC指令

M0接通三次时的程序截图

这个图片上边部分是SM402是一个初始脉冲,和西门子200PLC中的SM0.1一样,用来初始化程序,给D2一个二进制为2#1010 1010 1010 1010的初始值,给D0和D1的初始值都为0。

程序下边部分是BSET指令和TEST指令,还有一个INC指令,这个INC指令和西门子200PLC中的INC指令很像的,都是自加1指令,或者说是自增指令!---图片上为何都是MOVP,BSETP,TESTP,INCP,这些指令多一个P就代表是脉冲信号的意思!这里的M0第一次从off变为on的时候,三个指令都只执行一次!

这里先解释一下BSETP指令执行了3次,为何D1=7?

是因为D0的有效范围其实是十进制的0-15,因为BSET指令是字元件指令,所以16位中就是0-15。

在M0第一次为1时,D0=0,造成D1的值是2进制的2#0000 0000 0000 0001,而后下边的INCP指令执行才使得D0 1=0 1=1;

在M0第二次为1时,D0=1,造成D1的值是2进制的2#0000 0000 0000 0011,而后下边的INCP指令执行才使得D0 1=1 1=2;

在M0第三次为1时,D0=2,造成D1的值是2进制的2#0000 0000 0000 0111,也就是十进制的7,而后下边的INCP指令执行才使得D0 1=2 1=3;

所以BSET指令就是根据D0的值,把这个值看做是16位字长区域中的第几个位,然后将相应的位置位位1,因为是推进到下一位时,之前被置位的位依然是1!

再来看一个程序的动态监控图:

两个新颖的三菱PLC指令

程序监控动态图片

这个动态图片主要用来说明TEST指令,上边我说给D2的初始值是2#1010 1010 1010 1010,这个点就是造成Y0一次接通一次断开的原因!

因为TEST指令就是D0为几时,就把D2的相关位的值写到Y0中去!需要说明的是这里的D0=1的时候,其实是D2的第0位,也就是D2.0的值;D0=3时,是要询问D2的第三位也就的D2.2的值!

以上就是三菱FX5U中的两个比较新颖的指令的简单介绍,感谢阅读!

相关阅读:

  • 暨字怎么读(一个暨读什么意思)
  • 汐怎么读(汐字代表什么意思)
  • sstap怎么用(sstap不代理中国ip什么意思)
  • 回转火锅怎么样(回转什么意思)
  • 1手是多少股(股票火箭发射什么意思)
    • 网站地图 | 联系我们
    • 声明:这就到-知道你所不知道登载此文出于传递更多信息之目的,并不意味着赞同其观点或证实其描述。文章内容仅供参考,不做权威认证,如若验证其真实性,请咨询相关权威专业人士。