Наверное у вас тоже были случаи, когда вентилятор компьютера очень сильно шумел, и хотелось бы чтобы компьютер сам правил скорость кулера в зависимости от температуры, например через программу SpeedFan! Но на стандартном кулере всего 3 пина ("Плюс","Минус","Тахометер") то есть он лишен возможности регулировки посредством компьютерных "программ".
Вот 3 типа штекеров:
Вот разьемы по 3 и 4 пина:
Вот наша ситуация:
Сегодня я расскажу вам как сделать переходник с 3-х пинового кулера на 4-х пиновый кулер! Так как моя мат.плата поддерживает функцию регулировки вентиляторов, я решил составить схему для моего вентилятора(чтобы превратить его в 4-х пиновый) со светодиодной индикацией о которой я расскажу дальше в видео. Хотел на базе ATMega8, но вскоре я обнаружил что он неработоспособен и составил на ATtiny13! Схема:
Итак тут мы видим: От порта Control идет сигнал, который поступает на делитель напряжения 12 --> 5 вольт далее подстраивается переменным резистором, и поступает на порт B5(ADC0) потом обрабатывается микроконтроллером и выводит сигнал на порты B0(OC0A) и B1(OC0B)!Далее с порта B0 сигнал с частотой F и скважностью Q идет через резистор и диод, и посредством транзистора создает сигнал в обмотке мотора с частотой F скважностью Q тем самым изменяя скорость мотора!
Немного о индикации. Светодиодик мограет с частотой=частотаB0 * 0.1 чтобы можно было увидеть в каком состоянии сейчас кулер...Малая частота-Медленное, Средняя частота-Нормальный, Высокая частота-Быстрый. Надеюсь это маленькая изюминка кому то будет полезна
Итак, мы закончили со схемой! Теперь нужно записать программу в МК(т.е. прошить микроконтроллер) в нашем случае это Attiny13! Подготвте микроконтроллер и программатор!
Код написан на microPascal for AVR!
Вот мой "скромный" исходный код для МК написанный на microPascal for AVR:
program Attiny13FunControl; procedure Init(); //Обьявление процедуры инициализации ШИМ begin // DDRB:=0xFF; //Порт на выход PWM1_Init(_PWM1_FAST_MODE, _PWM1_PRESCALER_1, _PWM1_NON_INVERTED, 255); //Инициализация 8-ми битного ШИМа end; // // begin // Init(); //Вызов процедуры Init(); //Порт на вход ADC_Init(); //Инициализация АЦП // While TRUE do begin //Старт бесконечного цикла PWM1A_Set_Duty(ADC_Read(0)); //Изменяем скважность ШИМ для кулера PWM1B_Set_Duty(ADC_Read(0)*0.1); //Изменяем скважность ШИМ для индикации end; end.
Прошиваем МК, собираем схему!
В окончание надо добавить то что не сказал выше:
- На входе на схеме указано "К Control" там нужно поставить штекер и втыкать отдельно в 4-вертый пин на матке.
- МК можно питать прямо от делителя напряжения! (необяз)
- На вход кулера поставьте разьём(Возле МК)(необяз) или припаять провода от кулера напрямую к МК!
- Тахометр нужно подключать прямо к мат. плате(НЕ К МК!)
Подключаем схему, устанавливаем SpeedFun(как настроить найдите в интернете).
Вот так выглядит программа SpeedFun:
Запускаем, и меняем скорость вращения...Вуаля кулер меняет свою скорость!
Если что-то пойдет не так пишите комменты, прикрепляйте фото, будем делать поправки в статье, или помогать исправлять ваши ошибки при сборке :)
Список радиоэлементов
Обозначение | Тип | Номинал | Количество | Примечание | Магазин | Мой блокнот |
---|---|---|---|---|---|---|
U1 | МК AVR 8-бит | ATtiny13 | 1 | Поиск в магазине Отрон | ||
Q1 | Транзистор | 1 | Любой транзистор с порогом открытия 5V | Поиск в магазине Отрон | ||
D1 | Светодиод | 5V | 1 | Поиск в магазине Отрон | ||
D2 | Диод | 1 | Диод из ЗУ от телефона (любой) | Поиск в магазине Отрон | ||
R1 | Резистор | 1 кОм | 1 | Поиск в магазине Отрон | ||
R2 | Резистор | 2.5 кОм | 1 | Поиск в магазине Отрон | ||
R3 | Резистор | 6 кОм | 1 | Поиск в магазине Отрон | ||
RV1 | Переменный резистор | 1 кОм | 1 | Поиск в магазине Отрон | ||
Скачать список элементов (PDF)
Прикрепленные файлы:
- Attiny13FunControl.rar (59 Кб)
Комментарии (8)
|
Я собрал (0) |
Подписаться
Для добавления Вашей сборки необходима регистрация
P.S. Это SpeedFan, а не SpeedFun, блин.
[Автор]
[Автор]
Для прошивки МК программатора использовал примитивную схему "5 проводков"!
[Автор]