В современном мире, где здоровье и безопасность имеют первостепенное значение, бесконтактные термометры стали незаменимыми устройствами. В этой статье мы рассмотрим, как построить бесконтактный термометр с использованием популярного микроконтроллера ESP8266. Мы обсудим различные методы и примеры кода, которые помогут вам успешно реализовать этот проект.
Метод 1: использование инфракрасного датчика температуры
Одним из наиболее распространенных методов бесконтактного измерения температуры является использование инфракрасного датчика температуры. ESP8266 может взаимодействовать с инфракрасным датчиком, например MLX90614. Вот пример фрагмента кода с использованием библиотеки Adafruit MLX90614:
#include <Wire.h>
#include <Adafruit_MLX90614.h>
Adafruit_MLX90614 mlx = Adafruit_MLX90614();
void setup() {
Serial.begin(9600);
mlx.begin();
}
void loop() {
float temperature = mlx.readObjectTempC();
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println("°C");
delay(1000);
}
Метод 2: использование бесконтактного инфракрасного термометра
Другой способ создания бесконтактного термометра — интеграция ESP8266 с бесконтактным инфракрасным термометром. Эти пистолеты портативны и могут измерять температуру на расстоянии. Для сопряжения пистолета с ESP8266 мы можем использовать протокол связи UART. Вот пример фрагмента кода:
#include <SoftwareSerial.h>
SoftwareSerial gunSerial(10, 11); // RX, TX
void setup() {
Serial.begin(9600);
gunSerial.begin(9600);
}
void loop() {
if (gunSerial.available()) {
String temperature = gunSerial.readStringUntil('\n');
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println("°C");
}
delay(1000);
}
Метод 3: использование микросхемы датчика температуры
ESP8266 может взаимодействовать с различными микросхемами датчика температуры, такими как DS18B20. Эти датчики обеспечивают точные показания температуры и могут быть легко интегрированы в проект. Вот пример фрагмента кода с использованием библиотек OneWire и DallasTemperature:
#include <OneWire.h>
#include <DallasTemperature.h>
#define ONE_WIRE_BUS 2
OneWire oneWire(ONE_WIRE_BUS);
DallasTemperature sensors(&oneWire);
void setup() {
Serial.begin(9600);
sensors.begin();
}
void loop() {
sensors.requestTemperatures();
float temperature = sensors.getTempCByIndex(0);
Serial.print("Temperature: ");
Serial.print(temperature);
Serial.println("°C");
delay(1000);
}
В этой статье мы рассмотрели различные способы создания бесконтактного термометра с использованием ESP8266. Мы обсудили использование инфракрасного датчика температуры, бесконтактного инфракрасного термометра и микросхемы датчика температуры. Каждый метод содержит примеры кода, которые помогут вам начать работу над проектом. Реализовав эти методы, можно создать надежный и эффективный бесконтактный термометр, обеспечивающий здоровье и безопасность в различных приложениях.