Фреймворк на Python и C для моделирования динамики космических аппаратов, а также систем наведения, навигации и управления в задачах астронавтики.
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
Установите frax из PyPI с дополнительными компонентами для IK
pip install "frax[ik]" - 2
Вычислите матрицу масс встроенной модели робота в Python
Что важно знать
- Требуется JAX; для ускорения расчётов динамики на CPU в рекомендациях по производительности предлагается использовать определённую более старую версию JAX.
- Для работы методов обнаружения столкновений нужна модель столкновений робота с аппроксимацией сферическими примитивами.
В подборках
Темы
Частые вопросы
- Что такое 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 обновляется ежедневно.
Похожие проекты
Быстрая header-only библиотека C++ с привязками к Python для динамики и кинематики твёрдых тел, а также их аналитических производных, применяемая в робототехнике.
Физическая библиотека на C++17 с привязками Python для расчёта кинематики, динамики и контактов у сочленённых роботов и анимированных персонажей.
Bullet Physics SDK — библиотека C++ для обнаружения столкновений и мультифизического моделирования в реальном времени, используемая в играх, VR, робототехнике и машинном обучении.
Среды Gymnasium на базе PyBullet для обучения контроллеров квадрокоптеров с подкреплением — как одиночных, так и мультиагентных.
Симулятор мультикоптеров на Python с аэродинамикой на основе сосредоточенных параметров для обучения и исследований в области оценивания состояния, планирования и управления.