我希望为交互式舞池制作15 x 15的负载传感器和RGB LED网格。每个节点将由arduino驱动,整个楼层将由RaspberryPi管理。我正在尝试找出使节点与Pi进行通信的最佳方法。理想情况下,网络应具有以下特征:
- 每节点成本低
- Raspberry Pi作为主节点,arduino节点作为从节点
- 知道每个节点在网格中的位置的能力
- 修复:如果某个节点发生故障,它并不能消除所有其他节点。
- 可以轻松更换损坏的节点
- 每个节点的电子设备之间的距离约为12英寸
- 主机将距离矩阵5至10英尺。
到目前为止,我一直在努力学习一些想法。
I2C 这将允许每个节点可寻址,但是,似乎Arduino仅允许多达127个地址,并且此矩阵将至少具有225个节点。
SPI 如果以菊花链方式链接,则很容易知道每个节点在矩阵中的位置。但是,如果一个节点要在断开所有通信之后中断所有节点,它将停止通信。(对吗?)我可以将每一行雏菊单独地链接起来,因此,如果发生故障,则只会影响该行。
1-Wire 1-wire也看起来很有希望。我必须弄清楚自己确定节点放置的方式,可以通过多种方式来实现。
自定义串行 每个节点的四个侧面都有一个串行连接(rx / tx)。这将允许它直接与其每个邻居进行通信,并传递未发送给它的消息。如果一个节点发生故障,由于到每个目的地都有多个路径,因此该消息将自动在断开的节点周围路由。这个选项有点疯狂,我宁愿避免一些自定义和令人费解的事情。
USB 这将在每个节点中需要一个USB集线器。
XBee 太贵了。
其他想法或选择?