Получить влажность / температуру из Интернета
Сервер LAN Bottle, который обрабатывает HTTP-запросы с помощью Raspberry Pi 4, Adafruit DHT11 и светодиода RGB.
О компании
Идея проекта очень проста. После доступа к веб-странице , вы можете увидеть какая температура в реальном времени и влажность находится в районе DHT11 датчик, используемый Raspberry Pi .
При отправке запроса на сервер светодиодный индикатор загорится определенным цветом в зависимости от маршрута запроса. Затем клиент получит ответ с запрошенным значением, и он также сможет увидеть цвет диода в HTML L.E.D. элемент.
Вид реализации схемы
Переход на веб-страницу
При отправке запроса GET с «/» на сервер автоматически загорается светодиод R, прикрепленный к плате.
Вот что происходит на доске после запроса.
После получения ответа от сервера вы сможете проверить температуру и влажность вокруг платы с помощью синей (влажность) или зеленой (температура) кнопок. Нажатие одной из кнопок приведет к отправке запросов на сервер один раз в секунду непрерывно, пока не будет нажата кнопка остановки или пока страница не будет закрыта / перезагружена.
Нажатие синей кнопки
Изменим текст и L.E.D. цвета становятся синими и отображают влажность вокруг датчика.
Нажатие зеленой кнопки
Изменим текст и L.E.D. цвета на зеленый и отображают температуру вокруг датчика.
Нажатие красной кнопки остановки
Изменим L.E.D. цвет на красный, установите значение текста по умолчанию и перестанете получать обновления о температуре / влажности.
Остановите сервер с помощью Ctrl + C
После остановки сервера светодиод гаснет, а контакты GPIO очищаются.
Схема
Код
из маршрута импорта бутылки, запуска, шаблона, запроса RPi.GPIO как GPIOimport Adafruit_DHT # установить модуль для pinilorGPIO.setmode (GPIO.BCM) # установить контактный датчик umiditate / temperaturatype =Adafruit_DHT.DHT11dht11 =25GPIO.setup (dht11, GPIO.IN) #setare pini leduriGPIO.setup (14, GPIO.OUT) GPIO.setup (15, GPIO.OUT) GPIO.setup (18, GPIO.OUT) #stabilirea rutelor @route ('/') def index ():setLedsOnLow () GPIO.output (14, GPIO.HIGH) шаблон возврата ('index.html') @ route ('/ umiditate') def umiditate ():setLedsOnLow () GPIO.output (18, GPIO.HIGH) umiditate, temperatura =Adafruit_DHT.read (type, dht11) return {'umiditate':umiditate} @route ('/ temperatura') def temperatura ():setLedsOnLow () GPIO.output ( 15, GPIO.HIGH) umidiate, temperatura =Adafruit_DHT.read (type, dht11) return {'temperatura':temperatura} @route ('/ stop') def stop ():setLedsOnLow () GPIO.output (14, GPIO. HIGH) return {'stop':'Nimic de afisat ...'} def setLedsOnLow ():GPIO.output (14, GPIO.LOW) GPIO.output (15, GPIO.LOW) GPIO.o utput (18, GPIO.LOW) #start serverrun (host ='0.0.0.0', port ='6789') # la stop server, stingled si curata pinisetLedsOnLow () GPIO.cleanup ()
Источник:Получите данные о влажности / температуре из Интернета
Производственный процесс
- Сетевой монитор температуры и влажности Raspberry Pi
- Монитор температуры и влажности в домашних условиях (в комнате) с веб-диаграммой - Raspberry Pi
- Простая температура и влажность на Raspberry Pi
- Проект IoT 101:потоковая температура с вашего Raspberry Pi
- 1-проводный датчик температуры DS1820 на Raspberry Pi (напрямую через GPIO)
- Лаборатория «Метеостанция»
- Raspberry Pi 4 как веб-сервер [Создать собственный веб-сайт]
- От данных к графику:веб-путешествие с Flask и SQLite
- Как получить максимальную отдачу от инвестиций в генерацию лидов?
- Устройство скрывает пользователя от датчиков обнаружения тепла