EtherCAT 如何支持不同的网络拓扑?
假设一个纯 EtherCAT 网络没有任何标准的以太网交换机、集线器等……使事情复杂化,并且有一个主站和多个从站。
一些消息来源将其描述为仅支持环形拓扑(即维基百科),考虑到操作理论,这是有道理的,但 EtherCAT 网站表示它也支持其他拓扑。
100BaseTX 以太网电缆包含两个半双工链路,每个方向一个;当被视为半双工链路的图表时,EtherCAT 是否始终是环形总线,但当被视为物理以太网电缆的图表时,该图表几乎可以是任意的?
EtherCAT 如何支持不同的网络拓扑?
假设一个纯 EtherCAT 网络没有任何标准的以太网交换机、集线器等……使事情复杂化,并且有一个主站和多个从站。
一些消息来源将其描述为仅支持环形拓扑(即维基百科),考虑到操作理论,这是有道理的,但 EtherCAT 网站表示它也支持其他拓扑。
100BaseTX 以太网电缆包含两个半双工链路,每个方向一个;当被视为半双工链路的图表时,EtherCAT 是否始终是环形总线,但当被视为物理以太网电缆的图表时,该图表几乎可以是任意的?
这是正确的。
从物理上看,可以有很多拓扑结构:菊花链、星形、树形等。例如,您可以使用 Beckhoff EK1122 模块创建一个三分支星形拓扑。从逻辑上讲,EtherCAT 帧通过的所有节点(主节点和从节点)都有一条确定的路径。这形成了一个环,因为主机是启动所有帧的源,也是所有帧将返回的最终目的地。
EtherCAT“环路”是一组连接的从设备,每个设备最多可以连接四个相邻设备。这四个可能的连接称为端口,编号为 0-3。端口 0 是“上游”连接,我通常将其描述为连接到从设备的父设备,端口 1 通常是“直通”路径。
以总线耦合器 (EK1100) 为例,它具有:
为了进行比较,EBUS 接头具有:
总线扩展 (EK1110) 具有:
这些连接形成了一个图,其中每个从节点都是一个节点,只有一个父节点和最多三个子节点。图中的每条边代表两个端口之间的双向以太网连接。一旦你建立了这个连接的从属图,自动递增编号方案会从树的深度优先遍历产生,用下一个空闲编号对每个新的从属进行编号。沿端口 1、端口 3、端口 2 探索子图(不知道为什么是这个顺序)。
所以,是的,每个半双工链路在通过网络传输数据包的过程中只遍历一次,这意味着它可以被视为一个半双工链路的环,每个从站到从站的连接出现在环上的两个地方(每个遍历方向一次)。
(一些附加信息)
如果您查看 EtherCAT 主站寻址其从站的方式,您会发现即使您有菊花链拓扑,电报传输的行为也像线拓扑。这是因为主站对总线上存在的所有从站进行计数,并为它们分配一个自动增量地址(在第一阶段)。这就是奴隶如何处理电报的顺序。所以主机将电报传递给slave1,它把它的数据动态放入它的部分并传递给slave2,依此类推。最后一个从站关闭总线并发送回电报。在用户手册中,他们有时会使用“快捷方式”这个词。
所以物理上你可以拥有几乎所有你想要的拓扑,但逻辑上你有一条线。如果您想要冗余,您可以将最后一个从站连接到主站的第二个 EtherCAT 端口。这将为您提供一个真正的环形拓扑,并且总线在从属设备出现故障的情况下仍然可以工作(不包括有缺陷的从属设备)。
正如 Eric Z 上面回答的那样,它可能是物理线、环、星或树。他说,数据包将通过一个逻辑环。但他没有说这是如何实现的,请参阅我对他的回答的评论。因此,我深入挖掘并找到了这篇文章:
http ://digital.ni.com/public.nsf/allkb/3399C1A0211EDC14862580140065286B
其中描述了构建星形(或树)需要“专用 EtherCAT 连接点” :
星星:
这是许多 EtherCAT® 新手最熟悉的拓扑,因为它类似于使用集线器的常规以太网网络。但是,要实现这一点,您将需要一个专用的 EtherCAT® 接头。因此,它可能比环或线路更昂贵。此外,这种拓扑结构会比其他拓扑结构稍微慢一些,因为有更多的间隙节点必须在端节点之间重复消息(例如,对于从主节点到从节点的 EtherCAT® 数据包,它必须首先通过连接点/集线器,这将引入一个小的延迟)。事实上,EtherCAT® 星型拓扑与传统的星型拓扑不同——它实际上是一种线型拓扑,其中数据通过 junction 端口 1,到达其末端从站并返回到 junction,然后以相同方式通过 junction 端口 2 .
搜索“EtherCAT junction”时,我发现
https://www.beckhoff.com/english.asp?ethercat/ek1122.htm
这实际上是 Eric Z 提到的产品,一个 2 端口 EtherCAT junction。还有 8 端口设备,https://www.beckhoff.com/english.asp?pc_cards_switches/cu1128.htm