YAWS, еще одна метеостанция

Источник:

Обновление от 02.04.24

Благодаря @ScruffyOrc_217627 мы обнаружили, что проблема может быть в соединении чаши анемометра с держателем, это может быть проблема с подгонкой.
Ничего сложного! Просто подточите его немного резаком!

Обновление от 31.01.24

Электронную часть я начал с некоторым опозданием.
Основная проблема — моя плата (NodeMCU esp32 или esp8266 d1mini).
Оба имеют высокий ток глубокого сна, почти 20 мАч, поэтому работать от батареи практически невозможно (я не могу каждую неделю выходить на крышу для замены батареи).
Итак, в целях экономии я напишу код банкомата, используя эти платы и думая о прямом питании для работы с датчиками. После основного теста я начну с протокола глубокого сна, чтобы максимально снизить мощность и использовать один или два литий-ионных аккумулятора 18650 и небольшую солнечную панель.
Но время от времени я все сделаю
Я нашел ошибку в Esp8266, показания анемометра ужасны, и я не смог найти решение (очевидно, ПОСЛЕ того, как я сделал печатную плату… поэтому мне пришлось переделать ее с помощью Esp32 NodeMCU).
Поэтому, если вы найдете решение этой проблемы, ПОЖАЛУЙСТА, прокомментируйте его, чтобы я мог добавить функцию и два разных кода!

Здесь у вас есть БЕТА-версия датчика, читающего YAML, часть о дождемере находится в стадии разработки.
эсфоме:
имя: esp32-yaws
дружелюбное_имя: esp32-YAWS

включает в себя:
— «as5600_sensor.h»
библиотеки:
— Проволока
— «АС5600»

esp32:
плата: nodemcu-32s
структура:
тип: ардуино

# Включить ведение журнала
регистратор:

# Включить API Home Assistant
API:
шифрование:
ключ: «ХХХХХХХХХХХХХХХ»

ота:
пароль: «ХХХХХХХХХХХХХХХ»

Wi-Fi:
ssid: !secret wifi_ssid
пароль: !secret wifi_password

# Включить резервную точку доступа (портал авторизации) на случай сбоя Wi-Fi-соединения.
ап:
ssid: «ХХХХХХХ»
пароль: «ХХХХ»

captive_portal:

i2c:
СДА: GPIO21
СКЛ: GPIO22

bme680_bsec:
адрес: 0x77 #Я указал его, потому что у меня не 0x76

датчик:
— платформа: кастомная
лямбда: |-
auto my_as5600_sensor = новый AS5600Sensor();
App.register_comComponent(my_as5600_sensor);
вер��уть {my_as5600_sensor};
датчики:
имя: «АС5600»
точность_десятичных чисел: 2

— платформа:pulse_counter # эта часть предназначена для анемометра.
контакт: 19
unit_of_measurement: 'м/с'
название: 'Скорость ветра'
фильтры:
— умножить: 0,0173833333
update_interval: 60 с

— платформа: bme680_bsec
температура:
имя: «Температура BME680»
давление:
имя: «BME680 Давление»
влажность:
имя: «BME680 Влажность»
ЯК:
имя: «BME680 IAQ»
идентификатор: IAQ
co2_эквивалент:
имя: «BME680 Эквивалент CO2»
дыхания_voc_equiвалент:
name: «BME680 Эквивалент ЛОС для дыхания»

text_sensor: // Выход датчика BME, я оставил их все для проверки.
— платформа: bme680_bsec
iaq_accuracy:
имя: «Точность BME680 IAQ»

— платформа: шаблон
имя: «Классификация BME680 IAQ»
icon: «mdi:checkbox-marked-circle-outline»
лямбда: |-
если ( int(id(iaq).state) <= 50) {
вернуть {«Отлично»};
}
else if (int(id(iaq).state) >= 51 && int(id(iaq).state) <= 100) {
вернуть {«Хорошо»};
}
else if (int(id(iaq).state) >= 101 && int(id(iaq).state) <= 150) {
return {«Слегка загрязнено»};
}
else if (int(id(iaq).state) >= 151 && int(id(iaq).state) <= 200) {
return {«Умеренно загрязненный»};
}
else if (int(id(iaq).state) >= 201 && int(id(iaq).state) <= 250) {
return {«Сильно загрязнено»};
}
else if (int(id(iaq).state) >= 251 && int(id(iaq).state) <= 350) {
return {«Сильно загрязнено»};
}
иначе если (int(id(iaq).state) >= 351) {
return {«Чрезвычайно загрязнено»};
}
еще {
вернуть {«ошибка»};
}
Пользовательская конфигурация датчика.
#include «esphome.h»
#include
#include «AS5600.h»

#define ТЕГ «AS5600»

AS5600 as5600; // Адрес i2c по умолчанию 0x36

класс AS5600Sensor: public PollingComponent, public Sensor {
общедоступный: AS5600 as5600;
AS5600Sensor(): PollingComponent(5000) {}

переопределение void setup()

16:03
2
Нет комментариев. Ваш будет первым!

Ссылка появится после регистрации

Похожие модели

Большие настенные 7-сегментные светодиодные часы.
Я все еще работаю над программнымПодробнее
Корпус датчика влажности (D1 mini + DHT11) (espHome)
Это чехол, предназначенный для платы D1Подробнее
Корпус для Wemos D1 с экраном DHT22.
Состоит из двух частей — дна и крышки. ВПодробнее
Внешняя Wi-Fi-антенна ESP Box
Коробка для esp8266 WemosD1mini (илиПодробнее
Корпус микроконтроллера для настенного/поверхностного монтаж
База: Для использования с паяемойПодробнее
Wemos D1 Mini - минимальный корпус
Small dimension, minimal design Подробнее
Общая коробка для небольших плат микроконтроллера.
Коробка, предназначенная для Wemos D1Подробнее
Модульный корпус микроконтроллера - крепление на плате
Это крепление для модульного корпусаПодробнее
Wemos D1 Mini Dual Baes
Это держатель для мини-прототипа платыПодробнее
Мини-макетный преобразователь ESP32 D1 Arduino........
Адаптер для установки 2 x ESP32 D1 MiniПодробнее
Макет ESP23 Wemos MINI 32
Макетная плата, предназначенная дляПодробнее
Светодиодные часы Wi-Fi 4x8x8 с автоматическим обновление..
Какое-то время это был мой страстныйПодробнее
Датчик влажности почвы (D1 Mini + 0,96-дюймовый OLED)......
Небольшой датчик почвы для растенийПодробнее
Корпус MAX7219 (x4) (сборка без инструментов) с различным..
Изначально я хотел создать простые часыПодробнее
Корпус датчика ESPHome
Компактный кейс для датчика присутствияПодробнее
Чехол для Wemos D1 mini plus DHT Shield
Original model: OnShape Подробнее
Посещая этот сайт, вы соглашаетесь с тем, что мы используем файлы cookie.