"1조-Five Guys"의 두 판 사이의 차이
(→이론적 계산 및 시뮬레이션) |
(→이론적 계산 및 시뮬레이션) |
||
407번째 줄: | 407번째 줄: | ||
::*깊이 추정 및 포인트 클라우드 생성 | ::*깊이 추정 및 포인트 클라우드 생성 | ||
:::*깊이 추정 | :::*깊이 추정 | ||
+ | ::::스마트폰 카메라를 통해 수집된 2D 이미지 데이터를 바탕으로 3D 공간에 대한 깊이 정보를 추정한다. 이때 삼각 측량(Triangulation)이나 모노큘러 깊이 추정(Monocular Depth Estimation)과 같은 기법이 사용된다. 삼각 측량은 두 개의 카메라 이미지 사이의 대응점을 찾아내고 다음과 같은 수식을 사용하여 깊이를 계산한다. | ||
+ | ::::[[파일:깊이추정.png|100픽셀]] | ||
+ | ::::여기서 Z는 깊이, f는 카메라의 초점 거리, B는 두 카메라 사이의 거리(베이스라인), d는 두 이미지 사이의 시차(disparity)이다. | ||
+ | |||
:::*포인트 클라우드 생성 | :::*포인트 클라우드 생성 | ||
+ | ::::깊이 정보를 통해 각 픽셀의 위치를 3D 좌표계로 변환하여 포인트 클라우드를 생성한다. 변환은 카메라 프로젝션 행렬을 활용하여 2D 픽셀 좌표와 깊이 데이터를 3D로 변환하는 방식으로 이루어진다. | ||
+ | ::::[[파일:포인트_클라우드_생성.png|150픽셀]] | ||
+ | ::::여기서 P는 3D 포인트, K는 카메라의 내부 행렬, D 깊이 값, x는 2D 이미지 좌표이다. | ||
+ | |||
::*메쉬 생성 | ::*메쉬 생성 | ||
:::*삼각분할 | :::*삼각분할 | ||
+ | ::::2D 이미지를 통해 얻은 포인트 클라우드를 삼각형들로 연결하여 메쉬를 구성한다. 일반적으로 각 삼각형의 내접원이 다른 점을 포함하지 않도록 하여 최대화된 최소 각을 보장한다. | ||
:*Mapping(정합 및 매핑) | :*Mapping(정합 및 매핑) | ||
::*표면 정합 | ::*표면 정합 | ||
:::*ICP | :::*ICP | ||
+ | ::::두 포인트 클라우드를 정합하기 위해 반복적으로 각 포인트에 대한 가장 가까운 점을 찾고 최적의 회전 및 이동 변환을 계산한다. 정합을 위해 최소 제곱 오차를 최적화하는 수식은 아래와 같다. | ||
+ | ::::[[파일:icp.png|200픽셀]] | ||
+ | ::::여기서 p_i는 기준 포인트, p_i^'는 매칭된 포인트, R은 회전 행렬, t는 이동 벡터이다. | ||
====상세설계 내용==== | ====상세설계 내용==== |
2024년 12월 4일 (수) 21:56 판
프로젝트 개요
기술개발 과제
국문 : 증강현실(AR) 기반 로봇팔 시뮬레이터
영문 : Augmented Reality(AR) Based Robotic Arm Simulator
과제 팀명
Five Guys
지도교수
황면중 교수님
개발기간
2024년 9월 ~ 2024년 12월 (총 4개월)
구성원 소개
서울시립대학교 기계정보공학과 20194300** 조**(팀장)
서울시립대학교 기계정보공학과 20184300** 문**
서울시립대학교 기계정보공학과 20194300** 이**
서울시립대학교 기계정보공학과 20194300** 최**
서울시립대학교 기계정보공학과 20194300** 최**
서론
개발 과제의 개요
개발 과제 요약
로봇을 실제 환경에서 실험하기 전에 동작과 작업 영역을 확인하고 충돌 사고를 예방하기 위해 시뮬레이션 테스트가 필요하다. 이 프로젝트는 AR 기술을 활용하여 가상 실험 환경을 구축하고, 로봇을 실제 환경에서 실험하기 전에 증강현실로 미리 테스트하여 사고를 예방하는 시스템이다. 기존 시뮬레이터의 단점을 보완하여, 스마트폰 카메라로 3D-Depth 맵을 생성하고 사용자가 직접 맵을 구현할 필요가 없다. 사용자는 AR로 로봇을 제어하고, VR box를 통해 움직임을 확인하며, 충돌 발생 시 위치 정보를 제공받는다.
개발 과제의 배경
로봇을 실제 환경에서 실험하기 이전에 로봇의 동작과 작업 영역을 확인하고 충돌 사고 등을 예방하기 위해 시뮬레이션 환경에서의 테스트가 선행되어야 한다. 기존의 시뮬레이터는 실험 환경이 바뀔 때마다 시뮬레이션 환경을 다시 만들어야 하는 단점이 있다.
개발 과제의 목표 및 내용
이 프로젝트는 AR 기술을 활용한 가상 실험 환경을 구축하는 것이다. 로봇 등 다양한 기술을 실제 환경에서 실험하기 전에 증강현실로 미리 실험하여 충돌 등의 사고를 예방하는 시스템이다. 시스템은 스마트폰 카메라를 통해 실험 환경의 3D-Depth 맵을 생성하며, 사용자가 직접 맵을 구현할 필요가 없다. 사용자는 AR로 불러온 로봇을 명령에 따라 제어하고, 스마트폰과 결합한 VR box를 통해 그 움직임을 확인할 수 있다. 또한, 실험 과정에서 충돌이 발생하면 충돌 발생 위치에 대한 정보를 제공받을 수 있다.
관련 기술의 현황
관련 기술의 현황 및 분석(State of art)
- 로봇팔 시뮬레이터
- MATLAB/SIMSCAPE
- MATLAB의 Robotics Tool Box[1]를 이용해 로봇의 기구학, 동역학 등과 관련된 라이브러리를 불러올 수 있으며 로봇 모델링 또한 가능하다. 이에 더해 MATLAB의 SIMSCAPE[2]를 사용하면 Multibody를 활용해 다물체에 대한 모델링 환경을 제공하며 힘, 토크, 마찰 등과 같은 물리적 요소를 추가하여 실제 동작과 같은 모델을 구현할 수 있다. 추가적으로 SIMSCAPE의 특성상 직관적으로 제어 시스템을 구성할 수 있으며 MATLAB과 연동하여 데이터의 처리가 편리하다는 이점이 있다. 시뮬레이션의 경우 라그랑주 역학 및 뉴턴-오일러 방정식을 기반으로 하기 때문에 정밀한 시뮬레이션이 가능하다.
- GAZEBO
- GAZEBO는 실제 로봇의 운영에 있어 대중적으로 사용하는 미들웨어 ROS(Robot Operating System)와 통합이 용이하다. 이를 바탕으로 시뮬레이션과 실제 로봇 제어를 동시에 수행할 수 있다. 이에 더해 플러그인 아키텍처를 사용하기 때문에 카메라, 로봇 모델 등 시뮬레이션에서 활용할 수 있는 다양한 요소의 추가 및 수정이 편리하다. 또한 GAZEBO는 오픈 소스이기 때문에 무료로 사용할 수 있으며 대규모 오픈 소스 커뮤니티를 통해 지원을 받을 수 있다는 이점이 있다. 물리 엔진의 경우 ODE(Open Dynamics Engine), Bullet, DART(Dynamic Animation and Robotics Toolkit), Simbody 등 여러 물리 엔진을 지원하기 때문에 시뮬레이션의 목적에 적합한 동작을 구현할 수 있다.
- Unity
- 설계가 될 당시 게임 엔진을 목표로 하였지만 최근 로봇공학 및 시뮬레이션에 사용되고 있다. 로봇공학 분야에서도 적극 사용할 수 있도록 ROS와 통합을 위한 플러그인을 지원하며 이를 바탕으로 실제 로봇과 동일한 조건에서 제어 알고리즘을 검증할 수 있다. 추가적으로 AI와 머신러닝을 통합할 수 있는 환경을 제공하여 로봇팔이 자율적으로 학습하는 강화 학습 환경을 구성할 수 있으며 VR과 AR을 통합할 수 있는 기능까지 제공된다. PhysX 물리 엔진을 사용하여 충돌 감지, 힘 및 토크 계산, 마찰을 정밀하게 모델링할 수 있으며 고품질 3D 그래픽까지 활용되면 매우 사실적인 환경을 제공할 수 있다.
- Isaac Sim
- NVIDIA의 Omniverse 플랫폼을 기반으로 한 로봇 시뮬레이션 소프트웨어이며 Cloud환경 및 고성능 GPU를 기반으로 물리 계산을 빠르게 수행하며 시뮬레이션의 속도와 정확성을 극대화한 환경이다. 이러한 특징을 기반으로 로봇팔의 자율 학습, 딥러닝과 강화 학습 알고리즘 지원 등 AI와 머신러닝에 최적화된 시뮬레이션 환경을 제공한다. 물리 엔진으로는 PhysX 엔진을 사용하여 충돌 감지, 힘 및 토크 계산, 마찰을 정밀하게 모델링할 수 있다.
- 증강현실
- Unity
- 내장 물리 엔진인 PhysX 엔진을 바탕으로 충돌 감지 및 상호 작용 구현에 유리하며 무료 라이센스, 튜토리얼 제공, 다양한 인터페이스 제공으로 일반인이 접근하기 용이하다는 장점을 갖고 있다. 하지만 복잡한 기능 구현을 위해서는 추가적인 학습이 필요하다는 단점이 존재한다.
- Unreal Engine
- 내장 물리 엔진인 Chaos를 통해 복잡한 AR 시뮬레이션 환경에서도 우수한 성능을 보이는 것이 특징이다. Unity와 마찬가지로 무료 라이센서와 다양한 온라인 학습 자료가 제공되기 때문에 접근성이 좋지만 처음 사용법을 익히는 데에는 비교적 시간이 오래 걸린다는 단점이 있다.
- ARkit(Apple)
- 무료로 제공되며 Apple 생태계에 최적화되어 있어 Apple 장치를 통해 VR 또는 AR을 구현하기 위해 적합한 소프트웨어이다. 하지만 Apple 생태계에 최적화된 만큼 Apple 장치가 없는 경우 사용이 제한적이며 ARKit 내장 물리 엔진을 사용한다는 특징이 있다.
- ARCore(Google)
- ARKit과 달리 Android 생태계에 최적화되어 있는 소프트웨어이다. 이에 따라 Android 장치가 없는 경우 사용이 제한적이라는 단점이 있으며 Unity, Unreal Engine과 통합하며 물리 엔진 구현이 가능하다는 특징이 있다.
- 3D Mapping
- Phtogrammetry
- 다수의 2D 사진을 이용해 3D 구조를 재구성하는 방법으로 대규모 지역을 빠르게 맵핑할 수 있다는 특징이 있다. 하지만 주변 환경에 많은 영향을 받으며 특히 복잡한 표면의 경우 표현이 제한적이라는 단점이 있다.
- SLAM
- 이동 중에도 데이터 수집 및 맵핑이 가능하여 동적 환경에서 유리하며 이에 따라 다양한 로봇 플랫폼에서 사용하기에 적절하다. 하지만 맵 구성에 있어 계산량이 많아 처리 속도가 느릴 수 있으며 센서 품질에 따라서 정확도가 크게 달라진다는 특징이 있다.
- RGB-D SLAM
- RGB 카메라와 Depth 센서를 함께 사용하여 비교적 정확한 지도를 생성할 수 있으며 실시간으로 깊이 정보를 처리할 수 있어 즉각적인 피드백 및 환경 인식이 가능하다는 특징이 있다. 하지만 Depth 센서의 측정 범위가 짧아 먼 거리의 물체는 정확한 감지가 어려우며 조명 조건에 영향을 받을 수 있다는 단점이 있다.
기술 로드맵
- 로봇팔 시뮬레이터
- 1980년대
- 로봇팔의 기구학, 동역학 및 제어, 시뮬레이션의 연구 단계로 이론적인 기초를 설립하는 시기이다. 이 시기에는 CAD 시스템과 함께 기구학 시뮬레이터를 활용하여 시뮬레이션을 진행하였다.
- 1990년대
- 로봇팔의 기구학, 동역학 및 제어, 시뮬레이션의 이론이 발전하는 단계이며 MATLAB/Simulink[12]를 활용하여 2D/3D 시각화가 가능한 로봇 시스템의 제어 알고리즘 개발 및 테스트를 진행하였다.
- 2000년대
- 여러 물리 엔진의 기본이 되는 물리 기반 동역학 시뮬레이션 이론이 등장하였다. 특히, 현재에도 대중적으로 활용되는 V-REP(Virtual Robot Experimentation Platform)과 GAZEBO가 등장하며 해당 소프트웨어를 활용해 로봇 시뮬레이션을 진행하였다.
- 2010년대
- ROS(Robot Operation System)이 등장하며 로봇에 접근하기 용이한 환경이 조성되었으며 GAZEBO와 ROS의 통합으로 시뮬레이션에 대한 접근성이 증대되었다. 추가적으로 MoveIt과 같이 시뮬레이션에서 경로 계획과 제어를 용이하게 해주는 오픈 소스가 등장하였다.
- 2020년대
- 시뮬레이션을 기반으로 데이터 셋을 생성하고 학습을 진행하는 환경이 만들어졌다. 따라서 로봇 시뮬레이션과 머신러닝, AI를 통합할 수 있는 Issac Sim과 같은 환경이 개발되었으며 시뮬레이션을 바탕으로 학습한 내용을 현실에서도 사용할 수 있도록 현실과 시뮬레이션 환경 동기화와 관련된 연구가 진행되었다.
- 현재&미래
- 디지털 트윈을 활용하여 실제 로봇과 가상 시뮬레이터가 실시간으로 상호작용할 수 있는 기술이 개발되고 있으며 클라우드 기반 고성능 컴퓨팅을 활용하여 더욱 정밀하고 사실적인 시뮬레이션 개발이 진행되고 있다.
- 증강현실(Augmented Reality)
- 1990년대
- 1968년 Head-Mounted-Display 기술이 개발된 것이 증강현실의 시작이며 1992년 산업 생산 공정에서 AR 응용 가능성을 제시한 논문[13]이 발표되며 ‘증강현실(Augmented Reality)’ 이라는 용어가 대중적으로 사용되고 개발되기 시작하였다.
- 2000년대
- ARToolkit 오픈소스 소프트웨어가 등장하였으며 해당 소프트웨어가 뷰포인트 추적 기술을 제공하며 AR 기술 개발이 확대되었다. 또한 “A Survey of Augmented Reality” 논문[14]에서 AR의 과거, 현재, 미래에 대해 리뷰를 진행하며 AR 기술 개발이 널리 알려지게 되었다.
- 2010년대
- 모바일 AR 애플리케이션 제작시 활용되는 Vuforia[15]가 출시되며 대중의 AR 기술 접근이 증가하였으며 모바일 AR 기술 개발이 확대되었다. 또한 Google에서는 Google Glass를 통해 AR을 안경에 접목시키는 기술을 보여주었으며 Unity, Unreal Engine이 등장하며 AR 개발 툴킷에 물리 엔진 적용이 확대되고 실제와 같은 AR 구현에 힘쓰게 되었다.
- 2020년대
- Microsoft에서는 HoloLens 관련 특허[16]를 등록하였으며 이는 공간 맵핑, 제스처 인식, 시각 데이터 통합 등의 기술을 담고 있으며 이를 바탕으로 MR(Mixed Reality) 구현이 본격적으로 시작되었다. MR은 현실과 가상을 혼합하여 더 발전된 가상 현실을 만드는 것을 의미한다.
- 현재&미래
- 현재에는 객체 인식, 공간 인식, 제스처 인식에 AI를 접목하여 더 정확하고 자연스러운 AR을 생성하는 연구가 진행되고 있으며 이후에는 AI와 MR의 접목을 통해 현실과 가상의 구분이 어려운 가상현실이 생성될 것으로 보인다.
- 3D Mapping
- ~1990년대
- 3D Mapping에 대한 초기 개념이 정립되고 개념의 발전이 진행되는 시기로 전통적인 지리적 측량 기법을 사용하여 수작업 계산을 통해 3D 모델을 생성하였다.
- 1990년대
- LiDAR 기술이 개발되며 고정밀의 3D Mapping이 가능해졌으며 Photogrammetry가 발전하여 항공 사진, 위성 이미지를 기반으로 3D 모델링이 가능해졌다.
- 2000년대
- 디지털 이미지, 컴퓨터 비전 기술이 발전하며 사진을 기반으로 한 3D 모델링이 더욱 정밀해졌으며 SLAM(Simultaneous Localization And Mapping) 기술이 발전하여 본격적인 3D Mapping이 진행되었다.
- 2010년대~현재
- RGB-D 카메라의 도입으로 실시간 3D Mapping 및 정확한 3D 모델링이 가능한 수준으로 기술이 발전하였으며 AI를 활용하여 물체 인식, 특징 추출, 데이터 분류 등을 통해 정확한 모델 구축이 가능해졌다.
- 현재&미래
- 클라우드 컴퓨팅을 통한 데이터 공유 및 실시간 처리, 사물 인터넷을 통한 정보수집을 이용해 더욱 빠르고 정밀한 3D Mapping을 구현하고 있다.
특허조사 및 특허 전략 분석
- Visualization Of a Robot Motion Path and Its Use in Robot Path Planning(US20240083027)
- AR을 활용하여 로봇의 모션 및 경로를 시각화하고 경로 길이 최소화, 로봇 수명 극대화 등에 초점을 맞춘 경로 최적화를 진행하는 기술을 제안하였다.
- Occlusion and Collision Detection for Augmented Reality Applications(US20220230383)
- AR 환경에서 가상 객체와 실제 객체의 위치를 파악하고 충돌을 감지하는 기술을 제안하였다.
- 특징과 차별점 비교
항목 Visualization Of a Robot Motion Path and Its Use in Robot Path Planning(US20240083027) Occlusion and Collision Detection for Augmented Reality Applications(US20220230383) 특징 AR 활용
로봇 모션 및 경로 시각화
경로 최적화가 초점AR 활용
가상 객체, 실제 객체 탐지
객체간 충돌 감지특허와 비교한 본 프로젝트의 차별성 실제 환경에 대한 Mapping 존재
실제 환경과의 충돌 고려
충돌 시각화가 초점실제 환경 탐지 및 Mapping
복잡한 가상 객체 활용
- 특허 전략
- 본 프로젝트는 3D 맵핑, AR 매니퓰레이터 제어, 가상 환경과 실제 환경의 통합을 주된 기술로 진행된다. 관련하여 3D 맵핑과 AR 매니퓰레이터 제어는 특허가 제시되어 널리 사용되고 있으므로 해당 기술의 경우 상호 라이선스를 통해 협력관계를 구축한다. 한편, 3D 맵핑과 AR 매니퓰레이터 제어를 바탕으로한 가상 환경과 실제 환경의 통합 기술을 특허 개발을 통해 특허 출원을 진행한다.
시장상황에 대한 분석
시장 분석
- AR 매니퓰레이터 인터페이스 시장은 아직 활성화되지 않았지만 관련 연구가 증가하고 있는 추세이다. 증강현실 분야에 대한 연구는 활발해지고 있으며, 4차 산업혁명에 따른 컴퓨팅 속도 향상, 카메라 발전, 새로운 알고리즘 등 기술 발전으로 인해 전반적인 AR 시장이 확대되고 있다. 한편, 로봇은 일상생활에서 점점 더 보편화되고 있으며, 기존의 산업 내 역할을 넘어 재활 로봇, 사회적 로봇, 이동/항공 로봇, 다중 로봇 시스템과 같은 다양한 분야로 확장되고 있다. 이런 흐름 속에서 로봇 공학에서의 AR은 상호작용의 효율성과 직관성을 향상시켜 인간-로봇 상호작용(HRI)을 변화시키고 있다.
- 아래 그림을 통해 1995년부터 2019년까지 로봇 제어 및 계획 분야에서 AR 및 VR 연구가 꾸준히 증가했음을 알 수 있다. 이는 AR 및 VR 연구의 증가는 로봇 공학 분야에서 AR 기반 애플리케이션에 대한 관심과 잠재력이 커지고 있음을 나타낸다.
경쟁제품 조사 비교
- AR 매니퓰레이터 인터페이스 시장이 아직 완전히 형성되지 않았기 때문에 현재 본격적인 상용제품이 아닌 경쟁제품은 연구단계에 있다. 다음은 두 가지 주목할만한 연구이다.
- Programming Robotic Manipulator using Augmented Reality
- VR 헤드셋을 사용하여 손 제스처로 실제 로봇 위에 겹쳐져 있는 가상 로봇의 모션을 조작한다. Message 명령을 통해 현재 가상 로봇의 모션을 실제 로봇이 따라가는 방식으로 구현 되어있다. 여러 컨피규레이션을 store 해두고 한 번에 Message 명령으로 보내 연속동작을 수행하는 기능도 제공한다.
- Robot Programming Through Augmented Trajectories
- 이 연구에서는 VR 헤드셋을 사용하여 손 제스처로 trajectory를 생성할 수 있다. 생성한 trajectory 위를 가상 로봇만 따르게 하는 프리뷰 기능을 제공한다. 가상 로봇은 실제 로봇과 겹쳐져 있어 실제 로봇의 움직임을 미리 볼 수 있는 효과가 있다. trajectory 생성 방식은 평면, 곡면을 인식하여 면 위에 trajectory 경유점을 지정하는 방식이다.
Programming Robotic Manipulator using Augmented Reality | Robot Programming Through Augmented Trajectories | 본 프로젝트 | |
---|---|---|---|
사용 기기 | VR 헤드셋 | VR 헤드셋 | 스마트폰, 노트북, RGB-D 센서 |
조작 방법 | 손 제스처 | 손 제스처 | 스마트폰 터치, 노트북 키보드 |
프리뷰 기능 | O | X | O |
모션 조작 기능 | O | X | X |
경로 계획 기능 | X | O | X |
충돌 검사 기능 | X | X | O |
특징/성능 matrix를 통해 분석한 본 제품의 강점은 실시간 환경변화를 반영하여 충돌체크를 수행하는 기능과 수동으로 실제 환경을 시뮬레이션할 필요가 없어 시간이 절약되는 효과이다.
마케팅 전략 제시
범주 | 내용 |
---|---|
강점(Strengths) |
- 실시간 환경 반영 |
약점(Weaknesses) |
- 추가 하드웨어 필요 |
기회(Opportunities) |
- 선점자 이점 |
위협(Threats) |
- 잠재적 경쟁자 |
- - SO 전략(강점-기회)
- 얼리 어답터(로봇 공학 연구소, 연구 기관 또는 주요 제조 공장)와 협력하여 실제 응용 분야에서 제품의 장점을 보여주는 자세한 사례 연구를 개발한다. 실시간 환경 반영 및 시간 절약 이점이 어떻게 로봇 연구 개발의 효율성을 높이고 오류를 줄이는지 강조한다. 이러한 사례 연구는 추가 파트너십을 유치하고 시장에서 신뢰도를 구축하는 강력한 마케팅 도구 역할을 할 수 있다. 또한, 할인된 가격이나 사용자 정의 옵션 등 얼리 어답터에게 인센티브를 제공하여 신속한 채택을 장려하고 제품 개선을 위한 중요한 피드백을 수집한다.
- - ST 전략(강점-위협)
- 잠재적인 경쟁업체가 시장에 진입하면 제품의 주요 차별화 요소인 실시간 환경 반영과 시간 절약의 장점을 마케팅 자료에 강조하여 경쟁력을 유지한다. 또한 새로운 기능, 소프트웨어 업데이트 및 성능 향상을 지속적으로 도입하는 지속적인 제품 개선 프로그램을 개발한다.
- - WO 전략(약점-기회)
- 추가 하드웨어 요구 사항을 해결하기 위해 제품을 개선하는 데 중점을 둔다. RGB-D 센서를 대체할 수 있는 소프트웨어 기반 솔루션을 개발하면 시장이 크게 확대될 수 있다. 또한 전체 기능을 갖춘 솔루션에 대한 예산이 없는 교육 기관, 소규모 연구실 및 스타트업을 대상으로 하는 저렴한 버전의 제품을 만들 수 있다. 이 버전은 실시간 환경 반영을 제공하는 동시에 핵심 기능에 초점을 맞춘 가볍고 접근 가능한 대안으로 제공될 수 있습니다. 이를 통해 더 넓은 시장 부문으로의 문을 열면서 값비싼 하드웨어에 대한 의존도를 줄이고 더 넓은 시장 침투를 위한 중요한 기회를 포착할 수 있다.
- - WT 전략(약점-위협)
- 시스템 구성의 복잡성을 줄이기 위한 포괄적인 지원과 손쉬운 통합 가이드 제공 포괄적인 지원 및 손쉬운 통합 가이드와 함께 도입 초기 단계에서 사용자와 긴밀하게 협력하는 전담 고객 서비스 팀을 구축한다. 이 팀은 제품의 원활한 전환과 최적의 사용을 보장하기 위해 실습 교육, 맞춤형 시스템 구성 지원 및 지속적인 지원을 제공한다. 적극적인 고객 참여에 중점을 둠으로써 추가 하드웨어의 필요성으로 인해 발생할 수 있는 기술적 복잡성을 완화하는 동시에 장기적인 고객 충성도를 강화하여 사용자를 빼앗길 위험을 최소화할 수 있다. RGB-D 센서가 포함된 번들 패키지를 제공 등 추가 하드웨어가 필요한 약점을 완화한다.
개발과제의 기대효과
기술적 기대효과
- 이 프로젝트는 실제환경에서 로봇 실험을 진행하기 전에 증강현실(AR)로 미리 로봇의 동작과 주변 물체와의 충돌 여부를 확인함으로써, 로봇의 충돌 방지 및 작업 안정성을 사전에 확인할 수 있는 기술적 성과를 기대할 수 있다. RGB-D 카메라를 통해 실험 환경의 3D Depth-맵을 생성하고, 이후 실험환경의 변화에 따라 3D Depth-맵을 최신화하여 시뮬레이션 상에서 따로 맵을 구현할 필요 없이 로봇의 움직임을 실시간으로 확인함으로써 개발 효율이 향상된다. 이에 따라 개발 기간 단축 및 비용 절감을 예상할 수 있으며, 테스트 중 발생할 수 있는 장비 손상 위험을 최소화할 수 있다.[22]
경제적, 사회적 기대 및 파급효과
- 경제적으로는 시뮬레이션 환경을 구축하는 데 필요한 인력과 자원을 절약할 수 있으며, 이로 인해 관련 연구개발 비용이 절감될 것으로 예상된다. 또한, 충돌로 인한 로봇이나 실험 환경의 파손을 방지함으로써 유지보수 및 장비 교체 비용 절감 효과도 기대된다. 이러한 기술은 로봇 제조업 및 자동화 산업에서의 생산성과 경쟁력 강화를 도모하여, 관련 시장 규모의 성장에 기여할 가능성이 있다.[23]
사회적 측면에서는, 안전한 실험 환경을 조성함으로써 로봇 기술 도입 시 발생할 수 있는 물리적 위험 요소를 줄일 수 있다. 이는 산업 현장에서의 작업자 안전성을 높이고, 궁극적으로 산업재해를 감소시키는 효과를 가져올 수 있다. 환경적인 측면에서 실험 중 파손으로 인한 폐기물 발생을 줄이고, 에너지 소모와 자원 낭비를 최소화함으로써 환경 보호에 기여할 수 있다.
기술개발 일정 및 추진체계
개발 일정
내용
구성원 및 추진체계
내용
설계
설계사양
제품의 요구사항
번호 | 요구사항 | D or W | 중요도 |
---|---|---|---|
1 | 휴대폰과 컴퓨터 사이의 통신이 원활해야 함. | D | 대 |
2 | 휴대폰의 자세추정이 정확하게 이루어져야 함. | D | 대 |
3 | 충돌 감지가 정확해야 함 | D | 대 |
4 | 렌더링 된 로봇의 움직임이 자연스러워야 함. | D | 중 |
5 | 렌더링 된 로봇의 움직임이 실제와 유사해야 함. | D | 중 |
6 | 다양한 로봇과 소프트웨어에 대해 적용이 가능해야 함. | W | 소 |
7 | 인터페이스를 사용함에 있어 불편함이 없어야 함. | W | 소 |
항목 | 세부 항목 | 설명 |
---|---|---|
편의성 | 가시성 | 화면에 렌더링된 로봇의 움직임이 자연스러워 실제 환경과의 어색함이 없어야 함. |
사용 범용성 | 다양한 로봇에 대해 사용이 가능하며, 로봇을 동작시키는 어떠한 소프트웨어라도 적용 가능해야 함. | |
조작 편의성 | 사용자가 인터페이스를 통해 다양한 기능을 사용할 때 불편함이 없어야 함. | |
성능 | 추적 정확도 | 휴대폰의 자세 추정을 기반으로 렌더링된 로봇의 자세가 전역 좌표계 상에서 고정되어야 함. |
충돌 감지 정확도 | 렌더링된 로봇과 주변의 실제 지형지물 간의 충돌을 정확히 감지해야 함. | |
현실 재현도 | 렌더링된 로봇의 움직임이 실제 로봇의 움직임과 유사해야 함. | |
경제성 | 효율성 | 시스템 개발에 필요한 비용이 저렴해야 함. |
설계 사양
항목 | 기준 | 설계사양 |
---|---|---|
가시성 | 80% 이상의 사용자 만족도 | AR을 통해 실제환경에 렌더링 된 로봇의 모습이 자연스러워야 함. (예: 실제 로봇이 책상 위에 놓여 있다면 렌더링 된 로봇 또한 책상 위에 자연스럽게 렌더링 되어야 함) AR을 통해 실제환경에 렌더링 된 로봇이 동작할 때 움직임이 끊김이 없고 자연스러워 실제환경과의 어색함이 없어야 함. |
사용자 친화도 | 80% 이상의 사용자 만족도 | 사용자가 AR환경에서 간편한 입력장치를 사용하여 인터페이스를 이용함에 있어 불편함이 없어야 함. |
휴대폰 자세 추정 정확도 | 위치오차 1cm 이하 및 각도오차 3° 이하 | 로봇이 렌더링 될 자세는 출력장치인 휴대폰의 자세에 의존적이므로 휴대폰 자세추정의 오차를 최소화해야 함. 휴대폰에 내장된 IMU센서를 사용하여 자세추정을 진행하며 하드웨어적인 한계 및 예외상황을 고려하여 위치오차 1cm 이하, 각도오차 3° 이하를 목표로 설정하여 구현. |
현실 재현도 | 조인트 오차 1 이하 | 가상 로봇이 실제 로봇의 움직임을 잘 재현해야 함. |
로봇과 장애물간의 충돌 감지 정확도 | 충돌 감지 정확도는 95% 이상, 충돌 위치의 정밀도는 5cm 이하 | 특정 동작이 만약 실제 로봇이 수행하였을 때 주변 지형지물과의 충돌이 발생하는 동작이라면, AR을 통해 렌더링 된 로봇은 해당 동작을 수행함에 있어서 충돌이 발생하는 동작이라는 사실을 95% 이상의 정확도로 밝혀내야 함. 충돌이 발생하는 동작임을 밝혀냈을 때 충돌이 발생하는 위치는 5cm 이하의 정밀도를 가져야 함. |
개념설계안
- 출력장치
- 개발환경
- 인식장치
- 3D Mapping
이론적 계산 및 시뮬레이션
- 변환행렬 및 관계
- 모델링 객체를 스마트폰의 화면 상에 표시하기 위해서는 모델링 객체의 좌표계, 스마트폰의 카메라 좌표계, Unity의 가상 환경 좌표계 사이의 관계가 필요하다. 그 관계를 변환행렬이라고 하며 이를 구하면 아래 그림의 과정에 따라 총 4단계를 거쳐 모델링 객체가 스마트폰 화면에 나타나게 된다.
- 먼저 모델이 가지고 있는 모델 좌표계를 월드 변환을 통해 Unity의 가상 환경 좌표계에 배치한다. 가상 환경에 배치된 모델들을 AR 기기의 카메라 기준 좌표계로 배치하기 위한 뷰 변환을 단계로 하여 순차적으로 이뤄진다. 행렬이므로 한 번에 계산이 가능하다.
- 회전행렬
- 기준 좌표계 관점에서 바라본 대상 좌표계의 회전 정도이다. 아래 그림을 예로 들면 기준 좌표계인 그림의 xyz 좌표계의 관점에서 봤을 때 주전자 모델링의 회전 정도이다.
- 먼저 모델이 가지고 있는 모델 좌표계를 월드 변환을 통해 Unity의 가상 환경 좌표계에 배치한다. 가상 환경에 배치된 모델들을 AR 기기의 카메라 기준 좌표계로 배치하기 위한 뷰 변환을 단계로 하여 순차적으로 이뤄진다. 행렬이므로 한 번에 계산이 가능하다.
- 동차 변환 행렬
- 좌표계간의 이동을 표현한 동차 좌표에 회전 행렬을 추가하면 행렬 간의 회전, 위치 변환을 곱셈으로 표현할 수 있다.
- 이를 모델링 객체의 좌표변환 과정에 적용하면 Unity의 가상 환경의 좌표계 관점에서 본 모델링 객체 좌표계의 동차 변환 행렬(world transform matrix), 카메라 좌표계의 관점에서 본 가상 환경 좌표계의 동차 변환 행렬(view transform matrix)이 필요하다. world transform matrix는 이미지 자세 추정, view transform matrix는 IMU 칼만필터 과정을 통해 얻을 수 있다. world transform matrix를 T_virtual^modeling, view transform matrix를 T_camera^virtual라 하면 카메라 좌표계의 관점에서 본 모델링 객체 좌표계의 회전과 위치 값은 아래 식의 행렬곱의 결과 T_camera^virtual에 표현된다.
- 이미지 자세 추정
- 이미지 자세 추정은 이미지 특징 감지, 이미지 특징 매칭, 호모그래피 계산, 이미지 트래킹으로 이루어진다.
- IMU 칼만필터(위치추정)
- IMU 센서와 위치 추정 개요
- IMU 센서는 가속도계와 자이로스코프로 구성되어 있으며, 이를 통해 가속도와 각속도를 측정한다. 이러한 데이터를 시간에 따라 적분하면 속도와 위치를 추정할 수 있다. 그러나 센서 노이즈와 바이어스 때문에 직접적인 적분은 누적 오차를 발생시켜 정확한 위치 추정이 어렵다.
- Forward Kinematics
- 로봇팔에서 n-1번째 조인트와 n번째 조인트 사이의 관계를 표현 위해 4×4 동차 변환 행렬을 사용한다. 동차 변환 행렬은 아래 식과 같으며, 이때 r_11 ~ r_33은 조인트 사이의 회전 변환을 나타내고 p_1 ~ p_3은 조인트 사이의 위치 변환을 나타낸다
- 위 식의 각 원소를 구하기 서로 인접한 좌표의 회전 또는 전이 관계를 표현하는 Denavit-Hartenberg 표현방식을 사용한다. Denavit-Hartenberg는 아래와 같은 변수로 이루어져 있으며 이들을 D-H변수라 한다.
- 각 링크에서의 D-H 변수들을 찾은 후 아래 식을 적용하면 n-1번째 조인트와 n번째 조인트 사이의 관계를 찾을 수 있다.
- A_0^1~A_(n-1)^n을 바탕으로 로봇팔의 0번째 조인트부터 n번째 조인트의 변환행렬을 구하면 아래 식과 같다. 이때, R_0^n은 0번째 조인트부터 n번째 조인트까지의 회전 행렬이며 P_0^n은 0번째 조인트부터 n번째 조인트까지의 위치 벡터이다. 이를 바탕으로 설정한 좌표축은 밑의 그림과 같다.
- 위 그림에서 B,0^',1^',2^',3^',4'의 좌표축은 조인트 간의 모든 변환을 나타내기 위해 추가하였다. 이를 바탕으로 K1로봇팔의 D-H변수를 구하면 아래 표와 같다.
- Meshing(메쉬 생성)
- 깊이 추정 및 포인트 클라우드 생성
- 메쉬 생성
- 삼각분할
- 2D 이미지를 통해 얻은 포인트 클라우드를 삼각형들로 연결하여 메쉬를 구성한다. 일반적으로 각 삼각형의 내접원이 다른 점을 포함하지 않도록 하여 최대화된 최소 각을 보장한다.
- Mapping(정합 및 매핑)
상세설계 내용
내용
평가 내용
- 출력 장치
- 시인성 및 경제성을 고려하여 VR BOX(+스마트폰)을 선택
- 개발 환경
- 호환성이 높고 다양한 기능을 지원하는 Unity를 선택
- 인식장치
- 경제성, 호환성, 접근성 측면에서 우수한 Smart Phone Camera를 선택
- 3D Mapping
- 연산량이 적고 단순하게 카메라의 2D 이미지 데이터를 필요로 하는 Lightship ARDK을 선택
결과 및 평가
완료 작품의 소개
프로토타입 사진 혹은 작동 장면
내용
포스터
내용
관련사업비 내역서
내용
완료작품의 평가
내용
향후계획
내용
특허 출원 내용
내용
참고자료
[1] The MathWorks inc., “Robotics System Toolbox”, https://kr.mathworks.com/products/robotics.html
[2] The MathWorks inc., “Simscape”, https://kr.mathworks.com/products/simscape.html
[3] Open Robotics, “GAZEBO”, https://gazebosim.org/home
[4] Unity Technologies, “Unity”, https://unity.com/kr
[5] NVIDIA DEVELOPER, “NVIDIA Isaac Sim”, https://developer.nvidia.com/isaac/sim
[6] Epic Games, “Unreal Engine”, https://www.unrealengine.com/ko
[7] Apple Inc. “ARKit 6”, https://developer.apple.com/kr/augmented-reality/arkit/
[8] Google for Developers, “ARCore”, https://developers.google.com/ar?hl=ko
[9] NVIDIA Corporation, “What Is Photogrammetry?”, https://blogs.nvidia.com/blog/what-is-photogrammetry/
[10]The MathWorks inc., “SLAM(동시적 위치추정 및 지도작성)”, https://kr.mathworks.com/discovery/slam.html
[11]The MathWorks inc., “Visual SLAN with RGB-D Camera – MATLAB & Simulink”, https://kr.mathworks.com/help/vision/ug/visual-slam-with-an-rgbd-camera.html
[12] The MathWorks inc., ”Simulink”, https://kr.mathworks.com/products/simulink.html
[13] Caudell, T. P., & Mizell, D. W. (1992). Augmented reality: An application of heads-up display technology to manual manufacturing processes. In Proceedings of the twentyfifth Hawaii international conference on system sciences (Vol. 2, pp. 659–669).
[14] Azuma RT. A survey of augmented reality. Presence Teleoperators \ Virtual Environ 1997;6:355–85.
[15] PTC, “Vuforia: 시장을 선도하는 엔터프라이즈 AR”, https://www.ptc.com/ko/products/vuforia
[16] Michel Pahud (2023), Intuitive augmented reality collaboration on visual data, US20230350628A1
[17] Giacomo Spampinato (2024), Visualization Of a Robot Motion Path and Its Use in Robot Path Planning, US20240083027
[18] TIAN, Yuan (2021), Occlusion and Collision Detection for Augmented Reality Applications, US20220230383
[19] Zhanat Makhataeva and Huseyin Atakan Varol. 2020. Augmented reality for robotics: a review. Robotics 9, 2 (2020), 21.
[20] CAM USC Viterbi, (2017, 09 23), Programming Robotic Manipulator using Augmented Reality [Video], YouTube, https://www.youtube.com/watch?v=qrX7n2AUXco
[21] CARIS Lab, (2018, 02 15), Robot Programming Through Augmented Trajectories [Video], YouTube, https://www.youtube.com/watch?v=amV6P72DwEQ
[22] 이가영 기자, (2017, 10 27), 제조공정 개선 ‘VR·AR’ 한 몫하는데 국내 열악, 중기이코노미, https://www.junggi.co.kr/article/articleView.html?no=20259
[23] 박관희 기자, (2018, 10 19), AR 통해 제조현장의 디지털 트랜스포메이션 가능해진다, 인더스트리뉴스, https://www.industrynews.co.kr/news/articleView.html?idxno=27404