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

18 января 2025

Привет, надеюсь у вас отключены уведомления :)

Короч, вчера (хотя формально уже позавчера) чет мне было скучно и я решил, что пора бы сделать подсветку в полочке. Собственно, все необходимое для этого я купил еще в прошлом году, нужно только доработать да установить. Начать стоило с блока питания. Приобрел я его с рук у проверенного камрада, только есть одно но - он на 12 вольт. А ленты то у меня 5 вольтовые. Регулировка напряжения на нем есть, но, она в небольшом пределе и больше как подстройка, чем регулировка. 5 вольт с ее помощью не получить. Значит, нужно дорабатывать блок питания. Так как же изменить выходное напряжение практически на любом блоке питания? Все очень просто. Правда, нужно немного понимать в схемотехнике. Но я вам сейчас поверхностно расскажу.

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

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

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

После я измерил параметры подстроечника, второго плеча делителя, померил напряжение которое приходит на обратную связь при нулевой ошибке (оказалось 2.5 вольта), рассчитал какой должен быть резистор вместо текущего постоянного. Оказалось, что нужно чтобы он был 600 ом. Таких у меня конечно нет. Но, если вспомнить физику, подключенные резисторы параллельно будут не увеличивать сопротивление а уменьшать. Собственно, если я параллельно к нему припаяю резистор на 1 кОм, то итоговое сопротивление 2х резисторов окажется около 600 Ом. То что доктор прописал. Запаял, включаю, замеряю напряжение, а на выходе у меня в левом положении подстроечника 16 вольт, если крутить вправо то доходит до 24 вольт, и в принципе можно было б еще больше наболтать, правда я не стал, потому что конденсаторы в блоке питания установлены на 25 вольт. Мда, чет где-то я наебался в расчетах :)

Проверил еще раз расчеты - все правильно. Значит, схема влияет на измеряемые сопротивления. Выпаял постоянный резистор, замерил его сопротивление, и так оно оказалось. При замере на плате его сопротивление было 1.7 кОм, а в выпаяном виде 2.1 кОм. Вот и проблема.

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

В чем суть: раз я уменьшив сопротивление резистора поднял напряжение, значит для его понижения нужно сопротивление увеличивать. Решил бахнуть сразу на 5 кОм резистор. Запаял, включил. 7 вольт напряжение. Уже близко, но надо еще чуть-чуть.

После запаял резистор на 7.5 кОм, включаю, и о ес о да - на выходе 5.2 вольта. То что мне нужно. Их я и оставил. Собрал блок питания обратно и принялся за его установку.

А на фото - доработанный блок питания.

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

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

А после занялся подключением ленты и блока питания. В тот день я подключил почти все соединения, кроме питания блока питания от 220. Было уже поздно, хотелось спать. Конечно, я бы мог по быстрому подключить, но не понятно было как поведет себя это все. Вдруг я своей корявой в неудобном пространстве пайкой устроил кз, или лента на профиль коротит. Вдруг оно все полыхнет и придется с этим разбираться. А я спать хочу.

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

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

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

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

Чуть позже начну уже более адекватный код. Пока что я хочу сделать следующее:

1. Прокинуть освещение полочки в HA, чтобы можно было включать/выключать а так же управлять яркостью и выбирать определенный цвет

2. Хочу написать анимацию при включении и отключении. Собственно, ради этого покупалась именно адресная лента, чтоб не просто включалось, а прям уж вух :)

3. Еще хочу бахнуть простенькую автоматизацию, которая будет подсветку по ночам включать красным. Чтобы можно было в туалет нормально в темноте ходить и не будить себя.

Такие вот планы, надеюсь скоро их реализую.

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

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

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

15 января 2025

Привет 👋

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

Сначала накинул кросс модуль на рейку. После поснимал все текущие провода и подключил их уже через кросс модуль. Получилось, что первая шина у меня это фаза, затем ноль, после +12 и наконец земля. Можно было б наверное объеденить землю и ноль, но, лучше не надо. Во первых у меня просто вилка вставляется в розетку, и если вдруг на земле окажется фаза 220, контроллер и СКАТ это точно не переживут. Так что, лучше не рисковать

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

После кабели и провода стянул стяжками и постарался более-менее уложить. И в итоге получилось вот так (3е фото). Конечно не пик кабель менеджментского искуства, но, зато хоть и не клубок валяющийся на дне шкафа :)

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

14 января 2025

Кажется, я пофиксил проблему с подсчетом расхода воды. Заценить можно тут: https://github.com/lan143/navier/commit/7c1c6647900e8ee8b0bde137e6d8f843135dd3c0

