Из каких деталей собирают четвероногого робота

Любая механическая собака вроде знаменитого Spot от Boston Dynamics или китайского Unitree Go2 состоит из трех базовых систем. Это механический скелет с приводами, набор чувствительных сенсоров и бортовой вычислительный центр. Каркас обычно делают из легкого алюминия и прочного углепластика, чтобы снизить общую массу машины и сберечь заряд аккумулятора.

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

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

Органы чувств цифровой собаки

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

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

Прямая и обратная кинематика

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

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

Алгоритмы походки и удержание баланса

Животные двигаются разными способами в зависимости от скорости. Программисты перенесли эти типы походки, называемые аллюрами, в цифровой код. Походка определяет порядок и ритм перестановки лап.

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

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

Управление с прогнозированием и нейросети

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

Начиная с 2020 года инженеры активно задействуют обучение с подкреплением. Вместо ручного составления сотен формул физики программисты запускают цифровую 3D-копию собаки в физическом симуляторе вроде Isaac Gym. Виртуальный робот делает миллионы случайных шагов, падает, получает штрафные виртуальные очки и постепенно вычисляет правильные двигательные привычки. Обученная нейросеть загружается в память реального робота и помогает ему преодолевать камни, снег и скользкую траву.

Как робот поднимается по лестницам

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

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

Частые вопросы

Зачем создавать роботов на четырех лапах вместо колес?

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

Почему четвероногие роботы громко жужжат при ходьбе?

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

Что произойдет, если сильно ударить или пнуть робота сбоку?

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

Можно ли собрать простую собаку-робота на плате Arduino?

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