Съдържание:

ThingSpeak, ESP32 и безжична безжична температура и влажност: 5 стъпки
ThingSpeak, ESP32 и безжична безжична температура и влажност: 5 стъпки

Видео: ThingSpeak, ESP32 и безжична безжична температура и влажност: 5 стъпки

Видео: ThingSpeak, ESP32 и безжична безжична температура и влажност: 5 стъпки
Видео: Знакомство с платой разработки Heltec LoRa CubeCell HTCC-AB01 2024, Юли
Anonim
ThingSpeak, ESP32 и безжична безжична температура и влажност
ThingSpeak, ESP32 и безжична безжична температура и влажност

В този урок ще измерваме различни данни за температурата и влажността, използвайки сензор за температура и влажност. Ще научите и как да изпращате тези данни на ThingSpeak. За да можете да го анализирате отвсякъде за различни приложения

Стъпка 1: Изисква се хардуер и софтуер

Изисква се хардуер и софтуер
Изисква се хардуер и софтуер
Изисква се хардуер и софтуер
Изисква се хардуер и софтуер

Хардуер:

  • ESP-32: ESP32 улеснява използването на Arduino IDE и Arduino Wire Language за IoT приложения. Този ESp32 IoT модул комбинира Wi-Fi, Bluetooth и Bluetooth BLE за разнообразни приложения. Този модул се предлага напълно оборудван с 2 ядра на процесора, които могат да се управляват и захранват индивидуално и с регулируема тактова честота от 80 MHz до 240 MHz. Този ESP32 IoT WiFi BLE модул с вграден USB е проектиран да се побере във всички ncd.io IoT продукти. Наблюдавайте сензори и контролни релета, FETs, PWM контролери, соленоиди, клапани, двигатели и много други от всяка точка на света, като използвате уеб страница или специален сървър. Ние произведохме собствена версия на ESP32, за да се впише в устройства с NCD IoT, предлагайки повече възможности за разширяване от всяко друго устройство в света! Вграденият USB порт позволява лесно програмиране на ESP32. ESP32 IoT WiFi BLE модулът е невероятна платформа за разработка на приложения за IoT. Този ESP32 IoT WiFi BLE модул може да бъде програмиран с помощта на Arduino IDE.
  • Безжичен датчик за температура и влажност на безжичния интернет на IoT: Промишлен безжичен сензор за влажност на безжична температура. Степен с разделителна способност на сензора ± 1.7%RH ± 0.5 ° C. До 500 000 предавания от 2 батерии AA. Измерва от -40 ° C до 125 ° C с батерии, които преживяват тези рейтинги. Превъзходен 2-милен LOS диапазон и 28 мили с високо усилващи антени. Интерфейс към Raspberry Pi, Microsoft Azure, Arduino и др.
  • Безжичен мрежов модем за дълги разстояния с USB интерфейс

Използван софтуер

  • Arduino IDE
  • ThingSpeak

Използвана библиотека

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

Arduino клиент за MQTT

Тази библиотека предоставя клиент за извършване на прости съобщения за публикуване/абониране със сървър, който поддържа MQTT

За повече информация относно MQTT посетете mqtt.org.

Изтегли

Най -новата версия на библиотеката може да бъде изтеглена от GitHub

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

Библиотеката се предлага с няколко примерни скици. Вижте Файл> Примери> PubSubClient в приложението Arduino. Пълна документация по API.

Съвместим хардуер

Библиотеката използва Arduino Ethernet Client API за взаимодействие с основния мрежов хардуер. Това означава, че просто работи с нарастващ брой дъски и щитове, включително:

  • Arduino Ethernet
  • Arduino Ethernet щит
  • Arduino YUN - използвайте включения YunClient вместо EthernetClient и не забравяйте първо да направите Bridge.begin ()
  • Arduino WiFi Shield - ако искате да изпращате пакети по -големи от 90 байта с този щит, активирайте опцията MQTT_MAX_TRANSFER_SIZE в PubSubClient.h.
  • SparkFun WiFly Shield - когато се използва с тази библиотека
  • Intel Galileo/Edison
  • ESP8266
  • ESP32 Понастоящем библиотеката не може да се използва с хардуер, базиран на чипа ENC28J60 - като например Nanode или Nuelectronics Ethernet Shield. За тях има алтернативна библиотека.

Wire Library

Библиотеката Wire ви позволява да комуникирате с I2C устройства, често наричани още "2 wire" или "TWI" (Two Wire Interface), можете да изтеглите от Wire.h

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

  • Wire.begin () Започнете да използвате Wire в главен режим, където ще инициирате и контролирате прехвърлянето на данни. Това е най -често използваното при взаимодействие с повечето I2C периферни чипове.
  • Wire.begin (адрес) Започнете да използвате Wire в slave режим, където ще отговорите на „address“, когато други I2C мастер чипове инициират комуникация. Предавателна
  • Wire.beginTransmission (адрес) Започнете ново предаване към устройство на „адрес“. Използва се главен режим.
  • Wire.write (данни) Изпращане на данни. В главен режим първо трябва да се извика beginTransmission.
  • Wire.endTransmission () В главен режим това прекратява предаването и причинява изпращане на всички буферирани данни.

Получаване

  • Wire.requestFrom (адрес, брой) Прочетете "count" байтове от устройство на "address". Използва се главен режим.
  • Wire.available () Връща броя на наличните байтове чрез извикване при получаване.
  • 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.
  • Създайте нов канал, като щракнете върху Канали.
  • Кликнете върху Моите канали.
  • Щракнете върху Нов канал.
  • Вътре в Новия канал дайте име на канала.
  • Назовете полето вътре в канала, полето е променливата, в която се публикуват данните.
  • Сега запишете канала.
  • Сега можете да намерите вашите API ключове на таблото за управление. Отидете на кранчето на началната страница и намерете своя „Write Api Key“, който трябва да бъде актуализиран, преди да качите кода в ESP32.
  • След като каналът бъде създаден, ще можете да видите вашата температура и данни за влажността в частен изглед с полета, които сте създали в канала.
  • За да начертаете графика между данните за Температура и Влажност, можете да използвате MATLAB визуализация.
  • За това отидете на App, Щракнете върху MATLAB Visualization.
  • Вътре в него се избира Custom, в това имаме за избор температура на парцела и скорост на вятъра по две различни оси y 8 като пример. Сега щракнете върху създаване.
  • Кодът на MATLAB ще бъде автоматично генериран, докато създавате визуализация, но трябва да редактирате идентификатора на полето, да прочетете идентификатора на канала, можете да проверите следната фигура.
  • След това запишете и стартирайте кода.
  • Ще видите сюжета.

Препоръчано: