惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Vercel News
Vercel News
The GitHub Blog
The GitHub Blog
博客园 - 【当耐特】
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Recent Announcements
Recent Announcements
D
Docker
GbyAI
GbyAI
酷 壳 – CoolShell
酷 壳 – CoolShell
WordPress大学
WordPress大学
The Cloudflare Blog
雷峰网
雷峰网
A
About on SuperTechFans
小众软件
小众软件
博客园 - Franky
博客园 - 聂微东
F
Full Disclosure
大猫的无限游戏
大猫的无限游戏
C
Check Point Blog
MongoDB | Blog
MongoDB | Blog
G
Google Developers Blog
Microsoft Azure Blog
Microsoft Azure Blog
U
Unit 42
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
V
V2EX
Engineering at Meta
Engineering at Meta
宝玉的分享
宝玉的分享
aimingoo的专栏
aimingoo的专栏
量子位
P
Proofpoint News Feed
Hugging Face - Blog
Hugging Face - Blog
博客园_首页
罗磊的独立博客
Martin Fowler
Martin Fowler
D
DataBreaches.Net
cs.CL updates on arXiv.org
cs.CL updates on arXiv.org
S
Secure Thoughts
Project Zero
Project Zero
L
LangChain Blog
阮一峰的网络日志
阮一峰的网络日志
C
Cybersecurity and Infrastructure Security Agency CISA
T
Tailwind CSS Blog
S
Schneier on Security
Blog — PlanetScale
Blog — PlanetScale
The Hacker News
The Hacker News
Spread Privacy
Spread Privacy
Security Latest
Security Latest
NISL@THU
NISL@THU
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
C
CXSECURITY Database RSS Feed - CXSecurity.com
J
Java Code Geeks

Все публикации подряд на Хабре

