Оглавление:
- Шаг 1. ТРЕБУЕТСЯ АППАРАТНОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
- Шаг 2: Загрузка кода в ESP32 с помощью Arduino IDE:
- Шаг 3: последовательный выход монитора
- Шаг 4. Заставить AWS работать
- Шаг 5: Создайте политику
- Шаг 6: Добавьте закрытый ключ, сертификат и Root_CA в код
- Шаг 7: Получение результата-
Видео: Мониторинг температуры и влажности с использованием AWS-ESP32: 8 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:50
В этом уроке мы будем измерять различные данные о температуре и влажности, используя датчик температуры и влажности. Вы также узнаете, как отправить эти данные в AWS
Шаг 1. ТРЕБУЕТСЯ АППАРАТНОЕ И ПРОГРАММНОЕ ОБЕСПЕЧЕНИЕ
Аппаратное обеспечение:
- ESP-32: ESP32 упрощает использование Arduino IDE и языка Arduino Wire для приложений IoT. Этот модуль ESp32 IoT сочетает в себе Wi-Fi, Bluetooth и Bluetooth BLE для множества разнообразных приложений. Этот модуль полностью оснащен 2 ядрами ЦП, которыми можно управлять и питать их индивидуально, и с регулируемой тактовой частотой от 80 МГц до 240 МГц. Этот модуль ESP32 IoT WiFi BLE со встроенным USB-портом разработан для установки во всех IoT-продуктах ncd.io. Контролируйте датчики и управляющие реле, полевые транзисторы, контроллеры PWM, соленоиды, клапаны, двигатели и многое другое из любой точки мира с помощью веб-страницы или выделенного сервера. Мы изготовили собственную версию ESP32 для устройств NCD IoT, предлагая больше возможностей расширения, чем любое другое устройство в мире! Встроенный порт USB позволяет легко программировать ESP32. Модуль ESP32 IoT WiFi BLE - невероятная платформа для разработки приложений IoT. Этот модуль ESP32 IoT WiFi BLE можно запрограммировать с помощью Arduino IDE.
- Беспроводной датчик температуры и влажности большого радиуса действия IoT: Промышленный беспроводной датчик температуры и влажности большого радиуса действия. Оценка с разрешением датчика ± 1,7% относительной влажности ± 0,5 ° C. До 500000 передач от 2 батареек AA. Измерения от -40 ° C до 125 ° C с батареями, которые выдерживают эти рейтинги. Превосходный 2-мильный диапазон LOS и 28 миль с антеннами с высоким коэффициентом усиления. Интерфейс с Raspberry Pi, Microsoft Azure, Arduino и др.
- Беспроводной Mesh-модем дальнего действия с интерфейсом USB Беспроводной Mesh-модем дальнего действия с интерфейсом USB
Используемое программное обеспечение:
- IDE Arduino
- AWS
Используемая библиотека:
- Библиотека PubSubClient
- Wire.h
- AWS_IOT.h
Шаг 2: Загрузка кода в ESP32 с помощью Arduino IDE:
Поскольку esp32 является важной частью для публикации данных о температуре и влажности в AWS.
- Загрузите и включите библиотеку PubSubClient, библиотеку Wire.h, AWS_IOT.h, Wifi.h.
- Загрузите Zip-файл AWS_IoT по указанной ссылке и после извлечения вставьте библиотеку в папку библиотеки Arduino.
#включают
#include <AWS_IOT.h #include #include #include
- Вы должны назначить свой уникальный AWS MQTT_TOPIC, AWS_HOST, SSID (имя WiFi) и пароль доступной сети.
- Тема MQTT и AWS HOST могут попасть в Things-Interact в консоли AWS-IoT.
#define WIFI_SSID "xxxxx" // ваш SSID Wi-Fi
#define WIFI_PASSWD "xxxxx" // ваш пароль Wi-Fi #define CLIENT_ID "xxxxx" // уникальный идентификатор объекта, может быть любым уникальным идентификатором #define MQTT_TOPIC "xxxxxx" // тема для данных MQTT #define AWS_HOST "xxxxxx" // ваш хост для загрузки данных в AWS
Определите имя переменной, по которой данные будут отправляться в AWS
int temp;
int влажность;
Код для публикации данных в AWS:
if (temp == NAN || Влажность == NAN) {// NAN означает отсутствие данных
Serial.println («Ошибка чтения.»); } else {// создаем строку для публикации String temp_humidity = "Temperature:"; temp_humidity + = Строка (темп); temp_humidity + = "° C Влажность:"; temp_humidity + = Строка (Влажность); temp_humidity + = "%";
temp_humidity.toCharArray (полезная нагрузка, 40);
Serial.println («Издательство: -»); Serial.println (полезная нагрузка); if (aws.publish (MQTT_TOPIC, payload) == 0) {// публикует данные и возвращает 0 в случае успеха Serial.println ("Success / n"); } else {Serial.println ("Ошибка! / n"); }}
- Скомпилируйте и загрузите код ESP32_AWS.ino.
- Чтобы проверить возможность подключения устройства и отправленные данные, откройте монитор последовательного порта. Если ответа нет, попробуйте отключить ESP32, а затем снова подключить. Убедитесь, что скорость передачи последовательного монитора такая же, как указанная в вашем коде 115200.
Шаг 3: последовательный выход монитора
Шаг 4. Заставить AWS работать
СОЗДАТЬ И СЕРТИФИКАТ
ВЕЩЬ: Это виртуальное представление вашего устройства.
СЕРТИФИКАТ: удостоверяет подлинность ВЕЩИ.
- Откройте AWS-IoT.
- Нажмите на управление -Вещь -Зарегистрировать ВЕЩЬ.
- Нажмите "Создать одну вещь".
- Дайте Вещи имя и тип.
- Нажмите "Далее".
- Теперь откроется страница вашего сертификата, нажмите «Создать сертификат».
- Загрузите эти сертификаты, в основном закрытый ключ, сертификат для этой штуки и root_ca, и храните их в отдельной папке. Внутри сертификата root_ca нажмите на Amazon root CA1 - скопируйте его - вставьте в блокнот и сохраните как файл root_ca.txt в своем папка сертификата.
Шаг 5: Создайте политику
Он определяет, к какой операции может получить доступ устройство или пользователь.
- Перейдите в интерфейс AWS-IoT, нажмите Secure-Policies.
- Щелкните "Создать".
- Заполните все необходимые данные, такие как имя политики, нажмите «Создать».
- Теперь вернитесь к интерфейсу AWS-IoT, нажмите Secure-Certificates и прикрепите к нему политику, созданную только что.
Шаг 6: Добавьте закрытый ключ, сертификат и Root_CA в код
- Откройте загруженный сертификат в текстовом редакторе (Notepad ++), в основном закрытый ключ, root_CA и сертификат вещи, и отредактируйте их, как указано ниже.
- Теперь откройте папку AWS_IoT в библиотеке Arduino - Мой документ. Перейдите в C: / Users / xyz / Documents / Arduino / libraries / AWS_IOT / src, щелкните файл aws_iot_certficates.c, откройте его в редакторе и вставьте весь отредактированный сертификат в нужное место, сохраните его.
Шаг 7: Получение результата-
- Заходим тестировать в консоли AWS_IoT.
- Заполните тему MQTT до темы «Подписка» в своих тестовых учетных данных.
- Теперь вы можете просматривать данные о температуре и влажности.
Рекомендуемые:
Мониторинг температуры и влажности с помощью NODE MCU И BLYNK: 5 шагов
Мониторинг температуры и влажности с использованием NODE MCU и BLYNK: Привет, ребята В этом руководстве мы узнаем, как получить температуру и влажность атмосферы с помощью датчика температуры и влажности DHT11 с помощью Node MCU и приложения BLYNK
Мониторинг температуры и влажности DHT с помощью ESP8266 и платформы AskSensors IoT: 8 шагов
Мониторинг температуры и влажности DHT с использованием ESP8266 и платформы AskSensors IoT: в предыдущих инструкциях я представил пошаговое руководство по началу работы с ESP8266 nodeMCU и платформой AskSensors IoT. В этом руководстве я подключаю датчик DHT11 к узлу MCU. DHT11 обычно используется для измерения температуры и влажности
Мониторинг температуры и влажности с использованием SHT25 и Arduino Nano: 5 шагов
Мониторинг температуры и влажности с использованием SHT25 и Arduino Nano: мы недавно работали над различными проектами, которые требовали мониторинга температуры и влажности, и затем мы поняли, что эти два параметра на самом деле играют ключевую роль в оценке эффективности работы системы. Оба в промышленном
Мониторинг температуры и влажности с использованием SHT25 и Raspberry Pi: 5 шагов
Мониторинг температуры и влажности с использованием SHT25 и Raspberry Pi: мы недавно работали над различными проектами, которые требовали мониторинга температуры и влажности, а затем мы поняли, что эти два параметра на самом деле играют ключевую роль в оценке эффективности работы системы. Оба в промышленном
Мониторинг температуры и влажности с использованием SHT25 и Particle Photon: 5 шагов
Мониторинг температуры и влажности с использованием SHT25 и Particle Photon: Недавно мы работали над различными проектами, которые требовали мониторинга температуры и влажности, и затем мы поняли, что эти два параметра на самом деле играют ключевую роль в оценке эффективности работы системы. Оба в промышленном