Skip to content

Jonas-Zhang97/TUM-MCLR

Repository files navigation

Tutorial Workspace for MCLR

This repo hosts the implementation of tutorials for "Modelling and Control of Legged Robots" course.

Clone the repo:

git clone https://github.com/Jonas-Zhang97/TUM-MCLR.git

If you are familiar with devcontainer, you can skip this steps, direct to this page or this readme to ckeck out the code.

Prerequest

  • Enable remote development extension in your VSCode (extension ID: ms-vscode-remote.vscode-remote-extensionpack).
  • It is recommended to use the docker container in a computer with NVidia GPU, to start directly with GPU, you can skip to the get started, if not available, follow this chapter to build the docker container without GPU
  • For the final project, a Nvidia GPU is sufficient, and the utilizes functionalities from Isaac Sim for reinforcement training and inference, for which, omniverse-launcher-linux.AppImage is required, it can be downloadedhere, you should download the .AppImage version and put it into the isaac/ folder.

Build without GPU

Navigate to the .devcontainer/Dockerfile, in stage 4, comment the following lines:

ENV NVIDIA_VISIBLE_DEVICES \
  ${NVIDIA_VISIBLE_DEVICES:-all}
ENV NVIDIA_DRIVER_CAPABILITIES \
  ${NVIDIA_DRIVER_CAPABILITIES:+$NVIDIA_DRIVER_CAPABILITIES,}graphics

then, to the file .devcontainer/devcontainer.json, in runArgs comment the following lines:

"--runtime=nvidia"
"--gpus=all"

Get Started

Open the local repo in VSCode, you should see a pop-up asking if you want to reopen in devcontainer, click yes. If you don't see any pop-up, press ctrl + shift + p, type "remote" in searchbar and choose rebuild and reopen in devcontainer.

After the container is built, you can then check this page or this readme for the code.

Final Project

Final project of this course is defined as: Reinforcement Learning Based Walking Control for Humanoid Robot.

The project is based on Talos from PAL robotics and Isaac-Sim from Nvidia. Configure the Omniverse app as descriped in prerequest.

To run Omniverse app in the container, first change the mode:

chmod +x ./isaac/omniverse-launcher-linux.AppImage

then run it in the container with command:

dbus-launch ./isaac/omniverse-launcher-linux.AppImage --no-sandbox

Intsall isaac sim 4.0.0 in the omniverse app (the default install entry is a legacy version). Install the isaac lab according to the official documentation and follow the tutorial to get a overview of isaac lab.

TODO

  • Modify this file for a new terrain

Issues

  • FromAsCasing issue in Dockerfile (not fetal, fix in the end)

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published