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

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

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

Как я строил Умный Дом. Часть 1

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

Всем привет! Вот и я решил написать тут, да не просто статью, а серию статей в лайв формате. Тема - строительство своего дома, Умного дома.

Собственно, строительства будет минимум, а инженерки и её автоматизации поболее.

Строим Умный дом вместе ;)

Читать далее
Всего голосов 57: ↑40 и ↓17 +23
Комментарии 330

Согласование импедансов: как сломать и как починить

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

Рано или поздно в руки любителей, начинавших с Ардуино, попадают куда более быстрые устройства. Накинув щупы осциллографа на навесные провода, они обнаруживают, что сигнал, который задумывался, как голубая линия на заглавной картинке на деле выглядит, как жёлтая. В поисках решения проблемы они приходят к весьма многогранной области знаний под названием «Целостность сигналов». И если такие её аспекты, как питание и возвратные токи относительно просты для понимания, то согласование импедансов содержит ряд контринтуитивных положений. В процессе освоения данной темы мне показалось, что материалы по ней разделены на три не слишком хорошо связанных блока:
1) теория с формулами и отсылками к 2 курсу ВУЗа
2) гипертрофированные примеры на симуляторах
3) применение на практике (с эмпирическими суевериями)

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

Согласовать импедансы
Всего голосов 90: ↑89 и ↓1 +88
Комментарии 40

Простой шутер от третьего лица на Unreal Engine. Часть 1

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

Эта статья писалась для новичков Unreal Engine, если вы профи, то вам будет скучно. Для нормального прочтения, осмысления и понимания происходящего ниже необходимо знать что такое переменная и их основные типы, что такое метод, булеву логику и самые базовые принципы программирования. Спасибо. Приступим.

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

Junior — приговор или возможность? Что надо знать новичкам о своей первой работе

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

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

Читать далее
Всего голосов 18: ↑17 и ↓1 +16
Комментарии 22

Как подключить АЦП HX711 к NRF52832

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

1. Введение


На повестке дня стояла задача разработать протокол общения микроконтролера nrf52832 с двумя полумостовыми китайскими тензодатчиками.

Задача оказалась не простой, так как столкнулся с отсутствием какой — либо внятной информации. Вероятнее, что «корень зла» находится в самом SDK от Nordic Semiconductor — это постоянное обновления версий, некоторая избыточность и запутанность функционала. Пришлось писать все с нуля.


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


2. Описание проекта


image

Железо:


  • Adafruit Feather nRF52 Bluefruit LE (то что оказалось под рукой)
  • АЦП HX711
  • Китайские тензодатчики 2 шт. (50х2 кг)
  • Программатор ST-LINK V2

Софт:


  • IDE VSCODE
  • NRF SDK 16
  • OpenOCD
  • Программатор ST-LINK V2

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

Как процессор 8086 работает с питанием и сигналами тактовой частоты

Время на прочтение 11 мин
Количество просмотров 6.2K
Одна из недооценённых характеристик ранних микропроцессоров – сложность в распределении питания внутри интегральной схемы. У современного процессора может быть 15 слоёв металла с проводниками, но у чипов из 1970-х, например, у 8086, был всего один металлический слой, из-за чего разводка проводников представляла собой проблему. Сигналы тактовой частоты (синхросигналы) тоже нужно доводить до всех частей чипа, чтобы все они работали синхронно.

На фото ниже показан кристалл 8086 под микроскопом. Виден металлический слой сверху чипа, под которым прячутся кремниевая подложка и поликремниевый слой с проводниками. По периметру кристалла снаружи крохотная проволочная разварка соединяет площадки кристалла с внешними ногами. У 8086 площадка питания расположена сверху, а площадки земли – сверху и снизу. У каждой из них есть два проводка проволочной разварки, что удваивает величину поддерживаемого тока. Видны широкие металлические дорожки, идущие от площадок питания и земли. Они распределяют питание по чипу.
Читать дальше →
Всего голосов 13: ↑12 и ↓1 +11
Комментарии 4

Почему тестировщиков «джун», «мидл» и «сеньор» не существует. Или как мы уже 10 лет работаем без грейдов

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


Привет, Хабр! Меня зовут Женя. Десять лет назад я стартанул агентство аутсорс-тестирования «Кавычки». У нас в компании нет и никогда не было деления тестировщиков на джунов, мидлов и сеньоров. Хотя были попытки. Расскажу, почему так получилось и как можно жить без грейдов.
Читать дальше →
Всего голосов 21: ↑16 и ↓5 +11
Комментарии 39

Новое применение Captive Portal для проведения MiTM атак

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

Тема проведения Man in the Middle атаки в контексте Captive Portal стара как мир. Как правило ведется речь о поднятии фейковой беспроводной точки доступа с собственным Captive порталом. Сегодня я покажу совершенно другой вектор атаки, выходящий за грани WiFi и применимый в том числе и в проводных Ethernet сетях.
Всего голосов 15: ↑15 и ↓0 +15
Комментарии 6

Руководство Google по стилю в C++. Часть 2

Время на прочтение 7 мин
Количество просмотров 32K
Часть 1. Вступление
Часть 2. Заголовочные файлы
Часть 3. Область видимости



Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на родном, приятнее иметь руководство на последнем.
Эта статья является переводом части руководства Google по стилю в C++ на русский язык.
Исходная статья (fork на github), обновляемый перевод.
Читать дальше →
Всего голосов 7: ↑7 и ↓0 +7
Комментарии 21

Электростатический очиститель воздуха своими руками. Часть 1 — принципы работы

Время на прочтение 23 мин
Количество просмотров 96K
В какой-то момент времени во мне воспылал энтузиазм к постройке бытового электростатического очистителя воздуха (электрофильтра). Удивительно, но мне не удалось в сети найти годных материалов по этой области что и подтолкнуло меня к написанию данной статьи.

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


На фото коронный разряд, используемый в электростатических очистителях воздуха
Читать дальше →
Всего голосов 39: ↑39 и ↓0 +39
Комментарии 103

Функциональное программирование — то, что вам (наверно) рассказывали. Если вы слушали

Время на прочтение 16 мин
Количество просмотров 30K
Мне нравятся разговоры на тему «мне раньше в школе/институте/родители говорили, а теперь я узнал». Если по счастливой случайности я оказываюсь хоть немного компетентен в обсуждаемом вопросе, то такие разговоры обычно сводятся к одному из трех вариантов: «где вообще ты раньше слышал такую чушь?» (если собеседник прав), «а с чего ты взял, что это так?» (если он не прав) и «ты прав, только это не противоречит тому, что тебе говорили раньше» (в подавляющем большинстве случаев). Нравятся такие разговоры мне по следующей причине: обычно их инициатор не обременен излишним предварительным знанием вопроса, что в некоторых случаях позволяет ему указать на некоторые моменты, которые принимались как очевидные, на самом деле таковыми не являясь. И одной из тем для подобных бесед оказалось функциональное программирование.

Вообще про ФП написано и сказано столько, что вроде бы все вопросы о его применимости, крутости, производительности и т.п. обглоданы до костного мозга. И все-таки такого рода вопросы поднимаются снова и снова, и всегда найдется желающий рассказать о том, что вы все неправильно поняли, а на самом деле оно эвона как. Пожалуй, сегодня я примерю на себя эту неблагодарную роль, поскольку недавно попались на глаза несколько постов на эту многострадальную тему. В первом и втором в очередной раз рассказано, что ФП — дрянь и изучать его — только портить свою карму будущего специалиста. Другие (раз и два) куда более адекватны, в них автор ставит целью объяснить, что все эти ваши лямбды, комбинаторы, категории — не более, чем пыль в глаза, а само ФП — штука простая, понятная и приятная в быту.

Насколько это соответствует истине?
Читать дальше →
Всего голосов 54: ↑50 и ↓4 +46
Комментарии 299

Это норма — 3: типы карт нормалей

Время на прочтение 5 мин
Количество просмотров 25K
Часть 1: что такое карты нормалей и как они работают

Часть 2: как запекаются карты нормалей

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

Карта нормалей касательного пространства (Tangent space normal map): самый распространённый сегодня тип карт нормалей; именно о нём мы говорили в предыдущих статьях. Он модифицирует направление нормалей модели на основании направления нормалей её вершин (то есть нам нужно контролировать нормали вершин lowpoly-модели).

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

Увлажнитель воздуха: купить или сделать? Сложности выбора

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

Проблема лишь в том, что не существует оптимального способа увлажнения – у всех есть и серьезные недостатки и очевидные преимущества. А установка дома аквариума в планы не входит.
Обзор существующих подходов, а также конструкций «сделай сам» под катом. Надеюсь, кому-то поможет сделать свой выбор, а кто уже сделал – поделится впечатлениями с сообществом.
Читать дальше →
Всего голосов 61: ↑57 и ↓4 +53
Комментарии 183

