Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Передача данных по проводам питания
Форум разработчиков электроники ELECTRONIX.ru > Аналоговая и цифровая техника, прикладная электроника > Вопросы аналоговой техники
ndmitrii
Здравствуйте. Стоит задача опрашивать 16 устройств мастером на расстоянии до 500метров со скоростью 2400 бот. передавая данные по двум проводам питания.
Собрал схему Мастера на отладочной плате stm32f103c8t6 прикрутил к ней приемник и передатчик. На передатчик подаю несущею с частотой 800кГц
и данные со скоростью 2400 бот. Далее полученную на выходе драйвера смоделированную несущую (4 вольта) через конденсатор подаю в линию питания.
На другой стороне провода питания стоит датчик(slave) который собственно и принимает этот сигнал.
Проблема заключается в следующем как только подключаю датчик то несущая резко уменьшается до 2 вольт и если подключить 5 датчиков то от несущей практически не чего
не остается (200 милливольт).
Может кто подскажет куда закралась ошибка.

Нажмите для просмотра прикрепленного файла
Нажмите для просмотра прикрепленного файла
vladec
С подключением дополнительных устройств уменьшается импеданс линии. Если он у Вас преимущественно активный, то ничего кроме увеличения мощности передатчика не поможет. Если на входах питания датчиков большие емкости (например емкие электролиты) то можно попробовать "закрыть" каждый из источников питания большой индуктивностью или фильтром-пробкой на несущую частоту.
vfo
А не дохрена ли это 800 кГц для несущей? Может раз в десять меньше взять? А если всё-таки нужно только так, то следует нормально выполнить всю интерфейсную часть, наподобие ADSL модема.
ndmitrii
Цитата(vladec @ Sep 14 2017, 13:05) *
С подключением дополнительных устройств уменьшается импеданс линии. Если он у Вас преимущественно активный, то ничего кроме увеличения мощности передатчика не поможет. Если на входах питания датчиков большие емкости (например емкие электролиты) то можно попробовать "закрыть" каждый из источников питания большой индуктивностью или фильтром-пробкой на несущую частоту.


Фильтр пробка не особо помог

Цитата(vfo @ Sep 14 2017, 14:05) *
А не дохрена ли это 800 кГц для несущей? Может раз в десять меньше взять? А если всё-таки нужно только так, то следует нормально выполнить всю интерфейсную часть, наподобие ADSL модема.


Идея была собственно взята от сютого
http://www.rlocman.ru/shem/schematics.html?di=148255
тут частота несущей 2 Мгц
Rst7
Уберите C5 и С3 со входа 78L08. C3 перенесите на выход этого стабилизатора. Или вообще замените его на транзистор. Коллектор к линии питания, эмиттер - к 7805, а в базу делитель от входа и земли так, чтобы получилось вольт 8 на эмиттере, и зашунтировать нижнее плечо делителя (которое к земле) конденсатором. Можно на полевик, тогда делитель высокоомный можно сделать.

Несущую выбросить нафиг. Передавать просто UARTом на 2400. Разрешаете выход драйвера, передаете посылку, запрещаете выход. Разрешение и запрещение нужно сделать в состоянии лог.1 (т.е. неактивный UART).

Емкости разделительные подобрать так, чтобы постоянная составляющая не сильно уплывала за время передачи одного байта. Вход переделать - выход драйвера подтянуть к плюсу питания через резистор с пару десятков килоом, туда же подключить одну ножку компаратора, вторую - к делителю так, чтобы было где-то на 1 вольт меньше напряжения питания.
ndmitrii
Вот дилемма, если убрать несущую то весь сигнал благополучно сливается на дросселе контроллера, через выносной блок питания какой же дроссель тогда ставить?
Если не сложно подскажите как правильно воткнуть полевик
Огурцов
Цитата(ndmitrii @ Sep 14 2017, 10:24) *
Идея была собственно взята от сютого
http://www.rlocman.ru/shem/schematics.html?di=148255
тут частота несущей 2 Мгц

дроссели l1 и l2 установлены ?

ndmitrii
Цитата(Огурцов @ Sep 14 2017, 23:22) *
дроссели l1 и l2 установлены ?


да конечно, я выложил же схемы
Огурцов
Цитата(ndmitrii @ Sep 14 2017, 18:41) *
да конечно, я выложил же схемы

ваши схемы не читаемы

Rst7
QUOTE (ndmitrii @ Sep 14 2017, 17:57) *
Вот дилемма, если убрать несущую то весь сигнал благополучно сливается на дросселе контроллера, через выносной блок питания какой же дроссель тогда ставить?
Если не сложно подскажите как правильно воткнуть полевик


Полевик (n-канальный) включается так же, как и биполярный транзистор. Стоком к линии, истоком - к стабилизатору. Если возьмете что-то типа 2N7002, то делитель Вам не понадобится, затвор просто подключаете к линии через резистор в сотню килоом и шунтируете конденсатором на общий (ну пусть будет несколько микрофарад). Как раз на нем пара вольт и упадет.

Если избавляться от несущей, то на стороне контроллера надо тоже через псевдоиндуктивность питание организовывать. Например, через p-канальный транзистор. Истоком к блоку питания, стоком - в линию, затвор - через резистор к стоку, и заодно через конденсатор к общему проводу.
ndmitrii
Цитата(Огурцов @ Sep 15 2017, 00:18) *
ваши схемы не читаемы


могу выслать на почту в любом качестве в любом формате
Огурцов
вы не поняли, я вижу, но не понимаю
так что соответствие вашей схемы с котом лоцманом проверяйте сам
если дроссели таки есть, то что за дроссели, какой потребляется ток
т.к. несущая высокая, может намотать их без сердечника ?
номиналы и вообще лучше смотреть в симуляторе
ndmitrii
Цитата(Огурцов @ Sep 15 2017, 01:10) *
вы не поняли, я вижу, но не понимаю
так что соответствие вашей схемы с котом лоцманом проверяйте сам
если дроссели таки есть, то что за дроссели, какой потребляется ток
т.к. несущая высокая, может намотать их без сердечника ?
номиналы и вообще лучше смотреть в симуляторе

Дроссели на 100 мкг в ферите и на 3 А стоит на развязку с блоком питания, на датчиках 10 мкг на ток 220мА ток потребления датчиков 60mA. Несущую в данный момент снизил до
100 кГц, в планах изничтожить если сумею развязаться с БП
Огурцов
а почему индуктивность разная ?
ndmitrii
Цитата(Огурцов @ Sep 15 2017, 01:41) *
а почему индуктивность разная ?

на 10 не хватало чтобы развязать БП от линии воткнул то что было подходящее по току на 3А на 100 мкгн, а стояли вначале все на 10 мкгн
vfo
При подключении к линии связи X устройств их питающие дроссели оказываются включёнными параллельно по переменному току и общая индуктивность уменьшается в эти же X раз. Вы это учли?
stells
в симуляторе надо собрать приемопередающие узлы, сразу станет понятно кто просаживает
Огурцов
vfo прав, нарушение номинала в 10 раз и параллельное включение делают своё дело
в крайнем случае номиналы хотя бы местами поменять - было бы не так печально
vladec
Действительно несущая сильно задрана, обычно медленные PLC делают где то на 50 - 150 кГц. А на такой частоте и на дальностях в сотни метров, как у Вас, сильное влияние начинает оказывать индуктивность проводов, особенно если их сечение маленькое.
ndmitrii
С дросселями и несущей вы конечно правы поэтому для начала несущую я снизил до 100кГц пытаюсь вообще от неё избавиться так же как и от дросселей.
Пытаюсь за место дросселей воткнуть полевик.
В данный момент бьюсь над развязкой сигнала с блоком питания пока не выходит



Собрал вот эту схему
Подаю 12в на выходе 9в подключаю к датчику и вижу, точнее не вижу ни какого сигнала всё слито
эмулятор у меня стоит LTspice но пока что научился только что то простое в нем эмулировать, так что всё собираю по старинке с паяльником.
MM_Andrey
Подайте питание в линию через источник тока, и будет Вам счастье...
ndmitrii
Цитата(MM_Andrey @ Sep 15 2017, 15:08) *
Подайте питание в линию через источник тока, и будет Вам счастье...


а можно по подробнее
Огурцов
Цитата(MM_Andrey @ Sep 15 2017, 11:08) *
Подайте питание в линию через источник тока, и будет Вам счастье...

а потреблять как ?
MM_Andrey
Цитата(ndmitrii @ Sep 15 2017, 13:10) *
а можно по подробнее


У Вас линию передачи не должны шунтировать ни источник питания, ни приёмники.
Этого можно добиться, если источник питания и приёмники будут иметь высокий
импеданс. Сделать это можно применив источники тока на обоих концах линии передачи,
точнее на одном из концов должна быть динамическая нагрузка.
(current source and current sink)
Посмотрите как передают питание и видео по кабелю, принцип тот-же.
ndmitrii
Цитата(MM_Andrey @ Sep 15 2017, 15:23) *
У Вас линию передачи не должны шунтировать ни источник питания, ни приёмники.
Этого можно добиться, если источник питания и приёмники будут иметь высокий
импеданс. Сделать это можно применив источники тока на обоих концах линии передачи,
точнее на одном из концов должна быть динамическая нагрузка.


Если вас не затруднит можете это как то схемотехнически показать?
1. До меня не доходит как к токовой петле подключить 16 датчиков.
2. питание и сигнал должны передаваться по двум проводам
3. датчик имеет двустороннею передачу
4. Потребление одного датчика 60 мА.

