PROFIBUS DPV1 增强功能为 PROFIBUS DPV1 主站与 DPV1 从站之间的非循环数据交换提供了额外的支持。可以通过它来访问 %MW 变量。
要在 PROFIBUS DPV1 主站和 TM4PDPS1 模块之间使用这些功能,参数 DPV1Enable 必须设置为 TRUE(缺省值)。
逻辑控制器中的数据寻址为 %MW。
控制器的 Profibus 状态 必须处于运行状态,因此即使逻辑控制器未运行也可以对其进行更新。
每当接收到 DPV1 消息,I/O 驱动程序就会自动更新 %MW 变量。
它基于 PROFIBUS DPV1 读写功能。
逻辑地址是寻址到的 %MW 的编号。
非循环交换有 2 种不同的寻址类型:
寻址类型 |
用于读/写 %MW 变量的请求数 |
描述 |
---|---|---|
直接寻址 |
1 |
%MW 变量的地址由插槽和索引字段直接编码。请参阅下面注释中的限制。 |
间接寻址 |
2 |
o第一个请求发送主站将要读取或写入的第一个 %MW 的地址。 o第二个请求读取或写入 %MW 变量的一个或多个值。 |
注意:
下列限制适用于直接寻址:
o插槽字段(DU1):不允许值 0xFF
o索引字段 (DU2):不允许值 0xFF、0xE9 和 0xEA
下表显示如何创建用于从 PROFIBUS DPV1 主站访问 %MW 的请求:
寻址 |
DU0:DPV1 功能编号 |
DU1:插槽 |
DU2:索引 |
DU3:长度(以字节为单位) |
DPV1 数据帧 |
|
---|---|---|---|---|---|---|
1 字节 |
1 字节 |
1 字节 |
1 字节 |
N 字节 |
||
直接寻址 |
写入 |
5F 十六进制(写入) |
%MW 地址的 MSB |
%MW 地址的 LSB |
待读取长度 |
待写入值 |
读取 |
5F 十六进制(读取) |
%MW 地址的 MSB |
%MW 地址的 LSB |
待写入长度 |
– |
|
间接寻址 |
发送地址(步骤 1) |
5F 十六进制(写入) |
1 |
E9(十六进制) |
2 |
%MW 地址 |
读取(步骤 2) |
5F 十六进制(读取) |
1 |
EA(十六进制) |
待读取长度 |
– |
|
写入(步骤 2) |
5F 十六进制(写入) |
1 |
EA(十六进制) |
待写入长度 |
待写入值 |
注意: 长度字段应为偶数值(一个 %MW 的长度为 2 个字节)。