|
|
  |
Схема фильтра ШИМ регулятора напряжения, управление скоростью вентиляторов... |
|
|
|
Jan 31 2009, 23:05
|
Гуру
     
Группа: Почетный участник
Сообщений: 6 851
Регистрация: 25-08-08
Из: Запорожье
Пользователь №: 39 802

|
Цитата(Rst7 @ Feb 1 2009, 00:49)  Я знаю, щас меня пан Microwatt зафукает, я Вам завтра выложу источник на Tiny25, как раз подходящий под Ваши требования  Весь проект, с модельками и исходниками. Покрутите. Та шо ж я, Змей Горыныч что ли, на все пламенем фукать? Реализаций может быть много. Дело вкуса. Лишь бы хорошо работало.
|
|
|
|
|
Jan 31 2009, 23:17
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Цитата(Microwatt @ Feb 1 2009, 03:02)  Это СИСТЕМА и в ней могут быть неожиданности, которые не учтешь расчетом. Многие параметры заранее неизвестны. Ошибки приводят к тому, что вентилятор начинает работать в релейном режиме. Т.е включаться на минуту-две с максимальной мощностью, потом отключаться на такое же время. При этом температура охлаждаемого объекта может реально скакать на десятки градусов. Это (термоциклирование) для аппаратуры еще хуже, чем постоянный нагрев. Практический совет - не допускайте полной остановки вентилятора даже сразу после включения, когда аппаратура еще холодная. Это поможет упростить задачу. Модель регулирования такая: Toff - температура t, ниже которой вентилятор останавливается (Vout = 0). Tmin - t, начиная с которой вентилятор вращается с мин. (RPMmin) оборотами. Tmax - t, после достижения которой вентилятор вращается с макс. (RPMmax) оборотами. В диапазоне Tmax - Tmin вычисляется соотв. значение оборотов между RPMmin и RPMmax. Допустим, процессор: Toff = 25, Tmin = 30, Tmax = 50, RPMmin = 50%, RPMmax = 100%. Вентилятор сможет остановиться только если сист. блок вынести на балкон зимой, или погрузить систему в сон  Никакого релейного режима, так как предусмотрен определённый запас по температуре (Tmin - Toff). Или, например, вытяжной тыловой вентилятор корпуса (в качестве датчика - тот же датчик процессора): Toff = 45, Tmin = 50, Tmax = 60, RPMmin = 40%, RPMmax = 80%. При слабой загрузке - отключен. Включится только при повышении t на пять градусов с температуры отключения... Можно и увеличить это значение  Можно ввести фильтрацию результатов измерения, можно устанавливать таймеры - возможностей море, стоит только захотеть. Практика покажет недостатки и отшлифует модель.
|
|
|
|
|
Feb 1 2009, 01:19
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Цитата(rezident @ Feb 1 2009, 00:00)  Вам нужно ввести локальную обратную связь по напряжению. А внешним сигналом лишь изменять уровень опорного сигнала, относительно которого ШИМ-контроллер (посредством ООС) будет обеспечивает стабилизацию выходного напряжения. Про нелинейность. Все верно, так и должно быть. Введение локальной ООС по напряжению должно устранить эту нелинейность. А не подскажете микросхему buck конвертера с доступным выводом для опорного напряжения? Цитата(Microwatt @ Feb 1 2009, 05:11)  Ага, прекрасный алгоритм. На бумаге все прекрасно. Сам вентилятор при включении имеет значительный гистерезис. Датчик сильно врет по времени. Производительность вентилятора сильно нелинейна от приложенного напряжения и от модели к модели. Все вместе это может привести либо к редейному режиму, либо к автоколебаниям скорости с довольно малым периодом 2-3 секунды. Вентилятор взвывает, как порывы ветра при вьюге. Субъективно это быстро надоедает, уж лучше бы он выл громко, но на одной ноте. Ладно, пробуйте, потом расскажете. Но ведь сейчас это не особо важно. Методика будет в любом случае отлажена и доведена до ума программно. Мне пока важно закончить с аппаратной частью... Вот замутили тут меня со стабилизацией по напряжению
|
|
|
|
|
Feb 1 2009, 05:05
|
Гуру
     
Группа: Модераторы
Сообщений: 8 752
Регистрация: 6-01-06
Пользователь №: 12 883