Ловим музу за клавиатуру: как айтишнику стать автором Что умеет Midjourney в 2026? Мой немного грустный разбор этого шикарного инструмента Никто не любит писать тесты, но ИИ может исправить это IPv8 выглядит как мечта. Поэтому почти наверняка не взлетит Производители вернули в продажу материнки с DDR3. Что происходит? Управление агентом с телефона через Telegram теперь в KodaCode От координации к лидерству: как меняется роль руководителя разработки Я сделала родителям бизнес вместо пенсии: зарабатываем 70 тысяч, мама не даёт продать В три раза быстрее приемка товара и оптимизация трудозатрат на 73%: как «РСТ-Инвент» помог Gulliver Group ИИ-шечный мир победил? О влиянии искусственного интеллекта на игропром Кремль снижает давление на Телеграмм пока Европа строит интернет по паспорту Как CEO, CTO и CIO за 8 часов собрали ИИ-директора, который умеет держать позицию под давлением Как (не) потерять домен за выходные Вместо 8 разных VPS: как я организовал практику студентам на одном сервере Почему твой Open Source проект не замечают? R&D: искусство управления неопределенностью в разработке AI-дефляция: вакансий для разработчиков больше, а рост зарплат — худший за 15 лет Мы отдали управление роботами OpenClaw. Что из этого вышло Галактический ID: система идентификации для всех форм разумной жизни Шесть основ бизнес-анализа: начинаем с вопроса «Кто в игре?» Код-ревью, в котором дело не в коде Данные переехали. Команда — нет Системной подход к сдаче OSWE в 2025 Почему комната управления реактором покрашена в цвет морской пены 4 YAML-файла вместо PySpark: как аналитикам строить пайплайны без разработчиков LLM-агент для поиска свободных доменов: автоматизируем подбор Когда, зачем и как правильно начинать новую сессию в Claude Code? Как я заставил нейросеть писать макросы для FreeCAD Анатомия ИИ‑агента для подбора персонала. От тысячи резюме к топ‑10 за минуты Опыт разработчика как экономика внимания Автономность как точка невозврата: кто будет субъектом в цифровом будущем Обучение ИИ в «диких» условиях: как рутинные действия превращаются в датасеты Как измерить LLM для задач кибербеза: обзор открытых бенчмарков Где хранить код? Сравнение GitHub, GitLab и Bitbucket Математика объясняет, почему нормальное распределение встречается повсюду Почему ваш FinOps не работает: 12 тезисов от практиков Как подписать проектную документацию УКЭП с использованием бесплатных лицензий Pilot Адаптивное администрирование Sigla Vision Я грузил уран в бочки, а потом 20 лет строил ИТ в атомной отрасли Чем позвонить с Эвереста? История и обзор спутниковой связи. Часть 2 Как языковая модель помогает контролировать качество инструктажей по охране труда в металлургии Как не передать на desktop свой IP в РКН Анатомия SAP Privileges: как устроено управление правами в macOS MoneyDev: Сказка про три главных слова Обновлённый токенизатор видео K-VAE 2.0 от Сбера Как сделать диспетчеризацию дома на 1284 квартиры почти бесплатно Как мы разогнали железную дорогу Мы дали агентам рутину. Теперь надо решить — что делать с освободившимся временем Токсичный контент, промпт-хакинг и защита ИИ — всё о Guardrails для LLM Умный город начинается с точного взгляда: как «Фалькон Тех» меняет пространство к лучшему Навайбкодил приложение для анализа графов Почему Дюну так интересно читать? Упрощаем работу с рутиной или как стать Гендальфом Белым Деконструкция Go: CPU, RAM и что там происходит. Go Assembler база. Часть 1.1 Какие профессии исчезнут из-за ИИ, а какие появятся? И что с этим делать Как мы построили IT-отдел, где хочется расти: архитектурные встречи, прозрачные метрики и книжные подарки Rufler: Делаем из Claude Code автономный рой через один YAML-конфиг Sing-box и белый список приложений Как построить надёжный обмен сообщениями в микросервисах: лучшие практики для enterprise OpenAI строит MLM-пирамиду, а McKinsey и Accenture помогают ей в этом Дом, который не построил Фишер (Часть 2) «Сверхзвуковой математик» против «Вдумчивого логиста»: битва алгоритмов 3D-упаковки Мультимодальные модели – грубый и дорогой инструмент Разговоры ничего не стоят. Код тоже Проверки физических лиц: с кого начнет ФНС Топ-10 бесплатных нейросетей для создания видео в 2026 году Первые слои кода: как наши решения сегодня определяют архитектуру ИИ на десятилетия Разработка нового статического анализатора: PVS-Studio JavaScript Поиск уязвимостей ПО: базовый минимум или роскошный максимум Почему оценка персонала не работает как инструмент управления Как мы разработали ИИ-ассистента и сократили рутину продуктовой команды на 50% Как я ушел из найма, нажарил косточек и продал на маркетплейсах на 168 млн в год Когда 1С:ERP уже внедрена, а нормального производственного плана всё ещё нет Как я сделал Claude мультимодальным, подключив к нему Qwen Omni Как приглашение на вакансию мечты превращается в атаку Infrastructure as Code: философия и лучшие практики IaC Тестируем Yandex Code Assistant на задаче, в которой нужно хранить секреты nxs-universal-chart v3.0: новое поколение универсального Helm-чарта Callback Injection: Техника, которая отправила Microsoft Defender в глухой нокаут «Все идеи на стол»: митап как способ вывести проект из тупика Сегодня я узнал нечто новое о GPU благодаря багу в своей игре Как заставить LLM ̶ ̶г̶а̶л̶л̶ю̶ ̶ эволюционировать Карта событий как фундамент аналитики: практический кейс для E-commerce Что выбрать для AI: x86, ARM или RISC-V? Дайджест железа за март Роль соматических мутаций в развитии аутоиммунных заболеваний: путь к избирательной терапии Mythos от Anthropic — тревожный сигнал для всех, а не только для банков Guardrails для LLM на Java: как приручить промпт‑инъекции и токсичные ответы Green-VLA: как мы собрали VLA-модель для реального антропоморфного робота и не потеряли обобщение Финансовая гонка вооружений: почему умные люди добровольно в ней участвуют Эра ИИ-агентов наступила: выбираем лучшего цифрового сотрудника # Практический опыт внедрения WinCC Redundancy на производственном предприятии Сделал MVP за 3 дня, а потом неделю прикручивал оплату. Оно того стоило? Физика против Маска: почему Starship V3 может оказаться ещё одной катастрофой Нефть Венесуэлы: крупнейшие запасы в мире, но не крупнейшая нефтяная держава JPA 4. Переосмысление Hibernate Почему зеркальная фотокамера Nikon D5 десятилетней давности идеально подошла для миссии «Артемида-2» Проект «Уровень-Спутник» или как мы сделали платформу для гидрологов «Замедлиться, чтобы ускориться»: почему ИИ повышает цену ошибок в требованиях и архитектуре Как с нуля поднять трафик IT-компании на 1657% при бюджете 55 тыс. и выжить Pixel-perfect Downsampling — идеальная отрисовка 50 миллионов точек без потерь
Осваиваем открытый проект OpenLoong: первые шаги в сборке полноразмерного гуманоидного робота
Ашот Агабеков · 2026-06-01 · via Все публикации подряд на Хабре

