Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: Передача данных по цепи питания
Форум разработчиков электроники ELECTRONIX.ru > Интерфейсы > Форумы по интерфейсам
Страницы: 1, 2
Alex999
Добрый день. Возникла вот какая проблема: необходимо передать поток данных по двухпроводной линии. Пересмотрел весь форум и не один раз, поэтому и пришлось создавать новую тему, хотя подобные проблемы поднимались здесь уже не раз. Вообщем задача вот какая: необходимо передать поток данных по двухпроводной линии, одновременно и являющейся линией питания, с напряжением 12В постоянного тока. Ток по питанию примерно 15-20мА. скорость передачи от 64 до 115кбит, однонаправленный режим. К сожалению пока не знаю с какого конца ухватиться, поэтому и обращаюсь с вопросом, может кто-то решал уже подобную задачу..
Alex B._
Цитата(Alex999 @ Jul 16 2008, 14:57) *
с напряжением 12В постоянного тока. Ток по питанию примерно 15-20мА.

штатная проводка автомобиля?
stells
Цитата(Alex999 @ Jul 16 2008, 14:57) *
Добрый день. Возникла вот какая проблема: необходимо передать поток данных по двухпроводной линии. Пересмотрел весь форум и не один раз, поэтому и пришлось создавать новую тему, хотя подобные проблемы поднимались здесь уже не раз. Вообщем задача вот какая: необходимо передать поток данных по двухпроводной линии, одновременно и являющейся линией питания, с напряжением 12В постоянного тока. Ток по питанию примерно 15-20мА. скорость передачи от 64 до 115кбит, однонаправленный режим. К сожалению пока не знаю с какого конца ухватиться, поэтому и обращаюсь с вопросом, может кто-то решал уже подобную задачу..

всего десятью темами ниже:
http://electronix.ru/forum/index.php?showtopic=47593
Alex999
У меня скорости несколько больше, до 115кбит. длина кабеля до 100 метров, будет использоваться витая пара 5 категории.
stells
Цитата(Alex999 @ Jul 16 2008, 16:20) *
У меня скорости несколько больше, до 115кбит. длина кабеля до 100 метров, будет использоваться витая пара 5 категории.

ну и прекрасно! меня-то ограничивают только характеристики кабеля... 115кбит "прокачивает" любой приемопередатчик RS-485, витая пара имеет лучшие электрические характеристики, чем тот кабель, на который я ориентируюсь, поэтому меняете просто источник тока в той (второй) схемке на источник напряжения, а стабилитрон на приемной стороне на электролит... модуляцию только сделаете, как там советовали, например Манчестером, и не исключено, что в начале передачи кадра потребуется несколько "пустых" битов передать для перезаряда емкостей (так по ним можно устойчиво засинхронизироваться заодно)...
Alex999
Цитата(stells @ Jul 16 2008, 15:34) *
всего десятью темами ниже:
http://electronix.ru/forum/index.php?showtopic=47593


В последней схеме, не очень понятно, как на удаленной стороне восстанавливается постоянная составляющая, для питания и трансивера RS-485 и других компонентов. По идее с "+" вывода электролита надо поставить перемычку на "+" питания трансивера?
stells
Цитата(Alex999 @ Jul 17 2008, 12:09) *
В последней схеме, не очень понятно, как на удаленной стороне восстанавливается постоянная составляющая, для питания и трансивера RS-485 и других компонентов. По идее с "+" вывода электролита надо поставить перемычку на "+" питания трансивера?

у Вас питание линии 12В, так что просто запитать трансивер от линии не получится, да и напряжение на электролите нестабилизированное будет (линия-то длинная, а ток не постоянный)... поэтому там оставляете линейный стабилизатор (на схемке он указан) и спокойно питаете трансивер и все остальное... электролит побольше поставьте для лучшей помехозащищенности канала, а проходные конденсаторы для скорости 115кбит наверное и 1мкф хватит (подбирать надо по наилучшему восстановлению сигнала приемным трансивером, как их посчитать я не представляю)
я сейчас вплотную подошел к необходимости реализации подобного интерфейса, причем решил все-таки использовать не токовое питание линии, а именно напряжением, поэтому реальные результаты скоро будут, но если у Вас что-то появится, то тоже пишите
stells
собрал я ту свою макетную схемку с изменениями, которые Вам предложил: питание +12В, электролит на приемной стороне поставил 220мкф... работает все! с моим эквивалентом кабеля так же, как и с токовым питанием было, до 19200бит/с, а без эквивалента - до 1Мбит/с... я так предполагаю, что на 100-метровой витой паре 115кбит/с получите запросто

