로보틱스 시뮬레이션이란?

by NVIDIA Korea

로봇은 햄버거를 뒤집거나 라떼를 서빙하지 않을 때에도 창고에서 물건을 옮기고, 식품을 포장하고, 차량 조립을 돕고 있습니다.

어떻게 그렇게 빨리 숙련될 수 있었을까요? 바로 로보틱스 시뮬레이션입니다.

비약적인 발전을 거듭하며 우리 주변의 모든 산업을 변화시키고 있습니다.

로보틱스 시뮬레이션 요약

로보틱스 시뮬레이터는 가상 환경에 가상의 로봇을 배치하여 실제 로봇 없이도 로봇의 소프트웨어를 테스트할 수 있습니다. 또한 최신 시뮬레이터는 실제 로봇에서 실행할 머신러닝 모델을 훈련하는 데 사용할 데이터 세트를 생성할 수 있습니다.

이 가상 세계에서 개발자는 로봇, 환경 및 로봇이 마주칠 수 있는 기타 자산의 디지털 버전을 만듭니다. 이러한 환경은 물리 법칙을 따르고 실제 세계의 중력, 마찰, 재료, 조명 조건을 모방할 수 있습니다.

누가 로보틱스 시뮬레이션을 사용하나요?

로봇은 오늘날 대규모로 운영을 향상시킵니다. 로봇 분야에서 가장 크고 혁신적인 기업 중 일부는 로봇 시뮬레이션에 의존하고 있습니다.

풀필먼트 센터는 시뮬레이션을 통해 발견한 운영 효율성 덕분에 하루에 수천만 개의 패키지를 처리합니다.

아마존 로보틱스는 이 시뮬레이션을 사용하여 주문 처리 센터를 지원합니다. BMW 그룹은 자동차 조립 공장의 계획을 가속화하는 데 활용하고 있습니다. 소프트 로보틱스는 포장용 식품을 피킹하고 배치하기 위한 완벽한 그립을 구현하는 데 적용하고 있습니다.

전 세계 자동차 제조업체들이 로봇 공학을 통해 운영을 지원하고 있습니다.

“자동차 회사는 약 1,400만 명의 직원을 고용하고 있습니다. 디지털화는 업계의 효율성, 생산성 및 속도를 향상시킬 것입니다.”라고 최근 GTC 기조연설에서 NVIDIA CEO 젠슨 황(Jensen Huang)은 말했습니다.

로보틱스 시뮬레이션의 작동 원리 요약

고급 로보틱스 시뮬레이터는 기본 물리학 방정식을 적용하는 것으로 시작됩니다. 예를 들어, 뉴턴의 운동 법칙을 사용하여 작은 시간 단위 또는 시간 간격에 따라 물체가 어떻게 움직이는지 확인할 수 있습니다. 또한 경첩과 같은 관절로 구성되어 있거나 다른 물체를 통과할 수 없는 등 로봇의 물리적 제약을 통합할 수도 있습니다.

시뮬레이터는 다양한 방법을 사용하여 물체 간의 잠재적 충돌을 감지하고, 충돌하는 물체 간의 접촉점을 식별하며, 물체가 서로 통과하지 못하도록 하는 힘이나 충격을 계산합니다. 시뮬레이터는 로봇 조인트의 토크나 로봇 그리퍼와 물체 사이의 힘 등 사용자가 원하는 센서 신호도 계산할 수 있습니다.

그러면 시뮬레이터는 사용자가 원하는 만큼의 시간 간격으로 이 프로세스를 반복합니다. 일부 시뮬레이터(예: NVIDIA Omniverse에 구축된 애플리케이션인 NVIDIA Isaac Sim)는 각 타임스텝에서 시뮬레이터 출력의 물리적으로 정확한 시각화를 제공할 수도 있습니다.

결과물을 위한 로보틱스 시뮬레이터 사용