|
Цитата(Microwatt @ Feb 1 2009, 04:11)  Ага, прекрасный алгоритм. На бумаге все прекрасно. Сам вентилятор при включении имеет значительный гистерезис. Датчик сильно врет по времени. Производительность вентилятора сильно нелинейна от приложенного напряжения и от модели к модели. Все вместе это может привести либо к редейному режиму, либо к автоколебаниям скорости с довольно малым периодом 2-3 секунды. Вентилятор взвывает, как порывы ветра при вьюге. Субъективно это быстро надоедает, уж лучше бы он выл громко, но на одной ноте. Ладно, пробуйте, потом расскажете. Ну... релейный режим - тоже автоколебания. А вот про субъективно... Это очень субъективно - людям с хорошим слухом медленное изменение частоты еще противнее, чем искусственная вьюга.
|
|
|
|
|
Feb 1 2009, 12:03
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Вот обещаный проект. Это степдаун с 10-14 вольт на 3.3...9 мощностью до 10Вт. Расчитан на режим непрерывных токов.
DCDC_T25.ZIP ( 36.38 килобайт )
Кол-во скачиваний: 163В архиве исходники под IAR плюс моделька в MicroCap8 (к сожалению, чистую модель для проверки усточивости я потерял) и модель в Proteus'e. Модель в протеусе была сделана как проба, однако, оказалось, что для моделирования именно источников на процах очень даже ничего. По схеме - Q2,Q3 - драйвер затвора, Q5 - смешивание двух шимов для обеспечения мертвого времени, один шим - регулятор, второй - просто ограничение мертвого времени. Простое добавление мертвого времени в софт регулятора прилично увеличивает по тактам, решил сделать так. Q4 - компаратор среднего тока. По мере превышения порога сначала через обратную связь работает, если вдруг проц не живет, то ограничиват напряжение на затворе, а дальше умирает предохранитель. Собственно сам регулятор написан на асме и представляет из себя П и И-звенья. Д-звено выполнено в виде конденсатора, шунтирующего верхний резистор делителя - так лучше, чем программное Д-звено. Единственно что, пришлось в софте сделать специальный #define PROTEUS, чисто для обхода глюков эмулятора. И еще. В софте желательно перенести сброс сторожевого таймера только в те ветки, которые соответствуют нахождению регулятора в нормальном режиме (без ограничения). Тогда, если что-то случится с девайсом и регулятор надолго упрется - проц просто сбросится и все. В железе проект проверял, вполне модельке соответствует. Но надо обратить внимание на ESR выходного конденсатора - если оно велико, будет возбуд. В реальной жизни ключ - IRLMS6802. R6 - пять резисторов по 1Ом впараллель. Драйвер можете выбрать на свой вкус, однако, как по мне - 2 транзистора в SOT23 меньше любого драйвера, а про цену помолчим вообще
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Feb 1 2009, 14:12
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Цитата(Microwatt @ Feb 1 2009, 15:49)  Конечно не видать. Более того, buck регулятор хорошо работает при duty cycle от 0.5 и ниже. Все, что больше половинки вносит трудности с его устойчивостью. Начинаются нашлепки со слоп-компенсацией, фазовой коррекцией.... Ну вот, это мне не подходит. Получается хуже, чем вообще без регулятора.  Сейчас есть чипы со 100% скважностью. Думаю попробовать такой. Но, в любом случае, придётся добавить ОУ для подачи опорного напряжения на делитель feedback вывода. И юзать LUT таблицу, так как нелинейность заданного/действительному напряжению будет много больше. В общем, сомнительное удовольствие... Идеальной была бы компактная микросхема с REF выводом, со 100% duty cycle и с диапазоном входных напряжений не менее 12 вольт. Если кто в курсе - подскажите, пожалуйста  Цитата(Rst7 @ Feb 1 2009, 16:03)  Вот обещаный проект. Это степдаун с 10-14 вольт на 3.3...9 мощностью до 10Вт. Расчитан на режим непрерывных токов. Спасибо, Дмитрий. А можно эту схему приспособить для работы в 0-12в. 1А диапазоне? В принципе, тоже довольно сложная конструкция. Требует много соединений с контроллером, если ставить 4 канала... А зачем нужна кнопка и резистор R9?
|
|
|
|
|
Feb 1 2009, 15:20
|

Йа моск ;)
     
Группа: Модераторы
Сообщений: 4 345
Регистрация: 7-07-05
Из: Kharkiv-city
Пользователь №: 6 610

|
Цитата А можно эту схему приспособить для работы в 0-12в. 1А диапазоне? Не вижу особых проблем. Во-первых, убрать Dead Time, заменив тут Код while(dt<0xE0); 0xE0 на 0xFF. Во-вторых, уменьшить токоизмерительный резистор. Ну, скажем, до 0.15ом. Цитата В принципе, тоже довольно сложная конструкция. Требует много соединений с контроллером, если ставить 4 канала... Можно убрать аппаратное внесение deadtime и выполнить его программно. Тогда один контроллер сможет справиться с двумя каналами. Цитата А зачем нужна кнопка и резистор R9? Это нагрузки добавить в симуляторе, чтобы посмотреть переходный процесс. Собственно, именно для "поиграться" с этим проектом, поставьте протеус. Я вообще отрицательно к симуляторам камней отношусь, но именно в таком случае очень даже неплохо выходит. Цитата Как я понимаю, R8 и R9 нужны для создания более адекватной модели электролита (эквивалент ESR) Безусловно. Щас поглядел в моделлере. Работает до максимального напряжения на нагрузку 10ом. При этом, как оказалось, не надо уменьшать резистор токоизмерительный, а надо уменьшить скорость мягкого запуска, вот так Код do { dt++; OCR1B=dt; __delay_cycles(100); } while(dt<0xFF); Иначе, защита по току не дает нарасти напряжению на выходе - регулятор-то пытается получить нужное напряжение по принципу "быстрей-быстрей", пытаясь вдуть ток в нагрузку, тут ему краник и пережимают  И щас посмотрел свежим взглядом, вроде нет проблем сделать программный dead-time.
--------------------
"Практика выше (теоретического) познания, ибо она имеет не только достоинство всеобщности, но и непосредственной действительности." - В.И. Ленин
|
|
|
|
|
Feb 1 2009, 15:26
|
Гуру
     
