Строим Дом

Партнер раздела: vilpe
Перезагрузить страницу

FHBQ-D* RS485 CO2

Ответ
 
Опции темы
Старый 06.05.2019, 12:57   #221
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

начал тестировать новопереписанный код на себе

походу делаю мелкий рефакторинг, например
ночью серво не ерзают заслонки, т.е. их не слышно
Нажмите, для показа скрытой информации

имхо визуально более информативно отображается передвижение людей по комнатам/зонам
Нажмите, для показа скрытой информации


обозначения
Нажмите, для показа скрытой информации

"zl_co2" - зона "zl", параметр уровень со2
"zl_angle" - зона "zl", параметр угол поворота заслонки
"zl_volume" - зона "zl", параметр объем чистого воздуха подача

"ch_speed" - пву, параметр скорость
"ch_volume" - пву, параметр объем (общий) чистого воздуха подача



пощупать график (за определенный интервал времени) в живую можно здесь
за этот интервал времени были последовательно такие уставки по со2 600, 500, 700, 850


а теперь нужна помощь зала
как оптимальней прописать алгоритм калибровки датчиков со2
напомню, у них (датчиков со2) есть режим автокалибровки (ABC), который выполняется каждый день по уровню со2 за этот день, т.е. если за это время мин уровень со2 был 500ррм, то ABC примет его за основу т.е. как 400ррм, т.о. будет врать на +100ррм
ручная калибровка с выносом на улицу если допустим датчиков 8 шт, то это утомительно даже один раз в месяц
именно в течении месяца в режиме отключенной ABC не происходит дрейфа нуля и датчик со2 показывает корректные показания
режим переключения из и в ABC можно делать программно, нужна только оптимальная логика для дома с постоянным проживанием, т.к. моя дачная с проживанием наездами не то...
какие будут идеи?
в конфиге прописать спальные зоны и дневные? включить ABC, и когда по конфигу в зоне нет людей вентилировать там до 400ррм и выключать ABC. ABC включать на сутки и проводить это мероприятие (калибровки) раз в месяц?
Миниатюры
060519_1.png   060519_2.png  
fim вне форума   Ответить с цитированием Вверх
Этот пользователь сказал Спасибо fim за это полезное сообщение:
profeMaster (06.05.2019)
Старый 06.05.2019, 13:40   #222
profeMaster
Старожил форума
Аватар для profeMaster
 
Регистрация: 05.09.2016
Адрес: Одесса
Пол: Не указан
Сообщений: 2,348
Вы сказали Спасибо: 3,326
Поблагодарили 858 раз(а) в 658 сообщениях
Отправить сообщение для profeMaster с помощью AIM
По умолчанию

каждый день обнулять датчики - это точно незачем)
и да, нужно хорошо вентилировать без людей для калибровки
profeMaster вне форума   Ответить с цитированием Вверх
Этот пользователь сказал Спасибо profeMaster за это полезное сообщение:
fim (06.05.2019)
Старый 06.05.2019, 17:23   #223
standov
Опытный форумчанин
 
Регистрация: 05.05.2015
Пол: Мужской
Сообщений: 860
Вы сказали Спасибо: 78
Поблагодарили 315 раз(а) в 193 сообщениях
По умолчанию

рискну предложить мигрировать с mysql на решения заточенные под timeseries - например influx. сразу получите мощный gui графаны в подарок

Добавлено через 9 минут
Цитата:
как оптимальней прописать алгоритм калибровки датчиков со2
скажу неожиданное, но подумайте в сторону того что для вашей задачи калибровать датчики не нужно, в идеальном варианте ваш алгоритм должен работать характеристиками "больше/меньше" "растет/не растет". Ну по крайней мере мне так кажется но я уже про это тут писал меня "запинали" )
standov вне форума   Ответить с цитированием Вверх
Эти 2 пользователя(ей) сказали Спасибо standov за это полезное сообщение:
fim (08.05.2019), profeMaster (06.05.2019)
Старый 08.05.2019, 13:32   #224
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