로봇 시뮬레이터 사용자는 일반적으로 로봇의 컴퓨터 지원 설계 모델을 임포트하고 관심 있는 오브젝트를 임포트하거나 생성하여 가상 장면을 빌드합니다. 개발자는 일련의 알고리즘을 사용하여 작업 계획 및 모션 계획을 수행한 다음 이러한 계획을 수행하기 위한 제어 신호를 지정할 수 있습니다. 이를 통해 로봇이 작업을 수행하고 물체를 집어 목표 위치에 놓는 등 특정 방식으로 움직일 수 있습니다.

개발자는 계획과 제어 신호의 결과를 관찰한 후 필요에 따라 수정하여 성공을 보장할 수 있습니다. 최근에는 머신 러닝 기반 방식으로 전환하고 있습니다. 따라서 사용자가 직접 제어 신호를 지정하는 대신 충돌하지 않는 위치로 이동하는 것과 같이 원하는 동작을 지정합니다. 이 경우 데이터 기반 알고리즘이 로봇의 시뮬레이션된 센서 신호를 기반으로 제어 신호를 생성합니다.

이러한 알고리즘에는 사람의 시연을 참고할 수 있는 모방 학습과 로봇이 지능적인 시행착오를 통해 동작을 학습하는 강화 학습이 포함될 수 있으며, 가속화된 가상 경험을 통해 수년간의 학습을 빠르게 달성할 수 있습니다.

혁신을 이끄는 시뮬레이션

시뮬레이션은 큰 문제를 해결합니다. 시뮬레이션은 로봇 설계와 시스템 및 알고리즘을 검증, 검증, 최적화하는 데 사용됩니다. 또한 시뮬레이션은 건설 또는 리모델링을 시작하기 전에 효율성을 극대화할 수 있도록 시설을 최적화할 수 있도록 설계하는 데 도움이 됩니다. 이를 통해 비용이 많이 드는 제조 변경 주문을 줄일 수 있습니다.

로봇이 사람 사이에서 안전하게 작업하려면 완벽한 모션 계획이 필요합니다. 로봇이 섬세한 물체를 다루려면 접촉과 파악이 정확해야 합니다. 이러한 기계는 물론 자율 이동 로봇과 차량 시스템도 방대한 양의 데이터를 학습하여 안전한 움직임을 개발합니다.

합성 데이터를 기반으로 한 시뮬레이션은 이전에는 불가능했던 가상 발전을 가능하게 합니다. 시뮬레이션에서 태어나고 자란 오늘날의 로봇은 현실 세계에서 모든 종류의 문제를 해결하는 데 사용될 것입니다.

진보를 촉진하는 시뮬레이션 연구

연구자들이 주도하는 최근의 시뮬레이션 발전은 로봇 시스템의 기능과 유연성을 빠르게 개선하고 있으며, 이로 인해 배포가 가속화되고 있습니다.

대학 연구자들은 종종 NVIDIA 리서치 및 기술 팀과 협력하여 실제 세계에 영향을 미칠 수 있는 시뮬레이션 문제를 해결하고 있습니다. 이들의 연구는 다양한 시장에서 새로운 로봇 기능의 상용화 가능성을 확대하고 있습니다.

그중에서도 로봇은 소고기나 닭고기처럼 질긴 재료를 자르고, 자동차 조립을 위해 너트와 볼트를 조이고, 창고에서 충돌 없는 모션 계획을 통해 기동하고, 새로운 수준의 손재주로 손을 조작하는 방법을 학습하고 있습니다.

이러한 연구는 수조 달러 규모의 산업 전반에 걸쳐 상업적 잠재력을 가지고 있습니다.

고충실도, 물리 기반 시뮬레이션의 혁신

고해상도로 표시되는 물리 모델링 능력은 많은 산업 발전의 시작을 알렸습니다.

수십 년 동안 연구되어 온 물리학 기반 시뮬레이션은 오늘날 상업적으로 획기적인 발전을 이루었습니다.

Omniverse 핵심 기술의 일부인 NVIDIA PhysX는 고충실도 물리 기반 시뮬레이션을 제공하여 가상 환경에서 실제와 같은 실험을 할 수 있도록 지원합니다.

PhysX를 사용하면 로봇이 미지의 물체를 파악하는 방법을 학습할 수 있도록 파악 품질을 평가하는 기능을 개발할 수 있습니다. 또한 PhysX는 조작, 이동, 비행과 같은 기술을 개발하는 데에도 뛰어난 성능을 발휘합니다.

오픈 소스로 출시된 PhysX 5는 어디서나 산업용 애플리케이션을 개발할 수 있는 문을 열어줍니다. 오늘날 로봇 공학자들은 옴니버스에 구축된 Isaac Sim의 일부로 PhysX에 액세스할 수 있습니다.

조립 시뮬레이션의 핵심 요소

물리학을 기반으로 효과적인 그립이 가능해졌으므로 다음 단계는 산업에 적용할 수 있는 더 뛰어난 로봇 기동을 시뮬레이션하는 것이었습니다.

조립은 중요한 작업입니다. 조립은 자동차, 전자, 항공우주, 의료 산업을 위한 제품을 제작하는 데 있어 필수적인 부분입니다. 조립 작업에는 너트와 볼트 조이기, 납땜 및 용접, 전기 연결부 삽입 및 케이블 배선 등이 포함됩니다.

하지만 로봇 조립은 오랜 시간 동안 진행되어 온 작업입니다. 물리적 조작의 복잡성, 부품의 가변성, 높은 정확도와 신뢰성 요구 사항으로 인해 사람조차도 성공적으로 완료하기가 매우 까다롭기 때문입니다.

그럼에도 불구하고 연구자와 개발자들은 많은 접촉이 수반되는 이러한 상호 작용에 시뮬레이션을 적용하려는 시도를 멈추지 않고 있으며, 진전의 조짐이 나타나고 있습니다.

2022년 NVIDIA의 로보틱스 및 시뮬레이션 연구원들은 Isaac Sim을 사용하여 로봇 조립 문제를 극복하기 위한 새로운 시뮬레이션 접근 방식을 고안해냈습니다. 이들의 연구 논문 제목은 Factory: 로봇 조립을 위한 빠른 접촉이라는 제목의 이 논문은 조립을 포함하여 많은 접촉이 필요한 광범위한 상호작용을 실시간으로 빠르게 시뮬레이션하기 위한 일련의 물리 시뮬레이션 방법과 로봇 학습 툴에 대해 설명합니다.

조립 시나리오의 시뮬레이션과 실제 간 격차 해소하기

연구진은 논문에서 개발한 시뮬레이션 작업을 발전시켜 시뮬레이션과 실제의 간극을 해결하기 위한 후속 작업을 진행했습니다.

이 격차는 로봇이 시뮬레이션에서 학습한 내용과 실제 환경에 대비하기 위해 학습해야 하는 내용 사이의 차이입니다.

또 다른 논문인 IndustReal: 접촉이 많은 조립 작업을 시뮬레이션에서 현실로 옮기기에서 연구원들은 시뮬레이션에서 조립 작업을 해결하고 이러한 기술을 실제 로봇으로 옮기기 위한 일련의 알고리즘, 시스템 및 툴을 설명했습니다.

또한 NVIDIA 연구원들은 서랍을 열거나 비누를 분배하는 등 실제 시나리오에서 로봇 조작 작업을 교육하는 새롭고 더 빠르고 효율적인 방법을 개발하여 현재 표준보다 훨씬 빠르게 훈련할 수 있습니다.

연구 논문 RVT: 3D 물체 조작을 위한 로봇 뷰 트랜스포머는 멀티뷰 트랜스포머라는 신경망 유형을 사용하여 카메라 입력에서 가상 뷰를 생성합니다.

이 연구는 텍스트 프롬프트, 비디오 입력 및 시뮬레이션을 결합하여 현재 기술보다 36배 빠른 훈련 시간을 달성하여 로봇을 가르치는 데 필요한 시간을 몇 주에서 며칠로 단축하고 로봇의 작업 성공률을 26% 향상시켰습니다.

로봇 손의 민첩성 향상

