Заголовок сообщения: Re: БП с цифровым управлением.
Добавлено: Чт июл 15, 2010 07:01:32
Держит паяльник хвостом
Карма: 19
Рейтинг сообщений: 152
Зарегистрирован: Ср мар 03, 2010 11:48:00 Сообщений: 999 Откуда: Уфа
Рейтинг сообщения:0
kotyk7 Для вашей задумки всего хватает. Оставляете как есть один ЦАП для регулирования напряжения, а в качестве второго используете обычный подстроечный резистор, вы ведь задумывали вариант просто защиты от максимальных перегрузок. А вот если в добавок к защите еще регулирование тока, тогда только "медленным способом" меняя пропорционально выходное напряжение, что не очень хорошо, переходная характеристика жуть, выход будет прыгать. Ну или второй вариант, отказ от R-2R и использовать 2 ШИМа. На вопрос "Осталось только выяснить так всетаки быстродействия проца достаточно чтобы отключть КЗ или нет?!" можно сказать, что все зависит от способа реагирования МК на перегрузку и от регулирующего транзистора. Применяя биполярный, как у вас, нужно реагировать почти мгновенно, и всетаки не мешало бы поставить аппаратное ограничение тока (см. вложение). А применив полевик, можно особо не спешить, несколько микросекунд, а то и десятков микросекунд полевые транзисторы спокойно работают в режиме КЗ, при этом ограничивая выходной ток на уровне максимально возможного через открытый канал. Liv Странный у вас подход, для переключения диапазона измерения (управления 1 ножкой порта) нужно писать дополнительный софт, а применяя внешнее АЦП этого делать не надо? Да и что за проблема с пределом: померяли, если АЦП зашкалило, увеличить предел и померять еще раз и записать результат, при следующем замере если замер менее какого то минимального числа (зависит от диапазона) то уменьшить предел, замерять еще раз и записать результат. Все калибровки и настройки один раз при изготовлении (в аналоговой части 2 подстроечника), как и у любой схемы...
kotyk7 В сотый раз уже говорю: почему Вы зациклились на резисторном ЦАП? Используйте 2 канала ШИМ. А когда будет аналоговая петля ОС по току, вопрос быстродействия проца сам собой отпадает. Дополнительно у БП появляется новое качество - регулируемый порог ограничения тока. Это очень полезно, так как для разных нагрузок безопасный уровень тока свой. Полагаться на проц в роли защиты в любом случае нельзя, с программой всякое бывает, может зависнуть. А пока вочдог сбросит, всё может сгореть.
Хатуль_мадан Ничего странного. Применяя внешний АЦП софт будет на порядок проще. АЦП нужно читать - и всё. Это десять строчек. Не сравнить по сложности с реализацией меню калибровки нескольких диапазонов и автоматическим их выбором. А применять подстроечные элементы в наши дни - нонсенс. Особенно, когда в системе есть процессор с EEPROM на борту.
Заголовок сообщения: Re: БП с цифровым управлением.
Добавлено: Чт июл 15, 2010 10:50:37
Держит паяльник хвостом
Карма: 19
Рейтинг сообщений: 152
Зарегистрирован: Ср мар 03, 2010 11:48:00 Сообщений: 999 Откуда: Уфа
Рейтинг сообщения:0
Liv О каких многих диапазонах, о каких меню, и калибровках разговор!? Я предложил всего 2 диапазона, на первом 1 мл.разряда равна 1мА, а на втором диапазоне в n-раз больше, при условии переключения процессором на этот диапазон (он же это и делает), вот и все. Вы предлагаете, как я понял, исключить насторйку аналоговой части и все проблемы решить программным путем записывая в память кучу калибровочных величин и прочего. Тогда естественно программа усложняется, и ооочень сильно, а сколько надо времени на ее отладку!? Применяя АЦП на 12 разрядов мы получаем тот же результат, но лишний корпус самой АЦП и шкала точно так же станет всего в 4 раза шире, т.е то же самое, что и применив бортовое АЦП и дополнительно 2 подстроечника и 1 ключ на полевике. Ну что же, каждый идет своим путем, мне проще потратить пару минут и подстроить по 1 резистору на каждом пределе измерения.
Вы предлагаете, как я понял, исключить насторйку аналоговой части и все проблемы решить программным путем записывая в память кучу калибровочных величин и прочего.
Совершенно верно.
Хатуль_мадан писал(а):
Тогда естественно программа усложняется, и ооочень сильно, а сколько надо времени на ее отладку!?
У меня в той плате, фото которой приводил в этой ветке пару раз, уже реализована калибровка ЦАП и АЦП для тока и напряжения, т.е. калибровка 4-х шкал. С отладкой вообще никаких проблем не было. Основная проблема - это усложнение пользовательского интерфейса, появляется еще калибровка диапазонов.
Хатуль_мадан писал(а):
но лишний корпус самой АЦП
Да, дорогие они, собаки (для котов это очень плохо) Поэтому я пока не пременяю внешнего АЦП, вместо этого задумал сделать два разных лабораторных источника разной мощности, каждый со своим разрешением по току и каждый для своих нужд. Чем больше приборов в лаборатории, тем лучше!
Хатуль_мадан писал(а):
мне проще потратить пару минут и подстроить по 1 резистору на каждом пределе измерения.
Может оно и проще. Но как-то не спится по ночам после таких схемотехнических решений, сам себя не уважаешь.
kotyk7 Если Вы хотите спроектировать малошумящий источник питания, то и ОУ в нем должны применяться соответствующие, и источник опорного напряжения малошумящий, и фильтры всякие, и топология должна быть продумана. Ну и ЦАП там нужно применять честный. Если же Вы хотите сделать рядовой лабораторный источник питания, то ШИМ отфильтровать не представляет никакой проблемы. Скорость перестройки ведь не играет роли.
Динамическая индикация может иногда портить жизнь. Например, делал я как-то высоковольтный источник питания (до 2500 В). Так там помехи от динамической индикации были видны на выходном напряжении. Еще бы, при опорном напряжении 2.5 В источник представлял собой усилитель с коэффициентом усиления 1000. Изменение топологии немного улучшило ситуацию, но в следующей модели я сделал статическую индикацию: подключил LED-индикаторы через регистры 74HC595.
Mr.Liv, признаюсь Вам я раньше делал только обычные блоки питания, но хочеться попробовать что то новое, где то, в меру возможности, и в ногу со временем. Ради этого начал изучать процессоры, а лучшим способом закрепления знаний это конечно же практика. Из этого и выходит что мой вариант блока питания без прибамбасов да наворотов - зато доступный для повторения и прост в освоении. По ходу воплощения этого проекта я сверяю свои знания с Вашими, да с интересом и вниманием готов слушать и пробовать Ваши и другие толковые предложения На Ваши предложения - перейти на ШИМ к сожалению мне уже не сколько трудно сколько интересно "пощупать" то что есть, ибо я уже на плате цыфровой части, которую я уже спаял, включил и проверил (100 пудово рабочая)- уже запаял резисторный ЦАП и хочу после доделки клавиатуры поиграться с ним на предмет его выходных характеристик. А после посмотрим. Может и LED-индикаторы через регистры 74HC595 сварганим. Жаль доступных готовых ЦАПов нет... , а то б я SPI "сварганил" и вариант уже проработан.
_________________ Почему-то всегда приходится программировать то, что невозможно запаять...
kotyk7 До сих пор выпускаются и активно используются чисто аналоговые источники питания с регулировкой переменными резисторами. Но повторять такие конструкции действительно неинтересно. Вместе с процессором БП получает свой "характер", выраженный в виде системы меню и функций управления. Очень легко вносить различные изменения и новые функции. Открывается простор для творчества.
Что касается резисторного ЦАП, то я не вижу никаких причин его использовать. По сложности это примерно то же самое, что отфильтровать ШИМ. Зато резисторный ЦАП будет обладать большой дифференциальной нелинейностью, если Вы применете резисторы хуже, чем 0.5%. А у ШИМ ЦАП линейность замечательная, да и разрядность без проблем повысить. Я в источнике питания использую 12-разрядный ШИМ.
Делать статическую индикацию в БП смысла не вижу, помехи от динамической индикации вряд ли возможно будет заметить. Хотя, конечно, большие импульсные токи, текущие через ножки питания процессора не добавляют точности его встроенному АЦП. Ну и на резисторный ЦАП могут сказаться. А вот ШИМ легко с помощью одного логического элемента "перепривязать" к опорному источнику, что избавляет от влияния нестабильности напряжения питания процессора.
Готовые ЦАПы бывают и доступные. Есть недорогие MCP4802/12/22 от Microchip. Если хватит 8 бит, то можно посмотреть на цифровые потенциометры, например, MCP41010 и другие. Есть микросхемы для телевизоров типа TDA8442 с ЦАПами внутри. Есть дешевый 10-битный параллельный ЦАП КР572ПА1, его можно применить вместо резисторов. Можно даже приспособить дешевые звуковые ЦАПы типа 16-разрядного TDA1543, хотя по постоянке параметры у них не очень. Но самое главное, для БП замечательно подходит ШИМ ЦАП, который уже есть бесплатно внутри микроконтроллера.
Продолжаю. Кнопки "прикрутил". Выход ЦАП на вход вольтметра (1 АЦП) закольцевал. Питание подал и начал кнопки тыкать. Реакция есть, ЦАП от нуля до 5 вольт "бегает" - даже очень шустро, наверное немного уменьшу их реакцию. Кнопка выбора шага настройки ЦАП реагирует, на работу оного влияет и светодиод "поджигает". Сейчас оставлю на ночь во включеном состоянии и посмотрю утром не "убежат ли" показания. До встречи.
_________________ Почему-то всегда приходится программировать то, что невозможно запаять...
kotyk7 Могут убежать. Для резисторного ЦАП роль опорного источника выполняет стабилизатор напряжения питания процессора, а для АЦП - внутренний опорный источник. Т.е. опорные источники разные и плывущие по-разному. Ведь так?
Заголовок сообщения: Re: БП с цифровым управлением.
Добавлено: Пт июл 23, 2010 06:07:27
Держит паяльник хвостом
Карма: 19
Рейтинг сообщений: 152
Зарегистрирован: Ср мар 03, 2010 11:48:00 Сообщений: 999 Откуда: Уфа
Рейтинг сообщения:0
Не совсем так. В МК роль REFки выполняют те же делители от напряжения питания, и никакой дополнительной стабильности нет (чаще всего, не знаю о новых и современных). А плывут они чаще всего из-за разных температурных уходов этих цепей. Для повышения точности измерений всегда рекомендуют заводить внешнее опорное напряжение.
В микроконтроллерах с АЦП обычно имеется встроенный опорный источник на запрещенной зоне (band gap), который имеет неплохую стабильность, но посредственную начальную точность. Напряжение питания тоже можно использовать в качестве опорного, выбирается это внутренним мультиплексором.
Всем привет! Прочитал Вашы мысли и понял теория теорией, а практика практикой и если заработало то как говорят: "либо расчеты ошибочны либо собрал не в соответсвии с расчетами". Итого работало с вечера вчера до сегодняшнего вечера. Температура была где то от 19 градусов ночью до 32 в тени - днем. И как говорят в Одесе "И что Вы думаете...?", - ни один сегмент не дрогнул не то что бы изменил показания. А опорное - просто завел от питания которое собрано на "кренке". Тоесть получается что резисторный ЦАП не только простой, но и достаточно стабильный (если наверное не эксплуатировать его при отрицательных температурах, но наверное до этого в домашних условиях не дойдет). А то какие тут эксперименты в холодном доме? Быстее жена прочуханами согреет ... Правда попробую уменшить тактовую частоту проца с 8 до 4 МГц. Опрос кнопок я делал без програмных времменных расчетов и прерываний, а по принцыпу фиксации флага нажатия с подальшим повторным опросом. Больно резво ганяет диапазон, неудобно. posting.php?mode=reply&f=11&t=29110#
_________________ Почему-то всегда приходится программировать то, что невозможно запаять...
Нашел немного времени, попробовал "поиграться" с тактовой. Неудачно. Найлучший вариант все таки при 8 МГцах. Все работает прекрасно, кроме кнопок. Итого буду опрос кнопок переделывать. Считаю, что в целом управляющая цыфровая часть блока работоспособна и после улучшения работы опроса кнопок - готовая. Тем временем решил немного облегчить работу блока питания в целом, а именно ограничить рабочий ток - 3 А. Поскольку на моей практике больше не требовалось, а автомобильные акуммуляторы можно заряжать чем нибуть попроще. При этом в стабилизаторе можно будет существенно уменьшить размеры радиаторов, а то "печка" меня не прельщает. Пусть будет более компактным.
_________________ Почему-то всегда приходится программировать то, что невозможно запаять...
Какая-то странная постановка вопроса - какая тактовая лучше... Тактовая нужна такая, чтобы обеспечивалась необходимая производительность процессора для данной задачи. А все временные задержки должны вычисляться на этапе компиляции на основе константы, равной текущей тактовой частоте. Тогда задержки не будут зависеть от тактовой.
Так делается и в модуле обслуживания клавиатуры. Определяется несколько констант: DB_TM (время подавления дребезга), NOREP_TM (задержка до автоповтора), REP_TM (период автоповтора). Все они задаются в миллисекундах. Затем эти значения с помощью макроса ms2sys() переводятся в тики системного таймера. Этого можно и не делать, если тик всегда будет равен 1 мс. Но в общем случае - надо. Функция Keyboard_Exe(t) выполняется в основном цикле программы. Ей передается тик системного таймера - раз в 1 мс параметр t будет равен true. Этим и задается темп обработки клавиатуры.
if(!Pin_SB_EX) s |= 0x01; if(!Pin_SB_UP) s |= 0x02; if(!Pin_SB_DN) s |= 0x04; if(!Pin_SB_SE) s |= 0x08;
switch(s) //перекодировка кнопок и их комбинаций: { case 0x01: d = KEY_EX; break; //кнопка "INT/EXT" case 0x02: d = KEY_UP; break; //кнопка "UP" case 0x04: d = KEY_DN; break; //кнопка "DOWN" case 0x08: d = KEY_SE; break; //кнопка "SELECT" case 0x06: d = KEY_UD; break; //кнопки "UP" + "DOWN" default : d = KEY_NO; } return(d); }
Mr, Liv Не берите близко к сердцу, это я так сказать поленился, пошел по так сказать "легкому пути" плюс русское авось, - переключить фузы ведь так просто... За вариант СИ отдельное спасибо, присмотрюсь.
_________________ Почему-то всегда приходится программировать то, что невозможно запаять...
Готов отрапортовать: все получилось!!! Итак, цыфровая часть готова полностью. (Конечно это так сказать первая версия, может я когда все сделаю, со временем захочу что то переделать или усовершенствовать, или кто то что то интересное предложит, но пока я иду дальше и берусь за аналоговую часть - регулятор напряжения). Для начала планирую такие характеристики: - выходное напряжение от нуля конечно до 25 вольт (цыфровичок именно так заточен); - поскольку переключение дополнительных обмоток трасформатора не планируется, а печка на кухне уже есть, то ток не более 3А, хотя цыфра имеет запас замера до 5А и дальше полное отключение выходного напряжения (верхнюю границу можно и уменьшить); - питание от одной обмотки; - на входе стабилизатора - электронный предохранитель скажем на 3,5 А; - контроль температуры внутри блока (опционально); - охлаждение вентилятором (опционально) - зависимое от температуры среды; Может еще что то подскажите, а пока я иду рисовать схему.
_________________ Почему-то всегда приходится программировать то, что невозможно запаять...
Да, забыл сказать: если у кого есть хорошый альтернативный вариант аналоговой части - готов рассмотреть! А ПОКА ПОДГОТОВЛЮ ОДНИМ АРХИВОМ ВСЕ ДЛЯ ЦЫФРОВОЙ ЧАСТИ.
_________________ Почему-то всегда приходится программировать то, что невозможно запаять...
Вы не можете начинать темы Вы не можете отвечать на сообщения Вы не можете редактировать свои сообщения Вы не можете удалять свои сообщения Вы не можете добавлять вложения