макетная схемка в этом варианте:
Нажмите для просмотра прикрепленного файла
Alex999
Собрал макет вот по этой схеме. Пока экспериментирую на столе, передавая файлы в терминалке и сравнивая переданный и полученный и результаты к сожалению не очень. прием есть, но вместо исходного файла идет какой то мусор на приеме. Пробовал на скоростях и 115200 и 57600. Питание смотрел, чистое. В чем может быть проблема? в номиналах индуктивностей?Нажмите для просмотра прикрепленного файла
stells
Цитата(Alex999 @ Aug 20 2008, 14:38) *
Собрал макет вот по этой схеме. Пока экспериментирую на столе, передавая файлы в терминалке и сравнивая переданный и полученный и результаты к сожалению не очень. прием есть, но вместо исходного файла идет какой то мусор на приеме. Пробовал на скоростях и 115200 и 57600. Питание смотрел, чистое. В чем может быть проблема? в номиналах индуктивностей?Нажмите для просмотра прикрепленного файла

не нашел пока даташиты на max13485 и mcp170250... мне кажется (во всяком случае я так делал), что нужно начать с того, что подать на передатчик просто меандр и убедиться в его хорошем восстановлении приемником. этого можно добиться подбором проходных емкостей и индуктивностей (как их посчитать - не знаю), а также резисторов подтяжки. так же на помехоустойчивость канала влияют емкости питания (выходная и входная) - их нужно увеличивать для получения отсутствия на них информационного сигнала, чтобы все выходное напряжение передатчика прикладывалось к дросселям.
ну и передавать конечно модулированный сигнал, например Манчестер.
да, трансиверы лучше использовать с ограничением по скорости
Alex999
Приемник и передатчик там MAX3280 и МАХ13485. А МСР1702 это стабилизатор 5-ти вольтовый. Меандр на передатчик подавал, на приемнике был нормальный чистый меандр.
stells
Цитата(Alex999 @ Aug 21 2008, 14:59) *
Приемник и передатчик там MAX3280 и МАХ13485. А МСР1702 это стабилизатор 5-ти вольтовый. Меандр на передатчик подавал, на приемнике был нормальный чистый меандр.

на передающей стороне трансивер 5-вольтовый, а на приемной - 3,3?
Alex999
Да, все верно. Просто не смог быстро для эксперимента найти 3,3В передатчик. А приемник 3,3В.
stells
Цитата(Alex999 @ Aug 21 2008, 15:08) *
Да, все верно. Просто не смог быстро для эксперимента найти 3,3В передатчик. А приемник 3,3В.

не знаю, насколько это корректно... сигнал модулируете как-нибудь?

если Вы пишете, что меандр был чистый, то и реальный сигнал (модулированный) должен быть нормальным, уж во всяком случае не "мусором"
Alex999
Сигнал пока без модуляции, но включаю, как говорится, "ноздря в ноздрю", без подключения промежуточного кабеля. и через терминалку гоняю текстовый файл на разных скоростях и смотрю что будет на выходе.
stells
Цитата(Alex999 @ Aug 21 2008, 15:32) *
Сигнал пока без модуляции, но включаю, как говорится, "ноздря в ноздрю", без подключения промежуточного кабеля. и через терминалку гоняю текстовый файл на разных скоростях и смотрю что будет на выходе.

так в этом и проблема... через проходные емкости сигнал "без возврата к нулю" не пройдет
Alex999
Получается что пакет нулей или единиц будет портить всу картину?
stells
Цитата(Alex999 @ Aug 21 2008, 15:44) *
Получается что пакет нулей или единиц будет портить всу картину?

конечно smile.gif
Alex999
Понятно. Спасибо!!! Буду что-то придумывать сейчас... По результатам отпишусь обязательно!
stells
Цитата(Alex999 @ Aug 21 2008, 15:51) *
Понятно. Спасибо!!! Буду что-то придумывать сейчас... По результатам отпишусь обязательно!