Собственно, как я это сделал. Я решил, что зачем изобретать велосипед, пойду да посмотрю как это делает Ватериус. Благо он опенсурс. В коде его конечно черт ногу сломит. Особенно не очень хотелось курить даташит по attiny85 чтобы понять что там происходит (ибо по коду там вовсю всякие регистры процессора юзаются). Поэтому я решил погуглить, вдруг есть какое-то описание его работы на хабре. И таки я нашел, вот эту статью: https://habr.com/ru/articles/418573/ Судя по всему она была написана еще на первых версиях Ватериуса, когда он не поддерживал всякие намуры, и реализация считывания данных с счетчика там просто гениальная: просто каждые 250 мс проверяем состояние пина. Если он притянут к земле, то еще раз проверим через 250 мс (вдруг словили наводку), и если он так же притянут к земле, то считаем что замкнулся геркон в счетчике и плюсуем 10 литров. Блин, почему я до такого не додумался) Я начал изобретать с прерываниями и все такое. Случился короч оверинжиринг.

Дальше читать не стал, идея понятна, осталось реализовать. Я сразу доработал идею, что когда мы плюсуем 10 литров, после блокируемся до следующего поднятия пина на плюс питания. И тут возникает интересная ситуация: если вдруг счетчик остановился в момент когда геркон замкнут, и потом случилась перезагрузка контроллера, то после загрузки флаг блокировки сбросится и мы опять приплюсуем 10 литров лишние. И так будет каждую перезагрузку. Сначала я подумал, что ну чо там, редкое событие. Но, когда отлаживал код, у меня счетчик как раз встал на показании 0 литров, и каждую перезагрузку у меня было +10 литров)) Штош, надо пилить сохранение флага))

Решил сделать по простому: когда записываем показания в кольцевое хранилище, к текущим значениям выставим 1 самый левый бит в 1, в случае если есть блокировка. Затем, когда блокировка была снята, запишем еще раз значение в кольцевое хранилище, но на этот раз без крайнего бита в 1. Далее при загрузке мы можем восстановить информацию о блокировке и не делать +10 литров. Идеально вроде. Это я собственно реализовал, проверил, все отлично работает.

Кто-то может сказать, что, ну мол, ты ж теперь сможешь меньше кубов воды хранить. Но, спешу вас обрадовать - для хранения показаний у меня используется переменные типа uint32, а это 32 бита. Один бит мы отдали под флаг блокировки, получается что для показаний у нас осталось 31 бит. Максимальное значение, что мы сможем туда сохранить, будет 2 в 31ой степени - 1. А это: 2147483647 литров, или 2147483 кубометров. Что-то мне подсказывает, что такого хранилища хватит не только до конца жизни esp32 (в которой флешка сдохнет спустя 100к перезаписей) но и до конца моей тоже.

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

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

Еще вот сегодня СКАТ и контроллер повесил на стену в щитке. Сначала сделал разметку и просверлил отверстия. Делать это было конечно не очень удобно, там толком не развернешься, всего 15 см внутри из доступного пространства. Но кое как я это сделал, и с виду как будто ровно.

Затем навесил СКАТ и прикрутил рейку, на рейку поставил контроллер. А за ними потянулся вот такой не красивый клубок проводов и кабелей. Я попытался кое как его распутать (3е фото), но идеальный кабель менеджмент я устрою уже наверное завтра. А все потому, что завтра должен будет прийти кросс бокс, в котором я собственно и сделаю разводку. И думаю с этим щитком на время можно будет закончить.

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

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

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

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

13 января 2025

Привет. Апдейты по контроллеру, что я вчера запилил.

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

Как видно, ватериус отправляет данные 2 раза в сутки. Можно конечно сделать чаще, но, тогда батарейки будут быстро разряжаться. Да и чаще чем раз в час вроде все равно не сделать.

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

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

Из проблем: до сих пор есть ложные срабатывания. Сегодня утром откручивал показания чуть назад, чтобы счетчик не опережало. И сейчас тоже это сделал. За пол дня получается убежало вперед на 260 литров, или было 26 ложных срабатываний. Это конечно печально, надо думать как это пофиксить.

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

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

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

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

После прочистил от клея отверстия для дюбелей, установил дюбели, установил вытяжку, подключил кабели и собрал. Готово :)

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

Вытяжку то я поставил, правда она встала не совсем ровно. Все дело в том, что я трубу ставил с наклоном в сторону улицу, чтобы конденсат вытекал на улицу а не в дом, поэтому в нижней части вытяжки есть небольшой зазор до стены. Нужно будет потом с ним разобраться. Идея у меня такая: я с улицы дую в трубу феном, как только труба достаточно нагреется и размягчится, жена выставляет вытяжку ровно, при этом слегка изгибая трубу, потом затягивает саморезы. Уклон нарушен не будет и не будет этого противного зазора. Но, это потом. Мне надо лестницу для начала купить. А то снаружи дома труба вытяжки находится где-то в 4-5 метрах от земли.

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

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

После занялся зачисткой швов от остатков клея. Успел за сегодня пройтись 2 ряда плитки по кругу, ну и все пока. Дите спать уложили, чищу швы я дремелем, а он шумит, так что дальнейшая очистка швов переносится на завтра.

12 января 2025

Исходники пуляю вот сюда: https://github.com/lan143/navier

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

Фух, привет еще раз :) Уже запилил контроллер в прод, так что могу рассказать про него.

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

