假设我有6个智能设备,全部通过数据链路(每个设备可以是两个串行端口)端到端地连接在一起。每个设备都有唯一的ID编程,我们希望每个设备都能计算出它在设备链中的位置。因此,有了6个设备,我的菊花可能看起来像:
-901-905-902-903-906-904-
在“发现”算法的末尾,每个设备将具有上面的映射,并且知道它在其左侧和右侧连接到哪个设备,如果有终端设备的话。除了唯一的ID之外,每个设备将运行相同的软件,并且彼此是相同的。
有没有一种简单的方法可以在不变得太复杂的情况下做到这一点?链中的设备数量可以是可变的,但最多为6个。
发布于 2015-08-28 05:29:49
这听起来与ARP resolution非常相似。由于最多只有6个设备,因此将请求广播到网络(即每个设备)的基本算法可能是最简单的方式。同样,线性传递请求也不会花费太多时间。
如果它们是具有MAC地址的网络设备,您甚至可以利用这些唯一的ID,而不是创建自己的ID,如果这很有用的话。
https://stackoverflow.com/questions/32259193
复制相似问题