Цитата:
Сообщение от standov Посмотреть сообщение
рискну предложить мигрировать с mysql на решения заточенные под timeseries - например influx. сразу получите мощный gui графаны в подарок
имхо дело вкуса
я же, учитывая свой опыт, считаю, что что в данном случае минимально достаточной есть sqlite, т.е. и оптимальной
а скрипт которой управляет зонами вентиляцией и пву в т.ч. готовит json файлы для веб интерфейса, графиков и пр. анализа и визуализации
для таких анализа и визуализации имхо нет необходимости в больших и длительных по времени объектов/объемах данных
Цитата:
скажу неожиданное, но подумайте в сторону того что для вашей задачи калибровать датчики не нужно, в идеальном варианте ваш алгоритм должен работать характеристиками "больше/меньше" "растет/не растет". Ну по крайней мере мне так кажется но я уже про это тут писал меня "запинали" )
"больше/меньше" "растет/не растет" - работать не будет без определенного уровня (уставки), а факт.данные должны быть адекватными (калиброванными) для сопоставления с уставкой, я так вижу
возможно, если вы более детально раскроете свою мысль, то я смогу понять о чем вы и в чем я ошибался
fim вне форума   Ответить с цитированием Вверх
Старый 28.05.2019, 21:05   #225
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

как работает автоматическая калибровка датчика уже говорилось в данной теме

и все же я решил понаблюдать на цифрах
датчик со2 mh-z19b, который я использую для автоматики у себя имеет период автокалибровки 1 день (сутки, 24ч), выдает параметры ррм, С(температуру) и... хз параметр U

так вот, если включена автокалибровка, то параметр U, растет от 0 до ~36682, а потом происходит автокалибровка
а именно датчик со2 mh-z19b берет минимальное значение со2 за 24ч и принимет его за базовые 400ррм и пересчитывает последюющие фак.значения
например (рис) мин значение за день 649 ррм, т.е. 649-400=249
соответственно 822 ррм превращаются в 822-249=573ррм
на графике это 568, из-за того, что показания снимаются с датчиков 1 раз в 5 мин и момент автокалибровки не попадает именно на время съема данных с датчика, такая себе небольшая погрешность
Нажмите, для показа скрытой информации


вот поэтому важно аккуратно относиться к автокалибровке

зы по ходу пьесы переписал калькулятор расчета общего объема и объемов зон в зависимости от напорной характеристики пву и угла заслонок
теперь он универсальный, т.е. можно загружать любую топологию вентсистемы и делать моделирование
на эту тему записал видео на бегу со звуком (без цензуры)
Нажмите, для показа скрытой информации

и очень скоро все зальется на github

немного о поливе
код - 2 файла по 50 строк
к esp8266 (espeasy) подключены релюхи
esp8266 запитана от 24В(блок питания нужен для серво полива) через dc-dc преобразователь
код на малинке (которая используется для управления отоплением/охлаждением, вентиляцией) и уже малинка т в зависимости от прогноза погоды (уровня осадков и уставки полива в мм/м2) командами управляе esp8266
все собрано (Импульсный блок питания 24В 2.5А (60Вт): 230.00грн, NodeMCU v3 на базе ESP-12E: 135.00грн, DC-DC конвертер понижающий 4.5...28 В в 0.8...20 В 3А на MP1584 Mini: 23.00грн, всего 388грн)
протестировано, поливать пока нечего...
Миниатюры
co2_abc_enable.png  
fim вне форума   Ответить с цитированием Вверх
Старый 29.05.2019, 11:22   #226
Dmode
Старожил форума
Аватар для Dmode
 
Регистрация: 07.05.2011
Адрес: Киев
Пол: Мужской
Сообщений: 4,562
Вы сказали Спасибо: 5,069
Поблагодарили 8,017 раз(а) в 2,462 сообщениях
По умолчанию

А отключить автокалибровку нельзя?
Dmode вне форума   Ответить с цитированием Вверх
Старый 30.05.2019, 11:47   #227
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

Цитата:
Сообщение от Dmode Посмотреть сообщение
А отключить автокалибровку нельзя?
можно и через веб интерфейс, и программно

в целом есть три варианта/инструмента:
  1. Normal (ABC enable) - программно и/или через веб интерфейс
  2. ABC disable - программно и/или через веб интерфейс
  3. мануальная калибровка (выйти на улицу и по чистому/уличному воздуху откалибровать, нажав соответствующую кнопочку)

последнее имхо - режим раба собственной автоматики и как постоянный способ калибровки не рассматривается

т.е. есть желание при помощи первых двух инструментов найти оптимальную комбинацию для условия постоянного проживании людей
где в чистом виде (без комбинирования):
  1. в первом варианте (Normal (ABC enable) будет ежедневное "вранье", т.к. происходит ежедневная каллибровка по мин значению, которое не всегда равно 400ррм (подробно я это явление описал постом ранее)
  2. во втором варианте, если отключить автокалибровку (перевести датчик в режим ABC disable), то ежедневная автокалибровка будет отключена, но... будет происходить "дрейф нуля" и через какое то длительное время показания датчика станут некорректными
    при этом в течении месяца погрешность будет минимально допустимой

короче, пока мне кажется оптимальным: для зон вентилирования прописать дополнительный паттерн день/ночь
и один раз в месяц:
  • включать автокалибровку на 24часа (Normal (ABC enable))
  • для зоны с паттерном "ночь" (спальня) днем проветривать до показания <= 400 ppm и удержать этот показатель некоторое время
  • для зоны с паттерном "день" ночью проветривать до показания <= 400 ppm и удержать этот показатель некоторое время
  • выключать автокалибровку через 24часа или вкл ABC disable

суть этого предложения в том, чтобы, раз в месяц, внутреннему алгоритму датчика Normal (ABC enable) скормить действительно 400ррм, на не просто мин значения за день
таким образом откалибровать датчики по чистому воздуху 400ррм, а затем работать без ежедневной автокалибровки
и так каждый месяц

проветривать до показания <= 400 ppm и удержать этот показатель некоторое время - эту процедуру нужно проводить толко тогда, когда в зоне нет людей, иначе это бесполезно

вопрос открытый и дискутивный!
я частично об этом писал здесь (после слов "а теперь нужна помощь зал")

UPD
в принципе по динамике со2 можно определять есть ли люди в зоне вентилирования или нет
и например, когда люди на работе, в школе, етс, можно проводить описанный выше способ калибровки в момент их отсутствия (раз в месяц)
т.е. днем, т.к. зимой по причине наличия амплитуды уличной температуры это будет более энергоэффекитивно
fim вне форума   Ответить с цитированием Вверх
Эти 3 пользователя(ей) сказали Спасибо fim за это полезное сообщение:
Dmode (30.05.2019), Halvis (30.06.2019), sov1178 (30.06.2019)
Старый 04.06.2019, 14:50   #228
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

как бы готов модуль расчета рабочей точки и определением объемов по зонам, калькулятор с веб визуализацией (работает для разных топологий сетей)

остается модуль калибровки
а альтернативных предложений алгоритма калибровки (кроме описанного постом ранее) нет... жаль
fim вне форума   Ответить с цитированием Вверх
Старый 11.06.2019, 15:51   #229
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

Цитата:
Сообщение от fim Посмотреть сообщение
как бы готов модуль расчета рабочей точки и определением объемов по зонам, калькулятор с веб визуализацией (работает для разных топологий сетей)
предыдущие видео удалил из-за оговорок и ошибок
записал новое видео
если включить ускорение воспроизведения до 1,5 или 2 то... имхо не скучно
fim вне форума   Ответить с цитированием Вверх
Этот пользователь сказал Спасибо fim за это полезное сообщение:
Halvis (30.06.2019)
Старый 01.07.2019, 15:31   #230
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

Цитата:
Сообщение от fim Посмотреть сообщение
немного о поливе
код - 2 файла по 50 строк
дабы не плодить новых тем, коротко в продолжение о поливе

полив обкатал в поле
Нажмите, для показа скрытой информации


изменил свой код, т.к.
на моей малинке все gpio, были заняты и она (малинка) находится далеко от оптимального местоположения автоматики
т.е. у меня работает по схеме малинка - роутер - репитер - esp gpio - реле - клапана
но немного поправив код и... теперь его можно использовать в виде малинка gpio -реле - клапана и/или с esp
код здесь github.com/sdfim/watering

в файле формата json прописаны данные о зонах:
gpio
если есть ip_esp, то это gpio esp, если нет, то малинки
целевая норма полива в мм/м2
и время (час) с которого заполняется таймер (например 23 - для использования ночного тарифа)

далее читается json прогноза погоды (от openweathermap) и конкретно осадки в мм/м2
сравниваются с уставкой и если нужно (уставка выше осадков) заполняется последовательно таймер для зон
далее каждые 15 мин проверяется таймер и если время включения полива он включается и/или наоборот

я никого ни к чему не призываю, а просто привел пример как можно поступить с поливом (у меня уже была малинка), не используя вендорную автоматику
по клапанам для полива имхо Hunter - оптимальный вариант
автоматика в сравнении:

вендорная:
Контроллер Hunter PHC 601-E - 7 232,06 грн.
Контроллер Hunter X-Core 601i-E - 1 991,44 грн.
всего 9223,5 грн.
имеем: полив по погоде (прогнозу осадков) и целевой уставке полива, 6 зон

альтернатива:
минимальный набор (у кого еще нет raspberry pi, orange pi, етс)
orange pi - 525 грн.
блок реле 16-ти канальный - 270 грн.
всего 795 грн.
имеем: полив по погоде (прогнозу осадков) и целевой уставке полива, 16 зон, маштабируемость: добавление gpio/релюх/клапанов (при помощи esp, etc), простой рефакторинг,..

естественно, кому лень вникать или не интересно, или нет времени, то может альтернативная автоматикика и не нужна
на сейчас таких большенстнво, но жизнь меняется и без знамия языков программирования дальше будет сложнее, если не нам, то нашим детям
учитывая мой минимальный опыт автоматизации "умного дома", для меня это было не сложно, так почему бы нет?

зы вспомнилось, мне пару лет назад тут говорили, что использование прогноза погоды для автоматики - бред)
fim вне форума   Ответить с цитированием Вверх
Эти 3 пользователя(ей) сказали Спасибо fim за это полезное сообщение:
Dmode (01.07.2019), JohnnyD (01.07.2019), sov1178 (03.07.2019)
Старый 01.07.2019, 17:49   #231
JohnnyD
Старожил форума
Аватар для JohnnyD
 
Регистрация: 29.10.2013
Адрес: Киев
Пол: Мужской
Сообщений: 1,380
Вы сказали Спасибо: 1,596
Поблагодарили 1,322 раз(а) в 550 сообщениях
По умолчанию

Цитата:
Сообщение от fim Посмотреть сообщение
зы вспомнилось, мне пару лет назад тут говорили, что использование прогноза погоды для автоматики - бред)
Использую прогноз для полива и вентиляции (от замерзания рекуператора).
API "openweathermap".
AI1 - вход тек.прогноза
Если меньше/равно "6", то не поливаем. В полночь сброс и заново определение. В холодное время, естественно отключено. Или же добавлю условие по температуре дополнительно. Это будет правильнее.
Миниатюры
Прогноз.JPG  
JohnnyD вне форума   Ответить с цитированием Вверх
Этот пользователь сказал Спасибо JohnnyD за это полезное сообщение:
fim (01.07.2019)
Старый 01.07.2019, 18:09   #232
standov
Опытный форумчанин
 
Регистрация: 05.05.2015
Пол: Мужской
Сообщений: 860
Вы сказали Спасибо: 78
Поблагодарили 315 раз(а) в 193 сообщениях
По умолчанию

Цитата:
API "openweathermap"
и как точность? Я так понимаю есть уже "статистика"
standov вне форума   Ответить с цитированием Вверх
Старый 01.07.2019, 18:25   #233
JohnnyD
Старожил форума
Аватар для JohnnyD
 
Регистрация: 29.10.2013
Адрес: Киев
Пол: Мужской
Сообщений: 1,380
Вы сказали Спасибо: 1,596
Поблагодарили 1,322 раз(а) в 550 сообщениях
По умолчанию

Цитата:
Сообщение от standov Посмотреть сообщение
и как точность? Я так понимаю есть уже "статистика"
Я не записывал факт по датам. Но когда проверял, то совпадало. Скажем, по тем наблюдениям, 90%.
Мне сейчас сложно судить, так как проживание периодическое или наезды. На постоянке заведу табличку и проанализирую.
JohnnyD вне форума   Ответить с цитированием Вверх
Старый 01.07.2019, 18:35   #234
standov
Опытный форумчанин
 
Регистрация: 05.05.2015
Пол: Мужской
Сообщений: 860
Вы сказали Спасибо: 78
Поблагодарили 315 раз(а) в 193 сообщениях
По умолчанию

Цитата:
Скажем, по тем наблюдениям, 90%.
ну 90% это уровень, я все порываюсь в опенхаб завести но не было уверенности в адекватности результатов. 90 надо делать )
standov вне форума   Ответить с цитированием Вверх
Старый 01.07.2019, 23:44   #235
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

Цитата:
Сообщение от JohnnyD Посмотреть сообщение
Использую прогноз для полива и вентиляции (от замерзания рекуператора).
API "openweathermap".
AI1 - вход тек.прогноза
Если меньше/равно "6", то не поливаем. В полночь сброс и заново определение. В холодное время, естественно отключено. Или же добавлю условие по температуре дополнительно. Это будет правильнее.
вот кусок json (api.openweathermap.org/data/2.5/forecast?q=Kiev&APPID=your_api_key&units=metric), который я получаю:
Нажмите, для показа скрытой информации
Код HTML:
{
  "cod": "200",
  "message": 0.0097,
  "cnt": 40,
  "list": [
    {
      "dt": 1562014800,
      "main": {
        "temp": 22.27,
        "temp_min": 22.27,
        "temp_max": 26.16,
        "pressure": 1009.12,
        "sea_level": 1009.12,
        "grnd_level": 993.65,
        "humidity": 73,
        "temp_kf": -3.9
      },
      "weather": [
        {
          "id": 804,
          "main": "Clouds",
          "description": "overcast clouds",
          "icon": "04n"
        }
      ],
      "clouds": {
        "all": 97
      },
      "wind": {
        "speed": 2.98,
        "deg": 261.321
      },
      "sys": {
        "pod": "n"
      },
      "dt_txt": "2019-07-01 21:00:00"
    },
    {
      "dt": 1562025600,
      "main": {
        "temp": 21.43,
        "temp_min": 21.43,
        "temp_max": 24.35,
        "pressure": 1010.05,
        "sea_level": 1010.05,
        "grnd_level": 993.92,
        "humidity": 81,
        "temp_kf": -2.92
      },
      "weather": [
        {
          "id": 500,
          "main": "Rain",
          "description": "light rain",
          "icon": "10n"
        }
      ],
      "clouds": {
        "all": 90
      },
      "wind": {
        "speed": 3.49,
        "deg": 255.553
      },
      "rain": {
        "3h": 0.124
      },
      "sys": {
        "pod": "n"
      },
      "dt_txt": "2019-07-02 00:00:00"
    },
    {
      "dt": 1562036400,
      "main": {
        "temp": 21.13,
        "temp_min": 21.13,
        "temp_max": 23.08,
        "pressure": 1009.52,
        "sea_level": 1009.52,
        "grnd_level": 993.21,
        "humidity": 85,
        "temp_kf": -1.95
      },
      "weather": [
        {
          "id": 500,
          "main": "Rain",
          "description": "light rain",
          "icon": "10d"
        }
      ],
      "clouds": {
        "all": 73
      },
      "wind": {
        "speed": 2.51,
        "deg": 328.198
      },
      "rain": {
        "3h": 0.812
      },
      "sys": {
        "pod": "d"
      },
      "dt_txt": "2019-07-02 03:00:00"
    },
    {
      "dt": 1562047200,
      "main": {
        "temp": 22.19,
        "temp_min": 22.19,
        "temp_max": 23.16,
        "pressure": 1010.13,
        "sea_level": 1010.13,
        "grnd_level": 994.44,
        "humidity": 71,
        "temp_kf": -0.97
      },
      "weather": [
        {
          "id": 500,
          "main": "Rain",
          "description": "light rain",
          "icon": "10d"
        }
      ],
      "clouds": {
        "all": 70
      },
      "wind": {
        "speed": 3.54,
        "deg": 7.541
      },
      "rain": {
        "3h": 2.876
      },
      "sys": {
        "pod": "d"
      },
      "dt_txt": "2019-07-02 06:00:00"
    },
    {
      "dt": 1562058000,
      "main": {
        "temp": 23.45,
        "temp_min": 23.45,
        "temp_max": 23.45,
        "pressure": 1010.42,
        "sea_level": 1010.42,
        "grnd_level": 994.77,
        "humidity": 68,
        "temp_kf": 0
      },
      "weather": [
        {
          "id": 500,
          "main": "Rain",
          "description": "light rain",
          "icon": "10d"
        }
      ],
      "clouds": {
        "all": 58
      },
      "wind": {
        "speed": 2.05,
        "deg": 341.777
      },
      "rain": {
        "3h": 0.75
      },
      "sys": {
        "pod": "d"
      },
      "dt_txt": "2019-07-02 09:00:00"
    },
    {
      "dt": 1562068800,
      "main": {
        "temp": 27.05,
        "temp_min": 27.05,
        "temp_max": 27.05,
        "pressure": 1010.36,
        "sea_level": 1010.36,
        "grnd_level": 994.62,
        "humidity": 53,
        "temp_kf": 0
      },
      "weather": [
        {
          "id": 500,
          "main": "Rain",
          "description": "light rain",
          "icon": "10d"
        }
      ],
      "clouds": {
        "all": 56
      },
      "wind": {
        "speed": 3.35,
        "deg": 307.489
      },
      "rain": {
        "3h": 0.125
      },
      "sys": {
        "pod": "d"
      },
      "dt_txt": "2019-07-02 12:00:00"
    },

т.е. на каждые 3 часа идут данные:
Код HTML:
 {
      "dt": 1562068800,
      "main": {
        "temp": 27.05,
        "temp_min": 27.05,
        "temp_max": 27.05,
        "pressure": 1010.36,
        "sea_level": 1010.36,
        "grnd_level": 994.62,
        "humidity": 53,
        "temp_kf": 0
      },
      "weather": [
        {
          "id": 500,
          "main": "Rain",
          "description": "light rain",
          "icon": "10d"
        }
      ],
      "clouds": {
        "all": 56
      },
      "wind": {
        "speed": 3.35,
        "deg": 307.489
      },
      "rain": {
        "3h": 0.125
      },
      "sys": {
        "pod": "d"
      },
      "dt_txt": "2019-07-02 12:00:00"
    },
где "rain": {"3h": 0.125 }, в данном случае и есть осадки за 3 часа (если они по прогнозу будут) в мм/м2 (это я в описании где-то, когда-то вычитал, транслирую по памяти))
в скрипте суммируются эти данные за сутки (стр 55-57)
просто не совсем понял, что вы парсите/читаете для определения уровня осадков? какой ключ/параметр? JSON или XML (по идее там должны быть одинаковые данные)

Цитата:
Сообщение от standov Посмотреть сообщение
и как точность? Я так понимаю есть уже "статистика"
у меня пишется статистика (использую прогноз по температуре для оптимизации отопления по ночному тарифу, ну а статистика пишется прицепом))
по температуре выглядит так (раньше считал коэффициент корреляции), затем забил)
Нажмите, для показа скрытой информации

голубой - openweather
черный - синоптик.юа
оранжевый - факт
все среднесуточные
по осадкам... естественно данных нет
синоптик точнее (по температуре), но openweather имхо не критично по точности, зато он проще в использовании - сразу готовый объект данных (json)
Миниатюры
weather.png  
fim вне форума   Ответить с цитированием Вверх
Этот пользователь сказал Спасибо fim за это полезное сообщение:
sov1178 (03.07.2019)
Старый 02.07.2019, 08:36   #236
JohnnyD
Старожил форума
Аватар для JohnnyD
 
Регистрация: 29.10.2013
Адрес: Киев
Пол: Мужской
Сообщений: 1,380
Вы сказали Спасибо: 1,596
Поблагодарили 1,322 раз(а) в 550 сообщениях
По умолчанию

Цитата:
Сообщение от fim Посмотреть сообщение
"id": 804,
Подсчет уровня осадков еще впереди.
openweathermap.org/weather-conditions
JohnnyD вне форума   Ответить с цитированием Вверх
Этот пользователь сказал Спасибо JohnnyD за это полезное сообщение:
fim (02.07.2019)
Старый 02.07.2019, 10:52   #237
fim
Опытный форумчанин
 
Регистрация: 22.03.2013
Пол: Мужской
Сообщений: 999
Вы сказали Спасибо: 1,293
Поблагодарили 1,274 раз(а) в 593 сообщениях
По умолчанию

