Страница 1 из 1

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 13:58}
Siberian
Здравствуйте, Сергей!
Получается типа последовательного соединения передача - прием по очереди между платами.
Обязательное условие - все платы должны быть действующими, если отключить питание от одной из них, то цепочка рвется...

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 14:01}
support
Совершенно верно. И у них должен быть общий GND

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 14:23}
Siberian
С общим GND понятно.

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

Выход из ситуации, наверное только модбас.

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 14:40}
support
Ну можно конечно костыль сделать. При снятии питания с платы, с помощью реле с  НЗ контактами замыкать RX c ТХ. Тогда плата просто выходит из кольца, но оно не разрывается. Но это не красиво наверное.

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 14:50}
Siberian
Можно в принципе не через реле, а попробовать использовать маломощные транзисторы в качестве ключей. Как нибудь на днях попробую. Или на микросхеме... Или еще как-то...

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 15:31}
Siberian
Вот нашел.

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 15:49}
DWD
support писал(а):При снятии питания с платы, с помощью реле с  НЗ контактами замыкать RX c ТХ.
Просто замкнуть между собой линии приёма и передачи?
Это просто сделать только в случае наличия какого-то источника напряжения в месте переключения.
Иначе ни как.
Разве что тянуть ещё один провод с питанием.
Итого - 4-х жильный кабель: +, -,  RX, ТХ.

Ну, или делать фантомное питание, как в студийных микрофонах: корпус и две сигнальных дифференциальных линии, по которым, по отношению к корпусу подаётся напряжение питания.
Разделение питания и сигнала посредством конденсаторов. В этом случае 3 жилы: -, RX, ТХ. 

Ну и реле - это очень грубо и некрасиво. :)
Годится только как аналогия.

Добавлено (06.03.2016, 15:49)
---------------------------------------------
Siberian писал(а):Вот нашел.
"Вай, зачем такой дорогой машина покупать?.." :)
Сигналы цифровые - можно дешёвой логикой обойтись.

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 16:08}
Siberian
DWD писал(а):Это просто сделать только в случае наличия какого-то источника напряжения в месте переключения.
Так оно так и будет, переключатель ведь будет стоять с каждой платой.
Питание есть на плате - работает кольцо, нет питания на плате - сигналы пошли мимо.

Добавлено (06.03.2016, 16:08)
---------------------------------------------
Парни, а ведь из этого переключателя ничего не получится. Изображение
У нас же на плате переменная кольца, которая принимает, а потом переменная передачи.
Или я заблуждаюсь...
Нужно будет как-то на железе попробовать.

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 16:59}
DWD
Siberian писал(а):Питание есть на плате - работает кольцо, нет питания на плате - сигналы пошли мимо.
Вы не поняли.
Для управления коммутатором требуется напряжение питания, а откуда его взять, если устройство отключается именно отключением питаюшего напряжения?

Нужен независимый источник, запитывающий коммутатор постоянно и независимо от питания платы.

А какая вообще должна быть структура - лучеобразная или кольцо?
И как сигналы идут по RX и ТХ? Я в этом не разбираюсь...
Если на ТХ постоянно идут импульсы, то фантомное питания организовать будет совсем просто - диод и конденсатор.
Коммутатор потребляет мизер...

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 17:10}
support
DWD писал(а):Просто замкнуть между собой линии приёма и передачи?Это просто сделать только в случае наличия какого-то источника напряжения в месте переключения.
Иначе ни как.
Разве что тянуть ещё один провод с питанием.
Итого - 4-х жильный кабель: +, -, RX, ТХ.
Зачем? Запитываем реле от питания этой-же ардуинки. Используем НЗ контакты. При подаче питания на контроллер, реле включается и размыкает свои контакты, соответственно контроллер включается в кольцо, при снятии питания с контроллера, реле обесточивается, замыкает свои контакты, и восстанавливает кольцо замыкая RX и TX

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 17:14}
Сергей
support, а как насчет этого?
Siberian писал(а):У нас же на плате переменная кольца, которая принимает, а потом переменная передачи.Или я заблуждаюсь...
Какая вообще логика работы этих блоков и сети в целом?

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 17:15}
support
Siberian писал(а):Парни, а ведь из этого переключателя ничего не получится. У нас же на плате переменная кольца, которая принимает, а потом переменная передачи.
 Нет не так. Один контроллер отправляет пакет. Следующий его ловит. Если ему он не нужен, то он просто отправляет его дальше, если нужен, то забирает его значение и всё равно отправляет дальше. Когда конроллер который его отправил, ловит его после того как этот пакет прошол всё кольцо - он дальше его не отправляет. Где то так. Так что количество контроллеров в кольце не важно. Поймает пакет второй контроллер, или третий (в случае замыкания у второго RX и TX) не важно.

Обмен данными между неограниченным количеством контроллеров

Добавлено: 06.03.2016{, 17:50}
Siberian
Образно понятно, но всё-же пока на железе не пощупаешь, досконально не поймешь. Изображение

Обмен данными между неограниченным количеством контроллеров

Добавлено: 04.03.2020{, 22:33}
Alexr
Вы имеете ввиду отправку и прием данных через кольцо?
Можно ли таким способом организовать передачу данных между 2 контроллерами ESP, работающими слейвам (Modbus TCP) управляющими разными Скадами ? Нужно чтобы данные из первой скады поступали в контроллер, а управление контроллером -из другой скады.