Средний

8 мин

8K

Привет, меня зовут Ашот Агабеков. Я Java backend‑разработчик.

В этой статье хочу рассказать про мой pet project для свободного времени — попытку собрать гуманоидного робота по проекту OpenLoong.

Немного наперед, так он должен выглядеть, когда я его закончу:

Изображение от лаборатории авторов

Изображение от лаборатории авторов

OpenLoong это робототехнический проект китайских инженеров.

Проект включает в себя open source 3d модели железа, схемотехнику и программное обеспечение. По сути, всё, что требуется для создания такого современного робота, подобного Unitree.

Именно по этому проекту я и собираю робота. Я не робототехник по основной профессии, не сотрудник лаборатории и не представитель компании, которая разрабатывает промышленных роботов. Я Java-разработчик, которому стало интересно проверить себя за пределами привычного backend-мира: взять сложную инженерную систему и постепенно пройти путь от 3D-моделей и печати деталей до механики, актуаторов, электроники, управления и AI-слоя.

Как выглядит в проекте

Ссылку на 3D сборку оставлю ниже

Мои первые шаги

Разумеется, для начала купил 3d принтер.

Взял Elegoo Centauri Carbon (не реклама), ребятам удалось сделать нормально и за недорого, молодцы и удачи им, когда приехал с разбитым стеклом из-за доставки, вежливо прислали новое стекло, за что спасибо!

И начал печатать корабли... И сделал свою первую распечатку. До этого в жизни 3д принтером не пользовался. Но вроде как-то сориентировался.

Важно понимать: открытый проект не означает “скачал файлы, нажал кнопку, получил робота”.

На практике остаётся много вопросов:

  • как подготовить детали к печати;

  • как ориентировать их на столе;

  • где ставить поддержки;

  • какие детали лучше печатать первыми;

  • что делать, если геометрия не подходит под конкретную сборку;

  • как подгонять посадочные места;

  • как усиливать слабые зоны;

  • как потом размещать электронику;

  • как перейти от пластика к актуаторам и управлению.

Иногда приходилось нарезать детали в 3d, чтобы уместились на столе принтера и затем клеить..

3D модель головы

3D модель головы

Первый план выглядел слишком оптимистично

Когда я только начинал, план казался довольно понятным:

  1. Напечатать голову.

  2. Собрать плечевой блок и часть корпуса.

  3. Перейти к шее и актуаторам.

  4. Начать работу с руками.

  5. Добавить электронику.

  6. Разобраться с управлением моторами.

  7. Подключить восприятие речи и AI.

И конечно же процесс меня "приземлил". Все сложнее, чем было запланировано:) Тут буквально несколько отдельных миров.

Голова — это уже отдельный этап.
Плечи — отдельный этап.
Шея — отдельный этап.
Актуаторы — отдельная большая инженерная тема.
Руки — вообще самостоятельный проект.
AI — это уже верхний слой, который имеет смысл добавлять только тогда, когда нижние слои достаточно стабильны.

Голова: первый крупный этап

Первым крупным этапом стала голова.

На рендерах и в CAD всё выглядит красиво. Но когда начинаешь печатать физическую деталь, появляются вопросы, которых не видно на картинке:

  • как правильно расположить деталь на столе;

  • где нужны поддержки;

  • сколько пластика уйдёт;

  • сколько будет печататься деталь;

  • не поведёт ли её;

  • как потом снять поддержки;

  • насколько точно совпадут отверстия;

  • получится ли нормально собрать корпус головы.

Первую версию робота я решил не доводить до идеального внешнего вида. Без полировки, без покраски, без попытки сразу сделать “как на выставке”.

Вспоминается персонаж

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

