Авторизация
Регистрация

Напомнить пароль

"Умная вытяжка" на кухню

Здравствуйте. Сегодня небольшой обзор вытяжки на кухню. Для тех кто любит ардуино.

Имеется на кухне вытяжка, захотелось её модернизировать, благо всё необходимое имеется. А именно модуль BME280, компактный блок питания на 3.3В, механическое реле, и ардуина про мини. Предполагаю такую план схему работы программы:
По моему мнению любое приготовление пищи связано с ростом влажности на кухне. Придумал(подсмотрел местами) такую схему: есть влажность-h
Есть усреднённая влажность взятая из 10 последних измерений влажности-b
В нормальных условиях влажность h колеблется в пределе 1%(выявлено на местности). Усреднённая влажность b не поспевает за мгновенной так как ей приходится ориентироваться на последние 10 значений h. Если ситуация выходит из среднестатистических значений то в этот момент включается вытяжка и запоминается значение h в temp. даём вытяжке поработать условное время и сверяем теmр и h. Если temp больше h то влажность на кухне упала и можно выключить вытяжку. Прикладываю программу(скетч)
<spoiler title='[code]
#define DEBUG 1
#include <Average.h>
#include "SparkFunBME280.h"
#include "Wire.h"
Average<float> ave(10); // Для усреднения последних значений с датчика создаём массив на 10 шт. 
unsigned long runInterval  = 300000; // Если включаем вентилятор, то не меньше, чем на х минут (х * 60 * 1'000 миллисекунд = х00'000)
const long interval = 2000; // Опрашиваем датчик
float temp;
BME280 mySensor;
void setup() {
  mySensor.settings.commInterface = I2C_MODE;
  mySensor.settings.I2CAddress = 0x76;
  mySensor.settings.runMode = 3; //Normal mode
  mySensor.settings.tStandby = 0;
  mySensor.settings.filter = 4;
  mySensor.settings.tempOverSample = 5;
  mySensor.settings.pressOverSample = 5;
  mySensor.settings.humidOverSample = 5;
  pinMode(LED_BUILTIN, OUTPUT);
  digitalWrite(LED_BUILTIN, LOW);
  if (DEBUG == 1) {
    Serial.begin(9600);
    Serial.print("Starting, humidity treshold set to: ");
    //    Serial.print(treshold);
    Serial.println("%.");
  }
  mySensor.begin();
}

void loop() {
  float t = mySensor.readTempC();
  float h = mySensor.readFloatHumidity();
  if (isnan(h) || isnan(t)) {
    Serial.println("Sensor error!");
    delay(interval);
    return;
  } else {
    ave.push(h); // Кладём результат измерения влажности в массив. В массиве помещается 10 измерений, новоприбывшее выталкивает самое старое.
    if (DEBUG == 1) {
      Serial.print("Humidit: ");
      Serial.print(h);
      Serial.print(" %");
      Serial.print("Humidity running average: ");
      Serial.print(ave.mean());
      Serial.print(" %");
      Serial.print("Temp.: ");
      Serial.print(t);
      Serial.println("C");
    }
    float b = ave.mean() + 1.1;
    Serial.print(h);
    Serial.print(b);
    if (h >= b || t > 34 || h > 76 ) {
      temp = h;
      digitalWrite(LED_BUILTIN, HIGH);
      if (DEBUG == 1) {
        Serial.println("Fan started.");
      }
      delay(runInterval);
    }
    if (temp > h)
    {
      digitalWrite(LED_BUILTIN, LOW);
      if (DEBUG == 1) {
        Serial.println("Fan will cool down.");
      }
    }
  }
  delay(interval);
}
[/code]'></spoiler>

Расположил всё в корпусе старого медиаплеера

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

Огромная просьба не смотреть качество пайки, это или руки или припой какой то, на некоторые выводы модулей просто не желает липнуть
Да монтаж элементов ужасен но как прототип вполне, датчик в одном месте корпуса, сама ардуино в другом с бп и не оказывают влияния на подтянутый датчик в вентиляционной прорези
Вся схема работает от 3.3 вольта так как датчику ВМЕ280 требуется в обязательном порядке оно. Есть конвертеры уровней, попробовал с ними работает, но много проводов становится. Решил попробовать запустить всё на 3.3 вольта и ардуино и реле запустились и работают стабильно. На этом всё, предложения и критика приветствуется. Хотелось для отладки делать всё это на 8266, но почта уже 2 модуля 8266 присвоила. Для отладки конечно видеть все в браузере на много удобнее чем ползать под потолок и прикручивать выкручивать ардуино
Планирую купить +68 Добавить в избранное
+33 +85
свернутьразвернуть
Комментарии (122)
RSS
+
avatar
0
  • Aloha_
  • 27 апреля 2017, 10:30