Я изначально думал чтобы всё это работало с интерфейсом ИРПС но так и не сообразил как это сделать
Rst7
Эх, ну все за вас рисовать надо.

Нажмите для просмотра прикрепленного файла

Нарисуйте это в симуляторе у себя и отработайте.

R7 и R12 - это Ваша нагрузка. Ну т.е. 7805 и далее.

R1R2C1C2C3 - это типа линия какая-то.

Порог на шине RXD, как видите, надо принять где-то в 4 вольта.

Не забудьте, что после окончания передачи выход драйвера надо переключить в Z-состояние.

Ну и с таким потреблением, скажу я Вам, не стыдно будет вместо 12 вольт поставить источник питания на 24 вольта. 16 датчиков по 50мА через не особо толстый кабель питать будет нечем.
ndmitrii
а для развязки блока питания и линии можно использовать n канальный транзистор?
wim
Цитата(Rst7 @ Sep 15 2017, 15:22) *
R1R2C1C2C3 - это типа линия какая-то.
ПМСМ автор собирается подключать 16 датчиков последовательно к сегментам одной двухпроводной линии. Если это так, то задача моделирования становится еще более увлекательной, т.к. надо учитывать падение постоянного напряжения на сегментах линии.
ndmitrii
Цитата(wim @ Sep 15 2017, 17:10) *
ПМСМ автор собирается подключать 16 датчиков последовательно к сегментам одной двухпроводной линии. Если это так, то задача моделирования становится еще более увлекательной, т.к. надо учитывать падение постоянного напряжения на сегментах линии.

Все датчики подключаются параллельно к двухпроводной линии питания.
ndmitrii
В эмуляторе всё работает красиво, в жизни оказалось немного не так, заменил дроссели на полевики и получил падение сигнала до 0.2 в прямо на столе с 16 датчиками.
Так что похоже дроссели придется оставить только пересчитать.
Несущую тоже оставлю, только занижу килогерц до 30-50
На входе детектора поставлю транзисторный усилитель
vfo
Да, индуктивность может заменить только стабилизатор тока. Он имеет высокое сопротивление по переменному току и низкое по постоянному. Уж совсем для разжевывания https://www.youtube.com/watch?v=T3JMdmOHhCs
При этом на биполярном или полевом транзисторе будет выполнен регулирующий элемент не имеет значения.
На частоте 100кГц индуктивность 800мкГн имеет сопротивление 500 Ом, так, что в нескольких параллельных устройствах надо иметь по несколько миллигенри.
ndmitrii
Цитата(Rst7 @ Sep 15 2017, 16:22) *
Ну и с таким потреблением, скажу я Вам, не стыдно будет вместо 12 вольт поставить источник питания на 24 вольта. 16 датчиков по 50мА через не особо толстый кабель питать будет нечем.

Проблемно понижать с 24 вольт до пяти при этом сохраняя маленький размер и низкое тепловыделение. Шимки ставить нельзя много от них шума.

А кто ни будь может подсказать как уменьшить слив сигнала на питании датчика, как бы я не бился с дросселями сливаю 200 милливольт.
Rst7
QUOTE
Проблемно понижать с 24 вольт до пяти при этом сохраняя маленький размер и низкое тепловыделение. Шимки ставить нельзя много от них шума.


Снижайте потребление датчиков. Что у Вас там жрет-то 50мА?
ndmitrii
Цитата(Rst7 @ Sep 17 2017, 13:03) *
Снижайте потребление датчиков. Что у Вас там жрет-то 50мА?

Это только часть схемы, а точнее передающая часть.
stells
Цитата(ndmitrii @ Sep 17 2017, 11:52) *
как бы я не бился с дросселями

еще раз: рисуйте схему в симуляторе, там "биться" проще
ndmitrii
Цитата(stells @ Sep 17 2017, 14:02) *
еще раз: рисуйте схему в симуляторе, там "биться" проще

В симуляторе всё великолепно показало, в жизни по хуже. в итоге добился через 500 метров сигнал в 800 милливольт, вполне читаемый.
stells
Цитата(ndmitrii @ Sep 17 2017, 14:32) *
в жизни по хуже

значит некорректно что-то задали, например параметры кабеля

пс: "похуже"
ndmitrii
Цитата(stells @ Sep 17 2017, 18:52) *
значит некорректно что-то задали, например параметры кабеля

пс: "похуже"


Я выше как то писал что не асс в эмуляторе и всё делаю по боевому в руках с паяльником. Эмулятор не собирает помех на линии да и что то я с индуктивностями
в нем нагородил не то но при этом он выдал мне на конце линии идеальную амплитуду аж в 2 вольта.
Но мой вопрос раскрыт полностью, и всё заработало!!! 20 числа будут испытания на полигоне.

Огромное спасибо за ваши советы, и отдельное спасибо Rst7 очень помог!!!

Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.