я сейчас делаю преобразователь RS-232 в этот интерфейс, о котором мы с Вами говорим, на tiny2313. просто у меня контроллер еще выполняет функцию повышающего DC-DC преобразователя для питания линии и я с ним заковырялся. только завтра закончу. а на следующей неделе буду макетировать интерфейс уже с реальным модулированным сигналом. что получится - напишу smile.gif
d-f-m
Один из вариантов передачи данных по цепи питания: на выходе UART контроллера ставим Low-Side MOSFET Drivers, например TC4452, который питается от 12...18 вольт. К выходу MOSFET Drivers подключаем витую пару - я скручивал четыре витых пары кабеля 5CAT в одну.
На другой конец ставим цепочку из диода шоттки и резистора 5...10 ом и тантала 100 мк на землю. От конденсатора запитывается через стабилизатор 5 вольт вся схема. С этого же конца витой пары через резистивный делитель сигнал подается на UART контроллера.
Схема проверена на 5-канальном таймере. Нагрузкой служили 5 дисплеев, каждый потреблял 60 ма.
Все работало на полной бухте кабеля 300 метров. В последствии был добавлен релейный блок, который потреблял 100 ма, но в нем пришлось добавить повышающий стабилизатор, т.к. на блок приходило 10в а под нагрузкой надо было 12в. Скорость передачи в канале была 19200. Больше не надо было. Чтобы не было провалов питания, в последовательность вводились 0xFF и паузы между пакетами. Проект работает больше года - сбоев ни разу небыло. Схему могу приложить после 25.08.08
stells
Цитата(d-f-m @ Aug 22 2008, 13:10) *
Один из вариантов передачи данных по цепи питания: на выходе UART контроллера ставим Low-Side MOSFET Drivers, например TC4452, который питается от 12...18 вольт. К выходу MOSFET Drivers подключаем витую пару - я скручивал четыре витых пары кабеля 5CAT в одну.
На другой конец ставим цепочку из диода шоттки и резистора 5...10 ом и тантала 100 мк на землю. От конденсатора запитывается через стабилизатор 5 вольт вся схема. С этого же конца витой пары через резистивный делитель сигнал подается на UART контроллера.
Схема проверена на 5-канальном таймере. Нагрузкой служили 5 дисплеев, каждый потреблял 60 ма.
Все работало на полной бухте кабеля 300 метров. В последствии был добавлен релейный блок, который потреблял 100 ма, но в нем пришлось добавить повышающий стабилизатор, т.к. на блок приходило 10в а под нагрузкой надо было 12в. Скорость передачи в канале была 19200. Больше не надо было. Чтобы не было провалов питания, в последовательность вводились 0xFF и паузы между пакетами. Проект работает больше года - сбоев ни разу небыло. Схему могу приложить после 25.08.08

я так понимаю, что у Вас передача возможна только в одну сторону?
d-f-m
Цитата(stells @ Aug 22 2008, 13:40) *
я так понимаю, что у Вас передача возможна только в одну сторону?

Да, только в одну сторону.
Alex999
Очень интересное решение. У меня тоже предполагается передача только в одну сторону, но питание подается со стороны приемника, поэтому было бы очень интересно посмотреть на схему включения.
С уважением,
stells
Цитата(d-f-m @ Aug 22 2008, 13:52) *
Да, только в одну сторону.

Алексу может и подойдет, а мне нужен полноценный полудуплекс... к тому же модуляция питания вещь не оригинальная и она плоха именно тем, что питание получается нестабилизированным... а в той схеме, что предложена выше, при достаточной емкости конденсаторов питания напряжение на них остается постоянным... т.е. и питание лучше, и помехозащищенность информационной составляющей лучше
d-f-m
Нашел PCAD, привожу фрагмент схемы. На входе приемника мостик из диодов шоттки - соблюдать полярность подключения не нужно.Нажмите для просмотра прикрепленного файла
Alex999
Интересное схемное решение, но у меня беда в том, что питание подается со стороны приемника а не передатчика.... 05.gif
Ruslan Konovalov
Возможно и не в тему, но вдруг пригодится я пробовал использовать схему от DiseqC позиционера,
см. схему.
Вывод RB0-прием, RB1-передача.
Скорость проверял до 230400, работало исправно.
stells
Нажмите для просмотра прикрепленного файла
смодулировал Манчестер и зациклил пока в одну сторону передачу байта 0b00010111 - здесь есть и последовательности нулей и единиц, и переходы. "1" представлена как переход из "1" в "0", ну а "0" - наоборот. часота модулированного сигнала - 19200бит/сек. эквивалент кабеля пока не подключал. восстановление сигнала приемным трансивером прекрасное - фронты плывут не более чем на 0,5мксек. на фотке желтый луч - передаваемый сигнал, красный - восстановленный сигнал, последний импульс - начало следующего байта. в линию подавалось питание +12В, от которых был запитан приемный трансивер. питание на приемной стороне очень чистое, шумов вообще нет.

Нажмите для просмотра прикрепленного файла
а это осциллограммы сигналов на выводах А и Б передающего трансивера. проходные емкости для частоты модулированного сигнала 19200бит/сек пришлось поставить 20мкФ (керамические 2*10), но видно, что их бы еще неплохо увеличить.
stells
Нажмите для просмотра прикрепленного файла
чтобы было понятнее
stells
искажения на выходах передающего трансивера не правиьно интерпретировал - потребовалось увеличение дросселей до 6,8мГн, а вот емкости конденсаторов оказалось достаточно и 10мкФ. при подключенном эквиваленте кабеля осциллограммы на выходах:
Нажмите для просмотра прикрепленного файла
осциллограммы передаваемого и восстановленного синалов (с эквивалентом, восстановленный сигнал - желтый луч, хотя их и не отличить):
Нажмите для просмотра прикрепленного файла
navy2000
Как думаете, если слэйвов будет много (120 шт), при длине витой пары до 400м будет работать такая схема?
На какую скорость можно будет расчитывать? Потреблять будут слэйвы не много, порядка 5мВт не считая драйвера 485-го.
stells
Цитата(navy2000 @ Feb 10 2010, 02:37) *
Как думаете, если слэйвов будет много (120 шт), при длине витой пары до 400м будет работать такая схема?

согласование драйверов в таком включении претерпело изменения:
Нажмите для просмотра прикрепленного файла
резисторы подтяжки по 20кОм (для трансиверов max483/485), стабилитроны 5,1В. точка-точка работает без проблем на 300м со скоростью 19200кбит/с. можно и больше, но я использую контроллеры AVR и большую скорость не осилю программно. я так полагаю, что количество слейвов может быть таким же, как и при штатном использовании трансиверов RS-485, но нужно учитывать влияние по переменной составляющей резисторов подтяжки 20кОм/120=167Ом, что соизмеримо со значением сопротивления терминаторов. при применении трансиверов с более высокоомным входом ситуация будет получше. для снижения нагрузки на трансиверы при многоточечном подключении нужно увеличивать скорость передачи и индуктивность дросселей
Microwatt
Ммм-да. Для четырехпроводной системы (две витых пары) вопрос уже решен и достаточно лаконично.
stells
да, но что делать, если провода всего два?
rezident
Цитата(stells @ Feb 11 2010, 00:10) *
да, но что делать, если провода всего два?
См. вложение. Пример на стр.5. (с) не мой. cool.gif
Microwatt
Цитата(rezident @ Feb 10 2010, 22:52) *
См. вложение. Пример на стр.5. (с) не мой. cool.gif

То ли в ссылке автор Михайлыч темнит, то ли и вправду темный. Линию передачи на схеме напрямую шунтирует источник питания. У него на выходе неслабый фильтр, который все эти микросекунды замоет на раз...
У STELSS более правдоподобно на вложении. Единственно - дроссели фильтров будут подмагничиваться. Это требует достаточно объемной конструкции с малыми параллельными паразитными емкостями. А вот в четырехпроводной линии это можно сделать на дифференциальных дросселях, очень простых и технологичных.
Но кто ж нам тут ее, четырехпроводку, даст....
stells
Цитата(rezident @ Feb 10 2010, 22:52) *
См. вложение. Пример на стр.5. (с) не мой. cool.gif

