Обновить
256K+

DIY или Сделай сам

Для тех, у кого руки растут из нужного места

733,56
Рейтинг
Сначала показывать
Порог рейтинга
Уровень сложности

На пути борьбы с шумом домашнего ЧПУ: тесты обработки печатной платы под слоем жидкого мыла и не только

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

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

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

Проблема особенно усугубляется на относительно жёстких материалах: фрезеровка печатных плат (вырезание по контуру), а также обработка металлов.

В ходе размышления над этой проблемой мне пришла в голову довольно интересная мысль: «А что, если обработку производить под толстым слоем жидкости, в частности воды или жидкого, гелеобразного мыла?!»

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

Да, льют СОЖ (смазывающе-охлаждающую жидкость) в зону резания относительно тонким слоем — но в основном только для постоянного вымывания продуктов обработки (проще говоря, стружки и пыли) и смазки/охлаждения инструмента во время работы.

Но покрывать деталь толстым слоем жидкости именно для гашения вибраций и звука (грубо говоря, залить её толстым слоем жидкости и вести обработку прямо под ней) — похоже, что не додумался вообще никто (не факт, но есть такое подозрение ;-) )!

Ввиду того, что у меня уже есть цельнометаллический ЧПУ-станок серии 3018, про который я писал вот тут, мне показалось совершенно непростительным, если бы эта интереснейшая мысль по поводу глушения жидкостью осталась в виде непроверенной теории!

Я никак не мог этого допустить, и работа закипела… :-)

Читать далее

Новости

Потолок на 800 Вт и окна по расписанию: как устроена умная квартира на 175 м²

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

Окна открываются по расписанию, ночная подсветка загорается на 10% яркости, а настенные клавиши работают даже при выключенном контроллере. В квартире площадью около 175 м² интегратор объединил проводную автоматику и беспроводные устройства, а владельцу оставил возможность самому менять сценарии. Заглянем в щит, разберем световой потолок на 800 Вт и посмотрим, какие задачи решает автоматика после переезда — и что еще предстоит настроить.

Читать далее

Когерентная демодуляция CPFSK на микроконтроллерах семейства ARM Cotex M (STM32F103 — STM32H750)

Уровень сложностиСложный
Время на прочтение7 мин
Охват и читатели9.6K

Доброго времени суток, уважаемые посетители Habr!
Данная статья будет короткой, но полезной.

В одной из предыдущих статей, уже описывал вычисление sin(x)/cos(x) с применением разложения в ряд Фурье с фиксированной точкой. Вычисление тригонометрических функций, в моем случае занимало порядка 125-130 тактов на пару (sin+cos) на процессорном ядре Cortex M7 (STM32H750). При этом, код компилировался для архитектуры Cortex M3. Точность sin/cos просчитанного таким образом составила менее 1.5LSB. Google посчитал ее как 1.2-1.3LSB, с минимальной дисперсией. Это уже дало динамический диапазон ~183dB. Для сравнения, полный динамический диапазон человеческого уха 120dB от болевого порога до шелеста листвы. А динамически диапазон звука который человек слышит одновременно порядка 40-60dB. Несколько позже поясню для чего приведено сравнение.

В общем и целом такого динамического диапазона и скорости уже достаточно чтобы производить операцию квадратурной свертки сигнала с частотой дискретизации до 450-500KHz. Кстати, на STM32F103C8T6, это заняло бы ~1.8uS на квадратурный отсчет. Т.е. с отключенными прерываниями процессор бы успел выполнить расчет одного бина честного преобразования Фурье в реальном времени. Это эквивалентно квадратурной демодуляцию на одной произвольной поднесущей до частоты 250КГц (хотя лучше брать Fsample/4 ), что позволяет работать с полосой до 125КГц, на простом контроллере в реальном времени.

Однако, этого мало для полноценной обработки сигналов. И тут я задумался. Как можно значительно повысить скорость работы и почти не потерять в точности? Первое что сделал,- разбил преобразование на блоки, фаза которых непрерывна. Это позволило работать с блоками отсчетов, которые, затем можно суммировать скользящим окном со сложностью O(1). Это привело к эффекту квадратурной демодуляции сигнала и без повышения сложности позволяло работать с малыми временными сдвигами. Фактически пришел к поблочной корреляция. Нечто вроде временного Rack-приема.

Читать далее

