Как подключить два Arduino без щитов?

Я планирую систему Arduino, состоящую из нескольких плат Arduino. Максимальное расстояние между досками составляет около 50 метров. Я хочу отправить базовые данные между ними, например короткие строки или целые числа. Я знаю, что могу отправлять данные через Ethernet-кабели, но для этого требуется сетевой экран или плата Ethernet Arduino, которая удваивает затраты. Есть ли низкий бюджетный способ подключения плат, используя только самые основные платы (например, Uno) и некоторые другие компоненты, но не полный экран?

13 голосов | спросил totymedli 14 FebruaryEurope/MoscowbFri, 14 Feb 2014 02:32:43 +0400000000amFri, 14 Feb 2014 02:32:43 +040014 2014, 02:32:43

5 ответов


9

Для проводной связи на большие расстояния смотрите RS-485 .

  

Так как он использует дифференциальную сбалансированную линию по витой паре (например,   RS-422), он может охватывать относительно большие расстояния (до 4000 футов   (1200 м)). Эмпирическое правило: скорость в бит /с, умноженная на   длина в метрах не должна превышать 108. Таким образом, 50-метровый кабель   не должен сигнализировать быстрее, чем 2 Мбит /с

Вы можете использовать чип MAX485. Довольно легко работать, но есть и хорошая библиотека:

https://github.com/Protoneer/RS485-Arduino-Library

ответил sachleen 14 FebruaryEurope/MoscowbFri, 14 Feb 2014 02:59:03 +0400000000amFri, 14 Feb 2014 02:59:03 +040014 2014, 02:59:03
7

Есть две категории, которые я могу придумать, чтобы классифицировать функции comminucation плат Arduino:

Между двумя устройствами:

  • Последовательный: прост в использовании и требует только 2 строки данных.
  • OneWire: сложнее использовать и замедлять работу, но использует только одну строку данных

Между более чем двумя устройствами

  • I2C: вы можете иметь до 128 устройств в сети, индивидуально адресуемых, но требующих мастер-устройства, использует 2 строки данных. это также известно как Wire.
  • SPI: сложный в использовании, но очень быстрый и простой выбор устройства. использует много строк данных (3 + несколько устройств).
  • OneWire: использование адресной OneWire еще медленнее обычной oneWire, но только одна строка данных
  • SoftwareSerial: у вас может быть несколько устройств, подключенных разными последовательными линиями, но они медленнее.
  • CAN: доступен только на почтовом ящике и адресуется

Существуют и другие доступные методы, но для перечисленных в них требуется только минимальное внешнее оборудование.

Для оценок расстояния см. http://forum.arduino.cc/index.php?topic=82937.0 и http://www.tldp.org/HOWTO/Remote- Серийная-консоль-МЕТОДИЧЕСКИЙ /последовательный distance.html

Эти скорости передачи данных напрямую контролируются в Serial и могут быть изменены во многих других.

ответил TheDoctor 14 FebruaryEurope/MoscowbFri, 14 Feb 2014 02:42:53 +0400000000amFri, 14 Feb 2014 02:42:53 +040014 2014, 02:42:53
5

Freakduino делает несколько плат Arduino со встроенной беспроводной связью. Их длинная беспроводная сеть составляет 900 МГц, а их более короткий диапазон - 2,4 ГГц. Я думаю, что они на самом деле радиостанции XBee, и для программирования вы бы использовали библиотеку chibiArduino, которая доступна (и документирована) на веб-сайте Freakduino. При беспроводной связи с другим радиоприемником вы можете использовать Broadcast или указать радио по его идентификатору, который является значением, которое необходимо установить в EEPROM для Freakduino.

Принимается непосредственно с сайта Freakduino:

  

Добавление встроенного беспроводного радиосигнала на основе протокола IEEE 802.15.4 (тот же протокол радиосвязи, что и XBee) позволяет осуществлять беспроводное управление устройствами или сбор данных беспроводных датчиков. Была добавлена ​​дополнительная схема батарей, чтобы она могла функционировать как настоящий беспроводной узел без каких-либо внешних силовых кабелей. Плата также спроектирована таким образом, чтобы она соответствовала жесткому корпусу, чтобы конструкция могла безопасно транспортироваться или развертываться в реальном сценарии использования, не беспокоясь о повреждении схемы.

     

Это радио 900 МГц - мой личный фаворит. Я использую его все время, потому что 900 МГц предлагает гораздо лучший диапазон по сравнению с 2,4 ГГц. Радиостанция может выводить до 10 мВт мощности передачи, которая может получить удивительный диапазон. С прямой видимостью несколько сотен метров не удивительно. Если требуется дополнительный диапазон, режим модуляции также может быть изменен с OQPSK на BPSK. Это приводит к дополнительному диапазону за счет скорости передачи данных, причем максимальная скорость составляет от 250 кбит /с до 40 кбит /с в стандартном режиме.

ответил HK1 14 FebruaryEurope/MoscowbFri, 14 Feb 2014 03:01:48 +0400000000amFri, 14 Feb 2014 03:01:48 +040014 2014, 03:01:48
0

Как вы сказали, экраны Ethernet стоят дорого, но вам не нужно использовать щит. Просмотрите enc28j60 для проводной сети, или ESP8266 , если вы предпочитаете беспроводную связь. Оба составляют около 4 долларов США. Я использую ESP8266 сейчас и имею около 8 устройств, разговаривающих друг с другом и с малиной Pi. Это действительно отличный маленький чип! Я не могу говорить лично с ENC28j60, поскольку они все еще сидят в пакете на моем столе.

ответил Butters 2 MaramMon, 02 Mar 2015 05:04:45 +03002015-03-02T05:04:45+03:0005 2015, 05:04:45
0

Вы можете использовать плату прорыва Ethernet ($ 2 в Sparkfun). Это позволяет использовать кабели Ethernet, но вам не нужно использовать полный протокол TCP /IP, вместо этого вы можете просто подключить контакты данных к плате прорыва, использовать Ethernet для их подключения, а затем поговорить с помощью последовательного интерфейса. Я использую это довольно немного, чтобы разместить один проводной датчик дальше от Arduino для сильного, но дешевого соединения.

ответил Nathan 2 MarpmMon, 02 Mar 2015 19:26:50 +03002015-03-02T19:26:50+03:0007 2015, 19:26:50

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

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

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