Digitrode
цифровая электроника вычислительная техника встраиваемые системы
Автоматический стеклоочиститель для автомобиля на основе Arduino и датчика дождя своими руками
Проект автоматического стеклоочистителя представляет собой автоматическую систему активации дворников автомобиля, которая контролирует интенсивность осадков и соответственно контролирует частоту работы стеклоочистителя.
По данным ВОЗ, ежегодно из-за дорожно-транспортных происшествий и главным образом в дождливые сезоны погибает более 1.25 миллиона человек в год. Люди умирают из-за небольших ошибок. Но можно уменьшить это число, оснастив машину автоматической системой очистки стекол.
Проект в основном нацелен на автомобильное применение. Он основан на микроконтроллерной плате Arduino UNO и датчике дождя, предназначенном для измерения интенсивность осадков. В зависимости от данных, собранных от модуля датчика дождя, активируется сервомотор для управления движениями стеклоочистителя. Пользователю также предоставляется информация о количестве осадков с помощью ЖК-модуля, включенного в проект. Сервомотор управляется сигналом ШИМ, и его скорость изменяется контроллером. Схема подключения всех элементов системы автоматического стеклоочистителя показана ниже.
Модуль датчика дождя, который мы используем для этого конкретного проекта, представляет собой детектор MH-RD. Этот модуль содержит 4 контакта: Vcc, A0, D0 и Gnd. Два вывода Vcc и Gnd этого модуля сопряжены с выводами питания модуля Arduino. Из двух оставшихся выводов модуля A0 обеспечивает аналоговый выход, а к D0 обеспечивается цифровой выход. Но в нашем случае, нам необходимо лишь контролировать изменение интенсивности осадков, поэтому мы игнорируем цифровой вывод D0 и подключаем аналоговый выход модуля к одному из аналоговых входных контактов платы Arduino Uno.
Для управления движением стеклоочистителя установлен серводвигатель. Сервомотор принимает соответствующий выходной сигнал ШИМ, который отвечает за регулировку положения своего вала до желаемой позиции. Контакт от серводвигателя подключается к цифровому контакту 9, который является одним из выводов ШИМ платы Arduino UNO. ЖК-дисплей 16×2 JHD162A выполняет задачу отображения интенсивности осадков на экране. Этот ЖК-дисплей основан на драйвере HD44780 от Hitachi. На ЖК-дисплее есть два режима работы; 4-битный режим и 8-битный режим. Для этого проекта мы будем использовать 4-битный режим. Интерфейс платы Arduino Uno и LCD значительно упрощается благодаря использованию встроенного файла библиотеки LiquidCrystal.h. Выводы Arduino 13, GND и 10 соответствуют контрольным выводам ЖК-дисплея: RS, RW и En соответственно. Аналогично, контакты Arduino 7,6,5 и 4 связаны с выводами данных D4-D7 на ЖК-дисплее.
Первоначально, когда устройство активируется, стеклоочиститель переходит в нулевое положение благодаря сервомотору. Контроллер продолжает отслеживать сигнал, полученный от модуля детектора дождя. Когда модуль дождя регистрирует осадки, контроллер проверяет, пересекает ли этот сигнал пороговое значение, заданное в устройстве. Как только это произойдет, контроллер запускает сервомотор, который начинает работать. Интенсивность ШИМ-сигнала определяет скорость серводвигателя. А интенсивность осадков постоянно отображается на ЖК-дисплее.
Оснащаем свое авто датчиком дождя
Процесс подключения датчика дождя:
Шаг первый. Установка датчика типа RS-22
Всего автором рассматривается два типа датчиков, это RS-22 зарубежного производства, а также датчик ДДА отечественного производства.
Как установить датчик типа RS-22:
1. К лобовому стеклу нужно приклеить держатель для датчика дождя.
2. В корпуса датчика нужно нанести специальный гель, который снизит коэффициент преломления двух рабочих зон.
3. Основание корпуса датчика фиксируется к основанию с помощью самореза.
4. На заключительном этапе проверяем, чтобы между рабочей зоной датчика и стеклом не было пузырьков.
Шаг второй. Подключение датчика RS-22
Теперь можно приступать к подключению электрической части. Датчик подключается к переключателю режима работы дворников.
1. Синий провод датчика подключается к корпусу автомобиля, это минус.
2. Красный провод датчика нужно подключить к контакту с обозначением «I», а стандартный желтый с зеленой полоской отключается.
3. Теперь провод желтого цвета от датчика нужно соединить с проводом желтого цвета с зеленой полоской.
4. Ну и наконец, черный провод подключается к колодке, это контакт «53», для этого используется синий провод.
Чтобы устройство начало работать правильно, сперва нужно провести его калибровку в зависимости от чувствительности и пропускной способности стекла. Чувствительность настраивают таким образом, чтобы датчик срабатывал при нужной степени загрязнения или намокания стекла. Более подробно узнать, как работает такой датчик, можно из его инструкции.
Шаг третий. Особенности подключения датчика ДДА
Датчик дождя отечественного производства существенно отличается от датчика типа RS-22. Самое главное, что можно отметить, это дешевизна датчика, простота установки и возможность подключения без вмешательства в основную проводку автомобиля. Также система может настраиваться в зависимости от того, с какой скоростью едет автомобиль. Чем быстрее едет авто, тем быстрее работают и дворники, так как при этом стекло загрязняется быстрее. Модели датчиков типа ДДА-25 устанавливаются на Калину, а также на Ладу Приора. Отличие ДДА-15 лишь в расположении контактов на реле.
Еще на датчике имеется возможность выбора режима, он может работать для борьбы с дождем, снегом, а также в стандартном режиме.
Заключение
Конечно, решать, нужно ли устанавливать такое устройство на свое авто, решает каждый сам для себя. Но, несомненно, такое дополнение значительно упрощает и делает приятнее процесс управления автомобилем. Теперь водитель более сосредоточен на дороге, а это снижает риск ДТП. Стоит такой датчик порядка 1000 рублей, что не так уж и много.
Также можно услышать и негативные отзывы о датчике дождя, некоторые жалуются на то, что он срабатывает не вовремя или не работает как нужно. Но вероятнее всего у таких автолюбителей установлен датчик без возможности настройки чувствительности, либо они не умеют им пользоваться.
Система обнаружения дождя на Arduino и датчике дождя
Простую систему обнаружения дождя можно спроектировать, подключив датчик дождя к плате Arduino. Этот датчик будет обнаруживать любые осадки, которые падают на его поверхность и передавать сигнал об этом на плату Arduino, которая будет выполнять необходимые операции. Подобная система обнаружения дождя может быть использована в различных приложениях:
В данной статье мы рассмотрим создание простейшей системы обнаружения дождя на основе платы Arduino, датчике дождя и зуммера. При обнаружении дождя в нашей системе плата Arduino будет подавать сигнал на включение зуммера, который будет издавать звуковой сигнал. В дальнейшем вы на основе этого проекта сможете при обнаружении дождя с помощью платы Arduino управлять любыми необходимыми вам исполнительными механизмами, то есть построить именно ту систему обнаружения дождя, которая вам нужна.
Необходимые компоненты
Датчик дождя (Rain sensor)
Модуль датчика дождя состоит из двух плат – плата обнаружения дождя (Rain Board) и плата управления (Control Board).
Плата обнаружения дождя состоит из двух медных проводников, спроектированных таким образом (имеющих такую форму), что в условиях сухого воздуха они имеют большое сопротивление, поэтому на выходе модуля в этих условиях будет напряжение 5V. По мере увеличения влажности окружающей среды сопротивление этих проводников постепенно уменьшается, что приводит к уменьшению напряжения на выходе модуля пропорционально увеличению влажности окружающей среды. Плата обнаружения дождя имеет 2 контакта, к которым подключается плата управления как показано на следующем рисунке.
Плата управления регулирует чувствительность датчика дождя и преобразует аналоговый выход платы обнаружения дождя в цифровой выход. Если значение аналогового напряжения на входе платы управления (с выхода платы обнаружения дождя) меньше определенной границы, то на выходе платы будет напряжение низкого уровня (low), а если значение аналогового напряжения на входе платы будет больше этой границы, то на выходе платы будет напряжение высокого уровня (high). Для этой цели в составе платы присутствует компаратор на основе микросхемы операционного усилителя LM393.
Модуль датчика дождя, показанный на рисунке ниже, имеет с одной стороны 4 контакта (VCC, GND, D0, A0), которые мы будем подключать к плате Arduino, и 2 контакта с другой стороны, которые мы будем подключать к плате обнаружения дождя. Таким образом, в нашем проекте плата обнаружения дождя будет обнаруживать наличие дождя, а плата управления будет использоваться для регулировки чувствительности и преобразования аналогового выхода платы обнаружения дождя в цифровой выход.
Принцип работы датчика дождя
Принцип работы датчика дождя достаточно прост. В ясную сухую погоду он имеет большое сопротивление, поэтому на его выходе формируется напряжение высокого уровня (5V), что соответствует значению 1023 на выходе АЦП (аналого-цифрового преобразователя) того аналогового контакта платы Arduino, к которому подключен датчик. Во время влажной погоды (дождя) сопротивление датчика уменьшается, следовательно, уменьшается и напряжение на выходе датчика.
Когда влажность очень сильная, сопротивление датчика будет равно его минимальному значению, поэтому и напряжение на выходе датчика будет приблизительно равно 0. Это значение напряжения 0V будет соответствовать значению 0 на выходе АЦП того аналогового контакта платы Arduino, к которому подключен датчик. Если же, к примеру, на выходе датчика будет напряжение 3V, то это будет соответствовать значению 613 на выходе АЦП контакта платы Arduino. Поэтому формула для расчета значения на выходе АЦП будет выглядеть следующим образом:
ADC = (analog voltage value X 1023)/5,
где analog voltage value – аналоговое значение напряжения на выходе датчика дождя.
Схема проекта
Схема подключения датчика дождя к плате Arduino Uno представлена на следующем рисунке. Работа данной схемы была смоделирована в симуляторе Proteus.
На представленной схеме плата обнаружения дождя подключена к плате управления. Контакт VCC платы управления подключен к источнику напряжения 5V. Земля платы управления подключена к земле схемы. Выходной контакт датчика можно подключить к любому цифровому контакту платы Arduino, однако в результате наших экспериментов мы выяснили, что более стабильно схема работает если его подключить к аналоговому контакту платы Arduino. Зуммер подключен к контакту D5 платы Arduino.
Примечание : в нарисованной схеме небольшая ошибка, выходной контакт датчика дождя должен быть подключен не к контакту Reset, а к аналоговому контакту A0 платы Arduino.
Объяснение программы для Arduino
Полный код программы приведен в конце статьи, здесь же мы кратко рассмотрим его основные фрагменты.
Вначале в программе инициализируем необходимые контакты и переменные.
Как использовать датчик дождя с Ардуино?
Этот материал отвечает на вопрос нашего читателя о том, как использовать датчик дождя вместе с платой Arduino Uno?
Что нам понадобится
Для того, чтобы подключить сенсор дождя к Ардуино нам понадобятся некоторые комплектующие, их немного:
Из программного обеспечения нам нужна:
Датчик дождя
Датчик дождя состоит из пластины обнаружения дождя с компаратором, который управляет «интеллектом» сенсора.
Датчик дождя обнаруживает, что вода замыкает ленту печатных плат. Датчик действует как переменное сопротивление, которое меняет состояние: сопротивление увеличивается, когда датчик влажный, и сопротивление ниже, когда датчик сухой.
Компаратор имеет 2 выхода, подключенных к датчику дождя, цифровой выход (0/1) и аналоговый выход (от 0 до 1023).
Характеристики датчика
Регулировка чувствительности
Вы также можете отрегулировать чувствительность датчика дождя, повернув потенциометр на компараторе. Таким образом, обнаружение может быть осуществлено, например, по капле или в стакане воды.
Схема соединения
Соединяем Ардуино и датчик/сенсор дождя:
Для двух других соединений:
Нажмите для увеличения схемы соединения
Код проекта
Вы можете скопировать код проекта для загрузки в Arduino IDE ниже:
На этом всё. Надеюсь мы ответили на вопрос про подключение дождевого сенсора к плате Arduino Uno.
Датчик протечки и дождя ардуино
В этой статье мы узнаем, как можно использовать датчик протечки ардуино. Такие датчики часто называют по-разному: датчик дождя, влаги, капель, протечки. При этом почти всегда имеется в виду один и тот же датчик, как правило, выполненный в виде готового модуля. Датчик легко подключается к Arduino, скетч для работы с такими датчиками прост, цена не высока. Идеальный вариант для несложных проектов на Arduino Uno, Mega, Nano.
Описание датчика
Датчик протечки и дождя в проектах ардуино позволяет определить появление капель влаги и вовремя отреагировать на это, например, включив оповещение. Такие системы активно используются в аграрной отрасли, в автомобилестроении, и в других повседневных сферах нашей жизни. В этой статье мы рассмотрим работу с готовым модулем, который можно легко приобрести в любых специализированных интернет-магазинах.
Модуль датчика состоит из двух частей:
На рынке встречаются варианты датчиков как с разнесенными сенсором и компаратором, так и с объединенными на одной панели.
Датчик запитывается от напряжения 5 В, который можно легко завести с любой платы Arduino. Как правило, у модуля датчика доступно два выхода:
Подключение датчика протечки и дождя к ардуино
Для подключения датчика к ардуино понадобится сама плата (UNO, Mega, Nano или любая другая) и сам датчик. Если вы хотите проверять интенсивность осадков, то рекомендуется расположить датчик не горизонтально, а под некоторым углом, чтобы накапливаемые капли стекали вниз.
Схема подключения модуля датчика протечки к ардуино:
Аналоговый выход присоединяем к аналоговому пину микроконтроллера, например, A1. Цифровой выход, соответственно подключается к одному из цифровых пинов. Напряжение можно подать с вывода 5В платы ардуино, земля соединяется с землей.
Пример скетча
В данном скетче мы просто считываем значения с датчика и выводим их в монитор порта. Проведите эксперимент и проверьте, как изменяется получаемое значение, когда вы дотрагиваетесь до датчика мокрой или сухой рукой. Намочили датчик – пошел дождь или появилась протечка, вытерли сухой тряпкой – дождь закончился.
Пример проекта дождевой сигнализации
Рассмотрим пример с использованием звуковой сигнализации в виде подключенного зумера на цифровом выходе D6. При желании можно вместо сигнализации подключить реле и выполнять различные операции с размыканием сети. В скетче полученные данные мы будем передавать в монитор порта по UART-интерфейсу.
Скетч для проекта с сигнализацией
Ниже представлен тестовый код, который активирует звуковой сигнал на уже упомянутом выше цифровом выходе 6, с задержкой времени, для того, чтобы исключить ложные срабатывания при случайном попадании воды на сенсор. Работа реализована через переменную, которая обновляется каждую секунду и выступает порогом – curCounter. Сигнализация приводится в действие тогда, когда значение, передаваемое с сенсора, станет меньше 300. Задержка между обнаружением влаги и срабатыванием звукового сигнала составляет чуть больше 30 секунд.
Подведение итогов
Датчик дождя и протечки можно использовать в ардуино для создания устройств, реагирующих на появление влажности в виде капель. Среди преимуществ рассмотренного модуля можно отметить его простоту, удобство и дешевизну. Подключается датчик очень легко – с помощью аналогового или цифрового выходов. Для получения значения в скетче используется стандартная функция analogRead (или digitalRead для цифрового пина). Используя полученные значения, можно включать сигнализацию или другие внешние устройства с помощью реле.