За час собрал монитор бензина и заправился без очереди: делюсь инструментом на GitHub

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

Я несколько раз попал в длинные очереди за бензином, конкретно за АИ‑95. В конце августа четыре часа простоял в очереди на московской заправке, чтобы заправиться за минуту. В другой раз два часа ждал в Моршанске, хотя это город с населением меньше 50 тысяч человек. Очереди меня жутко выбешивали, поэтому решил навайбкодить монитор бензина. Он должен был сообщать, когда бензин появляется на нужной заправке и туда можно ехать. И у меня это получилось, хотя самостоятельно я до этого ничего не разрабатывал.

На связи Игорь, менеджер продуктов Outlines Tech. В статье покажу, как ставил задачу ChatGPT, что приходилось уточнять и как проверил инструмент в деле. В конце оставлю ссылку на код на GitHub, чтобы вы могли попробовать его у себя. Бесплатно, разумеется.

Читать далее

STM32: Работа с SD-картами через SDIO

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

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

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

Многие считают работу с SD-картой чем-то сложным и низкоуровневым. На практике, если использовать SDIO + FatFS, бо́льшая часть сложности уже спрятана библиотеками и аппаратными модулями микроконтроллера.

В этой статье я покажу, как добавить поддержку SD-карт в проекты на STM32: что лежит в основе, и как она настраивается.

Читать далее

Later, Bender: когда чат закончился, а проект нет

Уровень сложностиСредний
Время на прочтение19 мин
Охват и читатели12K

В какой-то момент я заметил довольно глупую вещь: чем дольше работаешь с моделями над реальными проектами, тем больше сам начинаешь выполнять роль, которую вроде бы собирался отдать машине. Не писать код и не придумывать архитектуру — это как раз модели уже умеют неплохо. Хуже другое. Нужно помнить, что мы вчера решили не трогать Elasticsearch до тех пор, пока не появится реальная боль. Что вот этот кусок интерфейса пока временный. Что в том чате был хороший вариант названия. Что одна гипотеза уже проверялась и оказалась плохой. Что вот это надо сделать потом, а вот это — никогда. Пока всё живёт в одном разговоре, проблема почти незаметна. Потом разговор заканчивается, контекст вымывается, открывается новый чат, меняется модель, запускается отдельный агент — и внезапно выясняется, что «мы это уже обсуждали» хранится в довольно ненадёжном месте. Во мне.

Мне это надоело. С этого, собственно, и начался Later, Bender. Название появилось позже. Сначала был гораздо менее романтичный вопрос: как сделать так, чтобы полезное состояние работы переживало чат и не требовало от человека каждый раз заново пересказывать машине, что вообще происходит?

Читать далее

Как мы делали BLE-систему аур для ролевой игры

Уровень сложностиПростой
Время на прочтение13 мин
Охват и читатели8.1K

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

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

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

То есть игровой мир должен был сам реагировать на присутствие персонажей.

Читать далее

Про дела сырные

Время на прочтение7 мин
Охват и читатели8.2K

Если я шутя спрошу вас: «что мы любим на завтрак? Что мы любим на ужин?» — думается, что ответы будут очень разными, но, наиболее очевидным ответом наверняка будет то, что, хотя бы изредка, мы позволяем откусить себе, что утром, что вечером — маленький, ароматный кусочек килограмма на полтора душистого сыра!

Читать далее

Сервер на смартфоне полгода спустя: OnePlus 6, Mobian, 26 контейнеров и одна проблема

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

В апреле 2026 года я решил ради эксперимента установить на старый смартфон OnePlus 6 Linux (Mobian) и использовать его в качестве сервера. Через некоторое время пришлось немного повозиться, чтобы правильно настроить режим зарядки, чтобы аккумулятор жил в наиболее безопасном и комфортном режиме.

Полгода спустя на нём работают 26 Docker-контейнеров. Рассказываю, что там крутится, как устроены мониторинг, CI/CD, Caddy и Nginx.

Читать далее

Игровая консоль в корпусе нормирующего преобразователя: raycast на ESP8266

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

Подарок сыну и списанный прибор

