Например TDA7294

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





Текущее время: Вт июл 01, 2025 04:40:20

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


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



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

Зарегистрирован: Ср авг 19, 2020 10:26:46
Сообщений: 39
Рейтинг сообщения: 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
Рейтинг сообщений: 808
Зарегистрирован: Ср ноя 29, 2017 06:58:50
Сообщений: 2906
Рейтинг сообщения: 0
1) будут конечно.
2) не будет, решается аппаратно
3) будут, но зависит от условий эксплуатации, а то может и грозозащиту придётся.

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


Вложения:
Комментарий к файлу: DiSEqC
applic_info_PIC_microcontroller.pdf [129.25 KiB]
Скачиваний: 255
Вернуться наверх
 
Не в сети
 Заголовок сообщения: Re: Передача данных между удаленными микроконтроллерами
СообщениеДобавлено: Вт дек 01, 2020 05:50:20 
Нашел транзистор. Понюхал.

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

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


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

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


Вернуться наверх
 
Выбираем индустриальные и медицинские источники питания MEAN WELL в открытом исполнении

Использование модульных источников питания открытого типа широко распространено в современных устройствах. Присущие им компактность, гибкость в интеграции и высокая эффективность делают их отличным решением для систем промышленной автоматизации, телекоммуникационного оборудования, медицинской техники, устройств «умного дома» и прочих приложений. Рассмотрим подробнее характеристики и особенности трех самых популярных вариантов AC/DC-преобразователей MW открытого типа, подходящих для применения в промышленных устройствах - серий EPS, EPP и RPS представленных на Meanwell.market.

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

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


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

Карма: 94
Рейтинг сообщений: 1466
Зарегистрирован: Вт мар 16, 2010 22:02:27
Сообщений: 15054
Откуда: ДОНЕЦК
Рейтинг сообщения: 0
Постройте систему на основе сетей микроLAN.
В том числе и с учетом коммутационных ключей.
Там вообще только витая пара используется...
8)


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

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

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

И т.д.


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

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

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

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


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

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


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

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


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

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

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

Мой уютный бложик... заходите!


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

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


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

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


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

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


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

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

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


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

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


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

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


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

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


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

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

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

:tea:


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

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

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


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

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


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

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

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


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

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


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

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


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

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


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