Очень удобно, когда при посадке в автомобиль в темное время суток освещение салона отключается не сразу, а через некоторый промежуток времени, предоставляя возможность отыскать в карманах куртки или сумочки ключ зажигания. С другой стороны, при выходе из автомобиля свет также будет плавно гаснуть, позволяя разглядеть вещи на заднем сидении, которые можно было бы забыть.
Использование микроконтроллеров позволяет расширить функциональные возможности устройств управления светом.
Устройство управления светом востребовано в любом авто. Цена устройства варьируется в зависимости от количества выполняемых функций и личных предпочтений водителя.
Обзор существующих решений
1. Контроллеры задержки и плавного включения-выключения салонного света (autodimmer) LD-01, LD-02, LD-03
Контроллеры плавного включения-выключения света (autodimmer) LD-01 и LD-02/03. Мягко включают, задерживают отключение при закрывании дверей и плавно выключают ("затухание" или "плавное гашение") свет в салоне автомобиля
Предлагаемые контроллеры имеют очень малые размеры (15 х 27 х 4мм) и при этом:
- отключают салонный свет после закрытия дверей автомобиля с задержкой и с плавным гашением - при неработающем двигателе (в LD 02/03 задержку можно изменять - от 1 до 255 секунд, в LD-01 задержка фиксированная 12-15 секунд),
- при открытой двери и выключенном моторе плафон плавно погаснет через 15 минут - данная функция есть в контроллере LD-02/03,
- отключают плавно салонный свет при пуске двигателя без задержки,
- при работающем двигателе задержка не более 1-2 сек вместе с плавным гашением,
- имеет функцию (LD-02/03) "Комфорт" - включение салонного света при выключении зажигания после поездки,
- имеет функцию (LD-02/03) быстрого гашения салонного света при постановке машины на охрану.
- управляют лампами мощностью до 50Вт (LD-01 - до 8 Вт) (штатные лампы в салонном светильнике имеют, как правило, мощность 5-10 Вт), ток силового транзистора - до 10А в импульсе,
- работают и с лампами накаливания и со светодиодами в плафоне - есть и плавное гашение и задержка в полном объеме, допускается параллельное соединение ламп накаливания и светодиодных ламп в светильнике;
- с люминесцентным светильником будет только задержка без плавного гашения,
- работают без проблем с любыми сигнализациями и с иммобилизаторами, в том числе, и с имеющими функцию "вежливой подсветки" салона, добавляя плавное включение и гашение плафона также и при работающем двигателе;
- подключаются без прокладки дополнительных проводов и без применения каких-либо инструментов,
- устройства не мешают постановке автомобиля на сигнализацию - высокое входное сопротивление устройств (>1MOm).
Достоинства: малый размер
2. Многофункциональный контроллер освещения салона и автоматического включения дневных фар
Устройство предназначено для управления светом в салоне автомобиля и автоматическим включением/выключением Дневного света (фар, ПТФ, ДХО). Устройство управляет подсветкой ручек дверей зависимой от скорости и тахозависимой RGB подсветкой, например приборной панели. Ну а главный светильник имеет плавное включение и затухание.
- зажигание выключено:
Если открыть любую дверь - то плавно зажигается свет в салоне и включается подсветка ручек дверей (оба канала)
Если закрыть дверь - свет будет медленно плавно затухать. Подсветка ручек погаснет немедленно.
Если дверь открыта более 10 минут - свет мгновенно погаснет (экономия заряда аккумулятора)
Если включить габариты - включиться зеленая подсветка ручек дверей и синий канал RGB подсветки.
- зажигание включено:
Открытие двери - плавное включение света в салоне.
Закрытие двери - плавное гашение света, но раза в три быстрее, чем с выключенным зажиганием.
При включенном зажигании подсветка ручек дверей зависит от скорости. Если стоим на месте - зеленый, если движемся - красный.
RGB подсветка теперь зависит от оборотов двигателя. При нулевых оборотах (GB), на низких оборотах (G), при дальнейшем повышении (RG) и на совсем высоких (R).
Достоинства: функциональность
Структурная схема
Принципиальная схема
Мне понадобилось:
Плата Arduino UNO
2 кнопки
Резистор
4 светодиода
Плата Arduino UNO
Вместо микроконтроллера я выбрал плату Arduino UNO. У платы есть все необходимые компоненты для обеспечения работы микроконтроллера. Достаточно подключить USB кабель к компьютеру и подать питание [4].
Arduino — это электронный конструктор и удобная платформа быстрой разработки электронных устройств, для новичков и профессионалов. Платформа пользуется огромной популярностью во всем мире благодаря удобству и простоте языка программирования, а также открытой архитектуре и программному коду. Устройство программируется через USB без использования программаторов.
Рассылаемые в настоящее время версии могут быть заказаны уже распаянными. Информация об устройстве платы (рисунок печатной платы) находится в открытом доступе и может быть использована теми, кто предпочитает собирать платы самостоятельно. Микроконтроллеры ATmega328 дёшевы и стоят около 200 рублей.
PWM (ШИМ)
Широтно-Импульсная модуляция, или ШИМ, это операция получения изменяющегося аналогового значения посредством цифровых устройств. Устройства используются для получения прямоугольных импульсов - сигнала, который постоянно переключается между максимальным и минимальным значениями. Данный сигнал моделирует напряжение между максимальным значением (5 В) и минимальным (0 В), изменяя при этом длительность времени включения 5 В относительно включения 0 В. Длительность включения максимального значения называется шириной импульса. Для получения различных аналоговых величин изменяется ширина импульса. При достаточно быстрой смене периодов включения-выключения можно подавать постоянный сигнал между 0 и 5 В на светодиод, тем самым управляя яркостью его свечения.
На графике зеленые линии отмечают постоянные временные периоды. Длительность периода обратно пропорциональна частоте ШИМ. Т.е. если частота ШИМ составляет 500 Гц, то зеленые линии будут отмечать интервалы длительностью в 2 миллисекунды каждый. Вызов функции analogWrite() с масштабом 0 – 255 означает, что значение analogWrite(255) будет соответствовать 100% рабочему циклу (постоянное включение 5 В), а значение analogWrite(127) – 50% рабочему циклу.
Программная часть
Алгоритм работы устройства
Код программы
int door = 3; // концевик дверей
int led = 10; // лампа освещения
boolean g = false; //переменная закрытия двери
void setup() {
pinMode(led,OUTPUT); // настройка на выход
pinMode(door,INPUT); // настройка на вход
}
void loop() {
if(digitalRead(door)==HIGH){ // если (дверь открыта )
digitalWrite(led,HIGH); // то включить освещение
g = true; //
}
if((digitalRead(door)==LOW)&& g==true){ // если дверь закрыта и переменная отслеживающая закрытия двери в правде
analogWrite(led,255);
delay(500);
analogWrite(led,220);
delay(500);
analogWrite(led,200);
delay(500);
analogWrite(led,180);
delay(500);
analogWrite(led,150);
delay(500);
analogWrite(led,130);
delay(500);
analogWrite(led,100);
delay(500);
analogWrite(led,50);
delay(500);
analogWrite(led,25);
delay(500);
g==false;
}
}
Моделирование рабочего устройства
Устройство я смоделировал в программе Proteus, что бы проверить работу.
Proteus — пакет программ для автоматизированного проектирования электронных схем.
Пакет представляет собой систему схемотехнического моделирования, базирующуюся на основе моделей электронных компонентов, принятых в PSpice. Отличительной чертой пакета PROTEUS является возможность моделирования работы программируемых устройств: микроконтроллеров, микропроцессоров, DSP и проч. Библиотека компонентов содержит справочные данные. Дополнительно в пакет PROTEUS входит система проектирования печатных плат. Пакет Proteus состоит из двух частей, двух подпрограмм: ISIS — программа синтеза и моделирования непосредственно электронных схем и ARES — программа разработки печатных плат. Вместе с программой устанавливается набор демонстрационных проектов для ознакомления.
Заключение
Сегодня мы разработали устройство управления светом в салоне автомобиля. Устройство было собрано на Arduino UNO.
Устройство удовлетворяет всем техническим параметрам. Включение света в салоне автомобиля при открытии дверей и плавное его выключение при закрытии. Устройство собрано в среде Proteus. Программа для устройства написана на языке СИ++.