Как стать автором
Обновить
-6
0

Пользователь

Отправить сообщение

ОбАСУчиваем дачу. От идеи к проекту

Уровень сложностиПростой
Время на прочтение8 мин
Количество просмотров2.5K

«Всё намного сложнее, чем кажется на первый взгляд.»

Закон Мерфи.

Дисклеймер: Автор абсолютно уверен, что все поставленные задачи можно было решить иным способом. Лучше, дешевле, умнее, креативнее… Но вышло так, как вышло. Собственно, автор придерживается точки зрения, что обАСУчивание дач — процесс творческий и субъективный: «Я художник, я так вижу». Вместе с тем автор способен также к объективному восприятию информации, а потому открыт для обмена мнениями и опытом, тем более, что творческий процесс продолжается.

Начало здесь.

Итак, «мозг» у нашей «ленивой автоматики» есть. Теперь нужно подобрать «руки и ноги», то бишь исполнительные устройства. Как уже писал выше, сначала думал о соленоидных клапанах. Очень заманчива их простота – подал напряжение, и клапан сработал, снял – вернулся в исходное состояние. Нужно всего два провода. И на первый взгляд таких клапанов на Али – море. Стоимость полдюймовых – чуть ли не от 300р. Исполнение, правда, незащищённое, но можно что-нибудь придумать. Однако почитав отзывы, пришлось отвергнуть этот вариант. Основная проблема – сильно греются. Пишут, что за 10 минут работы может нагреться до 60-70 градусов. Очевидно китайские братья сэкономили на обмотке. Для кратковременных включений оно ничего, но мне-то нужно чтобы клапан работал часами. Если клапан сгорит, а мы в отъезде, то заменить его будет некому, и дача останется без полива.

Потому пришлось переключиться на другой вариант – шаровой клапан с электродвигателем. В АСУ ТП такой называется MOV – motor operated valve. Для его работы нужно уже три провода – один на команду открытия, второй на команду закрытия, и общий. Таких тоже на Али много. Есть и двухпроводное исполнение, где обратный ход обеспечивается конденсатором. Но насколько надёжен такой конденсатор? В общем, решил не искушать судьбу, и взял трёхпроводные клапана, в защищённом исполнении. Работают от 12 вольт. Стоимость каждого - в районе 1200р. Купил три — поскольку выходов «открытый коллектор» у контроллера пять, два решил оставить про запас, в расчёте на будущие задумки и расширения. Но всё равно, хотя такой клапан и надёжен, хотелось бы контролировать – течёт через него вода или нет? Снова выручил Алиэкспресс. Там же нашлись полдюймовые дачтики потока. Стоят недорого, 130р., и отзывы, вроде, неплохие. Таким образом, стала вырисовываться общая схема – управляем насосом и тремя клапанами, расход через каждый клапан контролируем датчиком. В исходном положении все клапана открыты, по необходимости закрываем один или два.

Читать далее
Всего голосов 9: ↑11 и ↓-2+13
Комментарии9

Основные настройки для управления ресурсами в PostgreSQL: настройка памяти, CPU и I/O

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров6.8K

Привет, Хабр!

При работе с PostgreSQL (да и в целом с любой БД) важно правильно настраивать и управлять ресурсами, такими как память, процессорное время и дисковые операции, и так далее для обеспечения лучшей производительности и стабильности работы БД.

В этой статье мы как раз и рассмотрим кратко о том, как управлять ресурсами в PostgreSQL.

Читать далее
Всего голосов 13: ↑13.5 и ↓-0.5+14
Комментарии17

Полное руководство по безопасности GraphQL: Устранение 13 наиболее распространенных уязвимостей

Время на прочтение24 мин
Количество просмотров1.2K

Это 2024 год, и GraphQL на подъеме, чтобы стать важным игроком в экосистеме API. Это идеальное время, чтобы поговорить о том, как сделать ваши GraphQL API безопасными и готовыми к производству.

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

Читать далее
Всего голосов 4: ↑2 и ↓20
Комментарии3

Красавица и HTML Injection. Почему HTMLi не только про дефейс

Уровень сложностиСредний
Время на прочтение27 мин
Количество просмотров4K

Привет, Хабр. Сегодня мы посмотрим на достаточно тривиальную тему с совсем нетривиальной стороны. Пожалуй, для каждого вебера HTML-инъекции являются темой, которой зачастую уделяют не очень много внимания. Взять даже собеседования: когда в последний раз вас спрашивали не об XSS'ках, а об HTML-инъекциях?

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

Читать далее
Всего голосов 15: ↑15 и ↓0+15
Комментарии2

Блок питания на 5 выходов

Уровень сложностиСредний
Время на прочтение3 мин
Количество просмотров5K

