Например TDA7294

Форум РадиоКот • Просмотр темы - Передача данных между удаленными микроконтроллерами
Форум РадиоКот
Здесь можно немножко помяукать :)



Текущее время: Вс апр 11, 2021 09:58:35

Часовой пояс: UTC + 3 часа


ПРЯМО СЕЙЧАС:



Начать новую тему Ответить на тему  [ Сообщений: 20 ] 
Автор Сообщение
Не в сети
 Заголовок сообщения: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 00:14:49 
Первый раз сказал Мяу!

Зарегистрирован: Ср авг 19, 2020 10:26:46
Сообщений: 37
Рейтинг сообщения: 0
Возникла тут у меня интересная задача - из центрального микроконтроллера посылать команды нескольким удаленными устройствам.
Связь односторонняя (от центрального устройства ведомым). Количество устройств от 10 до 20, удаление сравнительно небольшое - до 20м до дальнего. Все устройства связаны одним сигнальным проводом (помимо питания).

Помогите, пожалуйста, выбрать средство коммуникации и схемотехнику.

I2C и SPI отпадают, потому как требуют 2 сигнальных провода. CAN'а в этих микроконтроллерах нет. UART вроде как годится - в одну сторону можно передавать по существующему проводу. Но тут я не уверен в трех моментах
1) не будут ли множество подключенных на линию устройств влиять друг на друга?
2) центральный контроллер работает на напряжении 3.3В, тогда как ведомые на 5В. Не будет ли это препятствием к коммуникации? (на коротких расстояниях нет, но как на будет длинных?)
3) не будет ли больших наводок на больших расстояниях при условии, что передатчик работает на 3.3В?

Может быть стОит поставить транзистор на передатчике и усилить сигнал, например, до 12В перед выдачей на линию, а на другом конце транзистором вернуть в 5В?


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 00:44:17 
Собутыльник Кота

Карма: 36
Рейтинг сообщений: 801
Зарегистрирован: Ср ноя 29, 2017 06:58:50
Сообщений: 2906
Рейтинг сообщения: 0
1) будут конечно.
2) не будет, решается аппаратно
3) будут, но зависит от условий эксплуатации, а то может и грозозащиту придётся.

Вариантов, на самом деле, множество, в том числе и подача команд по питанию. Например, как у DiSEqC


Вложения:
Комментарий к файлу: DiSEqC
applic_info_PIC_microcontroller.pdf [129.25 KiB]
Скачиваний: 86
Вернуться наверх
 

JLCPCB, всего $2 за прототип печатной платы! Цвет - любой!

Отличное качество, подтвержденное более чем 600,000 пользователей! Более 10,000 заказов в день.

Зарегистрируйтесь и получите два купона по 5$ каждый:https://jlcpcb.com/cwc

Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 05:50:20 
Встал на лапы

Карма: -2
Рейтинг сообщений: 4
Зарегистрирован: Вс сен 06, 2020 16:06:10
Сообщений: 126
Рейтинг сообщения: 0
1) Ну если вы на центральном подключите только TX, а на остальных только RX - тогда не будут особо. Но назад вы вообще тогда ничего передать не сможете. Чтобы все же в 2 стороны, придется сделать так или иначе "open drain". По минимуму делается диодом и резистором, но на 20 метров лучше вариант на транзисторах. Там же и более высокое напряжение можно сделать, если хочется.
2) 3.3TX -> 5V RX работать если и будет то на грани, на 20 метров надо преобразователь в честные 5 вольт.

И да, наводки возможны, особенно если это не экранированный провод и особенно если он брошен черти как. Это может испортить команды и с односторонней передачей - а вы уверены что это будет работать? Протокол с сильными чексумами потребуется как минимум.


Вернуться наверх
 
PCBWay - всего $5 за 10 печатных плат, первый заказ для новых клиентов БЕСПЛАТЕН

Сборка печатных плат от $30 + БЕСПЛАТНАЯ доставка по всему миру + трафарет

Онлайн просмотровщик Gerber-файлов от PCBWay + Услуги 3D печати
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 06:56:37 
Говорящий с текстолитом
Аватар пользователя

