• 沒有找到結果。

PLC 概念 3

3.2 数据存储、存储区和寻址

CPU 提供了以下几个选项,用于在执行用户程序期间存储数据:

● 全局储存器: CPU 提供了各种专用存储区,其中包括输入 (I)、输出 (Q) 和位存储器 (M)。 所有代码块可以无限制地访问该储存器

● 数据块 (DB): 可在用户程序中加入 DB 以存储代码块的数据。 从相关代码块开始执 行一直到结束,存储的数据始终存在。 “全局”DB 存储所有代码块均可使用的数据,

而背景 DB 存储特定 FB 的数据并且由 FB 的参数进行构造。

● 临时存储器: 只要调用代码块,CPU 的操作系统就会分配要在执行块期间使用的临 时或本地存储器 (L)。 代码块执行完成后,CPU 将重新分配本地存储器,以用于执行 其它代码块。

每个存储单元都有唯一的地址。 用户程序利用这些地址访问存储单元中的信息。

长沙工控帮教育科技有限公司整理

存储区 说明 强制 保持性

访问 CPU 存储区中的数据

位 Q[字节地址].[位地址] Q1.1

字节、字或双字 Q[大小][起始字节地址] QB5、QW10、QD40

通过在地址后面添加“:P”,可以立即写入 CPU、SB 或 SM 的物理数字和模拟输出。 使用 Q_:P 访问与使用 Q 访问的区别是,前者除了将数据写入输出过程映像外还直接将数据写 入被访问点(写入两个位置)。 这种 Q_:P 访问有时称为“立即写”访问,因为数据是被直 接发送到目标点;而目标点不必等待输出过程映像的下一次更新。

因为物理输出点直接控制与其连接的现场设备,所以不允许对这些点进行读访问。 即,

与可读或可写的 Q 访问不同的是,Q_:P 访问为只写访问。

Q_:P 访问也仅限于单个 CPU、SB 或 SM 所支持的输出大小(向上取整到最接近的字 节)。 例如,如果 2 DI/2 DQ SB 的输出被组态为从 Q4.0 开始,则可按 Q4.0:P 和 Q4.1:P 形式或者按 QB4:P 形式访问输出点。不会拒绝 Q4.2:P 到 Q4.7:P 的访问形式,

但没有任何意义,因为这些点未使用。 但不允许 QW4:P 和 QD4:P 的访问形式,因为它 们超出了与该 SB 相关的字节偏移量。

使用 Q_:P 访问既影响物理输出,也影响存储在输出过程映像中的相应值。

位 Q[字节地址].[位地址]:P Q1.1:P

字节、字或双字 Q[大小][起始字节地址]:P QB5:P、QW10:P 或 QD40:P

M(位存储区): 针对控制继电器及数据的位存储区(M 存储器)用于存储操作的中间 状态或其它控制信息。 可以按位、字节、字或双字访问位存储区。 M 存储器允许读访问 和写访问。

位 M[字节地址].[位地址] M26.7

字节、字或双字 M[大小][起始字节地址] MB20、MW30、MD50

临时(临时存储器): CPU 根据需要分配临时存储器。 CPU 在代码块启动(对于 OB)

长沙工控帮教育科技有限公司整理

临时存储器与 M 存储器类似,但有一个主要的区别: M 存储器在“全局”范围内有效,而 临时存储器在“局部”范围内有效:

● M 存储器: 任何 OB、FC 或 FB 都可以访问 M 存储器中的数据,也就是说这些数据 可以全局性地用于用户程序中的所有元素。

● 临时存储器: 只有创建或声明了临时存储单元的 OB、FC 或 FB 才可以访问临时存储 器中的数据。 临时存储单元是局部有效的,并且不会被其它代码块共享,即使在代码 块调用其它代码块时也是如此。 例如: 当 OB 调用 FC 时,FC 无法访问对其进行调 用的 OB 的临时存储器。

CPU 为三个 OB 优先级组中的每一个都提供了临时(本地)存储器:

● 16 KB 用于启动和程序循环(包括相关的 FB 和 FC)

● 4 KB 用于标准中断事件(包括 FB 和 FC)

● 4 KB 用于错误中断事件(包括 FB 和 FC)

只能通过符号寻址的方式访问临时存储器。

DB(数据块): DB 存储器用于存储各种类型的数据,其中包括操作的中间状态或 FB 的其它控制信息参数,以及许多指令(如定时器和计数器)所需的数据结构。 可以指定 数据块为读/写访问还是只读访问。 可以按位、字节、字或双字访问数据块存储器。 读/写 数据块允许读访问和写访问。 只读数据块只允许读访问。

位 DB[数据块编号].DBX[字节地

址].[位地址]

DB1.DBX2.3

字节、字或双字 DB[数据块编号].DB [大小][起 始字节地址]

DB1.DBB4、

DB10.DBW2、

DB20.DBD8

长沙工控帮教育科技有限公司整理

对 CPU 和 I/O 模块中的 I/O 进行寻址

向组态画面添加 CPU 和 I/O 模块时,系统会自 动分配 I 地址和 Q 地址。

通过在组态画面中选择地址域并键入新编号,可 以更改默认寻址设置。 数字输入和输出按完整 的 8 位字节方式进行分配,无论模块是否使用 所有的点。 模拟输入和输出按每组 2 点(4 个 字节)的方式进行分配。 在此实例中,可以将 DI16 的地址改为 2..3 来替代 8..9。工具可以协 助您更改大小错误或与其它地址相冲突的地址范 围。

图中显示的实例是配有两个 SM 的 CPU 1214C。