Дешевая проводная многоточечная сеть

Я хочу создать сетку датчиков нагрузки 15 x 15 и светодиоды RGB для интерактивного танцпола. Каждый узел будет управляться ардуином, и весь этаж будет управляться RaspberryPi. Я пытаюсь выяснить, как лучше всего связывать узлы с Pi. В идеале сеть будет иметь следующие характеристики:

  • Низкая стоимость за узел
  • Малина Pi как хозяин, узлы arduino как подчиненные
  • Возможность знать, где каждый узел находится в сетке
  • Исцеление: если узел опускается, он не вынимает всех остальных.
  • Можно легко заменить сломанные узлы
  • Электроника для каждого узла будет находиться на расстоянии ~ 12 дюймов.
  • Мастер будет находиться на расстоянии 5 - 10 футов от матрицы.

До сих пор я работал над несколькими ides.

I2C Это позволило бы каждому адресу быть адресуемым, однако, похоже, что Arduino разрешит до 127 адресов, и эта матрица будет содержать не менее 225 узлов.

SPI Если бы в цепочке была цепочка, было бы легко узнать, где каждый узел находится в матрице. Но если один узел должен сломать все узлы после того, как он прекратит общение. (правда?) Я мог бы использовать каждый ряд маргариток отдельно, поэтому, если он идет вниз, это влияет только на эту строку.

1 Wire 1-wire также выглядит многообещающим. Я должен был бы выяснить свой собственный способ определения размещения узлов, что может быть достигнуто различными способами.

Пользовательский серийный Каждый узел имеет последовательное соединение (rx /tx) для каждой из четырех сторон. Это позволит ему напрямую общаться с каждым из своих соседей и передавать сообщения, которые не адресованы ему. Если один узел должен был спуститься, сообщение будет автоматически маршрутизироваться вокруг сломанного узла, поскольку для каждого адресата имеется несколько путей. Этот вариант немного сумасшедший, и я бы предпочел избежать чего-то такого необычного и запутанного.

USB Для этого потребуется концентратор USB в каждом узле.

XBee Слишком дорого.

Другие мысли или варианты?

10 голосов | спросил Jeremy Gillick 2 ndEurope/Moscowp30Europe/Moscow09bEurope/MoscowTue, 02 Sep 2014 22:53:56 +0400 2014, 22:53:56

2 ответа


1

Для I2C вы можете попробовать http://www.linear.com/product/LTC4312

Это позволит вам создать две сети I2C для адресации всех узлов.

Однако проводка для I2C будет кошмаром, но может потребоваться, если вы хотите, чтобы узлы были независимыми.

ответил Treesrule14 3 rdEurope/Moscowp30Europe/Moscow09bEurope/MoscowWed, 03 Sep 2014 19:59:59 +0400 2014, 19:59:59
0

Думаю, я бы использовал RS-485.

С помощью этого стандарта вы можете написать свой собственный протокол связи и с помощью arduino его легко использовать с классом Serial. В качестве расширений для Arduino вы используете MAX485 только потому, что использует UART-cip для Arduino.

У меня нет абсолютно никакого опыта с rasperypi, но я думаю, что у него также есть UART-Cip, что означало бы, что вы также можете подключить MAX485.

ответил Jonas Peter 9 +04002014-10-09T15:20:20+04:00312014bEurope/MoscowThu, 09 Oct 2014 15:20:20 +0400 2014, 15:20:20

Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132