Карма: 11
Рейтинг сообщений: 255
Зарегистрирован: Вт май 01, 2018 19:44:47
Сообщений: 1561
Рейтинг сообщения: 0
Дешевле положить нормальную дифференциальную линию под RS-485, чем потом носиться с бубном.


Вернуться наверх
 
BlueNRG-LP для передачи данных в диапазоне 2,4 ГГц без BLE

В статье представлен набор базовых примеров основных аспектов работы радиотракта в проприетарном режиме, что позволяет создавать на их основе собственные более сложные проекты. Описан режим обновления и типичный сценарий прошивки «по воздуху» OTA для проприетарного режима. Примеры приведены для сред разработки IAR Embedded Workbench for ARM и KEIL uVision 5 for ARM.

Подробнее>>
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 09:06:25 
Друг Кота
Аватар пользователя

Карма: 73
Рейтинг сообщений: 546
Зарегистрирован: Ср дек 24, 2008 09:58:58
Сообщений: 3415
Рейтинг сообщения: 0
Медали: 3
Мявтор 1-й степени (1) Мявтор 2-й степени (1) Мявтор 3-й степени (1)
Какие объёмы данных нужно передавать и с какой скоростью? Передаваемые данные одинаковые для всех приёмных устройств или избирательно? Вариант безпроводки рассматривался?


Вернуться наверх
 
Wolfspeed раскрывает секреты прорывных технологий в силовой электронике

Компания Wolfspeed предлагает разработчикам стать частью новой истории и проверить самостоятельно все преимущества компонентов с широкой запрещённой зоной. Представляем вашему вниманию подборку материалов по теме SiC MOSFET, SiC-диодов и их применениям.

Читать статьи>>
В сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 09:56:52 
Друг Кота
Аватар пользователя

Карма: 87
Рейтинг сообщений: 1046
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 11765
Откуда: ДОНЕЦК (ЮГО-ВОСТОК ua/DPR)
Рейтинг сообщения: 0
Постройте систему на основе сетей микроLAN.
В том числе и с учетом коммутационных ключей.
Там вообще только витая пара используется...
8)


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 10:25:09 
Друг Кота

Карма: -10
Рейтинг сообщений: -171
Зарегистрирован: Вт мар 13, 2012 12:16:13
Сообщений: 4457
Откуда: .ru
Рейтинг сообщения: 0
Частотное кодирование. ))
1) работает по одному проводу
2) работает в обе стороны (дуплекс)
3) множество подключенных устройств не влияют друг на друга
4) работает при любом напряжении
5) работает при высоком уровне шума
Вложение:
Обработка сигнала.jpg [195.12 KiB]
Скачиваний: 155

И т.д.


Вернуться наверх
 


Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 12:06:18 
Первый раз сказал Мяу!

Зарегистрирован: Ср авг 19, 2020 10:26:46
Сообщений: 37
Рейтинг сообщения: 0
Какие объёмы данных нужно передавать и с какой скоростью? Передаваемые данные одинаковые для всех приёмных устройств или избирательно? Вариант безпроводки рассматривался?

Думаю 9600 будет достаточно, пакеты по 6-8 байт. Планирую дать каждому устройству уникальный ИДшник, а пакеты будут либо адресные, либо широковещательные для всех.

Вариант беспроводки рассматривался, но получается а) дорого (дороже чем UART) б) в эту тему еще погружаться нужно в) уже протянут провод 3x1.5 где можно пустить как питание, так и сигнал третьим проводом. Правда провод не экранирован и брошен черти как :)


У меня нет проблем с логической частью - я программист со стажем и мне не сложно реализовать хоть UART, хоть one wire, хоть другое кодирование.

Мой вопрос больше про схемотехнику, т.к. в этой части я не так силен.


iddqd писал(а):
а вы уверены что это будет работать?

Ну вот именно с этим вопросом я и пришел :)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 12:18:47 
Ум, честь и совесть. И скромность.
Аватар пользователя

Карма: 90
Рейтинг сообщений: 1843
Зарегистрирован: Чт дек 28, 2006 08:19:56
Сообщений: 15805
Откуда: Новочеркасск
Рейтинг сообщения: 0
Медали: 2
Получил миской по аватаре (1) Мявтор 3-й степени (1)
на 9600 и дальности 20м с минимальным CRC на всякий пожарный, имхо, обычный RS232 будет работать без всяких фантазий.

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


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 12:30:54 
Мучитель микросхем