Не так давно мой сын, которому тогда было 5 лет, попросил игровую консоль. Я немного подумал, и решил, что до полноценной консоли ему бы ещё подрасти… и решил сделать её сам. Проведя ревизию полезного «железа» я нашёл 2.4“” TFT SPI дисплей, шилд джойстика и ESP8266. Сначала был написан в Arduino IDE код, затем найден корпус… но я начну от обратного. Поиск подходящего корпуса начался с Авито. Куплена нерабочая китайская консоль, но сразу после получения успешно отремонтирована подключением шлейфа дисплея и поиск продолжился… На работе был присмотрен списанный нормирующий преобразователь интерфейсов, замерен, и… признан пригодным к адаптации в качестве корпуса.

Читать далее

ESP32-P4 вместо планшета на стене: неделю живу с панелью Home Assistant и разбираюсь, зачем она нужна

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

Если Home Assistant у вас уже работает, а мысль о постоянном экране на стене время от времени возвращается, эта статья как раз про практическую сторону вопроса. Что даёт готовая ESP32-панель, чем она отличается от планшета и DIY, где упирается в ограничения и насколько вообще пригодна для ежедневного управления домом.

Читать далее

Как я сделал датчик присутствия из Яндекс ТВ и роутера

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

У меня есть умный телевизор Yandex. По моему субъективному мнению колонки и ТВ у Яндекса получились отличные. Но иногда появляется желание сделать умный телевизор чуть умнее.

На очереди функция «датчик движения». Конечно же, хотелось использовать CSI, поскольку он в отличие от грубых интегральных метрик вроде RSSI (уровень мощности сигнала) предоставляет детализированную оценку радиоканала на уровне отдельных поднесущих частот. Что, в принципе, позволяет пойти сильно дальше просто обнаружения присутствия.

Идея была такая: телевизор и роутер стоят на месте, а человек между ними меняет условия распространения сигнала. Причём сигнал приходит не только по прямой — он отражается от стен, мебели и других предметов. Когда кто‑то проходит, меняется сочетание этих путей. Остаётся понять, какие изменения телевизор позволит прочитать.

Самый доступный вариант — RSSI, уровень принимаемого сигнала. Android отдаёт его через WifiInfo.getRssi() в dBm. По сути, мы видим одно число: сейчас −30, через некоторое время −34. Можно увидеть изменение мощности, но нельзя понять по этому числу, что произошло с отдельными составляющими радиоканала.

CSI — Channel State Information — даёт сильно больше подробностей. Вместо одного показателя мощности можно получить оценки амплитуды и фазы на отдельных поднесущих OFDM, а при соответствующей поддержке — ещё и для разных пар передающих и принимающих антенн. Общая мощность может почти не измениться, хотя внутри этой картины уже что‑то произошло. Для поиска движения это интереснее, но такие данные ещё нужно очистить от помех и особенностей измерения.

Читать далее

Как я ноутбук Lenovo IdeaPad Gaming 3 чинил. Новый чип, его прошивка и капризный зарядник

Время на прочтение11 мин
Охват и читатели16K

Привет, Хабр! Ну что, я таки починил игровой ноутбук от Lenovo. Это оказалось не так просто, но все получилось. Напомню, это «залитик», то есть лэптоп, пострадавший от жидкости, — самая неприятная категория ремонтов. В первой части я нашел причину, по которой Lenovo IdeaPad Gaming 3-15ACH6 не включался и не заряжался. После «купания» пробило мультиконтроллер ENE KB9022QD и на одной из линий питания оказалось около 20 Ом. Стоило снять чип, как сопротивление выросло до килоом, а дежурные 3,3 В снова появились (правда, после принудительного замыкания контактов входных ключей). У меня были просто огромные сомнения относительно работоспособности девайса. Но что поделать — кто не рискует, тот не играет в ААА-тайтлы. Так что оставалось дождаться нового EC из Китая, поставить его на место и записать прошивку.

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

Читать далее

Ближайшие события

Утро без телефона: зачем я поставил рядом с кроватью матричный принтер

Уровень сложностиСредний
Время на прочтение17 мин
Охват и читатели17K

Я собрал будильник, который каждое утро печатает мне чек. Рядом с кроватью стоит матричный Star SP700, а за ним — старый Mac mini, сервер, несколько небольших сервисов и приложение для установки времени подъёма.

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

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

Читать далее

Маруся и Home Assistant, часть вторая: без телефона

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