Задумка хорошая. А если по перепаду температуры включать — не проще было бы?
+
avatar
0
можно также добавить плавающий контроль температуры, но по мне влажность без температуры не растёт
+
avatar
+1
  • tianddu
  • 27 апреля 2017, 12:21
тут другой прикол, влажность стоит в нижней части помещения а жара в верхней, по этому температурный датчик был бы по интереснее наверно.
+
avatar
0
  • rx3apf
  • 28 апреля 2017, 00:34
А почему вдруг? Водяной пар легче воздуха…
+
avatar
+4
  • sir0ta
  • 27 апреля 2017, 14:28
Это в ванной можно 100% сказать влажность. А на кухне… мясо будешь жарить какая влажность? А жир топить? Духовка? Запах идет, а влажность нет.
+
avatar
0
Вы не слышали что мясу положено на ужарку терять до30%. Человек состоит на 90% из воды вот и посчитайте сколько в мясе воды
+
avatar
0
  • sir0ta
  • 27 апреля 2017, 15:39
У тебя датчик есть, включи в духовке ту же утку запекаться и расскажи как запахи полетели по кухне/столовой и дальше по дому, а твоя вытяжка молчит. Да и жарка тоже. Я в свое время игрался, золотой середины нет. Плюнул на все и сделал всю переднюю панель емкостной кнопкой. добавил в вытяжку моторчик на редукторе и ниткой сделал ремень типа. Нажал на переднюю панель — мотор крутит в одну сторону до концевика и включает двигатель (родные системы безопасности ставил) на шиме с прошлого включения. Нажимаешь на панель и держишь шим увеличивается до максимума и начинает убавляться до минимума пока не отпустишь. Опять короткое прикосновение и привод крутится в обратную сторону до концевика выключив двигатель. Из обвяза мос+вта, драйвер двигателя простецкий, немного 3д печатных деталей, ОУ еще ну и мега168 кажется. Ну и источник питания 5В500мА кажется от какого старого сотового. Продал. вытяжку брал за 5, продал за 8 )
+
avatar
0
про утку не знаю не питаюсь ими. у курицы большое количество влажности точно, не вижу смысла спорить. видно когда запекаешь в герметичном пакете по количеству воды и пара
+
avatar
+4
  • sir0ta
  • 27 апреля 2017, 16:39
Расскажешь потом как оно в работе по итогу хотя бы месяца-двух, особенно когда готовишь каждый день. Может и устроит, но мою жену не устроило. Я и так алгоритм крутил и так. У меня и влажность и температура была. Сказать честно у меня сейчас и ванная на механике. Так хочется зайти в горячую пропитанную горячим влажным воздухом ванную ) Блин… короче ты меня раздразнил… завтра баню топить буду ) как раз тяпница )
+
avatar
0
Мне кажется, зря спорите, логичней и то и то проверять, я сходу не знаю что за датчик, но думаю он и температуру меряет. Надо так же для температуры нормаль сделать, только посильней сместить, если скажем температура выросла на 10 градусов за 10 секунд, то точно надо включать вытяжку.
+
avatar
+2
elena87.net/cat6007.php первая ссылка в интернете. минусатарам привет. вы не согласны что мясо при жарке теряет свою массу так как состоит в том числе из воды. ил что человек состоит так сильно из воды. так вот да, оба утверждения верные
+
avatar
+2
Мы не согласны с Вашими знаниями физики. Летом/зимой перепад влажности на кухне будет гораздо выше, чем от жарки куска мяса весом 75 г, скажем. Да и вообще поинтересуйтесь перепадами влажности на улице. Открыли окно проветрить, а у Вас вытяжка включилась. Или наоборот выключилась. Или режете много лука, работаете с рыбой — влажность не изменяется, а запахи вытянуть нужно. Захотели семечек поджарить — запах есть, влажность опять не изменилась. И т. д. и т. п. Идея абсолютно негодная.
+
avatar
+1
вы за всех то не МЫКАЙТЕ
narodmon.ru/2063 уже как то поинтересовался и погодой за окном и электричеством потреблённым. благо модули с китая многое позволяют сделать. а вот у вас есть что показать или только семечки пожарить патчанчикам на районе
+
avatar
0
Я не понимаю, что Вы хотите доказать своим мутным скриншотом, но вот по Вашей же ссылке первое попавшееся: 4 апреля от 39.44 до 61.89 5го…
Про китайские модули: какова точность измерения влажности?
Как изменяется влажность у Вас на кухне, если пожарить, например, 3 яйца?
Ставим сковородку — раскаляем и выливаем масло — оно начинает дымиться кидаем пару зубчиков чеснока. Ваша вытяжка ещё не включилась, но она уже нужна. И как быть? Включать вручную?
Далее. Вытяжка уменьшила влажность, но запах ещё есть. Как быть? Напомню, что если Вы что-то забыли, то тот же кусок мяса обуглился — он выделяет минимум пара, однако воняет безбожно…
Повторяю — идея негодная к сожалению.
+
avatar
0
я никому ни чего не хочу доказать. вам тем более. тут сайт где люди выкладывают обзоры. вы являетесь на данном сайте читателем. вот станете автором и будут у вас одни НЕ мутные скриншоты. по ссылке, для не догадливых, сайт на котором показывается для всеобщего наблюдения состояние УЛИЧНЫХ датчиков. я не производитель и я не продам вам своё творение, по этому ваши повторы что идея не годная не подорвут объёмы продаж. у меня всё работает. я к сожалению не раскаляю сковородки и не жарю на них 2 зубчика чеснока. я готовлю нормальную еду и не занимаюсь на кухне всякой ахинеей
+
avatar
+1
Извините, но Вы занимаетесь ДЕМАГОГИЕЙ и ничем иным.
О кулинарии имеете представление видимо в рамках котлет с пюре, которые и называете «нормальной едой». В КЛАССИЧЕСКИХ рецептах тех же, спагетти чеснок именно ОБЖАРИВАЕТСЯ, чтобы передать аромат маслу. Так, что идите, гуляйте, писатель. А сковородка, прежде чем налить в неё масло должна быть раскалена как и масло.
+
avatar
0
  • uweroy
  • 28 апреля 2017, 01:01
а дым без влажности бывает?
+
avatar
+2
У меня в кухонной вытяжке стоит термореле от кондиционера БК.
Как только температура на сетке поднимается выше 40 градусов — включается. И пофиг мне какая там влажность, мне не нужен в квартире особенно летом горячий, не очень чистый воздух.
Хотя ставил я это из за того, что часто забывали вытяжку выключать.
+
avatar
+2
Так в коде заложено срабатывание по температуры. Плохо что ли.
+
avatar
+2
  • Antaeus
  • 27 апреля 2017, 10:30
А нет ли аналогичной схемы для ванной? Вятяжка запитана от освещения и постоянно включена, а хотелось бы по появлению влажности включение и последующее выключение.
+
avatar
+30
поменяйте в моём тексте слова кухня на ванная.
+
avatar
+1
  • Sanja
  • 27 апреля 2017, 12:22
Тем более, что код менять не придётся ;)

Я смотрю на листинг и думаю — что ж буквы-то такие знакомые? ;)

mysku.club/blog/aliexpress/37118.html
+
avatar
0
  • kvolk
  • 27 апреля 2017, 13:31
После таких обзоров пропадает желание в открытом виде выкладывать скетчи.
+
avatar
0
Я автору писал если что и я упомянул что код посмотрел. Однако можно заметить что он переработал значительно если координально
+
avatar
+6
  • Tolan
  • 27 апреля 2017, 18:10
Кардинально… Координаты — это другое.
+
avatar
+6
  • Aostspb
  • 27 апреля 2017, 14:10
пропадает желание в открытом виде выкладывать
Почему? :) Радоваться надо, что Ваши (или чьи-то еще) старания не пропали даром, а используются человечеством…
+
avatar
0
  • kvolk
  • 27 апреля 2017, 14:20
Об этом надо хотя бы в обзоре упомянуть, что скетч взял вооон там.
+
avatar
0
Я написал что код подсмотрен. Однако не вижу причины ссылаться. Так как программа переработана более чем на половину
+
avatar
+1
  • sir0ta
  • 27 апреля 2017, 16:47
