Repolode
StanfordASL

StanfordASL/frax

Библиотека на чистом Python для кинематики и динамики роботов на базе JAX с JIT-компиляцией и автодифференцированием для быстрой разработки контроллеров.

Звёзды
688
Форки
47
Открытые issues
0
Последний коммит
3 дня назад

Что это?

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

Поскольку вычисления реализованы как функции JAX, их можно компилировать с помощью JIT, выполнять пакетно на GPU или TPU и автоматически дифференцировать. Это позволяет задавать ограничения и функции стоимости как обычные функции состояния робота, не выводя якобианы вручную. В проекте есть набор встроенных моделей роботов, включая Franka Panda, Kuka iiwa, Unitree G1 и Unitree A2; пользовательские модели загружаются из файлов URDF.

Библиотека также предоставляет модуль frax.ik для решения задач обратной кинематики и ретаргетинга, а также примеры дифференциальной IK, управления в операционном пространстве и ограничений безопасности на основе control barrier functions.

Ключевые возможности

  • 01Вычисляет матрицу масс, якобианы, гравитационные силы и силы Кориолиса для моделей роботов из URDF.
  • 02JIT-компиляция и автоматическое дифференцирование кинематики и динамики с помощью JAX.
  • 03Пакетные вычисления на GPU и TPU с поддержкой двойной точности.
  • 04Встроенные модели Franka Panda, Kuka iiwa, Unitree G1 и Unitree A2.
  • 05Модуль frax.ik для обратной кинематики и ретаргетинга движений человека на гуманоидов.

Сценарии использования

  • Создание прототипов контроллеров дифференциальной обратной кинематики и управления в операционном пространстве на Python.
  • Задание control barrier functions и других ограничений, зависящих от кинематики робота.
  • Пакетное вычисление динамики для управления на ускорителях на основе выборки или машинного обучения.
  • Ретаргетинг данных о движениях человека на модели гуманоидных роботов.

Быстрый старт

  1. 1

    Установите frax из PyPI с дополнительными компонентами для IK

    pip install "frax[ik]"
  2. 2

    Вычислите матрицу масс встроенной модели робота в Python

Что важно знать

  • Требуется JAX; для ускорения расчётов динамики на CPU в рекомендациях по производительности предлагается использовать определённую более старую версию JAX.
  • Для работы методов обнаружения столкновений нужна модель столкновений робота с аппроксимацией сферическими примитивами.

В подборках

Темы

#robotics#kinematics#dynamics#jax#autodiff#inverse-kinematics#control

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

Что такое frax?
Библиотека на чистом Python для кинематики и динамики роботов на базе JAX с JIT-компиляцией и автодифференцированием для быстрой разработки контроллеров. frax — библиотека на Python для кинематики и динамики роботов, построенная поверх JAX. Она вычисляет такие величины, как матрица масс, преобразования суставов, звеньев и систем координат, якобианы, вектор гравитационных сил и силы Кориолиса — основу для контроллеров обратной кинематики и обратной динамики.
frax можно использовать бесплатно? Какая у него лицензия?
frax распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
frax всё ещё поддерживается?
Активно поддерживается. Последний коммит в frax — 4 нояб. 2026 г..
Для чего можно использовать frax?
Создание прототипов контроллеров дифференциальной обратной кинематики и управления в операционном пространстве на Python. Задание control barrier functions и других ограничений, зависящих от кинематики робота. Пакетное вычисление динамики для управления на ускорителях на основе выборки или машинного обучения. Ретаргетинг данных о движениях человека на модели гуманоидных роботов.
Как установить frax?
Установите frax из PyPI с дополнительными компонентами для IK: pip install "frax[ik]" Вычислите матрицу масс встроенной модели робота в Python
Где скачать frax?
Исходный код и инструкции по установке — на GitHub: https://github.com/StanfordASL/frax

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Фреймворк на Python и C для моделирования динамики космических аппаратов, а также систем наведения, навигации и управления в задачах астронавтики.

418+3 за неделю146CISCАктивно поддерживаетсяОбновлён вчера

Быстрая header-only библиотека C++ с привязками к Python для динамики и кинематики твёрдых тел, а также их аналитических производных, применяемая в робототехнике.

3,9 тыс.+20 за неделю592C++BSD-2-ClauseАктивно поддерживаетсяОбновлён вчера

Физическая библиотека на C++17 с привязками Python для расчёта кинематики, динамики и контактов у сочленённых роботов и анимированных персонажей.

1,2 тыс.+1 за неделю307C++BSD-2-ClauseОбновлён вчера

Bullet Physics SDK — библиотека C++ для обнаружения столкновений и мультифизического моделирования в реальном времени, используемая в играх, VR, робототехнике и машинном обучении.

14,8 тыс.+11 за неделю3,1 тыс.C++OtherОбновлён 29 дней назад

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

326+4 за неделю66PythonMITОбновлён 2 месяца назад