↑ К новым записям

8 марта 2026

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

На этот раз начал заниматься контроллером в прихожей. Сначала просто хотел прошить в него базовую болванку, чтобы убедиться, что все работает. Но тут начались трудности. Почему-то он ни в какую не прошивался - писал, мол ошибка контрольной суммы и все. Я несколько часов над этим колдовал. В какой-то момент пришла в голову мысль, что надо попробовать прошить его не с макбука, а чего-то другого. Поскольку под рукой особо ничего не было, подключил я его напрямую к orangepi, установил все необходимое на него, и попробовал прошить. И о чудо, все заработало. Оказалось, что в драйвере ch343 на макбуке есть баг. Причем, на других моих контроллерах стоятл ch340, и с ними проблем не было. А тут вот стрельнуло с контроллером от WB.

Потом я писал базовый код хотя бы для того, чтобы начать получать данные с датчиков. Сейчас вот закончил для датчиков в прихожей. И, все работает. Правда заработало оно не сразу. Тоже пришлось попотеть с rs485. К чипе что стоит в этом контроллере используется rts пин, который надо дергать в определенное время, а я не сразу разобрался как его правильно передать в мои библиотеки.

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

4 марта 2026

Почти закончил со шлифовкой стен. Были места, которые нужно было еще чуть-чуть подмазать. Завтра дошлифую их и думаю будет норм.

Займусь уборкой (надо пыль пропылесосить с пола и стен) и загрунтую. И можно будет финальные слои наносить.

3 марта 2026

Все продолжаю заниматься контроллером отопления.

Заметил интересный момент: если клапана всех радиаторов перекрыты, то котел начинает работать как сумашедший. Включается на 10 секунд, отключается на 10 секунд, и так по кругу. Вроде очевидное поведение, когда радиаторы все не работают, да :) Но в то время я об этом что-то не подумал.

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

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

Так же изменил алгоритм выбора температуры котла по температуре на улице. Решил использовать кривую, которую обычно имеют котлы с погодозависимой автоматикой. Взял аппроксимацию одного товарища. У него конечно другой котел, но разницы тут никакой. Разве что в одном котле алгоритм может быть лучше, в другом - хуже. Надеюсь, что в его котле норм алгоритм :)

Сделал табличку в экселе, где можно меняя параметры наблюдать за изменением кривой. Пока остановился на таких коэффициентах. Думаю придется еще их подтюнить. В идеале мне нужно подобрать коэффициенты так, что в самой холодной комнате температура всегда будет соответствовать уставке, и клапан там будет открыт на 100%. А другие комнаты уже подстроятся и прикроют свои клапана, чтобы там жарко не было.

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

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

1 марта 2026

Эта неделя чет получилась какой-то чисто айтишной. Только код писал, и чуть-чуть делал по электронике.

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

В итоге я многое сделал, что планировал сделать уже больше года. Наверное самое крупное и ожидаемое - сбор логов с контроллеров.

Было конечно не так просто, как казалось изначально. Сначала оказалось, что логи в arduino framework сделаны через задницу, и функцией esp_log_set_vprintf их не перехватить. Пришлось делать свою небольшую реализацию. Затем я решил использовать file.d, а не писать с нуля конвертер. Все из-за того, что внутри file.d была обещана интеграция с loki. Поэтому у меня план был написать только парсер логов формата esp32 для file.d, ну а отгрузка в локи должна быть стандартной. Оказалось, что выгрузка в локи сделана там через жопу, и пришлось ее править.

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

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

И еще перевел все контроллеры на хранение времени в int64. Раньше у меня была проблема, что у контроллеров начиналось неожиданное поведение через 43 дня, когда происходило переполнение таймеров. Были варианты, либо модифицировать работу с временем, чтобы переполнение тут не влияло, либо же перейти на int64. Я так подумал, что так и так нужно многое рефакторить. Но в случае перехода на int64 нужно только заменить одну функцию на другую, и константы интервалов умножить на 1000. И в итоге переполнение будет только через 200 тыс лет. Меня устроил вариант что проще, т.е. второй. Итого, проблема 43 дней моим контроллерам больше не страшна, что не может не радовать :)

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