В pet project легко застрять на косметике: шкурить, красить, перепечатывать, улучшать внешний вид. Но если делать это слишком рано, можно потерять месяцы, так и не проверив механику.

Поэтому мой принцип был простой:

Сначала геометрия и функциональность, потом красота.

Печатал голову PLA, все остальное в роботе дальше только PETG CF и просто PETG. Больше PLA не трогал, он очень хрупкий.

Знаю это ужасно:) 3D Печатники плачут

Знаю это ужасно:) 3D-печатники плачут

Маска с обратной стороны

Первая напечатанная голова без лицевой панели

Когда появилась лицевая панель, проект стал ощущаться иначе

В какой-то момент я напечатал лицевую часть головы с отверстиями под камеры или датчики.

И с виду уже проект перестаёт быть абстрактной сборкой. Он начинает выглядеть как будущая система.

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

Да, на этом этапе всё выглядит скорее как черновой инженерный прототип, а не как выставочный робот. Но именно так и выглядит ранняя стадия DIY-сборки: проверка геометрии важнее покраски и красивых рендеров.

Fusion 360 пришлось осваивать не для красоты, а для выживания проекта

Я программист. Моя привычная среда - IDE, Git, логи, профилировщики, Docker, CI/CD, базы данных и сервисы.

Но в робототехнике очень быстро понимаешь: без CAD нормально двигаться невозможно.

Нужно:

  • подгонять детали;

  • менять крепления;

  • проектировать адаптеры;

  • делать посадочные места;

  • проверять зазоры;

  • усиливать слабые зоны;

  • понимать, как деталь будет печататься;

  • думать, как потом подлезть к крепежу.

Так я начал осваивать Fusion 360.

Корпус и плечи: когда проект стал больше похож на робота

После головы я перешёл к корпусу и плечевому блоку.

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

На фотографиях видно, что стадия ещё черновая. Где-то заметны слои печати, где-то временная сборка, где-то детали просто приложены для проверки. Но именно так, кажется, и выглядит настоящий DIY-проект.

Сначала ты радуешься, что деталь вообще напечаталась :-)

Потом радуешься, что она примерно встала на место.

Потом понимаешь, что крепление надо переделать, потому что в реальности оно мешает другой детали.

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

Белый корпус без головы, вид спереди

Белый корпус без головы, вид спереди

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

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

Это не таракашка:)

Это не паучок:)

Шея: маленький узел, который быстро становится важным

Шея кажется небольшой частью по сравнению с корпусом или руками. Но для гуманоидного робота она важна.

Голова должна не просто стоять сверху. Она должна:

  • держаться надёжно;

  • иметь возможность двигаться;

  • не цеплять корпус;

  • не иметь лишнего люфта;

  • оставлять место под проводку;

  • выдерживать нагрузку;

  • быть обслуживаемой.

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

В софте мы часто делаем proof of concept. В железе это тоже работает, только результат можно потрогать руками.

В сборке все выглядит получше:)

Уже не паучок:)

Уже не паучок:)

Руки: отдельный проект внутри проекта и тут фиаско

Следующим крупным направлением стали руки.

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

  • плечо;

  • локоть;

  • предплечье;

  • крепления;

  • передача усилия;

  • моторы;

  • редукторы;

  • кабели;

  • ограничения по весу;

  • прочность деталей.

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

Рука:)

Рука:)

В руках особенно хорошо чувствуется ограничение 3D-печати, гибкость пластика, вес.

Напечатать форму можно. Но если узел должен работать под нагрузкой, нужно думать совсем о другом:

  • прочность пластика;

  • направление слоёв;

  • втулки;

  • подшипники;

  • люфты;

  • износ;

  • крепёж;

  • доступ к обслуживанию;

  • как всё это будет двигаться после сборки.

То есть “выглядит как рука” и “работает как рука” - это две разные стадии.

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

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

Актуаторы и моторы: место, где всё становится серьёзно

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

На этом этапе я начал разбираться с BLDC-моторами, редукторами, схемами управления, электроникой управления двигателями и best practices по приводам.

И здесь быстро становится понятно, почему гуманоидные роботы стоят дорого.

Пластик можно напечатать дома.
Крепёж можно заказать.
Fusion 360 можно освоить.
Но качественные приводы, редукторы, датчики положения, драйверы, питание и управление - это уже серьёзная часть бюджета и сложности.

