Оглавление:

Умный будильник: умный будильник на Raspberry Pi: 10 шагов (с изображениями)
Умный будильник: умный будильник на Raspberry Pi: 10 шагов (с изображениями)

Видео: Умный будильник: умный будильник на Raspberry Pi: 10 шагов (с изображениями)

Видео: Умный будильник: умный будильник на Raspberry Pi: 10 шагов (с изображениями)
Видео: Око Саурона на OpenCV. Проект для Raspberry Pi 2024, Ноябрь
Anonim
Умный будильник: умный будильник на Raspberry Pi
Умный будильник: умный будильник на Raspberry Pi

Вы когда-нибудь хотели умные часы? Если да, то это решение для вас!

Я сделал Smart Alarm Clock, это часы, в которых можно менять время будильника согласно сайту. При срабатывании будильника раздастся звуковой сигнал (зуммер) и загорится 2 лампочки (2 светодиода). Светодиоды загораются только в темноте (датчик освещенности). Светодиоды сделают комнату светлее, и вы сможете вставать естественно. Чтобы отключить будильник, нажмите кнопку. Если вы хотите использовать функцию повтора сигнала (+5 минут), вы должны держать руку перед ультразвуковым датчиком. При обнаружении движения (ультразвуковой датчик) состояние ЖК-дисплея изменится.

Состояние ЖК-дисплея:

  1. IP-адрес сайта
  2. Часы / дата
  3. Время следующего будильника
  4. Температура и влажность

Это мой первый проект в моей области обучения: Мультимедиа и коммуникационные технологии (MCT) в Ховесте (Кортрейк, Бельгия).

Шаг 1: Компоненты и материалы

Компоненты и материалы
Компоненты и материалы
Компоненты и материалы
Компоненты и материалы
Компоненты и материалы
Компоненты и материалы

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

Компоненты

  • Raspberry Pi 3 модель B +
  • Блок питания Raspberry Pi
  • ЖК дисплей
  • Зуммер
  • LDR
  • 2 светодиода
  • DHT-11
  • HC-SR04 Ультразвуковой датчик расстояния
  • Кнопка
  • Триммер

Материалы:

  • Дерево 7мм
  • Дерево 2см
  • Упаковочная пленка

Инструменты:

  • Пайка
  • супер клей
  • Пила
  • Отвертки
  • Дрель

В PDF-файле ниже вы можете увидеть полный прайс-лист.

Шаг 2: Собираем оборудование вместе

Собираем оборудование вместе
Собираем оборудование вместе
Собираем оборудование вместе
Собираем оборудование вместе

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

  1. Есть ультразвуковой датчик расстояния, который обнаруживает движение на расстоянии 15 см (самокодируемое расстояние) и меняет состояние ЖК-дисплея, но если будильник включен, он откладывает его на 5 минут.
  2. Имеется ЖК-экран, на котором отображаются 4 статуса (IP-адрес, дата / время, следующая тревога, температура / шум).
  3. DHT11, измеряющий температуру и влажность воздуха
  4. Кнопка для отключения будильника, или если вы нажмете более 3 секунд, rpi выключится
  5. Зуммер для подачи сигнала, если установленное время будильника совпадает с текущим временем
  6. Датчик LDR для измерения освещенности в комнате
  7. 2 светодиода, чтобы осветить комнату, если темно -> LDR

Шаг 3: Модель базы данных (mySQL)

Модель базы данных (mySQL)
Модель базы данных (mySQL)

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

С помощью этой базы данных вы сможете показать несколько вещей, например:

  • Температура
  • Влажность
  • Световая ценность
  • Установленное / отключенное / отложенное время будильника
  • Если зуммер работает
  • Если свет горит

Если вы хотите воссоздать эту базу данных, вам нужно будет создать нового пользователя, чтобы вы могли подключиться к своему Raspberry Pi.

Шаг 4: Подключение к Raspberry Pi

Связь с Raspberry Pi
Связь с Raspberry Pi

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

Когда вы откроете Putty, вам нужно будет нажать на «сеанс». Когда вы это сделаете, вам нужно будет заполнить IP-адрес Pi в разделе «Удаленный хост». Затем вы можете ввести имя пользователя, которое вы можете выбрать. затем нажмите «ОК».

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

Шаг 5: программное обеспечение на Raspberry Pi

Программное обеспечение на Raspberry Pi
Программное обеспечение на Raspberry Pi

Чтобы мой код работал (ссылка на который я приведу ниже), вам необходимо установить несколько пакетов и библиотек. Первое, что вам нужно, это обновить свой Pi.

Сначала обновите список пакетов вашей системы, введя следующую команду: sudo apt-get update Затем обновите все установленные пакеты до их последних версий с помощью следующей команды: sudo apt-get dist-upgrade После установки пакетов вы необходимо установить некоторые библиотеки:

  • Flaskflask_cors
  • RPI. GPIO
  • дата и время
  • заправка
  • время
  • подпроцесс
  • mysq
  • lSocketIO

Шаг 6: Настройка веб-сервера на Raspberry Pi

Настройка веб-сервера на Raspberry Pi
Настройка веб-сервера на Raspberry Pi

Перейдите в консоль Putty.

мы собираемся установить веб-сервер Apache. Таким образом вы сможете открывать веб-сайт на любом устройстве, подключенном к вашей сети. Введите следующую команду и нажмите ввод: sudo apt-get install apache2

Теперь перейдите в папку: / var / www / html / Здесь вы можете разместить все свои файлы со своего веб-сайта, и страница index.html будет открываться всякий раз, когда вы переходите к IP-адресу своего Pi. будьте осторожны, не вводите заглавную букву I в index.html, иначе индексная страница не откроется автоматически.

Шаг 7: Программное обеспечение: Python

Программное обеспечение: Python
Программное обеспечение: Python

Я сделал несколько скриптов на Python, я свяжу свой github здесь, чтобы вы могли сами просмотреть код. Но я уже немного объясню.

Я закодировал несколько классов для ультразвукового датчика, освещения, LDR и LCD. Я использовал библиотеки для датчика DHT11. (импорт Adafruit_DHT) В конце концов, я использую только один файл для полной работы проекта, он называется app.py. Также в этом файле я закодировал несколько маршрутов, чтобы я мог читать данные из моей базы данных и отправлять их в объект json, который затем использовал в своих файлах javascript.

Шаг 8: Программное обеспечение: веб-сайт

Программное обеспечение: Веб-сайт
Программное обеспечение: Веб-сайт
Программное обеспечение: Веб-сайт
Программное обеспечение: Веб-сайт
Программное обеспечение: Веб-сайт
Программное обеспечение: Веб-сайт
Программное обеспечение: Веб-сайт
Программное обеспечение: Веб-сайт

Потому что я сделал возможность установить будильник на сайте. Итак, я создал веб-сайт, позволяющий мне это делать. Через веб-сайт вы также можете следить за влажностью, температурой и историей.

Пока Pi загружается, он запускает мой скрипт python. Это будет заботиться о том, чтобы данные отображались на веб-сайте, и позволяло установить будильник. Сайт также адаптивен, поэтому его можно открыть на мобильном телефоне без потери функций или иным образом.

Мой код можно найти на github прямо здесь.

Шаг 9: создание кейса

Создание дела
Создание дела
Создание дела
Создание дела
Создание дела
Создание дела

В моем случае я делаю коробку, имитирующую часы.

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

Шаг 10: Пользователь Мануэль

Здесь вы можете найти краткое руководство по работе проекта. Надеюсь, ваш день будет лучше, если вы сделаете этот умный будильник в конце этого урока!

Спасибо за чтение.

Рекомендуемые: