Skip to content

plazmer/lc_iot

Repository files navigation

Комплект материалов для мастер-класса по IoT

Всё готовилось как материалы мастер-класса в рамках весенней образовательной школы BEST UrFU 2019

Disclaimer: Авторы осознают, что использовать Wi-Fi для интернета вещей немного не... энергоэффективно.

Требования

  1. Быстро (6 астрономических часов) показать создание конечных устройств для интернета вещей
  2. Минимальный порог вхождения и простота архитектуры для повторения
  3. Кроссплатформенность
  4. Разумные затраты времени и денег

Архитектура

  1. Отладочные платы WEMOS D1 Mini (ESP 8266) подключаемые к сенсорам/актуаторам
  2. Wi-Fi маршрутизатор, выпускающий контроллеры в интернет/локальную сеть
  3. Сервер MQTT, который взаимодействует с контроллерами
  4. Сервер Node-RED, который позволяет поверх MQTT реализовать дополнительную логику и предоставляет пользовательский интерфейс
  5. MQTT клиент под Android (MQTT Dash, Linear MQTT Dashboard) или под IoS (MQTTool, MQTT Client) для демонстрации простоты ручного управления устройствами.

Учитывая, что надо было озадачить несколько команд по 2 студента разными задачами, требовалось показать совместную работу устройств в рамках интернета вещей, были выдвинуты следующие

Задачи

  1. Подготовка рабочего места - настройка среды Arduino IDE, простой код для тестирования работы (основан на примере github knolleary) в 4 частях

  2. Датчик температуры и влажности на основе DHT11 (готовый код)

  3. Аналоговый датчик освещенности на фоторезисторе (готовый код)

  4. Цифровой датчик освещенности на фоторезисторе (готовый код)

  5. Умная RGB лампа (адресные светодиоды)

  6. Датчик движения

  7. Умные жалюзи (сервопривод)

  8. Умные шторы (электродвигатель с редуктором, драйвер)

  9. Умная розетка (это было совсем скучно, поэтому тут пусто)

  10. Умный экран (светодиодная матрица на MAX7219)

  11. RFID считыватель (планировался, но не удалось завести по SPI работу с ним, задача была заменена по месту на PWM регулирование освещённости)

  12. Настройка сервера (Ubuntu Server 18.04 LTS)

  13. Настройка Node-RED)

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

Примеры:

(6) Открыть жалюзи в зависимости от (3) освещения

(4) Зажечь лампу при (5) приближении

Вывести текущую (1) погоду на (9) экран

(10) При открытии двери (7) закрыть шторы, если вечер и (4) зажечь свет

(8) включить чайник на 2 минуты по команде

(10) адаптивным освещением компенсировать (2) недостаток света

автоматическое (3) включение освещения в подъезде (5) в темное время суток при приближении человека

Краткий бэклог

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

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published