Skip to content

legalaspro/robokin

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

12 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

🦾 Robokin

License Python Status

URDF-based forward and inverse kinematics helpers for robot arms.

Robokin provides a clean, backend-agnostic API for robot kinematics with pluggable IK solvers, 3D visualization, and real-arm integration.

✨ Features

  • Multiple IK backendsPlaco, PyRoki, RoboPlan
  • URDF-first — load any robot from robot_descriptions or a local URDF file
  • 3D visualization — built-in Viser UI with interactive gizmo control
  • Rerun logging — stream joint angles and EE trajectories to Rerun dashboards
  • Real-arm support — drive hardware via LeRobot or ROS 2

🎬 Showcases

Real Arm — LeRobot + IK

lerobot_real_arm.mp4

ROS 2 Real Arm (Placo) Go to Pose
ros2_real_arm2_compressed.mp4
go_to_pose.mp4
Rerun IK Loop (Placo) Pose Cycle (PyRoki)
rerun_loop.mp4
pose_cycle.mp4

More demo videos will be recorded and added — for existing examples and as new backends and features land.

📦 Installation

# Core (numpy, scipy, robot_descriptions)
pip install -e .

# With a specific IK backend
pip install -e ".[placo]"
pip install -e ".[pyroki]"

# With visualization
pip install -e ".[viser]"
pip install -e ".[rerun]"

# Everything
pip install -e ".[all]"

Real-arm (LeRobot + Feetech)

pip install lerobot "lerobot[feetech]"

🚀 Quick Start

from robokin import load_robot_description, PyrokiKinematics, PyrokiConfig

# Load SO-101 robot model
model = load_robot_description("so100", ee_link="gripper_frame_link")

# Create kinematics solver
kin = PyrokiKinematics(model.urdf_path, model.joint_names, "gripper_frame_link")

# Solve IK, run servo steps, etc.

📂 Project Structure

robokin/
├── src/robokin/          # Library source
│   ├── robot_model.py    # URDF loading & RobotModel
│   ├── placo.py          # Placo IK backend
│   ├── pyroki.py         # PyRoki IK backend
│   ├── roboplan_oink.py  # RoboPlan backend
│   ├── transformations.py# Pose interpolation & easing
│   ├── pyroki_snippets/  # PyRoki solver variants
│   └── ui/               # Viser & Rerun helpers
├── examples/
│   ├── pyroki/           # PyRoki examples
│   ├── placo/            # Placo examples
│   └── helpers/          # Shared example utilities
├── tests/                # Unit tests
├── pyproject.toml
└── LICENSE

🧪 Tests

pip install -e ".[dev]"
pytest

📄 License

Copyright 2026 Dmitri Manajev. Licensed under the Apache License 2.0.

About

URDF-based forward and inverse kinematics helpers for robot arms — pluggable IK backends (Placo, PyRoki, RoboPlan), Viser 3D visualization, Rerun logging, and LeRobot/ROS 2 real-arm integration.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages