- 3.7 Рейтинг
- 28288 Просмотров
Климат контроль в автомобиле своими руками
Начну с того, что мой автомобиль был оборудован кондиционером, который просто включался и выключался кнопкой на панели отопителя. Сами понимаете, что нужно постоянно отвлекаться на то, чтобы то включить его, когда становиться жарко, то выключить, когда станет наоборот - холодно.
Отсюда, сам-собой, напросился вывод - кто-то (или вернее - что-то) должен делать это за меня. С микроконтроллерами я уже имел дело, и с цифровым термостатом - тоже. Не хотелось долго возиться - май, а с ним и жаркая погода, уже наступили. Поэтому я запустил в инете поисковик и приступил к осмотру объема и состава предложений по данному вопросу. Далее был выбран наиболее подходящий вариант - на AT90S2313 и 2-х символьном семисегментном светодиодном индикаторе.
Итак, по схеме - автор применил AT90S2313 (или AtTiny2313), три кнопки управления и цифровой термостат DS1621. Он работает по двухпроводной шине I2C и имеет отдельный вывод, управляющий каким-либо исполнительным устройством. Автор использовал данную схему для управления нагревателем, а мне нужно было наоборот - управлять охладителем. Поэтому переделка управляющей программы была необходимой.
Автор любезно выложил исходник программы у себя на сайте и мне пришлось освоить BASCOM для его разбора (кстати довольно простой в освоении, правда код на выходе получается не очень компактным).
Программа совсем несложная и далее я выкладываю измененный мною код с моими комментариями.
Алгоритм тоже простой и суть его в следующем:
1. Начальная инициализация портов и переменных;
2. Загрузка в регистры термостата начальных порогов температуры (заниженные);
3. Перевод DS1621 в режим термостатирования и выдачи температуры;
4. По таймеру: опрос состояния кнопок, запрос и вывод на индикатор текущей температуры.
Моя доработка заключалась в следующем: реализация невозможности включения кондиционера при Т<13гр.С (при этом на индикаторе горит "Lo"), поддержание нижнего, а не верхнего (как у автора) порога температуры, уменьшил диапазон минимальной и максимальной температур (1град. вместо 2-х).
После включения питания индикатор высвечивает на 1 сек. все сегменты индикаторов - для контроля, затем показывает на 1 сек. значение температуры термостата (по умолчанию - 23гр.С) и далее переходит в режим отображения текущей температуры. Для того чтобы включить режим поддержания заданной температуры нужно нажать кнопку "ON/OFF". При этом на индикаторе высветится "On" и на 1 сек. высветится порог заданной температуры, после чего загорится точка правого сегмента, и индикатор будет переведен на отображение температуры в салоне. Если температура в салоне выше заданного значения хотя бы на один градус, то DS1621 переведет управляющий вывод (3) в высокое состояние и через реле включит нагрузку - т.е. кондиционер. Точка при этом начинает мигать с низкой частотой. Как только температура упадет до значения заданного порога, то управляющий вывод будет переведен в низкое состояние, реле разомкнет контакты и кондиционер выключится. Точка будет гореть постоянно, сигнализируя о включенном состоянии термостатирования. Для установления температуры, которую будет держать термостат, служат кнопки "UP" и "DOWN". Ими можно менять значение от 18 до 40. Однократное нажатие любой из этих кнопок служит для просмотра значения запрограммированной температуры, после чего следует возврат в режим отображения температуры, если кнопка больше не нажималась.
Повторное нажатие кнопки "ON/OFF" выключает режим термостатирования и, если кондиционер включен, то реле разомкнет его контакты. При этом на индикаторе кратковременно высветится "Of".
Очень важно правильно расположить сам датчик температуры в салоне. Сначала я расположил его на панели отопителя - там как раз была заглушка, в которую я ставил 2-х символьный индикатор, три кнопки и датчик температуры. Но оказалось, я не учел, что как раз под самой панелью стоит СД-ресивер, который очень хорошо греется и поэтому температура в нише над ним всегда выше салонной и кондей напрасно подолгу гоняет воздух. Пришлось переместить датчик в самый верх торпеды - там тоже стояла заглушка от какой-то кнопки. Я просверлил в ней целую "матрицу" отверстий для свободного доступа воздуха. Место оказалось удачным, т.к. располагающиеся ниже воздуховоды активно перемешивают воздух и обеспечивают его свободный доступ к датчику. Вместо отверстия на панели - откуда я убрал датчик - пришлось вставить еще одну кнопку - на включение всего устройства - т.к. мне не удалось побороть зависание контролера при пуске двигателя. Т.е. я не стал особо заморачиваться, т.к. уже жарко и хочется ездить с нормальным климатом, то я собрал простейшую схему с автоблокировкой реле, которое включало схему с контролером и выключало в момент обесточивания ключом зажигания.
По деталям: почти все брал в Чипе и Дипе.
1. Контролер: AT90S2313 - у меня был, но я его случайно запорол (тщательно мойте плату от глицеринового флюса). Поэтому был куплен AtTiny2313. Шил его через программатор, встроенный в BASCOM. Фьюзы - убрал деление частоты на 8, внутренняя частота - 4М (т.к. у автора таймеры все были на эту частоту настроены), BOD - не помню на сколько установил - 2.7 кажется.
2. DS1621
3. BC547 - 3 шт.
4. Реле TYCO: 5в. -управление, нагрузка - 5А, 250в - очень компактное, для распайки на плату.
5. Автомобильное реле 12в
6. 4 кнопки со светодиодной подсветкой.
Устройство собрано со стабилизатором напряжения и реле на макетной плате примерно 60Х40 мм, "запихнуто" в плоский пластиковый корпус вместе с автореле и платой коммутации (для удобства сборки/разборки). Для подсветки кнопок тоже собран стабилизатор на отдельной плате. Подсветка включается вместе с подсветкой приборов и габаритов.
Во время отладки программы использовался макетный набор из Чипа и Дипа. Очень удобная вещь - я прибалдел как только попробовал на нем собрать. Купил самого большого размера, какой был в магазине. Теперь у меня на нем сразу три схемы собраны. Схема, подобная этой, собирается на нем без пайки за 15-20 минут. Далее - к ней программатор через разъем - изменил код, перепрошил, включил - проверил - не то - по-новой... Чистые руки - можно и саму схему изменять и программу править не боясь испачкать клаву флюсом.
Ну а теперь - слайды!
Панель отопителя с установленным индикатором и управлением.
В работе - машина на солнце.
Под дырочками - платка с датчиком температуры.