ISAAC Sim Install Test

HanGu·2025년 11월 5일

맨처음 시작할 때 기본적인 GPU 환경은 위와 같다.
(Nvidia Driver 535 | CUDA 11.8 | RTX 3070)

일단 아래의 사이트에 제시된대로 진행해봤다.

https://pegasussimulator.github.io/PegasusSimulator/source/setup/installation.html

현재 제시된 것은 5.1 버전인데, 일단 이것에 맞게 진행했다.
위키독스는 4.5로 제공해놨던데, 페가수스가 5.1 이라.. 어쩔 수 없다

https://wikidocs.net/277528


그래픽 드라이버 버전이 다르긴 한데 일단 try 해봄
결론은 실패함 >>> 빠르게 볼려면 밑에 글자 크게 해놓은 때까지 무시

설치하면서 보니까 이거 버전 관리가 좀 까다로운 것 같다.

이런 경고문이 발생했는데

Windows 환경에서 WSL 사용중이라 안 끄고, 계속 진행했다.

그러면 아래와 같이 그냥 넘어가진다.

근데 위와 같이 ROS2 설치되지 않았다고 뜨니...
설치를 취소하고 ROS2 설치부터 진행을 한다.
(이전에 Host에 설치 안하고 Docker 환경에서 ROS2 작업함.)

ROS2 설치는 아래의 위키독스 참고했다.

https://wikidocs.net/300855

내 설정 마음대로 바꾸지 않게 하기 위해 둘 다 아니오 함.
(이거는 Upgrade 때문에 발생)

참고로 아래의 코드 동작 안한다.
(원래 ros2 --version 이런 명령어 없다고 하더라...)

아무튼 Host에 ROS2 잘 설치되었다.

그리고 ISAAC Sim 재설치 진행

그렇다고 한다.


< NVIDIA Driver Version 재설치 >

흠...
NVIDIA Driver Version이 맞지 않는 것 같다.
NVIDIA Driver 를 재설치 해주도록 하자.

설치 목록은 위와 같은데 570으로 설치하겠다.
우선 기존 Nvidia 것을 다 깨끗하게 지우고 설치한다.

ubuntu-drivers devices

sudo apt purge nvidia-*
sudo apt autoremove

sudo apt install nvidia-driver-570

sudo reboot

nvidia-smi

일단 NVIDIA Driver 설치는 잘 된 것 같다.

< Docker 사용하면 진행하세요. >

근데, CUDA 11.8 설치되어 있는 상태인데
이상하게 Docker Container가 인식을 못하더라고...

그러니까 NVIDIA Driver 를 새로 설치해서 생긴 문제 같다.
Docker 쓰는 사람들은 꼭 NVIDIA Container Toolkit을 재설치 하자

nvidia-smi

# 공식 GPG 키 및 저장소 추가
curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list

# 패키지 목록 업데이트
sudo apt-get update

# 툴킷 설치 (이미 설치되어 있다면 재설치됩니다)
sudo apt-get install -y nvidia-container-toolkit


sudo systemctl restart docker

docker run --rm --gpus all nvidia/cuda:11.8.0-base-ubuntu22.04 nvidia-smi

아무튼 다시 ISAAC Sim 으로 돌아와서

./isaac-sim.selector.sh

음 실행이 되는군

nano ~/.bashrc

바로가기 편하게 하기 위해 맨 밑에 추가도 해줍시다.
(기존의 것 삭제하는 것 아님. 맨 아래에 추가하는 것임.)

# ---------------------------
# ISAAC SIM SETUP
# ---------------------------
# Isaac Sim root directory
export ISAACSIM_PATH="${HOME}/isaacsim"
# Isaac Sim python executable
export ISAACSIM_PYTHON="${ISAACSIM_PATH}/python.sh"
# Isaac Sim app
export ISAACSIM="${ISAACSIM_PATH}/isaac-sim.sh"