Это этика. ею проф программеры брезгуют, а вы… недавно интегрировали софт. На одном компе не стартует. Я вот сходу вижу что писали на VisualFoxPro. Объясняю им что не стартует потому что в модуле инициализации главного окна нужно написать вот такую вот строку, что код подрастет на 50-60кБ, но будет работать на всех пк. Долго спорили, даже докладную на меня написал начальник отдела (у нее и на завелось). Я бы согласился если бы у рядового, но у этой крали там вагон софта, ради нее переставлять винду ни как не хотелось, там на день мороки. Короче 30 минут на поиски в инете и оказывается есть патчик для готовых EXE. Вжик и завелось. Короче эти гады потом добавили эту строчку в код, но спасибо так и не сказали…
+
avatar
0
Так если сравнить скетчи они и рядом не лежали. У того обзора включение совпадает с моим от части а дольше ничего похожего
+
avatar
+2
  • Aostspb
  • 27 апреля 2017, 14:42
Буквы — те же использовали? А авторов/ам — не перечислили… Нехорошо. :)
+
avatar
+7
  • Sanja
  • 27 апреля 2017, 14:11
почему? Я своё вовсе на Github кладу — вдруг ещё и pull-request кто-то пришлёт с исправлением багов…
+
avatar
+4
Пользовательское соглашение сайта не запрещает заимствование. Все опубликованное в обзоре может быть использовано для собственных поделок без разрешения автора.
mysku.club/page/agreement
+
avatar
+2
  • demonk
  • 27 апреля 2017, 14:42
Желание может пропасть если писал на продажу или заради славы себя любимого.
А если делал для себя и как хобби, то почему бы не поделиться с миром, глядишь еще лучше сделают.
Ну и украдут понятно тоже, но это уже дело их кармы. И сильно ли будет легче если будут также копировать бинарники, выкладывая от своего имени?
А так лишаете всех, в том числе нормальных людей, возможности поучиться на примере или допилить какую мелочевку под себя.
+
avatar
0
+
avatar
+2
  • MPaul
  • 27 апреля 2017, 11:51
Есть же куча вентиляторов с датчиком влажности, как раз для ванной. Чего огород то городить?
+
avatar
+1
Вы алгоритм этих систем представляете? Там либо совсем не работает, были примеры, либо там предел допустим 70% и не важно зима весна или колбасу жарим датчик сработает по своему заложенному пределу
+
avatar
+3
  • MPaul
  • 27 апреля 2017, 12:12
Вполне. Превысился заданный уровень влажности — вентилятор включился, понизился (с определенным гистерезисом) — выключился. Уровень срабатывания регулируется подстроечником. Что еще то нужно?
У самого такой в ванной висит уже который год, работает абсолютно корректно.
А колбасу жарить в ванной как-то неправильно, мсье знает толк в извращениях :-))
+
avatar
0
Видел примеры вытяжки где ДНТ11 без ардуино подключали к релюшке. Как думаете такая вытяжка срабатывала
+
avatar
+1
припой какой то, на некоторые выводы модулей просто не желает липнуть
Самое время узнать кое-что о флюсах
mysku.club/blog/aliexpress/50184.html
+
avatar
0
пользуюсь канифолью, она помогает, но есть места где просто она что есть что нет
+
avatar
+2
Именно потому что «есть места где просто она что есть что нет» используют флюсы. Простейший ЛТИ-120 решит ваши проблемы в 95% случаев.
+
avatar
+1
  • Baskery
  • 27 апреля 2017, 11:11
Надо пошкрябать шкуркой или ножом
+
avatar
0
  • Aostspb
  • 27 апреля 2017, 13:34
Проще применить флюс из раствора нашатыря с глицерином. :)
+
avatar
0
  • Baskery
  • 27 апреля 2017, 13:39
Не, я тоже распаивал позорные гребенки на китайскую ардуину, без расцарапывания совсем не паяются
+
avatar
0
  • kvolk
  • 27 апреля 2017, 14:07
ЛТИ-120, и не надо ничего «ковырять» и «расцарапывать».
+
avatar
+1
  • Aostspb
  • 27 апреля 2017, 14:08
ЛТИ бывает поддельный…
+
avatar
0
  • kvolk
  • 27 апреля 2017, 14:22
А бывает и нет… И стоит он копейки, и в любом «радиомагазине» есть. Но если уж есть непреодолимое желание «ковырять» и «расцарапывать», то можно и вообще без флюса.
+
avatar
0
  • Aostspb
  • 27 апреля 2017, 14:30
Вот у меня он и был когда-то куплен в Чип-и-Дипе: жалкое подобие нашатырно-глицеринового флюса.
+
avatar
0
  • skeptik
  • 27 апреля 2017, 21:12
такое ощущение, что мой ЛТИ-120 тоже левый.
С канифолью и то лучше пайка идет.
+
avatar
+1
  • demonk
  • 27 апреля 2017, 12:07
Разные гребенки к ардуинам прилагают, по моему опыту серебристые еще ничего, а желтые (типа золото, дорого-богато) лудятся совсем хреново — даже со шкуркой+ЛТИ-120 мучение.
+
avatar
0
Да, в основном желтые идут, без флюса напрочь не лудятся.
Вот такая банка за $5.93 добавит удовольствия от творчества.
+
avatar
0
  • skeptik
  • 27 апреля 2017, 21:13
флюсом для алюминия на ура. Без всяких шкурок. Сам долго мучился.
+
avatar
0
Залудить непонятный металл, из которого делаются китайские гребенки, эти флюсы не помогут.
Проще эту гребенку выпаять, все равно в данном случае она без надобности.
+
avatar
+1
  • urus
  • 27 апреля 2017, 10:44
Очень грамотно. Молодец. Сделаю на 8266. Как раз модуль завалялся.
+
avatar
+2
  • starson
  • 27 апреля 2017, 10:46
Мне кажется, что во-первых, не всегда будет срабатывать, потому как при поджарке бекона, например, запах начинает распространяться почти сразу, а вот влажность через сколько повысится?
+
avatar
0
  • bob2005
  • 27 апреля 2017, 11:13
MQ2 должен помочь…
+
avatar
0
для этого надо найти порог когда датчик не будет ложно срабатывать и любое рост влажности выше предела означает готовку. а колбасу жарить без поднятия влажности невозможно
+
avatar
0
  • starson
  • 27 апреля 2017, 12:35
Вопрос только в кличестве колбасы. Если килограмм и в течение часа, то наверное поднимет, а если пару небольших кусочков?
+
avatar
+1
  • Booz
  • 27 апреля 2017, 10:51
Влажность в кухне зависит от погоды. Если на улице дождь и сыро, и у вас открыто окно, то в и кухне влажность повысится. Включится датчик вытяжки, тем самым увеличивая приток воздуха снаружи. Переменная temp будет постоянно ниже актуального значения.
При жарке яичницы влаги мало испаряется, а запахов много. Включится?
PS меня уже опередили про жарку на сковородке :)
+
avatar
+1
датчик не включится если изменение влажности происходит постепенно. то есть у меня усреднённое значение отличается от влажности на 1.1 и это даёт влажности меняться в любую сторону плавно. если закипел например или суп например на плите данные влажности выходят за предел усреднённых+1 и включают вытяжку. переменная темп не будет ниже. если влажность поднялась выше порога то и будет оставаться выше пока на кухне чтото происходит. после прекращения готовки темп станет ниже
+
avatar
0
  • Brim
  • 27 апреля 2017, 17:12
А при открытом окне, если вдруг пошел ливень?
+
avatar
0
Да при температуре или по температуре эффективнее…
Ибо топить сало брить мясо и так далее влаги будет мало

Делать комбинированный надо часто бывает много влаги без запаха и температуры… и наоборот…
+
avatar
0
Да не бывает все продукты употребляемые человеком и требующие готовки выделяют влажность во время приготовления
+
avatar
+6
По-моему влажность на кухне один из последних факторов, при котором должно происходить включение принудительной вентиляции. На первом месте борьба с веществами и запахами выделяемые при жарке, удаление из помещения продуктов горения газа (если плита газифицированная) и удаление нагретого конфорками воздуха, а также приток свежего воздуха.
А тут получается какой-то заяц со стоп-сигналом. Вообще, народ уже не знает куда ардуинку запихать. Скоро начнут встраивать её во втулку туалетной бумаги.
+
avatar
+2
Отличная идея! Автоматический податчик бумаги! Ардуинка фоторезистором отслеживает поднесение руки, отматывает шаговым моторчиком, прикрепленным к втулке с рулоном, отрезок нужной длины, а лазером гравера отрезает его! :-)
+
avatar
+1
Прикладывать-то придется все равно вручную. Половинчатая какая-то автоматизация получается.
+
avatar
+1
  • vanenzo
  • 27 апреля 2017, 11:14
Главное чтоб жиром не забило, я все сетки решетки раз в полгода мою щелочной отравой…
+
avatar
0
Тоже есть такие опасения, однако датчик внутри корпуса и надеюсь на то что в корпус надо жиру ещё попасть а там ещё датчик довольно таки закрытая конструкция. На открытых горизонтальных плоскостях количество жира конечно большое
+
avatar
0
  • mooni73
  • 27 апреля 2017, 11:19
Пора бы переходить на голосовое управление
+
avatar
+6
  • Booz
  • 27 апреля 2017, 11:38
Всё уж давно придумано…
-Жена, включи вытяжку, у меня подгорело :)))))))))
+
avatar
+1
Я бы делал на двух датчиках температуры, один прям над плитой, а второй где-нибудь в сторонке. Если дельточка значений уходит, скажем, на 5 градусов — то включал вытяжку. И проще, и надёжнее…
+
avatar
0
2 датчика это раскошь. Не пойму чем отслеживать изменение обстановки плохо конкретно
+
avatar
+1
Когда что-нибудь варится минут 20, то усреднённая влажность повысится до мгновенной и вытяжка отключится.
+
avatar
+1
Надо учитываль что темп зафиксировался в начальный момент и если влажность хоть на чуть чуть выше точки когда начался подъём то темп не сбросится. То есть пока на кухне не перестанут готовить
+
avatar
0
Усредненная влажность может повыситься до мгновенной только в случае падения мгновенной а это в рассматриваемых условиях равносильно прекращению готовки. То есть если условия влажности вернулись на момент когда за фиксировался первый рост от нормы
+
avatar
+1
Итак, у вас массив на 10 элементов. Интервал опроса 2 сек
Следовательно, при мгновенной влажности 5попугаев через 20 секунд ВСЕ элементы массива будут равны 5попугаям. Считаем среднее, получаем 5попугаев, сравниваем с мгновенным, получаем равенство. Вентилятор останавливается.

Не спорьте с программистом ))) Я на этих плавающих окнах voice-активацию написал
+
avatar
0
я не программист в 90е на бейсике писал чуть чуть. 25 лет спустя на ардуино нравится писать немного. вижу хороший повод для беседы. вентилятор на остановку не смотрит усредненное значение. а смотрит точку включения(temp) и влажность на данный момент(h). при чем тут «считаем среднее». я открыт для диалога, я не прав?
+
avatar
0
mean — среднее по массиву
+
avatar
0
это не первый проект у меня. у меня полная квартира самоделок из ардуинок и 8266. я понимаю что такое mean. вы скажите он к остановке вентилятора какое отношение имеет. возможно я очевидного не вижу. бывает
+
avatar
+1
  • Z2K
  • 27 апреля 2017, 19:28
через 20 секунд ВСЕ элементы массива будут равны 5попугаям
— ждал когда кто-то это напишет. В теории. Но если б так было на практике автор обзора бы учуял что что-то его творение работает не так как он того хотел. Так почему не выключется? Показатели от датчика прыгают?
+
avatar
-1
не понял. это мне вопросы? человек пишет что программист а не разобрался в 10 строках кода. да мне стыдно выкладывать так мало строк. делал отладку на экране st7735 вот там уже кода посолиднее. показатели всегда прыгают, датчики точные и сотые всегда плавают. и что не выключается. на небольших периодах готовки опробовал всё показалось рабочим. как покажет при большой готовке посмотрим
+
avatar
0
И в чем я не разобралсся?
Averageave(10);
{
ave.push(h);
float b = ave.mean() + 1.1;
if (h >= b || t > 34 || h > 76 )
}
Тут и разбираться нечего, 5 строчек кода

Понимаете, вам придётся постоянно играться с константой, которая +1.1. В каких-то условиях ее не будет хватать на включение, в каких-то она не будет давать выключаться, и будете постоянно лазить в ардуинку и подстраивать.

Согласно теории обработки сигналов, вы должны обеспечить окно времени (ваш массив на 10 элементов) как минимум вдвое превышающее время работы фильтра. Например, примем максимальное время работы вытяжки в 20 минут. Тогда окно времени должно хранить данные датчика за 40 минут, т.е. в вашем случае 1200 значений. МИНИМУМ.
Иначе будут постоянные ложные срабатывания или невыключение фильтра

В любых измерениях, очень важна точка отсчёта — 0 при температуре, 0 при расстояниях, 0 при вольтаже. И все измерения делаются относительно опорного значения, и только в редких случаях, когда не на что опереться, пытаются сделать искусственный 0, что вы и показали.
А вот если в ваше устройство поставить два температурных датчика — то и получим тот самый 0, с которым нужно сравнивать, не нужно никаких окон времени и прочей чепухи.
+
avatar
-1
так от куда вы видите что 1.1 работает на выключение???
а 1.1 выведено практикой 1 просто были очень редкие ложные срабатывания, 1.1 не вижу срабатываний
+
avatar
0
Вот почему
unsigned long runInterval = 300000
+
avatar
-1
вы точно программист? из логики видно сработало условие if, ну и уж если произошло событие фиксируем его на некий промежуток. хотя я думаю его уменьшить до минуты а потом возможно совсем убрать. сложно мониторить в реальных условиях. была бы 8266 без проблем и меняй программу и мониторь происходящее
+
avatar
0
Мил человек, если вы желаете обсудить мою личность и профессиональные навыки, велком в личку.
Блять, ну что за люди, пытаешься помочь — так говном обольют.
+
avatar
-3
ну гуляй, не заметил помощи любое ваше высказывание мимо
+
avatar
0
Даладно!
Смотря какие датчики, а терморезисторы, скажем на 10-100 кОм, стоят копейки, и их точности вполне достаточно для отслеживания дельты Т в 5'С.
+
avatar
+2
  • Jury_78
  • 27 апреля 2017, 12:24