В прошлой статье я рассказывал, как подружить колонку «Маруся» с Home Assistant через DIY Hooks: пишем руками YAML со списком устройств и HTTP-запросами, вставляем туда адрес Home Assistant и долгосрочный токен, заливаем через приложение «Маруся» на телефоне и дальше немножко шаманим, пока кнопка «Удалить» не превратится в кнопку «Выбрать». В конце я написал, что было бы неплохо иметь интеграцию, которая сама генерирует эти файлы и выкладывает их на vc.go.mail.ru, — тогда и статья была бы не нужна. Прошло четыре с лишним года, никто такую интеграцию не написал, поэтому пришлось самому. Статья, как видите, всё равно понадобилась, но теперь она про то, как поставить одну интеграцию и больше в приложение не заходить.

Читать далее

Хотел сделать контроллер теплового насоса, а получился симулятор ESP32, Arduino и цепей 12/230 В

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели11K

Я уже несколько лет строю дом своими руками. Отопление в нём хочу сделать на тепловом насосе. Готовые решения стоят как крыло самолёта, поэтому давно зреет идея: взять обычный наружный блок кондиционера (без инвертора, «старт‑стоп»), убрать его родную автоматику и поставить свой контроллер на ESP32. Комплектующие для этого я собираю понемногу.

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

Логичный первый шаг: написать прошивку и проверить логику. Проверять на настоящем компрессоре, который не прощает ошибок, не хотелось. Захотел что‑то вроде Wokwi, но чтобы там можно было собрать ещё и силовую часть: реле, контактор, автомат, компрессор на 230 В. Такого я не нашёл и написал сам. Так проект про тепловой насос превратился в проект про симулятор: PinPort, онлайн‑симулятор ESP32, Arduino и цепей 12 и 230 В. Тепловой насос стал его самым сложным примером и хорошим тестом на прочность.

Часть кода написана вместе с нейросетью (вайбкодинг), и я этого не скрываю.

Читать далее

Собираю робота на Raspberry Pi 5 для дочери. Но говорящей колонкой тут не отделаться! Вызов принят, погнали. (Часть 1)

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

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

Читать далее

Делаем RAG‑систему с нуля

Время на прочтение19 мин
Охват и читатели14K

У меня с давних времен сохранилась куча всяких заметок, в основном в виде простых текстовых файлов.
Самых разных: от скриптов и конфигов до всяких рецептов, всё что когда-то пригодилось или могло пригодиться.

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

Единственный минус, когда их много - для того чтобы что-то найти нужно пройтись по каталогам где они лежат и увидеть глазами.
Особенно - если их никто не пытался строго структурировать, и они лежат где-то так:
"Документы/старое/1/1/разобрать/старый диск/Документы/Работа/...".
Ну, это конечно запущенный случай, и надо бы разобрать, когда-нибудь, может быть - ну, собственно говоря, там так и написано...

Что если попробовать прикрутить к этому поиск?

Читать далее

Repka Pi 5, обзор и сравнение c Raspberry Pi 5 — сразу впечатляющие результаты

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

Около полугода назад проект Репка выпустил и вывел на рынок пятую версию — Repka Pi 5, сравним производительности Raspberry Pi 5 и Repka Pi 5.
Насколько Repka Pi оказалась быстрая? Если совсем кратко, то вот так:
— производительность процессора в 1,5 раза выше;
— скорость работы с ОЗУ выше более чем в 2 раза;
— производительность графической подсистемы выше в 1,9 раз.

Читать далее

Как мы печатали работающий сервер: история одного приза

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели8.2K

Собирались мы как-то на конференцию в качестве консультантов на стенд решения. Рассказывать должны были про сервис Evolution Bare Metal. Идейным вдохновителем выступил @echo0x00, он знал, что мы с коллегой 3D-печатники, поэтому предложил как-нибудь нетривиально привлечь внимание гостей к нашему стенду, например, напечатав мини-стоечку с нашим лого. 

Слово за слово, предложение за предложением и вот уже то, что должно было быть простой сувениркой на один день, превратилось в крутой 3D-инженерный проект, которым даже можно управлять через Wi-Fi. Получилось настолько прикольно, что коллеги из маркетинга даже предложили разыграть его среди тех, кто придумает самый классный способ взломать облако. Впрочем, обо всем по порядку…

В конце истории вас ждет файл проекта, так что каждый неравнодушный к серверам сможет скрафтить себе эффектный ночник.

Читать далее
1
23 ...