# Define an auxiliary function to launch Isaac Sim or run scripts with Isaac Sim's python
# This is done to avoid conflicts between ROS 2 and Isaac Sim's Python environment
isaac_run() {

    # ------------------
    # === VALIDATION ===
    # ------------------
    if [ ! -x "$ISAACSIM_PYTHON" ]; then
        echo "❌ IsaacSim python.sh not found at: $ISAACSIM_PYTHON"
        return 1
    fi
    if [ ! -x "$ISAACSIM" ]; then
        echo "❌ IsaacSim launcher not found at: $ISAACSIM"
        return 1
    fi

    # -------------------------
    # === CLEAN ENVIRONMENT ===
    # -------------------------
    # Unset ROS 2 environment variables to avoid conflicts with Isaac's Python 3.11
    unset ROS_VERSION ROS_PYTHON_VERSION ROS_DISTRO AMENT_PREFIX_PATH COLCON_PREFIX_PATH PYTHONPATH CMAKE_PREFIX_PATH

    # Remove ROS 2 paths from LD_LIBRARY_PATH if present
    local ros_paths=("/opt/ros/humble" "/opt/ros/jazzy" "/opt/ros/iron")
    for ros_path in "${ros_paths[@]}"; do
        export LD_LIBRARY_PATH=$(echo "$LD_LIBRARY_PATH" | tr ':' '\n' | grep -v "^${ros_path}" | paste -sd':' -)
    done

    # -----------------------------
    # === UBUNTU VERSION CHECK ===
    # -----------------------------

    if [ -f /etc/os-release ]; then
        UBUNTU_VERSION=$(grep "^VERSION_ID=" /etc/os-release | cut -d'"' -f2)
    fi

    # If Ubuntu 24.04 -> use the Isaac Sim internal ROS2 Jazzy (ROS2 Jazzy bridge)
    if [[ "$UBUNTU_VERSION" == "24.04" ]]; then
        export ROS_DISTRO=jazzy
        export RMW_IMPLEMENTATION=rmw_fastrtps_cpp
        export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${ISAACSIM_PATH}/exts/isaacsim.ros2.bridge/jazzy/lib"
        echo "🧩 Detected Ubuntu 24.04 -> Using ROS_DISTRO=jazzy"
    # If Ubuntu 22.04 -> use the Isaac Sim internal ROS2 Humble (ROS2 Humble bridge)
    else
        export ROS_DISTRO=humble
        export RMW_IMPLEMENTATION=rmw_fastrtps_cpp
        export LD_LIBRARY_PATH="${LD_LIBRARY_PATH}:${ISAACSIM_PATH}/exts/isaacsim.ros2.bridge/humble/lib"
        echo "🧩 Detected Ubuntu ${UBUNTU_VERSION:-unknown} -> Using ROS_DISTRO=humble"
    fi

    # ---------------------
    # === RUN ISAAC SIM ===
    # ---------------------
    if [ $# -eq 0 ]; then
        # No args → Launch full Isaac Sim GUI
        echo "🧠 Launching Isaac Sim GUI..."
        "${ISAACSIM}"

    elif [[ "$1" == --* ]]; then
        # Arguments start with "--" → pass them to Isaac Sim executable
        echo "⚙️  Launching Isaac Sim with options: $*"
        "${ISAACSIM}" "$@"

    elif [ -f "$1" ]; then
        # First argument is a Python file → run with Isaac Sim's Python
        local SCRIPT_PATH="$1"
        shift
        echo "🚀 Running Python script with Isaac Sim: $SCRIPT_PATH"
        "${ISAACSIM_PYTHON}" "$SCRIPT_PATH" "$@"

    else
        # Unrecognized input
        echo "❌ Unknown argument or file not found: '$1'"
        echo "Usage:"
        echo "  isaac_run                 → launch GUI"
        echo "  isaac_run my_script.py    → run script with IsaacSim Python"
        echo "  isaac_run --headless ...  → launch IsaacSim with CLI flags"
        return 1
    fi
}

저장하고 나가는 방법

'Ctrl + O' 이후, 'Enter' 이후, 'Ctrl + X'

이제 터미널 닫고

isaac_run

다시 시작하면 바로 실행 가능!

Pegasus Extentions 설치

이거는 제대로 되지 않음.

내가 설치 이상하게 한 듯. Drone Image를 못 불러옴.



cd ~/isaacsim
git clone https://github.com/PegasusSimulator/PegasusSimulator.git

최종 설치는 이렇게 되기는 했는데
설치 중에 뭐가 잘못된 것인지 드론 이미지 내용이 없다.ㅋㅋ;;
아니면 덜 설치된 것일 수도 있고..??

일단 그래픽이 띄워진 것만으로 만족하자..??

(Host) Python 3.10.12

0개의 댓글