Post

(03) Basic Usage

Environment

우선 사람들은 아래와 같이 여러가지 이유로 인해 Isaac Sim을 사용할 수 있다.

  1. 순수 Robotics (ex. ROS 사용, verification 용)
  2. AI agent 생성 및 verification 용 (Computer Vision, Reinforcement Learning)

필자는 강화학습 (Reinforcement Learning, RL)을 이용한 모바일 로봇 (Wheeled-Mobile Robot, WMR)을 학습시킬 예정이므로, WMR을 기준으로 포스팅을 작성하겠다.

Requirements

WMR을 학습시키기 위해서는 아래와 같은 절차 (process)로 학습을 진행할 것인지 중요하다.

  1. 학습할 환경 (ex. Indoor, Outdoor, ...)
  2. 학습할 로봇 (ex. Robot Arm, WMR, ...)
  3. 학습할 목표 (ex. navigation, collision avoidance, ...)
  4. 학습할 알고리즘 (ex. DQN, DDPG, ...)

위와 같이 어떠한 환경에서 학습을 진행할 것인지, 어떠한 로봇을 사용할 것인지, 어떠한 목표로 우리의 로봇을 학습시킬 것인지, 어떠한 알고리즘을 통해서 학습시킬 것인지가 중요하다. 목표가 제대로 정해지지 않은 상황에서 학습을 수행한다는 것은 꿈이 없이 공부만 계속하는 것과 같을 것이다.

이렇게 우리가 나눈 절차대로 학습을 진행하기 위해 순서대로 어떻게 이루어지는지 살펴볼 것이다.

Isaac Sim Content

Omniverse Isaac release에 따라 자체적으로 사용할 수 있는 asset들이 있다. 만약, 아래에 나열된 환경, 로봇, 센서, 소품, 주요 자산을 가져다 쓰고 싶다면 이전 포스팅에 언급된 Nucleus 서버에서 파일을 다운로드하거나 Nucleus 서버에 Isaac Mount를 생성해야한다. 자세한 설치 내용은 Isaac Sim First Run 또는 Sample Asset에서 확인가능하다.

만약 Nucleus 설치 및 세팅이 완료되었다면 아래와 같이 확인할 수 있다.

nucleus-example Nucleus example

Environment Assets

우선 필자의 경우 Indoor 즉, 실내에서 움직이는 로봇을 만들 것이다. Isaac Sim내에서는 다양한 환경 asset들을 지원하며, 지원하는 대표적인 환경 asset은 아래와 같다.

Simple Grid

Simple Grid는 평평한 지면 (flat ground)와 그리드 텍스처가 있는 측면이 포함되어 있다. 단순하게, 평평한 바닥이 무한하게 있는게 아니라 벽이 있다. 아래의 첫번째, 두번째 환경은 정사각형 형태이고, 세번쨰 환경의 경우 모서리가 구부러진 (curved) 환경이다.

Asset 위치: /Isaac/Environments/Grid/

default_environment.usd gridroom_black.usd gridroom_curved.usd
nucleus-example nucleus-example nucleus-example

Simple Room

Simple Room은 방에 테이블이 하나 놓여있는 구조이다.

Asset 위치: /Isaac/Environments/Simple_Room/simple_room.usd

simple_room.usd
nucleus-example

Warehouse

warehouse 환경에서는 선반 위에 objects들과 장애물들이 배치되어 있다.

Asset 위치: /Isaac/Environments/Simple_Warehouse/

warehouse.usd warehouse_with_forklifts.usd
nucleus-example nucleus-example
warehouse_multiple_shelves.usd full_warehouse.usd
nucleus-example nucleus-example

Hospital

Hospital 환경에서는 병원과 같이 여러개의 방과 공간이 꾸려져 있다.

Asset 위치: /Isaac/Environments/Hospital/hospital.usd

hospital.usd
nucleus-example

Office

Office 환경에서는 사무실처럼 여러개의 방과 복도로 꾸며져 있다.

Asset 위치: /Isaac/Environments/Office/office.usd

office.usd
nucleus-example

Jetracer Track

Jetracer track에서는 바닥에 레이싱 트랙이 생성되어 있어, Computer vision으로 line tracking 또는 line following을 수행해보고 싶은 사람들에게는 좋은 환경이다.

Asset 위치: /Isaac/Environments/Jetracer/jetracer_track_solid.usd

jetracer_track_solid.usd
nucleus-example

Robot Assets

Isaac Sim을 사용하는 사람들에게 희소식은 로봇의 경우 major한 (jetbot, carter) 로봇들은 이미 asset으로 제공하고 있다는 점이다.

Sensor Assets

Lidar, Radar, Camera 등 센서를 사용하고 싶다면 Isaac-Sim에서 불러와서 사용할 수 있다.

Sensor Assets

사람 또는 간단한 차량 등 Prop을 사용하고 싶다면 Isaac-Sim에서 불러와서 사용할 수 있다.

Nova Carter와 같은 featured assets을 사용하고 싶다면 Isaac-Sim에서 불러와서 사용할 수 있다.

This post is licensed under CC BY 4.0 by the author.