Оглавление:
- Шаг 1. Плата NodeMCU на базе ESP8266
- Шаг 2: Схема контактов
- Шаг 3: DHT11 - Датчик влажности и температуры
- Шаг 4: Знакомство с Mongoose OS
- Шаг 5: Мастер установки Mongoose
- Шаг 6. Статус устройства - онлайн
- Шаг 7. Подготовьте устройство к AWS IOT
- Шаг 8: Загрузка образца кода в плату NodeMCU
- Шаг 9. Начало работы с учетной записью AWS
- Шаг 10. Утилита командной строки AWS CLI (необязательно)
- Шаг 11: Amazon Web Services (GUI)
- Шаг 12: AWS IOT Core
- Шаг 13: AWS IOT - Мониторинг
- Шаг 14: AWS IOT - подписки
- Шаг 15: публикация сообщения по умолчанию
- Шаг 16: Публикация информации о нажатой кнопке
- Шаг 17: опубликуйте значения температуры и влажности на платформе AWS IOT
- Шаг 18: Задача
Видео: Начало работы с Amazon AWS IoT и ESP8266: 21 шаг
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:51
В этом проекте показано, как взять модуль ESP8266 и подключить его напрямую к AWS IOT с помощью ОС Mongoose. Mongoose OS - это операционная система с открытым исходным кодом для микроконтроллеров, которая делает упор на возможность подключения к облаку. Он был разработан Cesanta, базирующейся в Дублине компанией по производству встроенного программного обеспечения, и в конце проекта вы сможете измерить температуру и влажность, полученные с помощью датчика температуры DHT11, и опубликовать их на платформе AWS IOT.
Для этого проекта нам понадобятся:
Плата NodeMCU на базе ESP8266
Датчик температуры DHT 11
Инструмент для перепрошивки ОС Mongoose.
USB-кабель для подключения платы NodeMCU к компьютеру.
Соединительные провода
Аккаунт AWS, который вы собираетесь использовать
Шаг 1. Плата 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 - это базовый недорогой цифровой датчик температуры и влажности. Он использует емкостной датчик влажности и термистор для измерения окружающего воздуха и выдает цифровой сигнал на вывод данных (выводы аналогового ввода не требуются). Он довольно прост в использовании, но требует тщательного выбора времени для сбора данных. Единственным реальным недостатком этого датчика является то, что вы можете получать от него новые данные только раз в 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
Шаг 6. Статус устройства - онлайн
После выполнения трех шагов вы получите сообщение, приведенное ниже, и статус устройства станет онлайн. Теперь наш модуль ESP8266 может связываться с любыми удаленными устройствами.
Шаг 7. Подготовьте устройство к 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
После запуска мастера установки 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)
После предоставления с AWS мы можем войти в консоль управления AWS, на вкладке сервисов у нас есть разные категории. Прежде чем мы начнем изучать возможности этой консоли, вам необходимо создать учетную запись на AWS. Люди, у которых нет учетной записи, могут посетить веб-сайт AWS и создать бесплатную учетную запись. Вы должны ввести данные своей кредитной / дебетовой карты. AWS не будет взимать с вас плату во время вашей бесплатной подписки, пока вы пользуетесь услугами в соответствии с указанными ограничениями.
Шаг 12: AWS IOT Core
После входа в систему вы будете перенаправлены на следующую страницу и в разделе «Интернет вещей» выберите ядро IOT.
Шаг 13: AWS IOT - Мониторинг
После того, как вы выберете ядро IOT, появится страница выше, затем выберите тестовое меню.
Шаг 14: AWS IOT - подписки
После выбора меню «Тест» вы будете перенаправлены в раздел «Подписки». В теме подписки укажите соответствующую тему, которую вы используете, и нажмите кнопку «Подписаться на тему».
Шаг 15: публикация сообщения по умолчанию
После этого вы будете перенаправлены на указанную выше страницу. Если вы нажмете Опубликовать в теме, у нас будет образец сообщения, которое будет отображаться здесь по умолчанию.
Примечание: если вы хотите написать новый код и загрузить его на плату NodeMCU (код, который мы пишем, должен быть загружен в файловый менеджер устройства> файл init.js, тогда вы должны включить название темы в код. После включения названия темы, вы должны использовать то же название темы в разделе подписок, чтобы опубликовать вывод
Шаг 16: Публикация информации о нажатой кнопке
Шаг 17: опубликуйте значения температуры и влажности на платформе AWS IOT
Шаг 18: Задача
Подключите схему, как показано ниже.
Прошить операционную систему mongoose на модуле ESP8266
Предоставление устройства в AWS IOT
Загрузите программный код в плату NodeMCU
Проверьте вывод в журналах устройства (см. Рисунок 9)
Войдите в учетную запись AWS.
Выберите подменю ядра IOT.
Выберите опцию Test в разделе клиента MQTT.
Укажите соответствующую тему в подписках
Нажмите кнопку "Опубликовать в теме"
Убедитесь, что всякий раз, когда вы нажимаете кнопку вспышки, вы получаете значения температуры и влажности в виде сообщений.
Рекомендуемые:
Начало работы с WeMos ESP8266: 6 шагов
Начало работы с WeMos ESP8266: в этом руководстве мы собираемся запустить пример мигающего светодиода на WeMos ESP8266
Начало работы с Python для ESP8266 и ESP32: 6 шагов
Начало работы с Python для ESP8266 и ESP32: основа ESP8266 и его младший старший брат ESP32 - это недорогие микрочипы Wi-Fi с полным стеком TCP / IP и возможностями микроконтроллера. Чип ESP8266 впервые привлек внимание сообщества производителей еще в 2014 году. С тех пор низкая цена (
Начало работы с камерой M5StickV AI + IOT: 6 шагов (с изображениями)
Приступая к работе с камерой M5StickV AI + IOT: краткий обзор M5StickV - это крошечная камера AI + IOT размером почти в 2 монеты, цена составляет около 27 долларов США, что для некоторых может показаться дорогим для такой крошечной камеры, но в ней есть кое-что. достойные характеристики. Камера работает от невероятной
Начало работы с AWS IoT с беспроводным датчиком температуры с использованием MQTT: 8 шагов
Начало работы с AWS IoT с беспроводным датчиком температуры с использованием MQTT: в предыдущих инструкциях мы рассмотрели различные облачные платформы, такие как Azure, Ubidots, ThingSpeak, Losant и т. Д. вся облачная платформа. Для получения дополнительной информации
Аналоговый ввод IoT - начало работы с IoT: 8 шагов
Аналоговый ввод IoT - начало работы с IoT: понимание аналоговых вводов является важной частью понимания того, как работают вещи вокруг нас, большинство, если не все датчики являются аналоговыми датчиками (иногда эти датчики преобразуются в цифровые). В отличие от цифровых входов, которые могут быть только включены или выключены, аналоговый вход