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

Объявление

Наш баннер

Сайт Обучонок содержит исследовательские работы и проекты учащихся, темы творческих проектов по предметам и правила их оформления, обучающие программы для детей.
Будем благодарны, если установите наш баннер!
Баннер сайта Обучонок
Код баннера:
<a href="https://obuchonok.ru/" target="_blank"> <img src="https://obuchonok.ru/banners/banob2.gif" width="88" height="31" alt="Обучонок. Исследовательские работы и проекты учащихся"></a>
Все баннеры...
Тематика: 
Робототехника
Автор работы: 
Нефёдов Арсений
Руководитель проекта: 
-
Учреждение: 
МАОУ Гимназия №12 г.Новосибирск
Класс: 
10

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

Подробнее о работе:


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

Предложенная автором индивидуальная исследовательская работа по робототехнике на тему "Световой будильник" будет интересна для учеников 9, 10 и 11 класса школы, интересующихся новыми тенденциями в области электроники и программирования, может способствовать возникновению у них интереса к созданию самостоятельного проекта.

Оглавление

Введение
1. Световой будильник.
1.1. NodeMCU.
1.2. Blynk IoT Platform.
1.3. Принцип работы.
2. Создание светового устройства.
2.1. Создание программы.
2.2. Приложение.
2.3. Прошивка.
2.4. Сборка и тестирование.
Вывод
Источники

Введение


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

В рамках своего проекта я попробовал решить данную проблему.

Гипотеза: одновременное включение лампы вместе с будильником на телефоне позволит просыпаться более эффективно.

Тема: Световой будильник

Цель: собрать устройство, управляемое со смартфона и включающее свет в заданное время.

Задачи:

  1. Изучить Интернет-ресурсы на указанную тему.
  2. Разработать схему будущего устройства.
  3. Написать прошивку.
  4. Собрать и протестировать устройство.

Световой будильник

После изучения Интернет-ресурсов в качестве основы для проекта было решено выбрать плату NodeMcu, так как она имеет wi-fi модуль esp8266, необходимый для управления со смартфона.

Для управления платой было решено использовать приложение для Интернета вещей Blynk. Программирование прошивки для платы было решено выполнить в среде Arduino IDE.

NodeMCU

NodeMCU — это платформа на основе модуля ESP8266. Плата предназначена для удобного управления различными схемами на расстоянии посредством передачи сигнала в локальную сеть или интернет через Wi-Fi.

NodeMCU имеет 11 портов ввода-вывода общего назначения(GPIO), а также пины питания 3,3B и GND(земля).

Некоторые из портов имеют дополнительные функции:

  • VV(VUSB) – питание USB(5B)
  • D9, D10 — UART
  • D1, D2 — I²C/TWI
  • D5–D8 — SPI
  • D1–D10 — выходы с ШИМ (PWM)
  • A0 — аналоговый вход с АЦП.

Blynk IoT Platform


Blynk – это облачная платформа интернета вещей, при помощи которой посредством облака можно связывать различные устройства умного дома (в нашем случае это плата NodeMcu) и управлять ими со смартфона через специальное приложение, в котором можно добавлять различные элементы для удаленного управления и мониторинга (кнопки, слайдеры, джойстики, таймеры, дисплеи, графики и т.д.).

Принцип работы устройства:

Через приложение, созданное в Blynk, задаётся время и дни недели, по которым будет включаться будильник.

В заданное время заданного дня с сервера Blynk, через Wi-Fi подаётся сигнал на плату NodeMcu, которая подаёт сигнал низкого уровня на реле, которое включает лампу.

будильник 1

Создание светового будильника

Мной была разработана следующая схема устройства, состоящая из управляющей платы NodeMcu, реле (я использовал модуль на 4 реле низкого уровня (реле замыкается от сигнала низкого уровня), т.к. он уже был у меня) и настольной лампы на 220В:

будильник 2

В моём случае NodeMcu запитывается от зарядного устройства телефона, выдающего на выходе 5В и 2А постоянного тока, данную плату можно также запитывать от powerbank или компьютера через USB. Лампа запитывается от 220В переменного тока розетки.

Пояснения:

D4-IN1 отвечает за включение/выключение реле по сигналу от NodeMcu.

VV-VCC – “+” питания реле. Я использовал выход VV т.к. мой модуль реле работает от 5V, а не 3V, которые можно было бы использовать, поэтому использовался контакт VV(VUSB), подающий напряжение напрямую от источника питания NodeMcu, не понижая его до 3,3V рабочего напряжения платы.

G-GND – “-” / ”земля” питания реле.

Создание программы

Для создания программы я использовал среду программирования Arduino IDE, библиотеку Blynk для Arduino IDE и приложение Blynk на смартфоне.

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

Приложение

Для управления платой в приложении Blynk были добавлены следующие элементы: Eventor, Button.

Button

Элемент Button выполняет функцию обычной кнопки и включает/выключает(подаёт сигнал низкого/высокого уровня) на цифровой выход(пин) D4. Пока пользователь не нажмет на кнопку, лампа будет гореть.

Eventor

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

Eventor имеет два основных режима: Vpin value, в котором действия выполняются в зависимости от принимаемых платой данных, и Time, в котором действия выполняются в заданное время.

Я использовал режим Time и запрограммировал в нём подачу сигнала низкого уровня (здесь обозначается off) на цифровой выход(пин) D4 каждый день с понедельника по субботу в 6:00.

будильник 3будильник 4



Прошивка


В данном проекте прошивка нужна лишь для подключения к точке доступа Wi-Fi и связи с приложением через облако Blynk при помощи специального токена аутентификации (Auth Token), полученного в приложении Blynk.

Код прошивки представлен ниже:

#define BLYNK_PRINT Serial

#include <ESP8266WiFi.h>

#include <BlynkSimpleEsp8266.h>

char auth[] = "Здесь пишется токен для подключения к приложению";

char ssid[] = "Здесь пишется имя сети Wi-Fi, к которой подключается устройство";

char pass[] = "Здесь пишется пароль от сети Wi-Fi, к которой подключается устройство";

void setup()

{

Serial.begin(9600);

Blynk.begin(auth, ssid, pass);

}

void loop()

{

Blynk.run();

}

Сборка и тестирование светового будильника

По разработанной схеме было собрано устройство, в плату была загружена прошивка.

В собранном виде устройство выглядит так:

будильник 5

Для тестирования устройства питание лампы было подключено к розетке 220В, плата была подключена проводом microUSB к зарядному устройству от смартфона. Вечером на смартфоне было запущено приложение управления платой(Blynk), в котором было задано время включения лампы в 6:00 следующего дня. Также на смартфоне был запущен будильник на 6:00.

Ровно в 6:00 следующего дня одновременно сработали будильник на смартфоне и описанное выше устройство. Благодаря яркому свету и тому, что помимо будильника нужно выключить ещё и устройство, зайдя в приложение, я проснулся, не отключил будильник, и не продолжил спать дальше. Цель была достигнута.

Вывод

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

Для написания данной работы были использованы ресурсы Сети Интернет


Если страница Вам понравилась, поделитесь в социальных сетях:

Объявление

Статистика