Преобразовать PWM в напряжение

Доброго времени суток всем!

Собирается устройство на Atmega16. Нужно иметь источник регулируемого напряжения, прижем пульсации в этом напряжении необходимы не более 1 мВ. Подаваться оно будет на вход операционного усилителя, т.е. тока потребляться практически не будет. Кто подскажет схему как преобразовать выход PWM в это самое напряжение чтоб не было пульсаций? Это реально сделать?

Reply to
Maxim Krasovsky
Loading thread data ...

Пpивет, Maxim!

*** 24 Dec 05 21:08, Maxim Krasovsky wrote to All:

MK> Собирается устройство на Atmega16. MK> Hужно иметь источник регулируемого напряжения, прижем пульсации в этом MK> напряжении необходимы не более 1 мВ. Подаваться оно будет на вход MK> операционного усилителя, т.е. тока потребляться практически не будет. MK> Кто подскажет схему как преобразовать выход PWM в это самое MK> напряжение чтоб не было пульсаций? Это реально сделать?

ФHЧ сделай и будет тебе счастье. Бери частоту повыше (чтобы фильтровать было проще), и, если ФHЧ активный, то и операционник для него соответствующего быстродействия...

с уважением Владислав

Reply to
Vladislav Baliasov

Hello, Maxim Krasovsky! You wrote in conference fido7.ru.embedded to All on Sat, 24 Dec 2005 18:08:34 +0000 (UTC):

MK> Собирается устройство на Atmega16. MK> Нужно иметь источник регулируемого напряжения, прижем MK> пульсации в этом напряжении необходимы не более 1 мВ. MK> Подаваться оно будет на вход операционного усилителя, т.е. MK> тока потребляться практически не будет. MK> Кто подскажет схему как преобразовать выход PWM в это самое MK> напряжение чтоб не было пульсаций? Это реально сделать?

Вполне, R-C цепочкой с подходящей постоянной времени. Это естественно наложит ограничение на генерируемую таким образом частоту.

dima

formatting link

Reply to
Dmitry Orlov

Пpивет, Maxim!

Дело было 24 Dec 05, Maxim Krasovsky писал All

MK> Собирается устройство на Atmega16. MK> Hужно иметь источник регулируемого напряжения, прижем пульсации в этом MK> напряжении необходимы не более 1 мВ. Подаваться оно будет на вход MK> операционного усилителя, т.е. тока потребляться практически не будет. MK> Kто подскажет схему как преобразовать выход PWM в это самое напряжение MK> чтоб не было пульсаций? Это реально сделать? обычный интегратор, можно даже пассивный (R C цепочка)

R*C выбирай из усовия примерно 10/fмод где fмод - частота ШИМ модулирования разумеется таким образом ты получаешь на ограничение частоты изменения своего выходного сигнала :) но условий оговорено не было.

Всего наилучшего. Пока.

Reply to
Stas Shilo

Sun Dec 25 2005 08:59, Stas Shilo wrote to Maxim Krasovsky:

MK>> Kто подскажет схему как преобразовать выход PWM в это самое напряжение MK>> чтоб не было пульсаций? Это реально сделать?

SS> обычный интегратор, можно даже пассивный (R C цепочка)

ФНЧ. Настоящим интегратором-то как раз ничего не получится ;-)

Пока Алексей

Reply to
Alex Kouznetsov

Hello Maxim!

24 Dec 05 21:08, you wrote to All:

MK> Собирается устройство на Atmega16. MK> Hужно иметь источник регулируемого напряжения, прижем пульсации в этом MK> напряжении необходимы не более 1 мВ. Подаваться оно будет на вход MK> операционного усилителя, т.е. тока потребляться практически не будет. MK> Кто подскажет схему как преобразовать выход PWM в это самое напряжение MK> чтоб не было пульсаций? Это реально сделать?

Элементарно, Ватсон. Задано значение величины пульсаций. Берем любой ФHЧ с соответствующим известным из литературы значением подавления частоты ШИМ, втыкаем между выходом и операционником - и понеслась душа в Ад. Я бы сделал цепочку из готовых дросселей и конденсаторов, плюс звено-два фильтра-пробки, настроенные на первую гармонику частоты ШИМ.

Грабли будут в другом месте: 1) ФHЧ будет отрабатывать скачок напряжения довольно долго. Возможно, алгоритм управления придется изменять соответственно.

2) Фильтр-пробка требует настройки. Hо я скорее возьмусь за настройку отматыванием витков, чем впаяю активный фильтр на операционнике - это моя личная разновидность Жабы Высокого Давления.

Anatoly

Reply to
Anatoly Mashanov

Sun Dec 25 2005 18:38, Anatoly Mashanov wrote to Maxim Krasovsky:

MK>> Собирается устройство на Atmega16. MK>> Hужно иметь источник регулируемого напряжения, прижем пульсации в этом MK>> напряжении необходимы не более 1 мВ. Подаваться оно будет на вход MK>> операционного усилителя, т.е. тока потребляться практически не будет. MK>> Кто подскажет схему как преобразовать выход PWM в это самое напряжение MK>> чтоб не было пульсаций? Это реально сделать?

AM> Элементарно, Ватсон.

Hет, не элементарно, но возможно.

AM> Задано значение величины пульсаций. Берем любой ФHЧ AM> с соответствующим известным из литературы значением подавления частоты AM> ШИМ, втыкаем между выходом и операционником - и понеслась душа в Ад. Я бы AM> сделал цепочку из готовых дросселей и конденсаторов, плюс звено-два AM> фильтра-пробки, настроенные на первую гармонику частоты ШИМ.

Коль скоро интересуют пульсации 1mV, следовательно интересует точность или хотя бы разрешающая способность ШИМ такого же порядка. При реализации в лоб это означает несушую ШИМ в единицы килогерц и весьма неслабый ФHЧ. Особенно учитывая требуемую DC точность. Я бы сделал ШИМ на более высокой несущей с noise shaping и dithering. Это позволило бы сильно упростить ФHЧ.

AM> Грабли будут в другом месте:

Грабли будут в другом месте: точность опорного напряжения и одинаковость силы, с которой ключ ШИМ тянет вниз и вверх. И то и другое должно быть порядка 1e-4, т.е. требует аккуратной схемотехники.

AM> 1) ФHЧ будет отрабатывать скачок напряжения AM> довольно долго.

Аналоговый ФHЧ с Fc ~ 1Hz и DC точностью ~1e-3 практически нереализуем.

VLV

"Я добрый, и это единственный мой недостаток" (Достоевский)

Reply to
Vladimir Vassilevsky

Пробовал я и ФНЧ и интегратор. Результат мне не понравился. Приведу задачу, может кто-то подскажет как ее решить. Делаю зарядное устройство. Один из критериев окончания заряда dV/dt. Мне надо мерять dV. Опорное напряжение на АЦП делаю 1В, что по идее дает разрешение 1 мВ при 10 битах. Напряжение с батареи подавать на АЦП резистивным делителем не получится - искомое dV поделится и ниего я не найду. При помощи дифференциального усилителя хочется из полного напряжения батареи вычесть определенное напряжение (чтоб разность была меньше 1В). На один вход дифусилителя подается напряжние с батареи, на второй подается опорное напряжение которое должно вычитаться. Опорное напряжение должно формироваться в зависимости от текущего напряжение на батарее. Напряжение батареи 1,2-14 В. Разрешение здесь особого не надо,

Reply to
Maxim Krasovsky

Hello, Maxim Krasovsky! You wrote in conference fido7.ru.embedded to Maxim Krasovsky on Sun, 25 Dec 2005 18:12:41

+0000 (UTC):

MK> Пробовал я и ФНЧ и интегратор. Результат мне не понравился. MK> Приведу задачу, может кто-то подскажет как ее решить. MK> Делаю зарядное устройство. Один из критериев окончания заряда MK> dV/dt. Мне надо мерять dV. Опорное напряжение на АЦП делаю

Возьми АЦП с разрядностью по-больше и не ищи приключений.

dima

formatting link

Reply to
Dmitry Orlov

Sun Dec 25 2005 20:12, Maxim Krasovsky wrote to Maxim Krasovsky:

MK> Пробовал я и ФHЧ и интегратор. Результат мне не понравился. Ruki.sys

MK> Приведу задачу, может кто-то подскажет как ее решить. MK> Делаю зарядное устройство. Один из критериев окончания заряда dV/dt. Мне MK> надо мерять dV. Опорное напряжение на АЦП делаю 1В, что по идее дает MK> разрешение 1 мВ при 10 битах.

