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

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

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

Датчики для умного дома

Время на прочтение8 мин
Количество просмотров24K
Сделали мы шкаф управления для дома вот тут , разработали контроллер и тут.

Свет можно включить/выключить с телефона, в телеграм приходят нотификации об утечке воды, включении полива и бог ещё знает что.

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

Разработка 2-наносекундного излучателя лидара. Тестовое задание от Яндекс.Беспилотники

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

Это рассказ о том, как потратить 3 недели на тестовое задание от работодателя мечты и провалить второй тур собеседования. Несмотря на то, что работу я не получил, тестовое задание оказалось испытанием, с которым я справился, попутно вынеся для себя несколько важных уроков.

Читать далее

JetHome E1: элегантный красавец на ESP32

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


Сегодня мы поговорим об очередном контроллере для DIY рынка на ESP32, это красавец JetHome E1 в элегантном корпусе на DIN-рейку. Кроме стильного корпуса, этот контроллер обладает интересной начинкой (тут и Ethernet интерфейс и 5 встроенных реле и прочие атрибуты подобных контроллеров) и хорошей родословной — его выпускает компания, которая специализируется на производстве Linux контроллеров и мини-компьютеров и имеет большой опыт в этом деле и даже собственную производственную линию в Санкт-Петербурге.

То есть это ещё один контроллер отечественного производства (как и Lavritech V7.1 Lite), причём выпускаемый на промышленном оборудовании с «заводским качеством». Ну и по традиции я приглашаю посмотреть, что и как там устроено внутри и что нам предлагает JetHome E1 для решения наших задач по автоматизации.
Читать дальше →

Модернизация освежителя воздуха Air Wick

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

Доброго времени суток, Хабр!

Лет пять назад мы купили себе освежитель воздуха Air Wick. Я его разобрал, вытащил и выкинул плату, в надежде, что так я быстрее сделаю свою … Если Вы решите, что оно того не стоило, то я готов поспорить.

Читать далее

Контроллер измерения влажности почвы для вертикальной фермы

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

Приветствую, Хабр!

Статья о разработке контроллера измерения влажности почвы с передачей данных по Wi‑Fi. Конкретно это устройство было разработано для вертикальной фермы на 64 ячейки.

Читать далее

К вопросу о диодах (идеальных)

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

Очередная зарисовка, как всегда, выросшая из практической задачи.
Имеется устройство -аккумуляторная батарея, состоящая из трех секций аккумуляторных ячеек (АЯ) (литий-ионных, хотя это неважно) и необходимо обеспечить их совместную работу на общую нагрузку. Для решения данной задачи поставлены три ключа на полевых транзисторах, индивидуально управляемых с микроконтроллера. Естественно, что каждый ключ образован двумя последовательно включенными транзисторами, управляемыми минусом на затворе (я постоянно путаю буквы n и p, так что пользуюсь такой терминологией), так что стоят они в плюсах батарей - пока ничего нового, таких схем двенадцать на дюжину, см рис.1.

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

И что было дальше ?

Что делать, если Заказчик просит сделать часть работ бесплатно

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

Вводные:

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

Что делать?

Читать далее

7 раз отрежь, один релизни. А/Б тесты статических сайтов

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

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

Прорабатывается ТЗ и задача отдаётся разработчикам. Затем новая версия тестируется и уходит конечным пользователям. На этом жизненный цикл идеи завершён. Теперь остаётся дождаться массива свежей аналитики и отпраздновать…

Однако эта идея изначально была обречена. Она была поддержана лишь схожими с её автором людьми. Однако эти люди не самая подходящая ЦА, а возможно и вовсе её редкие исключения. И есть только один гарантированный способ проверить гипотезу - проверить её именно на аудитории бизнеса. Но, не на всей. Этот способ называется А/Б тестированием.

И именно ему будет посвящена данная статья. От идеи до конкретной реализации тестирования на next.js (которую можно повторить и на других технологиях).

Читать далее

Укрощаем суммы с плавающей запятой

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

Допустим, у нас есть массив чисел с плавающей запятой, и мы хотим их суммировать. Можно наивно подумать, что их достаточно просто сложить, например, на Rust.

Однако это запросто может привести к произвольно большой накопленной погрешности. Давайте проверим:

naive_sum(&vec![1.0; 1_000_000]) = 1000000.0
naive_sum(&vec![1.0; 10_000_000]) = 10000000.0
naive_sum(&vec![1.0; 100_000_000]) = 16777216.0
naive_sum(&vec![1.0; 1_000_000_000]) = 16777216.0

Ой-ёй… Что произошло? Проблема в том .что следующее 32-битное число с плавающей запятой после 16777216 — это 16777218. Так что при вычислении 16777216 + 1, значение округляется до ближайшего числа с плавающей запятой, имеющей чётную мантиссу, то есть снова до 16777216. Мы зашли в тупик.

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

Читать далее

Земля в печатных платах | Слои, компоненты, секции, питание и переходы | Тренинг Рика Хартли

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

В этой статье представлен большой тренинг Рика Хартли по разводке земли в печатных платах. Перевёл и озвучил данное видео Dmitry Muravyev, за что ему огромное спасибо. Я всего лишь сделала конспект этого замечательного тренинга, чтоб люди могли ознакомиться с ним быстрее, чем смотреть двухчасовое видео, либо вернуться к каким-то отдельным темам, если позабылось. Категорически рекомендую ознакомиться с источником.

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

Читать далее

Мега-Учебник Flask Глава 11: Дизайн приложения (издание 2024)

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

Это одиннадцатая часть серии мега-учебника Flask, в которой я собираюсь рассказать вам, как заменить базовые HTML-шаблоны новым набором, основанным на платформе пользовательского интерфейса Bootstrap.

Начать изучение

Мега-Учебник Flask Глава 12: Дата и время (издание 2024)

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

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

Начать изучение

Kincony KC868-A256: а ты готов к настоящему хоккею?

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


Kincony решила окончательно утвердить своё имя в зале славы производителей контроллеров всех времён и народов и выпустила уникальную модель KC868-A256 аж с 512 GPIO на борту. Насколько я понимаю, никто ранее ничего подобного не делал и это действительно уникальная в своём роде вещь.

(Особенно впечатляюще KC868-A256 смотрится в сравнении с контроллерами, которые имеют всего несколько GPIO на вход и несколько GPIO на выход, а то и не имеют таковых вовсе.)

Как к этому относиться — как к демонстрации возможностей и технологическому курьёзу или как практическому девайсу для автоматизации — каждый может решить сам, мы же далее посмотрим подробно как всё это устроено и как это работает.
Читать дальше →

Матричный шрифт с анимацией на микроконтроллере

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

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

Читать далее

Оптимизация настроек Kafka кластера. Часть 1. Механизмы управления пропускной способностью

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

Привет, Хабр! Представляю вам перевод технического документа от Confluent, который посвящен тому, как определить, что именно нужно оптимизировать (пропускная способность, задержка, надежность или доступность), как настроить развертывание Kafka в соответствии с этими целями и убедиться в их достижении с помощью мониторинга. Сегодня я выкладываю первую часть, в которой обсуждается, как определить цели оптимизации и улучшить пропускную способность Kafka. Последующие статьи будут посвящены задержке, надежности, доступности, мониторингу и бенчмаркингу.

Читать далее

Нестабилизированный AC/DC источник питания. IR2153

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

Для создания AC/DC источников питания есть две микросхемы, которые можно назвать «народными» - IR2153 и TL494.

В этой статье рассмотрю простейшее включение микросхемы IR2153.

Почитать далее

Методы борьбы и обеспечения работы электронных устройств при повышенном напряжении в сети

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

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

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

Читать далее

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

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

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

Подход, на который мы будем опираться, называется DFA — Design for Assembly (проектирование для сборки). Набор методов DFA гарантирует возможность сборки компонентов на плате, когда она поступит на монтажный участок, и позволяет отправлять плату в тираж без страха потерять деньги и время.

Читать далее

Реализуем балансировку нагрузки на сервер с помощью Envoy и gRPC API на Kotlin

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

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

Читать далее

Бегство от реальности: как перестать подгонять свой код под устаревшие шаблоны

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


Как описать хороший код в трех словах? Исходя из опыта — это код, который [приятно поддерживать и эксплуатировать]. СОЛИД, SOLID, СОЛИД... Редко код ревью обходится без упоминания этих принципов, но для разработчика это не означает ничего хорошего. А что, если я скажу вам, что есть альтернатива? Недавно я наткнулся на одну англоязычную статью в блоге автора по имени Dan North. Он поднимает крайне интересные темы: написание хорошего кода, поддержка кодовой базы, порочные практики следования устаревшим трафаретам. 

Думаю, для каждого программиста не секрет, что не всегда есть время и возможность подгонять свое решение под SOLID. Иногда проще оценивать свой код по шкале «хорошего кода» без трафаретов. Тут, конечно, прибегут некоторые люди, которые будут утверждать, что их проекты не содержат говнокода и легаси... Это все просто побег от реальности, нежелание принимать то, что любые проекты и их кодовые базы — это вечные «макароны». В общем, идеализация разработки, которая ни к чему, кроме душевных страданий, не ведет.

Читать далее

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность