Developed by Synria Robotics Co., Ltd. π€
| Module | Functionality | Status |
|---|---|---|
| Modeling | URDF/MJCF parsing, Robot model abstraction | β Stable |
| Forward Kinematics | NumPy/PyTorch backends, Batch processing | β Stable |
| Inverse Kinematics | DLS/Pinv/Transpose methods, Multi-start | β Stable |
| Jacobian | Analytic/Numeric/Autograd methods | β Stable |
| Transform | SE(3)/SO(3) operations, Conversions | β Stable |
| Analysis | Workspace/Singularity analysis | β Beta |
| Planning | Trajectory generation | π§ Alpha |
| Visualization | Kinematic tree display | β Stable |
| Configuration | YAML-based config management | β Stable |
- β URDF (Unified Robot Description Format)
- β MJCF (MuJoCo XML) - Subset implementation for serial chains
- β NumPy - CPU-optimized, 50-100x faster than pure Python
- β PyTorch - GPU acceleration for batch operations
Test Platform: Intel i7-10700K, NVIDIA RTX 3080, 6-DOF Manipulator
| Operation | Pure Python | NumPy | Speedup |
|---|---|---|---|
| Forward Kinematics | 2.5 ms | 0.05 ms | 50x |
| Inverse Kinematics | 450 ms | 5.6 ms | 80x |
| Jacobian (Analytic) | 3.2 ms | 0.03 ms | 107x |
| Jacobian (Numeric) | 18 ms | 0.35 ms | 51x |
| Operation | NumPy (CPU) | PyTorch (GPU) | Speedup |
|---|---|---|---|
| Forward Kinematics | 45 ms | 3.2 ms | 14x |
| Jacobian (Analytic) | 28 ms | 2.1 ms | 13x |
# Clone repository
git clone https://github.com/Synria-Robotics/RoboCore.git
cd RoboCore
# Install (development mode)
pip install -e .
# Optional: Install with PyTorch for GPU support
pip install torch torchvisionfrom robocore.modeling import RobotModel
# Load robot (auto-detects URDF/MJCF)
robot = RobotModel("path/to/robot.urdf")
# Display model info
robot.summary(show_chain=True)
robot.print_tree()
# Forward Kinematics
q = [0.0] * robot.num_dof()
pose = robot.fk(q, backend='numpy', return_end=True)
# Inverse Kinematics
result = robot.ik(pose, q_initial=q, method='pinv')
print(f"Solution: {result['q']}, Success: {result['success']}")
# Jacobian
J = robot.jacobian(q, method='analytic') # Shape: (6, dof)import torch
# Generate random configurations
q_batch = robot.random_q_batch(batch_size=1000)
# Batch FK on GPU
poses = robot.fk(
torch.tensor(q_batch),
backend='torch',
device='cuda',
return_end=True
)# Robot model loading and validation
python examples/modeling/demo_robot_model.py --validate --show-tree
# Forward/Inverse kinematics
python examples/kinematics/demo_fk.py
python examples/kinematics/demo_ik.py
# Jacobian computation
python examples/kinematics/demo_jacobian.py
# Workspace analysis
python examples/analysis/demo_workspace.py --samples 10000
# Performance benchmark
python examples/kinematics/benchmark.py# Run all tests
pytest
# Specific test suites
pytest test/unit/ # Unit tests
pytest test/integration/ # Integration tests
# With coverage report
pytest --cov=robocore --cov-report=html- Collision Detection - Mesh-based collision checking
- Path Planning - RRT/RRT*/PRM algorithms
- Dynamics - Inverse/Forward dynamics computation
- Control - PID, MPC, impedance controllers
- Optimization - Further SIMD/vectorization improvements
- Mobile Manipulators - Support for mobile bases
- Multi-Arm Systems - Coordinated multi-robot control
- Visualization - 3D interactive visualization (PyBullet/MuJoCo)
- Documentation - API docs, tutorials, best practices
RoboCore/
βββ robocore/
β βββ modeling/ # Robot model abstraction & parsers
β βββ kinematics/ # FK/IK/Jacobian solvers
β βββ transform/ # SE(3)/SO(3) operations
β βββ planning/ # Motion planning (WIP)
β βββ analysis/ # Workspace/singularity analysis
β βββ configs/ # Configuration management
β βββ utils/ # Backend abstraction, utilities
βββ examples/ # Demo scripts
βββ test/ # Unit & integration tests
βββ docs/ # Documentation
GPL-3.0 License
Copyright Β© 2025 Synria Robotics Co., Ltd.
This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.
See the LICENSE file for the full license text.
- Website: synriarobotics.ai
- Email: support@synriarobotics.ai
@software{robocore2025,
title = {RoboCore: High-Performance Robotics Kinematics Library},
author = {Synria Robotics Team},
year = {2025},
publisher = {Synria Robotics Co., Ltd.},
url = {https://github.com/Synria-Robotics/RoboCore},
version = {1.0.0}
}