hardware-pathon-ai's picture
Upload SO-ARM101 reaching policy (999 iterations)
9fc8ea3 verified
---
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