Карма: 7
Рейтинг сообщений: 36
Зарегистрирован: Вт июн 07, 2011 08:03:18
Сообщений: 494
Рейтинг сообщения: 0
5в ТТЛ тоже, если рядом нет сварочных аппаратов. Но, простейшую грозозащиту я бы поставил.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 12:50:45 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 76
Рейтинг сообщений: 1163
Зарегистрирован: Пт мар 29, 2019 10:45:58
Сообщений: 2197
Откуда: Тюмень
Рейтинг сообщения: 3
UART вроде как годится - в одну сторону можно передавать по существующему проводу. Но тут я не уверен в трех моментах

В одном проекте видел такой подход к передаче данных по UART на ведомые МК от базового МК. Принцип такой: Все МК подключены последовательно. То есть вывод (Tx) ведущего соединяется с выводом (Rx) первого ведомого, а вывод (Tx) первого ведомого с выводом (Rx) второго ведомого и т.д. У каждого ведомого МК присвоен код. Ведущий передаёт код получателя и данные. Если данные предназначены для (допустим второму ведомому), то первый, приняв данные и видя, что они адресованы не ему, передаёт их дальше. Второй получив данные и видя что они как раз для него – выполняет команду не передовая дальше ничего. Правда в таком подходе есть жирный минус, если на линии выйдет из строя какой-то МК, то все последующие МК будут оторваны от ведущего.

_________________
Профессия нужна человеку, чтобы заниматься любимым делом, применять свои таланты и знания, приносить пользу другим людям.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 12:54:06 
Собутыльник Кота

Карма: 36
Рейтинг сообщений: 801
Зарегистрирован: Ср ноя 29, 2017 06:58:50
Сообщений: 2906
Рейтинг сообщения: 0
значит, надо закольцевать, а потом ещё лучами соединить каждого с каждым ;)


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 13:00:53 
Мудрый кот

Карма: 18
Рейтинг сообщений: 494
Зарегистрирован: Ср июл 17, 2013 13:55:57
Сообщений: 1741
Рейтинг сообщения: 0
Вариант беспроводки рассматривался, но получается а) дорого (дороже чем UART) б) в эту тему еще погружаться нужно в) уже протянут провод 3x1.5 где можно пустить как питание, так и сигнал третьим проводом. Правда провод не экранирован и брошен черти как :)

Ну может не сейчас, а когда-нибудь пригодится: https://www.aliexpress.com/item/32833977085.html
По 31р за штучку приемник на 433 МГц. Такой же передатчик тоже за копейки находится - SYN115 модель.
Понятное дело, что всё-равно дороже "бесплатного" UART :) Но вдруг интересно будет. Погружаться не надо - один провод тот же самый, только по радио условно. Модуляция-демодуляция прозрачна, никаких настроек, тупые простые модули. Но для каких-нибудь радио-датчиков или наоборот - вполне рабочие штучки.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 13:03:08 
Поставщик валерьянки для Кота
Аватар пользователя

Карма: 76
Рейтинг сообщений: 1163
Зарегистрирован: Пт мар 29, 2019 10:45:58
Сообщений: 2197
Откуда: Тюмень
Рейтинг сообщения: 0
значит, надо закольцевать, а потом ещё лучами соединить

Можно конечно, но тогда придётся увеличивать число жил, а ТС хочет для передачи использовать лишь одну жилу. :)

_________________
Профессия нужна человеку, чтобы заниматься любимым делом, применять свои таланты и знания, приносить пользу другим людям.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 14:04:59 
Собутыльник Кота

Карма: 36
Рейтинг сообщений: 801
Зарегистрирован: Ср ноя 29, 2017 06:58:50
Сообщений: 2906
Рейтинг сообщения: 0
Но линейная с разрывом тоже вполне нормальна и может даже быть полностью надежна. Например, если по ТЗ работа устройств, следующих за неисправным, в случае его неисправности бессмысленна и не требуется.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Чт дек 03, 2020 07:40:23 
Встал на лапы

