KR102044856B1 - 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법 - Google Patents
가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법 Download PDFInfo
- Publication number
- KR102044856B1 KR102044856B1 KR1020170182002A KR20170182002A KR102044856B1 KR 102044856 B1 KR102044856 B1 KR 102044856B1 KR 1020170182002 A KR1020170182002 A KR 1020170182002A KR 20170182002 A KR20170182002 A KR 20170182002A KR 102044856 B1 KR102044856 B1 KR 102044856B1
- Authority
- KR
- South Korea
- Prior art keywords
- automata
- user
- unit
- dimensional
- editing
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 27
- 230000033001 locomotion Effects 0.000 claims abstract description 72
- 230000007246 mechanism Effects 0.000 claims abstract description 29
- 230000002452 interceptive effect Effects 0.000 claims description 21
- 238000004458 analytical method Methods 0.000 claims description 8
- 230000000704 physical effect Effects 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 4
- 238000009877 rendering Methods 0.000 claims description 4
- 238000004088 simulation Methods 0.000 abstract description 22
- 230000003993 interaction Effects 0.000 abstract description 2
- 230000009471 action Effects 0.000 description 11
- 238000010586 diagram Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 5
- 230000008569 process Effects 0.000 description 5
- 238000007781 pre-processing Methods 0.000 description 4
- 239000000047 product Substances 0.000 description 3
- 230000008859 change Effects 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 239000012636 effector Substances 0.000 description 2
- 239000012467 final product Substances 0.000 description 2
- 230000010354 integration Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000000007 visual effect Effects 0.000 description 2
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000008278 dynamic mechanism Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 239000000126 substance Substances 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06T—IMAGE DATA PROCESSING OR GENERATION, IN GENERAL
- G06T19/00—Manipulating 3D models or images for computer graphics
- G06T19/006—Mixed reality
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N13/00—Stereoscopic video systems; Multi-view video systems; Details thereof
- H04N13/30—Image reproducers
- H04N13/332—Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
- H04N13/344—Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Tourism & Hospitality (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Economics (AREA)
- Computer Hardware Design (AREA)
- Computer Graphics (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Processing Or Creating Images (AREA)
Abstract
본 발명은 사용자와 가상현실 간의 상호 작용을 통해 3차원 오토마타 부품을 조립하고, 조립된 오토마타 기계장치의 동작 시뮬레이션을 제공함으로써, 사용자가 직접 손을 사용하며 오토마타를 직관적으로 조립하여 다양한 메커니즘을 만들 수 있게 하고, 동작 시뮬레이션을 수행하며 기계장치의 실감나는 애니메이션 결과를 만들 수 있게 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법을 제안한다.
Description
본 발명은 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법에 관한 것으로, 더욱 상세하게는 사용자와 가상현실 간의 상호 작용을 통해 3차원 오토마타 부품을 조립하고, 조립된 오토마타 기계장치의 동작 시뮬레이션을 제공함으로써, 사용자가 직접 손을 사용하며 오토마타를 직관적으로 조립하여 다양한 메커니즘을 만들 수 있게 하고, 동작 시뮬레이션을 수행하며 기계장치의 실감나는 애니메이션 결과를 만들 수 있게 하는 장치 및 방법에 관한 것이다.
통상적으로, 3차원 모델이라 함은 3차원으로 구현되는 실제 또는 가상의 구조물의 형상을 모형으로 구현하는 것을 말하는 것으로, 실제 구조물의 축소 모형이 될 수도 있으며, 컴퓨터상 3차원 그래픽이 될 수도 있다.
이와 같은 3차원 모델에는 화학분야에서 사용되는 다양한 분자 구조, 수학적으로 사용되는 다양한 도형, 기계 및 전자부품 또는 로봇 등이 될 수 있다.
이중 로봇 등의 전자부품 및 기계장치와 같은 경우에는 정교한 제어가 필요한 것이기 때문에 개발에 있어서 복잡한 동작생성을 위해 모델링과 시뮬레이션을 사용한다.
이러한 모델링과 시뮬레이션(M&S)기반의 개발은 기계장치의 형태를 조합하고 행위를 생성하는 전치-모델링 단계와 가상의 환경에서 조립된 기계장치에 모션데이터를 삽입하여 수행하는 전치-시뮬레이션 단계로 구분된다. 이 두 단계를 통해서 가상의 환경에서 기계장치의 동작 상태를 점검한다. 이후에 기계장치의 소프트웨어를 설계, 구현, 테스트 과정을 거친다.
한편, 이와 같은 기계장치들은 플라스틱 부품이 조잡하거나 물품이 간단한 경우 상대적으로 가격이 낮은 제품들도 많이 있으나, 대형이거나 구조가 복잡하여 많은 플라스틱 부품이 필요한 물품 또는 플라스틱 부품의 정교성에 따라 가격이 고가인 제품들도 상당하다.
본 발명이 해결하고자 하는 기술적 과제는, 초심자도 가상현실에서 오토마타를 쉽고 직관적으로 설계하고 조립하여 시뮬레이션할 수 있는 인터랙티브 시스템을 제공하고자 하는 데에 그 목적이 있다.
본 발명의 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치는 가상현실에서 3차원 오토마타를 조립하기 위한 사용자 입력동작을 검출하는 사용자 입력부와, 상기 사용자 입력동작을 분석하여 오토마타 부품요소의 조립 동작을 수행시키는 제어부와, 상기 제어부에 의해 구동되어, 3차원 오토마타 기계장치를 구성하는 각 부품요소들을 표시하는 화면을 제공하고, 상기 각 부품요소에 대해 발생된 사용자 입력동작에 따라 상기 부품요소를 단계적으로 조립하는 인터랙티브 기계 조립부 및 각 부품요소에 설정된 물리 속성에 따라 상기 3차원 오토마타 기계장치를 구동시키는 시뮬레이터부를 포함한다.
본 발명의 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법은 가상현실에서 조립하고자 하는 3차원 오토마타 기계장치를 선택하는 단계와, 상기 3차원 오토마타 기계장치를 구성하는 각 부품요소들을 표시하는 화면을 제공하는 단계와, 상기 각 부품요소에 대해 발생된 사용자 입력동작에 따라 상기 부품요소를 단계적으로 조립하여 3차원 오토마타 기계장치를 완성시키는 단계 및 상기 조립된 각 부품요소에 설정된 물리 속성에 따라 상기 3차원 오토마타 기계장치의 구동을 시뮬레이션하는 단계를 포함한다.
본 발명의 실시 예에 의한 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법에 따르면, 초심자에게도 가상현실에서 현실과 같은 설계 인터페이스를 제공함으로써, 오토마타를 쉽고 직관적으로 설계하고 조립하여 시뮬레이션할 수 있게 한다.
본 발명의 실시 예에 의하면, 현실에서 오토마타를 구현하기 이전에 가상환경에서 프로토타입의 설계 및 시뮬레이션 작업을 수행할 수 있어, 실제 제품에서 오류를 줄일 수 있는 확률을 높이고, 생산성을 높일 수 있다.
도 1은 본 발명의 일 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치의 개략적인 구성을 도시하는 블록도이다.
도 2는 본 발명의 실시 예에 따른 인터랙티브 기계 조립부의 구성을 도시하는 블록도이다.
도 3은 본 발명의 일실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 모습을 도시하는 예시도이다.
도 4는 본 발명의 실시 예에 따른 가상현실 기반의 부품요소의 일예를 도시한다.
도 5는 본 발명의 실시 예에 따른 부품요소들 간의 역학 메커니즘의 일 예를 도시하는 도면이다.
도 6은 본 발명의 실시 예에 따른 HMD를 통해 제공되는 가상환경의 오토마타 작업환경의 일 예를 도시한다.
도 7 및 도 8은 본 발명의 실시 예에 따라 조립된 3차원 오토마타 기계장치의 동작 메커니즘 기반의 시뮬레이션의 일 예를 도시한다.
도 9 및 도 10은 본 발명의 실시 예에 따른 3차원 오토마타 기계장치를 포함하는 애니메이션 실행화면의 일 예를 도시한다.
도 11은 본 발명의 실시 예에 따른 편집 레이어를 이용하여 3차원 오토마타를 조립하는 일 예를 설명하기 위한 예시도이다.
도 12는 본 발명의 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법을 설명하기 위한 흐름도이다.
도 13은 본 발명의 실시 예에 따른 편집 레이어 기반으로 3차원 오토마타를 조립하는 방법을 설명하기 위한 흐름도이다.
도 2는 본 발명의 실시 예에 따른 인터랙티브 기계 조립부의 구성을 도시하는 블록도이다.
도 3은 본 발명의 일실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 모습을 도시하는 예시도이다.
도 4는 본 발명의 실시 예에 따른 가상현실 기반의 부품요소의 일예를 도시한다.
도 5는 본 발명의 실시 예에 따른 부품요소들 간의 역학 메커니즘의 일 예를 도시하는 도면이다.
도 6은 본 발명의 실시 예에 따른 HMD를 통해 제공되는 가상환경의 오토마타 작업환경의 일 예를 도시한다.
도 7 및 도 8은 본 발명의 실시 예에 따라 조립된 3차원 오토마타 기계장치의 동작 메커니즘 기반의 시뮬레이션의 일 예를 도시한다.
도 9 및 도 10은 본 발명의 실시 예에 따른 3차원 오토마타 기계장치를 포함하는 애니메이션 실행화면의 일 예를 도시한다.
도 11은 본 발명의 실시 예에 따른 편집 레이어를 이용하여 3차원 오토마타를 조립하는 일 예를 설명하기 위한 예시도이다.
도 12는 본 발명의 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법을 설명하기 위한 흐름도이다.
도 13은 본 발명의 실시 예에 따른 편집 레이어 기반으로 3차원 오토마타를 조립하는 방법을 설명하기 위한 흐름도이다.
이하, 본 발명의 바람직한 실시 예를 첨부된 도면들을 참조하여 상세히 설명한다. 우선 각 도면의 구성요소들에 참조 부호를 부가함에 있어서, 동일한 구성요소들에 대해서는 비록 다른 도면상에 표시되더라도 가능한한 동일한 부호를 가지도록 하고 있음에 유의해야 한다. 또한, 본 발명을 설명함에 있어, 관련된 공지 구성 또는 기능에 대한 구체적인 설명이 본 발명의 요지를 흐릴 수 있다고 판단되는 경우에는 그 상세한 설명은 생략한다. 또한, 이하에서 본 발명의 바람직한 실시 예를 설명할 것이나, 본 발명의 기술적 사상은 이에 한정하거나 제한되지 않고 당업자에 의해 변형되어 다양하게 실시될 수 있음은 물론이다.
이하 본 발명에 대하여 자세하게 설명한다.
도 1은 본 발명의 일 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치의 개략적인 구성을 도시하는 블록도이고, 도 3은 본 발명의 일실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 모습을 도시하는 예시도이다.
도 1을 참조하면, 본 발명의 일실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치(10)는 입력부(100), 제어부(200), 인터랙티브 기계 조립부(300), 시뮬레이터부(400) 및 사용자 동작 데이터베이스(500)를 포함하여 구성된다.
입력부(100)는 가상현실에서 3차원의 오토마타를 조립하기 위한 사용자 입력을 검출한다. 사용자 입력을 검출하기 위해 입력부(100)는 카메라(110)와 키넥트 센서(120) 및 리시버(130)로 구성될 수 있다. 카메라(110)는 HMD 디스플레이부(410) 전방의 영상을 획득하고, 키넥트 센서(120)는 전방의 사용자 입력 동작을 검출하며, 리시버(130)는 사용자 음성 명령을 인식한다.
카메라(110), 키넥트 센서(120) 및 리시버(130)는 증강현실 구현을 위한 HMD(Head Mounted Display) 디스플레이부(410)에 탑재될 수 있다.
HMD 디스플레이부(410)는 사용자 동작을 포함하는 영상과 상기 사용자 동작을 기반으로 생성된 가상영상 즉, 오토마타 조립 영상 및 조립된 오토마타의 동작을 시뮬레이션하는 영상 및 조립된 오토마타를 기반으로 생성된 애니메이션을 출력함으로써, 가상현실 기반으로 오토마타를 조립하고 조립된 오토마타의 동작을 시뮬레이션하는 영상 및 애니메이션을 사용자에게 제공할 수 있다.
카메라(110)가 전방의 영상을 획득하여 제어부(200)로 전달하면, 제어부(200)는 사용자 동작 데이터베이스(500)를 이용하여 전방의 영상에 사용자 입력 동작이 발생하는지 여부를 판단한다. 전방의 영상에 사용자 입력 동작이 발생하는 것으로 판단된 경우, 제어부(200)는 키넥트 센서(120)를 통해 HMD 디스플레이부(410)의 전방에 대해 사용자 입력 동작을 연속적으로 획득하고, 리시버(130)를 통해 사용자 음성 명령을 획득하기 시작한다.
제어부(200)는 인터랙티브 기계 조립부(300)를 통해 전방의 사용자 입력 동작을 기초로 가상영상을 생성하고, 사용자 입력동작과 가상영상을 정합하여 HMD 디스플레이부(410)에 출력되게 한다.
도 2는 본 발명의 실시 예에 따른 인터랙티브 기계 조립부의 구성을 도시하는 블록도이다. 도 2를 참조하면, 인터랙티브 기계 조립부(300)는 오토마타 메뉴 선택부(310), 오토마타 부품 제공부(320), 오토마타 조립부(330) 및 오토마타 데이터베이스(340)를 포함하여 구성된다.
오토마타 메뉴 선택부(310)는 사용자가 조립하고자 하는 3차원 오토마타 최종 완성품의 종류 및 크기 등을 포함하는 3차원 오토마타 기계장치에 관한 메뉴를 사용자가 선택할 수 있도록 제공한다.
HMD 디스플레이부(410)에서 제공 가능한 다양한 3차원 오토마타 기계장치는 예를 들어, 자동차, 로봇, 비행기, 선박 등의 물품의 형태로 표시되도록 구현될 수 있으며, 이에 따라 사용자는 원하는 3차원 오토마타 기계장치를 음성 입력, 키입력 또는 사용자 동작 입력의 형태로 선택하여 자신이 조립하고자 하는 해당 3차원 오토마타 기계장치를 설정할 수 있다.
오토마타 부품 제공부(320)는 오토마타 메뉴 선택부(310)에서 사용자에 의해 선택된 3차원 오토마타 기계장치를 구성하는 오토마타 부품 요소들을 제공한다. 예를 들어, HMD 디스플레이부(410)를 통해 화면에 가상의 작업장을 제공하고, 가상의 작업장에 구비된 책상 위에 최종 3차원 오토마타 기계장치를 조립하기 위해 필요한 오토마타 부품 요소들을 나열하여 제공하며, 상기 오토마타 부품 요소들을 조립하기 위해 필요한 다양한 도구와 부속품들을 함께 제공한다.
예를 들어, 오토마타 부품 제공부(320)는 오토마타 부품 요소들에 대해 힘을 한 부품 요소에서 다른 부품 요소로 전달할 때 쓰이는 회전 부품요소인 쉐프트(Shaft), 원판 모양의 부품요소로 원운동을 왕복운동 혹은 왕복운동을 원운동으로 변환하는데 사용되는 크랭크(Crank), 원운동을 선형운동으로 변환하는데 사용되고, 주로 팔로워(follower) 운동을 제공하는데 사용하고, 모양에 따라 서로 다른 운동을 만들어내며, 회전하는 부품요소인 캠(Cam), 상기 캠의 회전운동으로부터 선형왕복운동을 만드는 부품요소인 핀 팔로워(Pin-follower), 다른 부품요소와 연결될 수 있고, 연결된 부품요소의 운동을 변환하거나 다른 부품요소로 전달하는데 사용되는 커넥팅 로드(Connecting rod), 상기 커넥팅 로드의 운동의 자유도를 제한하여 특정 방향으로 선형운동하도록 유도하기 위해 사용하는 부품요소인 슬롯바(Slotted bar) 등을 제공할 수 있다.
각 유형의 부품요소는 사용자 입력 동작에 의해 3차원 가상공간에 사용자가 원하는 대로 나열할 수 있고, 각 부품요소 간에 힘을 전달하기 위해 사용자가 선택한 임의의 다수의 부품요소들은 서로 연결될 수 있다.
오토마타 조립부(330)는 사용자 입력동작 분석부(210)에 의해 결정된 사용자 동작에 따라 가상현실 기반의 3차원 오토마타 부품에 대한 동작을 실행한다.
이를 위해, 사용자 입력동작 분석부(210)는 카메라(110) 및 키넥트 센서(120)를 통해 스트리밍 방식으로 수신되는 사용자 입력동작을 사용자 동작 데이터베이스(500)에 미리 등록되어 저장된 복수의 사용자 동작과 비교하여 유사도를 판단하고, 상기 유사도가 임계치 이상에 해당하는 사용자 동작을 사용자 입력동작으로 결정한다.
사용자 입력동작 분석부(210)는 카메라(110) 및 키넥트 센서(120)를 통해 획득된 실제 영상 내의 물리적 객체 특히, 사용자의 손을 식별하도록 구성될 수 있다. 이를 위해 사용자 입력동작 분석부(210)는 사용자 손의 특정한 모양, 색상, 패턴 등의 특성에 기초하여 영상 내에서 사용자 손을 식별하도록 미리 구성될 수 있다.
예를 들어 도 3에 도시된 바와 같이 먼저, HMD 디스플레이부(410)가 설계를 위한 다양한 도구와 부품 요소를 가상의 작업 책상 위에 배치하여 작업장을 모사한 가상환경을 사용자에게 제공한다.
사용자가 키넥트 센서(120)를 통해 검출되는 3D 입력장치를 손으로 잡고 가상환경에 접속하면, 3D 입력장치를 손에 부착한 실제 자신의 손을 움직일 때마다 가상의 손도 함께 움직이게 된다. 3D 입력장치는 모션 컨트롤러로 구비될 수 있다.
또는, 3D 입력장치를 손에 부착할 필요없이, 제어부(200)가 카메라(110)에 의해 획득한 영상에서 사용자의 손을 인식하고, 손을 관절마디 단위로 인식하고, 관절 움직임을 포함하는 손의 동작을 인식함으로써, 사용자의 손을 따라 가상의 손을 출력할 수 있다.
사용자는 가상환경에서 사용자 동작 데이터베이스(500)에 등록, 저장되어 있는 사용자 동작들을 미리 인지하고 있는 상태에서 사용자 동작을 수행한다. 그러면, 사용자 입력 동작 분석부(210)에 의해 결정된 사용자 동작에 따라 오토마타 조립부(330)가 가상현실 기반의 3차원 오토마타 부품에 대한 조립을 실행하여, 3차원 오토마타 기계장치를 생성한다.
구체적으로, 오토마타 조립부(330)는 레이어 편집 모듈(331) 및 렌더링 갱신 모듈(332)을 포함하여 구성된다.
레이어 편집 모듈(331)은 사용자가 3차원 가상환경에서 정교한 조립작업을 수행할 수 있도록 다수의 편집 레이어 인터페이스를 제공한다.
사용자는 오토마타 부품을 조립하기 전, 편집하고자 하는 적어도 하나의 편집 레이어를 선택해야 한다. 편집 레이어는 평면상에 동일한 간격으로 이격된 다수의 평면 레이어일 수 있다.
편집 레이어를 선택한 후, 손을 움직여 사용자 입력동작 데이터베이스(500)에 등록되어 있는 동작을 사용자가 수행함으로써, 가상의 손과 편집 레이어의 현재 상태를 기반으로 부품 요소를 움직이거나, 추가 및 삭제하는 등의 조립을 실행할 수 있다.
예를 들어, 도 3에 도시된 바와 같이, 사용자의 시야에는 HMD 디스플레이부(410)를 통해 가상의 작업장 화면이 제공되고 있는 상태에서 사용자가 HMD 디스플레이부(410) 전면에서 미리 인지하고 있는 사용자 동작을 실행한다. 이때, 가상의 작업장 화면에는 HMD 디스플레이부(410) 전면에 있는 사용자의 손이 표시된다.
사용자는 먼저, 오토마타 부품을 배치하고자 하는 편집 레이어(1)를 선택하고, 선택된 편집 레이어(1) 상에 오토마타 부품들을 실장하기 위해 도구들을 이용하여 오토마타 부품들을 배치할 수 있고, 실장된 오토마타 부품들을 편집 또는 삭제할 수 있으며, 편집 레이어를 변경할 수 있다.
특히, 레이어 편집 모듈(331)은 사용자에 의해 선택된 부품요소들 간의 서로 다른 물리적 객체의 깊이를 설정하도록 평면상에 동일한 간격으로 이격되어 구비된 다수의 편집 레이어들로 구성될 수 있다.
각 편집 레이어들은 2차원 프레임으로 구성되더라도, 이러한 2차원 편집 레이어들이 모여 3차원 공간(즉, 가상환경)을 나타낸다. 레이어 편집 모듈(331)은 3차원 공간 내의 물리적 객체의 깊이를 부여하기 위해 사용자에게 깊이별 편집 레이어를 제공한다.
사용자는 배치하고자 하는 부품요소에 부여하고자 하는 깊이에 따라 깊이별 편집 레이어를 선택적으로 이용할 수 있다.
레이어 편집 모듈(331)은 동일한 부품요소더라도 서로 다른 상기 편집 레이어에 실장될 경우, 상기 부품요소들을 나타내는 각 픽셀 수를 조절하여 깊이감을 표현할 수 있다.
즉, 동일한 부품요소라도 편집 레이어의 배치에 따라 더 멀리 있는 부품요소에 대해서는 상대적으로 더 적은 픽셀을 사용하여 표현함에 따라, 사용자의 시각에서 더 멀리 떨어져있는 것처럼 깊이감을 표현할 수 있다.
또는, 제어부(200)는 오토마타 메뉴 선택부(310)에서 선택된 3차원 오토마타 기계장치의 종류 및 크기에 따라 제어부(200)가 3차원 오토마타 기계장치의 종류 및 크기에 대한 기하학적 정보에 기초하여 미리 정의된 특정 물리적 객체에 대한 부품요소 간의 연결 관계에 따라 표현해야하는 깊이감을 사용자에게 안내해줄 수 있다.
즉, 제어부(200)는 레이어 편집 모듈(331)에 대해 조립을 완성하고자 하는 3차원 오토마타 기계장치에 미리 설정된 부품요소들 간의 기하학적 정보에 따라 부품요소별로 실장해야 하는 편집 레이어의 깊이에 대한 정보를 제공해줄 수 있다. 상기 기하학적 정보란 미리 설정된 부품요소들 간의 최적화된 거리 및 각도 정보를 포함한다.
예로서, 도 12에 도시된 바와 같이, 특정 자동차에 대한 기하학적 정보가 한 쌍의 앞바퀴 간의 최적거리가 직경 x 미터이고, 상기 앞바퀴 간의 조립 시 최적 각도가 y도로 미리 설정되어 있는 경우, 하나의 앞바퀴는 제1 편집 레이어에 실장하고, 다른 하나의 앞바퀴는 제5 편집 레이어에 실장하도록 할 수 있다.
이때, 레이어 편집 모듈(331)은 제1 편집 레이어에 실장된 앞바퀴는 30 픽셀을 사용하여 바퀴를 표시하고, 제5 편집 레이어에 실장된 다른 앞바퀴는 10 픽셀을 사용하여 시각장면을 표시함으로써, 사용자가 HMD 디스플레이부(410)를 통해 보았을 때, 두 개의 물리적 앞바퀴가 동일한 크기이지만 서로 다른 편집 레이어에 다른 픽셀수로 표현함에 따라, 하나의 바퀴가 다른 하나의 바퀴보다 사용자로부터 더 멀리 떨어져있어 보이는 것으로 3차원적인 깊이감을 줄 수 있다.
즉, 각 편집 레이어는 사용자의 시각으로부터 부품요소가 떨어진 거리 즉, 깊이감을 표현하기 위해 실장되는 부품요소들을 나타내는 픽셀 수를 조절할 수 있다.
도 4는 본 발명의 실시 예에 따른 가상현실 기반의 부품요소의 일예를 도시하고, 도 5는 본 발명의 실시 예에 따른 부품요소들 간의 역학 메커니즘의 일 예를 도시하는 도면이며, 도 6은 본 발명의 실시 예에 따른 HMD를 통해 제공되는 가상환경의 오토마타 작업환경의 일 예를 도시하며, 도 7 및 도 8은 본 발명의 실시 예에 따라 조립된 3차원 오토마타 기계장치의 동작 메커니즘 기반의 시뮬레이션의 일 예를 도시하고, 도 9 및 도 10은 본 발명의 실시 예에 따른 3차원 오토마타 기계장치를 포함하는 애니메이션 실행화면의 일 예를 도시한다.
도 4를 참조하여 인터랙티브 오토마타 조립 과정을 설명하자면, 사용자는 쉐프트(Shaft) 부품 요소를 집고 편집 레이어 위에 실장한다. 그리고, 크랭크 Crank 요소를 집은 뒤 쉐프트 부품 상위에 배치하면 크랭크와 쉐프트 부품이 서로 연결된다. 그 뒤, 사용자가 망치를 집고 입력버튼을 누른 채 편집 레이어 위에서 움직이면 편집 레이어 위에 커넥팅 로드(connecting rod)가 만들어진다. 크랭크 부품에서 시작된 두 막대는 자동으로 크랭크 부품과 연결되어, 크랭크의 회전은 이 막대들의 움직임에 영향을 주도록 설정된다. 사용자는 어느 부품이던 가위 도구를 집고 지우고자 하는 부품에 가위를 가져간 다음 입력 장치의 버튼을 누르면 해당 부품을 삭제할 수 있다. 또한, 사용자는 어느 부품이든 재배치할 수 있고, 두 인접한 부품간의 연결을 만들거나 끊을 수 있으며, 존재하는 연결의 제약 형식을 고정 혹은 경첩 제약으로 설정할 수 있다.
편집 레이어에 있는 부품들을 재배치하는 동작을 설명하자면, 실제와 같이 사용자가 부품들을 집고 움직이게 하기 위해서, 사용자 입력동작 분석부(210)는 사용자의 손을 집기와 펼치기 상태 중 하나로 구분한다. 만약, 손이 편집 레이어에서 부품 중 하나와 인접한 상태에서 집기 동작을 하면, 가장 가까운 부품의 상태는 움직일 수 있는 상태가 된다. 손의 상태가 펼치기 상태로 바뀌기 전까지 잡힌 부품의 위치를 손을 원하는 편집 레이어에 투영한 위치로 설정함으로써 부품을 움직인다. 손의 상태가 펼치기가 되면, 잡혀있는 부품은 고정 상태로 돌아간다. 이러한 방식으로 사용자는 지속적으로 손의 위치를 편집 레이어와의 간격에 항상 인접해야할 필요없이 편집 레이어 내에서 부품들을 용이하게 재배치할 수 있다.
레이어 편집 모듈(331)을 통해 평면의 레이어별로 실행된 오토마타 조립 형상을 렌더링 갱신 모듈(332)을 통해 3차원 가상현실 영상으로 생성할 수 있다. 렌더링 갱신 모듈(332)이 3차원 가상현실 영상을 생성하는 방법은 일반적인 기술에 해당하므로 상세한 설명은 생략하기로 한다.
제어부(200)는 메모리에 저장된 동작 프로그램에 따라 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치(10)의 전반적인 동작을 제어한다. 위와 같은 동작 프로그램은 장치(10)의 동작에 필요한 기본적인 운영 시스템(operating system)뿐만 아니라, 데이터의 입출력을 관리하거나 장치(10)의 내부 애플리케이션(application) 등을 동작시키도록 제조시 미리 프로그래밍(programming)되는 소프트웨어(software)를 통칭한다.
가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치(10)는 다양한 3차원 오토마타 기계장치를 가상으로 조립하고, 동작을 시뮬레이션하며, 조립된 3차원 오토마타 기계장치를 기반으로 애니메이션을 생성할 수 있도록 하는 애플리케이션으로서, HMD 디스플레이 장치의 제작시 HMD 디스플레이 장치 상에 미리 프로그램되어 설치될 수도 있으며, HMD 디스플레이의 제작 후에 데이터 커넥터 등을 통해 HMD 디스플레이로 다운로드하여 설치될 수도 있다.
사용자 입력 동작 분석부(210)에 의해 결정된 사용자 동작에 따라 오토마타 조립부(330)가 가상현실 기반의 3차원 오토마타 부품에 대한 조립에 해당하는 영상은 오토마타 조립 실행 데이터베이스(343)에 미리 저장된 실행화면들로부터 추출되어 시뮬레이터부(400)를 통해 실시간 출력될 수 있다.
오토마타 조립 실행 데이터베이스(343)는 미리 등록된 사용자 동작, 사용자 동작에 매칭된 오토마타 부품에 대한 조립 구동의 종류 및 이에 해당하는 조립 영상 정보가 매칭된 룩업 테이블을 저장하고 있다.
시뮬레이터부(400)는 HMD 디스플레이부(410), 애니메이션부(420) 및 스피커부(430)를 포함하여 구성된다.
시뮬레이터부(400)는 가상환경의 3차원 영상 내에서 생성된 3차원 오토마타 기계장치에 대해 여러 동작을 실행시키고, 동작 실행 중인 가상의 3차원 오토마타 기계장치에 대한 상태정보 및 동작 실행정보를 취득한다.
시뮬레이터부(400)는 사용자가 물리 기반 시뮬레이션 엔진을 통해 3차원 오토마타 기계장치의 메커니즘을 작동시킬 수 있도록 한다. 시뮬레이션을 실행하기 위해서 먼저 메커니즘 그래프를 바탕으로 전처리 과정을 수행해야 한다. 전처리 과정은 메커니즘 그래프의 각 노드마다 강체 개체를 설정하고, 상기 강체 개체가 노드에 입력된 질량, 관성과 같은 물리 역학 속성에 따라 시뮬레이션 될 수 있도록 한다.
그리고, 각 변마다 연관된 강체 개체 쌍에 대한 시뮬레이션 제한 조건을 추가하여, 연결된 두 강체 개체가 서로 물리적으로 연결된 것과 같이 한 강체의 움직임이 다른 강체의 움직임에 영향을 미칠 수 있게 함으로써, 물리적 연결성을 부여한다.
예를 들어, 고정 제약이 있는 커넥팅 로드에 부착된 크랭크는 부모 막대가 움직이는 방향에 따라 움직이게 된다. 만약 크랭크가 편집 레이어에 고정되고 커넥팅 로드가 경첩 제약으로 크랭크에 부착된다면, 막대가 움직임으로써 크랭크가 자기 자신을 중심으로 회전하게 될 것이다. 물리 기반 시뮬레이션은 이러한 초기화 이후에 실행 가능하고, 실행 후에 강체들의 위치와 방향은 뉴턴 역학 법칙에 따라 업데이트된다. 그리고 동작하는 3차원 오토마타 기계장치에 사용자가 엔드 이펙터(end effect)를 부착함으로써 동작 경로의 흔적을 공간에 남기어, 사용자가 3차원 오토마타 기계장치의 동작 경로를 시각적으로 확인할 수 있게 한다.
물리 기반 시뮬레이션은 3차원 오토마타 기계장치에 대해 이산적인 시간간격에서 사용자에 의해 설정된 위치 및 속도를 포함하는 역학 상태의 수치 적분을 실행한다.
HMD 디스플레이부(410)는 인터랙티브 기계 조립부(300)에 의해 생성된 가상영상을 사용자가 주시하는 실제 영상의 일부와 정합되도록 하는 장치를 의미한다. 즉, HMD 디스플레이부(140)는 3차원 오토마타 부품요소를 조립하기 위한 사용자 입력동작을 실제 영상에서 추출하고, 상기 추출된 영상을 상기 3차원 오토마타 부품요소의 조립 영상과 정합하여 출력한다.
HMD 디스플레이부(410)는 사용자의 시야를 차단하지 않도록 하여 사용자가 주시하는 전방의 자신의 손이 관찰될 수 있도록 하고, 관찰된 손 동작을 기반으로 가상영상을 출력함으로써, 사용자가 손을 사용하며 오토마타를 직관적으로 조립하여 다양한 메커니즘을 만들 수 있게 하고, 동작 시뮬레이션을 수행하며 기계장치의 실감나는 애니메이션 결과를 볼 수 있게 한다.
애니메이션부(420)는 조립이 완성된 3차원 오토마타 기계장치를 포함하는 애니메이션을 생성하기 위한 절차를 실행한다.
스피커부(430)는 3차원 오토마타 기계장치가 동작할 때, 각 부품요소에 미리 설정된 음향을 출력한다.
도 12는 본 발명의 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법을 설명하기 위한 흐름도이다.
도 12를 참조하여 본 발명의 실시 예에 따른 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법을 설명하기로 한다.
먼저, 가상현실에서 조립하고자 하는 3차원 오토마타 기계장치를 선택한다(S110). 즉, 사용자가 조립하고자 하는 3차원 오토마타 최종 완성품의 종류 및 크기 등을 포함하는 3차원 오토마타 기계장치에 관한 메뉴를 사용자가 선택할 수 있도록 제공한다.
HMD 디스플레이에서 제공 가능한 다양한 3차원 오토마타 기계장치는 예를 들어, 자동차, 로봇, 비행기, 선박 등의 물품의 형태로 표시되도록 구현될 수 있으며, 이에 따라 사용자는 원하는 3차원 오토마타 기계장치를 음성 입력, 키 입력 또는 사용자 동작 입력의 형태로 선택하여 자신이 조립하고자 하는 해당 3차원 오토마타 기계장치를 설정할 수 있다.
다음으로, 선택된 3차원 오토마타 기계장치를 구성하는 각 부품요소들을 표시하는 화면을 제공한다(S120). 예를 들어, HMD 디스플레이부(410)를 통해 화면에 가상의 작업장을 제공하고, 가상의 작업장에 구비된 책상 위에 최종 3차원 오토마타 기계장치를 조립하기 위해 필요한 오토마타 부품 요소들을 나열하여 제공하며, 상기 오토마타 부품 요소들을 조립하기 위해 필요한 다양한 도구와 부속품들을 함께 제공한다.
예를 들어, 오토마타 부품 제공부(320)는 오토마타 부품 요소들에 대해 힘을 한 부품 요소에서 다른 부품 요소로 전달할 때 쓰이는 회전 부품요소인 쉐프트(Shaft), 원판 모양의 부품요소로 원운동을 왕복운동 혹은 왕복운동을 원운동으로 변환하는데 사용되는 크랭크(Crank), 원운동을 선형운동으로 변환하는데 사용되고, 주로 팔로워(follower) 운동을 제공하는데 사용하고, 모양에 따라 서로 다른 운동을 만들어내며, 회전하는 부품요소인 캠(Cam), 상기 캠의 회전운동으로부터 선형왕복운동을 만드는 부품요소인 핀 팔로워(Pin-follower), 다른 부품요소와 연결될 수 있고, 연결된 부품요소의 운동을 변환하거나 다른 부품요소로 전달하는데 사용되는 커넥팅 로드(Connecting rod), 상기 커넥팅 로드의 운동의 자유도를 제한하여 특정 방향으로 선형운동하도록 유도하기 위해 사용하는 부품요소인 슬롯바(Slotted bar) 등을 제공할 수 있다.
각 유형의 부품요소는 사용자 입력 동작에 의해 3차원 가상공간에 사용자가 원하는 대로 나열할 수 있고, 각 부품요소 간에 힘을 전달하기 위해 사용자가 선택한 임의의 다수의 부품요소들은 서로 연결될 수 있다.
다음으로, 각 부품요소에 대해 발생된 사용자 입력동작에 따라 부품요소를 단계적으로 조립하여 3차원 오토마타 기계장치를 완성시킨다(S130).
이를 위해, 카메라 및 키넥트 센서를 통해 스트리밍 방식으로 수신되는 사용자 입력동작을 사용자 동작 데이터베이스에 미리 등록되어 저장된 복수의 사용자 동작과 비교하여 유사도를 판단하고, 상기 유사도가 임계치 이상에 해당하는 사용자 동작을 사용자 입력동작으로 결정한다.
카메라 및 키넥트 센서를 통해 획득된 실제 영상 내의 물리적 객체 특히, 사용자의 손을 식별하도록 구성될 수 있다. 이를 위해 사용자 손의 특정한 모양, 색상, 패턴 등의 특성에 기초하여 영상 내에서 사용자 손을 식별하도록 미리 구성될 수 있다.
예를 들어 도 3에 도시된 바와 같이 먼저, HMD 디스플레이가 설계를 위한 다양한 도구와 부품 요소를 가상의 작업 책상 위에 배치하여 작업장을 모사한 가상환경을 사용자에게 제공한다.
사용자가 키넥트 센서를 통해 검출되는 3D 입력장치를 손으로 잡고 가상환경에 접속하면, 3D 입력장치를 손에 부착한 실제 자신의 손을 움직일 때마다 가상의 손도 함께 움직이게 된다. 3D 입력장치는 모션 컨트롤러로 구비될 수 있다.
또는, 3D 입력장치를 손에 부착할 필요없이, 카메라에 의해 획득한 영상에서 사용자의 손을 인식하고, 손을 관절마디 단위로 인식하고, 관절 움직임을 포함하는 손의 동작을 인식함으로써, 사용자의 손을 따라 가상의 손을 출력할 수 있다.
사용자는 가상환경에서 사용자 동작 데이터베이스에 등록, 저장되어 있는 사용자 동작들을 미리 인지하고 있는 상태에서 사용자 동작을 수행한다. 그리고, 사용자 동작에 따라 가상현실 기반의 3차원 오토마타 부품에 대한 조립을 실행하여, 3차원 오토마타 기계장치를 생성한다.
특히, 본 발명은 사용자가 3차원 가상환경에서 정교한 조립작업을 수행할 수 있도록 다수의 편집 레이어 인터페이스를 제공한다.
사용자는 오토마타 부품을 조립하기 전, 편집하고자 하는 적어도 하나의 편집 레이어를 선택해야 한다. 편집 레이어는 평면상에 동일한 간격으로 이격된 다수의 평면 레이어일 수 있다.
편집 레이어를 선택한 후, 손을 움직여 사용자 입력동작 데이터베이스에 등록되어 있는 동작을 사용자가 수행함으로써, 가상의 손과 편집 레이어의 현재 상태를 기반으로 부품 요소를 움직이거나, 추가 및 삭제하는 등의 조립을 실행할 수 있다.
예를 들어, 도 3에 도시된 바와 같이, 사용자의 시야에는 HMD 디스플레이를 통해 가상의 작업장 화면이 제공되고 있는 상태에서 사용자가 HMD 디스플레이 전면에서 미리 인지하고 있는 사용자 동작을 실행한다. 이때, 가상의 작업장 화면에는 HMD 디스플레이 전면에 있는 사용자의 손이 표시된다.
사용자는 먼저, 오토마타 부품을 배치하고자 하는 편집 레이어(1)를 선택하고, 선택된 편집 레이어(1) 상에 오토마타 부품들을 실장하기 위해 도구들을 이용하여 오토마타 부품들을 배치할 수 있고, 실장된 오토마타 부품들을 편집 또는 삭제할 수 있으며, 편집 레이어를 변경할 수 있다.
특히, 사용자에 의해 선택된 부품요소들 간의 서로 다른 물리적 객체의 깊이를 설정하도록 평면상에 동일한 간격으로 이격되어 구비된 다수의 편집 레이어들을 구성할 수 있다.
각 편집 레이어들은 2차원 프레임으로 구성되더라도, 이러한 2차원 편집 레이어들이 모여 3차원 공간(즉, 가상환경)을 나타내고, 3차원 공간 내의 물리적 객체의 깊이를 부여하기 위해 사용자에게 깊이별 편집 레이어를 제공한다.
사용자는 배치하고자 하는 부품요소에 부여하고자 하는 깊이에 따라 깊이별 편집 레이어를 선택적으로 이용할 수 있다.
따라서, 동일한 부품요소더라도 서로 다른 상기 편집 레이어에 실장될 경우, 상기 부품요소들을 나타내는 각 픽셀 수를 조절하여 깊이감을 표현할 수 있다.
즉, 동일한 부품요소라도 편집 레이어의 배치에 따라 더 멀리 있는 부품요소에 대해서는 상대적으로 더 적은 픽셀을 사용하여 표현함에 따라, 사용자의 시각에서 더 멀리 떨어져있는 것처럼 깊이감을 표현할 수 있다.
또는, 사용자에 의해 선택된 3차원 오토마타 기계장치의 종류 및 크기에 따라 3차원 오토마타 기계장치의 종류 및 크기에 대한 기하학적 정보에 기초하여 미리 정의된 특정 물리적 객체에 대한 부품요소 간의 연결 관계에 따라 표현해야하는 깊이감을 사용자에게 안내해줄 수 있다.
즉, 조립을 완성하고자 하는 3차원 오토마타 기계장치에 미리 설정된 부품요소들 간의 기하학적 정보에 따라 부품요소별로 실장해야 하는 편집 레이어의 깊이에 대한 정보를 제공해줄 수 있다. 상기 기하학적 정보란 미리 설정된 부품요소들 간의 최적화된 거리 및 각도 정보를 포함한다.
예로서, 도 11에 도시된 바와 같이, 특정 자동차에 대한 기하학적 정보가 한 쌍의 앞바퀴 간의 최적거리가 직경 x 미터이고, 상기 앞바퀴 간의 조립 시 최적 각도가 y도로 미리 설정되어 있는 경우, 하나의 앞바퀴는 제1 편집 레이어에 실장하고, 다른 하나의 앞바퀴는 제5 편집 레이어에 실장하도록 할 수 있다.
이때, 제1 편집 레이어에 실장된 앞바퀴는 30 픽셀을 사용하여 바퀴를 표시하고, 제5 편집 레이어에 실장된 다른 앞바퀴는 10 픽셀을 사용하여 시각장면을 표시함으로써, 사용자가 HMD 디스플레이를 통해 보았을 때, 두 개의 물리적 앞바퀴가 동일한 크기이지만 서로 다른 편집 레이어에 다른 픽셀수로 표현함에 따라, 하나의 바퀴가 다른 하나의 바퀴보다 사용자로부터 더 멀리 떨어져있어 보이는 것으로 3차원적인 깊이감을 줄 수 있다.
즉, 각 편집 레이어는 사용자의 시각으로부터 부품요소가 떨어진 거리 즉, 깊이감을 표현하기 위해 실장되는 부품요소들을 나타내는 픽셀 수를 조절할 수 있다.
다음으로, 조립된 각 부품요소에 설정된 물리 속성에 따라 3차원 오토마타 기계장치의 구동을 시뮬레이션한다(S140).
즉, 가상환경의 3차원 영상 내에서 생성된 3차원 오토마타 기계장치에 대해 여러 동작을 실행시키고, 동작 실행 중인 가상의 3차원 오토마타 기계장치에 대한 상태정보 및 동작 실행정보를 취득한다.
사용자가 물리 기반 시뮬레이션 엔진을 통해 3차원 오토마타 기계장치의 메커니즘을 작동시킬 수 있도록 한다. 시뮬레이션을 실행하기 위해서 먼저 메커니즘 그래프를 바탕으로 전처리 과정을 수행해야 한다. 전처리 과정은 메커니즘 그래프의 각 노드마다 강체 개체를 설정하고, 상기 강체 개체가 노드에 입력된 질량, 관성과 같은 물리 역학 속성에 따라 시뮬레이션 될 수 있도록 한다.
그리고, 각 변마다 연관된 강체 개체 쌍에 대한 시뮬레이션 제한 조건을 추가하여, 연결된 두 강체 개체가 서로 물리적으로 연결된 것과 같이 한 강체의 움직임이 다른 강체의 움직임에 영향을 미칠 수 있게 함으로써, 물리적 연결성을 부여한다.
예를 들어, 고정 제약이 있는 커넥팅 로드에 부착된 크랭크는 부모 막대가 움직이는 방향에 따라 움직이게 된다. 만약 크랭크가 편집 레이어에 고정되고 커넥팅 로드가 경첩 제약으로 크랭크에 부착된다면, 막대가 움직임으로써 크랭크가 자기 자신을 중심으로 회전하게 될 것이다. 물리 기반 시뮬레이션은 이러한 초기화 이후에 실행 가능하고, 실행 후에 강체들의 위치와 방향은 뉴턴 역학 법칙에 따라 업데이트된다. 그리고 동작하는 3차원 오토마타 기계장치에 사용자가 엔드 이펙터(end effect)를 부착함으로써 동작 경로의 흔적을 공간에 남기어, 사용자가 3차원 오토마타 기계장치의 동작 경로를 시각적으로 확인할 수 있게 한다.
물리 기반 시뮬레이션은 3차원 오토마타 기계장치에 대해 이산적인 시간간격에서 사용자에 의해 설정된 위치 및 속도를 포함하는 역학 상태의 수치 적분을 실행한다.
도 13은 본 발명의 실시 예에 따른 편집 레이어 기반의 오토마타 조립 방법을 설명하기 위한 순서도이다. 도 13을 참조하여 본 발명의 실시 예에 따른 편집 레이어 기반의 오토마타 조립방법을 설명하기로 한다.
먼저, 입력부(100)를 통해 사용자가 편집 레이어를 선택하고, 선택된 편집 레이어에 실장할 부품요소를 선택한다(S210). 본 발명의 편집 레이어는 사용자에 의해 선택된 부품요소들 간의 서로 다른 물리적 객체의 깊이를 설정하도록 평면상에 동일한 간격으로 이격되어 구비된 다수의 편집 레이어들로 구성될 수 있다.
각 편집 레이어들은 2차원 프레임으로 구성되더라도, 이러한 2차원 편집 레이어들이 모여 3차원 공간(즉, 가상환경)을 나타낸다. 3차원 공간 내의 물리적 객체의 깊이를 부여하기 위해 사용자에게 깊이별 편집 레이어를 제공한다.
사용자가 편집 레이어와 부품요소를 선택하면, 인터랙티브 기계 조립부(300)의 레이어 편집 모듈(331)이 선택된 편집 레이어와 부품 요소를 HMD 디스플레이부(410)에 출력되게 한다(S211).
그리고, 입력부(100)가 사용자 입력 동작을 검출하면(S212), 인터랙티브 기계 조립부(300)가 부품 요소와 사용자 입력동작의 영상을 정합한다(S214). 즉, 3차원 오토마타 부품요소를 조립하기 위한 사용자 입력동작을 실제 영상에서 추출하고, 상기 추출된 영상을 상기 3차원 오토마타 부품요소의 조립 영상과 정합하여 HMD 디스플레이부(140)로 출력한다.
HMD 디스플레이부(410)는 사용자의 시야를 차단하지 않도록 하여 사용자가 주시하는 전방의 자신의 손이 관찰될 수 있도록 하고, 관찰된 손 동작을 기반으로 가상영상을 출력함으로써, 사용자가 손을 사용하며 오토마타를 직관적으로 조립하여 다양한 메커니즘을 만들 수 있게 하고, 동작 시뮬레이션을 수행하며 기계장치의 실감나는 애니메이션 결과를 볼 수 있게 한다.
그리고, 제어부(200)는 사용자 입력동작에 매칭하는 조립 실행 명령을 오토마타 조립 실행 데이터베이스(343)로부터 추출하여(S213), 조립 실행 명령을 인터랙티브 기계 조립부(300)로 전송한다. 그러면, 인터랙티브 기계 조립부(300)가 조립 실행 명령을 수행하여(S217), 해당 편집 레이어에 부품요소의 조립 영상을 출력되게 한다(S218).
한편, 즉, 동일한 부품요소라도 편집 레이어의 배치에 따라 더 멀리 있는 부품요소에 대해서는 상대적으로 더 적은 픽셀을 사용하여 표현함에 따라, 사용자의 시각에서 더 멀리 떨어져있는 것처럼 깊이감을 표현할 수 있다.
또는, 제어부(200)는 오토마타 메뉴 선택부(310)에서 선택된 3차원 오토마타 기계장치의 종류 및 크기에 따라 제어부(200)가 3차원 오토마타 기계장치의 종류 및 크기에 대한 기하학적 정보에 기초하여 미리 정의된 특정 물리적 객체에 대한 부품요소 간의 연결 관계에 따라 표현해야하는 깊이감을 사용자에게 안내해줄 수 있다.
즉, 제어부(200)는 레이어 편집 모듈(331)에 대해 조립을 완성하고자 하는 3차원 오토마타 기계장치에 미리 설정된 부품요소들 간의 기하학적 정보에 따라 부품요소별로 실장해야 하는 편집 레이어의 깊이에 대한 정보를 제공해줄 수 있다. 상기 기하학적 정보란 미리 설정된 부품요소들 간의 최적화된 거리 및 각도 정보를 포함한다.
전술한 바와 같은 본 발명의 실시 예에 의한 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법에 따르면, 초심자에게도 가상현실에서 현실과 같은 설계 인터페이스를 제공함으로써, 오토마타를 쉽고 직관적으로 설계하고 조립하여 시뮬레이션할 수 있게 한다.
본 발명의 실시 예에 의하면, 현실에서 오토마타를 구현하기 이전에 가상환경에서 프로토타입의 설계 및 시뮬레이션 작업을 수행할 수 있어, 실제 제품에서 오류를 줄일 수 있는 확률을 높이고, 생산성을 높일 수 있다.
한편, 본 발명의 실시 예들은 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록 매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다.
컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피디스크, 광 데이터 저장장치 등을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술 분야의 프로그래머들에 의하여 용이하게 추론될 수 있다.
이상에서 본 발명에 대하여 그 다양한 실시 예들을 중심으로 살펴보았다. 본 발명에 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시 예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
Claims (13)
- 가상현실에서 3차원 오토마타를 조립하기 위한 사용자 입력동작을 검출하는 사용자 입력부;
상기 사용자 입력동작을 분석하여 오토마타 부품요소의 조립 동작을 수행시키는 제어부;
상기 제어부에 의해 구동되어, 3차원 오토마타 기계장치를 구성하는 각 부품요소들을 표시하는 화면을 제공하고, 상기 각 부품요소에 대해 발생된 사용자 입력동작에 따라 상기 부품요소를 단계적으로 조립하는 인터랙티브 기계 조립부; 및
각 부품요소에 설정된 물리 속성에 따라 상기 3차원 오토마타 기계장치를 구동시키는 시뮬레이터부;를 포함하며,
상기 제어부는, 상기 사용자 입력부를 통해 획득된 사용자 입력동작을 사용자 동작 데이터베이스에 미리 등록되어 저장된 복수의 사용자 동작과 비교하여 유사도를 판단하고, 상기 유사도가 임계치 이상에 해당하는 사용자 동작을 추출하는 사용자 입력동작 분석부를 포함하며,
상기 인터랙티브 기계 조립부는, 평면상에 일정 간격으로 이격된 다수의 2차원 프레임들이 모여 3차원 공간을 나타내는 편집 레이어로 구비되고 부품요소에 부여하고자 하는 깊이감에 따라 깊이별 상기 편집 레이어를 선택하여, 상기 선택된 편집 레이어에 상기 부품요소를 실장하도록 구비되는 레이어 편집 모듈을 포함하며,
상기 사용자 입력동작 분석부는 사용자의 손을 집기 상태 또는 펼치기 상태로 구분하고,
상기 인터랙티브 기계 조립부는, (i) 상기 사용자의 손이 상기 편집 레이어에서 부품 중 하나와 인접한 상태에서 상기 집기 상태이면 가장 가까운 부품요소의 상태를 움직일 수 있는 상태로 변경하고, (ii) 상기 손의 상태가 상기 펼치기 상태로 바뀌기 전까지 잡힌 부품요소의 위치를 상기 손을 따라 상기 편집 레이어에 투영한 위치로 설정하여, 상기 사용자의 손의 위치가 상기 편집 레이어와의 간격에 인접한 상태를 유지할 필요없이 상기 편집 레이어에 있는 부품요소를 재배치하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치. - 삭제
- 제 1 항에 있어서,
상기 시뮬레이터부는,
상기 3차원 오토마타 부품요소를 조립하기 위한 사용자 입력동작을 실제 영상에서 추출하고, 상기 추출된 영상을 상기 3차원 오토마타 부품요소의 조립 영상과 정합하여 출력하는 HMD 디스플레이부;
상기 3차원 오토마타 기계장치의 동작을 포함하는 영상을 애니메이션으로 출력하는 애니메이션부; 및
상기 3차원 오토마타 기계장치가 동작할 때, 각 부품요소에 미리 설정된 음향을 출력하는 스피커부를 포함하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치. - 제 1 항에 있어서,
상기 인터랙티브 기계 조립부는,
사용자가 조립하고자 하는 상기 3차원 오토마타 기계장치의 종류 및 크기를 선택하도록 메뉴를 제공하는 오토마타 메뉴 선택부;
상기 메뉴에서 선택된 3차원 오토마타 기계장치를 구성하는 부품 요소들을 가상영상에 제공하는 오토마타 부품 제공부; 및
상기 각 부품요소에 대해 발생된 사용자 입력동작에 따라 상기 부품요소를 단계적으로 조립하는 영상을 생성하기 위해 레이어 편집 모듈 및 렌더링 갱신 모듈로 구성되는 오토마타 조립부;를 포함하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치. - 삭제
- 제 4 항에 있어서,
상기 제어부는,
상기 오토마타 메뉴 선택부에서 선택된 상기 3차원 오토마타 기계장치의 종류 및 크기에 따라 미리 정해진 기하학적 정보에 기초하여 부품요소 간의 연결 관계에 따라 상기 부품요소별로 표현해야 하는 깊이감을 제공하기 위해, 상기 깊이별 편집 레이어에 관한 선택 정보를 제공하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치. - 제 4 항에 있어서,
상기 레이어 편집 모듈은,
동일한 부품요소더라도 서로 다른 상기 편집 레이어에 실장될 경우, 상기 부품요소들을 나타내는 각 픽셀 수를 조절하여 상기 부품요소 간의 상대적 깊이감을 표현하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치. - 삭제
- 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치에 의한 오토마타를 조립하고 시뮬레이션하는 방법에 있어서,
사용자 입력부에 의해 상기 가상현실에서 조립하고자 하는 3차원 오토마타 기계장치를 선택하는 단계;
인터랙티브 기계 조립부에 의해 상기 3차원 오토마타 기계장치를 구성하는 각 부품요소들을 표시하는 화면을 제공하는 단계;
상기 인터랙티브 기계 조립부에 의해 상기 각 부품요소에 대해 발생된 사용자 입력동작에 따라 상기 부품요소를 단계적으로 조립하여 3차원 오토마타 기계장치를 완성시키는 단계; 및
시뮬레이터부에 의해 상기 조립된 각 부품요소에 설정된 물리 속성에 따라 상기 3차원 오토마타 기계장치의 구동을 시뮬레이션하는 단계;를 포함하며,
제어부는, 상기 사용자 입력부를 통해 획득된 사용자 입력동작을 사용자 동작 데이터베이스에 미리 등록되어 저장된 복수의 사용자 동작과 비교하여 유사도를 판단하고, 상기 유사도가 임계치 이상에 해당하는 사용자 동작을 추출하는 사용자 입력동작 분석부를 포함하며,
상기 인터랙티브 기계 조립부는, 평면상에 일정 간격으로 이격된 다수의 2차원 프레임들이 모여 3차원 공간을 나타내는 편집 레이어로 구비되고 부품요소에 부여하고자 하는 깊이감에 따라 깊이별 상기 편집 레이어를 선택하여, 상기 선택된 편집 레이어에 상기 부품요소를 실장하도록 구비되는 레이어 편집 모듈을 포함하며,
상기 사용자 입력동작 분석부는 사용자의 손을 집기 상태 또는 펼치기 상태로 구분하고,
상기 인터랙티브 기계 조립부는, (i) 상기 사용자의 손이 상기 편집 레이어에서 부품 중 하나와 인접한 상태에서 상기 집기 상태이면 가장 가까운 부품요소의 상태를 움직일 수 있는 상태로 변경하고, (ii) 상기 손의 상태가 상기 펼치기 상태로 바뀌기 전까지 잡힌 부품요소의 위치를 상기 손을 따라 상기 편집 레이어에 투영한 위치로 설정하여, 상기 사용자의 손의 위치가 상기 편집 레이어와의 간격에 인접한 상태를 유지할 필요없이 상기 편집 레이어에 있는 부품요소를 재배치하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법. - 삭제
- 제 9 항에 있어서,
상기 3차원 오토마타 기계장치를 완성시키는 단계는,
상기 3차원 오토마타 기계장치의 종류 및 크기에 따라 미리 정해진 기하학적 정보에 기초하여 부품요소 간의 연결 관계에 따라 상기 부품요소별로 표현해야 하는 깊이감을 제공하기 위해, 상기 깊이별 편집 레이어에 관한 선택 정보를 제공하는 단계를 포함하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법. - 제 9 항에 있어서,
상기 3차원 오토마타 기계장치를 완성시키는 단계는,
동일한 부품요소더라도 서로 다른 상기 편집 레이어에 실장될 경우, 상기 부품요소들을 나타내는 각 픽셀 수를 조절하여 상기 부품요소 간의 상대적 깊이감을 표현하는 것을 특징으로 하는 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 방법. - 삭제
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170182002A KR102044856B1 (ko) | 2017-12-28 | 2017-12-28 | 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020170182002A KR102044856B1 (ko) | 2017-12-28 | 2017-12-28 | 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190079913A KR20190079913A (ko) | 2019-07-08 |
KR102044856B1 true KR102044856B1 (ko) | 2019-11-14 |
Family
ID=67256538
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020170182002A KR102044856B1 (ko) | 2017-12-28 | 2017-12-28 | 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102044856B1 (ko) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003178332A (ja) * | 2001-12-10 | 2003-06-27 | Komatsu Ltd | 分解組立のシミュレーション方法 |
JP2004021931A (ja) * | 2002-06-20 | 2004-01-22 | West Unitis Kk | 作業誘導システム |
JP2010271536A (ja) | 2009-05-21 | 2010-12-02 | Kanto Auto Works Ltd | 作業訓練システム及び作業訓練方法並びに該作業訓練方法を記録した記録媒体 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101168896B1 (ko) | 2011-03-30 | 2012-08-06 | 홍익대학교 산학협력단 | 가상환경에서 로봇에 대한 모델링과 시뮬레이션 기반의 테스트 케이스 자동 생성 및 수행 방법 |
KR101602472B1 (ko) * | 2014-08-14 | 2016-03-16 | 이명익 | 2차원 이미지 변환을 통한 3차원 프린팅 파일 생성 장치 및 방법 |
ES2570653B1 (es) * | 2014-11-18 | 2017-03-24 | Universidad Rey Juan Carlos | Método implementado por ordenador, sistema y producto de programa de ordenador para simular el comportamiento de un tejido entretejido a nivel de hilo |
WO2017024118A1 (en) * | 2015-08-04 | 2017-02-09 | Google Inc. | Hover behavior for gaze interactions in virtual reality |
-
2017
- 2017-12-28 KR KR1020170182002A patent/KR102044856B1/ko active IP Right Grant
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2003178332A (ja) * | 2001-12-10 | 2003-06-27 | Komatsu Ltd | 分解組立のシミュレーション方法 |
JP2004021931A (ja) * | 2002-06-20 | 2004-01-22 | West Unitis Kk | 作業誘導システム |
JP2010271536A (ja) | 2009-05-21 | 2010-12-02 | Kanto Auto Works Ltd | 作業訓練システム及び作業訓練方法並びに該作業訓練方法を記録した記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
KR20190079913A (ko) | 2019-07-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10751877B2 (en) | Industrial robot training using mixed reality | |
Xia et al. | A new type haptics-based virtual environment system for assembly training of complex products | |
US10650609B2 (en) | Virtual prototyping and assembly validation | |
KR20080051112A (ko) | 3d 시뮬레이션을 생성하기 위한 시스템 및 방법 | |
Tao et al. | Manufacturing assembly simulations in virtual and augmented reality | |
Manou et al. | Off-line programming of an industrial robot in a virtual reality environment | |
Jiang et al. | A new constraint-based virtual environment for haptic assembly training | |
Hutabarat et al. | Combining virtual reality enabled simulation with 3D scanning technologies towards smart manufacturing | |
Liu et al. | Virtual assembly with physical information: a review | |
Schäffer et al. | Seven Levels of Detail to structure use cases and interaction mechanism for the development of industrial Virtual Reality applications within the context of planning and configuration of robot-based automation solutions | |
Kiswanto et al. | Development of augmented reality (AR) for machining simulation of 3-axis CNC milling | |
Nam et al. | User experience-and design-oriented virtual product prototyping system | |
KR102044856B1 (ko) | 가상현실 기반으로 오토마타를 조립하고 시뮬레이션하는 장치 및 방법 | |
Valentini | Natural interface in augmented reality interactive simulations: This paper demonstrates that the use of a depth sensing camera that helps generate a three-dimensional scene and track user's motion could enhance the realism of the interactions between virtual and physical objects | |
US20220101477A1 (en) | Visual Interface And Communications Techniques For Use With Robots | |
KR20230122689A (ko) | 가상현실 기술을 이용한 로봇을 조립 및 시뮬레이션하는 방법 | |
Lisboa et al. | 3D virtual environments for manufacturing automation | |
Schmitz et al. | A simulation framework for human-robot interaction | |
Eitsuka et al. | Authoring animations of virtual objects in augmented reality-based 3d space | |
US11534909B2 (en) | Displaying method of robot simulator | |
Kwon et al. | Design of a VR prototyping system based on a haptic controller | |
WO2024192730A1 (zh) | 待测设备的仿真系统、方法、现场设备、电子设备及介质 | |
Khandare et al. | A kinect based control of machine vehicle via body gesture | |
Kutter et al. | Modeling and Simulating Mobile Robot Environments. | |
Pang et al. | Assembly Design and Evaluation in an Augmented Reality Environment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right |