я давно видел этот вариант. но сравните его с тем, что я привел - разве не видно, что он значительно проще? все серийное, мотать трансформаторы не надо, да и правильно говорит Microwatt - шунтирует питание информационную составляющую
Цитата(Microwatt @ Feb 11 2010, 02:54) *
Единственно - дроссели фильтров будут подмагничиваться. Это требует достаточно объемной конструкции с малыми параллельными паразитными емкостями.

у меня была цель сделать систему на небольшое количество слейвов, в пределах 4-8 (сборка скважинных приборов). общее потребление 350-500мА. у мастера (там, где источник питания) дроссели на каркасах EFD20(25) (сейчас для одного слейва вообще на EFD15 намотаны), у слейвов (потребление каждого 70-100мА) - серийные SDR1005-103

Цитата(Microwatt @ Feb 11 2010, 02:54) *
А вот в четырехпроводной линии это можно сделать на дифференциальных дросселях, очень простых и технологичных.
Но кто ж нам тут ее, четырехпроводку, даст....

вот так?:
Нажмите для просмотра прикрепленного файла
показаны трансформаторы, но можно и на дросселях сделать. постоянный ток подмагничивания действительно отсутствует, но нужно 4 провода
Microwatt
Цитата(stells @ Feb 11 2010, 09:03) *
вот так?:
показаны трансформаторы, но можно и на дросселях сделать. постоянный ток подмагничивания действительно отсутствует, но нужно 4 провода

Да, очень похоже. На этом принципе я делал эзернетовский адаптер. По хорошему кабелю 230 метров пинговали- потерь пакетов на 100тыс не обнаружили. Шло успешно в серии несколько тысяч.
Если есть EFD20, то дроссели с подмагничиванием, конечно, получатся. У меня в четырехпроводке были 10-мм колечки.
stells
Цитата(Microwatt @ Feb 11 2010, 10:06) *
У меня в четырехпроводке были 10-мм колечки.

в четырехпроводке можно и серийные дроссели подавления ЭМП использовать с Z-включением обмоток. при малых токах питания вплоть до таких:
http://chipdip.ru/product0/516837016.aspx

Цитата(Microwatt @ Feb 11 2010, 10:06) *
По хорошему кабелю 230 метров пинговали

интересно, а на какой скорости и с каким количеством абонентов? все-таки индуктивности параллелятся и нагружают передатчик
Microwatt
Цитата(stells @ Feb 11 2010, 12:15) *
интересно, а на какой скорости и с каким количеством абонентов? все-таки индуктивности параллелятся и нагружают передатчик

Это было соединение точка-точка. 100Мбит стандартный инетовский канал.
Индуктивности были порядка 2х800мкГн. Просчитывали, что они садят сигнал где-то на 3%. Но индуктивности с очень малой, неизмеряемой подручными средствами паразитной емкостью. Один слой намотки ПЭЛШО, это с небольшим принудительным шагом автоматом получается. Разделительные конденсаторы - 0.33мкФ пленка малогабаритные. Где-то 5х7 мм.
Однако, через сии дроссели по постоянке прокачивалось ватт 50-70.
navy2000
Для четырехпроводной линии не понятна сама задача, ведь по второй паре можно и питание пустить отдельно?
Гораздо интереснее сделать для двух проводной схемы. Причем, о качестве проводов заранее ничего не известно.
Можно юзеру только порекомендовать. Поэтому вопрос даже немного шире.
Нужно создать двухпроводную симплексную линию связи, с питанием абонентов от этой же линии.
Какой интерфейс использовать (физический уровень)? Требуемая приведенная скорость передачи, порядка 38 400 б/c.
Длинна линии (от терминатора до терминатора RS485) 400м. В случае RS485 можно использовать драйвера и получше
чем MAX483/MAX485, например SN65NVD22. Но не хотелось бы увеличивать уровень постоянки в линии до 60В.
Да и общее потребление всех слейвов создаст немалый постоянный ток, дросселя могут уйти в насыщение. Или габариты
дросселей придется делать немаленькие. А слейвы задумываются встраиваемые в стандартные измерительные датчики,
места там не много.
stells
Цитата(navy2000 @ Feb 11 2010, 16:30) *
Для четырехпроводной линии не понятна сама задача, ведь по второй паре можно и питание пустить отдельно?