Карма: -2
Рейтинг сообщений: 4
Зарегистрирован: Вс сен 06, 2020 16:06:10
Сообщений: 126
Рейтинг сообщения: 0
Цитата:
Частотное кодирование. ))
Современные uart'ы что-то типа такой картинки и делают, там оверсэмплинг же, x8, если не x16...


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Чт дек 03, 2020 12:49:10 
Друг Кота

Карма: -10
Рейтинг сообщений: -171
Зарегистрирован: Вт мар 13, 2012 12:16:13
Сообщений: 4457
Откуда: .ru
Рейтинг сообщения: 0
Да, UART делает оверсэмплинг... Так же как и RS-232 и RS-485 и CAN и т.д.
Только работают они не далеко)) У них высокие требования по уровню сигнала и завалу фронтов. И они не имеют гальванической развязки.

Я говорю про старые модемы с частотным кодированием... Они работают на огромные расстояния (десятки километров по проводам и тысячи километров по радио). Работают при любом уровне сигнала. Имеют гальваническую развязку. Им не важны фронты... шумы... и т.д.
Вложение:
moped1.jpg [100.53 KiB]
Скачиваний: 101

:tea:


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Пт дек 04, 2020 11:44:07 
Встал на лапы

Карма: -2
Рейтинг сообщений: 4
Зарегистрирован: Вс сен 06, 2020 16:06:10
Сообщений: 126
Рейтинг сообщения: 0
А тут уже смотря кто и что хотел. Изначально хотели по 1 проводу, про развязку ни звука.

У того кто на фото... частотной модуляцией только низкие скорости, 9600 уже отнюдь не FM. QAM не хотели? И всякие эквалайзеры, прекодинг, удаление эха, процедура замера параметров секунд на 10 (link training). На это - 56, чтоли, МГц DSP и пару ядер по 28, чтоли, в помощь. И оно конечно работало на энные расстояния, однако там еще протокол с CRC и переотправкой был, на случай если все эти навороты все же не сработали. А если протокол коррекции запретить - такая штука очень интересный результат из порта выгружает.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Пн дек 07, 2020 09:18:11 
Друг Кота
Аватар пользователя

Карма: 73
Рейтинг сообщений: 546
Зарегистрирован: Ср дек 24, 2008 09:58:58
Сообщений: 3415
Рейтинг сообщения: 0
Медали: 3
Мявтор 1-й степени (1) Мявтор 2-й степени (1) Мявтор 3-й степени (1)
Вариант беспроводки рассматривался, но получается а) дорого (дороже чем UART) б) в эту тему еще погружаться нужно ...
Всё-же я за безпроводку через Bluetooth LE, даже если выйдет несколько дороже. Некоторые фирмы предлагают Bluetooth решения в стиле безпроводный UART. Если-бы я делал такую систему, то использовал-бы силлабовские модули семейства BGX. К тому-же они заводятся практически с нулевым вниканием, если по этому поводу имеются опасения.


Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Пн дек 07, 2020 10:33:29 
Друг Кота
Аватар пользователя

Карма: 116
Рейтинг сообщений: 6945
Зарегистрирован: Сб сен 13, 2014 16:27:32
Сообщений: 30292
Откуда: СпиртоГонск созвездия Омега
Рейтинг сообщения: 0
485 вам прописан или токовая петля осталное в топку...9600 это не 300бот..там уже 3м проблемные могут быть без спецчипок на концах
так что приемопередатчики линии обязателны

_________________
Мудрость(Опыт и выдержка) приходит с годами.
Все Ваши беды и проблемы, от недостатка знаний.
Умный и у дурака научится, а дураку и ..
Алберт Ейнштейн не поможет и ВВП не спасет... и МЧС опаздает
и таки теперь Дураки и Толерасты умирают по пятницам!


Вернуться наверх
 
Показать сообщения за:  Сортировать по:  Вернуться наверх
Начать новую тему Ответить на тему  [ Сообщений: 20 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на форуме

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 2


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
Русская поддержка phpBB
Extended by Karma MOD © 2007—2012 m157y
Extended by Topic Tags MOD © 2012 m157y