Мои поиски физической панели управления умным домом

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

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


Существует несколько вариантов реализации этой задумки:


  • сенсорная панель оператора ПЛК;
  • планшет;
  • сенсорный дисплей, подключенный к микрокомпьютеру.


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

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

Как я чуть не выкинул 150к на ветер или история установки приточной вентиляции в квартире

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

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


Читать дальше →
Всего голосов 375: ↑370 и ↓5 +365
Комментарии 595

Как работает рендеринг 3D-игр: растеризация и трассировка лучей

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

Часть 1: обработка вершин

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

Главная тема этой статьи — важный этап рендеринга, на котором трёхмерный мир точек, отрезков и треугольников становится двухмерной сеткой разноцветных блоков. Очень часто этот процесс кажется незаметным, потому что преобразование из 3D в 2D оказывается невидимым, в отличие от процесса, описанного в предыдущей статье, где мы сразу же могли увидеть влияние вершинных шейдеров и тесселяции. Если вы пока не готовы к этому, то можете начать с нашей статьи 3D Game Rendering 101.

Подготовка к двум измерениям


Подавляющее большинство читателей читают этот веб-сайт на совершенно плоском мониторе или экране смартфона; но даже если у вас есть современная техника — изогнутый монитор, то отображаемая им картинка тоже состоит из плоской сетки разноцветных пикселей. Тем не менее, когда вы играете в новую Call of Mario: Deathduty Battleyard, изображения кажутся трёхмерными. Объекты движутся по сцене, становятся больше или меньше, приближаясь и отдаляясь от камеры.
Читать дальше →
Всего голосов 24: ↑24 и ↓0 +24
Комментарии 5

Руководство Google по стилю в C++. Часть 1

Время на прочтение 4 мин
Количество просмотров 54K
Часть 1. Вступление
Часть 2. Заголовочные файлы
Часть 3. Область видимости
Часть 4. Классы
Часть 5. Функции
Часть 6. Специфика Google
Часть 7. Ещё возможности C++
Часть 8. Именование
Часть 9. Комментарии
Часть 10. Форматирование
Часть 11. Исключения из правил


Все мы при написании кода пользуемся правилами оформления кода. Иногда изобретаются свои правила, в других случаях используются готовые стайлгайды. Хотя все C++ программисты читают на английском легче, чем на родном, приятнее иметь руководство на последнем.
Эта статья является переводом части руководства Google по стилю в C++ на русский язык.
Исходная статья (fork на github), обновляемый перевод.
Это вступительная часть руководства, в которой рассматриваются общие вопросы «Зачем?»
Также после перевода будет несколько ответов на возможные вопросы.
Читать дальше →
Всего голосов 5: ↑5 и ↓0 +5
Комментарии 0

Почему, а главное, куда люди уходят из IT?

Время на прочтение 8 мин
Количество просмотров 64K
Здравствуйте, уважаемое хабросообщество. Вчера (будучи в нетрезвом состоянии), прочитав пост от @arslan4ik «Почему люди уходят из IT?», я задумался, ведь действительно хороший вопрос: «Почему..?»

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

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

Итак знакомьтесь: RJ, человек, отдавший 13 лет IT и его история развода с любимым делом…
Читать дальше →
Всего голосов 82: ↑65 и ↓17 +48
Комментарии 118

MicroPyServer простой HTTP сервер для ESP8266 и ESP32

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

Промо


Всем привет!


Хочу рассказать о библиотеке MicroPyServer написанной на Python, которая позволяет взаимодействовать с устройствами ESP8266 и ESP32 посредством простого HTTP сервера.


Что такое MicroPyServer?


MicroPyServer это простой HTTP сервер предназначенный для проектов написанных на Micropython.


Основная концепция работы с библиотекой — это перехватывание запросов к устройству при помощи создания роутов (route) и функций обработчиков (handler).

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

Включаем свет силой мысли, ну почти

Время на прочтение 3 мин
Количество просмотров 4.6K
KDPV

Написание алгоритмов наверное самая для меня интересная часть в домашней автоматизации. Но даже вся масса сенсоров и сценариев не справляется с буйной фантазией жизни и приходится добавлять способ непосредственного контроля. В качестве органов ручного управления можно поставить и обычный дверной звонок, но что делать если хочется большего? Встречаем героя этой статьи — датчик жестов на основе SI1143 от Silicon Labs.
Читать дальше →
Всего голосов 19: ↑19 и ↓0 +19
Комментарии 3

Информация

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