Пока это не готовая промышленная система. Но мне интересно разобраться именно в физике узлов, а не просто купить дорогой готовый actuator и прикрутить его.

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

По электронике

Пытаюсь что-то сделать с двигателем 5010 360kv (но двигатель слабый, для практики пойдет)

В качестве контроллера взял: ODrive3.6

Возможно как получится разобраться с электроникой, смогу сделать нормальный редуктор, планирую использовать в качестве пластика Нейлон 6

Что уже получилось

На текущий момент у меня есть:

  • напечатанная и собранная голова;

  • лицевая панель с отверстиями под камеры или датчики;

  • часть корпуса;

  • плечевой блок;

  • элементы шеи;

  • первые детали рук;

  • механика локтя;

  • понимание, как дальше двигаться по моторам и управлению;

  • первые практические навыки Fusion 360;

  • опыт печати крупных деталей и их подгонки;

  • первые шаги в электронике управления двигателями.

Это ещё не робот, который ходит по комнате и приносит чай. Но это уже не фантазия уровня “когда-нибудь я соберу робота”, хотя время покажет… может это просто увлечение…

Но в целом, это физическая конструкция, которая постепенно растёт.

Что оказалось сложнее всего

Самое сложное — не какая‑то одна деталь.

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

В обычной backend‑разработке можно быть сильным Java‑разработчиком и довольно долго не трогать фронтенд, железо или механику.

Здесь так не получится.

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

Робот быстро наказывает за локальное мышление.

И это, наверное, самое полезное в таком pet project. Он учит смотреть на систему целиком.

Дальнейший план

Дальше я хочу двигаться по нескольким направлениям:

  1. Довести механику корпуса и шеи.

  2. Продолжить работу над руками.

  3. Разобраться с актуаторами и BLDC-моторами.

  4. Собрать базовую электронику управления.

  5. Добавить камеры и микрофоны.

  6. Подключить распознавание речи.

  7. Начать эксперименты с AI-слоем.

  8. Постепенно перейти от статичной фигуры к роботу, который может воспринимать команды и выполнять простые действия.

  9. Думаю я не потяну дорогие видеоускорители Ai, просто можно попробовать мой Orange PI привязать к модели https://deepmind.google/models/gemini-robotics/. Модель от гугла может давать координаты, видеть, слышать - быть полноценным дешевым "мозгом"

Почему я решил написать об этом на Хабре

Во-первых, хочется показать живой инженерный путь без иллюзии, что всё получается с первого раза.

Во-вторых, мне кажется, такие pet projects полезны и для профессионального развития. Даже если моя основная работа - Java backend, опыт сборки робота заставляет думать шире: про архитектуру, ограничения, зависимости, отказоустойчивость и взаимодействие разных слоёв системы.

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

Хотелось освятить хороший open source проект OpenLoong китайских инженеров, которые рады подарить миру их ценные разработки. Если кто-то сможет дальше зайти, чем я, делитесь, буду рад посмотреть на ваши успехи. Ниже я даю ссылки на исходный код робота, может наши инженеры создадут что-то классное на базе его наработок.

Вместо заключения

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

Есть напечатанные детали, рабочий стол, крепёж, Fusion 360, 3D-принтер, эксперименты с электроникой, первые шаги в механике и огромное желание когда-то довести это до работающей системы.

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

Роботы не появляются из воздуха.
Их кто-то собирает руками.

Почему бы не попробовать тоже? Успехов всем!

Ссылки, простите :-)

Обо мне: https://ashotagabekov.ru
Telegram-канал проекта Chatly Robotics: https://t.me/chatlyrobotics
Rutube: https://rutube.ru/channel/13420137/
YouTube: https://www.youtube.com/channel/UCZ3P5gwPSPQMUTqx7O-nMiQ
OpenLoong: https://atomgit.com/openloong
OpenLoong Github зеркало: https://github.com/loongOpen
Ссылка на 3d файл полного робота (осторожно открывается долго): https://atomgit.com/openloong/OpenLoongHardware/blob/main/QingLoong V2.5/en/QingLoong V2.5 - 3D File/TA00-Assemblies of Modules - 3D File/TA00-Qinglong Humanoid Robot - Master Assembly.STEP
Для быстрого просмотра лучше открывать в CAD Assistant, но для работы лучше через Fusion 360