发布时间:2019-08-24 来源:众智博远
STEP 7 简化了符号编程。 用户为数据地址创建符号名称或“变量”,作为与存储器地址和 I/O 点相关的 PLC 变量或在代码块中使用的局部变量。 要在用户程序中使用这些变量,只需输入指令参数的变量名称。 为了更好地理解 CPU 的存储区结构及其寻址方式,以下段落将对 PLC 变量所引用的“”寻址进行说明。 CPU 提供了以下几个选项,用于在执行用户程序期间存储数据:
全局存储器: CPU 提供了各种专用存储区,其中包括输入 (I)、输出 (Q) 和位存储器 (M)。 所有代码块可以无限制地访问该储存器。
数据块 (DB): 可在用户程序中加入 DB 以存储代码块的数据。 从相关代码块开始执行一直到结束,存储的数据始终存在。 “全局”DB 存储所有代码块均可使用的数据,而背景 DB 存储特定 FB 的数据并且由 FB 的参数进行构造。
临时存储器: 只要调用代码块,CPU 的操作系统就会分配要在执行块期间使用的临时或本地存储器 (L)。 代码块执行完成后,CPU 将重新分配本地存储器,以用于执行其它代码块。
每个存储单元都有的地址。 用户程序利用这些地址访问存储单元中的信息。
对输入 (I) 或输出 (Q) 存储区(例如 I0.3 或 Q1.7)的引用会访问过程映像。 要立即访问物理输入或输出,请在引用后面添加“:P”(例如,I0.3:P、Q1.7:P 或 "Stop:P")。
强制仅将固定值写入物理输入 (Ix.y:P) 或物理输出 (Qx.y:P)。 要强制输入或输出,请在 PLC 变量或地址后面添加“:P”。 更多相关信息,请参见“强制 CPU 中的变量”。
列表: 存储区
存储区 | 说明 | 强制 | 保持性 |
---|---|---|---|
I I_:P1 | 在扫描周期开始时从物理输入复制 | 否 | 否 |
立即读取 CPU、SB 和 SM 上的物理输入点 | 是 | 否 | |
Q Q_:P1 | 在扫描周期开始时复制到物理输出 | 否 | 否 |
立即写入 CPU、SB 和 SM 上的物理输出点 | 是 | 否 | |
M | 控制和数据存储器 | 否 | 是 |
L | 存储块的临时数据,这些数据仅在该块的本地范围内 | 否 | 否 |
DB | 数据存储器,同时也是 FB 的参数存储器 | 否 | 是 |
1 要立即访问(或强制)物理输入和物理输出,请在地址或变量后面添加“:P”(例如,I0.3:P、Q1.7:P 或 "Stop:P")。
每个存储单元都有的地址。 用户程序利用这些地址访问存储单元中的信息。 地址由以下元素组成:
存储区(如 I、Q 或 M)
要访问的数据的大小(如“B”表示 Byte 或“W”表示 Word)
数据地址(如 Byte 3 或 Word 3)
访问布尔值地址中的位时,不要输入大小的助记符号。 仅需输入数据的存储区、字节位置和位位置(如 0.0、Q0.1 或 M3.4)。
存储区的地址: | ||
A | 存储区标识符 | |
B | 字节地址: 字节 3 | |
C | 分隔符(“字节.位”) | |
D | 位在字节中的位置(位 4,共 8 位) | |
E | 存储区的字节 | |
F | 选定字节的位 |
本示例中,存储区和字节地址(M 代表位存储区,3 代表 Byte 3)通过后面的句点(“.”)与位地址(位 4)分隔。
向设备组态添加 CPU 和 I/O 模块时,STEP 7 会自动分配 I 地址和 Q 地址。 通过在设备组态中选择地址字段并输入新编号,可以更改默认寻址设置。
|
图中显示的示例是配有两个 SM 及一个 SB 的 CPU 1214C。 在此示例中,可以将 DI8 模块的地址改为 2 来替代 8。工具可以协助您更改大小错误或与其它地址相冲突的地址范围。