Цитата:
Сообщение от fim (30.05.2019, 12:47) Посмотреть сообщение
суть этого предложения в том, чтобы, раз в месяц, внутреннему алгоритму датчика Normal (ABC enable) скормить действительно 400ррм, на не просто мин значения за день
таким образом откалибровать датчики по чистому воздуху 400ррм, а затем работать без ежедневной автокалибровки
и так каждый месяц
итак в течении месяца датчики СО2 были в состоянии ABC disable (автокалибровка ежедневная была отключена)
по истечению месяца включаю состояние ABC enable (автокалибровка ежедневная включена)
в доме 400ррм, т.е. идет автокалибровка по чистому воздуху
смотрим в цифрах величину дрейф нуля
Нажмите, для показа скрытой информации

эта величина находится в диапазоне от 50 до 77ррм
для датчика точность которого +-50ррм - имхо не плохо
считаю такой подход приемлемым и можно формализовать в код

Цитата:
Сообщение от JohnnyD Посмотреть сообщение
"id": 804,
Подсчет уровня осадков еще впереди.
openweathermap.org/weather-conditions
группа данных объекта с ключем "weather" (в т.ч. "id": 804) имхо больше подходит для построения визуализации и/или классификации осадков (снег, дождь, етс), но для полива это же не критично
а ключ "rain" прямо указывает на мм/м2 осадков, которые удобно сравнивать с уставкой пользователя для конкретной зоны полива (для разных зон могут ведь быть разные уставки в мм/м2) и на основании этого определять временной интервал включения как по длительности, так и по времени включения/отключения
сезонное вкл/выкл автоматики полива, если делать автоматически, а не в ручную, то можно сделать и по температуре воздуха
Миниатюры
abc_co2.png  
fim вне форума   Ответить с цитированием Вверх
Этот пользователь сказал Спасибо fim за это полезное сообщение:
JohnnyD (02.07.2019)
Ответ

Опции темы



Текущее время: 09:24. Часовой пояс GMT +2.

Если Вы пользователь

Вы можете зарегистрироваться как пользователь и использовать весь функционал форума.
В любой момент Вы можете изменить свой статус с пользователя на компанию зайдя в личный кабинет.

Регистрация пользователя

Если Вы компания

Вы можете зарегистрироваться как компания и вести свою деятельность на нашем сайте.
Вы также можете создавать темы и отвечать в форуме.

Регистрация компании