Для своих электронных поделок я использую самодельный регулируемый линейный блок питания на 30V 3A. Он собран на базе конструктора с AliExpress, но я добавил несколько доработок от себя. У него неплохие характеристики в плане уровня пульсаций и шума, но всего один выход. Когда я начинал проект с операционными усилителями мне потребовалось двухполярное питание. Тогда я использовал два аккумулятора формата 6F22 "Крона", включённых последовательно со средней точкой. Это хорошее решение если вам не нужен большой ток или напряжение (у аккумуляторов формата 9F22 максимально можно получить 8.4V, а в номинале 7.4V). Ну и аккумуляторы приходится периодически заряжать.

Когда пришло время соединить аналоговую часть с цифровой, пришлось использовать ещё и регулируемый блок питания для получения +5V. Всё собиралось на беспаечных макетках и не было одного выключателя чтобы отключить все питания разом. Да и напряжение +7.4V и -7.4V с аккумуляторов бывает недостаточно для операционных усилителей. Чтобы не городить батарею из аккумуляторов 18650 я решил собрать простенький линейный блок питания на 5 фиксированных напряжений: +12V, +5V, +3.3V, -5V и -12V. Такие же напряжения выдаёт компьютерный блок питания, но там есть пульсации и шумы из-за импульсного преобразователя. Для аналоговой части это бывает критично, а фильтровать помехи сложнее нежели изначально построить линейный блок.

Читать далее
Всего голосов 15: ↑14 и ↓1+13
Комментарии43

Почему разработчики любят Kotlin

Уровень сложностиПростой
Время на прочтение3 мин
Количество просмотров9.9K

Привет, Хабр! Мы в компании Friflex запустили подкаст «Гости из IT». Вместе с экспертами из разных областей IT разбираемся в технологиях и обсуждаем, как они меняют нашу жизнь и работу. 

Сегодня размышляем про Kotlin. Почему его любят, обвиняют в сахарности и не могут заключить в рамки классического определения. Своими мыслями делятся эксперты по Kotlin: Александр Нозик, директор центра научного программирования и руководитель российской Kotlin-группы, и Александр Соколинский, популяризатор Kotlin в комьюнити разработчиков. А модерируют дискуссию блогер Алексей Гладков и Петр Чернышев из Friflex.

Читать далее
Всего голосов 11: ↑6 и ↓5+1
Комментарии22

Xiaomi Mi Thermometer 2 не только Bluetooth, но и ZigBee

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров73K

TL;DR: Да, можно программно изменить датчик для работы в сети Zigbee, достаточно по воздуху перезаписать прошивку.

Многим пользователям умного дома известен квадратный датчик температуры и влажности от Xiaomi LYWSD03MMC. Его очевидные плюсы — это LCD экран, подключение к системе умного дома MiHome и конечно же цена. Его без преувеличения можно назвать если не самым, то точно одним из самых дешевых "умных" датчиков, которые имеют интерфесы для подключения к умному дому. В данном случае это популярный bluetooth, который позволяет подключиться к датчику со смартфона и увидеть показания. Поэтому он завоевал своё место в сердцах строителей умных домов как дешевое и надёжное решение.

Читать далее
Всего голосов 91: ↑91 и ↓0+91
Комментарии152

Готовим микрофронтенды на чистом JS без фреймворков

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров7.8K

Привет, Хабр! Меня зовут Евгений Лабутин, я разработчик в МТС Digital. Сегодня я расскажу вам о своем рецепте приготовления микрофронтендов без использования каких либо фреймворков. Ведь такие фреймворки как Webpack Module Federation, Single-SPA, SystemJS и подобные вам просто не нужны для написания микрофронтендов, ровно так же как вам не нужен jQuery для написания современных фронтендов. Ведь все необходимое для разработки и работы Микрофронтендов уже встроено во все современные браузеры. Интересно? Добро пожаловать в статью.

Читать далее
Всего голосов 24: ↑18 и ↓6+12
Комментарии21

Ох уж эти CSS-переменные

Уровень сложностиСредний
Время на прочтение6 мин
Количество просмотров9.6K


Я люблю создавать компоненты везде и всегда, поэтому пользовательские CSS-свойства, также известные как CSS-переменные, являются одной из моих любимых фишек, которая позволяет писать более модульный код. При работе с ними я набил достаточно шишек, выпил литры чая и убил кучу времени. Теперь я «мастер», и хочу поделиться своим опытом.
Читать дальше →
Всего голосов 56: ↑56 и ↓0+56
Комментарии13

Знакомимся с @scope в CSS

Уровень сложностиПростой
Время на прочтение4 мин
Количество просмотров6.7K

В январе 2019 года я поднял вопрос в W3C CSS GitHub под названием Please bring back scoped styles. Когда-то существовал атрибут HTML scoped, но он был устаревшим. В CSS он был заменен на @scope. Поддержка должна появиться в Chrome 117. Safari так же занимает положительную позицию по спецификации.

