Рейтинг@Mail.ru
Автоматический игрушечный гараж на Ардуино
Автоматический игрушечный гараж на Ардуино

Автоматический игрушечный гараж своими руками на Ардуино

1 Комментарий DIY
Print Friendly, PDF & Email

Привет всем. В данном проекте мы с помощью Ардуино сделаем игрушечный автоматический гараж. Игрушка необычная, и будет очень интересна вашему малышу. Благодаря ультразвуковому датчику HC-SR04 гараж будет автоматически открываться, когда перед ним будет проезжать машина на расстоянии примерно 30 см, и через 4 сек закрываться. Игрушку можно улучшить. Например: добавить включение подсветки в гараже при открытии, добавить звуки, предупреждающие о закрытии или открытии гаража, или использовать пульт от телевизора чтобы открывать, закрывать гараж, или ставить пароль пультом на гараж… В общем, есть масса интересных вариантов модернизации.

Процесс изготовления игрушечного гаража на Arduino

Для проекта нам понадобится:

  • Arduino UNO или любая другая модификация,
  • сервомотор SG90,
  • ультразвуковой дальномер HC-SR04,
  • бредборд (монтажная плата),
  • провода папа-папа, папа-мама,
  • зарядка от мобильного телефона 5V, 2A, или переносной повербанк, или батарейка «Крона»,
  • USB кабель для прошивки Arduino,
  • картонка или коробка из-под обуви,
  • и прочее.
  • Детали, необходимые для сборки игрушечного гаража
    Детали, необходимые для сборки игрушечного гаража

    Первым делом, согласно Вашему эскизу, делаем основание гаража:

    Эскиз будущего гаража
    Эскиз будущего гаража

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

    Этап разметки
    Этап разметки

    В верхней части гаража над воротами делаем отверстие для датчика расстояния.

    Вырезаем отверстия для датчика HC-SR04
    Вырезаем отверстия для датчика HC-SR04

    Делаем ворота высотой 9 см и шириной 7 см и приклеиваем на своё место.

    Делаем ворота для игрушечного гаража
    Делаем ворота для игрушечного гаража

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

    Установка сервопривода для открытия ворот игрушечного гаража
    Установка сервопривода для открытия ворот игрушечного гаража
    Установка сервопривода для открытия ворот игрушечного гаража
    Установка сервопривода для открытия ворот игрушечного гаража

    Электрическая схема игрушечного гаража

    Теперь рассмотрим схему нашей игрушки.

    Схема соединений для игрушечного гаража на Arduino, датчике HC-SR04 и сервоприводе
    Схема соединений для игрушечного гаража на Arduino, датчике HC-SR04 и сервоприводе

    Схема простая. Для сборки нам нужно несколько проводов, чтобы подключить дальномер к пину D12 на Ардуино. Подключаем контакт Trig а к D11 Echo, ну и сервомотор подключаем к цифровому пину D0.

    Скетч для управления игрушечным гаражом

    После сбора схемы и перед загрузкой скетча в Ардуино, нужно установить библиотеку NewPing_v1.8. Она немного быстрее работает с датчиком расстояния и упрощает код скетча. Библиотеку можете скачать в ссылке под видео.

    #include <NewPing.h> // Подключаем библиотеку NewPing.
    #include <Servo.h> // Подключаем библиотеку Servo.
    #define TRIGGER_PIN 12 // Контакт Тrig ультразвукового датчика подключаем к 12 пину Ардуино.
    #define ECHO_PIN 11 // Контакт Echo ультразвукового датчика подключаем к 11 пину Ардуино.
    #define MAX_DISTANCE 200 // Ограничиваем максимальный радиус действия сенсора.
    int clo = 15; // Переменная clo хранит градус на котором закрыт гараж.
    int ope = 140; // Переменная оре хранит градус на котором открыт гараж.
    Servo servo;  // Создаём переменную servo.
    
    NewPing sonar(TRIGGER_PIN, ECHO_PIN, MAX_DISTANCE); // Вызываем функцию sonar библиотеки NewPing 
    
    void setup() {
      servo.attach(0); // Подключаем серво к 0 пину Ардуино.
      servo.write(clo); // Ставим серво на градус который хранится в переменной сlо.
    }
    
    void loop() {
       delay(70); // делаем задержку 0,007 сек.
    
      if (sonar.ping_cm() < 30) // если ультразвуковой датчик увидел препятствие на расстоянии до 30 см 
      { 
        servo.write(ope); // Поворачиваем серво на угол открытия ope
        delay (3000); // Делаем задержку 3 сек.
      }
      else // Если препятствие дальше, чем 30 см.
      {
        servo.write(clo); // Поворачиваем серво на угол открытия сlo
        delay (1000); // Делаем задержку 1 сек.
      }
    }
    

    Код очень простой и закомментирован, это проект подойдёт начинающим. Программа постоянно обращается к датчику HC-SR04, и если перед ним появляется препятствие на расстоянии 30 см, он открывает ворота на заданный угол, и программа останавливается на 3 секунды. После 3-х секунд снова идет опрос датчика. Если нет препятствия, то серво поворачивается на заданный угол и закрывает за собой врата.

    Видео по сборке и тестированию данного проекта можете посмотреть на канале «Делай Сам».

Автоматический игрушечный гараж своими руками на Ардуино
Последнее изменениеСуббота, 12 Январь 2019 15:16 Прочитано 7567 раз

Поблагодарить автора:

Поделиться

Print Friendly, PDF & Email

1 Комментарий

Оставить комментарий