首页 > 技术服务 > 技术问答

西门子S7-200 SMART的数据寻址

2019-04-22 16:56:50 图灵智控 已读

如何调用开关量或模拟量信号?

怎样读取数据?

怎么使用输入信号?

如何输出控制?.......

面对以上这些问题,是不是感觉头又大了呢,其实这些问题呢都是关于如何访问和使用数据,用一个词就是“寻址”.

访问S7-200 SMART 中的数据

  S7-200 SMART从外部接收信号输入(输入数据),在内部按照用户程序运算、处理后,再输出进行各种控制、显示。

 CPU 将信息存储在不同存储单元,每个位置均具有唯一的地址。寻址时,数据地址以代表存储区类型的字母开始,随后是表示数据长度的标记,然后是存储单元编号;对于二进制位寻址,还需要在一个小数点分隔符后指定位编号。

位寻址的举例如下图所示:

image.png

其中,存储区和字节地址(“M3”)代表 M 存储器的第 3 个字节,用句点(“.”)与位地址(位 4)分开。

字节寻址的举例如下图所示:

image.png

可以看出,VW100包括VB100和VB101;VD100包括VW100和VW102,即VB100,VB101,VB102,VB103这4个字节。这些地址是互相交叠的。

当涉及到多字节组合寻址时,遵循“高地址,低字节”的规律。

下表给出了不同数据长度可表示的整数值范围。不同数据长度表示的十进制和十六进制数范围

表示方式

字节(B)

字(w)

双字 (DW)

无符号整数

0255

160016FF

065535

16000016FFFF

04,294,967,295

160000000016FFFFFFFF

有符号整数

-128+127

1680167F

-32768+32767

168000167FFF

-2147483648+2147483647

168000 0000167FFF FFFF

实数(IEEE32位浮点数)

不适用

不适用

+1.175495E-38 +3.402823E+38(正数)

-1.175495E-38-3.402823E+38 (负数)

几乎所有的指令、功能都与各种形式的寻址有关,不弄清楚数据寻址会给工作带来极大的困难。

对本地 I/O 和扩展 I/O 进行寻址

CPU 提供的本地 I/O 具有固定的 I/O 地址。可以通过在 CPU 的右侧连接扩展 I/O 模块,或通过安装信号板来增加 I/O 点。 模块点的地址取决于 I/O 类型和模块在 I/O 链中的位置。

注意:

数字量 I/O 的过程映像寄存器空间总是以八位(一个字节)递增的形式预留。 如果模块没有为每个保留字节中的每一位提供相应的物理点,那些未使用的位就无法分配给 I/O 链中的后续模块。 对于输入模块,这些未使用的位会在每个输入更新周期中被清零。

模拟量 I/O 点总是以两点递增的方式分配。 如果模块没有为这些点分配相应的物理 I/O,则这些 I/O 点将丢失,并且不能够分配给 I/O 链中的后续模块。

下表提供固定映射惯例的示例(由 STEP 7 Micro/WIN SMART 建立,并作为系统块中I/O 组态的一部分下载)。


CPU

信号板

信号模块 0

信号模块 1

信号模块 2

信号模块 3

起始地址

I0.0
Q0.0

I7.0
Q7.0
AI SB
AQ12

I8.0
Q8.0
AI16
AQ16

I12.0
Q12.0
AI32
AQ32

I16.0
Q16.0
AI48
AQ48

I20.0
Q20.0
AI64
AQ64

以上就是西门子S7-200 SMART的数据寻址的方式 ,《S7-200 SMART系统手册》上关于PLC概念的第四章,其中对于S7-200 SMART中数据寻址的叙述非常好,建议初学者必读!更多推荐:

《西门子S7-1200PLC》