Оглавление:

ThingSpeak, ESP32 и температура и влажность беспроводного соединения на большом расстоянии: 5 шагов
ThingSpeak, ESP32 и температура и влажность беспроводного соединения на большом расстоянии: 5 шагов

Видео: ThingSpeak, ESP32 и температура и влажность беспроводного соединения на большом расстоянии: 5 шагов

Видео: ThingSpeak, ESP32 и температура и влажность беспроводного соединения на большом расстоянии: 5 шагов
Видео: как передать температуру на сервер по WIFI и сохранить температуру в базе данных. 2024, Июль
Anonim
ThingSpeak, ESP32 и температура и влажность беспроводного подключения на большом расстоянии
ThingSpeak, ESP32 и температура и влажность беспроводного подключения на большом расстоянии

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

Шаг 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. До 500 000 передач от 2 батареек AA. Измеряет от -40 ° C до 125 ° C с батареями, которые выдерживают эти рейтинги. Превосходный 2-мильный диапазон LOS и 28 миль с антеннами с высоким коэффициентом усиления. Интерфейс с Raspberry Pi, Microsoft Azure, Arduino и многим другим.
  • Беспроводной Mesh-модем большого радиуса действия с USB-интерфейсом

Используемое программное обеспечение

  • IDE Arduino
  • ThingSpeak

Используемая библиотека

  • Библиотека PubSubClient
  • Wire.h

Клиент Arduino для MQTT

Эта библиотека предоставляет клиент для простого обмена сообщениями публикации / подписки с сервером, поддерживающим MQTT.

Для получения дополнительной информации о MQTT посетите mqtt.org.

Скачать

Последнюю версию библиотеки можно скачать с GitHub.

Документация

В библиотеке есть несколько примеров эскизов. См. Раздел «Файл»> «Примеры»> «PubSubClient» в приложении Arduino. Полная документация по API.

Совместимое оборудование

Библиотека использует API-интерфейс Arduino Ethernet Client для взаимодействия с базовым сетевым оборудованием. Это означает, что он просто работает с растущим числом плат и щитов, в том числе:

  • Arduino Ethernet
  • Шилд Arduino Ethernet
  • Arduino YUN - используйте включенный YunClient вместо EthernetClient и обязательно сначала выполните Bridge.begin ()
  • Arduino WiFi Shield - если вы хотите отправлять пакеты размером более 90 байт с этим экраном, включите параметр MQTT_MAX_TRANSFER_SIZE в PubSubClient.h.
  • SparkFun WiFly Shield - при использовании с этой библиотекой
  • Intel Галилео / Эдисон
  • ESP8266
  • ESP32 В настоящее время библиотека не может использоваться с оборудованием на базе микросхемы ENC28J60, например Nanode или Nuelectronics Ethernet Shield. Для них доступна альтернативная библиотека.

Библиотека проводов

Библиотека Wire позволяет вам связываться с устройствами I2C, часто также называемыми «2-проводными» или «TWI» (двухпроводными интерфейсами), которые можно загрузить с Wire.h

Основное использование

  • Wire.begin () Начните использовать Wire в основном режиме, в котором вы будете инициировать и контролировать передачу данных. Это наиболее распространенное использование при взаимодействии с большинством периферийных микросхем I2C.
  • Wire.begin (адрес) Начните использовать Wire в ведомом режиме, когда вы будете отвечать по «адресу», когда другие микросхемы I2C-мастера инициируют обмен данными. Передача
  • Wire.beginTransmission (адрес) Начать новую передачу устройству по «адресу». Используется мастер-режим.
  • Wire.write (данные) Отправить данные. В главном режиме сначала необходимо вызвать beginTransmission.
  • Wire.endTransmission () В ведущем режиме это завершает передачу и вызывает отправку всех буферизованных данных.

Получение

  • Wire.requestFrom (адрес, счетчик) Чтение «счетчика» байтов из устройства по «адресу». Используется мастер-режим.
  • Wire.available () Возвращает количество байтов, доступных при вызове метода receive.
  • Wire.read () Получить 1 байт.

Шаг 2: загрузка кода в ESP32 с помощью Arduino IDE

  • Перед загрузкой кода вы можете просмотреть работу этого датчика по заданной ссылке.
  • Загрузите и включите библиотеки PubSubClient и Wire.h.
  • Вы должны назначить свой ключ API, SSID (имя WiFi) и пароль доступной сети.
  • Скомпилируйте и загрузите код Temp-ThinSpeak.ino.
  • Чтобы проверить возможность подключения устройства и отправленные данные, откройте монитор последовательного порта. Если ответа нет, попробуйте отключить ESP32, а затем снова подключить. Убедитесь, что скорость передачи последовательного монитора такая же, как указанная в вашем коде 115200.

Шаг 3: последовательный выход монитора

Последовательный выход монитора
Последовательный выход монитора

Шаг 4: заставить ThingSpeak работать

Заставляем ThingSpeak работать
Заставляем ThingSpeak работать
Заставить ThingSpeak работать
Заставить ThingSpeak работать
Заставляем ThingSpeak работать
Заставляем ThingSpeak работать
  • Создайте учетную запись на ThnigSpeak.
  • Создайте новый канал, нажав на «Каналы».
  • Щелкните Мои каналы.
  • Щелкните Новый канал.
  • Внутри New Channel назовите канал.
  • Назовите поле внутри канала. Поле - это переменная, в которой публикуются данные.
  • Теперь сохраните канал.
  • Теперь вы можете найти свои ключи API на панели управления. Перейдите к тапу на главной странице и найдите свой «Write Api Key», который необходимо обновить перед загрузкой кода в ESP32.
  • После создания канала вы сможете просматривать данные о температуре и влажности в частном режиме с полями, которые вы создали внутри канала.
  • Чтобы построить график между данными Temp и Humidity, вы можете использовать MATLAB Visualization.
  • Для этого перейдите в приложение, нажмите «Визуализация MATLAB».
  • Внутри он выбирает Custom, здесь мы выбрали для примера температуру графика и скорость ветра по двум разным осям Y 8. Теперь нажмите "Создать".
  • Код MATLAB будет автоматически сгенерирован по мере создания визуализации, но вам нужно отредактировать идентификатор поля, прочитать идентификатор канала, можете проверить следующий рисунок.
  • Затем сохраните и запустите код.
  • Вы бы увидели сюжет.

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