Оглавление:

Начало работы с Amazon AWS IoT и ESP8266: 21 шаг
Начало работы с Amazon AWS IoT и ESP8266: 21 шаг

Видео: Начало работы с Amazon AWS IoT и ESP8266: 21 шаг

Видео: Начало работы с Amazon AWS IoT и ESP8266: 21 шаг
Видео: NodeMCU V3 ESP8266 - обзор, подключение и прошивка в Arduino IDE 2024, Ноябрь
Anonim
Начало работы с Amazon AWS IoT и ESP8266
Начало работы с Amazon AWS IoT и ESP8266

В этом проекте показано, как взять модуль ESP8266 и подключить его напрямую к AWS IOT с помощью ОС Mongoose. Mongoose OS - это операционная система с открытым исходным кодом для микроконтроллеров, которая делает упор на возможность подключения к облаку. Он был разработан Cesanta, базирующейся в Дублине компанией по производству встроенного программного обеспечения, и в конце проекта вы сможете измерить температуру и влажность, полученные с помощью датчика температуры DHT11, и опубликовать их на платформе AWS IOT.

Для этого проекта нам понадобятся:

 Плата NodeMCU на базе ESP8266

 Датчик температуры DHT 11

 Инструмент для перепрошивки ОС Mongoose.

 USB-кабель для подключения платы NodeMCU к компьютеру.

 Соединительные провода

 Аккаунт AWS, который вы собираетесь использовать

Шаг 1. Плата NodeMCU на базе ESP8266

Плата NodeMCU на базе ESP8266
Плата NodeMCU на базе ESP8266

ESP8266 - это название микроконтроллера, разработанного Espressif Systems. Сам ESP8266 представляет собой автономное сетевое решение Wi-Fi, предлагающее в качестве моста от существующего микроконтроллера к Wi-Fi, а также способное запускать автономные приложения. Этот модуль поставляется со встроенным USB-разъемом и богатым набором выводов контактов. С помощью кабеля micro USB вы можете подключить Devkit NodeMCU к ноутбуку и без проблем прошить его, как и Arduino.

Технические характеристики

• Напряжение: 3,3 В.

• Wi-Fi Direct (P2P), программная точка доступа.

• Потребление тока: 10 мкА ~ 170 мА.

• Подключаемая флеш-память: макс. 16 Мб (нормальная 512 Кб).

• Интегрированный стек протоколов TCP / IP.

• Процессор: Tensilica L106 32-бит.

• Скорость процессора: 80 ~ 160 МГц.

• Оперативная память: 32 КБ + 80 КБ.

• GPIO: 17 (мультиплексированных с другими функциями).

• Аналогово-цифровой: 1 вход с разрешением 1024 шага.

• Выходная мощность +19,5 дБм в режиме 802.11b

• Поддержка 802.11: b / g / n.

• Максимальное количество одновременных TCP-соединений: 5

Шаг 2: Схема контактов

Схема контактов
Схема контактов

Шаг 3: DHT11 - Датчик влажности и температуры

DHT11 - Датчик влажности и температуры
DHT11 - Датчик влажности и температуры

DHT11 - это базовый недорогой цифровой датчик температуры и влажности. Он использует емкостной датчик влажности и термистор для измерения окружающего воздуха и выдает цифровой сигнал на вывод данных (выводы аналогового ввода не требуются). Он довольно прост в использовании, но требует тщательного выбора времени для сбора данных. Единственным реальным недостатком этого датчика является то, что вы можете получать от него новые данные только раз в 2 секунды.

Функции

 Полная температурная компенсация

 Измерение относительной влажности и температуры

 Калиброванный цифровой сигнал

 Исключительная долгосрочная стабильность

 Дополнительные компоненты не нужны

 Большое расстояние передачи

 Низкое энергопотребление

Процесс связи (однопроводной двухсторонний)

Самое интересное в этом модуле - это протокол, который используется для передачи данных. Все показания датчиков отправляются по однопроводной шине, что снижает стоимость и увеличивает расстояние. Чтобы отправить данные по шине, вы должны описать способ передачи данных, чтобы передатчик и приемник могли понимать, что говорят друг другу. Это то, что делает протокол. Он описывает способ передачи данных. В DHT-11 однопроводная шина данных подтягивается резистором к VCC. Таким образом, если ничего не происходит, напряжение на шине равно VCC. Формат связи можно разделить на три этапа.

1) Запрос

2) Ответ

3) Чтение данных

Шаг 4: Знакомство с Mongoose OS

Mongoose OS - это операционная система с открытым исходным кодом для крошечных встраиваемых систем. Он разработан для работы на таких устройствах, как микроконтроллеры, которые часто ограничены объемом памяти порядка десятков килобайт, при этом предоставляет программный интерфейс, который обеспечивает доступ к современным API-интерфейсам, обычно имеющимся на более мощных устройствах. Устройство под управлением Mongoose OS имеет доступ к функциям операционной системы, таким как файловые системы и сети, а также к высокоуровневому программному обеспечению, например движку JavaScript и API доступа к облаку.

Инструмент для прошивки ОС Mongoose

Инструмент для прошивки используется для прошивки ОС Mongoose в ESP8266. Сначала возьмите одну из поддерживаемых плат, например ESP8266 NodeMCU, и подключите ее к компьютеру, затем выполните следующие действия:

 Перейдите на веб-страницу загрузки ОС Mongoose и загрузите инструмент Mos. (Но в этом проекте мы будем использовать старую версию Mongoose OS)

 Запустите установочный файл Mos (Mongoose OS) и следуйте указаниям мастера установки:

Шаг 5: Мастер установки Mongoose

Мастер установки Mongoose
Мастер установки Mongoose
Мастер установки Mongoose
Мастер установки Mongoose
Мастер установки Mongoose
Мастер установки Mongoose

Шаг 6. Статус устройства - онлайн

Статус устройства - онлайн
Статус устройства - онлайн

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

Шаг 7. Подготовьте устройство к AWS IOT

Предоставление устройства в AWS IOT
Предоставление устройства в AWS IOT

Прежде чем мы сможем отправлять события в AWS, нам необходимо установить безопасное соединение с AWS IOT. Для этого нам необходимо предоставить ESP сертификаты AWS. В мастере настройки ОС Mongoose выберите меню Device Config, затем выберите соответствующий регион AWS и политику AWS для своей среды AWS. Нажмите кнопку Provision with AWS IOT. Устройство будет настроено с правильной информацией для подключения к сервису AWS. Сертификаты будут установлены автоматически.

Примечание:

Пользователь может выбрать соответствующий регион AWS и политику AWS. В нашем сценарии мы выбрали регион AWS как ap-southeast-1 и политику AWS как mos-default.

После завершения инициализации устройства в AWS IOT теперь модуль Wi-Fi esp8266 может обмениваться данными с AWS -IOT.

Шаг 8: Загрузка образца кода в плату NodeMCU

Загрузка образца кода в плату NodeMCU
Загрузка образца кода в плату NodeMCU

После запуска мастера установки Mongoose, если вы нажмете меню файлов устройства, появится файл с именем init.js. Внутри этого файла есть образец кода. Если вы нажмете кнопку Сохранить + перезагрузить, образец кода будет загружен, и вывод можно просмотреть в журналах устройства

Шаг 9. Начало работы с учетной записью AWS

Что такое AWS?

Amazon Web Services (AWS) - поставщик облачных услуг от Amazon, который предоставляет услуги в виде строительных блоков, эти строительные блоки можно использовать для создания и развертывания любого типа приложений в облаке. Эти службы или строительные блоки предназначены для работы друг с другом, в результате чего создаются сложные и хорошо масштабируемые приложения.

Как настроить?

Есть два способа настроить сервисы AWS

 Использование утилиты командной строки AWS CLI.

 Использование графического интерфейса пользователя AWS