Еще сегодня я установил контактор для насоса теплого пола. И код для управления им написал. Алгоритм тут очень простой: если отключилось отопление и прошло 2 минуты, то отключаем насос. Иначе - включаем.

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

Установил датчик температуры теплого пола, а так же датчик климата. В этой комнате он будет без корпуса, и пока я закрепил его вот так. В будущем там будет стоять шкаф, а он будет встроен в один из фасадов. Это временное размещение.

Так же установил датчик присутствия и проложил кабели до щитка. А в щитке прикрутил дин рейку и поставил на нее все модули, что думаю будут в будущем рулить прихожей и гостиной.

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

27 февраля 2026

24 февраля 2026

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

Звук был такой, как будто по радиатору кто-то долбит перфоратором. Очень громкий и очень противный. Сначала он проявлялся только в кабинете. Потом начался детской и на кухне. В спальне при этом все было в порядке.

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

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

Оказалось, что на всех радиаторах подвод горячей воды у меня справа. А слева - обратка. Когда я ставил клапаны, я об этом совсем не думал. Стрелочки направления ж нет. И в разных комнатах они стоят с разных сторон, там где мне удобней было. В итоге не правильно стояли клапана на радиаторах в кабинете, детской, на кухне и один в гостиной.

С таким звуком жить точно нельзя, поэтому решено было вечером слить воду из системы отопления и махнуть клапана местами. Заблаговременно купил резинки под американки, чтобы поменять. В прошлый раз помню они были уже не очень, и из-за них текло. Клапаны и краны махнул местами в кабинете, детской и на кухне. В гостиной пока не стал. Там все замотано, да и пока не горит. Потом когда буду ставить обратно - поменяю местами. Придется конечно опять слить воду из отопления, но что поделать. Зато может будет тепло и отопление как бы не будет особо нужно.

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

Систему заправил водой, была небольшая течь на быстросъеме в кабинете. Там я замотался и забыл поменять резинку. Пришлось отсеть радиатор кабинета, слить с него воду, поменять резинку и собрать обратно. Теперь не течет 🙂

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

Обидно только одно - хотел сегодня стены продолжать шлифовать в гостиной. Даже специально весь день комнату грел электрическим обогревателем, чтобы тепло было (а то там сейчас +10). Но, пришлось резко изменить планы 😭

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

23 февраля 2026

Привезли сегодня генератор. Ух он и тяжеленный. Спасибо соседу, помог его дотащить до подвала и вытащить из коробки. Сам бы я наверное хрен это сделал. Разве что опять какие-то приспособления для этого изобретать.

Пока его бросили на маленький свободный пятачок, что удалось найти. Включать его еще не включал. Думаю сначала надо прибраться в подвале, а то места свободного совсем уже нет.

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

Но, я уже потестил, как его будет слышно в доме. И, никак не слышно. Это радует, можно наверное будет разрешить автоматике запускать его по ночам, в случае необходимости (аккумуляторы подзарядить).

И продолжаю писать софт для отопления. Точнее как писать, на данный момент просто баги пишу и немного меняю алгоритмы.

Уже запустил работу контроллера на 4 комнаты. По сути это все комнаты, в которых я данный момент хоть как-то могу управлять отоплением. Есть еще гостиная, но там сейчас нет радиаторов и регулировать собственно нечего. А остальные комнаты с теплыми полами, поддержку теплых полов я пока не добавлял (да и аппаратно сервоприводов на коллектор еще нет), так что пока без них.

Сейчас эксперементирую, подбираю коэффициенты для PI регулятора. В идеале хочу добиться, чтобы температура в комнате быстро выходила на уставку. И потом было минимум скачков. Пока получается так себе :) Думаю нужно больше данных собрать, чтобы понимать в какую сторону и на сколько нужно крутить.

Но, наконец-то не буду в кабинете днем мерзнуть, когда жарит солнце 🥳

22 февраля 2026

21 февраля 2026

Продолжаю заниматься водопроводом. Сегодня перебрался в подвал.

В планах не было ничего особенного - только установить части необходимые для автоматики.

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

Так же установил водяной счетчик с импульсным выходом. Поставил я его для того, чтобы понимать, сколько дом расходует воды. Многие наверное могут вспомнить что у меня уже один есть и спросить - зачем второй? А все просто. Вода у меня будет не только из водопрода. А так же из мини скважины в подвале и из емкости для дождевой воды. Так что, тот будет чтобы просто понимать сколько потратили из водопрода, а этот будет показывать какое полное потребление дома и двора было.

Установил так же электрокраны. Один будет включать наполнение бочки, второй для включения байпасса. Нужно это для того, чтобы бочка могла наполняться не только водой из водопровода, но так же из других источников. Там будет некоторая логика, про которую расскажу как-нибудь в другой раз.

И подготовил место, куда будет подключаться датчик давления водопровода. Сначала я хотел в двух местах ставить датчики давления, но потом вспомнил, что целевой регулятор давления который я хочу купить, он умеет информацию о давлении отдавать по rs485, и смысл во втором датчике теряется. Поэтому хватит одного датчика. Можно будет в автоматическом режиме переключаться с насосной станции на обычный водопровод, если там давление вдруг высокое. Чтобы зря электричество не тратить.

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

Как все подключил, затестил. Все круто, водичка набирается :) Вода в моем дренажном колодце очень чистая. Дебет конечно небольшой, где-то литров 100 в сутки. Но, воду эту нужно куда-то откачивать и я решил, что лучше пускай идет на бытовые нужды. Как раз будет немного экономить на воде из водопровода.

Хотел сегодня и электрической частью заняться, но оказалось, что тот контроллер что я покупал сто лет назад совсем под другие нужны, он rs485 не поддерживает. А тут он жизненно необходим. Датчик уровня по rs485 работает. И модуль который будет сигналы с датчиков 4-20 мА преобразовывать в нормальный цифровой вид - тоже.

Поэтому пришлось заказать новый, подходящий под это дело контроллер. И придется теперь ждать, пока все придет(

Но, не страшно. Я как раз сегодня почти все проблемные места устранил в контроллере отопления. Сейчас софт нормально стартует и не падает. Правда, пока только на тестовой esp'шке. Чет я очкую на ночью глядя заливать код на продакшен и иметь риск остаться ночью без отопления. Поэтому в боевых условиях испытания будут завтра 🙂

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

Думаю завтра что-то придумаю. Что именно - пока не знаю, но надеюсь найду решение.

20 февраля 2026

Занялся я таки доделкой водопровода. Начал с того, что наконец-то перенес электрический кран на трубу, которая идет из подвала в коллектор. Т.е. теперь при перекрытии воды, например при протечке, вода будет перекрываться именно поступающая в дом, а не в бочку.

Было немного гемморойно. Не из-за самого процесса, а потому что я в процессе потерял прокладку на быстросъеме счетчика. Убил кучу времени на ее поиск. Потом увидел, что единственный работающий магазин почти закрылся и полетел туда. Успел за 5 минут до закрытия. Купил аж 10 прокладок. И они не подошли - слишком маленькие. Ненавижу все эти водопроводные дела. Написано 1/2 дюйма, берешь прокладку на 1/2 дюйма а она нихрена не подходит.

В итоге я все же нашел ту которую потерял. Но потратил на это 2 часа. Но радует, что не пришлось до завтра сидеть без воды. Все собрал, запустил воду, ничего не течет. Идеально.

Как закончил с водой в доме, оставалось немного сил и я пошел пошкрябал шпателем по стенам. Посбивал всякие выступающие части. Зачистил вокруг подрозетников. И подшпаклевал это все.

Думаю завтра вечером с остальными стенами так же сделаю. А днем займусь установкой автоматических приводов на водопровод в подвале. Хочу там управлять наполнением бочки и переходом на байпас. Я так же сегодня закупил два датчика давления, придут они правда только в понедельник, но я заранее сделаю для них места для установки и закрою заглушками. А потом просто вкручу их и подключу к контроллеру.

загрузка…