Автоматизация проветривания комнаты через окно и что из этого вышло

Все началось с того что в комнате становилось жарко если работает компьютер, за моим отсутствием или ленью не часто проветривалась комната (хотя казалось бы надо просто открыть окно). Короче решил я делать это «устройство». По сути требовался датчик температуры механизм открывающий и закрывающий окно и автоматику которая всем этим управляет.

Баловством с контроллерами на тот момент уже слегка занимался, поэтому решил что мне нужен контроллер ну и самый простой датчик температуры (он же терморезистор) — замечательно, сказано сделано, приобрел в местном магазине эти вещи спаял на макетке, опробовал самую простую автоматику типа греешь датчик дыханием — загорается светодиод, датчик остывает — светодиод гаснет. Получилось примерно вот такое:



Замечательно, работает! встал следующий вопрос — дыхание это все понятно но хотелось бы конкретные значения температуры, после долгого высчитывания значений напряжений и перевода их в температуру у меня вышло более менее точные значения температуры которую я наблюдал на мониторе компьютера принимая значения с COM порта. Тоже порадовался этому достижению (казалось бы что надо человеку для радости). Тут пришла мысль, а вот бы без компа смотреть значения температуры, да и вообще отдельное устройство работающее само по себе и если надо общающееся с компом — это вроде как будет интересно. Вариант с семисегментными индикаторами отмелся как-то очень быстро — не интересно типа. решил делать вывод на ЖКИ.



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

В общем решил я делать отдельный модуль который будет заниматься выводом информации (в дальнейшем прозвал его модуль вывода текстовой информации МВТИ), а основной контроллер задумываться о том что там какие-то задержки даже не будет, к тому же память экономит. Решил использовать стандартный интерфейс COM порта (RS-232). Задача стояла такая: модулем принимаю символы по RS-232 вывожу на ЖКИ, перед началом производится вся полагающаяся инициализация, соблюдаются все нужные задержки, делаются всевозможные проверки типа количества выводить 40 символов, переходы на новую строку, и таблица соответствия символов кодировки данных приходящих с COM порта и ЖКИ, очень хотелось чтобы вывод был на русском языке.

Занялся этим вопросом — создал схему, развел плату и нужно было заняться ее изготовлением, что-то у меня плохо шла технология ЛУТ, и решил я попробовать сделать это в Китае, прочитал целую статью про это на хабре, и решил заказать там же где и у них в статье было написано, сайт производителя плат. Минимальный заказ у них 5 штук и 1 в довесок бесплатно добавляют (в общем по любому в цене выгоднее чем у нас заказывать). Заказал у них эти 5 штук, подумал пригодится если еще такие модули делать буду, они получаются универсальные можно просто к компу на нуль модемный кабель посадить и выводить что-нибудь (питание еще от блока подать). Прислали через месяц мне платы, напаял туда элементы написал прогу для контроллера который на в модуле, затестировал, и в первом приближении мне понравилось, потом потихонечку доводил по мере того как что-то находил. Конечный вариант вышел такой.



Теперь у меня выводилась температура на ЖКИ в виде: Температура 23 градуса, встала новая проблема она прыгала при малейшем дунавении ветерка типа открытии двери окна, сам мимо прошел — сделал усреднение, получилось вроде нормально. Температура это конечно хорошо но захотелось мне еще туда и время выводить. Попробовал сделать и это, добавил коду, обнаружил что есть недочеты при выключении питания — оно сбивается и его надо каждый раз выставлять. Опыта работы с контроллерами не хватало и со временем выходило не очень, секунды были разные и быстро набегали ошибки. Попробовав то се, начал думать как быть, развивался ардуино и появились дешевые модули реального времени, на том и порешил.

Взял себе ардуино Леонардо с 2-мя UART портами (один под модуль вывода текста, второй штатный для соединения с компом), модуль реального времени. С библиотеками проблем не было, кода в инете и примерах достаточно, быстро написал код, оттестил его и радовался жизни — время пошло и дата тоже была и при выключении время не сбивалось, сплошь замечательная жизнь. Но и тут мне не сиделось не понравилось что на маленьком экранчике ЖКИ очень уж мелко время показывает, надо бы что-нибудь придумать, и решил я сделать модуль вывода времени на семисегментных индикаторах. Семисегментного индикатора с двумя точками хорошего размера себе не нашел. использовал 2 сдвоенных плюс 2 светодиода под точки, решил плату также как и предыдущую делать, но не делать ее частотной, а с микросхемами памяти которые хранят состояние часов и минут т.е. время записывается туда 1 раз в минуту, дальше пины свободны для других задач. получился вот такой вот модуль:



Дальше нашел подходящий корпус, приобрел блок питания на Ali, собрал работает — глаз радует:







Следующий шаг механизм открывающий окно. У меня окно деревянное открывается на бок узкая и длинная форточка до верха. Тут было потеряно не мало времени пока не подобрал боле-менее подходящий вариант для системы которая занимается открытием и закрытием окна. На последний момент механизм выглядит таким образом:



Все собиралось из подручных средств, тяги были взяты от механизма дверцы шкафа бара (еще советской конструкции), шаговый двигатель от принтера (драйвер на микросхеме L293), белая пластиковая деталь — напечатана на 3D принтере. Несколько раз конструкция, облегчалась и переделывалась, на текущий момент свою функцию выполняет, не совсем ей доволен — так что планирую ее модернизацию. Для примера записана программа так что при температуре более 27 открывает окно, менее 24 градусов закрывает окно, но запланировано проветривать по времени с ориентированием на температуру: если температура во время проветривания понижается быстро то проветривание небольшое по времени, при этом чаще происходит само проветривание и наоборот.

Ссылка на видео открытия и закрытия окна

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

P.S.: Выслушаю мнения, идеи, комментарии и пр.
Поделиться публикацией
Ой, у вас баннер убежал!

Ну. И что?
Реклама
Комментарии 72
    +12
    Монументально! Кстати, вы можете добавить в корпус датчик СО2, и проветривать не только при повышении температуры, но и при превышении нормальных показателей углекислого газа. Это будет даже полезнее.
      +2
      и кнопку форсированного проветривания: ткнул, окно на распашку и минимальная температура чуть ниже, чем когда внутри комнаты кто-то есть(градусов 16-18), после чего окно закрыть
        0
        У меня была мысль сделать похожую штуку. Но я планировал ее разделить на две части — сначала регистрировать температуру/влажность/еще что-нибудь и каждые полчаса опрашивать сеня — комфортно ли мне. На основании полученных данных определить комфортные показатели, а потом уже реализовывать открывание окна так, чтобы обеспечить эти самые комфортные показатели. Но до реализации так и не добрался.
          +2
          В своем случае придерживался одного важного совета «не ставь перед собой сразу больших целей — нужны маленькие победы они не дадут песиимизму развиваться»
        +1
        Неа, нельзя вешать на датчик СО2.
        Окно будет постоянно туда сюда болтаться.
        Сам собираю вентиляцию, вентиляция включается при достижении 800ppa и отключается при 750.
        В итоге Период включено->выключено всего около 15 минут. В сулчае с окном будет тоже самое — оно будет открываться/закрываться каждые 15 минут. Что не приемлемо с механической точки зрения.

        То есть, если ориентироваться на СО2 — надо другую систему делать.
          +1
          Неа, нельзя вешать на датчик СО2.
          Окно будет постоянно туда сюда болтаться.

          Гистерезис увеличить ещё больше может?
            0
            К сожеланию бессмысленно. Выше 800 — уже считается не комфортная для существования зона.
            А ниже 750 проветривать тяжело и бессмысленно.
            Дело в том, что зависимость нелинейная и если для проветривания с 800 до 750 требуется 10-15 минут, то с 750 до 700 уже 30 минут. При этом «надышевается» обратно очень быстро, может пару-тройку минут выиграете.
              +1
              так может у вас просто большие проблемы с вентиляцией в доме? Окно — это хорошо, но должна быть и естественная вентиляция через «естественные щели».
                0
                Естественно я борюсь по возможности с «естественными щелями». Поэтому активную вентиляцию и сделали. :)
            0
            Тут суть в том что нужно управлять не окном, а потоком поступающего воздуха. Если открывать окно, то поток слишком большой. Конечно проветрится за более короткое время, если ранее не проветривать вообще. Но если поддерживать режим, то конечно это энергетически не выгодно.
            Можно, например, просверлить в раме вентиляционные отверстия и открывать их по одному, регулируя тем самым поток поступающего воздуха. Или вообще сделать отверстие длинным и сплошным и к нему сдвижную заслонку, со штифтом на винтовой передаче, управляемый шаговым двигателем. Если уровень CO2 увеличивается, открыть заслонку больше, если уменьшается закрыть чуть меньше, все ближе и ближе к баллансному одному положению для такого количества людей в комнате. Меньшие изменения — более тонкая настройка.
            Пределом может служить пропускная способность вент каналов в кухне и ванной. Но для этого нужно принимать во внимание щели под межкомнатными дверями и вентиляционные отверстия в двери в ванную и кухню (которых у многих вообще нет).
            0
            Относительно нормальные датчики CO2, c которых можно получить количество ppm, к сожалению, даже в китае стоят от 2.5 тысяч. В принципе, можно и купить, но я б не стал, пожалуй. Хотя зарплату повыше, и купил бы)
            0
            Во сколько обошелся проект?
              0
              Сейчас точно подсчитать не смогу, думаю где-то 2000 — 4000 рублей
              +2
              Окно в закрытом состоянии не сквозит? Обычно требуется прилагать достаточно большое усилие, чтобы плотно прижать форточку к раме.
                0
                Прижать плотно — это действительно проблема, но говорить что сквозит я бы не стал.
                +2
                Еще вопрос про окно: сильным порывом ветра не оторвет всю удерживающую конструкцию?
                  0
                  Не было сильного ветра чтобы проверить, но проверял дергая окно за ручку — держится довольно неплохо.
                  +3
                  Не верю, что Arduino Leonardo не справилась бы одновременно с управлением индикатором напрямую и управлением двигателем.
                  Кроме того, есть специальные переходники I2C-HD44780.
                  Интересно, чем обусловлен выбор контроллера в PLCC корпусе?
                  И пунктуацию статьи нужно поправить — читать тяжело.
                    0
                    Думаю что Леонардо сможет справиться с этими задачами, но я специально придерживался модульности т.к. планируется увеличить функционал устройства — чтобы каждая задача (вывод информации, вывод времени) выполнялась в своем куске железа/программы и в центральном управляющем контроллере о мелких нюансах не задумываться, тут же экономия пинов, памяти и уменьшения ошибок программного обеспечения. Переходник лишь меняет интерфейс — а модуль занимается инициализацией, соотношением символов кодировки с ком порта на кодировки ЖКИ, инициализация новых символов, ограничения по размеру окна ЖКИ. Выбор контроллера в PLCC корпусе обусловлен его наличием на тот момент))
                      +2
                      Один мой знакомый утверждает, что ардуина — это стрельба из пушки по воробьям.
                      Не могу похвастаться достаточными знаниями по электронике чтобы поддержать или развенчать это утверждение, но предположу что вся эта контроллерная история имела целью не только решить задачу просто и эффективно, а скорее попробовать всяких разных штук и поиграться с волшебными коробочками и проводочками :).

                      PS: а нано-умный дом это новый супер-тренд, можно хоть сейчас продавать в Сколково
                        0
                        На первую часть сказал бы «На вкус и цвет товарища нет» — кто как хочет/может тот так и делает вопрос чисто филосовский!
                        По поводу P.S. — с Вашей легкой руки буду считать себя правообладателем нового трендового словосочитания «нано-умный дом»)))
                          +1
                          Да я ж не спора ради, наоборот поддерживаю версатильность подходов к проблеме.
                          К стати, про модульность не подумал до Вашего комментария, но идея мне нравится. Когда (если) буду что-то железячить, постараюсь её вспомнить.

                          Когда начнете загребать миллиарды с нового тренда — приду за отчислениями))
                          +2
                          ардуина — это стрельба из пушки по воробьям
                          Так-то оно так, но, nano можно купить за 300 р. — его хватит, за глаза, для кучи задач. В комплекте идёт IDE — да, говённая, зато запускается сразу, без регистрации и СМС, на любой платформе.
                          По мне так идеальная штукенция для поделок «на коленке».
                            +2
                            а можно и еще дешевле, если взять у китайцев впрок. Попадалось мне, пак 5 нано по цене что-то около 6-7 долларов у хорошего продавца. Так что на тысячу рубликов можно закупиться довольно-таки прилично, даже с текущим курсом.
                        0
                        А что это у вас за такой блок питания? Покупной? Или откуда-то снят?
                          0
                          Блок пинтания на Ali покупал рублей 300 стоил, покупал 2 штуки но ими страшно не доволен, быстро выходят из строя (гуляет напряжение)
                            0
                            В статье написано «нашел подходящий корпус, приобрел блок питания на Ali».
                              0
                              приобрел блок питания на Ali

                              Вот же
                              0
                              Прикольно, жаль со стеклопакетами работать не будет, там ручку нужно поворачивать.

                              Вот вам мысль на доработку — датчик CO2 добавить, и впускать свежий воздух, когда концентрация повышается до не комфортных уровней. Ибо CO2 на нашу умственную деятельность влияет гораздо хуже, чем повышенная температура :)
                                0
                                Датчик CO2 это конечно хорошо, но вот стоимость на него хороша))
                                  0
                                  mq-125 стоит условные сто рублей
                                    +1
                                    Не нашел информации о таком датчике — мне сомнительно что он будет нормальным, может ссылкой поделитесь?
                                0
                                Для пластиковых окон есть готовые механизмы, к примеру цепной.
                                  0
                                  А можно ссылку?
                                  0
                                  достаточно сделать редуктор и взять моторчик помощнее. Ну и конечно механизм ручки отрегулировать и смазать от души тефлонкой. После этого открывать и закрывать окно можно мизинцем левой руки, совершенно не напрягаясь ;-)
                                    +1
                                    Погуглите «климатический клапан для пластиковых окон»
                                    Вырезается кусок уплотнительной резинки сверху откидного окна, прикручивается такая штука. Шторку открывать-закрывать можно вручную. Даже при температуре -30 шторку еще ни разу не закрывал при нормально работающем отоплении. В комнате всегда свежий воздух. А при жаре все равно спасет только кондей.
                                    +1
                                    Если жарко, то надо отрегулировать батареи (источник тепла).
                                    Если не помогло, то наладить вентиляцию.

                                    Открывать окно рациональнее не по температуре, а по концентрации СО2.
                                      0
                                      Впечатляет…
                                      Особенно впечатлился разнице между макеткой и готовым устройством, как в корпусе все аккуратно уложено, проведено и разъем этот синий сзади для проводов… Прям восторг :)
                                      А в видео двигатель громко так работает, это эффект записи или правда громко? По ночам не будит?
                                        0
                                        Да двигатель работаетдовольно громко но быстро привыкаешь (ночью не просыпаюсь),
                                        0
                                        А если термореле на транзисторе? или компараторе
                                        а что бы ночью не открывало фотореле
                                        ну или термостат врезать в батарею
                                        ведь получился целый компьютер для открывания форточки
                                          0
                                          Батареи не регулируются, к тому же проветривать (и ночью в том числе) все равно нужно. Автоматизация на «термореле на транзисторе» стандартная логика получается, я запланировал делать проветривание по времени с ориентациией на температуру, к тому же у меня теперь есть часы (которые не нужно подводить если вдруг пропало питание).
                                            0
                                            терморегулятор для радиатора отопления сейчас глянул от 900 руб.
                                            проветривать ночью — может быть шум — кому как, я только в ..+30… на ночь оставляю
                                            • НЛО прилетело и опубликовало эту надпись здесь
                                              0
                                              да ещё и на 8 платах (текстолитенах)!
                                              +1
                                              Для внутренней коммуникации между девайсами можно было использовать UART, тогда можно запросто выбросить преобразователи RS-232, а для связи с компьютером использовать… ESP8266. Если уж делать интерфейс под ЖК почему бы тогда не использовать 128x64 ЖК индикаторы? И шрифт можно покрупнее, и с подсветкой кстати…
                                                0
                                                Проделанная работа заслуживает уважения!

                                                Так как сам занимаюсь вопросом вентиляции, позволю себе дать несколько советов на будущее:

                                                термодатчик имеет смысл физически удалить от окна. Иначе проветриваться будет только область вокруг окна;
                                                жарко не из-за вентиляции, а из-за адски топящих «чугуниевых» батарей с нерасчётным (больше, чем надо на комнату) количеством секций. Себе на чугунные батареи поставил краны, закрываю, когда жарко;
                                                открытое окно в большом городе – зло. Шумно и грязь летит;

                                                Но вентилировать надо. Так что автор – молодец.
                                                  0
                                                  Спасибо, Шумно и грязь — это все понятно, но свежий воздух он все равно нужен.
                                                    0
                                                    против грязи и немного от шума сделал как-то себе на окно (деревянная рама со стеклопакетом) снаружи раму, по размерам она как створка, по периметру имеет резиновые прокладки для герметизации, закрыта стеклом, а внизу часть площади этой створки через перемычку отделена под фильтр воздуха примитивный, между двух решеток вентотверстий из магаза вставил пылесосный фильтр грубый. Стало очень чище! (1 этаж прям на дорогу) И можно открывать окно надолго, поток воздуха не такой мощный и не дует. А стекло не снижает светопропускание.
                                                    0
                                                    Я вот тоже думаю, Ардуина бы вполне справилась, кстати — можно было бы заюзать Малинку с тачскрином. Что за микроконтроллер Atmel в PLCC?
                                                    0
                                                    Честно говоря не понимаю подхода с проветриванием. Для себя я просто один раз с датчиком CO2 отрегулировал проветривание в квартире так, что бы в обычных режимах использования не было высоких концентраций углекислого газа. Неделю потратил.
                                                    С тех пор больше проветривание не трогал. Дополнительная регулировка достигается дверьми: если нет никого в комнате — дверь закрываешь, меньше тепла уходит. Теперь дома тепло, никаких сквозняков и всегда свежий воздух. Конечно, если много гостей приходит, то приходится приоткрывать окно. И плита электрическая, с газовой, конечно, сложнее.
                                                      +1
                                                      А каким образом регулировали проветривание?
                                                        +1
                                                        Регулируемая щелевая вентиляция сверху пластиковых окон.
                                                        Хотел поставить на кухне вентилятор в вытяжку с регулировкой от датчика CO2, но необходимости нет. Причем на кухне приточная вентиляция вообще закрыта наглухо — хватает приходящего воздуха из комнат, без какого-либо вентилятора.
                                                      0
                                                      Откройте для себя бризер
                                                        0
                                                        Это если вытяжка нормально работает и денег на подогрев не жалко.
                                                        Киллер-решение – системы вентиляции вроде Lossnay, с притоком-вытяжкой и рекуператором.
                                                          +1
                                                          Бризер — круто, но не дёшево. Можно поставить недорогой приточный клапан вентиляции и наколхозить к нему моторчик и датчики. Датчики примастрячить где нибудь на расстоянии 2-3 метров и общаться с ними по радио.
                                                          +2
                                                          Механизм открытия фундаментален!
                                                            0
                                                            А если за окном дождь в сторону окна идет? Не будут капли попадать внутрь помещения?
                                                              0
                                                              Будут. В принципе проветривание идет недолго поэтому это будет не так страшно. Если вдруг Вы утром перед уходом на работу откроете окно и только вечером его сможете закрыть, тут думаю проблем будет больше.
                                                              0
                                                              Для измерения температуры проще и точнее будет использовать датчик DS18B20. Совокупив его с Arduino Pro Mini, все, окромя силовой части, вместится в спичечный коробок.
                                                                0
                                                                Подскажите, где можно посмотреть подобные самодельные проекты со схемами и исходными кодами.
                                                                  0
                                                                  Попробуйте поисковиком со словами «ардуино своими руками», мне не часто встречались сайты с самодельными проектами.
                                                                    0
                                                                    ищите как «что-угодно „+ “ на ардуино».
                                                                    0
                                                                    На месте автора, я бы изучил тему обратного клапана для вентиляции. Это куда более правильный способ вентилирования помещения.
                                                                      0
                                                                      Я не делал систему вентиляции, и я сомневаюсь что сам по себе обратный кланпан для вентиляции решит проблему вентиляции!
                                                                        0
                                                                        Открытое окно — это тоже вентиляция, только естественная и не самая лучшая, хотя бы в плане того, что если у Вас в комнате взрослые люди или еще того хуже дети, то из-за потока холодного воздуха их может продуть, да и в помещении с открытым окном банально становится холодно + в открытое окно может прилететь все что угодно. Вариант с обратным клапаном + простой вентилятор позволяет контролировать процесс проветривания, хотя в чистом виде это не спасает от сквозняка, для этого нужно ставить еще фильтр, который как раз спасет комнату от попадание частиц пыли, насекомых, пуха и прочего мусора, для 1-3 этажа это очень актуально.

                                                                        Знакомые поставили у себя над батареей вот такую штуку, вроде остались очень довольны, никаких сквозняков, шуму и насекомых + её можно автоматизировать с минимальными переделками.
                                                                          0
                                                                          Давайте не путать вентиляция и систему вентиляции, сомневаюсь что можно контролировать без какой либо автоматики вентиляцию помещения с помощью «обратного клапана + простой вентилятор». Я не сколько не возражаю если вы в своем проекте будете применять обратный клапан с вентилятором, мне этот вариант не подходит.
                                                                      0
                                                                      Открыть окно лень, а разработать такую штуку нет?
                                                                        +1
                                                                        Так такую штуку раз разработал и потом можно не работать. А без неё постоянно придётся бегать окно открывать-закрывать.
                                                                          0
                                                                          Разрабатывалась эта штука естественно не потому что просто лень открывать окно, иногда нет возможности открывать окно — ночью когда спишь или ушел на работу, система сама будет это делать контролируя время и температуру проветривания, не создавая постоянных сквозняков.

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

                                                                        Самое читаемое