Кодовый замок на ардуино уно

Электронный кодовый замок для двери на плате Ардуино

В этой инструкции я покажу вам, как сделать электронный замок на входную дверь, используя плату Ардуино Уно. Я сделал свою собственную схему на основе микроконтроллера ATmega328, но этот шаг опционален. В инструкции я покажу вам, как сделать простую схему с Ардуино Уно на макетной плате, а также дам несколько советов о том, как делать свои схемы на Ардуино.

При использовании этой системы у вас будет 5 секунд на открытие двери. После 5 секунд электрический дверной замок автоматически заблокируется. Открыть его можно набрав правильный пароль и нажав кнопку ‘*’. Если нужно сменить текущий пароль, это можно сделать нажав на кнопку ‘A’, а если нужно пропустить или отменить операцию. это можно сделать, нажав ‘#’. В систему встроена пищалка, которая при эксплуатации издаёт звуки разных тональностей.

Посмотрите видео с управлением системой:

Для работы системы требуется ток напряжением от 9 до 12 Вольт, поэтому я использовал адаптер на 12V. Если ток проходит через систему, замок остаётся открытым. В обратном случае кодовый замок на входную дверь остаётся закрытым.

Девайс был придуман для ознакомительных и образовательных целей, его нельзя использовать в реальной жизни. Если вы хотите использовать его для своей входной двери, то убедитесь, что система будет находиться в безопасности, например в металлической коробке, а кабели будут проведены внутри стен.

Шаг 1: Что вам понадобится

Для проекта нужно:

  • Плата Ардуино Уно
  • Высококонтрастный дисплей 16 *2
  • Кейпад (наборная панель) 4 * 4
  • Потенциометр 10

20k

  • Биполярный транзистор (NPN) NP2222A
  • 2-пиновый модуль с закручивающимися клеммами
  • Электрический замок для дверей (12V)
  • Блок питания от 9 до 12V (не больше!)
  • Если вы хотите сделать свою собственную схему на Ардуино, то вам также понадобятся:

    • DIP сокет для atmega328
    • Регулятор напряжения LM7805 (5V на выходе)
    • Кварцевый генератор 16Mhz
    • Конденсаторы 2x 22pF керамика, 2x 0.22uF электролитические
    • Резистор 10K
    • Джек для DC
    • Макетная плата

    И одна коробка, в которую всё уместится

    • Что-то для вырезания отверстий в коробке
    • Пистолет с горячим клеем
    • Дрель для сверления отверстий в коробке

    Шаг 2: Схема

    Соединить всё весьма просто. Смотрите картинку выше, на ней изображена схема на макетной плате.

    Дисплей:

    • Пин 1 — Vdd на GND
    • Пин 2 — Vss на 5V
    • Пин 3 — Vo (на средний пин потенциометра!)
    • Пин 4 — RS на пин 8 Ардуино
    • Пин 5 — RW на GND
    • Пин 6 — EN к пину 7 на Ардуино
    • Пин 11 — D4 к пину 6 на Ардуино
    • Пин 12 — D5 к пину 5 на Ардуино
    • Пин 13 — D6 к пину 4 на Ардуино
    • Пин 14 — D7 к пину 3 на Ардуино
    • Пин 15 — Vee (на правый или левый пин потенциометра)

    Кейпад 4 * 4 (от левого к правому пину)

    • Пин 1 к пину A5 на Ардуино
    • Пин 2 к пину A4 на Ардуино
    • Пин 3 к пину A3 на Ардуино
    • Пин 4 к пину A2 на Ардуино
    • Пин 5 к пину 13 на Ардуино
    • Пин 6 к пину 12 на Ардуино
    • Пин 7 к пину 11 на Ардуино
    • Пин 8 к пину 10 на Ардуино

    Транзистор NPN

    • B — пин базы к пину 9 на Ардуино
    • C — пин коллектора на первый пин терминала затвора *
    • E — эмиттер на GND

    * второй пин модуля с закручивающимися клеммами будет соединён с пином «Vin» на Ардуино и по нему будет подаваться питание на электрозамок (от 9V до 12V).

    Шаг 3: Код

    Вот код, встроенный в Codebender!

    Скачайте плагин Codebender и кликните кнопку Run on Arduino, чтобы залить код в ваш Ардуино. Вот и готово, плата запрограммирована. Если вы хотите что-то поменять в коде, то просто нажмите кнопку Edit.

    Совет: если вы хотите поменять время, в течение которого дверь остаётся открытой, то поменяйте задержку (delay) в строке 105.

    Шаг 4: Собираем свою кастомную схему на Ардуино

    Теперь, когда вы опробовали проект в действии с платой Ардуино Уно, вы можете начать собирать свою собственную схему, основанную на Ардуино. Процесс несложен, но вам будут нужны дополнительные знания, поэтому я попытаюсь дать вам несколько советов, которые помогут вам собрать схему самостоятельно:

    1. Резистор 10K нужно поместить между первым (reset) и седьмым (Vcc) пинами микроконтроллера Atmega328.
    2. Кварцевый генератор 16MHz нужно соединить с пинами 9 и 10, отмеченными как XTAL1 и XTAL2
    3. Соедините с каждым пином генератора один конденсатор на 22pF. Другой конец конденсаторов пойдёт на пин 8 (GND) микроконтроллера.
    4. Помните о соединении второй линии подачи питания ATmega328 с вашим блоком питания, пины 20-Vcc и 22-GND.
    5. Вся информация по распиновке Ардуино расположена на второй картинке сверху
    6. Чтобы получать 5V с вашего источника питания, используйте LM7805 с двумя электролитическими конденсаторами на 0.22uF (на входном и выходном пине). Это важно! не подавайте на вашу кастомную схему больше 6V. Это сожжет микроконтроллер Atmega и схему дисплея.

    Шаг 5: Укладываем всё в коробку

    Потратьте время и продумайте максимально удобную конфигурацию коробки, в которую вы поместите всю электронику.

    Шаг 6: Готово!

    Вот и всё! Вы успешно дошли до конца этой инструкции и теперь знаете, как сделать свой кодовый замок на ардуино!

    Рассказываю как сделать какую-либо вещь с пошаговыми фото и видео инструкциями.

    Источник

    Кодовый замок на Arduino за 20 минут

    Предыстория

    Так уж произошло, что решили мы на работе установить кодовый замок на свою дверь, потому, как постоянно вбегаем – выбегаем из кабинета, дверь в который должна быть закрыта постоянно в отсутствие обитателей. Ключи частенько оказываются забытыми внутри. Вобщем, решили, что кодовый замок это отличный выход.

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

    На двери с внешней стороны двери должна располагаться клавиатура, на которой вводится пароль, с внутренней стороны закреплена остальная конструкция. Для контроля полного закрытия двери используется геркон. Выходя из кабинета человек нажимает на клавиатуре «*» и не дожидаясь пока дверь закроется доводчиком идет по своим делам, когда дверь будет полностью закрыта, геркон замкнется и замок будет закрыт. Открывается дверь с помощью ввода 4х значного пароля и нажатием на «#».

    Комплектующие

    Arduino UNO = $18
    Arduino protoshield + breadboard = $6
    L293D = $1
    Пучок проводов 30шт для бредборда = $4
    2 розетки RJ45 = $4
    2 вилки RJ45 = $0.5
    актуатор центрального замка = 250 руб.
    Геркон = бесплатно оторван от старого окна.
    Шпингалет металлический гигантских размеров = бесплатно
    Корпус от старого хаба D-LINK из полуторамиллиметрового железа = бесплатно
    Блок питания от того же хаба D-LINK на 12 и 5в = тоже бесплатно
    Куча винтов и гаечек для крепления всего этого добра к корпусу = 100руб.
    Пульт управления от охранной сигнализации = бесплатно.

    Итого: $33,5 и 350руб.

    Не так уж и мало, скажете вы, и будете, определенно правы, но ведь за удовольствие надо платить! А собрать, что-то своими руками всегда приятно. К тому-же конструкцию можно сильно удешевить, если использовать голый МК без Arduino.

    Подготовка к сборке

    Хочется несколько слов сказать о покупке ключевого элемента конструкции актуатора. В местном авто-магазине мне предложили актуаторы двух видов: «с двумя проводами и с пятью». Со слов продавщицы они были абсолютно одинаковыми и различие в количестве проводов не значило абсолютно ничего. Однако, как оказалось позже, это не так! Я выбрал девайс с двумя проводами, он питался от 12в. В конструкции с пятью проводами установлены концевые выключатели, что позволяет контролировать движение рычага. Понял, что купил не тот я только когда разобрал его и менять его было поздно. Ход рычага оказался слишком коротким, чтобы нормально задвинуть щеколду, поэтому, необходимо было немного его доработать, а именно удалить две резиновые шайбы укорачивающие ход рычага актуатора. Для этого корпус пришлось распилить вдоль обычной ножовкой, потому, что вторая шайба находилась внутри. Синяя изолента нам, как всегда помогла нам в дальнейшем при сборке его назад.
    Для управления мотором актуатора был использован драйвер моторов L293D, который выдерживает пиковую нагрузку до 1200 мА, у нас при остановке двигателя актуатора пиковая нагрузка вырастала всего до 600 мА.
    Из пульта управления от охранной сигнализации были выведены контакты с клавиатуры, динамика и двух светодиодов. Пульт и основное устройство предполагалось соединить с помощью витой пары и RJ45 разъемов

    Программирование.

    Так, как опыта программирования Arduino у меня не было до сих пор. Я воспользовался чужими наработками и статьями с сайта arduino.cc. Кому интересно, может поглядеть этот безобразный код :)

    Фото и видео


    Ардуино и актуатор


    Блок питания


    Клавиатурка


    Шпингалет (соединен с актуатором металлической спицей и на которую надета термоусадка для красоты)

    Источник

    Электронный замок своими руками

    КОНЦЕПТ

    Данный проект является модульным, т.е. можно подключать/отключать разные элементы и получить разную функциональность. На картинках выше показан вариант с полной функциональность, а именно:

    • Запирающий механизм. Служит для ОТКРЫТИЯ и ЗАКРЫТИЯ двери. В этом проекте рассмотрено использование трёх разных механизмов:
      • Сервопривод. Бывают большие, бывают маленькие. Очень компактный, и вкупе с тяжёлым засовом – отличный вариант
      • Электропривод замка дверей автомобиля. Большая и мощная штука, но жрёт просто безумные токи
      • Соленоидная щеколда. Хороший вариант, так как сама захлопывается

      В настройках прошивки можно выбрать любой из трёх типов (настройка lock_type)

    • Кнопка внутри. Служит для ОТКРЫТИЯ и ЗАКРЫТИЯ двери изнутри. Может быть размещена на ручке двери (со стороны ладони или со стороны пальцев), на самой двери, либо на косяке
    • Кнопка снаружи. Служит для ЗАКРЫТИЯ двери, а также для ПРОБУЖДЕНИЯ из энергосбережения. Может быть размещена на ручке двери (со стороны ладони или со стороны пальцев), на самой двери, либо на косяке
    • Концевик на закрытие двери. Служит для автоматического закрытия замка при закрывании двери. Им может быть:
      • Тактовая кнопка
      • Датчик холла + магнит на самой двери
      • Геркон + магнит на самой двери
    • Секретная кнопка сброса доступа. Служит для сброса пароля/ввода нового пароля/запоминания нового ключа/комбинации и т.д. Может быть спрятана где-то в корпусе
    • Светодиод для индикации работы. Светодиод RGB, используются красный и зелёный цвета (при смешении дают жёлтый):
      • Горит зелёный — замок ОТКРЫТ. Горит чтобы не забыть закрыть дверь
      • Горит жёлтый — система проснулась и ожидает ввод пароля
      • Мигает красный — сел аккумулятор

    Любой из этих элементов можно исключить из системы:

    • Убираем концевик. В прошивке в настройках тоже его отключаем (настройка tail_button). Теперь чтобы закрыть замок, нужно нажимать кнопку
    • Убираем наружную кнопку. В прошивке в настройках тоже её отключаем (настройка wake_button). Теперь систему не нужно будить, она просыпается сама (потребление энергии чуть больше). А также у нас теперь нет кнопки закрыть на передней части двери, и нужен концевик. Либо замок – щеколда
    • Убираем внутреннюю кнопку. Этот вариант годится для шкафов и сейфов. В настройках ничего менять не нужно
    • Убираем светодиод. В настройках ничего менять не нужно
    • Кнопку сброса доступа можно отпаять после первого использования, либо переписать код под себя

    Версия с кнопкой

    • Дверь закрыта, нажато СНАРУЖИ — проснуться, ждать ввод пароля/RFID метку/электронный ключ/отпечаток пальца
    • Дверь закрыта, система проснулась, ждёт ввод пароля. Время можно настроить (настройка sleep_time)
    • Дверь закрыта, введён пароль/метка/ключ и т.д. — открыть
    • Дверь закрыта, нажато ВНУТРИ — открыть
    • Дверь открыта, нажато СНАРУЖИ — закрыть
    • Дверь открыта, нажато ВНУТРИ — закрыть
    • Дверь открыта, нажат КОНЦЕВИК — закрыть

    В замке предусмотрена работа от аккумулятора в режиме пониженного энергосбережения (включить выключить: настройка sleep_enable), а именно:

    • Просыпаться каждые несколько секунд, следить за СОБЫТИЕМ (опциональный вариант, если снаружи нет кнопки. Включить можно в настройке wake_button)
    • Каждые несколько минут следить за напряжением акума (вкл/выкл настройка battery_monitor)
    • Если акум разряжен (напряжение устанавливается в настройке bat_low):
      • открыть дверь (опционально, можно настроить в прошивке open_bat_low)
      • запретить дальнейшее открытие и закрытие
      • при нажатии на кнопки мигать красным светодиодом
      • перестать следить за СОБЫТИЕМ (т.е. ввод пароля/метка и т.д.)

    Версия с клавиатурой

    Когда система не спит, нажать кнопку смены пароля (скрытая кнопка). Попадаем в режим смены пароля:
    Вводим пароль из цифр (МАКСИМУМ 10 ЦИФР. )

    • При нажатии * пароль записывается в память и система выходит из смены пароля
    • При нажатии # пароль сбрасывается (можно вводить заново)
    • Если ничего не нажимать 10 секунд, автоматически выйдем из режима смены пароля, пароль останется старый

    Когда система не спит (проснулись по кнопки или сон отключен), нажать * для входа в режим ввода пароля
    Если система спит и периодически просыпается проверять СОБЫТИЕ, то нажимаем * и удерживаем, пока не загорится красный светодиод
    Режим ввода пароля:

    • Обработка пароля сделана таким образом, что правильный пароль засчитывается только при наборе правильной последовательности цифр, то есть если пароль 345, то вводить можно любые числа до тех пор, пока не появится последовательность 345, т.е. 30984570345 откроет замок, так как оканчивается на 345.
    • Если пароль введён верно, дверь откроется
    • Если ничего не нажимать, через 10 секунд система вернётся в обычный (дежурный) режим
    • Если нажать #, сразу выйдем из режима ввода пароля
    • Если нажать секретную кнопку смены пароля в режиме ввода пароля, то тоже из него выйдем

    Источник

    Кодовый замок на arduino uno

    Электронный кодовый замок для двери на плате Ардуино

    В этой инструкции я покажу вам, как сделать электронный замок на входную дверь, используя плату Ардуино Уно. Я сделал свою собственную схему на основе микроконтроллера ATmega328, но этот шаг опционален. В инструкции я покажу вам, как сделать простую схему с Ардуино Уно на макетной плате, а также дам несколько советов о том, как делать свои схемы на Ардуино.

    При использовании этой системы у вас будет 5 секунд на открытие двери. После 5 секунд электрический дверной замок автоматически заблокируется. Открыть его можно набрав правильный пароль и нажав кнопку ‘*’. Если нужно сменить текущий пароль, это можно сделать нажав на кнопку ‘A’, а если нужно пропустить или отменить операцию. это можно сделать, нажав ‘#’. В систему встроена пищалка, которая при эксплуатации издаёт звуки разных тональностей.

    Посмотрите видео с управлением системой:

    Для работы системы требуется ток напряжением от 9 до 12 Вольт, поэтому я использовал адаптер на 12V. Если ток проходит через систему, замок остаётся открытым. В обратном случае кодовый замок на входную дверь остаётся закрытым.

    Девайс был придуман для ознакомительных и образовательных целей, его нельзя использовать в реальной жизни. Если вы хотите использовать его для своей входной двери, то убедитесь, что система будет находиться в безопасности, например в металлической коробке, а кабели будут проведены внутри стен.

    Шаг 1: Что вам понадобится

    Для проекта нужно:

    • Плата Ардуино Уно
    • Высококонтрастный дисплей 16 *2
    • Кейпад (наборная панель) 4 * 4
    • Потенциометр 10

    20k

  • Биполярный транзистор (NPN) NP2222A
  • 2-пиновый модуль с закручивающимися клеммами
  • Электрический замок для дверей (12V)
  • Блок питания от 9 до 12V (не больше!)
  • Если вы хотите сделать свою собственную схему на Ардуино, то вам также понадобятся:

    • DIP сокет для atmega328
    • Регулятор напряжения LM7805 (5V на выходе)
    • Кварцевый генератор 16Mhz
    • Конденсаторы 2x 22pF керамика, 2x 0.22uF электролитические
    • Резистор 10K
    • Джек для DC
    • Макетная плата

    И одна коробка, в которую всё уместится

    • Что-то для вырезания отверстий в коробке
    • Пистолет с горячим клеем
    • Дрель для сверления отверстий в коробке

    Шаг 2: Схема

    Соединить всё весьма просто. Смотрите картинку выше, на ней изображена схема на макетной плате.

    Дисплей:

    • Пин 1 — Vdd на GND
    • Пин 2 — Vss на 5V
    • Пин 3 — Vo (на средний пин потенциометра!)
    • Пин 4 — RS на пин 8 Ардуино
    • Пин 5 — RW на GND
    • Пин 6 — EN к пину 7 на Ардуино
    • Пин 11 — D4 к пину 6 на Ардуино
    • Пин 12 — D5 к пину 5 на Ардуино
    • Пин 13 — D6 к пину 4 на Ардуино
    • Пин 14 — D7 к пину 3 на Ардуино
    • Пин 15 — Vee (на правый или левый пин потенциометра)

    Кейпад 4 * 4 (от левого к правому пину)

    • Пин 1 к пину A5 на Ардуино
    • Пин 2 к пину A4 на Ардуино
    • Пин 3 к пину A3 на Ардуино
    • Пин 4 к пину A2 на Ардуино
    • Пин 5 к пину 13 на Ардуино
    • Пин 6 к пину 12 на Ардуино
    • Пин 7 к пину 11 на Ардуино
    • Пин 8 к пину 10 на Ардуино

    Транзистор NPN

    • B — пин базы к пину 9 на Ардуино
    • C — пин коллектора на первый пин терминала затвора *
    • E — эмиттер на GND

    * второй пин модуля с закручивающимися клеммами будет соединён с пином «Vin» на Ардуино и по нему будет подаваться питание на электрозамок (от 9V до 12V).

    Шаг 3: Код

    Вот код, встроенный в Codebender!

    Скачайте плагин Codebender и кликните кнопку Run on Arduino, чтобы залить код в ваш Ардуино. Вот и готово, плата запрограммирована. Если вы хотите что-то поменять в коде, то просто нажмите кнопку Edit.

    Совет: если вы хотите поменять время, в течение которого дверь остаётся открытой, то поменяйте задержку (delay) в строке 105.

    Шаг 4: Собираем свою кастомную схему на Ардуино

    Теперь, когда вы опробовали проект в действии с платой Ардуино Уно, вы можете начать собирать свою собственную схему, основанную на Ардуино. Процесс несложен, но вам будут нужны дополнительные знания, поэтому я попытаюсь дать вам несколько советов, которые помогут вам собрать схему самостоятельно:

    1. Резистор 10K нужно поместить между первым (reset) и седьмым (Vcc) пинами микроконтроллера Atmega328.
    2. Кварцевый генератор 16MHz нужно соединить с пинами 9 и 10, отмеченными как XTAL1 и XTAL2
    3. Соедините с каждым пином генератора один конденсатор на 22pF. Другой конец конденсаторов пойдёт на пин 8 (GND) микроконтроллера.
    4. Помните о соединении второй линии подачи питания ATmega328 с вашим блоком питания, пины 20-Vcc и 22-GND.
    5. Вся информация по распиновке Ардуино расположена на второй картинке сверху
    6. Чтобы получать 5V с вашего источника питания, используйте LM7805 с двумя электролитическими конденсаторами на 0.22uF (на входном и выходном пине). Это важно! не подавайте на вашу кастомную схему больше 6V. Это сожжет микроконтроллер Atmega и схему дисплея.

    Шаг 5: Укладываем всё в коробку

    Потратьте время и продумайте максимально удобную конфигурацию коробки, в которую вы поместите всю электронику.

    Шаг 6: Готово!

    Вот и всё! Вы успешно дошли до конца этой инструкции и теперь знаете, как сделать свой кодовый замок на ардуино!

    Рассказываю как сделать какую-либо вещь с пошаговыми фото и видео инструкциями.

    Источник

    ТОП-3 интересных проекта на Ардуино своими руками, схемы, видео

    Схема и проект кодового замка на Arduino

    Кодовый замок на Arduino можно приспособить для различных целей. Это могут быть двери, шкатулки, сейфы или запуск какого-либо действия.

    Задача была следующая: разработать кодовый замок на Arduino, который управляет электромагнитным реле. При правильном вводе 5-значного кода, срабатывает реле и загорается зеленый светодиод. Через 5 секунд реле приходит в изначальное состояние и зеленый светодиод гаснет. Если код введен неверно, то загорается красный светодиод в течение 5 секунд. Код можно вводить бесконечное количество раз.

    • Смотрите также, как сделать часы реального времени на ЖК-дисплее

    Для начала моделируем схему в Proteus:

    На схеме видим матрицу из кнопок и два светодиода. Вместо катушки реле для удобства взят спикер, который при эмуляции начинает трещать. При правильном наборе кода загорается светодиод L_1 и трещит спикер LS1 в течение 5 секунд.

    Код программы и его детальное описание

    #define LED1 10 // красный светодиод
    #define LED2 11 // зеленый светодиод
    #define RELAY 12 // реле на замок

    #define NUM_KEYS 5 // количество знаков в коде

    char key;
    char myarraw[NUM_KEYS] = < '1', '2', '3', '4', '5'>; // массив с верным кодом
    char button_pressed[NUM_KEYS]; //массив для хранения нажатых кнопок
    int k=0; // счетчик нажатий
    int s=0; // счетчик совпадений нажатых кнопок с верными
    const byte ROWS = 4; // количество строк в матрице клавиатуры
    const byte COLS = 4; // количество столбцов
    char keys[ROWS][COLS] = < // таблица соответствия кнопок символам
    <'1','2','3','A'>,
    <'4','5','6','B'>,
    <'7','8','9','C'>,
    <'*','0','#','D'>>;
    byte rowPins[ROWS] = <5, 4, 3, 2>; // пины подключенных строк
    byte colPins[COLS] = <9, 8, 7, 6>; // пины подключенных столбцов

    Keypad keypad = Keypad( makeKeymap(keys), rowPins, colPins, ROWS, COLS ); // создаем объект клавиатуры для работы с ней

    void setup() <
    pinMode(LED1, OUTPUT); // красный светодиод
    pinMode(LED2, OUTPUT); // зеленый светодиод
    pinMode(RELAY, OUTPUT); // реле управления замком
    digitalWrite(RELAY, HIGH); // вход реле инверсный, поэтому его сразу включаем (?!)

    if ( key != NO_KEY ) // если она все-таки есть
    <
    button_pressed [k] = key; //сохраняем эту кнопочку в массиве
    k = k + 1; // запоминаем сколько уже кнопок нажали
    if(k == NUM_KEYS) // если нажали нужное количество кнопок

    Далее остается только залить прошивку в Arduino и провести эмуляцию в Proteus.

    Барометр с расширенными функциями на Ардуино для дома своими руками

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

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

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

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

    Результаты измерений выводятся на двухстрочный знакосинтезирующий дисплей. В первую строку выводится результат измерения текущего атмосферного давления в мм рт. ст., отклонение текущего значения давления от среднего значения для данного места (положительным считается превышение текущего значения давления над средним), а также температура воздуха в градусах Цельсия. Данные, приведенные в верхней строке, обновляются каждые 6 секунд. Вывод новых данных сопровождается вспышкой светодиода, расположенного над индикатором.

    • Схема термометра с модулем DS18B20 на основе платы Arduino

    Во вторую строку индикатора выводятся показатели роста давления за последний час, 3 часа и 10 часов. Если давление за указанный временной промежуток возросло, то соответствующий рост выводится с плюсом, в противном случае — с минусом. Данные во второй строке обновляются каждые 10 минут. Сразу после включения барометра вторая строка будет пуста. Числовые значения появятся там по прошествии 1-го, 3-х и 10-ти часов соответственно.

    Барометр предназначен для работы в сухом отапливаемом помещении при температуре 0. 40 °C и атмосферном давлении 600. 825 мм рт. ст.

    Точность измерения давления и температуры полностью определяется точностью использованного датчика давления BMP180 фирмы Bosch. Типовая погрешность измерения давления составляет -1hPa, что примерно соответствует 0.75 мм рт. ст. Шумовая составляющая при измерении давления — 0.02 hPa (0.015 мм рт. ст.). Типовая погрешность измерения температуры вблизи значения 25 °C составляет +/- 0.5°C.

    Интервалы времени в данном устройстве отсчитываются программно. Погрешность формирования этих интервалов, измеренная автором, не превышает одной минуты за 10 часов.

    Схема барометра с дисплеем на Ардуино и необходимые детали

    Список необходимых элементов:

    • Модуль с датчиком BMP180 (A1).
    • Плата Arduino (A2) — Arduino Nano 3.0.
    • Выпрямительный диод (VD1) — 1N4007.
    • LCD-дисплей (HG1) — WH1602L Winstar.
    • Светодиод (HL1) — L-1154GT Kingbright.
    • 2 электролитических конденсатора (С1, С2) — 4700 мкФ х 16 В и 220 мкФ х 16 В соответственно.
    • 2 резистора (R1, R3) — 1 кОм и 100 Ом 0.5 ВА соответственно.
    • Подстроечный резистор (R2) — 10 кОм.

    Рекомендации по монтажу барометра для дома на Arduino

    Основным элементом устройства является модуль Arduino Nano. Мы используем 3-ю версию с микроконтроллером ATmega 328. Память модуля в данном случае занята только на треть, поэтому возможно применение модуля Arduino Nano с микроконтроллером ATmega 168.

    Дисплей Winstar WH1602L — двухстрочный на 16 знакомест в каждой строке. Его основой является контроллер HD44780. Резистор R2 позволяет подстроить контрастность изображения. Если напряжение на выводе 3 (Vo) будет сильно отличаться от оптимального, то на дисплее совсем не будет видно никакого изображения. Это обстоятельство необходимо учитывать при первом включении устройства. Для данного экземпляра дисплея оптимальным оказалось напряжение на выводе 3 около 1 В. Резистор R3 определяет величину тока светодиодов подсветки.

    Датчик давления BMP180 имеет металлический корпус размером 3.6х3.6×1 мм. Выводы его представляют собой контактные площадки, расположенные на дне корпуса. Кроме того, датчик требует питания 1.8–3.6 В. Уровни сигналов, которыми датчик обменивается с внешним устройством, также отличаются от требуемых. Эти обстоятельства затрудняют непосредственное использование BMP180. К счастью, данная проблема легко решается. В продаже имеются модули на основе датчиков BMP180, в состав которых входят сами датчики и все согласующие элементы. Эти модули представляют собой плату размером 10×13 мм. Их стоимость — примерно 1.4 USD.

    Светодиод HL1 вспыхивает каждые 6 секунд сигнализируя о том, что на табло барометра выведены новые результаты. Мы использовали зелёный светодиод диаметром 3 мм L-1154GT фирмы Kingbright.

    Конденсатор C1 имеет довольно большую ёмкость, что делает устройство нечувствительным к кратковременным сбоям питания. Если это не требуется, то C1 можно уменьшить до 500 мкФ.

    Диод D1 отключает подсветку индикатора при сбоях питания. Это увеличивает время автономной работы барометра от энергии, запасённой в конденсаторе C1.

    Устройство можно питать от любого источника постоянного тока (зарядного устройство сотового телефона, блока питания какого-либо гаджета и т. п.) с выходным напряжением 8. 12 В. При напряжении 9 В барометр потребляет около 80 мА.

    Устройство собрано на макетной плате размером 85 х 55 мм, которая прикреплена к дисплею с помощью пластины из оргстекла.

    Датчик BMP180 располагается внизу — как можно дальше от основных тепловыделяющих элементов, которыми являются резистор R3 и дисплей со светодиодной подсветкой. Корпусом устройства является пластмассовая коробка размером 160х160х25. В нижней и верхней стенках коробки следует просверлить ряд вентиляционных отверстий.

    Прошивка барометра на Ардуино для дома

    Скетч, который нужно прошить в память модуля Arduino Nano, представлен в архиве, который можно скачать ниже. Использована среда Arduino IDE 1.8.1. Для поддержки датчика давления требуется установить библиотеку Adafruit-BMP085. Соответствующий файл тоже есть в архиве.

    Перед загрузкой скетча в строке 17 следует вместо числа 740.0, которое соответствует среднему давлению в месте установки барометра, вписать среднее давление в мм рт. ст., соответствующее тому месту, где будет установлен Ваш барометр. В первом приближении этот параметр можно определить по формуле Рср = 760-0.091h, где h —высота над уровнем моря в метрах. Высоту проще всего определить с помощью GPS-навигатора.

    Стоит учесть, что данная формула не учитывает многие факторы, влияющие на атмосферное давление и применима только для высот до 500 м.

    Простой и интересный проект на Ардуино — подарочная книга с секретом на Ардуино

    Внутри этой книги установлен механизм, открывающий специальный отсек, если отгадать все тайны этой книги. Механизмы и датчики книги управляются с помощью Ардуино. Открыть у книги можно только несколько страниц посередине. В тексте представлено несколько загадок. Отгадав первую, пользователь поймет, что нужно повернуть диск на обложке. При правильном положении диска загорится светодиод.

    Далее нужно разгадать судоку и найти фразу «Повернуть книгу». Удерживая книгу вертикально, ее нужно повернуть. Третья загадка шахматная — необходимо поставить шахматные фигуры на определенные клетки. Если все сделано правильно и три загадки разгаданы, с помощью сервомотора открывается потайной отсек. Размер отсека конечно не велик, но там можно разместить, например, конфету или кольцо.

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

    Необходимые инструменты и материалы для книги с секретом на Ардуино

    • Бумага.
    • Картон.
    • Бархатный картон.
    • Декоративные камни.
    • Черный чай.
    • Ардуино.
    • Сервопривод.
    • 3 светодиода.
    • Акселерометр MPU 6050.
    • 2 геркона.
    • 2 резистора 10 кОм.
    • Резистор 220 Ом.
    • Переключатель.
    • Потенциометр 1 кОм.
    • Батарея 9 В.
    • Провода.
    • Клей.
    • Ножницы.
    • Краска.
    • 3D принтер.
    • Утюг.
    • Паяльник.
    • Клеевой пистолет.

    Шаг первый: подготовка листов

    У нас древняя книгу, поэтому нужно сделать так, чтобы бумага выглядела в этом стиле. Сначала печатаем на бумаге нужный текст и рисунки. Для образца текст будет в архиве ниже.

    Затем сминаем бумагу и опускаем смятые листы в круто заваренный черный чай на 15 минут. Через 15 минут листы достаем и высушиваем через полотенце утюгом.

    Шаг второй: сервопривод

    Используем сервопривод Tower Pro 9g SG90. Остальные детали напечатаны на 3D принтере. Вся информация по ним доступна для скачивания в архиве ниже.

    Шаг третий: отсеки

    Книга, как бы разделена на несколько частей: обложка, передняя часть с ардуино, часть с текстом и рисунками, часть с тайником. Берем пачку листов А4 и делим пополам. В одной части вырезаем нишу под Ардуино и батарею, в другой — под сервопривод и тайник. Торцы листов внутри отсеков проклеиваем термоклеем.

    Тайник, в отличие от отсека с Ардуино, будет виден, поэтому проклеиваем его картоном.

    Видимые части замачиваем в чае.

    Шаг четвертый: установка сервопривода

    Закрепляем сервопривод в отсеке. Выводим провод. На отдельных листах закрепляем петлю замка. В нормальном положении язычок привода цепляем за петлю и отсек закрыт.

    Шаг пятый: обложка

    Обложку изготавливаем из картона и оклеиваем бархатным картоном.

    Шаг шестой: сборка книги

    Соединяем части книги с помощью степлера и клея.

    В обложке сверлим отверстие для ручки потенциометра. Сам потенциометр закрепляем в большом отсеке. Для управления потенциометром печатаем ручку в виде круга. Информация по ней будет в архиве.

    Прохождение каждого задания информируют загорающиеся светодиоды. В обложке делаем под них отверстия, вклеиваем их и закрываем сверху декоративными стеклами.

    На кусок картона клеим с одной стороны лист с шахматным полем, с другой — два геркона по центру клеток. Этот лист будет закрывать отсек электроники, поэтому устанавливаем на него магнитную пластину, а на книгу — полоску металла.

    Шаг седьмой: Ардуино

    Подключаем все электронные устройства к Ардуино и загружаем код. Вся информация есть в архиве ниже.

    Шаг восьмой: шахматные фигуры

    Шахматные фигуры можно напечатать на 3D-принтере. В нижнюю часть вклеиваем магниты (информация есть в архиве).

    Подарочная книга с секретом на Ардуино готова.

    • Возможно, вас также заинтересует статья о ТОП-3 проектах Ардуино для начинающих

    Источник

    Adblock
    detector