西门子的plc的存储区按照什么编址

2023-03-29 10:11 综合百科 0阅读 投稿:小七

西门子的存储结构,特别是位的存储结构有点特殊,和我们平常理解的数学数字不一样。比如说:我们正常的数学数字的理解:

从1 到 10:

1、2、3、4、5、6、7、8、9、10

第一位是1,第10位是10。

但是在西门子PLC里面,特别是位存储里面,不是这样排列的,它是第一位是高位,最后一位是低位。比如说MB0:

位存储器:m0.7 m0.6 m0.5 m0.4 m0.3 m0.2 m0.1 m0.0

在内存中顺序:0位 1位 2位 3位 4位 5位 6位 7位

第一位存储位0位放的是最高位M0.7,最后一位存储位7位存放的是低位m0.0。

MW0第一个字节存储单元:MB0,第二个字节存储单元:MB1。MD0的排列顺序是:第一位mw0,第二位MW2。它们也符合这个规律。

下面我们就在SETP 7里面的仿真器里面测试一下:


西门子的plc的存储区按照什么编址图1

我们给M3.0置位,然后mw2的值和MD0的值为1,说明MB3.0就是最低位。


西门子的plc的存储区按照什么编址图2

我们给M2.0置位,MD值为256,相当于255+1,它就是二进制数"1 00000000",相当于二进制数“11111111 + 1”。所以MD数值的第8位就是M2.0。


西门子的plc的存储区按照什么编址图3

再给m2.7置位,MD的数值为2的15次方,等于32768,相当于二进制“10000000 0000000”就是MD的第16位。


西门子的plc的存储区按照什么编址图4


给m1.0置位,相当于二进制“1 00000000 00000000”,MD数值为65536,MW2的值为0,MW0的值为1,说明MW0在内存的高位,MW2在内存低位。


西门子的plc的存储区按照什么编址图5

同样的,给M0.0置拉,相当于二进制数“00000001 00000000 00000000 00000000”,mw0为256,相当于“1 00000000”,mw2值为0,相当于”00000000 00000000“。MD值是2的24次方。

对于MD0来讲,当mb0.7为1,MD0的值是2的31次方,MB0.7是最高位,当M3.0为1,其它为零,则MD0的值为1,是2的0次方,M3.0是md0的最低位

对于mw0来讲,最低位是M1.0,最高位是m0.7。

对于mw2来讲,最低位是M3.0,最高位是m2.7。

对于mb0来讲,最低位是m0.0,最高位是m0.7。

以此类推。

根据上面的测试,我们得出:

在一个字节里面,M0.0的存储位置是在最右边,m0.7的存储位置在最左边。

MW和MD也一样。

我们可以这样理解,比如十进制的234,排在最左边的是个位,然后是十位,最后百位,也符合这个规则,在看字节的时候,我们就把右边的看成个位,然后依次越往左,位越高,这样是不是好理解了。

声明:若水百科所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流。若您的权利被侵害,请联系youzivr@vip.qq.com