1.1 Подготовка презентации проекта
Цель задания:
-
Научиться структурировать и визуально представлять проект на основе IoT;
-
Сформировать презентационные и коммуникативные навыки;
-
Подготовить проектную защиту в формате мини-хакатона.
Этап подготовки:
1. Сформировать проектную команду (2–3 человека)
2. Определить структуру проекта:
-
Название и цель
-
Целевая проблема (что решает система)
-
Состав оборудования и схема
-
Краткое описание логики работы
-
Данные, которые собираются и визуализируются
-
Протоколы и платформы (MQTT, ThingsBoard и т.д.)
-
Демонстрация результата (симуляция, фото, видео)
3. Подготовить презентацию (5–7 слайдов)
Структура презентации:
№СлайдСодержание
1. Титульный - Название проекта, участники, дата
2. Цель и актуальность - Что решает система, почему это важно
3. Аппаратная часть - Какие компоненты используются (со схемой или фото)
4. Программная логика - Как система работает (блок-схема, код, условие → действие)
5. Визуализация и платформа - Где отображаются данные, через какую платформу (ThingsBoard и др.)
6. Тестирование и выводы - Как система реагирует, сильные стороны, улучшения
7. Заключение - Перспективы, дальнейшая доработка, короткий вывод
Задание к сдаче:
Каждая команда предоставляет:
-
PDF-файл презентации (до 10 МБ)
-
Скриншот/фото схемы или готового устройства
-
Краткий текст пояснения к проекту (до 500 слов)
Рекомендации по оформлению:
-
Используйте диаграммы, схемы Tinkercad, реальные фото, графики с ThingsBoard;
-
Презентация должна быть понятна не только технически, но и визуально;
-
Один участник выступает — остальные готовят демонстрацию модели.
Ожидаемый результат:
-
Готовая презентация команды;
-
Чёткая структура и логика IoT-проекта;
-
Уверенное представление и защита своей идеи на следующем этапе (семинар 8.2).
1.2 Рефлексия и разбор промежуточных результатов
Цель задания:
Анализ промежуточного хода реализации IoT-проекта и настройка логики реагирования устройства на входные сигналы. Задание направлено на формирование умений логического связывания показателей сенсоров с действиями устройств (актуаторов).
Этапы выполнения:
-
Обратная связь по проектам. Команды представляют преподавателю текущий результат: схема подключения, рабочий прототип, логика программы. Обсуждаются проблемы, возникающие при сборке или программировании, определяются слабые места.
-
Программирование логики «если — то». Каждая команда реализует простую логику реагирования устройства на показания одного или нескольких датчиков. Например:
-
если температура > 30°C, включить вентилятор;
-
если уровень освещённости < 200, включить светодиод;
-
если датчик движения сработал, активировать звуковой сигнал или отправить сообщение.
-
-
Настройка и отладка. Производится загрузка программы на плату, проверка реакции устройства, настройка чувствительности и условий. Возможна симуляция в Tinkercad или работа с реальными компонентами (ESP32, Arduino).
-
Ведение мини-дневника проекта. Каждый участник команды фиксирует, какой компонент был подключён, какое условие реализовано, что работает корректно, а что — нет.
Результат выполнения:
-
Готовая схема работы устройства с минимальной логикой «условие–действие»;
-
Рабочая программа, реагирующая на сигналы с датчиков;
-
Отладка и корректная реакция устройства;
-
Промежуточный отчёт с комментариями и кодом.
Задание к сдаче:
Каждая команда предоставляет:
-
Скриншот схемы и подключённых компонентов;
-
Фрагмент кода, реализующий условие и действие;
-
Краткое текстовое пояснение: какое условие реализовано, какие датчики использованы, какие действия выполняются;
-
Указание на трудности и предложения по улучшению.
1.3 Программирование логики «условие–действие»
Цель задания:
Развить навыки интеграции нескольких сенсоров в одну IoT-систему, реализовать комбинированную логику реагирования на изменение внешних условий и движение, повысить устойчивость и функциональность прототипа проекта.
Этапы выполнения:
-
Физическое подключение компонентов.
Подключите:-
PIR-датчик к цифровому входу (например, D2), питание — 5V и GND;
-
DHT22 к другому цифровому входу (например, D4), также подключите питание и землю.
-
-
Программирование логики.
Напишите код, реализующий сценарий «условие → действие». Пример:
#include <DHT.h>
#define DHTPIN 4
#define PIRPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
void setup() {
pinMode(PIRPIN, INPUT);
Serial.begin(115200);
dht.begin();
}
void loop() {
float temp = dht.readTemperature();
int motion = digitalRead(PIRPIN);
if (motion == HIGH && temp > 28) {
Serial.println("Движение обнаружено и жара — включить вентилятор!");
} else if (temp < 20) {
Serial.println("Прохладно — всё в порядке.");
}
delay(3000);
}
3. Проверка.
Измените условия (движение и температуру), наблюдайте поведение системы в Serial Monitor или визуализируйте реакцию с помощью светодиодов, моторов, сигналов.
4. Документация.
Команда фиксирует, как реализована логика, что влияет на конечное поведение устройства.
Задание к сдаче:
Студенты должны предоставить:
-
Схему (фото или Tinkercad) с двумя датчиками;
-
Фрагмент кода, в котором реализована логика;
-
Описание: какие сигналы отслеживаются и что запускается;
-
Комментарий: как можно расширить сценарий (например, добавление GSM-модуля, отправка на дашборд и т.д.).

