使用结构化的 PLC 变量(S7-1200 V4 和更高版本/S7-1500)
为了便于查看程序内容,可以在一个较高级 PLC 变量中将多个输入/输出地址进行分组。 较高级的 PLC 变量是指一种包含多个逻辑上相关的输入/输出的结构。 调用块时,先传送较高级的变量,之后仅需所有相关输入/输出的输入/输出参数。
工作原理
要创建结构化的 PLC 变量,首先需要定义一个 PLC 数据类型 (UDT)。 并在该数据类型中声明所需的数据元素并指定它们的名称和数据类型。
然后,再切换到 PLC 变量表中并在此指定较高级的 PLC 变量。 选择 PLC 数据类型作为变量的数据类型。 从较高级变量的起始地址开始,系统现在将预留一定数量的输入或输出地址。 所预留的地址数量取决于 PLC 数据类型的长度。
如果调用一个块而且该块在程序执行中需要使用预留的输入或输出,则可将较高级变量传递为一个块参数。
对各个 PLC 变量的寻址方式与程序代码中的结构元素相同。
在以下章节中,将详细介绍各处理步骤:
应用示例
要对函数模块的输入或输出进行分组,可以使用结构化的 PLC 变量。 下图显示了 Motor 的语义表示: 在“Datatype_Motor”PLC 数据类型中,为三个输入中的每一个都创建一个元素。
但已声明变量的存储区域不能重叠。 在本示例中,“Speed”组件的数据类型为“Integer”,因此必须以字地址开始。 因此,第一个输入字将适用“Dummy”填充变量进行填充。 这意味着,“Speed”在第二个输入字中。

下图显示了基于“Data type_Motor”数据类型的较高级的“Motor”PLC 变量。 通过声明“Motor”,将在输入模块上预留地址 IW0 和 IW1。

下图显示了如何将“Motor”PLC 变量传输为“Motor_Control”块的输入参数。

可在“Motor_Control”块中寻址该变量的单个成员。
| 寻址 | 说明 |
|---|---|
| “Motor” | 寻址较高级别的 PLC 变量。 |
| 'Motor'.On | 寻址结构化 PLC 变量的成员。 |
| 'Motor'.On:P | 寻址 I/O 输入或输出(PI 或 PQ)。 |
使用结构化 PLC 变量的规则
创建和使用结构化 PLC 变量时应遵循的注意事项。
结构化 PLC 变量可用于“输入”(Inputs) 和“输出”(Outputs) 操作数区域。
结构化变量不能用于位存储器地址区域。
结构化 PLC 变量不能从 HMI 进行寻址。
创建结构化 PLC 变量
规则
创建结构化 PLC 变量时,应遵循以下规则:
对“Inputs”和“Outputs”操作数区域,使用不同的 PLC 数据类型。
结构化变量不能用于位存储器地址区域。
由于无法确保模块的过程映像进行同步更新,因此请勿在 PLC 数据类型中对不同模块的输入或输出进行分组。
步骤
要创建结构化 PLC 变量,请按以下步骤操作:
| 在项目树中,双击“PLC 数据类型”(PLC data types) 文件夹中的命令“新增数据类型”(Add new data type)。 这样,将创建并打开一个用于创建 PLC 数据类型的新声明表。 将所有所需元素都声明为 PLC 类型。 可以使用除“STRING”和“WSTRING”数据类型之外的其它所有数据类型。 在项目树中选择该 PLC 数据类型,然后在快捷菜单中选择命令“编译 > 软件(仅更改)”(Compile > Software (only changes))。 将编译 PLC 数据类型,然后在 PLC 变量表中使用。 即时是对现有 PLC 数据类型进行更改,也必须重新编译该程序。 这样,才会更新使用 PLC 数据类型的所有位置。 在相同的 CPU 中打开一个 PLC 变量表。 声明一个新变量或选择一个现有变量。 在“数据类型”(Data type) 列中,选择 PLC 数据类型并将其分配给该 PLC 变量。 该 PLC 变量将采用 PLC 数据类型的结构。 并自动分配一个相应地址。 结构化的 PLC 变量始终从字地址开始。 |
上一篇:PWM调制的那些事儿
下一篇:西门子博途之POINTER 类型的参数
推荐阅读最新更新时间:2026-03-23 01:00
- 边缘计算主机盒选购指南:五大核心指标解析
- Arm AGI CPU 更多细节:台积电 3nm 制程、Neoverse V3 微架构
- Arm AGI CPU 重磅发布:构筑代理式 AI 云时代的芯片基石
- Arm 拓展其计算平台矩阵,首次跨足芯片产品
- 阿里达摩院发布RISC-V CPU玄铁C950,首次原生支持千亿参数大模型
- 边缘 AI 加速的 Arm® Cortex® ‑M0+ MCU 如何为电子产品注入更强智能
- 阿里达摩院发布玄铁C950,打破全球RISC-V CPU性能纪录
- VPU中的“六边形战士”:安谋科技Arm China发布“玲珑”V560/V760 VPU IP
- 利用锚定可信平台模块(TPM)的FPGA构建人形机器人安全
- LT3088IDD 宽安全工作区电源的典型应用
- 使用 Analog Devices 的 LT3663IDCB-3.3 的参考设计
- ADR425 可编程 DAC 参考的典型应用
- LT4276BIUFD 25.5W(类型 2)PoE+ 电源在反激模式下的典型应用电路,具有 24V、1A 输出
- 具有浪涌电流限制的低待机损耗功率前端
- LT4275AHMS IEEE 802.3at(类型 2)25.5W 受电设备的典型应用电路
- 采用 MSP430 电容式触控 MCU、触觉元件和 LCD 的 MSP432 MCU 参考设计
- 具有 6uA 反向泄漏电流的 LT1767EMS8E-3.3 双源电源的典型应用电路
- DER-282 - 使用HiperLCSTM LCS700HG设计的100 W超薄 (11 mm) LLC DC-DC转换器
- UART转USB桥接器
- evc与visual studio 2008共存的问题
- verilog SOS
- 【大学生电子竞赛题目分析】——2019年全国赛G题《双路语音同传的无线收发系统》
- j-link调试外部norflash的程序的时候,需要怎么配置?
- 怎么使用NAND FLASH 的MULTI_PLANE Program 功能???
- USB Type-c充电听歌二合一转接器方案
- 有奖问答|旋智科技—高性能、高集成电机控制解决方案
- c6657怎么struct对齐
- 编译uboot时报错:error: expected declaration specifiers or '...' before ***
- 国家精品课程交大电路课件全套320 绝对的经典课件!!!!

DVP-ES3 PLC使用手册
RSlogix5000 安装
基于i.MX93的soft PLC源码及可执行代码
非常经典的关于LLC的杨波博士论文
XC6406PP60DL






京公网安备 11010802033920号