Daewoo Sens (ᅠ )

Свет салона на Arduino, ч.1

Я їжджу на Daewoo Sens
Київ, Україна

Итак, после 15 лет езды на сенсах пишу свою первую статью. Почему только сейчас — потому что ничего необычного в моей машине нет, а писать о том, что разжёвано на всех ресурсах и форумах ещё лет 10-15 назад не вижу смысла. Вижу смысл писать только о том, чего я не нашёл на просторах интернета...


Захотелось умный свет салона. В интернетах продаются платы под названием “умный свет салона”, но мне в них не понравилось несколько моментов. Первый момент — у всех этих плат только один вход управления (подписан как концевик двери). Поэтому эти платы не знают положение переключателя, соответственно не отличают положение OFF от закрытой двери, ну и как следствие после перевода переключателя в положение OFF будет отрабатывать та же задержка, что и после закрытия двери. Это неправильно — положение OFF должно сразу (плавно) гасить свет. Второй момент вытекает из первого. В этих платах есть автоофф (если забыл закрыть дверь или выключить положение ON). Так вот если забыл именно положение ON, то потом открывание двери не включает автооффнутый свет. Такое меня не устраивает. Раньше была такая фирма Nighton, которая делала правильный умный свет. Их платы уже различают положение переключателя и работают так, как мне и нужно, но фирма куда-то исчезла. Пришлось делать самому, в результате чего мы имеем следующую логику (нижеуказанные числа приведены просто для примера и понимания логики работы, и могут быть изменены на любые другие).


✔️ При работающем двигателе:

1️⃣ Если включить положение ON, то лампа плавно разгорится (продолжительность розжига 1 сек) и будет гореть, пока включено положение ON.

2️⃣ Если открыть дверь при включенном положении DOOR, то лампа плавно разгорится, будет гореть, пока открыта дверь, и через 1 секунду после закрывания двери начнёт затухать. Продолжительность затухания 2 секунды.

3️⃣ Если во время работы лампы включить положение DOOR, то лампа начнёт затухать через 2 секунды, а если включить положение OFF, то начнёт затухать через 1 секунду.


✔️ При неработающем двигателе:

1️⃣ Если включить положение ON, то лампа плавно разгорится (продолжительность розжига 1 сек) и будет гореть, пока включено положение ON, но не более 15 минут (сработает автоофф по положению ON). Открывание (закрывание) двери или запуск/остановка двигателя сбрасывает счётчик и отсчёт 15 минут начинается сначала.

2️⃣ Если включено положение ON, дверь закрыта (открыта) и лампа уже не горит (отработал автоофф). Открывание (закрывание) двери плавно включит лампу, и лампа отработает 15 минут от момента открывания (закрывания).

3️⃣ Если включить положение DOOR и открыть дверь (в любой последовательности), то лампа плавно разгорится и будет гореть пока открыта дверь, но не более 5 минут от последнего открывания двери или включения положения DOOR (сработает автоофф по незакрытой двери). Если закрыть дверь, то лампа начнёт затухать через 15 секунд после закрытия, даже если дверь закрылась за секунду до автооффа. Если запустить двигатель, когда дверь уже закрыта, а лампа ещё горит, то лампа начнёт затухать через 1 секунду после запуска.

4️⃣ Если во время работы лампы передвинуть переключатель из положения ON в положение DOOR, то лампа начнёт затухать через 2 секунды после включения положения DOOR или через 15 секунд после последнего закрывания двери (в зависимости от того, что наступит позже); а если включить положение OFF, то начнёт затухать через 1 секунду независимо от того, когда закрылась дверь. Примечание: отсчёт 15 секунд запускается только если в момент закрытия двери лампа горела, а если открыл/закрыл дверь при положении OFF и НЕгорящей лампе, затем включил положение ON, затем включил положение DOOR, то лампа гаснет через  2 секунды.


Одно из требований к этой самоделке заключалось в том, чтобы всё было смонтировано только на плафоне, чтобы не пришлось делать вмешательства в проводку автомобиля, и уж тем более тянуть на крышу дополнительные провода. Поэтому определение работающего двигателя реализовано через контроль напряжения бортсети.


Как всё было сделано, рассказываю на примере плафона автомобиля Lanos, и по личной просьбе некоторых трудящихся стараюсь расписывать максимально подробно.


Для этого мне потребовалось:


Плафон (снял с потолка)



Arduino, в моём случае NANO


