Как известно, движение — жизнь. А пошаговое движение — надёжный путь к любой цели (даже если эта цель в простом движении по кругу). Вот и я, лениво передвигаясь по бесконечной ленте товаров китайского маркетплейса наткнулся на необычный гаджет. Называется это чудо китайской инженерии «Xiaomi Cyber Gear», и мимо трёх этих слов нельзя пройти спокойно, если проживаешь в 2024-м году.
В сущности, это и не гаджет даже, а компонент для Xiaomi Cyber Dog. Эта робо‑псина не так популярна в Ютубе и в России, как изделия от Unitree, но видимо достаточно популярна, чтобы продавать к ней запчасти. Впрочем, любителям DIY, к коим я себя причисляю, данный моторчик тоже может быть интересен.
Сразу оговорюсь, цена за одну штуку около ста долларов и это не то, что можно хотеть в качестве дополнения к мигающему светодиоду. Кажется, что робо‑руки, робо‑ноги и прочие дорогие и мощные устройства будут более подходящими проектами для применения этого чуда техники.
Встречают в коробке, а провожают в ящике... В общем, встречает нас красивая картонная коробка, как от смартфона, не какой‑то антистатический пакетик. Внутри коробки китайская агитация, qr‑код на WiChat с кошка‑жена, радикально чёрный демпферный пенопласт и сам мотор. Тоже чёрный.
Первое впечатление от него, в самом деле, как от любого гаджета Xiaomi, это впечатление очень дорогой, почти премиальной вещи (на фото я уже залапал эту вещь, извините, не смог удержаться).
Самое главное, что можно рассказать про этот двигатель: это шаговый двигатель со встроенным энкодером и контроллером, взаимодействие с которым происходит по CAN-шине на скорости 1Мбит. Питается мотор от 24-х вольт, максимальное число оборотов - около трёхсот в минуту, минимальное - очень медленно. Детали можно прочитать в справочном буклете из коробки.
У мотора есть своё приложение-компаньон для Windows, из него можно подавать тестовые команды мотору, смотреть за показателями датчиков. Из него же мотору можно... обновить прошивку. Но я с приложением не стал связываться, так как оно на китайском целиком и полностью.
Ещё один интересный факт. Драйвер для мотора на основе socketcan я нашёл в GitHub, он был написан, внезапно, на Swift, в этот момент я узнал, что Swift для сервера существует и вполне себе жив. После недолгого этапа вкатывания мне даже понравилось. Есть в нём определённая лёгкость. Впрочем, мы не об этом сегодня собрались.
Драйвер взаимодействует с двигателем по CAN‑шине, позволяет управлять скоростью в режиме двигателя «speed», углом поворота и скоростью в режиме позиционирования «location», также позволяет управлять током в режиме «current», но я не пробовал, наверное, это для робо‑собаки и имитации работы мышц, а у меня был другой тип нагрузки.
Двигатель очень мощный, на мой взгляд, руками его не остановить. Энкодер точный, но не сильно точный, с ним приходится играть в «доведи меня до нужной кондиции» в несколько приёмов на разной скорости. Чем‑то напоминает... а впрочем не будем об этом.
Управлял двигателем из RPi 4 + СAN hat (но работает и с обычным MCP2515 и со встроенным в ESP32 can‑драйвером). Там же, внутри RPi писал код через VSCode Remote + Swift, как я и сказал, всё получилось довольно легко и удобно, двигатель уже описан высокоуровневыми классами и методами, думать о байтах не пришлось вовсе. Выглядит код примерно так:
let motorA = CyberGear.Motor(canID: 017, bus: canBusA)
try! motorA.runMode(.speed)
try! motorA.enable()
На видео демонстрация плавного набора скорости (в цикле и через Task.sleep(), простите, люди добрые)
По звуку он больше всего напоминает троллейбус или электросамокат, видимо, так и должно быть.
В целом очень приятный DIY-компонент, современный и удобный. Это как раз тот компонент в проекте (о котором я никогда не расскажу) с которым не возникло никаких проблем. Подключил и забыл. Рекомендую.
Ссылка на драйвер: https://github.com/CmST0us/CyberGearKit
Комментарии (24)
yar3333
05.08.2024 13:06+3Спасибо! Как я понимаю, диаметром мотор около 10 см. Нагуглил, что угловой момент якобы 37 Н*м (для сравнения, на Nema 23 момент около 1-3 Н*м в завис. от мотора) - видимо, за счёт встроенного планетарного редуктора (предполагаю, что 1:6). На али цена 8 тыс.руб.
Tarolrr
05.08.2024 13:06+4К сожалению, это удельный угловой момент (?) - 38 Н*м/кг. А момент у мотора около 12 Н*м. Если верить скринам сяоми, вывешенным в карточке товара на алишке.
solderman
05.08.2024 13:06+1Линейное движение конечно залипательно, но вот интересно реверсивное движееие на больших скоростях с разгоном и замедлением.
same_one Автор
05.08.2024 13:06+1Если сможете описать в коде, то могу попробовать это запустить. Но точно знаю, что оно умеет резко тормозить и наматывать на себя провода can-шины (опробовал большие скорости без креплений).
Кстати, забыл в статье упомянуть, оно умеет держать "ноль радиан" скорости, не даёт сдвинуть вал.nafikovr
05.08.2024 13:06+11 - установить угол 45°
2 - установить угол -45°
повторять с максимальной скоростью и ускорениями
kanvas
05.08.2024 13:06+3Спасибо за попытку обзора, может быть дополните техническими характеристиками, а не эмоциями "вау, классная коробочка!"
" Энкодер точный, но не сильно точный " - раскройте пожалуйста это. Что у него с повторяемостью движений ? особенно под нагрузкой
Есть ли детали которые по ощущениям быстро сломаются ?
В идеале конечно интересны фото/видео разборки девайся, какой редуктор, мотор, плата энкодера и тд
Интересны подтверждаются ли силовые характеристики.
Можно ссылки на упомянутый гитхаб ?
Dynasaur
Написать статью об электродвигателе, ничего не сказав о его характеристиках... Ну так, про 24В питания и около 300 об/мин где-то в тексте мимоходом. Ни мощности, ни КПД, ни момент, ни ток... Я уж не говорю об остальном... Зато какая коробочка квадратненькая!
same_one Автор
Я не сильно ориентируюсь в русскоязычной терминологии (и вообще в терминологии), поэтому и документацию переводить не стал. Но на фото вся текстовуха, что была в коробке.
Wallhead
Так может и статью не надо было писать тогда?
akastargazer
Характеристики можно посмотреть самостоятельно, в описании на Али. Зачем это тянуть в статью, непонятно.
Dynasaur
Зачем вообще статья про двигатель без характеристик не понятно. Цвет коробочки тоже там же можно посмотреть.
BigBeaver
Можно было хотя бы информацию от производителя без перевода выложить. Кто в теме - разберется и без русскоязычной терминологии.
same_one Автор
С китайскими производителями это сложнее. Например, в этой статье на четвертом изображении предоставлена информация от производителя.
BigBeaver
На Алике куча инфы на английском, а также всяких графиков интересных и тд. Вы разве не там его купили?