в общем да, но в случае, о котором говорит Microwatt, все 4 провода используются и для питания, и для передачи информации. на длинной линии получаем уменьшение вдвое омического сопротивления, следовательно снижение потерь и увеличение амплитуды сигнала на приемной стороне
navy2000
Линии уже проложены, на большинстве объектов. Так что маневра у меня нет.
А что в общем скажете, по остальным вопросам?
stells
Цитата(navy2000 @ Feb 11 2010, 16:30) *
не хотелось бы увеличивать уровень постоянки в линии до 60В.

если у Вас 120 слейвов, потребляющих 5мА, а сопротивление токопроводящих жил кабеля (допустим) 25Ом (на 400м), то на кабеле упадет 25*2*120*0,005=30В

я не нашел даташит на SN65NVD22, приведите пожалуйста
navy2000
Цитата
я не нашел даташит на SN65NVD22, приведите пожалуйста

http://focus.ti.com/docs/prod/folders/print/sn65hvd22.html

Цитата
если у Вас 120 слейвов, потребляющих 5мА, а сопротивление токопроводящих жил кабеля (допустим) 25Ом (на 400м), то на кабеле упадет 25*2*120*0,005=30В


Я специально указывал 5 мВт (чтобы не привязываться к напряжению питания). Правда это без мощности потребляемой драйверами.
stells
Цитата(navy2000 @ Feb 11 2010, 17:02) *
Я специально указывал 5 мВт (чтобы не привязываться к напряжению питания). Правда это без мощности потребляемой драйверами.

да, это я проглядел. посчитать надо аккуратненько. при питании слейвов 5В ток потребления 1мА, драйвер только один может работать на передачу, сопротивление ТПЖ пусть будет 25Ом на 400м (самый плохой кабель). на кабеле упадет в этом случае 25*2*(120*0,001+0,1)=11В. т.е. питание линии может быть не больше 24В
трансиверы sn65nvd22 с высокоомным входом и общее входное сопротивление приемников получится на порядок больше волнового сопротивления кабеля 96кОм/120=800Ом. и не факт, что им вообще потребуется подтяжка, у них похоже вход выведен на полпитания:
Нажмите для просмотра прикрепленного файла
суммарная индуктивность 120 дросселей составит (для индуктивности каждого 10мГн) 10000*2/120=167мкГн. симулятор говорит, что падение амплитуды сигнала на дросселях на частоте 38400кГц должно составить не более 100мВ
т.е. в первом приближении должно работать
rezident
Цитата(stells @ Feb 11 2010, 11:03) *
я давно видел этот вариант. но сравните его с тем, что я привел - разве не видно, что он значительно проще?
Только помехоустойчивость вашей схемы весьма низкая по сравнению со штатным использованием драйверов RS485.
Цитата(stells @ Feb 11 2010, 11:03) *
вот так?:
показаны трансформаторы, но можно и на дросселях сделать.
Чушь это по-моему sad.gif Драйвер RS485 не предназначен для управления обмоткой трансформатора, это раз. Во-вторых, нужно формировать импульсы для обмотки транса, иначе в паузах между передачами пакетов или в случае зависания узла через обмотку трансформатора будет протекать постоянный ток. К тому же произвольную скорость передачи при таком включении уже не выберешь. Нужно привязываться с битовой скоростью к типу трансформатора.
stells
Цитата(navy2000 @ Feb 11 2010, 16:46) *
Линии уже проложены, на большинстве объектов. Так что маневра у меня нет.

если линии проложены, то ничто не мешает провести натурный эксперимент - загнать меандр нужной частоты в линию и посмотреть, что на другом конце (естественно навешав на линию суммарную нагрузку в виде дросселей)
navy2000
Это семейство драйверов интересно не только высоким входным сопротивлением, вот здесь почитайте:
Интерфейсы RS-485 дальнего радиуса действия

Я правильно понимаю, что дроссели на слэйвах должны расчитываться на ток потребления только самого слэва?
То есть их можно применить небольшие и не бояться насыщения.
А вот дроссели на мастере должны быть расчитаны на суммарный ток потребления всей линии. Верно?

И у меня тут новая проблема назревает. Руководством предложено питать от линии еще и сами измерительные датчики
А это примерно 0,4Вт. Как бы мне посчитать, может ли это в принципе заработать? Или отбиваться всеми конечностями?
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.
Invision Power Board © 2001-2025 Invision Power Services, Inc.