Регулятор скорости вентилятора автомобильной печки
Регулятор, описание которого приведено в этой статье, был разработан и изготовлен по просьбе товарища — владельца грузового автомобиля ЗиЛ 5301 («Бычок»).
Необходимость переделки управления скоростью вентилятора печки обусловлена тем, что штатная система отопления этого автомобиля имеет только 2 режима отопления салона — средний и максимальный. Разработанный автором регулятор имеет 5 ступеней регулировки отопления, а установленный уровень сохраняется в памяти микроконтроллера регулятора при выключении зажигания. Этот регулятор можно использовать также и для замены механических переключателей скорости вентиляторов печки с балластными резисторами других автомобилей с бортовой сетью 12 В.
Для обогрева салона в современных автомобилях в качестве теплоносителя используется охлаждающая жидкость, которая нагревается, отбирая тепловую энергию от работающего двигателя. За передней панелью салона установлен отдельный радиатор, соединенный с системой охлаждения двигателя, к которому подведены две трубы для циркуляции теплоносителя (тосола, антифриза, или воды) в этом радиаторе. Для управления температурой на впускной трубе печки установлен краник. Расположенный за радиатором печки вентилятор гонит воздух из подкапотного пространства через радиатор в салон, куда поступает уже теплый воздух. Когда переключатель печки установлен в красной зоне, открывается краник, и нагретый теплоноситель (охлаждающая жидкость) поступает из системы охлаждения двигателя в радиатор печки в зависимости от того, в каком положении установлен этот переключатель (от «Выкл.» до «Жарко»). Автолюбители знают, что краник печки недолговечен и работает не всегда надежно. Поэтому было решено регулировать температуру в салоне автомобиля, изменяя скорость вращения вентилятора с помощью электронного регулятора.
Принципиальная электрическая схема регулятора скорости вентилятора автомобильной печки показана на рисунке.Регулятор собран на микроконтроллере IC2 типа PIC12F629 фирмы Microchip в корпусе DIP-8. Назначение выводов микроконтроллера IC2 с учетом использованного автором статьи программного обеспечения приведено в таблице. Микроконтроллер тактируется внутренним тактовым генератором (INTOSC) с частотой 4 МГц. Питание регулятора скорости осуществляется от замка зажигания через стабилизатор напряжения 5 В на микросхеме IC1 типа 7805L.
Устройство обеспечивает пять уровней регулировки скорости с индикацией на 5-ти светодиодах, которые управляются сигналом с вывода 5 IC2 через сдвиговый регистр IC3 типа 74HC164N в корпусе DIP-14. С вывода 6 IC2 на вывод 8 IC3 поступают тактовые импульсы.
В выключенном состоянии все светодиоды устройства погашены. Когда включен 1-й уровень скорости печки, горит LED1, когда включен 2-й уровень — горят светодиоды LED1 и LED2
1 | VDD | Напряжение питания 5 В |
2 | GP5/CLKIN | Выход команды включения зуммера |
3 | GP4/CLK0UT | Вход от кнопки Up |
4 | GP3 | Вход от кнопки Down |
5 | GP2 | Выход сигнала индикации |
6 | GP1 | Выход тактовых импульсов |
7 | GPO | Выход управляющего ШИМ-сигнала |
8 | VSS | Корпус |
и т.д., а когда включен 5-й уровень — горит линейка из всех 5-ти светодиодов. Регулировка скорости производится кнопками UP и DOWN. Эти кнопки дискретно изменяют длительность импульсов на выводе 7 микроконтроллера IC2 (метод ШИМ), к которому подключен ключ управления электродвигателем печки Q2 типа IRFZ46N. Поскольку микроконтроллер PIC12F629 не имеет аппаратного ШИМ-модуля CCP (Capture/Compare/PWM — Захват/Сравнение/ШИМ), ШИМ организован программно. Чтобы избежать характерного «звучания» электродвигателя печки частота ШИМ поднята до 22 кГц.
При выключении зажигания установленный ранее уровень скорости вращения этого двигателя сохраняется в энергонезависимой памяти МК IC2. Двигатель печки через 3 с после включения зажигания включается и работает на той скорости, уровень которой был сохранен в памяти МК. Так как в кабине автомобиля ЗиЛ 5301 достаточно шумно, то для звуковой сигнализации нажатия кнопок использован пятивольтовый электромагнитный зуммер (Magnetic Buzzer) SP1 типа KX-1205, который включается ключом на полевом транзисторе Q1 типа BS170 командой с вывода 2 IC2.
Устройство собрано на печатной плате из одностороннего фольгированного стеклотекстолита размерами 50х46 мм (см. фото в начале статье).
Автор: Иван Шевченко, г. Заозерск, Мурманской обл.
Шим Регулятор Оборотов Вентилятора Отопителя
Автор: Гость Noottertools, 20 декабря 2013 в Песочница (Q&A)
Рекомендованные сообщения
Присоединяйтесь к обсуждению
Вы оставляете комментарий в качестве гостя. Если у вас есть аккаунт, войдите в него для написания от своего имени.
Примечание: вашему сообщению потребуется утверждение модератора, прежде чем оно станет доступным.
Объявления
Сообщения
Похожие публикации
Сломался пульт управления беговой дорожки. Теперь хочу с помощью Ардуино управлять мотором, но не понятно как происходит управление. к панели идёт 4 контакта: чёрный красный белый зелёный. на плате 5 контактов, но 1 не используется. Как происходит управление скоростью?
День добрый. Сразу обозначу, что я профан в электронике.
Необходимо собрать стенд для промывки труб отопления, который состоит из насоса и компрессора. Компрессор нужен для создания кратковременных гидроударов. Воздух из ресивера должен подаваться в шланг с водой через электромагнитный клапан, который будет контролироваться Генератором импульсов.
Все необходимые комплектующие у меня есть и все подключено, кроме самого клапана. При подлючении к ШИМ контроллеру клапан отказывается работать. Полярность соблюдена 100%, пробовал включить на разных частотах и процентовках, бесполезно. Та же светодиодная лента подключенная к ШИМ работает прекрасно, моргает.
Питание ШИМ через блок питания для светодиодной ленты, на выходе 12v 8.3A
Где то читал что необходимо подключать какие то конденсаторы или что то повышающее, но так и не понял, что и как.
Существуют заводские варианты таких промывок, но все они стоят каких то бешеных денег, хотя принципиально исполтзуется такая схема.
Буду премного благодарен если поможете.
Здравствуйте, уважаемые форумчане! Вообще говоря, не имею такой привычки — донимать людей вопросами, и до всего стараюсь доходить самостоятельно. Но в данном случае без «помощи зала» совсем никак: перепробовал уже все, что только смог придумать — а «воз и ныне там! Поэтому и обращаюсь сюда — возможно, кто-то уже сталкивался с чем-то подобным, и сумел найти решение.
Суть проблемы в следующем: решил построить ШИМ-контроллер для автомобильного вентилятора охлаждения («карлсона»), но никак не могу заставить его работать — как только открываются VT2 и VT3, подключая нагрузку, МК уходит в резет или виснет (чаше — первое). Сбросившись, опять пытается подключить нагрузку, и опять резетится, и так — без конца! Причем, изначально решил испытать схему не на индуктивной нагрузке (электромоторе), а на вполне себе пассивной 60Вт (около 3A по току) лампочке из фары — и та же фигня: МК пытается запуститься, сбрасывается, лампа моргает, дергается. Даже не ШИМ, а обычное мигание лампой с частотой 1Гц через несколько вспышек или вешает МК, или резетит его (что видно по сбою ритма моргания). При этом без нагрузки — по осциллографу, подключенному к ноге 5 МК или к нижнему (по схеме) выводу R7 — все отлично: наблюдается ровный и чистенький ШИМ-сигнал, изменяющийся согласно тестовой программе! Однако, стоит подать нагрузку, как осциллограмма начинает прыгать: появляются ШИМ-импульсы, затем ровная линия, затем снова импульсы с тем заполнением, которое должно быть в самом начале программы. Собственно, это наблюдение и позволило сделать вывод о том, что МК перезагружается.
Естественно, первая мысль — слабый лабораторник (он у меня импульсный, самодельный, где-то на 3А — действительно слабый; но та же петрушка наблюдалась и при попытках питать устройство от трансформаторного ЗУ на 10А). Ну, пригнал машину, снял с нее аккум (100% свежий и не дающий просадок!), запитал от него — однако проблема повторилась. Значит, дело не в питании. Пробовал много различных танцев с бубном: отключал внешнюю цепочку сброса R2-C2 (результат — ноль), включал BOD микроконтроллера (стало еще хуже), подвешивал вместо C4 и C6 электролиты большей емкости (не помогло). Думал, что, возможно, кондеи C4 и C6 разряжаются через R7 — экспериментировал с его сопротивлением (от 100 до 960 Ом), перекидывал его верхний вывод на анод VD1 (чтобы отсечь резистор от фильтрующих C4 и C6) — тщетно. Грешил даже на то, что какие-то проблемы вносит емкость затворов VT2 и VT3 — уменьшал сопротивление R10 и R12, дабы затвор быстрее «разряжался» — безрезультатно.
Игрался с частотой МК и ШИМ — перебрал частоты ШИМ от 18 до 4687 Гц; пытался запускать нагрузку с разным заполнением ШИМ, от 10 до 40% — как глючило, так и глючит. Т.е., перелопатил, практически, всю схему!
Удалось заставить устройство нормально работать на лампу, и даже на пару спаралеленных электродвигателей МЭ218 (от «печки») следующим образом: R8 был исключен (вместо него — перемычка), а C7 (изначально — К73-17В всего на 0,47мкФ) был заменен на пару электролитов по 1500мкФ, включенных плюс к плюсу последовательно (для устранения полярности кондеев). Нагрузка стала нормально подключаться, отрабатывать как на повышение, так и на убывание заполнения ШИМ. Двигатели отлично работали как при ступенчатом изменении ШИМ-заполнения, так и при плавном. Единственное, что при попытке подать на двигатели ШИМ с заполнением менее 20%, МК опять начинал дергаться и резетить, а так же резетил при резком отключении движков: если раскрутить их до 100%, а потом снять сигнал, то МК перезагружался; однако, если после 100% плавно понижать обороты где-то до 40%, и лишь потом снимать сигнал, то схема работала нормально. Плюс, очень сильно нагревались электролиты C7.
Однако, когда принес схему в машину — для отладки непосредственно в «боевых условиях», и подключил мощный двигатель вентилятора, началась старая песня с резетами.
Сейчас, вроде бы, «осенило» — поменял VD2 на Шоттки 1N5822 — лампочка запустилась на «ура» даже без С7; так же отлично и мягко стартовала спарка из МЭ218 — радостный побежал к машине. Но с «карлсоном» — опять мимо: МК вновь ушел в перезагрузку. Все: я не знаю, что тут делать — каждую деталь уже перелопатил, и кучу вариантов испробовал. Но ничего не понятно(( Вот и прошу помочь: может быть, кто-то уже был в такой ситуации, и как-то решил подобную проблему?
VT2 и VT3 стоят «фирменные», IR-овские (не Китай) — из «Чип и Дипа». ATtiny13 — с Алиэкспресс; чтобы исключить возможность брака конкретной микросхемы, пробовал ставить в схему несколько разных экземпляров МК (из одной посылки). DS18B20 пока еще не подключал (нужно разобраться с ШИМ!). IRF3205 каскадированны для уменьшения нагрева (хотя его и так практически нет), и для дополнительной надежности (чтобы в случае выхода из строя одного транзистора не перегреть машину). Тестовую программу специально написал «китайским стилем», без циклов и т.п. — чтобы она была максимально простой, наглядной и линейной — для уверенности, что не в ней дело.
Подскажите пожалуйста — откуда эти резеты, и как с ними бороться? Как заставить схему отрабатывать на мощную нагрузку? Заранее благодарю.
;*************ТЕСТОВАЯ ПРОГРАММА************* ;============ДИРЕКТИВЫ ТРАНСЛЯТОРУ=========== .device ATtiny13 .include «tn13def.inc» .list ;Обзывательство регистров .def Temp = R16 .cseg .org 0x00 ;=========ТАБЛИЦА ВЕКТОРОВ ПРЕРЫВАНИЙ======== rjmp Begin //Начальный сброс reti //Внешнее прерывание INT0 reti //Изменение состояния любой линии reti //Переполнение T0 reti //Готовность EEPROM reti //Срабатывание компаратора reti //Совпадение в канале A таймера T0 reti //Совпадение в канале B таймера T0 reti //Переполнение сторожевого таймера reti //Завершение преобразования в АЦП ;============МОДУЛЬ ИНИЦИАЛИЗАЦИИ============ Begin: ;——Инициализация стека ldi Temp, RAMEND out SPL, Temp ;——Отключение компаратора ldi Temp, 0x80 out ACSR, Temp ;——Настройка портов ldi Temp, 0b00000111 out DDRB, Temp //PB0 — на вывод ;——Настройка ШИМ ldi Temp, 0b11000001 out TCCR0A, Temp //Режим — быстрый ШИМ с инверсией ldi Temp, 0b00000010 out TCCR0B, Temp //Делим тактирование таймера на 8 rjmp Start //При старте пропускаем 5-секундную задержку ;===============ТЕСТОВЫЙ ЦИКЛ================ PWM: ldi Temp, 0b00000000 out OCR0A, Temp //ШИМ=0% rcall Delay5sec //Ждем 5 сек ;——Повышаем скорость Start: ldi Temp, 77 out OCR0A, Temp //ШИМ=30% rcall Delay2sec ldi Temp, 102 out OCR0A, Temp //ШИМ=40% rcall Delay2sec ldi Temp, 128 out OCR0A, Temp //ШИМ=50% rcall Delay2sec ldi Temp, 154 out OCR0A, Temp //ШИМ=60% rcall Delay2sec ldi Temp, 179 out OCR0A, Temp //ШИМ=70% rcall Delay2sec ldi Temp, 205 out OCR0A, Temp //ШИМ=80% rcall Delay2sec ldi Temp, 230 out OCR0A, Temp //ШИМ=90% rcall Delay2sec ldi Temp, 255 out OCR0A, Temp //ШИМ=100% rcall Delay2sec ;——Понижаем скорость ldi Temp, 230 out OCR0A, Temp //ШИМ=90% rcall Delay2sec ldi Temp, 205 out OCR0A, Temp //ШИМ=80% rcall Delay2sec ldi Temp, 179 out OCR0A, Temp //ШИМ=70% rcall Delay2sec ldi Temp, 154 out OCR0A, Temp //ШИМ=60% rcall Delay2sec ldi Temp, 128 out OCR0A, Temp //ШИМ=50% rcall Delay2sec ldi Temp, 102 out OCR0A, Temp //ШИМ=40% rcall Delay2sec ldi Temp, 77 out OCR0A, Temp //ШИМ=30% rcall Delay2sec rjmp PWM //Возвращаемся, и начинаем с 5 сек «молчания» ;===========ПОДПРОГРАММЫ ЗАДЕРЖКИ============ ;——Задержка в 2 секунды Delay2sec: ldi R17, 253 ldi R18, 75 ldi R19, 29 L1: subi R17, 1 sbci R18, 0 sbci R19, 0 brcc L1 nop ret ;——Задержка в 5 секунд Delay5sec: ldi R17, 253 ldi R18, 61 ldi R19, 73 L2: subi R17, 1 sbci R18, 0 sbci R19, 0 brcc L2 nop ret
Здравствуйте, если кто-то знает, подскажите, пожалуйста, какой мосфет(Q3) можно использовать. Еще интересует по каким критериям они подбираються и где это можно сделать(тобишь сайт на котором можно указать нужные параметры/или это как-то по другому подбирается?).
На счет импульсов генерируемых Arduino Uno на микропроцесоре ATmega328P. Частота в даном примере(вообще она будет перед стартом задаваться в пределах 1-50Гц) 50Гц, период 0,02с, duty cycle 50%.
Еще такой вопрос, подскажите, пожалуйста, нормальный ли характер графика D на осцилографе? Почему он именно такой, если не нормальный, то что исправить?
Если нужна дополнительная информацыя, без проблем, в мерах своих возможностей, добавлю. За любую помощь зарание спасибо.