Группа: Почетный участник
Сообщений: 6 851
Регистрация: 25-08-08
Из: Запорожье
Пользователь №: 39 802

|
Цитата(sonycman @ Feb 1 2009, 18:12)  Ну вот, это мне не подходит. Получается хуже, чем вообще без регулятора.  Сейчас есть чипы со 100% скважностью. Думаю попробовать такой. Спасибо, Дмитрий. А можно эту схему приспособить для работы в 0-12в. 1А диапазоне? В принципе, тоже довольно сложная конструкция. Требует много соединений с контроллером, если ставить 4 канала... Что у Вас за вентилятор? Так таки 1 ампер и потребляет? Что за датчик температуры по сопротивлению? В конце-концов, можно поставить обыкновенный компенсационный регулятор и не заморачивать себе голову кучей ключей, контроллеров и прочими высокохудожественными декорациями. Максимум что такой регулятор будет рассеивать для 12ваттного вентилятора - 3 ватта. Сдуть еще 3 ватта таким вертолетом можно легко. Ну, потеряете на регуляторе 0.5-1 вольт, ни один ШИМ лучше не вытянет.
|
|
|
|
|
Feb 1 2009, 16:41
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Цитата(Microwatt @ Feb 1 2009, 19:26)  Что у Вас за вентилятор? Так таки 1 ампер и потребляет? Что за датчик температуры по сопротивлению? В конце-концов, можно поставить обыкновенный компенсационный регулятор и не заморачивать себе голову кучей ключей, контроллеров и прочими высокохудожественными декорациями. Максимум что такой регулятор будет рассеивать для 12ваттного вентилятора - 3 ватта. Сдуть еще 3 ватта таким вертолетом можно легко. Ну, потеряете на регуляторе 0.5-1 вольт, ни один ШИМ лучше не вытянет. Один канал может содержать от одного до четырёх вентиляторов. Четыре штуки легко могут потреблять ток до 1А. Датчики на DS18S20. Раньше и были линейные регуляторы. Не хотелось бы снова к ним возвращаться... не нужны лишние радиаторы... Да и реобас внутри отсека 5.25 будет плохо обдуваться. Та схема, что имеется сейчас, даёт на выходе 11.5 вольт макс.
|
|
|
|
|
Feb 1 2009, 17:48
|

Любитель
    
Группа: Свой
Сообщений: 1 864
Регистрация: 20-08-06
Из: Тольятти
Пользователь №: 19 695

|
Вот что получилось сейчас:
Переменный резистор заменить на ФНЧ для сигнала ШИМ от контроллера и всё  Вроде работает. Выходное напряжение устанавливается от 0.5 до 11.5 вольт весьма линейно. Правда, пульсации на выходе стабилизатора увеличились после установки ОУ. Возможно, надо его как то скорректировать... Может, подскажете, как? А можно и так оставить, не так уж важно, в принципе...  Закажу на днях buck контроллеры со 100% duty cycle. Например, LM3475 понравился, правда, ключ внешний надо... Можно и к линейной стабилизации вернуться. Но для себя делаю, хочется получше. И так печка внутри сист. блока под нагрузкой, а тут ещё моё барахло будет добавлять жару  К тому же корпуса ТО-220 вместе с радиаторами и те-же ОУ скушают никак не меньше - скорее, больше места на плате...
|
|
|
|
|
Feb 1 2009, 18:25
|
Гуру
     
Группа: Почетный участник
Сообщений: 6 851
Регистрация: 25-08-08
Из: Запорожье
Пользователь №: 39 802

|
Цитата(sonycman @ Feb 1 2009, 20:48)  Вот что получилось сейчас:
Переменный резистор заменить на ФНЧ для сигнала ШИМ от контроллера и всё  Вроде работает. Выходное напряжение устанавливается от 0.5 до 11.5 вольт весьма линейно. Ну и хорошо, если получилось. Для меня только полная загадка зачем тут еще и ОУ? В одно плечо делителя включается либо термодатчик, либо сигнал управления с пресловутого контроллера... Выходное напряжение регулировать ниже 5 вольт нет смысла. Вентилятор при 3-4 вольтах с места не стронется.
|
|
|
|
|
  |
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|