|
|
--- |
|
|
language: en |
|
|
license: mit |
|
|
tags: |
|
|
- reinforcement-learning |
|
|
- robotics |
|
|
- isaac-lab |
|
|
- manipulation |
|
|
- so-arm101 |
|
|
- inverse-kinematics |
|
|
library_name: rsl-rl |
|
|
--- |
|
|
|
|
|
# SO-ARM101 Reaching Policy |
|
|
|
|
|
This model is a reinforcement learning policy trained for the **SO-ARM101** robot arm to perform end-effector reaching tasks in Isaac Lab. |
|
|
|
|
|
## Model Description |
|
|
|
|
|
- **Task**: Move the end-effector to randomly sampled target poses in 3D space |
|
|
- **Robot**: SO-ARM101 (6-DOF robotic arm) |
|
|
- **Framework**: Isaac Lab 2.3.0 (on Isaac Sim 5.1.0) |
|
|
- **Algorithm**: RSL-RL (Robotic Systems Lab - Reinforcement Learning) |
|
|
- **Environment**: `Isaac-SO-ARM101-Reach-v0` |
|
|
- **Training**: 999 iterations with 4096 parallel environments |
|
|
|
|
|
## Model Overview |
|
|
|
|
|
This policy learns to control the SO-ARM101 robot arm's joint positions to reach target end-effector poses. The model effectively learns inverse kinematics behavior through reinforcement learning, enabling the robot to accurately position its end-effector at desired 3D locations. |
|
|
|
|
|
## Training Details |
|
|
|
|
|
### Environment Configuration |
|
|
- **Observation Space**: Joint positions, velocities, and target pose relative to end-effector |
|
|
- **Action Space**: Joint position commands (6 DOF) |
|
|
- **Reward Function**: Negative distance between end-effector and target pose |
|
|
- **Episode Length**: Variable (resets on success or timeout) |
|
|
|
|
|
### Training Parameters |
|
|
- **Parallel Environments**: 4096 |
|
|
- **Total Iterations**: 999 |
|
|
- **Training Time**: ~1.5 hours on NVIDIA RTX 4080 Super (16GB VRAM) |
|
|
- **Framework**: Isaac Lab with RSL-RL runner |
|
|
- **Simulator**: Isaac Sim 5.1.0 |
|
|
|
|
|
### Hardware Used |
|
|
- GPU: NVIDIA RTX 4080 Super (16GB VRAM) |
|
|
- OS: Ubuntu 24.04 LTS |
|
|
- CUDA: 13.0 |
|
|
|
|
|
## Usage |
|
|
|
|
|
### Prerequisites |
|
|
|
|
|
```bash |
|
|
# Install Isaac Lab (with Docker) |
|
|
# See: https://isaac-sim.github.io/IsaacLab/ |
|
|
|
|
|
# Clone SO-ARM101 external project |
|
|
git clone https://github.com/MuammerBay/isaac_so_arm101.git |
|
|
cd isaac_so_arm101 |
|
|
``` |
|
|
|
|
|
### Evaluation |
|
|
|
|
|
```bash |
|
|
# Inside Isaac Lab container |
|
|
cd /workspace/isaaclab |
|
|
|
|
|
# Run the trained policy |
|
|
./isaaclab.sh -p /workspace/isaac_so_arm101/src/isaac_so_arm101/scripts/rsl_rl/play.py \ |
|
|
--task Isaac-SO-ARM101-Reach-Play-v0 \ |
|
|
--checkpoint /path/to/model_999.pt |
|
|
``` |
|
|
|
|
|
### Training From Scratch |
|
|
|
|
|
```bash |
|
|
# Train the policy |
|
|
./isaaclab.sh -p /workspace/isaac_so_arm101/src/isaac_so_arm101/scripts/rsl_rl/train.py \ |
|
|
--task Isaac-SO-ARM101-Reach-v0 \ |
|
|
--num_envs 4096 \ |
|
|
--headless |
|
|
``` |
|
|
|
|
|
## Performance |
|
|
|
|
|
The trained policy demonstrates accurate reaching behavior with the SO-ARM101 robot, successfully moving the end-effector to target positions across the reachable workspace with high precision. |
|
|
|
|
|
## Use Cases |
|
|
|
|
|
This reaching policy serves as a foundation for: |
|
|
- **Inverse Kinematics**: Learned IK controller for end-effector positioning |
|
|
- **Manipulation Tasks**: Base controller for pick-and-place, assembly, etc. |
|
|
- **Trajectory Following**: Can be extended for path planning applications |
|
|
- **Sim-to-Real Transfer**: Ready for deployment on real SO-ARM101 hardware |
|
|
|
|
|
## Citation |
|
|
|
|
|
If you use this model, please cite: |
|
|
|
|
|
```bibtex |
|
|
@misc{so-arm101-reach-isaaclab, |
|
|
title={SO-ARM101 Reaching Policy trained with Isaac Lab}, |
|
|
author={PathOn AI}, |
|
|
year={2026}, |
|
|
howpublished={\url{https://huggingface.co/}}, |
|
|
} |
|
|
|
|
|
@software{isaaclab, |
|
|
author = {Mittal, Mayank and others}, |
|
|
title = {Isaac Lab: A Unified Framework for Robot Learning}, |
|
|
url = {https://isaac-sim.github.io/IsaacLab/}, |
|
|
year = {2024}, |
|
|
} |
|
|
``` |
|
|
|
|
|
## Related Resources |
|
|
|
|
|
- [Isaac Lab Documentation](https://isaac-sim.github.io/IsaacLab/) |
|
|
- [SO-ARM101 Isaac Lab Integration](https://github.com/MuammerBay/isaac_so_arm101) |
|
|
- [RSL-RL Library](https://github.com/leggedrobotics/rsl_rl) |
|
|
|
|
|
## License |
|
|
|
|
|
MIT License |
|
|
|