Biped locomotion, using g1 robot as a placeholder for Neura Humanoid.
After we get robot_cfg, rest of the setup should remain identical.
env_cfg are located in source/c3po/tasks/locomotion/velocity/config and envs are registered to gym inside source/c3po/tasks/locomotion/velocity/config/<robot>/__init__.py.
-
To experiment with new method, algorithm or even hyperparam config. Create a branch, with prefix
exp/followed by a description of your approach. -
To add new
scene_cfgor other changes please usefeat/prefix.
[!CAUTION] Dont push changes into main branch always create PR.
This is a fork of the IsaacLabExtensionTemplate.
There are three ways
lightning-studio: isaaclab and isaacsim are installed automatically. Headless env.docker: run docker container on local
1.1 Login to Lightning Studio (lightning.ai/signup, use university email for quick approval) and start a studio with a GPU. Make sure to connect your github account.
1.2 Connect to that studio from terminal.
$ ssh <key>@ssh.lightning.com1.3 Clone this repository inside studio and open in VS Code.
⚡~ git clone https://github.com/svaichu/c3po.gitur_computer:~$ code --folder-uri=vscode-remote://ssh-remote+<key>@ssh.lightning.ai/teamspace/studios/this_studio/c3po1.4 Optionally: you could create an alias in your computer.
ur_computer$ alias assh code --folder-uri=vscode-remote://ssh-remote+${1}/teamspace/studios/this_studio/${2}1.5 Ctrl+Shift+p in VS Code and Open Folder in Container make sure you have ms-vscode-remote.vscode-remote-extensionpack extension.
[!WARNING] Do not start container in a studio without GPU
[!NOTE] First time, it takes some time (isaaclab img is being downloaded in the background)
1.6 You should be inside container ilab with the project code mounted. Modification on project code would be available in the studio folder too, so no need to push changes in container. Additionally connect to the running container from the terminal with active ssh connection.
⚡~ docker exec -it ilab bashisaaclab is located in /workspace and isaacsim in root.
1.7 Run a example from inside the container.
root@ip-xx-xx:/workspace/c3po$ isaaclab -p scripts/rsl_rl/train.py --task-name Gut-Velocity-Rough-G1-v0 --headless[!CAUTION] --video during training takes a lot of CPU and often simulation frezees
To get video of the latest training run. Very CPU intensive, use L4 or better instance.
root@ip-xx-xx:/workspace/c3po$ isaaclab -p scripts/rsl_rl/play.py --task-name Gut-Velocity-Rough-G1-v0 --headless --video --video_length 300 --num_envs 200Make sure you have nvidia container runtime setup.
docker run --name ilab --entrypoint bash -it --gpus all -e "ACCEPT_EULA=Y" --rm --network=host \
-e "PRIVACY_CONSENT=Y" \
-v ~/docker/isaac-sim/cache/kit:/isaac-sim/kit/cache:rw \
-v ~/docker/isaac-sim/cache/ov:/root/.cache/ov:rw \
-v ~/docker/isaac-sim/cache/pip:/root/.cache/pip:rw \
-v ~/docker/isaac-sim/cache/glcache:/root/.cache/nvidia/GLCache:rw \
-v ~/docker/isaac-sim/cache/computecache:/root/.nv/ComputeCache:rw \
-v ~/docker/isaac-sim/logs:/root/.nvidia-omniverse/logs:rw \
-v ~/docker/isaac-sim/data:/root/.local/share/ov/data:rw \
-v ~/docker/isaac-sim/documents:/root/Documents:rw \
-v ~/c3po:/workspace/c3po:rw \
nvcr.io/nvidia/isaac-lab:2.0.2Open terminal into the container
docker exec --interactive --tty -e DISPLAY=${DISPLAY} ilab /bin/bashInstall the c3po package.
cd /workspace/c3po/source/c3po && pip install -e .