У @scope есть два преимущества: стилизация на основе близости и установка нижней границы для селектора.

Читать далее
Всего голосов 6: ↑6 и ↓0+6
Комментарии0

Простое должно быть простым: Палки в разметку

Уровень сложностиСредний
Время на прочтение15 мин
Количество просмотров2.7K

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

А как быть тем, кто заходит в сияющий мир CSS лишь изредка - по необходимости?

(А еще под раздачу попадут React-либы MUI и AntD!)

Читать далее
Всего голосов 3: ↑1 и ↓2-1
Комментарии29

Основные принципы маскирования в CSS

Уровень сложностиСредний
Время на прочтение8 мин
Количество просмотров13K

В мире дизайна маскирование является популярной техникой реализации уникальных эффектов. Будучи дизайнером, я сам использовал эту технику много раз, но не очень часто в веб-среде. Думаю, что от её применения на сайтах меня удерживала недостаточная поддержка браузерами. Полноценно этот функционал поддерживается в Safari и Firefox, а вот в браузерах на движке Blink (Chrome и Edge) — лишь частично.

Радует то, что тема CSS маскирования будет частью Interop 2023, а значит, вскоре можно ожидать кросс-браузерную поддержку этой возможности (Вау!).

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

Поехали!
Читать дальше →
Всего голосов 44: ↑44 и ↓0+44
Комментарии1

6 новых возможностей CSS, которые должен знать каждый front-end разработчик в 2023 году

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров25K

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

Я считаю, что каждый front-end разработчик должен знать, как использовать container query, создавать привязку к прокрутке, избегать position: absolute с помощью grid, быстро создавать круг, использовать каскадные слои и достигать большего с помощью логических свойств. Эта статья — описание каждой из 6 новых возможностей CSS.

Читать далее
Всего голосов 19: ↑12 и ↓7+5
Комментарии6

3 правила в веб-дизайне, которые упрощают жизнь разработчикам

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров10K

Рассказываю как я структурирую макеты дизайна сайта.

Тык!
Всего голосов 10: ↑7 и ↓3+4
Комментарии13

Как составить эффективный запрос цены на разработку программного обеспечения

Уровень сложностиПростой
Время на прочтение6 мин
Количество просмотров2.3K

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

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

Читать далее
Рейтинг0
Комментарии4

Полароидный CSS и совсем немного HTML

Время на прочтение10 мин
Количество просмотров3.9K

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


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

Читать дальше →
Всего голосов 4: ↑4 и ↓0+4
Комментарии1

Упрощаем себе жизнь при разработке интерфейса взаимодействия приложения и БД

Время на прочтение8 мин
Количество просмотров5.3K

Привет, %username%! Меня зовут Антон Жеронкин, я Data Scientist в Сбере, участник профессионального сообщества NTA. Сегодня поговорим о том, как можно сделать лучше жизнь разработчиков, которые часто сталкиваются с базами данных. Дело в том, что, когда разработчики вручную пишут функциональные модули, ответственные за связь с БД, они проделывают следующую работу:

● описывают таблицы в виде классов;

● описывают отдельные атрибуты таблиц в виде атрибутов классов. При этом требуется следить за тем, чтобы типы и форматы данных совпадали;

● на CRUD-операции пишут много SQL-кода, который зашивается в методы языка программирования и помогает остальным модулям при необходимости использовать связь с БД.

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

Читать далее
Всего голосов 14: ↑13 и ↓1+12
Комментарии6

Редко используемые свойства CSS

Время на прочтение7 мин
Количество просмотров11K

Всем привет, меня зовут Кирилл, я frontend разработчик компании Usetech. CSS постоянно развивается, и некоторые полезные свойства остаются незамеченными. Возможно о них говорят не так много, как о других, но в этой статье на примерах я разберу новые и полезные свойства CSS. Ещё вы увидите раздел ресурсы, где можно почитать подробнее и глубже.

CSS свойства, которые мы рассмотрим в данной статье:

Читать далее
Всего голосов 13: ↑13 и ↓0+13
Комментарии11

Тактовая кнопка, как подключить правильно к "+" или "-"

Время на прочтение5 мин
Количество просмотров20K

Вы ни когда не задумывались, почему в схемах иногда кнопки подтягивают к "+" питания, а иногда к общему проводу? Если прямо сейчас набрать в поиске: "тактовая кнопка ардуино" - то на большинстве картинок мы увидим именно прямое подключение, когда резистор подключен на землю. Но, если посмотреть схемы без участия ардуино, то ситуация меняется в корне, чаще можно будет встретить инвертированное включение. Так как же будет подключать кнопку правильнее? Давайте вместе попробуем разобраться в этом вопросе!

Читать далее
Всего голосов 29: ↑27 и ↓2+25
Комментарии74
1

Информация

В рейтинге
3 587-й
Зарегистрирован
Активность