Промышленное производство
Промышленный Интернет вещей | Промышленные материалы | Техническое обслуживание и ремонт оборудования | Промышленное программирование |
home  MfgRobots >> Промышленное производство >  >> Manufacturing Technology >> Производственный процесс

Управление светодиодами через Alexa и Arduino Yun — руководство по умному дому

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

Приложения и онлайн-сервисы

О проекте

Мотивация

После создания умного зеркала с интегрированным Alexa автор искал способы подключения различных устройств домашней автоматизации. Появление Alexa Smart Home API v3 позволило управлять пользовательскими устройствами напрямую, что и стало отправной точкой для этого проекта. В качестве аппаратной базы выбрана Arduino Yun — плата, объединяющая микроконтроллер ATmega32u4 и Linux-систему (OpenWrt) на одном кристалле.

Обзор проекта

Цель — подключить Arduino Yun к навыку Alexa Smart Home v3. Архитектура включает:

  1. Навык Alexa Smart Home (v3).
  2. AWS Lambda-функцию для обработки директив.
  3. AWS IoT Thing (теневое устройство) для хранения состояния.
  4. Arduino Yun, подписанное на изменения тени устройства.

На диаграмме показан поток данных при включении света: голосовая команда → Alexa → Lambda → IoT Thing Shadow → Arduino Yun → светодиод.

Пошаговая реализация

Шаг 1: Создание Smart Home Skill и Lambda-функции

Следуйте официальному руководству Amazon. Настройте Link Account (LWA) для получения Client ID и Client Secret. После создания навыка и Lambda-функции проверьте обнаружение устройства в консоли Alexa — должно появиться виртуальное устройство, отвечающее на обнаружение.

Шаг 2: Создание IoT Thing

В консоли AWS IoT создайте «Thing». Используйте «Thing Shadow» — JSON-документ, хранящий текущее и желаемое состояние. Arduino будет подписан на топик дельты (изменений) тени. Скачайте сертификаты: публичный ключ, приватный ключ, сертификат устройства и корневой CA. Активируйте сертификат. В разделе Shadow добавьте начальное состояние:

{ "reported": { "light": "on" } }

Шаг 3: Связывание Lambda с IoT Thing

Обновите код Lambda-функции так, чтобы она обновляла тень устройства при получении директив TurnOn/TurnOff. Убедитесь, что у роли IAM Lambda есть права AWSIoTFullAccess. Протестируйте с тестовыми событиями (JSON-директивы) — в тени должно появляться желаемое состояние.

Шаг 4: Настройка Arduino Yun

Настройте Yun через веб-интерфейс (подключите по Ethernet для первичной настройки, затем WiFi). Отформатируйте SD-карту в FAT32. Проверьте SSH-доступ и работу примера Blink в Arduino IDE.

Шаг 5: Подключение Yun к AWS IoT

Установите AWS IoT Arduino Yun SDK (скрипт AWSIoTArduinoYunInstallAll.sh). В Arduino IDE откроется пример ShadowThing. Отредактируйте aws_iot_config.h — укажите эндпоинт, пути к сертификатам. Загрузите скетч и проверьте Serial Monitor: должно появиться сообщение об успешном подключении. Изменение тени в консоли AWS должно вызывать уведомление на Arduino.

Шаг 6: Обработка изменений тени на Arduino

Используйте предоставленный скетч (основан на примере ShadowThing). Он отслеживает ключ light в дельте тени и устанавливает пины массива ledArray в HIGH/LOW. В массиве уже есть встроенный пин 13, поэтому без дополнительных светодиодов вы увидите мигание onboard-LED. Для подключения внешних светодиодов добавьте их пины в массив.

Шаг 7: Проверка голосовым управлением

Скажите: «Алекса, включи [имя устройства]» / «Алекса, выключи [имя устройства]». Если не работает, отладку удобнее вести через тестовые события в консоли Lambda.

Заключение

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

Код

Полный код Lambda (Python) и скетч для Arduino доступны в Gist: GitHub Gist. Файлы .ino и .h — для Arduino, lambda_function.py — для AWS Lambda.

Производственный процесс

  1. Управление Chromecast через Amazon Alexa с помощью Raspberry Pi и Python
  2. Создание Bluetooth-робота на Raspberry Pi с аудио-обратной связью
  3. Alexa-управляемый ARDrone 2.0: Голосовой дрон с Raspberry Pi и Hologram Nova
  4. Настольная RGB-лампа с управлением жестами – Интерактивное беспроводное освещение
  5. Превратите MIDI-клавиатуру в интерактивного репетитора по фортепиано с Arduino, LED-лентой и MuseScore
  6. Управление светодиодами через Alexa с помощью Raspberry Pi – простое пошаговое руководство
  7. Превращаем старую радиоуправляемую машину в джойстик-контролируемый болид на Arduino
  8. Роботизированная рука 6 степеней свободы на Arduino Mega с управлением через Nunchuk
  9. Голосовой робот на Arduino Nano: Управление речью через Bluetooth
  10. Управление манипулятором по Ethernet: Arduino 101 + WIZ750SR + Android-приложение