По причинам, которые в объяснениях не нуждаются, рекомендую приобретать ардуину с гнездом TYPE-C. По поводу ног — смотрите, как кому удобно. В продаже есть с припаянными ногами, есть с неприпаянными (лежат в комплекте). Я планировал делать навесным монтажом, поэтому заказывал безногую плату. А если делать печатную плату, но наверно лучше заказывать с ногами.


Транзистор полевой IRLZ44N, стабилизатор линейный 78L05, диод 1N4007, резисторы 47 кОм, 1 кОм и 15 кОм


IRLZ44N — это тот самый силовой элемент, который коммутирует лампу. Почему я использовал именно его — только потому, что из мосфетов нужного типа (Logic-level) у меня был только он. Если бы покупал, то купил бы что-нибудь поменьше размерами. 78L05 — 5-вольтовый стабилизатор. О нём говорить вроде нечего. Вместо 78L05 можно использовать L7805, но смысла нет, к тому же он большой. А можно использовать и 78L09 или L7809, но в этом случае выход стабилизатора соединять с пином VIN ардуины. У ардуины на борту есть и свой стабилизатор с маркировкой 1117C, но мне не понравились его характеристики, а именно максимальное входное напряжение. Открыл даташит, написано 15В. Маловато. Решил не испытывать судьбу и приделал внешний стабилизатор, которому можно подавать до 30В. По поводу резисторов — указанные мной номиналы не есть эталон. Резистор, который у меня 1 кОм, можно брать как меньше (от 250 Ом), так и больше (несколько кОм). Вместо резисторов 47 кОм и 15 кОм можно взять любые другие, главное чтобы соотношение их сопротивлений было 3-3.5 к одному, а сумма их сопротивлений была примерно в пределах от 10 кОм до 100 кОм.

Подготовка


Отпаиваем резисторы напротив светодиодов TX и PWR


От этих светодиодов толку для нас нет, а ток жрут. Ток ни о чём, но тем не менее.


Собираем вот такую вот конструкцию. Назовём её «конструкция №1»



Первым был припаян стабилизатор


Как видно на фото, сам элемент и особенно его ножки полностью закрыт термоусадкой, чтобы ничего ни с чем не перемкнулось. Остальные детали так же лежат прямо на плате, и так же закрыты термоусадкой.


В результате получилось вот такое


Маленькое дополнение. IRLZ44N почему-то немного мешал установке плафона, поэтому пришлось разобрать и вынести его в сторону. Фото крупным планом не сделал, но дальше будет понятно.


Теперь можно переходить к подготовке плафона. Берём плафон...


И режем (примерно посередине) все три провода, которые идут от переключателя


Чёрный провод идёт от переключателя на разъём, это масса. Серый провод идёт тоже от переключателя на разъём, а дальше на концевик двери. Красный провод идёт от переключателя на лампу. На плафоне есть ещё один красный провод, который идёт от разъёма к лампе. Его трогать не нужно. Таким образом имеем 6 концов — 2 черных, 2 серых и 2 красных.


Штатная схема плафона имеет примерно такой вид. Назовём это «конструкция №2»


Чёрная рамка — границы плафона, точки с цифрами 1, 2 и 3 — пронумерованные контакты разъёма плафона, SW1 — переключатель плафона, SW2 — концевик двери, L1 — лампа, F1 — предохранитель.

После того, как порезали провода и зачистили концы, можно приступать к внедрению конструкции №1 в конструкцию №2. Соединяем по схеме, при необходимости удлиняем провода:


Переключателя SW3 в реале конечно нет. Это переключатель напряжения для симулятора. 14.4V — двигатель работает, 12.7V — двигатель не работает


Обрезок чёрного провода, который торчит из разъёма, соединяется с обрезком красного, который торчит из переключателя, и с массой конструкции №1. Обрезок чёрного провода, который торчит из переключателя, теперь идёт на пин D7 ардуины, а обрезок серого провода, который торчит из переключателя, идёт на пин D8. Обрезок серого провода, который торчит из разъёма, идёт на диод, а средняя ножка транзистора (D) идёт на обрезок красного провода, который прикручен к лампе. Ещё один провод нужен для питания схемы, я его прикрутил саморезом плюсового контакта лампы (на схеме он идёт от лампы на 3-ю ножку 78L05).


И вот финальный результат. Под ардуиной виднеется IRLZ44N в синей и зелёной термоусадке


Следующий этап — загрузка скетча в ардуину (можно загрузить и в начале, когда плата ещё "голая"). Пожалуй, не буду загромождать статью инфой о том, как это сделать, потому что всё это уже давно есть в интернетах и ютубах. Я просто напишу, что это можно сделать как с Windows, так и с телефона на андроиде, выложу скетч и напишу пару слов о числе 0.0202 из 70-й строки кода. Оно рассчитывается по формуле (5 / 1023) * ((R1 + R2) / R2), где R1 — сопротивление резистора R1, а R2 — сопротивление резистора R2. Из-за того, что резисторы могут иметь погрешности, сопротивление брать реальное (измеренное), а не то, которое нарисовано на резисторах. Если же реальный порог напряжения всё равно не будет чётко соответствовать порогу, написанному в скетче, то придётся "подгонять" этот коэффициент. В общем смотрите уже индивидуально.


https://drive.google.com/file/d/1w880r1-5Vbs0HGNnS3aH8OnkLdvqH1ZM/view?usp=drivesdk


В ссылке скетч для ардуины, и проект для протеуса для тех, кто захочет поиграться в симуляторе.


P.S. Появилась вторая часть, поскольку добавление режима сна потребовало изменения схемы подключения


Ціна питання 130 UAH, Пробіг 801000 км.
Опубліковано: 14 квітня 20:08
10 1 2

Коментарі

Щоб залишати коментарі, потрібно авторизуватись.
"потому что ничего необычного в моей машине нет, а писать о том, что разжёвано на всех ресурсах и форумах ещё лет 10-15 назад не вижу смысла" - і починаєш щось шукати що розжовано 10 років тому і всіх пише що розжовано, а де жовано ніхто не знає.))))
17 квітня 16:53
Если делать печатную плату - ардуина не нужна совсем, атмега и кварц и все. Для ваших целей мне кажется и кварц будет излишним, то и мегу можно попроще.
1
14 квітня 21:02
Вовa
Uns8ted, кстати да, спасибо. Осталось разобраться с паянием и программированием МК)
Вовa, ничего сложного на самом деле. По микроконтроллеру просто смотрите даташит, все выводы что имеет ардуино имеются на ногах атмеги328 (она же и является сердцем ардуино нано).
По программированию, дешёвый программатор (его можно сделать из ардуино нано к слову) и прошивка через этот самый программатор. Можно подписаться напрямую к камню, можно сделать отдельные выводы для прошивки (такой путь выбрал я). У меня уже есть пара завершенных проектов, которые прошли путь от прототипа в виде ардуино и сэндвича из модулей до компактных печатных плат
1
14 квітня 21:46
Я їжджу на Daewoo Sens
Uns8ted
Вовa, ничего сложного на самом деле. По микроконтроллеру просто смотрите даташит, все выводы что имеет ардуино имеются на ногах атмеги328 (она же и является сердцем ардуино нано).По программированию, дешёвый программатор (его можно сделать из ардуино нано к слову) и прошивка через этот самый программатор. Можно подписаться напрямую к камню, можно сделать отдельные выводы для прошивки (такой путь выбрал я). У меня уже есть пара завершенных проектов, которые прошли путь от прототипа в виде ардуино и сэндвича из модулей до компактных печатных плат
Uns8ted, спасибо за отличную идею, я уже хочу переделать)). Но на данный момент голова болит по поводу энергопотребления. Говнокод нужно допилить, чтобы МК уходил в сон, если это возможно, потому что городуха жрет 18mA. Оно как бы и не много, но и не мало.
А где заказывали печатные платы?
1
14 квітня 22:01
Вовa
Uns8ted, спасибо за отличную идею, я уже хочу переделать)). Но на данный момент голова болит по поводу энергопотребления. Говнокод нужно допилить, чтобы МК уходил в сон, если это возможно, потому что городуха жрет 18mA. Оно как бы и не много, но и не мало.А где заказывали печатные платы?
Вовa, атмегу можно в режим сна переводить. Будить по какому либо сигналу, например от того же концевика. Я схему работы плафона Ланоса не знаю, но к примеру у меня на проводке от концевиков дверей появляется сигнал (вроде плюс) при открывании машины с брелка.
Платы заказывал на jlcpcb. Рисовал в Easy EDA, имхо самый простой софт, к тому же бесплатный
14 квітня 22:05
Вовa
Uns8ted, я понял. Огромное спасибо ☺️
Вовa, незачто)
По энергопотреблению - голый камень будет кушать меньше, как минимум не будет лишних светодиодов, а так же встроенного в плату ардуино юсб программатора. Так же потребляет стабилизатор напряжения, можно поискать самый оптимальный в плане энергопотребления
14 квітня 22:09
Гарно)
Чекаємо плату керування звуковим сигналом на ардуіно )
1
14 квітня 21:00