Повод научится программировать неплохой. Но замена одной кнопки процессором как то странно… из пушки по воробьям. Хотя бы чего нибудь добавить… Включать подсветку все равно руками? Можно было б использовать сенсор присутствия — подошел к плите включился свет, задержался дольше определенного времени включилась вытяжка. Выключать вытяжку по термометру и/или гигрометру.
+
avatar
0
  • skif31
  • 27 апреля 2017, 12:52
Да, такие сопли я никогда не собирал
+
avatar
+1
  • zoom70
  • 27 апреля 2017, 13:25
Весь «ум» регулятора влажности реализуется на DHT22. В состоянии покоя фиксируется влажность. Если влажность повышается выше порогового значения — включается вытяжка. Альтернативный вариант — два датчика, один, к примеру, на улице. второй на кухне. Если на кухне влажность выше уличной — включить вытяжку. Собственно, тут Arduino и не нужен. Навскидку первое попавшееся реле
+
avatar
+1
  • melvin
  • 27 апреля 2017, 13:49
Ручное включение вытяжки оставили надеюсь?
Вообще странное решение… Для ванной да, но для кухни зачем? Тогда уже и датчик дыма и огня нужен с системой оповещения, пожаротушения и отключения варочной панели и духовки… Мало-ли забудете выключить конфорку или подгорит что…
+
avatar
0
Нашел у себя на рынке готовый вариант, при цене выше вентилятора. Вот БУ-1-60 Vents
Настроек масса.
+
avatar
0
  • melvin
  • 27 апреля 2017, 16:17
Так он NO. Тогда надо NC и чтобы жары летом в 35 градусов не было.
+
avatar
0
  • credos
  • 27 апреля 2017, 17:13
как раз надо Normal Open, при 35 срабатывает. а 35 летом в квартире это жесть, тем более пока вытяжку не включишь, она не сработает
+
avatar
0
  • melvin
  • 27 апреля 2017, 17:30
Да, звиняйте. NO конечно. Трудный день…
+
avatar
0
Летом в +35 включается всё само и навсегда? Удобно ))))
+
avatar
0
да ладно вижу я это. условие то сложно достижимое, да и как заготовка некая оставлена. :)
+
avatar
0
  • Michael
  • 27 апреля 2017, 15:54
Уважаемый gulin176. Несколько вопросов, если не затруднит.
А у вас плита газовая или электрическая? Где, относительно плиты, установлен датчик? Как он ориентирован? Что явилось критерием выбора именно этого датчика? Сколько времени уже работает этот датчик в реальных условиях?

Есть у меня сомнения в том, что этот замечательный датчик в условиях кухни долго проживёт. И, учитывая Ваш алгоритм, можно использовать «дубовый» и совсем неточный датчик. Вы же не абсолютные значения фиксируете. Ну и в пару ему какой-нибудь ds18b20.

Но, в любом случае, мне очень интересна статистика использования этого датчика.
+
avatar
0
плита газовая. над плитой находится вытяжка в виде канального вентилятора, то есть высоко. на шкафу лежит коробочка, шкаф боковой поверхностью практически над плитой. датчик получается между плитой и вытяжкой. работает месяца 2, однако в новой ревизии только 2 дня. в старой реализации были претензии жены что выключалась когда не надо, так как код был скорее похож на тот что в начале обсуждения давали ссылку. по включению вытяжки жалоб не было
+
avatar
0
  • Michael
  • 27 апреля 2017, 16:17
Спасибо. А почему именно этот датчик? Он ведь может сильно больше и недёшев.
За предыдущие 2 месяца корпус и датчик не засалились?
+
avatar
0
внутри абсолютно нет признаков жира. датчик такой потому что могу. не вижу смысла связываться с хламом типа DHT11(22). проводил опыты с SHT21 не понравилось. он какой то более инертный чтоли. да и он по моему ещё дороже
+
avatar
0
  • Michael
  • 27 апреля 2017, 16:26
