Если вы фанат робо-собаки от Boston Dynamics и хотели бы завести дома его маленькую копию, вам в помощь OpenCat.

OpenCat — платформа миниатюрных четвероногих роботов на основе Arduino и Raspberry Pi с открытым исходным кодом. Её разработал Petoi, производитель футуристических программируемых роботов-питомцев. Компания предлагает всем попробовать создать своего собственного робота-любимца. Смотрите, какой милый:

В 2016 году доктор Жунчжонг Ли, вдохновленный знаменитым робопсом Boston Dynamics, начал работать над личным проектом. После года исследований и разработок он основал компанию «Petoi» и направил в неё все имеющиеся ресурсы. Проект должен был способствовать сотрудничеству в исследованиях четвероногих роботов, обучению и разработке доступных роботизированных домашних животных, а также должен был донести концепции STEM (“science, technology, engineering and mathematics” или “наука, технологии, инженерия и математика”) до масс и вдохновить новичков (как детей, так и взрослых) присоединиться к созданию роботизированного ИИ.

Проект пока ещё представляет собой слишком сложную систему, доступную только серьёзным производителям, но его создатели решили поделиться своей разработкой с сообществом через массовое производство и снизить затраты на оборудование и программное обеспечение. OpenCat развернули на бионическом симпатичном коте-роботе Nybble и высокопроизводительной роботе-собаке Petoi размером с ладонь. Сейчас Petoi установили производственную линию и могут поставлять доступные роботизированные комплекты и аксессуары по всему миру.

Проект представляет собой базовую платформу с открытым исходным кодом для создания программируемых походок, передвижения и развертывания четвероногих роботов с инверсной кинематикой, а также для переноса симуляций в реальный мир с помощью C/C++/Python. Пользователи уже развернули симуляции в NVIDIA Issac и пробуют обучение с подкреплением на роботах. Они также успешно протестировали OpenCat на своих питомцах-роботах, напечатанных на 3D-принтере.

Благодаря настраиваемой плате Arduino и сервоприводам, координирующими все инстинктивные и сложные движения (ходьба, бег, прыжки, сальто назад), можно крепить к роботам различные датчики, позволяющие обеспечить восприятие и внедрить возможности искусственного интеллекта при помощи Raspberry Pi или других чипов ИИ (наподобие Nvidia Jetson Nano) через проводное/беспроводное соединение. 

Ознакомиться со всеми работами пользователей можно здесь.

Процесс установки:

Программное обеспечение OpenCat работает как на Nybble, так и на Bittle и управляется NyBoard на базе ATmega328P. Более подробную документацию можно найти в Petoi Doc Center.

Для настройки платы:

  1. Загрузите репозиторий и выполните развёртывание. Удалите суффикс -main (или любое имя ветки) папки.

  2. Откройте файл OpenCat.ino, выберите своего робота и версию платы.

#define BITTLE    //Petoi 9 DOF robot dog: 1x on head + 8x on leg
//#define NYBBLE  //Petoi 11 DOF robot cat: 2x on head + 1x on tail + 8x on leg

//#define NyBoard_V0_1
//#define NyBoard_V0_2
#define NyBoard_V1_0
//#define NyBoard_V1_1
  1. Закомментируйте #define MAIN_SKETCH, чтобы перевести код в режим конфигурации платы. Загрузите и следуйте инструкциям для продолжения.

// #define MAIN_SKETCH

  1. Если вы активируете #define AUTO_INIT, программа установится автоматически без подсказок. При этом смещение суставов не сбрасывается, а производится калибровка IMU.

  2. Подключите USB-загрузчик к NyBoard и установите драйвер, если USB-порт не найден в Arduino -> Tools -> Port.

  3. Нажмите кнопку загрузки (->) в верхнем левом углу в Arduino IDE.

  4. Откройте монитор последовательного порта Arduino IDE. Вы можете найти кнопку в разделе «Инструменты» или в правом верхнем углу IDE.

