Pull to refresh
55
0
Сергей Савкин @SergeySavkin

Embedded engineer

Send message

Геометрия и навигация

Level of difficultyMedium
Reading time16 min
Views1.8K

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

Читать далее
Total votes 16: ↑16 and ↓0+16
Comments0

Почему Нам Нужен UART-Shell? (или Добавьте в Прошивку Гласность)

Level of difficultyEasy
Reading time12 min
Views10K

Есть такая классическая и одновременно забытая технология отладки FirmWare как интерфейс командной строки поверх UART. В этом тексте я напишу про достоинства и недостатки отладки через UART Shell.

Читать далее
Total votes 19: ↑17 and ↓2+15
Comments46

Встроенные системы: с какими сложностями сталкиваются разработчики

Level of difficultyEasy
Reading time9 min
Views2.8K

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

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

Читать далее
Total votes 19: ↑16 and ↓3+13
Comments1

Программируем и отлаживаем STM32 через USB Type-C порт, не нарушая спецификации USB

Level of difficultyEasy
Reading time2 min
Views15K

USB Type-C - действительно универсальный порт.

В данной статье я расскажу о том, как использую Type-C для отладки устройств на STM32. По каким линиям проведен интерфейс SWD, чтобы не нарушить спецификацию USB и сохранить совместимость со всеми устройствами, как сделать свой программатор, и в чем плюсы и минусы этого решения под катом.

Читать далее
Total votes 37: ↑37 and ↓0+37
Comments18

Создаем проект STM32 C++ FreeRTOS в vscode для очень маленьких

Level of difficultyEasy
Reading time4 min
Views10K

Жил себе спокойно, писал кодик в Keil и не парился. Писал изначально на СИ, но кода становилось все больше, а я все ленивее, перешел на С++ и ARM Compiler V6,19. Но пришел к тому что простых прерываний в таймере стало не достаточно, даже можно сказать не правильный подход. Задался желанием подключить какую-нибудь ОС. Выбор пал на FreeRTOS. Довольный, скачиваю операционку, подтягиваю файлы к проекту на плюсах, и получаю кучу ошибок. Попытка их устранить не увенчалась успехом. Вспомнил что есть CubeMX и там можно сгенерировать проект с уже подключенным freertoos. Проверил, 5-ым компилятором и языком СИ, проект отлично собирается, но как только переименовываем main.c в .cpp и выбираем компилятор 6,19, получаем кучу ошибок на ядро ОС, на определение inline и т.п. Так я и не смог подружить подружить ОС и C++ в Keil. Пришлось заменить среду разработки, изначально выбор пал на CubeIDE, все отлично дружится и собирается, но в душе оставались сомнения. В итоге финальным выбором стал vscode, далее опишу как создать проект именно в нем.

Здесь на сайте уже есть статьи по сборке проекта, ими и руководствовался, но пошел немного другим путем.

Читать далее
Total votes 17: ↑16 and ↓1+15
Comments4

AGLoRa 2.0 Вторая версия LoRa трекера. Всё сломать и переделать

Level of difficultyEasy
Reading time8 min
Views4.8K

Всем привет! Прошла пара лет с того момента как я попробовал сделать прототип... Хотя нет, начну с начала. 

Все началось с той самой статьи про LoRa котика! После того как несколько человек прислало мне на неё ссылку я подумал что штука может оказаться интересной, после чего запилил прототип своего LoRa трекера на Arduino, просто посмотреть как оно вообще может работать. Оно заработало, я опубликовал проект и пообщался с теми кто пробовал его собрать.

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

Любопытненько
Total votes 14: ↑14 and ↓0+14
Comments16

Распределительный щит для умной дачи

Level of difficultyEasy
Reading time5 min
Views9.8K

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

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

Читать далее
Total votes 17: ↑12 and ↓5+7
Comments46

Как машинное обучение помогает проекту «ЗабастКом» анализировать новости и освещать трудовые конфликты

Level of difficultyMedium
Reading time16 min
Views6.3K


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


Для Забасткома получилось улучшить систему автоматической обработки новостей с помощью алгоритмов машинного обучения. Это привело к увеличению охвата важных событий и уменьшению ручного труда редакторов. Добавлю, что работа с ребятами была похожа на мечту любого DS специалиста: "заказчик" легко шел на контакт; присутствовала заинтересованность и неплохое понимание ML алгоритмов; некоторая продакшн-система уже функционировала; данные для обучения алгоритмов легко собирались. А под катом — поделюсь подробностями и кодом.

Читать дальше →
Total votes 54: ↑54 and ↓0+54
Comments9

Припой припою рознь, или Несколько слов о флюсах

Reading time7 min
Views38K

Общаясь сейчас со связистами на предмет «сообщите, кому какой припой нужен», получил достаточно типовой ответ — «хороший, чтобы всё паял». Углублённое обсуждение вопроса вынесло на поверхность несколько запомнившихся людям торговых марок — в первую очередь Asahi — но и только. Про флюсы и их различия сказано ничего не было.

Спектр задач по пайке при этом у связистов простирается от антенно-фидерного хозяйства (кабели, разъёмы), через аксессуары (зарядки, гарнитуры) и до ремонта собственно радиоаппаратуры (SMD-компоненты).

В связи с этим я не только провёл краткий ликбез и показал пару табличек, но и хочу написать про это здесь, чтобы потом было удобно давать ссылку :)

Итак: какие бывают флюсы в припоях, что лучше — ORL0 или ROM1 (я проверил гуглем, обе аббревиатуры на Хабре встречались 0 раз), где искать эту информацию и зачем вообще это надо.

Читать далее
Total votes 141: ↑133 and ↓8+125
Comments92

Насколько круто иметь свой сервер в комнате

Reading time6 min
Views111K

Некоторые олды часто вспоминают эпоху до смартфонов, когда в студенческие времена или в школе у них был любимый настольный компьютер. Он стоял прямо в комнате, рядом с кроватью, и работал как личный ассистент в режиме 24/7: играл фоновую музыку (со специальным плейлистом, когда в гости приходили девушки), показывал фильмы, будил уведомлением из аськи или ирки, скачивал сайты ночью по диалапу и т. д.

Но кажется, что эта эпоха возвращается. Только на новом уровне. Сейчас опять стало очень круто иметь в комнате свой сервер, только он выглядит иначе и выполняет другие функции.
Читать дальше →
Total votes 148: ↑147 and ↓1+146
Comments313

Мой личный опыт восстановления старых фотографий с помощью нейросетей

Reading time2 min
Views16K

Мой скромный опыт запуска нейросетей на ноутбуке для восстановления старых фотографий.

Читать далее
Total votes 18: ↑13 and ↓5+8
Comments31

Автономный LTE роутер своими руками | Часть 1 — От идеи до схемы

Level of difficultyMedium
Reading time14 min
Views34K

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

Да-да, это именно разработка собственного роутера, не простой допил уже имеющегося и переупаковка в другой корпус. Отнюдь! Схема, печатная плата, пайка – всё сделаем сами и защитим диплом. Заинтересовал?

Тогда добро пожаловать под кат
Total votes 107: ↑106 and ↓1+105
Comments57

SWUpdate, Yoctо(ерный) театр и paperina

Reading time15 min
Views3.6K

SWUpdate — это агент обновлений Linux, целью которого является эффективный и безопасный способ обновления встроенной системы. SWUpdate поддерживает локальные и удаленные обновления, включает несколько стратегий обновления, и его можно легко интегрировать в систему сборки Yocto, подключив слой meta-swupdate.

В статье описывается как можно настроить режим обновление в Yocto наиболее простым способом для платы Orange Pi R1, таким же образом вы можете настроить и обновление для самой распространенной платы Raspberry Pi.

Дистрибутив Yocto для которого будет подготовлено обновление наследуется от образа core-image-minimal и выполняет функцию простого маршрутизатора, используя DHCP и Shorewall.

Статья из серии: если хочешь что то обновить, сделай это сам.

Читать далее
Total votes 6: ↑6 and ↓0+6
Comments1

Нейросети на RISC-V с Movidius Neural Compute Stick

Reading time6 min
Views4.8K

RISC-V — перспективная открытая архитектура, не требующая royalty от производителей железа на её основе. Нужно отметить, что интерес к архитектуре RISC-V растёт намного быстрее, чем закрепляется её спецификация и идёт процесс принятия новых фич комитетом, а также дальнейшая реализация в железе и софте. Например, сейчас сложно найти предложение по CPU и совместимое с ним Linux ядро с поддержкой векторизации, хотя RVV 0.7.1 уже существует, и RVV 1.0 вот-вот его заменит. В нашем эксперименте трудоемкие вычисления перекладываются на внешнее устройство, поэтому сгодится и самый простой центральный процессор.

В этой статье вы найдете подробные инструкции по использованию библиотек OpenVINO и OpenCV на RISC-V для запуска нейронных сетей с использованием акселератора. Цель материала — продемонстрировать гибкость решений на примере использования RISC-V CPU в качестве хоста для работы с нейросетевым ускорителем Intel Movidius Neural Compute Stick 2 (NCS2). Большая часть статьи состоит из инструкций по сборке под RISC-V. Конечно, это не самый творческий процесс, но мы верим, что со временем все они спрячутся под процессами CI/CD, как когда-то было с ARM-экосистемой.

Читать далее
Total votes 19: ↑19 and ↓0+19
Comments2

Пошаговая GDB отладка ARM процессора из консоли в Win10

Reading time7 min
Views8.1K

Иногда бывает ситуация когда надо срочно что-то пошагово отладить. При этом нет времени и желания ставить какие-то тяжелые IDE. В таких случаях может помочь пошаговая GDB отладка ARM Cortex M33 из командной строки Windows. В этом тексте я расписал пошаговое руководство того как это сделать.

Читать далее
Total votes 14: ↑12 and ↓2+10
Comments25

Как полюбить задачи регрессии

Reading time5 min
Views6.9K

У задач классификации, в отличии от задач регрессии, есть одно очень приятное свойство:
большинство ML алгоритмов решения задач классификации выдают не просто ответ, а некоторую оценку уверенности модели в ответе. То есть помимо метрик самой модели мы обладаем оценкой вероятности для конкретного ответа на конкретном примере. Это здорово помогает в принятии решений.
Неправда ли хотелось бы иметь что-то такое и для задач регресии?

Читать далее
Total votes 8: ↑8 and ↓0+8
Comments5

Сколько стоит переехать жить в Ирландию? Личный опыт

Reading time6 min
Views44K

В ноябре 2021 с женой переехал из Москвы в город с населением 22 тыс. человек на западном побережье республики Ирландия.

На сколько сложен релокейт? Зависит от конкретной ситуации, здесь же опишу личный опыт и конкретные траты на старте.

Читать далее
Total votes 68: ↑61 and ↓7+54
Comments60

Как 3D-печать смесевого ракетного топлива изменит ракетно-космическую отрасль и поле боя

Reading time4 min
Views6.9K

И снова сначала видео.

На данном видеоролике продемонстрирован концепт ракетостроительного завода в коробке — Rocket Factory In-a-Box (RFIB) от исследовательской лаборатории Air Force Research Laboratory (AFRL) в США. Малогабаритный мобильный завод по производству кастомизированных твердотопливных ракет в форм-факторе контейнера для перевозки грузов позволит запускать ракеты в любое время и в любом месте (Рис. 1). Сеть скрытых автономных ракетных заводов (АРЗ) обеспечат непрерывность высокоточного огневого воздействия по первому требованию (услуга on-demand для военных), позволив уйти от зависимости от двух-трех уязвимых и прозрачных для разведки промышленных центров по производству ракетного вооружения с негибкой логистикой крупногабаритных грузов к быстрому прототипированию и производству ракетного вооружения непосредственно на линии фронта с гибко настраиваемой логистикой, сыпучее сырье для которого транспортируется малогабаритными высокомобильными скрытыми транспортными средствами.

Прямо «Supreme Commander» на максималках — так американцы собираются воевать в
веке двадцать первом.

Читать далее
Total votes 15: ↑12 and ↓3+9
Comments84

Проект «Экспансия»: 3D-печать смесевого ракетного топлива

Reading time5 min
Views15K

3D-печать смесевого ракетного топлива — мы сделали это. Спустя сотню экспериментов, несколько волн отчаяний и стадий принятия неизбежного. Сделали и запатентовали.

Разработанная технология аддитивного производства твердотопливных зарядов (ТТЗ) из смесевого ракетного топлива (СРТ) для твердотопливного ракетного двигателя (РДТТ), методом FDM-печати включает в себя: специальный состав СРТ с требуемыми энергетическими и эксплуатационными параметрами, сам 3D-принтер послойного синтеза для печати ракетного топлива, а также несколько сопутствующих технологий.

Читать далее
Total votes 87: ↑85 and ↓2+83
Comments169

STM32MP1 запуск Ubuntu 22.04

Reading time40 min
Views15K

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

Совсем недавно, компания Canonical, выпустила Ubuntu 22.04, "потыкав" ее на виртуалке, решил накатить апдейт на рабочий ноут, пока накатывались обновления, перебирал девкиты в полке, нашел запыленную STM32MP157c-DK2 отладучную платку от старого проекта, ну и подумал - почему бы и не попробовать запустить 22-ю убунту на этом CPU.

В интернете полно статей как собрать Yocto или Buildroot под данный процессор, но ни одной как собрать свой собственный дистрибутив, по крайней мере, я не встречал.

Читать далее
Total votes 49: ↑49 and ↓0+49
Comments21
1

Information

Rating
Does not participate
Location
Tralee, Kerry, Ирландия
Date of birth
Registered
Activity