1.4 Интеграция датчиков PIR и DHT22
Цель:
Научиться работать с датчиками PIR и DHT22, интегрировать их в IoT-систему и обрабатывать данные с этих датчиков.
Задание:
-
Интеграция датчика PIR (для обнаружения движения):
-
Подключите датчик PIR к микроконтроллеру (например, ESP32).
-
Напишите код для обнаружения движения и вывода сообщения в консоль или на сервер.
-
-
Интеграция датчика DHT22 (для измерения температуры и влажности):
-
Подключите датчик DHT22 к микроконтроллеру.
-
Напишите код для получения данных о температуре и влажности, а затем передайте их на сервер или в облако.
-
-
Комбинированная логика:
-
Разработайте логику, при которой система будет принимать решения на основе данных с обоих датчиков. Например, если датчик PIR обнаружит движение, система включит освещение, а также будет отображать текущую температуру и влажность на экране/сервере.
-
Создайте логику, при которой система реагирует на сочетание движения и климатических условий, например:
-
если есть движение и температура превышает порог — включается активатор (вентилятор, сигнализация);
-
если нет движения, но влажность ниже нормы — инициируется отправка сигнала или включается насос.
-
-
-
Проверка поведения.
Включите монитор последовательного порта и проверьте реакцию устройства. Зафиксируйте изменения значений и срабатывания.
Результат: Рабочая интеграция датчиков PIR и DHT22 с кодом, который корректно собирает и передает данные, а также реагирует на условия (например, движение).
Пример кода:
#include <DHT.h>
#define DHTPIN 4
#define PIRPIN 2
#define DHTTYPE DHT22
DHT dht(DHTPIN, DHTTYPE);
void setup() {
Serial.begin(115200);
pinMode(PIRPIN, INPUT);
dht.begin();
}
void loop() {
float temp = dht.readTemperature();
float hum = dht.readHumidity();
int motion = digitalRead(PIRPIN);
if (motion == HIGH && temp > 28) {
Serial.println("Жарко и есть движение — включить вентилятор.");
} else if (hum < 35 && motion == LOW) {
Serial.println("Нет движения, но сухо — активировать насос.");
}
delay(2000);
}
Задание к сдаче:
-
Фото/скриншот схемы (Tinkercad или реальная);
-
Код (фрагмент, реализующий логику);
-
Краткое текстовое пояснение сценария: какие условия → какое действие;
-
Предложение по улучшению (например, добавление тревожного сигнала, визуализация данных через дашборд).

Итог семинара
-
Итоги семинара:
-
Все участники выполнили минимум три вида активности: презентация, рефлексия и лабораторная работа.
-
Повысился уровень понимания архитектуры IoT-систем и логики их функционирования.
-
Создана база для финальной защиты проектов на хакатоне.
-
Для загрузки выполненных работ:
Нажмите "МЕНЮ" - Загрузка работ - Перейдите по ссылке в кнопке.