AFAIR у AVR точность ADC гарантирована при опорном напряжении более 2.7V.

MK> Hапряжение с батареи подавать на АЦП MK> резистивным делителем не получится - искомое dV поделится и ниего я не MK> найду. При помощи дифференциального усилителя хочется из полного MK> напряжения батареи вычесть определенное напряжение (чтоб разность была MK> меньше 1В). Hа один вход дифусилителя подается напряжние с батареи, на MK> второй подается опорное напряжение которое должно вычитаться. Опорное MK> напряжение должно формироваться в зависимости от текущего напряжение на MK> батарее. Hапряжение батареи 1,2-14 В. Разрешение здесь особого не надо, При наличии опыта и умения можно так сделать, но зачем? Тем более если опыта нет, поставь хороший внешний ADC и не парься.

VLV

"Я добрый, и это единственный мой недостаток" (Достоевский)

Reply to
Vladimir Vassilevsky

Sun Dec 25 2005 20:12, Maxim Krasovsky wrote to Maxim Krasovsky:

MK> Приведу задачу, может кто-то подскажет как ее решить. MK> Делаю зарядное устройство.

Для чего?

formatting link
WBR, Yuriy

Reply to
Yuriy K

MK>> Приведу задачу, может кто-то подскажет как ее решить. MK>> Делаю зарядное устройство.

YK> Для чего?

YK>

formatting link
d=411&uiTemplateId=NODE_STRY_PGE_T

Надо такое:

formatting link
Купить-то его можно, но во-первых хочется самому сделать, а во вторых он нужен не один.

Reply to
Maxim Krasovsky

Пpивет, Maxim!

*** 25 Dec 05 21:12, Maxim Krasovsky wrote to Maxim Krasovsky:

MK> Пробовал я и ФHЧ и интегратор. Результат мне не понравился.

Значит, не так делал.

MK> Приведу задачу, может кто-то подскажет как ее решить. MK> Делаю зарядное устройство. Один из критериев окончания заряда dV/dt. MK> Мне надо мерять dV. Опорное напряжение на АЦП делаю 1В,

Внимательно посмотри даташит в разделе электрических характеристик ADC. И больше так не делай.

MK> что по идее MK> дает разрешение 1 мВ при 10 битах. Hапряжение с батареи подавать на MK> АЦП резистивным делителем не получится - искомое dV поделится и ниего MK> я не найду. При помощи дифференциального усилителя хочется из полного MK> напряжения батареи вычесть определенное напряжение (чтоб разность была MK> меньше 1В). Hа один вход дифусилителя подается напряжние с батареи, MK> на второй подается опорное напряжение которое должно вычитаться. MK> Опорное напряжение должно формироваться в зависимости от текущего MK> напряжение на батарее. Hапряжение батареи 1,2-14 В. Разрешение здесь MK> особого не надо,

Для _батареи_ - проще поделить. А для отдельных элементов - правильнее всего сделать несколько независимых каналов зарядки и измерения.

с уважением Владислав

Reply to
Vladislav Baliasov

Hello Vladimir!

25 Dec 05 19:52, you wrote to me:

VV> Коль скоро интересуют пульсации 1mV, следовательно интересует VV> точность или хотя бы разрешающая способность ШИМ такого же порядка. Hе следовательно. Могу себе вполне представить источник, от которого требуется выдача напряжений через 1/10 вольта, но пульсации ограничены милливольтом. VV> Я бы сделал ШИМ на более высокой несущей с noise shaping и dithering. VV> Это позволило бы сильно упростить ФHЧ. Я бы тоже сделал. Вот только такой дивайс я собирал на рассыпухе в виде пары счетчиков, пары компараторов и триггера, и не знаю готового дивайса для этой цели, если не считать 155ИЕ8.

Anatoly

Reply to
Anatoly Mashanov

Hello, Anatoly!

Понедельник Декабрь 26 2005 09:07, Anatoly Mashanov wrote to Vladimir Vassilevsky: VV>> Я бы сделал ШИМ на более высокой несущей с noise shaping и VV>> dithering. VV>> Это позволило бы сильно упростить ФHЧ. AM> Я бы тоже сделал. Вот только такой дивайс я собирал на рассыпухе в AM> виде пары счетчиков, пары компараторов и триггера, и не знаю готового AM> дивайса для этой цели, если не считать 155ИЕ8. возьми одникристалку какую-нибудь.

Best regards и все такое... Sergey. [Death/Black/Power Metal]

Reply to
Sergey Shopin

Hello Sergey!

26 Dec 05 20:52, you wrote to me:

VV>>> Это позволило бы сильно упростить ФHЧ. AM>> Я бы тоже сделал. Вот только такой дивайс я собирал на рассыпухе AM>> в виде пары счетчиков, пары компараторов и триггера, и не знаю AM>> готового дивайса для этой цели, если не считать 155ИЕ8. SS> возьми одникристалку какую-нибудь.

Окей. Предложи однокристалку, которая способна выполнить следующий цикл за 150 нсек (Или около того, и всегда за одно и то же время): char i,i1; loop: i++; i1=0; if(i&1) i1 |= 0x80; if(i&2) i1 |= 0x40; if(i&4) i1 |= 0x20; if(i&8) i1 |= 0x10; if(i&0x10) i1 |= 8; if(i&0x20) i1 |= 4; if(i&0x40) i1 |= 2; if(i&0x80) i1 |= 1; /* При желании заменить перекодировку i в i1 на таблицу */ if(i1 > input()) output(0); else output(1); goto loop;

Либо предложи более эффективный алгоритм.

Anatoly

Reply to
Anatoly Mashanov

Hello, Anatoly Mashanov! You wrote in conference fido7.ru.embedded to Sergey Shopin on Tue, 27 Dec 2005 18:55:36

+0300:

VV>>>> Это позволило бы сильно упростить ФHЧ. AM>>> Я бы тоже сделал. Вот только такой дивайс я собирал на AM>>> рассыпухе в виде пары счетчиков, пары компараторов и AM>>> триггера, и не знаю готового дивайса для этой цели, если не AM>>> считать 155ИЕ8. SS>> возьми одникристалку какую-нибудь.

AM> Окей. Предложи однокристалку, которая способна выполнить AM> следующий цикл за 150 нсек (Или около того, и всегда за одно и AM> то же время):

AM> char i,i1; AM> loop:

[Sorry, skipped] AM> goto loop;

AM> Либо предложи более эффективный алгоритм.

Алгоритм чего?

dima

formatting link

Reply to
Dmitry Orlov

Привет Anatoly!

27 Dec 05 18:55, Anatoly Mashanov писал Sergey Shopin:

AM> Окей. Предложи однокристалку, которая способна выполнить следующий AM> цикл за 150 нсек

Я пропустил начало (может там были дополнительные условия), но на эту задачу "просится" самая малкая ПЛИС типа EPM3032.

AM> Anatoly

Всего наилучшего, [Team PCAD 2000] Алексей М. ... Собака - вдруг человека...

Reply to
Alex Mogilnikov

Hello Dmitry!

27 Dec 05 22:06, you wrote to me:

AM>> Либо предложи более эффективный алгоритм.

DO> Алгоритм чего? [Цитирую предыдущее письмо] VV>>> Я бы сделал ШИМ на более высокой несущей с noise shaping и VV>>> dithering. VV>>> Это позволило бы сильно упростить ФHЧ. AM>> Я бы тоже сделал. Вот только такой дивайс я собирал на рассыпухе AM>> в виде пары счетчиков, пары компараторов и триггера, и не знаю AM>> готового дивайса для этой цели, если не считать 155ИЕ8. SS> возьми одникристалку какую-нибудь. [Конец цитаты]

Anatoly

Reply to
Anatoly Mashanov

Hello Alex!

28 Dec 05 01:23, you wrote to me:

AM>> Окей. Предложи однокристалку, которая способна выполнить AM>> следующий цикл за 150 нсек

AM> Я пропустил начало (может там были дополнительные условия), но на AM> эту задачу "просится" самая малкая ПЛИС типа EPM3032.

Там были дополнительные условия: оппонент утверждает, что какой-нибудь однокристалки (а вовсе не ПЛИС) достаточно. Если он это утверждает, то очевидно, что он обладает алгоритмом, который реально позволяет выполнить данную задачу (алгоритм счетчика 155ИЕ8 на 8 мгц тактовой как минимум или аналогичный) на однокристалке. Мне бы хотелось этот алгоритм знать.

Anatoly

Reply to
Anatoly Mashanov

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.