在巡视窗口的“属性 > IO 变量”(Properties > IO tags) 下方,将显示包含多个元素的用户自定义数据结构。这些 UDT (User Defined Structure) PLC 数据类型的显示与其它简单 IO 变量不同。
在 I/O 变量表中显示 UDT
在组合列中显示结构化的 PLC 变量(占用模块的地址空间)时,将一同显示它们所包含的数据项。所占用的地址范围将通过竖线指示,各个地址则采用小菱形符号进行表示。
在显示由 UDT 地址范围分配的 IO 模块通道地址时,将使用以下符号:
符号 | 含义 |
---|---|
数据项地址范围的起始位置,涵盖多个通道。 将使用整个通道的地址范围。 | |
数据项的部分地址范围,涵盖多个通道。 将使用整个通道的地址范围。 | |
数据项地址范围的结束位置,涵盖多个通道。 将使用整个通道的地址范围。 | |
数据项的整个地址范围,涵盖所用通道的所有地址范围。 示例:仅将一个通道的输入字全部应用于某个数据项。 | |
数据项地址范围的起始位置,涵盖多个通道。 仅使用该通道的部分地址范围。 | |
数据项地址范围的结束位置,涵盖多个通道。 仅使用该通道的部分地址范围。 | |
某个数据项的整个地址范围。仅使用该通道地址的部分。 示例:只分配一个字的个字节。 | |
某个数据项的整个地址范围。仅使用该通道地址的第二部分。 示例:只分配一个字的第二个字节。 | |
单通道中单个数据项的单一地址,仅包含一个地址。 示例:访问数字量输入中通道地址的各个位。 | |
单通道中单个数据项的单一地址,包含多个地址。 示例:访问模拟量输入中通道地址的各个位。 |
应用示例
下图显示一个变量表,其中包含一个 UDT“Motor”PLC 数据类型及其数据项“Start”、“Stop”和“Dummy”:
对于输入地址 I0.0 到 I3.7 的 DI32 输入模块,在巡视窗口的 IO 变量中将显示一个组合栏“Motor ("MotorUDT")”。该组合列中包含一个 UDT“Motor”地址区域列和一个 UDT:“Motor.Dummy”,“Motor.Start”及“Motor.Stop”数据项列。数据项“Status”从地址 I4.0 处开始,且不显示该输入模块的 IO 变量中。这是因为,32 个数字量通道的地址范围为 I0.0 到 I3.7。变量“ErrorCode (Byte)”不属于该 UDT。因此,该变量不会显示在 UDT“Motor”下方的组合列中,而是单独显示一列:
在该模块中,UDT“Motor”所占的地址范围为 I0.0 到 I3.7。在该地址范围中,“Dummy”变量占用的地址范围为 I0.0 到 I1.7;变量“Start”和“Stop”分别占用地址 I2.0 和 I2.1。变量“ErrorCode (Byte)”不属于 UDT,在自己所在列中占用地址 I3.0 到 I3.7。
说明 在 IO 变量表中,仅显示选定设备地址范围内的数据;本示例中,为输入模块 DI32 的地址范围。如果连接另一个至少具有 16 个通道的 输入模块,则将在该地址分配后继续显示 UDT的扩展地址范围:UDT“Motor”的地址范围到地址 I5.7;其中状态数据项的地址范围为 I4.0 到 I5.7。数据项“Status”将占用各状态位的单个地址,从 I4.0 到 I4.7。系统将在 UDT 组合列中额外添加一列,显示这些状态位 |