연구원들은 모든 종류의 환경에서 작동하고 새로운 작업을 수행할 수 있는 보다 민첩한 손을 만드는 데 도전하고 있습니다.

개발자들은 물건을 집거나 놓을 수 있는 로봇 그립 시스템을 구축하고 있지만, 인간과 같은 손재주를 가진 고도로 민첩한 손을 만드는 것은 지금까지 너무 복잡하다는 것이 입증되었습니다. 딥 강화 학습을 사용하려면 수십억 개의 레이블이 지정된 이미지가 필요하기 때문에 비현실적입니다.

DeXtreme이라는 프로젝트를 진행 중인 NVIDIA 연구원들은 NVIDIA Isaac GymOmniverse Replicator를 활용하여 큐브를 원하는 위치로 빠르게 조작할 수 있도록 로봇 손을 훈련하는 데 사용할 수 있음을 보여주었습니다. 이와 같은 작업은 조작에 많은 접점이 필요하고 합리적인 시간 내에 조작을 수행하기 위해 동작이 빨라야 하기 때문에 로봇 시뮬레이터에 있어 어려운 과제입니다.

손재주가 발전함에 따라 로봇이 공구를 다룰 수 있는 길이 열렸고, 산업 환경에서 로봇이 더욱 유용해졌습니다.

물리 법칙을 적용한 DeXtreme 프로젝트는 실제 세계에서 훈련할 때보다 10,000배 빠른 속도로 시뮬레이션된 세계 내에서 로봇을 훈련할 수 있습니다. 이는 몇 년이 걸리는 훈련 시간을 며칠로 단축하는 것과 같습니다.

이 시뮬레이터의 성과는 손의 민첩성을 위한 로봇 공학의 성배인 시뮬레이션에서 실제로의 전환을 가능하게 하는 접촉을 모델링할 수 있는 능력을 갖추고 있음을 보여줍니다.

로봇 절단에 관한 최첨단 연구

절단이 가능한 로봇은 새로운 시장 기회를 창출할 수 있습니다.

2021년에는 NVIDIA, 서던 캘리포니아 대학교, 워싱턴 대학교, 토론토 대학교 및 Vector Institute, 시드니 대학교의 연구팀이 로봇 공학 및 시스템 컨퍼런스에서 “최우수 학생 논문”을 수상했습니다: 과학 및 시스템 컨퍼런스에서 “최우수 학생 논문”을 수상했습니다. 연구 제목은 DiSECt: 자율 로봇 절단을 위한 차별적 시뮬레이션 엔진이라는 제목의 이 논문은 로봇이 부드러운 재료를 절단하도록 교육하기 위한 ‘차별적 시뮬레이터’를 자세히 설명합니다. 이전에는 이 분야에서 훈련된 로봇은 신뢰할 수 없었습니다.

DiSECt 시뮬레이터는 일반적인 생물학적 재료를 누르고 절단할 때 나이프에 가해지는 힘을 정확하게 예측할 수 있습니다.

DiSECt는 수학적 모델링 및 엔지니어링에서 미분 방정식을 푸는 데 사용되는 유한 요소법을 사용합니다. 미분 방정식은 한 변수의 변화율 또는 미분이 다른 변수와 어떻게 관련되는지를 보여줍니다. 로봇 공학에서 미분 방정식은 일반적으로 힘과 움직임 사이의 관계를 설명합니다.

이러한 원리를 적용한 DiSECt 프로젝트는 수술과 식품 가공 등 다양한 분야에서 로봇을 훈련할 수 있는 가능성을 제시합니다.

자율성을 위한 충돌 없는 동작 교육

로봇의 잡기, 조립, 조작, 절단은 모두 비약적인 발전을 거듭하고 있습니다. 하지만 안전하게 탐색할 수 있는 자율 이동 로봇은 어떨까요?