Понятно, спасибо.
+
avatar
+1
Расскажу маленькую хитрость. Вы вот говорите влажность меряете т.к. идет скачек влажности. Отлично! Но думаю стоит учитывать то что вот эта вот «влажность» обязательно осядет конденсатом на самих микросхемах. Тем более со временем жир (да-да, именно жир) просто поглотит вот эту электронику. Обратите внимание что вытяжки всегда(!!!) чистят от жира
+
avatar
0
  • xneo
  • 28 апреля 2017, 07:02
Два года назад реализовал у себя нечто подобное. Изначально был один датчик. он просто тупо измерял в районе вытяжки (так же среднее из 10) и когда она поднималась выше указанной включал вытяжку. Но пришла весна и вытяжка стала включаться по ночам сама по себе. Поднялась общая влажность воздуха. Пришлось переделывать. Поставил один датчик непосредственно у решетки а второй метрах в двух от него (туда куда пар от готовки не доходит). Теперь всё корректно включается. Осталось и ручное управление (при котором автоматика выключается) и автоматическое (при отключенной вручную вытяжке) для тех кто забывает.
Насчет дыма — есть датчики дыма, но запах они всё равно улавливать не будут. Да и мы не готовим чебуреки в казане с маслом, так что дыма у нас не бывает.
+
avatar
+1
вы пишите пришла весна. так при таком скетче не важно что пришло. может дождь идти на кухне он не включится. событие должно выйти за предел установленной погрешности. то есть система работотает и при 20% и при 80%
+
avatar
0
  • xneo
  • 28 апреля 2017, 09:47
Так я ж вам и говорю что переделал. У вас предположительно при продолжительном парообразовании и недостаточной мощности вытяжки вентилятор в какой то момент выключится.
А вам у же выше написали про это)
+
avatar
0
  • volf7
  • 28 апреля 2017, 12:33
Самоделкину за идею и реализацию плюс, но нигде, вроде, не увидел предостережение, — запрещается устанавливать вентиляторы в каналы естественной вентиляции, дабы не создавать излишнее давление в последней ( тогда запахи всего, что вы готовите, окажутся в соседних квартирах!)
+
avatar
0
> …запрещается устанавливать вентиляторы в каналы естественной вентиляции, дабы не создавать излишнее давление в последней…

Откуда инфа? Вроде у каждой квартиры свой вентиляционный канал, разве нет?
+
avatar
0
  • demonk
  • 03 мая 2017, 13:36
Разные бывают.
В малоэтажках индивидуальный до самой крыши.
В многоэтажках индивидуальный канал-спутник на пару этажей вверх и соединяется с общим. Вот тут реально соседям можно перевернуть вентиляцию и надуть вони. Можно только общий тянущий вентилятор на крышу.
+
avatar
0
Понятно, спасибо.
+
avatar
+1
  • KVS
  • 29 апреля 2017, 16:22
gulin176
Нормальную тему замутил, сам думаю как в ванной это реализовать.
+
avatar
0
ну как на писано так и сделать хотя я бы после того как сработало событие(начали мыться) поднял по событию таймер(минут 15) и только после этого включил бы вытяжку. мне нравится мыться в обогащенной парами ванной
+
avatar
0
Хорошая доработка. Код сами писали или есть какой то генератор?
+
avatar
+1
код писал сам ну кроме того что подсмотрены некоторые принципы. Кстати не думаю что 99% пишущих на ардуино не смотрят чужой код. Генераторы есть, FLPROG называется, но мне это не интересно. мне сам процесс кодинга интересен
+
avatar
0
Кстати не думаю что 99% пишущих на ардуино не смотрят чужой код.
Я же не против, т.к. сам не кодер вот и хотел узнать есть ли генераторы :) Спасибо за ответ
+
avatar
0
  • ro70
  • 15 февраля 2018, 11:18
gulin176 смотрите л.с.
+
avatar
0
  • kell800
  • 02 августа 2018, 16:47
Для датчика Si7021 можно ли адоптировать этот скетч?
+
avatar
+1
  • Elrec
  • 14 февраля 2019, 16:37
А у меня вопрос вот какого плана. На алишке есть датчики газов. Вот по принципу этой кухонной вытяжки хочу сделать вытяжку в туалете. Но что бы работала когда воняет. Вопрос: какой датчик лучше всего подойдёт?
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.