Установите монитор последовательного порта, как “нет конца строки” и со скоростью 115200 бод. Вам будет предложено:

Reset joint offsets? (Y/N): Y

Введите «Y» и нажмите Enter, если вы хотите сбросить все смещения суставов до 0.

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

  1. Калибровка IMU (инерциальная измерительная единица).

Вам будет предложено:

Calibrate the IMU? (Y/N): Y 

Введите «Y» и нажмите Enter, если вы никогда не калибровали IMU или хотите повторить калибровку.

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

Когда монитор последовательного порта напечатает «Готово!», вы можете закрыть его и выполнить следующий шаг.

  1. Раскомментируйте #define MAIN_SKETCH, чтобы сделать его активным. На этот раз код становится обычной программой для основных функций. Загрузите код.

#define MAIN_SKETCH

Когда монитор последовательного порта напечатает «Готово!», робот будет готов выполнять ваши следующие инструкции.

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

  2. Вы можете использовать монитор последовательного порта для его калибровки напрямую. Или вы можете подключить ключ Bluetooth и использовать приложение Petoi (на Android/iOS) с более удобным интерфейсом. Мобильное приложение доступно тут:

Вы можете обратиться к разделу калибровки в Руководстве пользователя () и Руководстве по приложению Petoi.

  1. Вы можете использовать инфракрасный пульт дистанционного управления или другие приложения (такие как приложение Petoi, Python, монитор последовательного порта и т. д.), чтобы играть с роботом (https://bittle.petoi.com/7-play-with-bittle) .


Что ещё интересного есть в блоге Cloud4Y

→ Как открыть сейф с помощью ручки

→ Сделайте Linux похожим на Windows 95

→ Как распечатать цветной механический телевизор на 3D-принтере

→ WD-40: средство, которое может почти всё

→ Изобретатели, о которых забыли

Подписывайтесь на наш Telegram-канал, чтобы не пропустить очередную статью. Пишем только по делу. А ещё напоминаем про второй сезон нашего сериала ITить-колотить. Его можно посмотреть на YouTube и ВКонтакте.

Свежая серия

Комментарии (11)


  1. Nixhibrid
    25.08.2022 21:39

    Пока не густо в магазине, и цены кусаются, но думаю, надо брать


    1. Earthsea
      26.08.2022 12:05

      Вспоминая "наш ответ Boston Dynamics" (не тот, который Федор, а тот который с палкой)

      цены кусаются

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


    1. SirPtitsa
      26.08.2022 18:20

      мой кот не очень обрадуется такому соседу XD


  1. MechanicusJr
    25.08.2022 22:49
    +5

    CATS ARE NICE


  1. spc
    26.08.2022 01:28
    +7

    Я понимаю, некогда переводить, фигачь контент. Но, ребят, честно, учитесь нормально переводить, а не делать из «Then it will read hundreds of sensor data and save the offsets» бред вроде «Затем он будет считывать данные сотен датчиков и сохранять смещения».

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


  1. Isiirk
    26.08.2022 03:47

    Гифки повеселили :)


  1. Static_electro
    26.08.2022 10:42
    +2

    Ожидание:

    Смотрите, какой милый

    Реальность:


  1. ragesteel
    26.08.2022 11:32
    +2

    Я своего кота ещё на кикстартере заказывал, когда там компания началась. В марте прошлого года приехал.


  1. MR_VF
    26.08.2022 15:58

    Если вы фанат робо-собаки от Boston Dynamics и хотели бы завести дома его маленькую копию, вам в помощь OpenCat.

    У Boston Dynamics был раньше проект Little Dog

    https://www.youtube.com/watch?v=UIipbi0cAVE

    Сейчас не понятно, что с ним


  1. aelaa
    26.08.2022 16:03

    доступных роботизированных домашних животных

    Aibo?


  1. beeptec
    27.08.2022 14:22

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