KR101605977B1 - 햅틱 디스플레이 장치 및 이를 최소한의 자유도로 제어하기 위한 방법 - Google Patents
햅틱 디스플레이 장치 및 이를 최소한의 자유도로 제어하기 위한 방법 Download PDFInfo
- Publication number
- KR101605977B1 KR101605977B1 KR1020140195614A KR20140195614A KR101605977B1 KR 101605977 B1 KR101605977 B1 KR 101605977B1 KR 1020140195614 A KR1020140195614 A KR 1020140195614A KR 20140195614 A KR20140195614 A KR 20140195614A KR 101605977 B1 KR101605977 B1 KR 101605977B1
- Authority
- KR
- South Korea
- Prior art keywords
- display
- normal vector
- motor
- rotation
- transformation matrix
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04802—3D-info-object: information is displayed on the internal or external surface of a three dimensional manipulable object, e.g. on the faces of a cube that can be rotated by the user
Landscapes
- Engineering & Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
일 실시예에 따른 햅틱 디스플레이 장치는, 3차원 법선 벡터 정보를 포함하는 적어도 하나 이상의 평면을 포함하는 3차원 가상 물체를 표시하는 표시부와, 상기 표시부 상에 설치되는 터치패널을 포함하는 디스플레이; 상기 디스플레이에 연결되어 상기 디스플레이의 기울기를 변화시키는 구동장치; 및 상기 적어도 하나 이상의 평면 중, 상기 터치패널에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터 정보에 기초하여 상기 구동장치를 제어하는 제어부를 포함할 수 있다.
Description
일 실시예에 따른 햅틱 디스플레이 장치 및 이를 최소한의 자유도로 제어하기 위한 방법, 이를 제조하기 위한 방법에 관한 발명이다.
햅틱기술(haptics)이란, 촉각 감각을 통해 힘이나 진동, 움직임을 가함으로써 사용자와 인터페이스를 수행하는 기술이다. 즉, 사람이 느낄 수 있는 모든 감각이라고 이해하면 된다.
사람이 느끼는 햅틱 정보는 크게 tactile 과 kinesthetic 으로 나누어 전달된다고 볼 수 있다. Tactile feedback은 재질감과 같은 것으로 손끝에서 느껴지며, kinesthetic feedback은 근감각과 관련된 것으로 손가락, 손, 팔 등의 관절에 전달되는 힘 정보로 생각할 수 있다. 햅틱기술을 탑재한 제품들을 살펴보면, 대표적으로 휴대 단말기를 들 수 있는데, 사용자의 터치 입력과 대응하여 발생한 진동 피드백을 사용자에게 제공하게 된다
그러나, 사용자의 근감각피드백에 근거한 햅틱 디스플레이 장치 자체의 움직임으로 도출되는 기술은 많이 개발이 되어 있지 않다. 미국 마이크로 소프트(社)에서 개시하는 방식은, 사람이 손을 대면 그 깊이만큼 디스플레이가 병진 운동하여 뒤로 이동하거나 앞으로 나오는 방식을 개시하며, 구체적으로는 MRI 다층 형상 사진에서 사용자가 손으로 디스플레이를 밀 때 그 깊이 만큼에 해당하는 뇌의 단면을 보여줄 수 있다
그러나, 이러한 방식은 디스플레의 절대 좌표계에 근거한 병진 운동을 수반하므로, 디스플레이가 이동해야 하는 충분한 공간을 확보해야 해서 작업공간(workspace) 관점에서 장치 전체의 소형화가 매우 어려워지게 된다. 또한 절대적 위치 정보를 사용하는 특성은 상대적 기하 정보에 의존하는 사람의 촉각 인지과정과 구동 메커니즘이 상이한 단점이 존재한다.
사람이 느끼는 햅틱 정보는 크게 tactile 과 kinesthetic 으로 나누어 전달된다고 볼 수 있다. Tactile feedback은 재질감과 같은 것으로 손끝에서 느껴지며, kinesthetic feedback은 근감각과 관련된 것으로 손가락, 손, 팔 등의 관절에 전달되는 힘 정보로 생각할 수 있다. 햅틱기술을 탑재한 제품들을 살펴보면, 대표적으로 휴대 단말기를 들 수 있는데, 사용자의 터치 입력과 대응하여 발생한 진동 피드백을 사용자에게 제공하게 된다
그러나, 사용자의 근감각피드백에 근거한 햅틱 디스플레이 장치 자체의 움직임으로 도출되는 기술은 많이 개발이 되어 있지 않다. 미국 마이크로 소프트(社)에서 개시하는 방식은, 사람이 손을 대면 그 깊이만큼 디스플레이가 병진 운동하여 뒤로 이동하거나 앞으로 나오는 방식을 개시하며, 구체적으로는 MRI 다층 형상 사진에서 사용자가 손으로 디스플레이를 밀 때 그 깊이 만큼에 해당하는 뇌의 단면을 보여줄 수 있다
그러나, 이러한 방식은 디스플레의 절대 좌표계에 근거한 병진 운동을 수반하므로, 디스플레이가 이동해야 하는 충분한 공간을 확보해야 해서 작업공간(workspace) 관점에서 장치 전체의 소형화가 매우 어려워지게 된다. 또한 절대적 위치 정보를 사용하는 특성은 상대적 기하 정보에 의존하는 사람의 촉각 인지과정과 구동 메커니즘이 상이한 단점이 존재한다.
일 실시예에 따른, 근감각 햅틱 피드백 생성을 위한 로봇 장치를 이용하여 사용자가 터치한 3D 이미지의 기울기에 해당하는 만큼 디스플레이를 기울여서 사용자에게 햅틱 피드백을 주고자 한다.
일 실시예에 다른, 햅틱 디스플레이 제어 방법에 따라 디스플레이의 법선 벡터를 사용자가 터치한 부분의 3차원 가상물체의 법선 벡터로 변환하고자 한다.
일 실시예에 다른, 햅틱 디스플레이 제어 방법에 따라 디스플레이의 법선 벡터를 사용자가 터치한 부분의 3차원 가상물체의 법선 벡터로 변환하고자 한다.
일 실시예에 따른 햅틱 디스플레이 장치는, 3차원 법선 벡터 정보를 포함하는 적어도 하나 이상의 평면을 포함하는 3차원 가상 물체를 표시하는 표시부와, 상기 표시부 상에 설치되는 터치패널을 포함하는 디스플레이; 상기 디스플레이에 연결되어 상기 디스플레이의 기울기를 변화시키는 구동장치; 및 상기 적어도 하나 이상의 평면 중, 상기 터치패널에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터 정보에 기초하여 상기 구동장치를 제어하는 제어부를 포함할 수 있다.
일측에 따르면, 상기 표시부 및 터치패널을 감싸며, 상기 구동장치에 연결되는 커버를 더 포함할 수 있다.
상기 제어부는 디스플레이의 법선 벡터로부터 상기 터치패널에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터로 변환하는 변환행렬로부터 상기 구동장치를 제어할 수 있다.
일측에 따르면, 상기 변환 행렬은 상기 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되며, 선택된 롤(roll), 피치(pitch) 두 개의 회전으로 분해표현되는 2자유도 회전 행렬일 수 있다.
일측에 따르면, 상기 구동장치는 세 개의 선형 모터선형 모터를 포함하며, 상기 세 개의 선형 모터 끝 단은 상기 커버에 대하여 각각 회전 가능하게 연결될 수 있다.
일측에 따르면, 상기 구동 장치는, 상기 디스플레이의 가로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제1모터를 고정하는 제1 지지대, 상기 디스를레이의 가로 방향에 수직인 방향인 세로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제2모터를 고정하는 제 2 지지대; 및 상기 제1 지지대와 제2 지지대를 사이를 연결하는 연결로드를 포함할 수 있다. 일 실시예에 따른 햅틱 디스플레이 장치의 제어 방법은, 3차원 좌표 정보를 포함하는 평면들로 구성된 3차원 가상 물체를 디스플레이에 표시하는 단계; 사용자가 상기 디스플레이 내에서 접촉한 지점에 대응하는 평면의 법선 벡터(normal vector)를 프로젝션에 근거하여 추출하는 단계; 디스플레이의 법선 벡터를 상기 추출된 법선 벡터로 변환하기 위한 변환행렬을 계산하는 단계; 및 상기 변환행렬에 의하여 상기 디스플레이의 기울기를 변화시키는 단계;를 포함할 수 있다.
일측에 따르면, 상기 계산하는 단계에서, 상기 변환 행렬은 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되는 3자유도 회전 행렬일 수 있다.
일측에 따르면, 상기 계산하는 단계에서, 상기 변환 행렬은 상기 롤(roll), 피치(pitch), 요우(yaw) 회전 중 선택된 두 개의 회전으로 분해 (decomposition)될 수 있다.
일측에 따르면, 상기 기울기를 변화시키는 단계에서, 상기 디스플레이는 상기 선택된 두 개의 회전에 따라 두 개의 축에 대한 기울기가 변화될 수 있다.
일측에 따르면, 상기 기울기를 변화시키는 단계에서, 상기 디스플레이는 상기 디스플레이의 법선 벡터를 중심으로 회전하지 않을 수 있다.
일 실시예에 따른 컴퓨터 판독 가능한 기록매체에 따르면, 일 실시예에 따른 햅틱 디스플레이 장치의 제어 방법을 실행하기 위한 프로그램이 기록될 수 있다.
일측에 따르면, 상기 표시부 및 터치패널을 감싸며, 상기 구동장치에 연결되는 커버를 더 포함할 수 있다.
상기 제어부는 디스플레이의 법선 벡터로부터 상기 터치패널에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터로 변환하는 변환행렬로부터 상기 구동장치를 제어할 수 있다.
일측에 따르면, 상기 변환 행렬은 상기 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되며, 선택된 롤(roll), 피치(pitch) 두 개의 회전으로 분해표현되는 2자유도 회전 행렬일 수 있다.
일측에 따르면, 상기 구동장치는 세 개의 선형 모터선형 모터를 포함하며, 상기 세 개의 선형 모터 끝 단은 상기 커버에 대하여 각각 회전 가능하게 연결될 수 있다.
일측에 따르면, 상기 구동 장치는, 상기 디스플레이의 가로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제1모터를 고정하는 제1 지지대, 상기 디스를레이의 가로 방향에 수직인 방향인 세로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제2모터를 고정하는 제 2 지지대; 및 상기 제1 지지대와 제2 지지대를 사이를 연결하는 연결로드를 포함할 수 있다. 일 실시예에 따른 햅틱 디스플레이 장치의 제어 방법은, 3차원 좌표 정보를 포함하는 평면들로 구성된 3차원 가상 물체를 디스플레이에 표시하는 단계; 사용자가 상기 디스플레이 내에서 접촉한 지점에 대응하는 평면의 법선 벡터(normal vector)를 프로젝션에 근거하여 추출하는 단계; 디스플레이의 법선 벡터를 상기 추출된 법선 벡터로 변환하기 위한 변환행렬을 계산하는 단계; 및 상기 변환행렬에 의하여 상기 디스플레이의 기울기를 변화시키는 단계;를 포함할 수 있다.
일측에 따르면, 상기 계산하는 단계에서, 상기 변환 행렬은 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되는 3자유도 회전 행렬일 수 있다.
일측에 따르면, 상기 계산하는 단계에서, 상기 변환 행렬은 상기 롤(roll), 피치(pitch), 요우(yaw) 회전 중 선택된 두 개의 회전으로 분해 (decomposition)될 수 있다.
일측에 따르면, 상기 기울기를 변화시키는 단계에서, 상기 디스플레이는 상기 선택된 두 개의 회전에 따라 두 개의 축에 대한 기울기가 변화될 수 있다.
일측에 따르면, 상기 기울기를 변화시키는 단계에서, 상기 디스플레이는 상기 디스플레이의 법선 벡터를 중심으로 회전하지 않을 수 있다.
일 실시예에 따른 컴퓨터 판독 가능한 기록매체에 따르면, 일 실시예에 따른 햅틱 디스플레이 장치의 제어 방법을 실행하기 위한 프로그램이 기록될 수 있다.
일 실시예에 따른, 햅틱 디스플레이 장치를 이용하면 사용자가 터치한 3D 가상 물체의 기울기에 해당하는 만큼을 구동장치를 통해 디스플레이를 기울여서 사용자가 가상물체를 만지는 듯한 피드백을 줄 수 있다.
일 실시예에 다른, 햅틱 디스플레이 제어 방법에 따라 디스플레이의 법선 벡터를 사용자가 터치한 부분의 가상 물체의 평면 메시 (virtual mesh)에 해당하는 법선 벡터로 변환하고자 한다.
일 실시예에 다른, 햅틱 디스플레이 제어 방법에 따라 디스플레이의 법선 벡터를 사용자가 터치한 부분의 가상 물체의 평면 메시 (virtual mesh)에 해당하는 법선 벡터로 변환하고자 한다.
본 명세서에 첨부되는 다음의 도면들은 본 발명의 바람직한 일실시예를 예시하는 것이며, 발명의 상세한 설명과 함께 본 발명의 기술적 사상을 더욱 이해시키는 역할을 하는 것이므로, 본 발명은 그러한 도면에 기재된 사항에만 한정되어 해석 되어서는 아니 된다.
도 1은 일 실시예에 따른 햅틱 디스플레이 장치를 나타낸 사시도이다.
도 2는 일 실시예에 따른 햅틱 디스플레이 장치의 측면을 나타낸 평면도이다.
도 3은 다른 실시예에 따른 햅틱 디스플레이 장치를 나타낸 사시도이다.
도 4는 일 실시예에 따른 햅틱 디스플레이 장치의 구성도이다.
도 5는 일 실시예에 따른 햅틱 디스플레이 장치의 제어방법을 나타낸 순서도이다.
도 6은 최소회전각도 변환행렬을 설명하기 위한 그래프이다.
도 7은 디스플레이의 법선벡터를 가상 3차원 물체 평면의 법선 백터로 변환하는 모습을 나타낸 사시도이다.
도 8은 평면을 Z-Y-X로 돌린 회전축과 X-Y로 돌린 회전축의 축이 일치함을 나타내는 3차원 그래프의 한 예이다.
도 1은 일 실시예에 따른 햅틱 디스플레이 장치를 나타낸 사시도이다.
도 2는 일 실시예에 따른 햅틱 디스플레이 장치의 측면을 나타낸 평면도이다.
도 3은 다른 실시예에 따른 햅틱 디스플레이 장치를 나타낸 사시도이다.
도 4는 일 실시예에 따른 햅틱 디스플레이 장치의 구성도이다.
도 5는 일 실시예에 따른 햅틱 디스플레이 장치의 제어방법을 나타낸 순서도이다.
도 6은 최소회전각도 변환행렬을 설명하기 위한 그래프이다.
도 7은 디스플레이의 법선벡터를 가상 3차원 물체 평면의 법선 백터로 변환하는 모습을 나타낸 사시도이다.
도 8은 평면을 Z-Y-X로 돌린 회전축과 X-Y로 돌린 회전축의 축이 일치함을 나타내는 3차원 그래프의 한 예이다.
이하, 도면을 참조하여 본 발명의 바람직한 일실시예에 대해서 설명한다. 또한, 이하에 설명하는 일실시예는 특허청구범위에 기재된 본 발명의 내용을 부당하게 한정하지 않으며, 본 실시 형태에서 설명되는 구성 전체가 본 발명의 해결 수단으로서 필수적이라고는 할 수 없다.
평면 디스플레이에서 만져지는 부분의 정보(예, 기하정보, 포텐셜 정보등)에 따라 디스플레이를 기울이는 햅틱 장치는, 기울이는 수단으로서는 선형 모터가 병렬로 배치되는 것을 사용하거나 회전 중심이 화면 중앙에 맞추어진 형태의 로봇을 사용할 수 있다. 모터의 배치는 사용자가 만진 가상 물체의 기울기를 화면의 기울기로 만들도록 구동되며, 이를 통해 사용자는 화면에 보여지는 물체 표면의 기울기에 기반하여 물체를 만져볼 수 있게 된다.
도 1은 일 실시예에 따른 햅틱 디스플레이 장치(100)를 도시한다.
디스플레이(110)는 3차원 법선 벡터 정보를 포함하는 적어도 하나 이상의 평면을 포함하는 이미지를 표시하는 표시부(112)와, 상기 표시부 상에 설치되는 터치패널(113)을 포함할 수 있다.
상기 구동장치(120)은 디스플레이(110)에 연결되어 상기 디스플레이(110)의 기울기를 변화시킬 수 있다.
상기 햅틱 디스플레이 장치(100)는 상기 표시부(1120)에 표시되는 이미지의 일부인 적어도 하나 이상의 평면 중, 상기 터치패널(113)에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터 정보에 기초하여 상기 구동장치(112)를 제어하는 제어부를 포함할 수 있다. 상기 제어부는 상기 디스플레이(110)과 구동장치(112)의 외부에 위치하거나, 상기 디스플레이(110)의 하부 일부에 일체화되어 위치될 수 있다.
상기 제어부는 디스플레이(110)의 법선 벡터로부터 상기 터치패널(113)에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터로 변환하는 변환행렬로부터 상기 구동장치를 제어할 수 있다.
상기 변환 행렬은 상기 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되며, 선택된 롤(roll), 피치(pitch) 두 개의 회전으로 분해(decomposition)되는 2자유도 회전 행렬일 수 있다.
상기 분해(decomposition)되는 과정은 후술하는 햅틱 디스플레이 장치의 제어 방법에서 자세히 설명한다.
도 2는 일 실시예에 따른 햅틱 디스플레이 장치(100)의 측면을 도시한다.
상기 디스플레이(100)는 상기 터치패널(113)을 보호하는 보호창(111)에 의하여 보호될 수 있다. 상기 보호창(111)은 강화유리 또는 강화 플라스틱을 포함한 재료로 구성될 수 있다. 상기 디스플레이(100)는 상기 표시부(112) 및 터치패널(113)을 감싸며, 상기 구동장치(120)에 연결되는 커버(114)를 더 포함할 수 있다.
상기 구동장치(120)는 세 개의 선형 모터 선형 모터(125)를 포함하며, 상기 세 개의 선형 모터의 (125)의 끝 단은 상기 커버에 대하여 각각 회전 가능하게 연결될 수 있다. 선형 모터는 디스플레이의 무게에 따라 선형 모터 일 수 있다.
상기 선형 모터 (125)의 일 단은 커버 연결부재(126)에 회전 가능하게 연결되며, 고정 가이드부(124) 를 따라 선형으로 움직이는데, 통상적인 선형 모터의 구조를 따른다.
이는 통상적인 선형 모터에 대한 기술이므로 상세한 설명은 생략한다. 상기선형 모터 (123)의 하 단은 지지대와 회전 가능하게 결합될 수 있도록 지지대 연결부재 를 포함할 수 있으며, 상기 지지대와 상기 지지대 연결부재는 회전가능한 핀조인트로 연결될 수 있다.
상기 세 개의 선형 모터(125)는 서로 올라가거나 내려가는 위치를 다르게 하여, 상기 디스플레이(110)의 기울기를 조절할 수 있으며, 상기 세 개의 선형 모터(125)는 하나의 선상에 배치되는 경우에는, 상기 디스플레이(110)의 X, Y, Z 축에 대한 회전 중에서 하나의 회전에 대한 구현만 가능해 지므로, 하나의 선상에 배치되는 것은 바람직하지 않다. 따라서, 상기 선형 모터(125)가 연결된 점을 직선으로 연결 때, 정삼각형 모양을 형성하도록 상기 선형 모터(125)가 배치되는 것이 바람직하다.
이외 스튜어트 플랫폼과 같은 일반적인 병렬 로봇(parallel robot)을 이용한 구동장치를 이용할 수 있다.
상기 선형 모터(125)는 상기 커버 연결부재(126)와 상기 회전가능한 볼트(127)에 의하여 회전가능하게 연결되므로, 상대적으로 높이가 높은 선형 모터모터(125)에서 낮은 선형 모터모터 (125) 쪽으로 상기 디스플레이(110)이 경사지게 된다.
도 3은 구동장치가 다른 형태로 구성된, 다른 실시예에 따른 햅틱 디스플레이 장치(200)를 도시한다.
도 3(a)는 햅틱 디스플레이 장치(200)의 구동이 발생하지 않은 상태를 도시하고, 도 3(b)는 디스플레이의 거치대(210)의 세로 길이 방향을 축으로 하여 디스플레이 거치대(210)를 회전시키는 모습을 나타내고, 도 3(c) 디스플레이의 거치대(210)를 가로 길이 방향을 축으로 하여 디스플레이 거치대(210)를 회전시키는 모습을 나타내고, 도 3(d) 디스플레이의 거치대(210)를 세로 길이 방향 및 가로 길이 방향으로 모두 회전시킨 모습을 나타낸다.
상기 다른 실시예에 따른 구동 장치(200)는, 디스플레이의 가로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제1모터(226)를 고정하는 제1 지지대(228), 상기 디스를레이의 가로 방향에 수직인 방향인 세로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제2모터(227)를 고정하는 제 2 지지대(229), 및 상기 제1 지지대(228)와 제2 지지대(229)를 사이를 연결하는 연결로드(222)를 포함할 수 있다.
상기 제1 지지대(228)와 상기 제2 지지대(229)는 상기 제1모터(226) 및 제2모터(227)의 측면을 감싸서 지지하는 'Y'자 형상을 가지는 것이 바람직하고, 상기 제1모터(226) 및 제2모터(227)의 회전 축이 노출될 수 있도록 'Y'자 형상의 벌어진 암들은 상기 회전 축을 중심으로 벌어져 있는 형상을 가질 수 있다.
상기 제1 지지대(228)는 상기 제1모터(226)를 디스플레이 거치대(210)의 세로 길이의 중심에 위치시키는 것이 바람직하고, 상기 제2 지지대(229)는 제2모터 (227)를 디스플레이 거치대(210)의 가로길이의 중심에 위치시키는 것이 바람직하다. 이 경우에, 두 모터의 회전축이 한 지점에서 만나게 되어 디스플레이 거치대(210)의 중심을 기준으로 X축 및 Y축 회전만을 하게 되며, 디스플레이 거치대(210)의 중심이 Z축 방향으로 이동하지 않게 된다.
즉, RCM(remote center of rotation) 조건을 만족키기 위해서, 회전이 일어나는 중심점이 디스플레이 거치대(210)의 가로 길이의 중심이 되는 지점과, 세로 길이의 중심이 되는 지점과 만나는 지점이 되어야 하며, 이는 디스플레이 거치대(210)의 중심점이 될 것이다.
상기 제1 모터(226)의 회전축은 커플링(231)을 통하여 회전로드(230)과 연결되며, 상기 회전로드(230)는 디스플레이 거치대(210)의 가로방향의 중심선과 일치하도록 상기 디스플레이 거치대(210)의 하단을 지지하게 된다.
상기 디스플레이 거치대(210)는 디스플레이와 꼭 맞는 크기를 가질 수 있고, 중심 부근에는 구멍(211)들이 뚫려 있어서 회전로드(230)와 거치대를 체결할수 있도록 하고 필요에 따라 전선을 통해 상기 제1모터(226) 및 제2모터(227)를 제어하는 제어기(미도시)에 신호를 전달 할 수 있다. 상기 디스플레이 거치대(210)의 크기는 가로의 길이가 세로의 길이보다 긴 것이 바람직하며, 디스플레이의 크기에 따라서 교체될 수 있다. 상기 디스플레이의 크기가 달라짐에 따라서, 상기 회전로드(230)에 고정되는 위치가 변경될 수 있다.
상기 연결로드(222)는 두 개의 서로 수직인 빔이 'ㄱ'자 모양을 이루는 형상이며 상기 두 개의 빔을 이어주는 코너 부근은 부드러운 굴곡을 가질 수 있다. 상기 두 개의 빔중 하나의 빔은 상기 디스플레이 거치대(210)의 가로 방향과 평행하며, 다른 하나의 빔은 상기 디스플레이 거치대(210)의 세로 방향과 평행하게 구성되는 것이 바람직하다.
상기 제1모터(226) 및 제2모터(227)의 구동은, 작동이 시작해서 끝나기 까지의 시간이 최대한 짧은 것이 바람직하다. 사용자가 상기 디스플레이의 터치 패널에 터치를 했을 때, 즉각적으로 상기 디스플레이)의 기울기가 변화해야 사용자가 이를 촉각으로 느껴서, 가상의 공간에서 기울어진 부분이 현실화되어 표현될 수 있기 때문이다.
도 4는 일 실시예에 따른 햅틱 디스플레이 장치(100)의 구성을 도시한다.
상기 제어부(130)는 상기 표시부(112)에 3차원 벡터 정보를 포함하는 평면들로 구성된 가상 평면 정보(virtual mesh) 전송하며, 사용자가 상기 터치패널(113)의 어느 지점을 터치 했을 때, 상기 해당하는 부분의 위치에 대한 정보를 상기 터치패널(113)은 상기 제어부(130)로 전송하며, 상기 제어부(130)는 상기 터치 패널(113)의 신호를 분석하여 디스플레이의 기울기 변환 벡터를 계산하며, 이러한 계산된 결과를 바탕으로 상기 구동장치(120)에 구동신호를 보내서 디스플레이의 기울기를 변화시킨다.
상기 터치패널(113)과 상기 표시부(112)는 사용자를 바라보는 방향에서, 상 하로 배치되며, 상기 표시부(112)가 나타내는 이미지가 위치하는 지점과, 상기 터치패널(113)에서 지정 된 이미지의 위치를 일치시켜야 하므로, 상기 터치패널(113)과 상기 표시부(112) 사이에도 위치 전송 신호를 서로 주고받을 수 있다.
도 5는 일 실시예에 따른 햅틱 디스플레이 장치의 제어방법을 나타낸 순서도이다.
상기 제어 방법은, 3차원 좌표 정보를 포함하는 평면들로 구성된 이미지를 디스플레이에 표시하는 단계(S110), 사용자가 상기 디스플레이 내에서 접촉한 지점에 대응하는 평면의 법선 벡터(normal vector)를 추출하는 단계(S120), 디스플레이의 법선 벡터를 상기 추출된 법선 벡터로 변환하기 위한 변환행렬을 계산하는 단계(S130), 및 상기 변환행렬에 의하여 상기 디스플레이의 기울기를 변화시키는 단계(S150), 를 포함할 수 있다.
도 6은 S130 단계에서 필요한 최소회전각도 변환행렬을 설명하기 위한 그래프이다. 이하 디스플레이의 좌표계를 가로를 x 축, 세로를 y축으로, 화면에서 나오는 수직방향으로 z축으로 설정하고 설명을 진행한다.
디스플레이가 바라보고 있는 법선 벡터 v1을 물체의 법선벡터 v2로 변환시키는 것은 최소회전각도 형태 (shortest rotation angle )로 구하기 위해 쿼터니안 (quaternion; 사원수)을 이용해 변환행렬을 구한다. 4개의 벡터 성분(1x4)으로 기술되는 쿼터니안 q 는 정의에 의해 rotation axis 와 rotation angle 을 기반으로 표현된다. 쿼터니안이 아닌 내적(dot-product) 기반 등의 방법으로 회전 행렬을 구성할 수 있으나 이 경우 그래픽으로(graphical) 구현할 수는 있으나 기계적으로 구현하기 어려운데, 이는 최소회전각도 형태에 기반하지 않으면 자유도의 증가 및 움직임 영역 증가를 초래하기 때문이다.
도 6에 도시되어 있는, 회전축 (rotation axis) 을 u = <u1,u2,u3> 라 하고 회전각을 θ 라고 한다면 위의 회전을 나타내는 q는 다음과 같이 정의된다.
q=<w,x,y,z>=<cos(θ/2), u1*sin(θ/2), u2*sin(θ/2), u3*sin(θ/2)>
도 7은 디스플레이의 법선벡터를 가상 공간에서 접촉되는 평면의 법선 백터로 변환하는 모습을 나타낸 사시도이다.
터치 표면(touch surface) 상에 사용자의 손이 직접 접촉하게 되며, 이 부분은 실제 현실세계에서 발생하는 과정이므로 물리적인 세상(physical world)이다. 또한, 터치 표면 하부에서는 실제 물리적인 평면이 존재하는 것이 아니고, 가상의 공간 내에서 수학적으로 표현된 가상의 평면(virtual mesh) 가 존재하는 공간이므로, 가상의 세상(virtual world)이다.
상기 디스플레이(110)의 표시부(112)에서 투영(projection) 된 이미지에서 사용자가 터치한 부분에 대응하는 평면의 3차원 좌표 정보를 표면 법선 벡터 형태 (surface normal vector)로 추출할 수 있다. 이러한 표면 법선 벡터는 도 7에서 ∇F = v2 로 표시되어 있다.
디스플레이가 바라보고 있는 법선 벡터 v1을 물체의 법선벡터 v2로 변환시키는 것은 최소회전각도 형태 (shortest rotation angle )로 구하기 위해 쿼터니안 (quaternion)을 이용해 변환행렬을 구한다. 이를 4개의 성분으로 기술되는 q로 표현한다. 하단에 기재된 식 (2), (3)은 3차원 회전 변환 벡터 분야에서 일반적으로 사용되는 식이다.
상기 계산하는 단계(S120)에서, 상기 변환 행렬 q는 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되는 3자유도 회전 행렬일 수 있다.
상기 앞서 기술한 벡터 형태의 q를 회전 행렬 형태로 형태를 바꾸어 기술할 수 있다.
현실세계에서 디스플레이의 법선벡터 v1은 x,y,z 좌표 기준으로 지지면에 수직인 방향을 보게 되므로 <0,0,1>의 값을 가지게 설정한다. 또한, 아래와 같이 v1의 x, y 값이 0이되고, 따라서 회전 축의 z 성분이 0이 되기 때문에 아래와 같이 같은 관계식을 이용해 q값을 단순화 시킬 수 있다.
q를 가리키는 행렬 (3)에서, x, y 값에 0을 모두 대입하면, 변환 행렬 Rθ , u 는 다음과 같이 단순화 된다.
위의 R 2는 아래와 같이 행렬의 좌측 상단에서 우측하단으로 내려오는 대각성분을 중심으로 대칭성을 가지는 행렬이 된다. 이 특성을 이용하여 R 2 행렬을 분해 (decomposition) 하는 것이 가능해진다.
상기 계산하는 단계(S140)에서, 상기 변환 행렬은 대칭 형태를 가지고, 롤(roll), 피치(pitch)로 구성되는 두 개의 회전으로 분해(decomposition)될 수 있다.
한편, α를 z축을 중심으로 한 회전인 요(yaw), β를 y축을 중심으로 한 회전인 피치, γ를 x축을 중심으로 한 회전인 롤 (roll) 이라 한다면, 일반적인 정의에 따라 Z-Y-X 오일러 각 컨벤션(Euler angle convention) 으로 회전행렬을 표현할 수 있다.
즉, 일반적으로 롤(roll), 피치(pitch), 요우(yaw)의 회전을 다음과 같이 R3 행렬 형태로 기술할 수 있는데, R 2행렬 또한 아래의 R 3행렬 형태로 기술할 수 있다.
위에서 기술한 R 2의 대칭성을 통해 다음과 같이 일치하는 부분이 있음을 확인 할 수 있다.
롤, 피치 회전 행렬 만을 이용해 만든 행렬 R 4는 다음과 같은데,
R 2의 대칭성에 의해 R 3 (= R 2)의 세번째 열벡터 (column vector), R 4의 세번째 열벡터가 동일하게 된다.
즉 다음의 관계가 있음을 알 수 있다.
일반적으로 회전 행렬의 세번째 열 벡터(Column vector)는 회전의 z축을 가리키므로 주어진 일 실시예에 따른 변환 행렬에서는 롤과 피치 움직임 만으로 가상 평면과 디스플레이 평면이 같은 방향을 가리키도록 할 수 있으며 결과적으로 이를 통해 가상 물체의 기울기를 표현할 수 있게 된다. 즉 R 2, R 3 대신 이와 동일한 방향을 가리키는 R 4 (롤과 피치만의 함수)를 사용함으로써 적은 수의 actuation으로 가상 물체의 기울기를 표현해 낼 수 있게 된다.
즉 2축만의 움직임으로 실제 디스플레이 평면을 가상 평면과 평행하게 설정할 수 있으며, z축을 중심으로한 회전을 사용하지 않아도 구현이 가능하다.
도 8은 평면을 Z-Y-X로 돌린 회전축과 X-Y로 돌린 회전축의 축이 일치함을 나타내는 3차원 그래프이다.
Z-Y-X 로 돌린 회전 축과 X-Y로 돌린 회전축은 축의 x,y 방향 벡터는 틀어져 있으나, z 축이 일치함을 알 수 있다. 즉 3차원 평면에서 같은 평면에 위치한다.
상기 기울기를 변화시키는 단계(S150)에서, 상기 디스플레이는 롤(roll), 피치(pitch) 회전에 따라 두 개의 축에 대한 기울기가 변화될 수 있다.
앞서 기술한 설명을 통해, 상기 변환 행렬은 롤(roll), 피치(pitch)로 구성되는 두 개의 회전으로 분해(decomposition) 되어도 디스플레이평면을 가상물체의 평면과 평행하게 를 표현하는 것이 가능함을 확인할 수 있다.
일 실시예에선, 롤(roll), 피치(pitch) 회전으로 행렬을 분해 (decomposition)했으나, 유사한 방법으로 요우(yaw), 피치(pitch) 또는 요우(yaw)와 롤(roll) 등의 2개의 자유도 회전 행렬로 분해(decomposition) 하는 것이 가능해질 수 있다.
일 실시예에 따르면, 2개의 자유도로 기하 정보를 재현하는 과정을 나타내고 있으므로, 1개의 자유도를 추가하게 되면 추가적인 느낌 생성이 가능할 수 있다. 예를 들어, 롤, 피치 회전으로 기하 정보 생성하고, 추가 요(yaw)의 움직임은 손가락을 문지르는 느낌 발생에 활용할 수 있다.
최근 키넥트 등을 이용한 포인트 클라우드 획득이 용이해 졌고, 마우스 커서 (혹은 터치 되는 지점)의 표면 법선 벡터(surface normal vector)를 예측하는 알고리즘은 어렵지 않게 구현이 가능하다.
응용 실시예로, 실제 물체를 3차원 정보를 포함하는 이미지로 스캐닝 하여 이를, 실제로 사용하고 있는 물건의 동작 상태를 변경하는 장치를 고려해 볼 수 있다. 따라서 실제 주변 환경에서 눈에 보이는 지점의 표면 법선 벡터(surface normal vector)를 구하고 이를 일 실시예에 따른 변환행렬을 통해 움직이는 장치에 적용할 수 있다.
예를 들어, 자동차의 본넷 또는 전면 그릴에 3차원 스캐닝 카메라를 장착하고, 제어부에서 스캔된 이미지를 검색하는 중에 관심 지점에 돌발 상황이 발생하면, 일 실시예에 따른 변환행렬을 이용하여, 운전자가 잡고 있는 핸들이나 추가로 부착된 장치(100 혹은 200)의 각도를 변화 시켜 운전자에게 보이지 않는 물체를 촉각적으로 알릴 수 있다.
일 실시예에 따른 컴퓨터 판독 가능한 기록매체에 따르면, 일 실시예에 따른 햅틱 디스플레이 장치의 제어 방법을 실행하기 위한 프로그램이 기록될 수 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 시스템의 단점은 햅틱 감각 전달을 위한 표면 회전이 view를 방해할수 있다는 점이다. 이를 근본적으로 해결하기는 어려우나, 가상 물체의 회전을 통해 물체와 사용자 view 사이의 각도를 유지시킬 수는 있다. 즉 하드웨어가 회전된 만큼의 반대방향으로 물체를 회전 시킴으로서 달성이 가능하다.
이상, 본 발명의 일실시예를 참조하여 설명했지만, 본 발명이 이것에 한정되지는 않으며, 다양한 변형 및 응용이 가능하다. 즉, 본 발명의 요지를 일탈하지 않는 범위에서 많은 변형이 가능한 것을 당업자는 용이하게 이해할 수 있을 것이다.
평면 디스플레이에서 만져지는 부분의 정보(예, 기하정보, 포텐셜 정보등)에 따라 디스플레이를 기울이는 햅틱 장치는, 기울이는 수단으로서는 선형 모터가 병렬로 배치되는 것을 사용하거나 회전 중심이 화면 중앙에 맞추어진 형태의 로봇을 사용할 수 있다. 모터의 배치는 사용자가 만진 가상 물체의 기울기를 화면의 기울기로 만들도록 구동되며, 이를 통해 사용자는 화면에 보여지는 물체 표면의 기울기에 기반하여 물체를 만져볼 수 있게 된다.
도 1은 일 실시예에 따른 햅틱 디스플레이 장치(100)를 도시한다.
디스플레이(110)는 3차원 법선 벡터 정보를 포함하는 적어도 하나 이상의 평면을 포함하는 이미지를 표시하는 표시부(112)와, 상기 표시부 상에 설치되는 터치패널(113)을 포함할 수 있다.
상기 구동장치(120)은 디스플레이(110)에 연결되어 상기 디스플레이(110)의 기울기를 변화시킬 수 있다.
상기 햅틱 디스플레이 장치(100)는 상기 표시부(1120)에 표시되는 이미지의 일부인 적어도 하나 이상의 평면 중, 상기 터치패널(113)에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터 정보에 기초하여 상기 구동장치(112)를 제어하는 제어부를 포함할 수 있다. 상기 제어부는 상기 디스플레이(110)과 구동장치(112)의 외부에 위치하거나, 상기 디스플레이(110)의 하부 일부에 일체화되어 위치될 수 있다.
상기 제어부는 디스플레이(110)의 법선 벡터로부터 상기 터치패널(113)에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터로 변환하는 변환행렬로부터 상기 구동장치를 제어할 수 있다.
상기 변환 행렬은 상기 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되며, 선택된 롤(roll), 피치(pitch) 두 개의 회전으로 분해(decomposition)되는 2자유도 회전 행렬일 수 있다.
상기 분해(decomposition)되는 과정은 후술하는 햅틱 디스플레이 장치의 제어 방법에서 자세히 설명한다.
도 2는 일 실시예에 따른 햅틱 디스플레이 장치(100)의 측면을 도시한다.
상기 디스플레이(100)는 상기 터치패널(113)을 보호하는 보호창(111)에 의하여 보호될 수 있다. 상기 보호창(111)은 강화유리 또는 강화 플라스틱을 포함한 재료로 구성될 수 있다. 상기 디스플레이(100)는 상기 표시부(112) 및 터치패널(113)을 감싸며, 상기 구동장치(120)에 연결되는 커버(114)를 더 포함할 수 있다.
상기 구동장치(120)는 세 개의 선형 모터 선형 모터(125)를 포함하며, 상기 세 개의 선형 모터의 (125)의 끝 단은 상기 커버에 대하여 각각 회전 가능하게 연결될 수 있다. 선형 모터는 디스플레이의 무게에 따라 선형 모터 일 수 있다.
상기 선형 모터 (125)의 일 단은 커버 연결부재(126)에 회전 가능하게 연결되며, 고정 가이드부(124) 를 따라 선형으로 움직이는데, 통상적인 선형 모터의 구조를 따른다.
이는 통상적인 선형 모터에 대한 기술이므로 상세한 설명은 생략한다. 상기선형 모터 (123)의 하 단은 지지대와 회전 가능하게 결합될 수 있도록 지지대 연결부재 를 포함할 수 있으며, 상기 지지대와 상기 지지대 연결부재는 회전가능한 핀조인트로 연결될 수 있다.
상기 세 개의 선형 모터(125)는 서로 올라가거나 내려가는 위치를 다르게 하여, 상기 디스플레이(110)의 기울기를 조절할 수 있으며, 상기 세 개의 선형 모터(125)는 하나의 선상에 배치되는 경우에는, 상기 디스플레이(110)의 X, Y, Z 축에 대한 회전 중에서 하나의 회전에 대한 구현만 가능해 지므로, 하나의 선상에 배치되는 것은 바람직하지 않다. 따라서, 상기 선형 모터(125)가 연결된 점을 직선으로 연결 때, 정삼각형 모양을 형성하도록 상기 선형 모터(125)가 배치되는 것이 바람직하다.
이외 스튜어트 플랫폼과 같은 일반적인 병렬 로봇(parallel robot)을 이용한 구동장치를 이용할 수 있다.
상기 선형 모터(125)는 상기 커버 연결부재(126)와 상기 회전가능한 볼트(127)에 의하여 회전가능하게 연결되므로, 상대적으로 높이가 높은 선형 모터모터(125)에서 낮은 선형 모터모터 (125) 쪽으로 상기 디스플레이(110)이 경사지게 된다.
도 3은 구동장치가 다른 형태로 구성된, 다른 실시예에 따른 햅틱 디스플레이 장치(200)를 도시한다.
도 3(a)는 햅틱 디스플레이 장치(200)의 구동이 발생하지 않은 상태를 도시하고, 도 3(b)는 디스플레이의 거치대(210)의 세로 길이 방향을 축으로 하여 디스플레이 거치대(210)를 회전시키는 모습을 나타내고, 도 3(c) 디스플레이의 거치대(210)를 가로 길이 방향을 축으로 하여 디스플레이 거치대(210)를 회전시키는 모습을 나타내고, 도 3(d) 디스플레이의 거치대(210)를 세로 길이 방향 및 가로 길이 방향으로 모두 회전시킨 모습을 나타낸다.
상기 다른 실시예에 따른 구동 장치(200)는, 디스플레이의 가로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제1모터(226)를 고정하는 제1 지지대(228), 상기 디스를레이의 가로 방향에 수직인 방향인 세로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제2모터(227)를 고정하는 제 2 지지대(229), 및 상기 제1 지지대(228)와 제2 지지대(229)를 사이를 연결하는 연결로드(222)를 포함할 수 있다.
상기 제1 지지대(228)와 상기 제2 지지대(229)는 상기 제1모터(226) 및 제2모터(227)의 측면을 감싸서 지지하는 'Y'자 형상을 가지는 것이 바람직하고, 상기 제1모터(226) 및 제2모터(227)의 회전 축이 노출될 수 있도록 'Y'자 형상의 벌어진 암들은 상기 회전 축을 중심으로 벌어져 있는 형상을 가질 수 있다.
상기 제1 지지대(228)는 상기 제1모터(226)를 디스플레이 거치대(210)의 세로 길이의 중심에 위치시키는 것이 바람직하고, 상기 제2 지지대(229)는 제2모터 (227)를 디스플레이 거치대(210)의 가로길이의 중심에 위치시키는 것이 바람직하다. 이 경우에, 두 모터의 회전축이 한 지점에서 만나게 되어 디스플레이 거치대(210)의 중심을 기준으로 X축 및 Y축 회전만을 하게 되며, 디스플레이 거치대(210)의 중심이 Z축 방향으로 이동하지 않게 된다.
즉, RCM(remote center of rotation) 조건을 만족키기 위해서, 회전이 일어나는 중심점이 디스플레이 거치대(210)의 가로 길이의 중심이 되는 지점과, 세로 길이의 중심이 되는 지점과 만나는 지점이 되어야 하며, 이는 디스플레이 거치대(210)의 중심점이 될 것이다.
상기 제1 모터(226)의 회전축은 커플링(231)을 통하여 회전로드(230)과 연결되며, 상기 회전로드(230)는 디스플레이 거치대(210)의 가로방향의 중심선과 일치하도록 상기 디스플레이 거치대(210)의 하단을 지지하게 된다.
상기 디스플레이 거치대(210)는 디스플레이와 꼭 맞는 크기를 가질 수 있고, 중심 부근에는 구멍(211)들이 뚫려 있어서 회전로드(230)와 거치대를 체결할수 있도록 하고 필요에 따라 전선을 통해 상기 제1모터(226) 및 제2모터(227)를 제어하는 제어기(미도시)에 신호를 전달 할 수 있다. 상기 디스플레이 거치대(210)의 크기는 가로의 길이가 세로의 길이보다 긴 것이 바람직하며, 디스플레이의 크기에 따라서 교체될 수 있다. 상기 디스플레이의 크기가 달라짐에 따라서, 상기 회전로드(230)에 고정되는 위치가 변경될 수 있다.
상기 연결로드(222)는 두 개의 서로 수직인 빔이 'ㄱ'자 모양을 이루는 형상이며 상기 두 개의 빔을 이어주는 코너 부근은 부드러운 굴곡을 가질 수 있다. 상기 두 개의 빔중 하나의 빔은 상기 디스플레이 거치대(210)의 가로 방향과 평행하며, 다른 하나의 빔은 상기 디스플레이 거치대(210)의 세로 방향과 평행하게 구성되는 것이 바람직하다.
상기 제1모터(226) 및 제2모터(227)의 구동은, 작동이 시작해서 끝나기 까지의 시간이 최대한 짧은 것이 바람직하다. 사용자가 상기 디스플레이의 터치 패널에 터치를 했을 때, 즉각적으로 상기 디스플레이)의 기울기가 변화해야 사용자가 이를 촉각으로 느껴서, 가상의 공간에서 기울어진 부분이 현실화되어 표현될 수 있기 때문이다.
도 4는 일 실시예에 따른 햅틱 디스플레이 장치(100)의 구성을 도시한다.
상기 제어부(130)는 상기 표시부(112)에 3차원 벡터 정보를 포함하는 평면들로 구성된 가상 평면 정보(virtual mesh) 전송하며, 사용자가 상기 터치패널(113)의 어느 지점을 터치 했을 때, 상기 해당하는 부분의 위치에 대한 정보를 상기 터치패널(113)은 상기 제어부(130)로 전송하며, 상기 제어부(130)는 상기 터치 패널(113)의 신호를 분석하여 디스플레이의 기울기 변환 벡터를 계산하며, 이러한 계산된 결과를 바탕으로 상기 구동장치(120)에 구동신호를 보내서 디스플레이의 기울기를 변화시킨다.
상기 터치패널(113)과 상기 표시부(112)는 사용자를 바라보는 방향에서, 상 하로 배치되며, 상기 표시부(112)가 나타내는 이미지가 위치하는 지점과, 상기 터치패널(113)에서 지정 된 이미지의 위치를 일치시켜야 하므로, 상기 터치패널(113)과 상기 표시부(112) 사이에도 위치 전송 신호를 서로 주고받을 수 있다.
도 5는 일 실시예에 따른 햅틱 디스플레이 장치의 제어방법을 나타낸 순서도이다.
상기 제어 방법은, 3차원 좌표 정보를 포함하는 평면들로 구성된 이미지를 디스플레이에 표시하는 단계(S110), 사용자가 상기 디스플레이 내에서 접촉한 지점에 대응하는 평면의 법선 벡터(normal vector)를 추출하는 단계(S120), 디스플레이의 법선 벡터를 상기 추출된 법선 벡터로 변환하기 위한 변환행렬을 계산하는 단계(S130), 및 상기 변환행렬에 의하여 상기 디스플레이의 기울기를 변화시키는 단계(S150), 를 포함할 수 있다.
도 6은 S130 단계에서 필요한 최소회전각도 변환행렬을 설명하기 위한 그래프이다. 이하 디스플레이의 좌표계를 가로를 x 축, 세로를 y축으로, 화면에서 나오는 수직방향으로 z축으로 설정하고 설명을 진행한다.
디스플레이가 바라보고 있는 법선 벡터 v1을 물체의 법선벡터 v2로 변환시키는 것은 최소회전각도 형태 (shortest rotation angle )로 구하기 위해 쿼터니안 (quaternion; 사원수)을 이용해 변환행렬을 구한다. 4개의 벡터 성분(1x4)으로 기술되는 쿼터니안 q 는 정의에 의해 rotation axis 와 rotation angle 을 기반으로 표현된다. 쿼터니안이 아닌 내적(dot-product) 기반 등의 방법으로 회전 행렬을 구성할 수 있으나 이 경우 그래픽으로(graphical) 구현할 수는 있으나 기계적으로 구현하기 어려운데, 이는 최소회전각도 형태에 기반하지 않으면 자유도의 증가 및 움직임 영역 증가를 초래하기 때문이다.
도 6에 도시되어 있는, 회전축 (rotation axis) 을 u = <u1,u2,u3> 라 하고 회전각을 θ 라고 한다면 위의 회전을 나타내는 q는 다음과 같이 정의된다.
q=<w,x,y,z>=<cos(θ/2), u1*sin(θ/2), u2*sin(θ/2), u3*sin(θ/2)>
도 7은 디스플레이의 법선벡터를 가상 공간에서 접촉되는 평면의 법선 백터로 변환하는 모습을 나타낸 사시도이다.
터치 표면(touch surface) 상에 사용자의 손이 직접 접촉하게 되며, 이 부분은 실제 현실세계에서 발생하는 과정이므로 물리적인 세상(physical world)이다. 또한, 터치 표면 하부에서는 실제 물리적인 평면이 존재하는 것이 아니고, 가상의 공간 내에서 수학적으로 표현된 가상의 평면(virtual mesh) 가 존재하는 공간이므로, 가상의 세상(virtual world)이다.
상기 디스플레이(110)의 표시부(112)에서 투영(projection) 된 이미지에서 사용자가 터치한 부분에 대응하는 평면의 3차원 좌표 정보를 표면 법선 벡터 형태 (surface normal vector)로 추출할 수 있다. 이러한 표면 법선 벡터는 도 7에서 ∇F = v2 로 표시되어 있다.
디스플레이가 바라보고 있는 법선 벡터 v1을 물체의 법선벡터 v2로 변환시키는 것은 최소회전각도 형태 (shortest rotation angle )로 구하기 위해 쿼터니안 (quaternion)을 이용해 변환행렬을 구한다. 이를 4개의 성분으로 기술되는 q로 표현한다. 하단에 기재된 식 (2), (3)은 3차원 회전 변환 벡터 분야에서 일반적으로 사용되는 식이다.
상기 계산하는 단계(S120)에서, 상기 변환 행렬 q는 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되는 3자유도 회전 행렬일 수 있다.
상기 앞서 기술한 벡터 형태의 q를 회전 행렬 형태로 형태를 바꾸어 기술할 수 있다.
현실세계에서 디스플레이의 법선벡터 v1은 x,y,z 좌표 기준으로 지지면에 수직인 방향을 보게 되므로 <0,0,1>의 값을 가지게 설정한다. 또한, 아래와 같이 v1의 x, y 값이 0이되고, 따라서 회전 축의 z 성분이 0이 되기 때문에 아래와 같이 같은 관계식을 이용해 q값을 단순화 시킬 수 있다.
q를 가리키는 행렬 (3)에서, x, y 값에 0을 모두 대입하면, 변환 행렬 Rθ , u 는 다음과 같이 단순화 된다.
위의 R 2는 아래와 같이 행렬의 좌측 상단에서 우측하단으로 내려오는 대각성분을 중심으로 대칭성을 가지는 행렬이 된다. 이 특성을 이용하여 R 2 행렬을 분해 (decomposition) 하는 것이 가능해진다.
상기 계산하는 단계(S140)에서, 상기 변환 행렬은 대칭 형태를 가지고, 롤(roll), 피치(pitch)로 구성되는 두 개의 회전으로 분해(decomposition)될 수 있다.
한편, α를 z축을 중심으로 한 회전인 요(yaw), β를 y축을 중심으로 한 회전인 피치, γ를 x축을 중심으로 한 회전인 롤 (roll) 이라 한다면, 일반적인 정의에 따라 Z-Y-X 오일러 각 컨벤션(Euler angle convention) 으로 회전행렬을 표현할 수 있다.
즉, 일반적으로 롤(roll), 피치(pitch), 요우(yaw)의 회전을 다음과 같이 R3 행렬 형태로 기술할 수 있는데, R 2행렬 또한 아래의 R 3행렬 형태로 기술할 수 있다.
위에서 기술한 R 2의 대칭성을 통해 다음과 같이 일치하는 부분이 있음을 확인 할 수 있다.
롤, 피치 회전 행렬 만을 이용해 만든 행렬 R 4는 다음과 같은데,
R 2의 대칭성에 의해 R 3 (= R 2)의 세번째 열벡터 (column vector), R 4의 세번째 열벡터가 동일하게 된다.
즉 다음의 관계가 있음을 알 수 있다.
일반적으로 회전 행렬의 세번째 열 벡터(Column vector)는 회전의 z축을 가리키므로 주어진 일 실시예에 따른 변환 행렬에서는 롤과 피치 움직임 만으로 가상 평면과 디스플레이 평면이 같은 방향을 가리키도록 할 수 있으며 결과적으로 이를 통해 가상 물체의 기울기를 표현할 수 있게 된다. 즉 R 2, R 3 대신 이와 동일한 방향을 가리키는 R 4 (롤과 피치만의 함수)를 사용함으로써 적은 수의 actuation으로 가상 물체의 기울기를 표현해 낼 수 있게 된다.
즉 2축만의 움직임으로 실제 디스플레이 평면을 가상 평면과 평행하게 설정할 수 있으며, z축을 중심으로한 회전을 사용하지 않아도 구현이 가능하다.
도 8은 평면을 Z-Y-X로 돌린 회전축과 X-Y로 돌린 회전축의 축이 일치함을 나타내는 3차원 그래프이다.
Z-Y-X 로 돌린 회전 축과 X-Y로 돌린 회전축은 축의 x,y 방향 벡터는 틀어져 있으나, z 축이 일치함을 알 수 있다. 즉 3차원 평면에서 같은 평면에 위치한다.
상기 기울기를 변화시키는 단계(S150)에서, 상기 디스플레이는 롤(roll), 피치(pitch) 회전에 따라 두 개의 축에 대한 기울기가 변화될 수 있다.
앞서 기술한 설명을 통해, 상기 변환 행렬은 롤(roll), 피치(pitch)로 구성되는 두 개의 회전으로 분해(decomposition) 되어도 디스플레이평면을 가상물체의 평면과 평행하게 를 표현하는 것이 가능함을 확인할 수 있다.
일 실시예에선, 롤(roll), 피치(pitch) 회전으로 행렬을 분해 (decomposition)했으나, 유사한 방법으로 요우(yaw), 피치(pitch) 또는 요우(yaw)와 롤(roll) 등의 2개의 자유도 회전 행렬로 분해(decomposition) 하는 것이 가능해질 수 있다.
일 실시예에 따르면, 2개의 자유도로 기하 정보를 재현하는 과정을 나타내고 있으므로, 1개의 자유도를 추가하게 되면 추가적인 느낌 생성이 가능할 수 있다. 예를 들어, 롤, 피치 회전으로 기하 정보 생성하고, 추가 요(yaw)의 움직임은 손가락을 문지르는 느낌 발생에 활용할 수 있다.
최근 키넥트 등을 이용한 포인트 클라우드 획득이 용이해 졌고, 마우스 커서 (혹은 터치 되는 지점)의 표면 법선 벡터(surface normal vector)를 예측하는 알고리즘은 어렵지 않게 구현이 가능하다.
응용 실시예로, 실제 물체를 3차원 정보를 포함하는 이미지로 스캐닝 하여 이를, 실제로 사용하고 있는 물건의 동작 상태를 변경하는 장치를 고려해 볼 수 있다. 따라서 실제 주변 환경에서 눈에 보이는 지점의 표면 법선 벡터(surface normal vector)를 구하고 이를 일 실시예에 따른 변환행렬을 통해 움직이는 장치에 적용할 수 있다.
예를 들어, 자동차의 본넷 또는 전면 그릴에 3차원 스캐닝 카메라를 장착하고, 제어부에서 스캔된 이미지를 검색하는 중에 관심 지점에 돌발 상황이 발생하면, 일 실시예에 따른 변환행렬을 이용하여, 운전자가 잡고 있는 핸들이나 추가로 부착된 장치(100 혹은 200)의 각도를 변화 시켜 운전자에게 보이지 않는 물체를 촉각적으로 알릴 수 있다.
일 실시예에 따른 컴퓨터 판독 가능한 기록매체에 따르면, 일 실시예에 따른 햅틱 디스플레이 장치의 제어 방법을 실행하기 위한 프로그램이 기록될 수 있다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현하는 것이 가능하다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의해 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 컴퓨터가 읽을 수 있는 기록매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광데이터 저장장치 등이 있으며, 또한 케리어 웨이브(예를 들어 인터넷을 통한 전송)의 형태로 구현되는 것도 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고, 본 발명을 구현하기 위한 기능적인(functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
본 시스템의 단점은 햅틱 감각 전달을 위한 표면 회전이 view를 방해할수 있다는 점이다. 이를 근본적으로 해결하기는 어려우나, 가상 물체의 회전을 통해 물체와 사용자 view 사이의 각도를 유지시킬 수는 있다. 즉 하드웨어가 회전된 만큼의 반대방향으로 물체를 회전 시킴으로서 달성이 가능하다.
이상, 본 발명의 일실시예를 참조하여 설명했지만, 본 발명이 이것에 한정되지는 않으며, 다양한 변형 및 응용이 가능하다. 즉, 본 발명의 요지를 일탈하지 않는 범위에서 많은 변형이 가능한 것을 당업자는 용이하게 이해할 수 있을 것이다.
100, 200: 햅틱 디스플레이 장치
110, 210: 디스플레이
111: 보호창
112: 표시부
113: 터치 패널
120: 구동장치
125: 선형 모터
224 제 2지지대
225: 제1 지지대
226; 제1 모터
227: 제2 모터
228: 연결로드
110, 210: 디스플레이
111: 보호창
112: 표시부
113: 터치 패널
120: 구동장치
125: 선형 모터
224 제 2지지대
225: 제1 지지대
226; 제1 모터
227: 제2 모터
228: 연결로드
Claims (13)
- 3차원 법선 벡터 정보를 포함하는 적어도 하나 이상의 평면을 포함하는 이미지를 표시하는 표시부와, 상기 표시부 상에 설치되는 터치패널을 포함하는 디스플레이;
상기 디스플레이에 연결되어 상기 디스플레이의 기울기를 변화시키는 구동장치; 및
상기 적어도 하나 이상의 평면 중, 상기 터치패널에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터 정보에 기초하여 상기 구동장치를 제어하는 제어부를 포함하는 햅틱 디스플레이 장치.
- 제1항에 있어서,
상기 표시부 및 터치패널을 감싸며, 상기 구동장치에 연결되는 커버를 더 포함하는 햅틱 디스플레이 장치.
- 제1항에 있어서,
상기 제어부는 디스플레이의 법선 벡터로부터 상기 터치패널에서 접촉된 지점에 대응하는 평면의 3차원 법선 벡터로 변환하는 변환행렬로부터 상기 구동장치를 제어하는 햅틱 디스플레이 장치.
- 제3항에 있어서,
상기 변환 행렬은 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되고,
상기 변환 행렬은 선택된 롤(roll), 피치(pitch) 두 개의 회전으로 분해(decomposition)되는 2자유도 회전 행렬인 햅틱 디스플레이 장치
- 제2항에 있어서,
상기 구동장치는 세 개의 선형 모터를 포함하며, 상기 세 개의 선형 모터의 끝 단은 상기 커버에 대하여 각각 회전 가능하게 연결되는 햅틱 디스플레이 장치. - 제1항에 있어서,
상기 구동장치는,
상기 디스플레이의 가로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제1 모터;
상기 제1 모터가 고정되는 제1 지지대;
상기 디스플레이의 가로 방향에 수직인 방향인 세로 방향을 회전축으로 하여 상기 디스플레이를 회전시키는 제2 모터;
상기 제2 모터가 고정되는 제2 지지대; 및
상기 제1 지지대와 제2 지지대를 사이를 연결하는 연결로드;
를 포함하는, 햅틱 디스플레이 장치.
- 제6항에 있어서,
상기 제1 모터 및 제2 모터의 회전축이 상기 디스플레이의 중심을 지나가도록 상기 제1 모터 및 제2 모터가 배치되는 햅틱 디스플레이 장치
- 3차원 좌표 정보를 포함하는 평면들로 구성된 가상물체를 디스플레이에 표시하는 단계;
사용자가 상기 디스플레이 내에서 접촉한 지점에 대응하는 평면의 법선 벡터(normal vector)를 추출하는 단계;
디스플레이의 법선 벡터를 상기 추출된 법선 벡터로 변환하기 위해 최소회전에 근거하여 변환행렬을 계산하는 단계; 및
상기 변환행렬에 의하여 상기 디스플레이의 기울기를 변화시키는 단계;
를 포함하는 햅틱 디스플레이 장치의 제어 방법.
- 제 8항에 있어서,
상기 계산하는 단계에서, 상기 변환 행렬은 롤(roll), 피치(pitch), 요우(yaw) 회전으로 구성되는 3자유도 회전 행렬인 햅틱 디스플레이 장치의 제어 방법.
- 제 9항에 있어서,
상기 계산하는 단계에서, 상기 변환 행렬은 상기 롤(roll), 피치(pitch), 요우(yaw) 회전 중 선택된 두 개의 회전으로 분해(decomposition)되는 2자유도 회전 행렬인 햅틱 디스플레이 장치의 제어 방법.
- 제10항에 있어서,
상기 기울기를 변화시키는 단계에서, 상기 디스플레이는 상기 선택된 두 개의 회전에 따라 두 개의 축에 대한 기울기가 변화되는 햅틱 디스플레이 장치의 제어 방법.
- 제8항에 있어서,
상기 기울기를 변화시키는 단계에서, 상기 디스플레이는 상기 디스플레이의 법선 벡터를 중심으로 회전하지 않는 햅틱 디스플레이 장치의 제어 방법.
- 제8항 내지 제12항 중 어느 한 항에 따른 햅틱 디스플레이 장치의 제어 방법을 실행하기 위한 프로그램이 기록된 컴퓨터 판독 가능한 기록매체
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140195614A KR101605977B1 (ko) | 2014-12-31 | 2014-12-31 | 햅틱 디스플레이 장치 및 이를 최소한의 자유도로 제어하기 위한 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020140195614A KR101605977B1 (ko) | 2014-12-31 | 2014-12-31 | 햅틱 디스플레이 장치 및 이를 최소한의 자유도로 제어하기 위한 방법 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR101605977B1 true KR101605977B1 (ko) | 2016-03-23 |
Family
ID=55645421
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020140195614A KR101605977B1 (ko) | 2014-12-31 | 2014-12-31 | 햅틱 디스플레이 장치 및 이를 최소한의 자유도로 제어하기 위한 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR101605977B1 (ko) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230131994A (ko) * | 2022-03-07 | 2023-09-15 | 현대자동차주식회사 | 차량 및 그 제어 방법 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007328781A (ja) | 2006-06-07 | 2007-12-20 | Avago Technologies General Ip (Singapore) Private Ltd | インタラクティブな3次元位置追跡のためのシステム及び方法 |
-
2014
- 2014-12-31 KR KR1020140195614A patent/KR101605977B1/ko active IP Right Grant
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2007328781A (ja) | 2006-06-07 | 2007-12-20 | Avago Technologies General Ip (Singapore) Private Ltd | インタラクティブな3次元位置追跡のためのシステム及び方法 |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20230131994A (ko) * | 2022-03-07 | 2023-09-15 | 현대자동차주식회사 | 차량 및 그 제어 방법 |
KR102657380B1 (ko) * | 2022-03-07 | 2024-04-17 | 현대자동차주식회사 | 차량 및 그 제어 방법 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11221730B2 (en) | Input device for VR/AR applications | |
US11086416B2 (en) | Input device for use in an augmented/virtual reality environment | |
US7626571B2 (en) | Workspace expansion controller for human interface systems | |
US20190217196A1 (en) | Haptic sensations as a function of eye gaze | |
Kasahara et al. | exTouch: spatially-aware embodied manipulation of actuated objects mediated by augmented reality | |
US20150097777A1 (en) | 3D Motion Interface Systems and Methods | |
Stuerzlinger et al. | The value of constraints for 3D user interfaces | |
JP6039562B2 (ja) | 3次元触覚伝達装置、方法及びシステム | |
KR20110102365A (ko) | 3차원 컨텐츠와 상호 작용하기 위한 이머시브 표시 시스템 | |
US20090231272A1 (en) | Virtual hand: a new 3-d haptic interface and system for virtual environments | |
Meli et al. | Wearable haptics and hand tracking via an rgb-d camera for immersive tactile experiences | |
Fitzgerald et al. | Mediate: A spatial tangible interface for mixed reality | |
JP7390541B2 (ja) | アニメーション制作システム | |
Park et al. | New design and comparative analysis of smartwatch metaphor-based hand gestures for 3D navigation in mobile virtual reality | |
JP2021193613A (ja) | アニメーション制作方法 | |
Kataoka et al. | A new interactive haptic device for getting physical contact feeling of virtual objects | |
KR101605977B1 (ko) | 햅틱 디스플레이 장치 및 이를 최소한의 자유도로 제어하기 위한 방법 | |
Kamuro et al. | 3D Haptic modeling system using ungrounded pen-shaped kinesthetic display | |
Matsumaru et al. | Three-dimensional aerial image interface, 3DAII | |
JP2014052975A (ja) | 触覚・力覚提示デバイスとそれを用いた触覚・力覚提示システム | |
JP2022153476A (ja) | アニメーション制作システム | |
JP2782428B2 (ja) | 仮想物体操作装置 | |
Gomi et al. | UbiSurface: A Robotic Touch Surface for Supporting Mid-air Planar Interactions in Room-Scale VR | |
van Deurzen et al. | Hapticpanel: An open system to render haptic interfaces in virtual reality for manufacturing industry | |
Kunert et al. | Facilitating system control in ray-based interaction tasks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20190304 Year of fee payment: 4 |