← Все вопросы
Как считать температуру и освещённость с датчиков на Arduino?
6
Хочу собрать мини-метеостанцию: чтобы Arduino мерила температуру и понимала, светло на улице или темно. Какие датчики взять для новичка и как с них прочитать значения? С аналоговыми вроде проще, с цифровыми пока боюсь.
1 ответ
12
✓ Принятый ответ — помог автору
Для старта удобно:
Освещённость — фоторезистор. Самый простой аналоговый датчик. Подключаешь его делителем (фоторезистор + резистор 10 кОм) на аналоговый пин:
int light = analogRead(A0); // темно — одно число, светло — другое
Число 0–1023; экспериментально подбираешь порог «темно/светло».
Температура — два пути:
- Простой аналоговый TMP36: читаешь
analogRead, пересчитываешь напряжение в градусы. - Цифровой DHT11/DHT22 (мерит ещё и влажность) — нужна библиотека
DHT, но бояться нечего:
#include "DHT.h"
DHT dht(2, DHT11); // датчик на пине 2
void setup() { Serial.begin(9600); dht.begin(); }
void loop() {
float t = dht.readTemperature();
Serial.println(t);
delay(2000); // DHT11 нельзя опрашивать чаще, чем раз в ~2 сек
}
Для первой метеостанции отличный набор: фоторезистор (свет) + DHT11 (температура и влажность). Выводи всё в Serial-монитор, а потом — на LCD-экран.
Ваш ответ
, чтобы ответить на вопрос.