EtherCAT:APRD/APWR 是什么意思?
- APRD 表示自动递增物理读(Auto-Increment Physical Read)。
- APWR 表示自动递增物理写(Auto-Increment Physical Write)
这些是 EtherCAT 主站发出并发送给 EtherCAT 从站的底层请求。
它们使用物理地址(而非逻辑地址)对从站内存执行读和写操作。
主站根据从站在菊花链中的位置编号来选择从站。
使用 APRD/APWR 进行读/写的过程称为按位置物理读/写,其中按位置指的是按从站在菊花链中的位置进行寻址,而不是按从站已配置的站点地址(主站可在初始化期间选择该地址)进行寻址。
当你拥有的是站点地址而非物理位置时,可以使用 FPRD 命令。
“自动递增"是什么意思?
自动递增与递增要读/写的物理内存地址毫无关系。
它指的是每个从站自动将请求的地址字段加 1。如果某个从站收到值为 0 的从站地址字段(正式名称为 Ordinal Device Number),它会处理该请求,并将地址字段设为 1 后转发给下一个从站。
重要提示: 没有任何从站会改变请求的物理内存地址字段。这是一个常见的误解,物理地址由主站固定,从站绝不能修改。
示例
如果主站想要寻址第 3 个从站,它会发送一个地址设为 -2 的请求。链中的前两个从站会将其递增为 -1,再递增为 0(但不处理该请求),此时第 3 个从站会看到地址为 0,处理该请求,并以地址 1 继续转发,依此类推。
来源: ETG1000.3 V1.0.32——需要免费的 ETG 会员资格。
- 示例位于第
4.3.2 Position addressing节 - 名称的含义见表格 `3.4
Check out similar posts by category:
EtherCAT
If this post helped you, please consider buying me a coffee or donating via PayPal to support research & publishing of new posts on TechOverflow