현재 개발자는 공장 현장, 주문 처리 센터 또는 제조 공장 등 특정 환경에 맞게 로봇을 훈련시킬 수 있습니다. 그 안에서 시뮬레이션을 통해 팔레트 잭, 로봇 팔, 보행 로봇과 같은 특정 로봇의 문제를 해결할 수 있습니다. 이러한 혼란스러운 설정과 로봇 유형에는 피해야 할 사람과 장애물이 많이 있습니다. 이러한 장면에서 알 수 없고 복잡한 환경에서 충돌 없이 모션을 생성하는 것은 로봇 애플리케이션의 핵심 요소입니다.

이러한 문제를 해결하려는 기존의 모션 계획 접근 방식은 알 수 없거나 동적인 환경에서는 부족할 수 있습니다. SLAM(또는 동시 로컬라이제이션 및 매핑)은 여러 시점의 카메라 이미지로 환경의 3D 맵을 생성하는 데 사용할 수 있지만 물체가 움직이거나 환경이 변경되면 수정이 필요합니다.

이러한 단점을 극복하기 위해 NVIDIA 로보틱스 연구팀은 워싱턴 대학과 함께 모션 정책 네트워크(또는 MπNets)라는 새로운 모델을 공동 개발했습니다. MπNets는 단일 고정 카메라에서 들어오는 연속적인 데이터 스트림을 사용하여 실시간으로 충돌 없는 모션을 생성하는 엔드투엔드 신경망 정책입니다. MπNets는 NVIDIA Omniverse의 지오메트릭 패브릭 파이프라인과 시뮬레이션에서 렌더링된 7억 개의 포인트 클라우드를 사용하여 3백만 개 이상의 모션 계획 문제에 대해 학습되었습니다. 대규모 데이터 세트에 대한 훈련을 통해 현실 세계의 알려지지 않은 환경을 탐색할 수 있습니다.

MπNets에서와 같이 궤적 모델을 직접 학습하는 것 외에도, 연구팀은 최근 CabiNet이라는 새로운 포인트 클라우드 기반 충돌 모델도 공개했습니다. CabiNet 모델을 사용하면 테이블탑 설정을 넘어 미지의 물체에 대한 범용 픽 앤 플레이스 정책을 배포할 수 있습니다. 절차적으로 생성된 650,000개 이상의 시뮬레이션 장면으로 훈련된 CabiNet은 NVIDIA Isaac Gym에서 평가되었습니다. 대규모 합성 데이터 세트로 훈련한 결과 실제 데이터 없이도 실제 주방 환경에서 배포되지 않은 장면까지 일반화할 수 있었습니다.

시뮬레이션이 비즈니스에 주는 이점

개발자, 엔지니어, 연구자는 시간과 비용이 많이 드는 물리적 테스트 방법을 생략하고 가상 환경에서 다양한 종류의 로봇 디자인을 빠르게 실험할 수 있습니다.

다양한 종류의 로봇 설계를 로봇 소프트웨어와 함께 적용하여 실제 기계를 제작하기 전에 가상 환경에서 로봇의 프로그래밍을 테스트하면 나중에 수정해야 하는 품질 문제가 발생할 위험을 줄일 수 있습니다.

이를 통해 개발 일정을 크게 단축할 수 있을 뿐만 아니라 로봇과 AI 모델을 구축하고 테스트하는 데 드는 비용을 대폭 절감하는 동시에 안전성을 보장할 수 있습니다.

또한 로봇 시뮬레이션은 로봇을 재고 데이터베이스와 같은 비즈니스 시스템과 연결하여 로봇이 품목의 위치를 파악하는 데 도움이 됩니다.

사람과 함께 일하는 로봇인 코봇의 시뮬레이션은 부상을 줄이고 작업을 더 쉽게 만들어 모든 종류의 제품을 더 효율적으로 배송할 수 있게 해줍니다.

뿐만 아니라 모든 가정에 놀라울 정도로 빠른 배송이 가능하게 됩니다.

NVIDIA Isaac Sim, Jetson Orin, Omniverse EnterpriseMetropolis에 대해 자세히 알아보세요.

딥 러닝 인스티튜트 강좌에서 자세히 알아보세요: Isaac Sim의 로봇 시뮬레이션 소개