DASM 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба поставьте лучше ЦАП 8 ногий, у Филипса были такие 8-ногие в ДИП корпусе Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nightmare76 0 1 августа, 2014 Опубликовано 1 августа, 2014 (изменено) · Жалоба А чем это проблематичен RC фильтр при коэффициенте заполнения меньше 50%? Где в принцип его работы входят проценты? проблема в постоянной времени. в идеале постоянная времени RC цепи должна быть равна периоду. Если длительность импульса меньше чем половина периода, то конденсатор разрядится до нуля ДО прихода следующего импульса. Если увеличить постоянную времени, то начинается проблема с переходом когда рядом расположены импульсы с коэффициентом заполнения больше 50 %. Пример: пришёл импульс с длительностью 50% от преиода и амплитудой ШИМ 5В. Конденсатор зарядился от нуля до напряжения 2В. За паузу длительностью 50% от периода он не успеет разрядиться до нуля и на нём останется напряжение Uост > 0 (постоянная времени RC больше периода!!!). Следующий такой же импульс заряжает конденсатор до напряжения 2В + Uост (началась накапливаться ошибка.). Следующий такой импульс зарядит конденсатор до ещё большего значения (примерно 2В + 2Uост) и т.д. Если длительность импульсов не измениться, то через некоторое количество импульсов конденсатор зарядится до 5В. Поскольку частота низкая, можно ШИМом управлять источником тока который будет заряжать конденсатор (этим мы обеспечим линейность преобразования ШИМ-напряжение), с конденсатора по заднему фронту импульса снять пиковым детектором напряжение пропорциональное длительность импульса ШИМ после чего сбросить напряжение на конденсаторе в ноль тем самым подготовив его к приходу следующего импульса. Ток заряда конденсатора выбирается так, чтобы время заряда конденсатора было равно периоду ШИМ. Изменено 1 августа, 2014 пользователем Nightmare76 Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
thamjell 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба Поскольку частота низкая, можно ШИМом управлять источником тока который будет заряжать конденсатор (этим мы обеспечим линейность преобразования ШИМ-напряжение), с конденсатора по заднему фронту импульса снять пиковым детектором напряжение пропорциональное длительность импульса ШИМ после чего сбросить напряжение на конденсаторе в ноль тем самым подготовив его к приходу следующего импульса. Ток заряда конденсатора выбирается так, чтобы время заряда конденсатора было равно периоду ШИМ. Исчерпывающий ответ) Спасибо Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба Это дурдом имхо такое городить. проблема в постоянной времени. в идеале постоянная времени RC цепи должна быть равна периоду. Если длительность импульса меньше чем половина периода, то конденсатор разрядится до нуля ДО прихода следующего импульса. Если увеличить постоянную времени, то начинается проблема с переходом когда рядом расположены импульсы с коэффициентом заполнения больше 50 %. Пример: пришёл импульс с длительностью 50% от преиода и амплитудой ШИМ 5В. Конденсатор зарядился от нуля до напряжения 2В. За паузу длительностью 50% от периода он не успеет разрядиться до нуля и на нём останется напряжение Uост > 0 (постоянная времени RC больше периода!!!). Следующий такой же импульс заряжает конденсатор до напряжения 2В + Uост (началась накапливаться ошибка.). Следующий такой импульс зарядит конденсатор до ещё большего значения (примерно 2В + 2Uост) и т.д. Если длительность импульсов не измениться, то через некоторое количество импульсов конденсатор зарядится до 5В. Поскольку частота низкая, можно ШИМом управлять источником тока который будет заряжать конденсатор (этим мы обеспечим линейность преобразования ШИМ-напряжение), с конденсатора по заднему фронту импульса снять пиковым детектором напряжение пропорциональное длительность импульса ШИМ после чего сбросить напряжение на конденсаторе в ноль тем самым подготовив его к приходу следующего импульса. Ток заряда конденсатора выбирается так, чтобы время заряда конденсатора было равно периоду ШИМ. Вы, как мне кажется, совершенно не представляете себе работу RC цепочки, да и понятие "постоянная времени" сильно отличается от классического :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
SSerge 4 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба ... "Наша наука простая: но Псалтирю да по Полусоннику, а арифметики мы нимало не знаем." А просто написать и решить дифуравнение не проще ли? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
kovigor 5 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба А просто написать и решить дифуравнение не проще ли? Я не случайно в самом начале ссылку на Трамперта дал. Там теория расписана. И практика - тоже. Да только не слушают меня :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
thamjell 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба А просто написать и решить дифуравнение не проще ли? Кажется, что это сарказм Я не случайно в самом начале ссылку на Трамперта дал. Там теория расписана. И практика - тоже. Да только не слушают меня :) Скачал, посмотрел, хотел побыстрее и не стал читать :) А похоже, что придётся :laughing: Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
ViKo 1 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба проблема в постоянной времени. в идеале постоянная времени RC цепи должна быть равна периоду. Нет, не должна, и поэтому остальное все неверно. Постоянная времени должна определяться скоростью изменения НЧ сигнала, модулирующего ШИМ. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
khlenar 5 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба Самое лучшее ЦАП, тем более на 8 бит. С помощью ШИМ качественного сигнала не получите. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nightmare76 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба А если это скорость не известна? Или близка к частоте ШИМ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба Можно проще. К выходу ШИМ подключаем сервомашику, они как раз управляются ШИМ-ом. На вал сервомашинки крепим потенциометр. Соответсвенно ШИМ будет определять угол, на который сервомашинка повернет вал потенциометра. Ну а снять с потенциометра напряжение, пропорциональное углу поворота вала вроде более простая задача... Вот такая пойдет вполне. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
iosifk 3 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба Есть некий прибор, построенный на одном весьма обеднённом функциональностью микроконтроллере (имеется в виду Arduino). Появилась идея немного усовершенствовать этот прибор, но для этого надо бы получить регулируемое постоянное напряжение с аналогового выхода микроконтроллера. Поскольку таковых выходов у него нету, но есть цифровые и ШИМ-выводы, то появилась мысль получить требуемое напряжение при помощи широтно-импульсной модуляции. Ширина импульсов в таком случае будет регулироваться через приложение на компьютере. Вот и вся проблема. Конечно, лучше использовать более продвинутые микроконтроллеры, вроде STM32, однако на переход к ним потребуется гораздо больше времени, чем на получение аналогового напряжения с ШИМ. Если бы было достаточно времени я бы этим занялся, но времени не так уж и много, поэтому хочу сделать всё на ШИМ ну наконец-то... Обычно я всегда задаю вопрос: "а что на самом деле нужно?"... И вот наконец-то выясняется, что вся головоломка яйца выйденного не стоит... 1. Делать ШИМ и его потом обрабатывать - это идиотизм. Проще купить копеечный ЦАП с последовательным интерфейсом... 2. А если будут крики о том, что не хватает выводов, то и это не проблема. Или взять сдвиговый регистр и через него управлять периферией. Или на SPI перевесить периферию, что то-же самое. Или на I2C... А выкрутасы с ШИМ - это бред... И заявления о 0 и 100% - тоже бред... Если все делается в микроконтроллере и код доступен... В очередной раз подтверждается - НЕПРАВИЛЬНОЕ СУЖДЕНИЕ приводит к НЕПРАВИЛЬНОЙ ЗАДАЧЕ. И порождает бессмысленные дискуссии... А вот это: "постоянная времени RC цепи должна быть равна периоду" - бред не только редкостный, но еще и дикий, т.к. написал это человек, абсолютно не понимающий ничего в автоматическом регулировании! Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Егоров 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба Прям какой-то конкурс наипростейших решений. От простейшего ЦАП до наипростейшей сервомашинки. Лучшее решение тут простой RC-фильтр. Постоянная времени его - как масло к каше - чем больше, тем меньше погрешность преобразования. Но это при условии, что частота ШИМ на 1-2 порядка выше частоты изменения сигнала. И еще, на выходе фильтра должен быть повторитель напряжения, достаточно высокоомный по входу. Если же частота ШИМ сравнима со скоростью изменения параметра дело обстоит сложнее. Теоретически информация сохраняется, если частота ШИМ хотя бы вдвое выше частоты изменения сигнала, но фильтрация уже требует достаточно тщательных расчетов. В этом случае поможет не АЦП или ЦАП (они тут вообще ни при чем), а прямое измерение параметров ШИМ ( соотношение длительностей сигнала и паузы) и вычисления, если МК позволит по скорости. Последнее уже за исходными рамками задачи, поскольку требуется преобразование ШИМ - напряжение, а не ШИМ-код. З.Ы. А в общем-то, выше iosifk заметил верно - неправильная постановка задачи приводит к заведомо неудачным решениям. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
Nightmare76 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба А вот это: "постоянная времени RC цепи должна быть равна периоду" - бред не только редкостный, но еще и дикий, т.к. написал это человек, абсолютно не понимающий ничего в автоматическом регулировании! у как у Вас тут плохо всё..... Вы ещё обратную связь найдите здесь. Я решил задачу для преобразования ШИМ напряжение в пределах ОДНОГО периода. Поэтому время заряда конденсатора должно быть равно периоду. Если частота моделируемого сигнала много больше частоты ШИМ то достаточно просто RC цепи с постоянной времени равной моделируемому сигналу. Читайте внимательно что я написал. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
DASM 0 1 августа, 2014 Опубликовано 1 августа, 2014 · Жалоба при ненулевом сопротивлении источника и ненулевой емкости время его полного заряда, собственно говоря - бесконечно. Что дальше ? Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться