Как стать автором
Обновить
4
0.1
Ермаков Алексей @Solgo

Разработчик

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

Новый принтер из Anycubic Mega S

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

Улучшение принтера Anycubic Mega S!

Установка новый драйверов шаговых двигетелей, замена держателя экструдера на AI3M X-Carriage, печать с ABS.

Установка и настройка Klipper-а с внешним экраном для управления принтером.

---------------------------------------

Года 3 назад я купил свой первый 3д принтер. Не очень долго смотрел и читал форумы, но часто попадался производитель Anycubic и конкретная модель Mega i3 S: данная модель была идеальным экземпляром соотношения цены и качества.

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

Разгоняем оптрон до сотни

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

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

Читать далее
Всего голосов 72: ↑69 и ↓3+95
Комментарии53

Фокусы с опторазвязкой

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

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

Читать далее
Всего голосов 123: ↑122 и ↓1+158
Комментарии63

Структуры и классы в C++ и D

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

Реализации объектно-ориентированного программирования в разных Си-подобных языках, конечно, похожи, и все такие языки, созданные после C++, пытаются сделать ООП более удобно используемым. Сравним в этой статье ООП в D и С++.

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

Калькулятор резьбовых соединений для FreeCad

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

В последнее время мне часто приходится печатать изделия с резьбой. Я создаю 3D-модель в программе FreeCad. Для создания отверстия с резьбой во FreeCad, необходимо создать отверстие с помощью окружности и нарисовать профиль резьбы в плоскости, перпендикулярной этой окружности. Например, если окружность создана в плоскости XY, профиль зуба должен быть нарисован в плоскости XZ.

Затем нужно создать спираль (если нужно добавить выступающую резьбу, то это будет инструмент Additive helix - "Аддитивная спираль", если нужно нарезать резьбу в отверстии, то это будет инструмент Subtractive Helix - "Субтрактивная спираль". Здесь нужно указать шаг и длину резьбы и нажать кнопку "Выполнить".

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

Поэтому я создал страничку на GitHub с [калькулятором профиля зуба резьбы](https://bigbigmdm.github.io/Freecad_thread_calculator/).

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

Методы расчета волнового сопротивления линий передач на печатных платах

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

В.А. Ухин, В.С. Кухарук, Д.С. Коломенский, О.В. Смирнова

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

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

Значения импеданса, к которым необходимо стремиться, для разработчика не является секретом. Чаще всего для одиночных линий оно составляет 50 Ом, а для дифференциальных 100 Ом. Кроме того, практически на любой стандарт или интерфейс  передачи данных легко можно найти требования к значению импеданса. В таблице 1 представлен их пример для USB 3.0 [1, 2].

Таблица 1. Требования к трассировки USB 3.0

Читать далее
Всего голосов 24: ↑22 и ↓2+26
Комментарии4

Telegram Боты на Aiogram 3.x:  Интеграция с PostgreSQL в пару строк кода

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

Привет, друзья! Вот и добралась до вас обещанная публикация про интеграцию PostgreSQL в Telegram ботов.

В прошлой статье я подробно рассмотрел тему FSM на практическом примере создания анкеты для бота знакомств. Мы остановились на том, что нам нужно было как-то сохранить введенные данные в базу данных.

Сегодня мы закроем этот вопрос.

В этой статье мы напишем:

Читать далее
Всего голосов 7: ↑5 и ↓2+4
Комментарии9

Ненавижу, _____, C++ массивы

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

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

Но почему?
Всего голосов 47: ↑45 и ↓2+58
Комментарии170

C++20 в bare-metal программировании, работа с регистрами микроконтроллеров Cortex-M

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

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

Статья предполагает, что читатель имеет базовые знания программирования bare-metal систем и языка С++, в том числе и современных стандартов. Это означает, что совсем базовые пояснения выходят за рамки этой статьи.

Читать далее
Всего голосов 65: ↑64 и ↓1+75
Комментарии29

Дзэн в искусстве программирования

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

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

Читать далее
Всего голосов 14: ↑12 и ↓2+11
Комментарии18

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

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

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

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

И что было дальше ?
Всего голосов 39: ↑39 и ↓0+56
Комментарии29

STM32. Процесс компиляции и сборки прошивки

Уровень сложностиПростой
Время на прочтение30 мин
Количество просмотров25K
Многие из начинающих разработчиков софта для микроконтроллеров реализуют свои проекты исключительно в средствах разработки, которые предоставляются производителем. Многое скрыто от пользователя и очень хорошо скрыто, из-за чего некоторые воспринимают эти процессы сродни настоящей магии. Я, в свою очередь, как человек в пытливым умом и природной любознательностью, решил попробовать собрать проект без использования IDE и различного рода автоматизаций.

Так родилась идея для этой статьи: не используя ничего, кроме текстового редактора и командной строки, собрать проект мигания светодиодом на отладочной плате STM32F0-Discovery. Поскольку я не до конца понимал, как происходит процесс компиляции и сборки проекта, мне пришлось восполнять пробелы в знаниях. Разобравшись с этим вопросом, я подумал — а почему бы не рассказать другим об этом?

Всем кому интересно — добро пожаловать под кат! 🙂

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

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

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

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

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

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

Импульсный (Пере)Магничиватель для неодима

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

Импульсный (пере-)магничиватель для неодимовых магнитов (из HDD). Много конденсаторов, толстый тиристор, пыщ-пыдыщ, всё как мы любим.

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

Состояние потока. Как провалиться в бессознательное состояние и что этому способствует?

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

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

Читать далее
Всего голосов 27: ↑8 и ↓19-9
Комментарии23

Мобильные экранчики в ваших проектах: большой и понятный о гайд о различных дисплеях

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


Пожалуй, немалая часть моих читателей так или иначе интересуется DIY-тематикой. И в различных самодельных девайсах порой есть необходимость вывести какую-либо информацию на дисплей, будь это текст, графики или даже какая-то анимация! Для разных задач существуют самые разные дисплеи и в сегодняшнем материале я хотел бы систематизировать и собрать подробнейший гайд об использовании дисплеев с нерабочих мобильных телефонов: какие бывают протоколы и шины данных, как читать схемы устройств и определять контроллеры дисплеев, какие дисплеи стандартизированы, а какие придётся реверсить самому и как быть с подсветкой. В практической части статьи мы подключим дисплей по протоколу MIPI DBI к RP2040 с использованием DMA. Интересно? Тогда добро пожаловать под кат!
Читать дальше →
Всего голосов 88: ↑86 и ↓2+106
Комментарии116

STM32. Подготавливаем среду разработки в Linux

Уровень сложностиПростой
Время на прочтение21 мин
Количество просмотров23K
В недавнем времени получилось так, что у меня появилась пара интересных проектов, где одна из составных частей — микроконтроллер STM32. И каждый раз при смене ноутбука или ОС на домашнем компе приходится настраивать окружение для разработки как в первый раз. Плюсом, последние проекты, которые я делал для STM32 — выполнял в Windows, в демо-версии Keil uVision. Но поскольку я давно переехал в Linux — возникла необходимость основательно разобраться и изложить процесс настройки окружения для будущих применений.

Всем, кому интересно — добро пожаловать под кат.

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

Видеокарта VGA для микроконтроллера. Часть 2. От идеи до мелкой серии

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

В первой части была описана идея видеокарты VGA для простого микроконтроллера (или ардуины), с помощью которой можно выводить информацию на стандартный монитор с интерфейсом VGA даже с самых слабых и медленных ядер. Карта, сердцем которой является высокоскоростная ПЛИС, берет на себя все скоростные и критичные к таймингам операции.

Идея была обкатана на макете и показала свою жизнеспособность. Однако для ее реализации «в железе», а тем более в серии, необходимо пересмотреть несколько моментов.
Читать дальше →
Всего голосов 63: ↑62 и ↓1+80
Комментарии37

Симулятор электронных схем Qucs-S: обзор новшеств версии 2.1.0

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

Qucs-S является программой с открытым исходным кодом для моделирования электронных схем. Qucs-S кроссплатформенный (поддерживаются Linux и Windows) и написан на С++ с использованием набора библиотек Qt. Для работы Qucs рекомендуется использовать также открытый движок моделирования Ngspice. Первый релиз Qucs, на котором основан Qucs-S, состоялся в 2003 году. В декабре этого года программе исполняется 20 лет. Актуальным релизом Qucs-S на текущий момент является версия 2.1.0. Далее будет рассказано о функциях, добавленных в релизах, вышедших в этом году.

Осторожно! Далее имеются анимированные GIF.

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

ESP32 в окружении VSCode

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

В нескольких следующих статьях я хотел бы детально рассмотреть настройку окружения VSCode для работы с фреймворком ESP-IDF. Не совсем популярная комбинация ПО обладает как преимуществами, так и недостатками, которые при детальном рассмотрении мы попытаемся исправить, обойти или превратить в достоинства.

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

Поскольку предполагается многопользовательская удаленная разработка, то мы решили вначале отработать выбор и настройку самой среды разработки. После нескольких экспериментов с Eclipse, Visual Studio и QT Creator выбор пал на кроссплатформенный VSCode и плагин от разработчика Espressif IDF для работы с фреймворком ESP-IDF.

В качестве «сердца» контроллера рассмотрим двухъядерный микроконтроллер ESP32, который обладает рядом преимуществ, и которые планируется использовать и раскрыть в проекте, а именно:

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

Информация

В рейтинге
2 915-й
Откуда
Нижний Новгород, Нижегородская обл., Россия
Дата рождения
Зарегистрирован
Активность

Специализация

Разработчик РЭА
Middle
От 200 000 ₽
Circuitry
Development of printed circuit board
Electronics Development
PCB design
Verilog HDL
FPGA
Cortex-M3
Pic Microcontroller
STM32