Шаг 10. Утилита командной строки AWS CLI (необязательно)

Сначала нам нужно установить AWS CLI. AWS CLI - это инструмент командной строки, который предоставляет команды для взаимодействия с сервисами AWS. Это позволяет использовать функции, предоставляемые Консолью управления AWS, из терминала. Mongoose использует этот инструмент для инициализации устройства IOT в AWS IOT. Для подключения к AWS интерфейсу командной строки AWS требуются ваши учетные данные. Для настройки запустите aws configure из командной строки и введите информацию для доступа (свои учетные данные). Проще говоря, вы можете получать доступ к Amazon Web Services и управлять ими через простой и интуитивно понятный веб-интерфейс пользователя. Если вас беспокоит доступ к некоторым функциям с помощью мобильного телефона, мобильное приложение AWS Console позволяет быстро просматривать ресурсы на ходу.

Шаг 11: Amazon Web Services (GUI)

Amazon Web Services (графический интерфейс)
Amazon Web Services (графический интерфейс)

После предоставления с AWS мы можем войти в консоль управления AWS, на вкладке сервисов у нас есть разные категории. Прежде чем мы начнем изучать возможности этой консоли, вам необходимо создать учетную запись на AWS. Люди, у которых нет учетной записи, могут посетить веб-сайт AWS и создать бесплатную учетную запись. Вы должны ввести данные своей кредитной / дебетовой карты. AWS не будет взимать с вас плату во время вашей бесплатной подписки, пока вы пользуетесь услугами в соответствии с указанными ограничениями.

Шаг 12: AWS IOT Core

AWS IOT Core
AWS IOT Core

После входа в систему вы будете перенаправлены на следующую страницу и в разделе «Интернет вещей» выберите ядро IOT.

Шаг 13: AWS IOT - Мониторинг

AWS IOT - Монитор
AWS IOT - Монитор

После того, как вы выберете ядро IOT, появится страница выше, затем выберите тестовое меню.

Шаг 14: AWS IOT - подписки

AWS IOT - Подписки
AWS IOT - Подписки

После выбора меню «Тест» вы будете перенаправлены в раздел «Подписки». В теме подписки укажите соответствующую тему, которую вы используете, и нажмите кнопку «Подписаться на тему».

Шаг 15: публикация сообщения по умолчанию

Публикация сообщения по умолчанию
Публикация сообщения по умолчанию

После этого вы будете перенаправлены на указанную выше страницу. Если вы нажмете Опубликовать в теме, у нас будет образец сообщения, которое будет отображаться здесь по умолчанию.

Примечание: если вы хотите написать новый код и загрузить его на плату NodeMCU (код, который мы пишем, должен быть загружен в файловый менеджер устройства> файл init.js, тогда вы должны включить название темы в код. После включения названия темы, вы должны использовать то же название темы в разделе подписок, чтобы опубликовать вывод

Шаг 16: Публикация информации о нажатой кнопке

Публикация информации о нажатой кнопке
Публикация информации о нажатой кнопке

Шаг 17: опубликуйте значения температуры и влажности на платформе AWS IOT

Публикация значений температуры и влажности на платформе AWS IOT
Публикация значений температуры и влажности на платформе AWS IOT

Шаг 18: Задача

 Подключите схему, как показано ниже.

 Прошить операционную систему mongoose на модуле ESP8266

 Предоставление устройства в AWS IOT

 Загрузите программный код в плату NodeMCU

 Проверьте вывод в журналах устройства (см. Рисунок 9)

 Войдите в учетную запись AWS.

 Выберите подменю ядра IOT.

 Выберите опцию Test в разделе клиента MQTT.

 Укажите соответствующую тему в подписках

 Нажмите кнопку "Опубликовать в теме"

 Убедитесь, что всякий раз, когда вы нажимаете кнопку вспышки, вы получаете значения температуры и влажности в виде сообщений.

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