2025 Автор: John Day | [email protected]. Последнее изменение: 2025-01-13 06:58
В настоящее время Интернет вещей находится в тренде, и многие машины имеют данные для загрузки через облако и анализа данных. Маленькие датчики обновляют данные в облаке, а исполнительный механизм на другом конце действует на него. Я собираюсь объяснить один из примеров IoT.
В этой статье я собираюсь показать и направить публикацию данных в Thingspeak с помощью ESP8266.
Шаг 1: обязательный компонент
ESP8266ESP8266 в Индии -
ESP8266 в Великобритании -
ESP8266 в США -
MLX90614MLX90614 в Индии -
MLX90614 в Великобритании -
MLX90614 в США -
Хлебная Доска
BreadBoard в Индии -
BreadBoard в США - https://amzn.to/2MW0Opb BreadBoard в Великобритании -
Шаг 2: Код
#include #include #include
Строка apiKey = "7CDCTE2767Z8AUIL"; // Введите свой ключ API записи из ThingSpeak
const char * ssid = "скрытый"; // замените на ваш wifi ssid и wpa2 ключ
const char * pass = "qwerty12"; const char * server = "api.thingspeak.com";
Клиент WiFiClient;
Adafruit_MLX90614 mlx = Adafruit_MLX90614 ();
int objTemp;
int ambTemp;
установка void ()
{Serial.begin (115200); задержка (10); Serial.println («Подключение к»); Serial.println (ssid); WiFi.begin (ssid, pass); в то время как (WiFi.status ()! = WL_CONNECTED) {задержка (500); Serial.print ("."); } Serial.println (""); Serial.println («WiFi подключен»); mlx.begin (); Wire.begin (D1, D2); } void loop () {
if (client.connect (server, 80)) // «184.106.153.149» или api.thingspeak.com
{objTemp = mlx.readObjectTempC (); ambTemp = mlx.readObjectTempC (); Строка postStr = apiKey; postStr + = "& field1 ="; postStr + = Строка (objTemp); postStr + = "\ г / п / г / п";
client.print ("POST / обновить HTTP / 1.1 / n");
client.print ("Хост: api.thingspeak.com / n"); client.print ("Соединение: закрыть / n"); client.print ("X-THINGSPEAKAPIKEY:" + apiKey + "\ n"); client.print ("Content-Type: application / x-www-form-urlencoded / n"); client.print ("Длина содержимого:"); client.print (postStr.length ()); client.print ("\ n / n"); client.print (postStr);
Serial.print ("Окружающий ="); Serial.print (ambTemp);
Serial.print ("* C / tObject ="); Serial.print (objTemp); Serial.println ("* C");
}
client.stop (); задержка (2000); }