Решил что писать буду на своей платформе а не на esphome, программист я или кто :) Поэтому набросал по быстрому своих модулей в пустой проект, решил прошить и посмотреть как оно будет, а не тут то было - питание через usb оказывается не подается, нужно внешнее питание. Свободных блоков питания на 12 вольт под рукой не было, так что я сразу подключил к СКАТу, заодно убедился, что он тоже в порядке. И после этого прошивка пошла.

Начал разбираться с модулем ethernet, что там есть. Разобрался с библиотеками, написал свою обертку которая пробует подключиться по кабелю к сети, если не получилось - тогда wifi. Если и с ним не вышло - ну тогда поднимаем hot spot, что уж делать. После парился с библиотекой discovery под HA. У меня в голове уже давно выработалась примерная архитектура, какой она должна быть. Начал ее реализовывать. Были баги, куча отладки. По итогу вчера уже ночь у меня получилось ставить плату щелкать релюшками через Home Assistant.

А сегодня с утра принялся уже за написание счетчика. Тоже все пошло не сразу, но к обеду что-то кое-как работающее написал (что вам показывал в кружочках выше). Решил, что сейчас по быстрому установлю и пойду другими делами заниматься. Но, внезапно как контроллер оказался в туалете, он начал сходить с ума :) Счетчик считал сам собой без остановки. Я подумал что наводки какие-то, но нет. Щупал осцилографом, все вроде в порядке. А он считает и считает несуществующие литры. По итогу сделал небольшие костыли, которые вроде побороли эти спонтанные срабатывания. Странно конечно, вроде на контроллере все подтяжки есть. Да и осцилографом смотрел, чего-то критичного не увидел. Возможно особенности срабатывания прерываний в esp32. У меня изначально стоял RASING, т.е. поидее прерывание должно было сработать при изменения уровня сигнала на входе с LOW до HIGH. Но похоже, оно срабатывает не просто от 0, а если следующий уровень был чуть больше предыдущего. Хотя странно, на столе все работало норм...

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

Расположил я СКАТ и контроллер внизу, провода по классике болтаются посреди ящика. Ну, пока вот так. Мне чтоб на стену повесить надо дин рейку купить, а так же кросс модуль (а то оказалось, что в контроллере для земли ток один пин). Попозже как куплю все недостающее, повешу как-нибудь на стену. Как-нибудь - потому что не представляю как я там буду стену бурить чтобы закрепить это все.

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

А вот так работает автоматизация с вытяжкой.

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

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

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

В подвале я кстати потихоньку навожу порядок. Начал заниматься этим еще на праздниках. Но вот не успел закончить.

Купил 3 стеллажа, уже даже собрал и частично их заполнил. Мало конечно 3 штуки, боюсь все на них не поместится :( Но, хоть так. Надеюсь к следующим выходным уже разгребу весь хлам в подвале и там станет немного приятней находиться.

Еще я тут на днях затащил мониторинг BMS от аккумуляторов в HA. В качестве контроллера - esp32nodemcu, которая у меня типо как тестовой, но уже стала чутка боевой :)

Подключается она к BMS пока через Bluetooth, зашито в ней esphome. Вроде работает, но частенько зависает и отваливается на пару минут. Потом опять включается. Уж не знаю в чем там проблема. Мне сейчас идет кабель с разъемчиком, чтобы подключать по uart (не захотел портить красоту и хочу на разъеме подключать). Так что, как он придет, подключу проводом и посмотрим будут ли еще отвалы или нет. Если будут - штош, придется свою прошивку писать. Не очень хочется ковыряться внутри esphome пытаясь понять из-за чего там виснет :)

ЕСПха пока подключена на usb порт сервера, питается собственно от нее. Как будет подключение по кабелю - питаться будет от BMS. Висит снаружи шкафа на кабеле потому что bluetooth внутрь шкафа не пробивает :)

И пришлось поставить роутер в подвал, потому что до wifi из дома не достает (90-100% потерь пакетов). Так что, поставил временно пока роутер что у нас был на съемной квартире. Его перенастроил в режим точки доступа, так что он просто wifi раздает и ничего более не делает. Надо заказать нормальную точку доступа в подвал, но, потом...

Кстати, тестировал тут на днях аккумуляторы. Отключил питание ИБП и поставил таймер на час. Через час включил обратно. Этот час дом успешно питался от аккумуляторов. И, вроде все в порядке. Напряжение на них не просело (значит емкость реальная), разбаланса тоже не случилось (значит ячейки более-менее норм). Так что вот, к следующей аварии на электросетях вроде как мы готовы 🙂

(на скрине кстати емкость не совсем правильная указана, так что остаточное время работы не 6 часов, а 12 где-то)

И это еще не все :) Полочку вот себе в кабинет собрал.

Купили мы ее в леруа еще в 21ом году, планировал разместить еще на съемной хате в пятигорске. Но, чет не срослось. В итоге она простояла все это время в упаковке в Цимлянске. И вот, наконец-то ее час настал.

Было еще много всякого мелкого. Как например - купил новый паяльный набор себе. Фильтр обратного осмоса еще купили, едет сейчас к нам из китая. И много всякого другого. Но, давайте про это все как-нибудь в другой раз, когда случай подвернется. Устал я уже чет печатать 🙂

загрузка…