KR102245898B1 - Method and apparatus of providing tactile feedback - Google Patents

Method and apparatus of providing tactile feedback Download PDF

Info

Publication number
KR102245898B1
KR102245898B1 KR1020190077184A KR20190077184A KR102245898B1 KR 102245898 B1 KR102245898 B1 KR 102245898B1 KR 1020190077184 A KR1020190077184 A KR 1020190077184A KR 20190077184 A KR20190077184 A KR 20190077184A KR 102245898 B1 KR102245898 B1 KR 102245898B1
Authority
KR
South Korea
Prior art keywords
virtual
force
point
particle
tactile feedback
Prior art date
Application number
KR1020190077184A
Other languages
Korean (ko)
Other versions
KR20210001296A (en
Inventor
박진아
장재현
Original Assignee
한국과학기술원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국과학기술원 filed Critical 한국과학기술원
Priority to KR1020190077184A priority Critical patent/KR102245898B1/en
Publication of KR20210001296A publication Critical patent/KR20210001296A/en
Application granted granted Critical
Publication of KR102245898B1 publication Critical patent/KR102245898B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/016Input arrangements with force or tactile feedback as computer generated output to the user
    • BPERFORMING OPERATIONS; TRANSPORTING
    • B06GENERATING OR TRANSMITTING MECHANICAL VIBRATIONS IN GENERAL
    • B06BMETHODS OR APPARATUS FOR GENERATING OR TRANSMITTING MECHANICAL VIBRATIONS OF INFRASONIC, SONIC, OR ULTRASONIC FREQUENCY, e.g. FOR PERFORMING MECHANICAL WORK IN GENERAL
    • B06B1/00Methods or apparatus for generating mechanical vibrations of infrasonic, sonic, or ultrasonic frequency
    • B06B1/02Methods or apparatus for generating mechanical vibrations of infrasonic, sonic, or ultrasonic frequency making use of electrical energy

Abstract

촉감 피드백 제공 방법 및 장치가 개시된다. 일 실시예에 따른 촉감 피드백 제공 방법은, 객체를 감지하는 단계와, 감지 결과에 기초하여 상기 객체의 형상을 렌더링(rendering)하는 단계와, 렌더링된 형상에 기초하여 가상 강체 입자(virtual rigid body particle)를 생성하는 단계와, 상기 가상 강체 입자와 가상 유체 입자(virtual fluid particle) 간의 상호 작용(interaction)을 분석하여 상기 객체 상에 상기 가상 유체의 힘(force)이 작용하는 집중점을 획득하는 단계를 포함한다.A method and apparatus for providing tactile feedback are disclosed. A method of providing tactile feedback according to an embodiment includes the steps of detecting an object, rendering the shape of the object based on the detection result, and virtual rigid body particles based on the rendered shape. ), and analyzing an interaction between the virtual rigid particle and the virtual fluid particle to obtain a focus point at which the force of the virtual fluid acts on the object. Includes.

Description

촉감 피드백 제공 방법 및 장치{METHOD AND APPARATUS OF PROVIDING TACTILE FEEDBACK}Method and apparatus for providing tactile feedback {METHOD AND APPARATUS OF PROVIDING TACTILE FEEDBACK}

아래 실시예들은 촉감 피드백 제공 방법 및 장치에 관한 것이다.The following embodiments relate to a method and apparatus for providing tactile feedback.

현실 공간에서 사용자는 도구를 이용하여 유체와 상호작용을 하거나 혹은 직접 신체를 유체에 접촉시켜 상호작용 한다. 가상 환경에서도 사용자가 위와 같은 상호 작용을 가능케 하기 위해서는 가상 공간 내 물체와 유체의 상호작용을 계산하여 물리량을 실시간으로 반영할 수 있는 물리 기반 시뮬레이션 기술 및 물리 기반 시뮬레이션에 기반하여 시각 피드백을 제공하는 시각 렌더링 기술과 역감 혹은 촉감 피드백을 제공하는 햅틱 렌더링 기술이 필요하다.In a real space, a user interacts with a fluid using a tool, or interacts by directly contacting the body with the fluid. In order to enable the user to interact in a virtual environment as above, physics-based simulation technology that can reflect physical quantities in real time by calculating interactions between objects and fluids in virtual space, and visual feedback based on physics-based simulations. There is a need for rendering technology and haptic rendering technology that provides inverse or tactile feedback.

특히 상호 작용이 개입하는 가상 환경 시뮬레이션의 경우 상호작용 결과를 역감 혹은 촉감으로 전달하는 햅틱 렌더링 기술은 더욱 중요하다. In particular, in the case of a virtual environment simulation in which interaction is involved, a haptic rendering technology that delivers the result of the interaction through a sense of force or touch is more important.

가상 환경 내 물체와 유체의 상호작용을 물리적으로 계산하기 위해 가상 공간 내 물체들을 입자로 변환하여 개별 입자에 대해 연산하는 통합 입자 모델 기반 시뮬레이션들이 계속 제안되었고 특히 햅틱 렌더링 기술 분야에서는 6-자유도의 출력을 통해 사용자에게 역감 피드백을 제공하는 기법들이 주로 제안되어 왔다.In order to physically calculate the interaction between an object and a fluid in a virtual environment, simulations based on an integrated particle model that convert objects in a virtual space into particles and compute on individual particles have been continuously proposed.In particular, in the field of haptic rendering technology, the output of 6-degree of freedom Techniques for providing embarrassment feedback to users have been mainly proposed.

이러한 방식은 개별 강체 입자에 작용하는 유체 힘을 계산하여 무게 중심에서 합력과 돌림힘을 계산한 후 햅틱 인터페이스에 해당 힘 정보를 제공한다. 여기서, 강체를 한 점으로 간주하여 햅틱 피드백이 제공되기 때문에 도구를 사용하는 시나리오에 적합하다.This method calculates the fluid force acting on individual rigid particles, calculates the resultant force and the rotation force at the center of gravity, and then provides the corresponding force information to the haptic interface. Here, since haptic feedback is provided by considering a rigid body as a point, it is suitable for a scenario in which a tool is used.

하지만 신체와 유체가 접촉하는 시나리오에 대해서는 무게 중심에서 합력과 돌림힘을 고려하는 6-자유도 강체-유체 햅틱 피드백 제공 기법은 강체의 표면에서 유체의 흐름 정보와 같이 강체와 유체가 충돌하는 해당 표면의 정보를 전달하는 것에 한계를 가진다.However, for the scenario in which the body and the fluid are in contact, the 6-degree-of-freedom rigid-fluid haptic feedback providing technique that considers the resultant force and the rotational force at the center of gravity is the same as the flow information of the fluid at the surface of the rigid body. It has limitations in delivering information.

실시예들은 가상의 강체-유체 간의 상호 작용을 분석하여 비접촉식 촉감 피드백을 제공할 수 있다.Embodiments may provide non-contact tactile feedback by analyzing an interaction between a virtual rigid body and a fluid.

일 실시예에 따른 촉감 피드백 제공 방법은, 객체를 감지하는 단계와, 감지 결과에 기초하여 상기 객체의 형상을 렌더링(rendering)하는 단계와, 렌더링된 형상에 기초하여 가상 강체 입자(virtual rigid body particle)를 생성하는 단계와, 상기 가상 강체 입자와 가상 유체 입자(virtual fluid particle) 간의 상호 작용(interaction)을 분석하여 상기 객체 상에 상기 가상 유체의 힘(force)이 작용하는 집중점을 획득하는 단계를 포함한다.A method of providing tactile feedback according to an embodiment includes the steps of detecting an object, rendering the shape of the object based on the detection result, and virtual rigid body particles based on the rendered shape. ), and analyzing an interaction between the virtual rigid particle and the virtual fluid particle to obtain a focus point at which the force of the virtual fluid acts on the object. Includes.

상기 촉감 피드백 제공 방법은, 집중점에 기초하여 상기 객체에 촉감 피드백을 제공하는 단계를 더 포함할 수 있다.The method of providing tactile feedback may further include providing tactile feedback to the object based on a focus point.

상기 제공하는 단계는, 상기 집중점에 기초하여 파동의 특성을 결정하는 단계와, 상기 파동을 상기 객체에 출력함으로써 상기 촉감 피드백을 제공하는 단계를 포함할 수 있다.The providing may include determining a characteristic of a wave based on the concentration point, and providing the tactile feedback by outputting the wave to the object.

상기 렌더링하는 단계는, 상기 객체를 감지하는 위치로부터 상기 객체의 표면까지의 깊이 정보에 기초하여 상기 객체에 대한 깊이 텍스쳐로 상기 형상을 렌더링하는 단계를 포함할 수 있다.The rendering may include rendering the shape as a depth texture for the object based on depth information from a position detecting the object to a surface of the object.

상기 가상 강체 입자를 생성하는 단계는, 상기 랜더링된 객체에 기초하여 상기 객체의 표면의 일부에 대응하는 가상 강체 입자를 생성하는 단계를 포함할 수 있다.The generating of the virtual rigid particle may include generating a virtual rigid particle corresponding to a part of the surface of the object based on the rendered object.

상기 집중점을 획득하는 단계는, 상기 가상 강체 입자 및 상기 가상 유체 입자 간의 입자 시뮬레이션을 수행하여 상기 가상 강체 입자에 작용하는 힘 배열을 생성하는 단계와, 상기 힘 배열에 기초하여 상기 집중점을 획득하는 단계를 포함할 수 있다.The step of obtaining the focus point may include generating a force array acting on the virtual rigid particle by performing particle simulation between the virtual rigid particle and the virtual fluid particle, and obtaining the focus point based on the force array It may include the step of.

상기 힘 배열을 생성하는 단계는, 상기 가상 강체 입자와 상기 가상 유체 입자 사이에 작용하는 힘을 계산하는 단계와, 상기 힘에 기초하여 상기 가상 유체 입자의 위치를 계산하는 단계와, 상기 가상 유체 입자의 위치 및 상기 힘에 기초하여 상기 힘 배열을 생성하는 단계를 포함할 수 있다.The generating of the force array includes calculating a force acting between the virtual rigid particle and the virtual fluid particle, calculating a position of the virtual fluid particle based on the force, and the virtual fluid particle And generating the force arrangement based on the position of and the force.

상기 힘 배열에 기초하여 상기 집중점을 획득하는 단계는, 상기 힘 배열에 기초하여 최대 힘 지점을 도출하는 단계와, 상기 최대 힘 지점에 기초하여 가상 집중점을 계산하는 단계와, 상기 가상 집중점을 상기 집중점으로 변환하는 단계를 포함할 수 있다.The step of obtaining the focus point based on the force arrangement includes: deriving a maximum force point based on the force arrangement, calculating a virtual focus point based on the maximum force point, and the virtual focus point It may include the step of converting to the concentration point.

상기 힘 배열에 기초하여 최대 힘 지점을 도출하는 단계는, 상기 힘 배열 중에서 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정하는 단계 또는 상기 힘 배열 중에서 지역 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정하는 단계를 포함할 수 있다.The step of deriving a maximum force point based on the force arrangement may include determining a point at which a maximum force acts in the force array as the maximum force point or a point at which a local maximum force acts in the force array is the maximum force. It may include the step of determining the point.

상기 가상 집중점을 계산하는 단계는, 상기 최대 힘 지점에 기초하여 상기 가상 집중점의 위치, 상기 가상 집중점에 작용하는 힘의 크기 및 상기 가상 집중점에 대응하는 변조 주파수 중 적어도 하나를 계산하는 단계를 포함할 수 있다.The calculating of the virtual focus point may include calculating at least one of a location of the virtual focus point, a force acting on the virtual focus point, and a modulation frequency corresponding to the virtual focus point based on the maximum force point. It may include steps.

일 실시예에 따른 촉감 피드백 제공 장치는, 객체를 감지하는 센서와, 감지 결과에 기초하여 상기 객체의 형상을 렌더링하고, 렌더링된 형상에 기초하여 가상 강체 입자를 생성하고, 상기 가상 강체 입자와 가상 유체 입자 간의 상호 작용을 분석하여 상기 객체 상에 상기 가상 유체의 힘이 작용하는 집중점을 획득하는 프로세서를 포함한다.The apparatus for providing tactile feedback according to an embodiment includes a sensor for detecting an object, rendering a shape of the object based on a detection result, generating a virtual rigid particle based on the rendered shape, and generating a virtual rigid particle and the virtual rigid particle And a processor that analyzes an interaction between fluid particles and obtains a concentration point at which the force of the virtual fluid acts on the object.

상기 촉감 피드백 제공 장치는, 집중점에 기초하여 상기 객체에 촉감 피드백을 제공하는 송신기를 더 포함할 수 있다.The apparatus for providing tactile feedback may further include a transmitter that provides tactile feedback to the object based on a focus point.

상기 송신기는, 상기 집중점에 기초하여 파동의 특성을 결정하고, 상기 파동을 상기 객체에 출력함으로써 상기 촉감 피드백을 제공할 수 있다.The transmitter may provide the tactile feedback by determining a characteristic of a wave based on the concentration point and outputting the wave to the object.

상기 프로세서는, 상기 객체를 감지하는 위치로부터 상기 객체의 표면까지의 깊이 정보에 기초하여 상기 객체에 대한 깊이 텍스쳐로 상기 형상을 렌더링할 수 있다.The processor may render the shape as a depth texture for the object based on depth information from a position sensing the object to a surface of the object.

상기 프로세서는, 상기 랜더링된 객체에 기초하여 상기 객체의 표면의 일부에 대응하는 가상 강체 입자를 생성할 수 있다.The processor may generate virtual rigid particles corresponding to a part of the surface of the object based on the rendered object.

상기 프로세서는, 상기 가상 강체 입자 및 상기 가상 유체 입자 간의 입자 시뮬레이션을 수행하여 상기 가상 강체 입자에 작용하는 힘 배열을 생성하고, 상기 힘 배열에 기초하여 상기 집중점을 획득할 수 있다.The processor may generate a force array acting on the virtual rigid particle by performing particle simulation between the virtual rigid particle and the virtual fluid particle, and obtain the focus point based on the force array.

상기 프로세서는, 상기 가상 강체 입자와 상기 가상 유체 입자 사이에 작용하는 힘을 계산하고, 상기 힘에 기초하여 상기 가상 유체 입자의 위치를 계산하고, 상기 가상 유체 입자의 위치 및 상기 힘에 기초하여 상기 힘 배열을 생성할 수 있다.The processor calculates a force acting between the virtual rigid particle and the virtual fluid particle, calculates a position of the virtual fluid particle based on the force, and calculates the position of the virtual fluid particle based on the force and the position of the virtual fluid particle. Can generate force arrays.

상기 프로세서는, 상기 힘 배열에 기초하여 최대 힘 지점을 도출하고, 상기 최대 힘 지점에 기초하여 가상 집중점을 계산하고, 상기 가상 집중점을 상기 집중점으로 변환할 수 있다.The processor may derive a maximum force point based on the force arrangement, calculate a virtual focus point based on the maximum force point, and convert the virtual focus point into the focus point.

상기 프로세서는, 상기 힘 배열 중에서 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정하거나, 상기 힘 배열 중에서 지역 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정할 수 있다.The processor may determine a point in the force arrangement where the maximum force acts as the maximum force point, or determine a point in the force array where the local maximum force acts as the maximum force point.

상기 프로세서는, 상기 최대 힘 지점에 기초하여 상기 가상 집중점의 위치, 상기 가상 집중점에 작용하는 힘의 크기 및 상기 가상 집중점에 대응하는 변조 주파수 중 적어도 하나를 계산할 수 있다.The processor may calculate at least one of a location of the virtual focus point, a force acting on the virtual focus point, and a modulation frequency corresponding to the virtual focus point based on the maximum force point.

도 1은 일 실시예에 따른 촉감 피드백 제공 장치의 개략적인 블록도를 나타낸다.
도 2a는 도 1에 도시된 촉감 피드백 제공 장치의 구현의 예를 나타낸다.
도 2b는 도 2a에 도시된 촉감 피드백 제공 장치의 사진을 나타낸다.
도 3은 도 1에 도시된 프로세서 및 송신기의 동작을 나타낸다.
도 4는 도 1에 도시된 송신기의 예를 나타낸다.
도 5는 도 3에 도시된 가상 입력/물체 제어기 및 그래픽 렌더러의 동작의 예를 나타낸다.
도 6은 도 1에 도시된 프로세서가 렌더링하는 영역의 예를 나타낸다.
도 7은 도 3에 도시된 송신기, 집중점 계산기 및 입자 시뮬레이터의 동작의 예를 나타낸다.
도 8은 도 1에 도시된 프로세서에 의해 생성된 강체 입자의 예를 나타낸다.
도 9는 객체 상의 집중점을 설명하기 위한 도면이다.
도 10은 도 3의 집중점 계산기가 집중점을 계산하는 동작을 설명하기 위한 그래프이다.
도 11은 복수의 집중점을 할당하는 방법의 예를 나타낸다.
도 12는 집중점에 대한 변조 주파수를 제어하는 동작의 예를 나타낸다.
도 13a는 도 3에 도시된 시뮬레이터의 시뮬레이션 결과의 예를 나타낸다.
도 13b는 가상 강체 입자에 작용하는 힘의 분포를 시각화한 예를 나타낸다.
도 14는 도 1에 도시된 촉감 피드백 제공 장치의 동작의 순서도를 나타낸다.
1 is a schematic block diagram of an apparatus for providing tactile feedback according to an exemplary embodiment.
2A shows an example of an implementation of the apparatus for providing tactile feedback shown in FIG. 1.
2B is a photograph of the apparatus for providing tactile feedback shown in FIG. 2A.
3 shows the operation of the processor and the transmitter shown in FIG. 1.
4 shows an example of the transmitter shown in FIG. 1.
5 shows an example of the operation of the virtual input/object controller and the graphic renderer shown in FIG. 3.
6 shows an example of an area rendered by the processor shown in FIG. 1.
7 shows an example of operations of the transmitter, the focus point calculator, and the particle simulator shown in FIG. 3.
8 shows an example of a rigid particle generated by the processor shown in FIG. 1.
9 is a diagram for explaining a focus point on an object.
10 is a graph for explaining an operation of calculating the concentration point by the concentration point calculator of FIG. 3.
11 shows an example of a method of allocating a plurality of focus points.
12 shows an example of an operation of controlling a modulation frequency for a focus point.
13A shows an example of a simulation result of the simulator shown in FIG. 3.
13B shows an example of visualizing the distribution of force acting on a virtual rigid particle.
14 is a flowchart illustrating an operation of the apparatus for providing tactile feedback shown in FIG. 1.

이하에서, 첨부된 도면을 참조하여 실시예들을 상세하게 설명한다. 그러나, 실시예들에는 다양한 변경이 가해질 수 있어서 특허출원의 권리 범위가 이러한 실시예들에 의해 제한되거나 한정되는 것은 아니다. 실시예들에 대한 모든 변경, 균등물 내지 대체물이 권리 범위에 포함되는 것으로 이해되어야 한다.Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. However, since various changes may be made to the embodiments, the scope of the patent application is not limited or limited by these embodiments. It is to be understood that all changes, equivalents, or substitutes to the embodiments are included in the scope of the rights.

실시예에서 사용한 용어는 단지 설명을 목적으로 사용된 것으로, 한정하려는 의도로 해석되어서는 안된다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 본 명세서에서, "포함하다" 또는 "가지다" 등의 용어는 명세서 상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.The terms used in the examples are used for illustrative purposes only and should not be construed as limiting. Singular expressions include plural expressions unless the context clearly indicates otherwise. In the present specification, terms such as "comprise" or "have" are intended to designate the presence of features, numbers, steps, actions, components, parts, or combinations thereof described in the specification, but one or more other features. It is to be understood that the presence or addition of elements or numbers, steps, actions, components, parts, or combinations thereof does not preclude in advance.

제1 또는 제2등의 용어를 다양한 구성요소들을 설명하는데 사용될 수 있지만, 구성요소들은 용어들에 의해서 한정되어서는 안 된다. 용어들은 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만, 예를 들어 실시예의 개념에 따른 권리 범위로부터 이탈되지 않은 채, 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소는 제1 구성요소로도 명명될 수 있다. Terms such as first or second may be used to describe various elements, but the elements should not be limited by terms. The terms are only for the purpose of distinguishing one component from other components, for example, without departing from the scope of rights according to the concept of the embodiment, the first component may be named as the second component, and similarly The second component may also be referred to as a first component.

다르게 정의되지 않는 한, 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 모든 용어들은 실시예가 속하는 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가지고 있다. 일반적으로 사용되는 사전에 정의되어 있는 것과 같은 용어들은 관련 기술의 문맥 상 가지는 의미와 일치하는 의미를 가지는 것으로 해석되어야 하며, 본 출원에서 명백하게 정의하지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다.Unless otherwise defined, all terms used herein, including technical or scientific terms, have the same meaning as commonly understood by one of ordinary skill in the art to which the embodiment belongs. Terms as defined in a commonly used dictionary should be interpreted as having a meaning consistent with the meaning in the context of the related technology, and should not be interpreted as an ideal or excessively formal meaning unless explicitly defined in the present application. Does not.

또한, 첨부 도면을 참조하여 설명함에 있어, 도면 부호에 관계없이 동일한 구성 요소는 동일한 참조부호를 부여하고 이에 대한 중복되는 설명은 생략하기로 한다. 실시예를 설명함에 있어서 관련된 공지 기술에 대한 구체적인 설명이 실시예의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우 그 상세한 설명을 생략한다.In addition, in the description with reference to the accompanying drawings, the same reference numerals are assigned to the same components regardless of the reference numerals, and redundant descriptions thereof will be omitted. In describing the embodiments, when it is determined that a detailed description of related known technologies may unnecessarily obscure the subject matter of the embodiments, the detailed description thereof will be omitted.

본 명세서에서의 모듈(module)은 본 명세서에서 설명되는 각 명칭에 따른 기능과 동작을 수행할 수 있는 하드웨어를 의미할 수도 있고, 특정 기능과 동작을 수행할 수 있는 컴퓨터 프로그램 코드를 의미할 수도 있고, 또는 특정 기능과 동작을 수행시킬 수 있는 컴퓨터 프로그램 코드가 탑재된 전자적 기록 매체, 예를 들어 프로세서 또는 마이크로 프로세서를 의미할 수 있다.A module in the present specification may mean hardware capable of performing functions and operations according to each name described in the present specification, or may mean a computer program code capable of performing a specific function and operation. Or, it may mean an electronic recording medium, for example, a processor or a microprocessor in which a computer program code capable of performing a specific function and operation is mounted.

다시 말해, 모듈이란 본 발명의 기술적 사상을 수행하기 위한 하드웨어 및/또는 상기 하드웨어를 구동하기 위한 소프트웨어의 기능적 및/또는 구조적 결합을 의미할 수 있다.In other words, the module may mean a functional and/or structural combination of hardware for performing the technical idea of the present invention and/or software for driving the hardware.

도 1은 일 실시예에 따른 촉감 피드백 제공 장치의 개략적인 블록도를 나타낸다.1 is a schematic block diagram of an apparatus for providing tactile feedback according to an exemplary embodiment.

도 1을 참조하면, 촉감 피드백 제공 장치(10)는 객체에게 촉감(또는 촉각) 피드백(tactile feedback)을 제공할 수 있다. 촉감 피드백 제공 장치(10)는 객체에게 접촉하지 않은 상태로 촉감 피드백을 제공할 수 있다.Referring to FIG. 1, the apparatus 10 for providing tactile feedback may provide tactile (or tactile) feedback to an object. The tactile feedback providing apparatus 10 may provide tactile feedback without contacting an object.

객체는 촉감 피드백을 제공할 대상 및/또는 형상을 렌더링하기 위한 대상을 의미할 수 있다. 객체는 강체로 구성될 수 있다. 예를 들어, 객체는 사람 및/또는 사람의 신체의 일부를 포함할 수 있다.The object may mean an object to provide tactile feedback and/or an object to render a shape. Objects can be composed of rigid bodies. For example, an object may include a person and/or a part of a person's body.

촉감 피드백 제공 장치(10)는 객체의 형상을 렌더링하고, 렌더링된 형상에 기초한 강체(rigid body)-유체(fluid) 간의 상호작용(interaction)을 분석하여 객체에게 촉감 피드백을 제공하는 햅틱 렌더링(haptic rendering)을 수행할 수 있다.The tactile feedback providing device 10 renders a shape of an object, analyzes an interaction between a rigid body and a fluid based on the rendered shape, and provides tactile feedback to the object. rendering).

촉감 피드백 제공 장치(10)는 가상 환경에서 물리 기반 시뮬레이션을 통한 가상 강체와 가상 유체 간 상호작용을 분석하여 촉감 피드백을 비접촉식 햅틱 인터페이스를 통해 제공할 수 있다.The apparatus 10 for providing tactile feedback may analyze an interaction between a virtual rigid body and a virtual fluid through a physics-based simulation in a virtual environment and provide tactile feedback through a non-contact haptic interface.

촉감 피드백 제공 장치(10)는 가상 환경 내의 강체와 유체의 상호작용을 분석하고, 비접촉식 햅틱 인터페이스를 통해 실시간으로 촉감 피드백을 제공할 수 있다. 촉감 피드백 제공 장치(10)는 햅틱 인터페이스가 생성할 수 있는 촉감 피드백 범위에 대하여 강체 입자를 생성할 수 있고, 강체-유체 간의 상호작용 결과에 따라 촉감 피드백을 제공하기 위해 집중점을 생성할 수 있다.The tactile feedback providing apparatus 10 may analyze an interaction between a rigid body and a fluid in a virtual environment and provide tactile feedback in real time through a non-contact haptic interface. The tactile feedback providing device 10 may generate rigid particles for a tactile feedback range that can be generated by a haptic interface, and may generate a focus point to provide tactile feedback according to a result of a rigid-fluid interaction. .

촉감 피드백 제공 장치(10)는 햅틱 장치와 직접 접촉하지 않고 사람의 신체에 촉감 피드백을 전달할 수 있다. 촉감 피드백 제공 장치(10)는 초음파 트랜스듀서 어레이 또는 레이저 등을 이용하여 신체에 진동 피드백을 출력함으로써 접촉식 장치에 비해서 햅틱 렌더링 공간 안에서 사용자가 자유롭게 자세를 취하면서도 촉감 피드백을 느낄 수 있게 할 수 있다.The tactile feedback providing device 10 may transmit tactile feedback to a human body without directly contacting the haptic device. The tactile feedback providing device 10 outputs vibration feedback to the body using an ultrasonic transducer array or a laser, so that the user can feel the tactile feedback while freely posing in a haptic rendering space compared to a contact type device. .

이를 통해, 촉감 피드백 제공 장치(10)는 유체 시뮬레이션이 포함된 몰입형 가상현실 어플리케이션에서 더 높은 현실감을 제공할 수 있다.Through this, the tactile feedback providing device 10 may provide a higher sense of reality in an immersive virtual reality application including a fluid simulation.

촉감 피드백 제공 장치(10)는 IoT 장치, Machine-type 통신 장치 또는 휴대용 전자 장치 등으로 구현될 수 있다.The tactile feedback providing device 10 may be implemented as an IoT device, a machine-type communication device, or a portable electronic device.

휴대용 전자 장치는 랩탑(laptop) 컴퓨터, 이동 전화기, 스마트 폰(smart phone), 태블릿(tablet) PC, 모바일 인터넷 디바이스(mobile internet device(MID)), PDA(personal digital assistant), EDA(enterprise digital assistant), 디지털 스틸 카메라(digital still camera), 디지털 비디오 카메라(digital video camera), PMP(portable multimedia player), PND(personal navigation device 또는 portable navigation device), 휴대용 게임 콘솔(handheld game console), e-북(e-book), 스마트 디바이스(smart device)로 구현될 수 있다. 예를 들어, 스마트 디바이스는 스마트 워치(smart watch) 또는 스마트 밴드(smart band)로 구현될 수 있다.Portable electronic devices include a laptop computer, a mobile phone, a smart phone, a tablet PC, a mobile internet device (MID), a personal digital assistant (PDA), an enterprise digital assistant (EDA). ), digital still camera, digital video camera, portable multimedia player (PMP), personal navigation device or portable navigation device (PND), handheld game console, e-book (e-book), it can be implemented as a smart device (smart device). For example, the smart device may be implemented as a smart watch or a smart band.

촉감 피드백 제공 장치(10)는 센서(100), 프로세서(200) 및 송신기(300)를 포함한다. 촉감 피드백 제공 장치(10)는 메모리(400) 및 디스플레이(500)를 더 포함할 수 있다.The tactile feedback providing apparatus 10 includes a sensor 100, a processor 200, and a transmitter 300. The apparatus 10 for providing tactile feedback may further include a memory 400 and a display 500.

센서(100)는 객체를 감지할 수 있다. 센서(100)는 객체의 움직임을 감지할 수 있다. 예를 들어, 센서(100)는 카메라, 모션 센서를 포함할 수 있다. 센서(100)는 감지한 객체의 움직임을 프로세서(200)로 출력할 수 있다.The sensor 100 may detect an object. The sensor 100 may detect movement of an object. For example, the sensor 100 may include a camera and a motion sensor. The sensor 100 may output the detected motion of the object to the processor 200.

프로세서(200)는 센서(100)가 수신한 객체에 대한 감지 결과 및/또는 메모리(400)에 저장된 데이터를 처리할 수 있다. 프로세서(200)는 메모리(400)에 저장된 컴퓨터로 읽을 수 있는 코드(예를 들어, 소프트웨어) 및 프로세서(200)에 의해 유발된 인스트럭션(instruction)들을 실행할 수 있다.The processor 200 may process a detection result of the object received by the sensor 100 and/or data stored in the memory 400. The processor 200 may execute computer-readable code (eg, software) stored in the memory 400 and instructions induced by the processor 200.

"프로세서(200)"는 목적하는 동작들(desired operations)을 실행시키기 위한 물리적인 구조를 갖는 회로를 가지는 하드웨어로 구현된 데이터 처리 장치일 수 있다. 예를 들어, 목적하는 동작들은 프로그램에 포함된 코드(code) 또는 인스트럭션들(instructions)을 포함할 수 있다.The “processor 200” may be a data processing device implemented in hardware having a circuit having a physical structure for executing desired operations. For example, desired operations may include code or instructions included in a program.

예를 들어, 하드웨어로 구현된 데이터 처리 장치는 마이크로프로세서(microprocessor), 중앙 처리 장치(central processing unit), 프로세서 코어(processor core), 멀티-코어 프로세서(multi-core processor), 멀티프로세서(multiprocessor), ASIC(Application-Specific Integrated Circuit), FPGA(Field Programmable Gate Array)를 포함할 수 있다.For example, a data processing device implemented in hardware is a microprocessor, a central processing unit, a processor core, a multi-core processor, and a multiprocessor. , Application-Specific Integrated Circuit (ASIC), Field Programmable Gate Array (FPGA).

프로세서(200)는 실시간으로 생성된 가상 강체 입자를 생성하고, 가상 강체 입자에 작용하는 유체 힘을 계산할 수 있다. 또한, 프로세서(200)는 해당 배열을 필터링하여 촉각적 피드백을 제공할 수 있다.The processor 200 may generate a virtual rigid particle generated in real time and calculate a fluid force acting on the virtual rigid particle. In addition, the processor 200 may provide tactile feedback by filtering the corresponding arrangement.

프로세서(200)는 촉감 피드백 제공 장치(10)가 표현 가능한 물리적 범위에 해당하는 렌더링된 객체의 표면을 2D-3D 프로젝션 매핑을 통해 객체의 형상에 상관없이 상호작용이 일어나는 객체의 표면을 강체 입자로 구성할 수 있다.The processor 200 converts the surface of the rendered object corresponding to the physical range expressable by the tactile feedback providing device 10 into rigid particles through the surface of the object where the interaction occurs regardless of the shape of the object through 2D-3D projection mapping. Configurable.

프로세서(200)는 GPGPU(General-Purpose computing on Graphics Processing Units)를 포함하도록 구성되어 안정적인 촉감 피드백을 계산하고, 실시간으로 강체-유체 간의 상호작용을 시뮬레이션할 수 있다.The processor 200 is configured to include General-Purpose computing on Graphics Processing Units (GPGPU) to calculate stable tactile feedback and simulate a rigid-fluid interaction in real time.

프로세서(200)는 감지 결과에 기초하여 객체의 형상을 렌더링(rendering)할 수 있다. 프로세서(200)는 객체를 감지하는 위치로부터의 객체의 표면까지의 깊이 정보에 기초하여 객체에 대한 깊이 텍스쳐(depth texture)로 객체의 형상을 렌더링할 수 있다.The processor 200 may render the shape of the object based on the detection result. The processor 200 may render the shape of the object as a depth texture for the object based on depth information from a position detecting the object to the surface of the object.

프로세서(200)는 센서가 감지한 결과를 처리하여 객체에게 촉감 피드백 및/또는 시각 정보를 제공할 수 있다.The processor 200 may provide tactile feedback and/or visual information to the object by processing a result detected by the sensor.

프로세서(200)는 렌더링된 객체의 형상에 기초하여 가상 강체 입자(virtual rigid body particle)를 생성할 수 있다. 프로세서(200)는 랜더링된 객체에 기초하여 객체의 표면의 일부에 대응하는 가상 강체 입자를 생성할 수 있다.The processor 200 may generate virtual rigid body particles based on the shape of the rendered object. The processor 200 may generate virtual rigid particles corresponding to a part of the surface of the object based on the rendered object.

프로세서(200)는 가상 강체 입자와 가상 유체 입자(virtual fluid particle) 간의 상호 작용(interaction)을 분석하여 객체 상에 가상 유체의 힘(force)이 작용하는 집중점(focal point)을 획득할 수 있다.The processor 200 may analyze an interaction between a virtual rigid particle and a virtual fluid particle to obtain a focal point at which a force of the virtual fluid acts on the object. .

프로세서(200)는 가상 강체 입자 및 가상 유체 입자 간의 입자 시뮬레이션을 수행하여 가상 강체 입자에 작용하는 힘 배열을 생성할 수 있다. 구체적으로, 프로세서(200)는 가상 강체 입자와 가상 유체 입자 사이에 작용하는 힘을 계산할 수 있다. 예를 들어, 프로세서(200)는 스무디드 파티클 하이드로다이나믹스(smoothed particle hydrodynamics)와 같은 입자법에 의한 물리 기반 시뮬레이션을 통해 가상 강체와 가상 유체 입자 사이에 작용하는 힘을 계산할 수 있다.The processor 200 may generate a force array acting on the virtual rigid particle by performing particle simulation between the virtual rigid particle and the virtual fluid particle. Specifically, the processor 200 may calculate a force acting between the virtual rigid particle and the virtual fluid particle. For example, the processor 200 may calculate a force acting between a virtual rigid body and a virtual fluid particle through a physics-based simulation using a particle method such as smoothed particle hydrodynamics.

프로세서(200)는 힘에 기초하여 상기 가상 유체 입자의 위치를 계산할 수 있다. 프로세서(200)는 가상 유체 입자의 위치 및 계산한 힘에 기초하여 힘 배열을 생성할 수 있다.The processor 200 may calculate the position of the virtual fluid particle based on the force. The processor 200 may generate a force arrangement based on the position of the virtual fluid particle and the calculated force.

프로세서(200)는 생성한 힘 배열에 기초하여 집중점을 획득할 수 있다. 프로세서(200)는 힘 배열에 기초하여 최대 힘 지점을 도출할 수 있다. 구체적으로, 프로세서(200)는 힘 배열 중에서 최대 힘이 작용하는 지점을 최대 힘 지점으로 결정하거나, 힘 배열 중에서 지역 최대 힘이 작용하는 지점을 최대 힘 지점으로 결정할 수 있다.The processor 200 may acquire a focus point based on the generated force arrangement. The processor 200 may derive a maximum force point based on the force arrangement. Specifically, the processor 200 may determine a point where the maximum force acts in the force array as the maximum force point, or determine a point in the force array where the local maximum force acts as the maximum force point.

프로세서(200)는 도출한 최대 힘 지점에 기초하여 가상 집중점을 계산할 수 있다. 구체적으로, 프로세서(200)는 최대 힘 지점에 기초하여 가상 집중점의 위치, 가상 집중점에 작용하는 힘의 크기 및 가상 집중점에 대응하는 변조 주파수 중 적어도 하나를 계산할 수 있다.The processor 200 may calculate the virtual focus point based on the derived maximum force point. Specifically, the processor 200 may calculate at least one of a location of a virtual focus point, a force acting on the virtual focus point, and a modulation frequency corresponding to the virtual focus point based on the maximum force point.

프로세서(200)는 가상 집중점을 집중점으로 변환할 수 있다. 즉, 집중점은 물리적 위치에 대응되는 지점을 의미할 수 있다.The processor 200 may convert the virtual focus point into a focus point. That is, the focus point may mean a point corresponding to a physical location.

송신기(300)는 획득한 집중점에 기초하여 객체에 촉감 피드백을 제공할 수 있다. 송신기(300)는 집중점에 기초하여 파동의 특성을 결정하고, 파동을 객체에 출력함으로써 촉감 피드백을 제공할 수 있다.The transmitter 300 may provide tactile feedback to the object based on the acquired focus point. The transmitter 300 may provide tactile feedback by determining a characteristic of a wave based on a concentration point and outputting the wave to an object.

송신기(300)는 트랜스듀서(transducer)를 포함할 수 있다. 예를 들어, 송신기(300)는 복수의 트랜스듀서의 배열(array)로 구현될 수 있다.The transmitter 300 may include a transducer. For example, the transmitter 300 may be implemented as an array of a plurality of transducers.

송신기(300)가 출력하는 파동은 음파를 포함할 수 있다. 예를 들어, 송신기(300)는 객체에 초음파를 출력할 수 있다.Waves output from the transmitter 300 may include sound waves. For example, the transmitter 300 may output ultrasonic waves to the object.

메모리(400)는 프로세서(200)에 의해 실행가능한 인스트럭션들(또는 프로그램)을 저장할 수 있다. 예를 들어, 인스트럭션들은 프로세서(200)의 동작 및/또는 프로세서(200)의 각 구성의 동작을 실행하기 위한 인스트럭션들을 포함할 수 있다.The memory 400 may store instructions (or programs) executable by the processor 200. For example, the instructions may include instructions for executing an operation of the processor 200 and/or an operation of each component of the processor 200.

메모리(400)는 휘발성 메모리 장치 또는 불휘발성 메모리 장치로 구현될 수 있다.The memory 400 may be implemented as a volatile memory device or a nonvolatile memory device.

휘발성 메모리 장치는 DRAM(dynamic random access memory), SRAM(static random access memory), T-RAM(thyristor RAM), Z-RAM(zero capacitor RAM), 또는 TTRAM(Twin Transistor RAM)으로 구현될 수 있다.The volatile memory device may be implemented with dynamic random access memory (DRAM), static random access memory (SRAM), thyristor RAM (T-RAM), zero capacitor RAM (Z-RAM), or twin transistor RAM (TTRAM).

불휘발성 메모리 장치는 EEPROM(Electrically Erasable Programmable Read-Only Memory), 플래시(flash) 메모리, MRAM(Magnetic RAM), 스핀전달토크 MRAM(Spin-Transfer Torque(STT)-MRAM), Conductive Bridging RAM(CBRAM), FeRAM(Ferroelectric RAM), PRAM(Phase change RAM), 저항 메모리(Resistive RAM(RRAM)), 나노 튜브 RRAM(Nanotube RRAM), 폴리머 RAM(Polymer RAM(PoRAM)), 나노 부유 게이트 메모리(Nano Floating Gate Memory(NFGM)), 홀로그래픽 메모리(holographic memory), 분자 전자 메모리 소자(Molecular Eelectronic Memory Device), 또는 절연 저항 변화 메모리(Insulator Resistance Change Memory)로 구현될 수 있다.Nonvolatile memory devices include EEPROM (Electrically Erasable Programmable Read-Only Memory), flash memory, MRAM (Magnetic RAM), Spin-Transfer Torque (STT)-MRAM (MRAM), Conductive Bridging RAM (CBRAM). , FeRAM (Ferroelectric RAM), PRAM (Phase change RAM), Resistive RAM (RRAM), Nanotube RRAM, Polymer RAM (PoRAM), Nano Floating Gate Memory (NFGM)), holographic memory, Molecular Eelectronic Memory Device, or Insulator Resistance Change Memory.

디스플레이(500)는 객체에게 시각 정보를 제공할 수 있다. 예를 들어, 디스플레이(500)는 프로세서(200)가 렌더링한 시뮬레이션 결과를 객체에게 제공할 수 있다.The display 500 may provide visual information to an object. For example, the display 500 may provide a simulation result rendered by the processor 200 to an object.

디스플레이(500)는 3차원 디스플레이를 포함할 수 있다. 예를 들어, 디스플레이(500)는 헤드 마운트 디스플레이를 포함할 수 있다. 디스플레이(500)는 프로세서(200)의 렌더링 결과를 이용하여 객체에게 3 차원 영상을 제공할 수 있다.The display 500 may include a three-dimensional display. For example, the display 500 may include a head mounted display. The display 500 may provide a 3D image to an object by using the rendering result of the processor 200.

도 2a는 도 1에 도시된 촉감 피드백 제공 장치의 구현의 예를 나타내고, 도 2b는 도 2a에 도시된 촉감 피드백 제공 장치의 사진을 나타낸다.FIG. 2A shows an example of an implementation of the tactile feedback providing apparatus shown in FIG. 1, and FIG. 2B shows a photograph of the tactile feedback providing apparatus shown in FIG. 2A.

도 2a 및 도 2b를 참조하면, 센서(100)는 손 추적기를 포함할 수 있다. 센서(100)는 사용자의 손 및/또는 손의 움직임을 감지할 수 있다.2A and 2B, the sensor 100 may include a hand tracker. The sensor 100 may detect the user's hand and/or hand movement.

프로세서(200)는 감지한 손 및/또는 손의 움직임에 기초하여 집중점을 생성할 수 있다. 프로세서(200)는 생성한 집중점을 송신기(300)로 출력할 수 있다.The processor 200 may generate a focus point based on the sensed hand and/or hand movement. The processor 200 may output the generated focus point to the transmitter 300.

프로세서(200)는 객체에게 제공할 시각 정보를 생성할 수 있다. 예를 들어, 프로세서(200)는 객체에게 The processor 200 may generate visual information to be provided to an object. For example, the processor 200

송신기(300)는 트랜스듀서 배열을 포함할 수 있다. 송신기(300)는 집중점에 기초하여 객체에게 초음파를 출력함으로써 촉감 피드백을 제공할 수 있다. 객체는 사용자 손의 일부를 포함할 수 있다.Transmitter 300 may include a transducer arrangement. The transmitter 300 may provide tactile feedback by outputting ultrasonic waves to the object based on the focus point. The object may include a part of the user's hand.

디스플레이(500)는 프로세서(200)가 생성한 시각 정보를 객체에게 제공할 수 있다. 디스플레이(500)는 촉감 피드백에 대응되는 렌더링된 시각 정보를 제공할 수 있다. 도 2b의 예시에서 디스플레이(500)는 시각 정보로 통합 입자 시뮬레이션을 제공할 수 있다.The display 500 may provide visual information generated by the processor 200 to an object. The display 500 may provide rendered visual information corresponding to tactile feedback. In the example of FIG. 2B, the display 500 may provide an integrated particle simulation as visual information.

도 3은 도 1에 도시된 프로세서 및 송신기의 동작을 나타내고, 도 4는 도 1에 도시된 송신기의 예를 나타낸다.3 shows the operation of the processor and the transmitter shown in FIG. 1, and FIG. 4 shows an example of the transmitter shown in FIG. 1.

도 3 및 도 4를 참조하면, 프로세서(200)는 가상 입력/물체 제어기(210), 그래픽 렌더러(230), 집중점 계산기(250) 및 입자 시뮬레이터(270)를 포함할 수 있다.3 and 4, the processor 200 may include a virtual input/object controller 210, a graphic renderer 230, a focus point calculator 250, and a particle simulator 270.

가상 입력/물체 제어기(210)는 센서(100)로부터 객체의 감지 결과를 수신하여 가상 환경을 변경할 수 있다. 가상 입력/물체 제어기(210)는 센서(100)의 감지 결과를 가상 환경에 반영할 수 있다. 센서(100)의 감지 결과는 객체(또는 객체의 일부)에 대한 형상 및 움직임을 포함할 수 있다.The virtual input/object controller 210 may change the virtual environment by receiving the detection result of the object from the sensor 100. The virtual input/object controller 210 may reflect the detection result of the sensor 100 in a virtual environment. The detection result of the sensor 100 may include a shape and motion of an object (or a part of the object).

가상 입력/물체 제어기(210)는 센서의 감지 결과가 반영된 가상 환경을 그래픽 렌더러(230)로 출력할 수 있다. 가상 입력/물체 제어기(210)는 필요에 따라 센서(100) 내부에 구현될 수도 있다.The virtual input/object controller 210 may output a virtual environment in which the detection result of the sensor is reflected to the graphic renderer 230. The virtual input/object controller 210 may be implemented inside the sensor 100 as needed.

그래픽 렌더러(230)는 객체의 형상을 렌더링 할 수 있다. 그래픽 렌더러(230)는 객체 및 집중점 계산기에 제공할 이미지를 렌더링할 수 있다. 그래픽 렌더러(230)는 렌더링한 객체의 형상을 집중점 계산기(250)로 출력할 수 있다.The graphic renderer 230 may render the shape of an object. The graphic renderer 230 may render an object and an image to be provided to the focus point calculator. The graphic renderer 230 may output the shape of the rendered object to the focus point calculator 250.

그래픽 렌더러(230)는 센서의 감지 결과가 반영된 가상 환경을 이미지로 렌더링할 수 있다. 예를 들어, 그래픽 렌더러(230)는 객체에 대한 깊이 텍스처를 렌더링하여 집중점 계산기(250)로 출력할 수 있다.The graphic renderer 230 may render a virtual environment in which the detection result of the sensor is reflected as an image. For example, the graphic renderer 230 may render a depth texture of an object and output it to the focus point calculator 250.

집중점 계산기(250)는 렌더링된 객체의 형상에 기초하여 가상 강체 입자를 생성할 수 있다. 구체적으로, 집중점 계산기(250)는 객체의 표면에 대응되는 위치에 대하여 가상 강체 입자를 생성할 수 있다. 예를 들어, 집중점 계산기(250)는 깊이 텍스처를 가상 강체 입자로 변환함으로써 가상 강체 입자를 생성할 수 있다.The focus point calculator 250 may generate virtual rigid particles based on the shape of the rendered object. Specifically, the focus point calculator 250 may generate a virtual rigid particle for a location corresponding to the surface of the object. For example, the focus point calculator 250 may generate virtual rigid particles by converting the depth texture into virtual rigid particles.

또한, 집중점 계산기(250)는 입자 시뮬레이터(270)로부터 힘 배열을 수신하여 집중점을 계산할 수 있다. 집중접 계산기(250)는 수신한 힘 배열을 필터링함으로써 복수의 집중점을 생성할 수 있다. 집중점 계산기(250)는 생성한 복수의 집중점을 송신기(300)로 출력할 수 있다.In addition, the focus point calculator 250 may receive a force array from the particle simulator 270 to calculate the focus point. The concentrated contact calculator 250 may generate a plurality of focus points by filtering the received force array. The focus point calculator 250 may output the generated plurality of focus points to the transmitter 300.

집중점 계산기(250)가 집중점을 계산하는 동작은 도 6을 참조하여 상세하게 설명할 것이다.The operation of calculating the focus point by the focus point calculator 250 will be described in detail with reference to FIG. 6.

입자 시뮬레이터(270)는 가상 강체 입자 및 가상 유체 입자 간의 입자 시뮬레이션을 수행할 수 있다. 입자 시뮬레이터(270)는 입자 시뮬레이션 결과에 기초하여 가상 강체 입자에 작용하는 힘 배열을 생성할 수 있다. 입자 시뮬레이터(270)는 생성한 힘 배열을 집중점 계산기(250)로 출력할 수 있다.The particle simulator 270 may perform particle simulation between virtual rigid particles and virtual fluid particles. The particle simulator 270 may generate an array of forces acting on the virtual rigid particle based on the particle simulation result. The particle simulator 270 may output the generated force array to the concentration point calculator 250.

입자 시뮬레이터(270)는 가상 유체 입자 데이터, 가상 강체 입자 데이터 및 깊이 텍스쳐를 이용하여 실시간으로 가상 강체 입자에 대하여 물리 시뮬레이션을 수행할 수 있다.The particle simulator 270 may perform physical simulation on the virtual rigid particle in real time using virtual fluid particle data, virtual rigid particle data, and depth texture.

가상 유체 입자 데이터는 가상 유체 입자의 물성을 포함할 수 있다. 가상 유체 입자의 물성은 유체 입자의 크기, 위치, 힘, 속도, 질량, 밀도 등을 포함할 수 있다. 강체 입자 데이터는 강체 입자의 물성을 포함할 수 있다. 가상 강체 입자의 물성은 강제 입자의 크기, 위치, 힘, 속도, 질량, 밀도 등을 포함할 수 있다.The virtual fluid particle data may include physical properties of the virtual fluid particle. Physical properties of the virtual fluid particle may include the size, position, force, velocity, mass, and density of the fluid particle. Rigid particle data may include properties of rigid particles. The physical properties of the virtual rigid particle may include the size, position, force, velocity, mass, and density of the forced particle.

입자 시뮬레이터(270)는 가상 강체 입자에 작용하는 가상 유체 입자들의 힘을 분석하기 위해서, 가상 강체 입자의 무게 중심에 작용하는 합력과 돌림힘을 고려할 수 있다.The particle simulator 270 may consider a resultant force and a rotational force acting on the center of gravity of the virtual rigid particle in order to analyze the force of the virtual fluid particles acting on the virtual rigid particle.

입자 시뮬레이터(270)는 통합 입자 모델을 이용하여 가상 강체와 가상 유체의 상호작용을 분석할 수 있다. 예를 들어, 스무디드 파티클 하이드로다이나믹스(smoothed-particle hydrodynamics)를 이용하여 물리 기반의 힘을 계산할 수 있다.The particle simulator 270 may analyze the interaction between the virtual rigid body and the virtual fluid using the integrated particle model. For example, you can calculate physics-based forces using smoothed-particle hydrodynamics.

송신기(300)는 프로세서(200)로부터 집중점(또는 물리 집중점)을 수신할 수 있다. 송신기(300)는 프로세서(200)로부터 수신한 집중점에 기초하여 객체에 촉감 피드백을 제공할 수 있다.The transmitter 300 may receive a focus point (or a physical focus point) from the processor 200. The transmitter 300 may provide tactile feedback to the object based on the focus point received from the processor 200.

송신기(300)는 집중점에 기초하여 출력할 파동의 특성을 결정할 수 있다. 예를 들어, 송신기(300)는 파동의 위상 및 진폭 등의 파형을 결정하고, 특성이 결정된 파동을 출력할 수 있다.The transmitter 300 may determine the characteristics of the wave to be output based on the concentration point. For example, the transmitter 300 may determine a waveform such as a phase and amplitude of a wave, and output a wave whose characteristics are determined.

송신기(300)가 출력하는 파동은 복수 개일 수 있다. 송신기(300)는 파동을 출력함으로써 객체에게 촉감 피드백을 제공할 수 잇다. 예를 들어, 송신기(300)가 출력하는 파동은 초음파를 포함할 수 있다.There may be a plurality of waves output from the transmitter 300. The transmitter 300 may provide tactile feedback to an object by outputting a wave. For example, the wave output from the transmitter 300 may include ultrasonic waves.

도 4의 예시에서와 같이 송신기(300)는 복수의 트랜스듀서로 구성된 트랜스듀서 어레이로 구현될 수 있다. 트랜스듀서는 2D 초음파 트랜스 듀서 배열로 구현될 수 있다. 송신기(300)는 2D 트랜스듀서 배열을 이용하여 3 차원 물리 지점에 음향 방사력을 전달할 수 있다.As in the example of FIG. 4, the transmitter 300 may be implemented as a transducer array composed of a plurality of transducers. The transducer may be implemented as a 2D ultrasonic transducer array. The transmitter 300 may transmit acoustic radiation force to a 3D physical point by using a 2D transducer array.

이러한 음향 반사력을 통해서 객체는 3 차원 물리 지점에서 촉감 피드백(또는 진동)을 느낄 수 있다.Through this acoustic reflex, the object can feel tactile feedback (or vibration) at a three-dimensional physical point.

송신기(300)는 음향 방사력을 생성하기 위해 출력 파형의 진폭 변조를 수행할 수 있다. 도 4의 트랜스듀서를 예로 들면, 15 내지 80 cm의 범위를 가지고, 60도(degree)의 각도를 가질 수 있다.The transmitter 300 may perform amplitude modulation of an output waveform to generate acoustic radiation force. For example, the transducer of FIG. 4 may have a range of 15 to 80 cm and may have an angle of 60 degrees.

또한, 도 4의 트랜스듀서는 멀어질수록 객체가 느끼는 감각의 세기는 감소할 수 있다. 따라서, 특정 거리에서 객체는 최적의 촉감 피드백을 제공 받을 수 있다. 예를 들어, 최적의 거리는 20 cm 이내일 수 있다.In addition, as the transducer of FIG. 4 gets further away, the intensity of the sense that the object feels may decrease. Thus, the object can be provided with optimal tactile feedback at a specific distance. For example, the optimal distance may be within 20 cm.

송신기(300)는 일정한 피드백 레이트(feedback rate)로 객체에 파동을 출력할 수 있다. 예를 들어, 송신기(300)는 70Hz의 피드백 레이트로 촉감 피드백을 제공할 수 있다.The transmitter 300 may output a wave to the object at a constant feedback rate. For example, the transmitter 300 may provide tactile feedback at a feedback rate of 70 Hz.

송신기(300)는 통합 입자 시뮬레이션을 사용하여 상호작용이 일어나는 표면 내 입자들의 물성과 힘을 매 프레임마다 제공하는 피드백 강도를 계산할 수 있다. 시뮬레이션 통합 방식에 따라 시뮬레이션 안정성의 수준이 상이할 수 있다. 송신기(300)는 안정적인 시뮬레이션 결과를 제공하기 위해 가상 입자의 최대 속도

Figure 112019066090410-pat00001
를 제한할 수 있다.The transmitter 300 may use the integrated particle simulation to calculate a feedback strength that provides the physical properties and forces of particles in the surface where the interaction occurs every frame. Depending on the simulation integration method, the level of simulation stability may differ. Transmitter 300 is the maximum speed of the virtual particle to provide a stable simulation result.
Figure 112019066090410-pat00001
Can be limited.

가상 입자의 최대 힘은 속도에 의해 정의될 수 있으므로, 송신기(300)는 최대 힘에 대응하는 각 입자에 대한 피드백 강도를 결정할 수 있다. 여기서 최대 힘은 수학식 1과 같이 결정될 수 있다.Since the maximum force of the virtual particle can be defined by the velocity, the transmitter 300 can determine the feedback strength for each particle corresponding to the maximum force. Here, the maximum force may be determined as in Equation 1.

Figure 112019066090410-pat00002
Figure 112019066090410-pat00002

여기서, Flimit은 최대 힘을 의미하고, mparticle은 가상 입자의 질량을 의미하고, c0는 사용자 조절 상수를 의미할 수 있다. 예를 들어, 사용자 조절 상수는 0.5일 수 있다.Here, F limit means the maximum force, m particle means the mass of the virtual particle, and c 0 means a user control constant. For example, the user adjustment constant may be 0.5.

송신기(300)는 최대 힘에 기초하여 피드백 강도를 계산할 수 있다. 최대 힘에 기초한 피드백 강도는 수학식 2와 같이 나타낼 수 있다.The transmitter 300 may calculate the feedback strength based on the maximum force. The feedback strength based on the maximum force can be expressed as in Equation 2.

Figure 112019066090410-pat00003
Figure 112019066090410-pat00003

여기서 Iparticle은 가상 입자에 대한 피드백 강도를 의미하고, Fparticle은 가상 입자에 작용하는 힘을 의미하고, Imin은 최저 피드백 강도를 의미할 수 있다.Here, I particle may mean a feedback strength for a virtual particle, F particle may mean a force acting on the virtual particle, and I min may mean a minimum feedback strength.

피드백 강도는 실제 가상 힘을 나타내는 것이 아니므로, 송신기(300)는 접촉을 감지할 수 있는 최저 강도를 이용하여 피드백 강도를 계산할 수 있다.Since the feedback strength does not represent an actual virtual force, the transmitter 300 may calculate the feedback strength using the lowest strength capable of detecting a contact.

이하에서는 도 5 및 도 6을 참조하여 가상 입력/물체 제어기(210) 및 그래픽 렌더러(230)의 동작을 설명한다.Hereinafter, operations of the virtual input/object controller 210 and the graphic renderer 230 will be described with reference to FIGS. 5 and 6.

도 5는 도 3에 도시된 가상 입력/물체 제어기 및 그래픽 렌더러의 동작의 예를 나타내고, 도 6은 도 1에 도시된 프로세서가 렌더링하는 영역의 예를 나타낸다.FIG. 5 shows an example of an operation of a virtual input/object controller and a graphic renderer shown in FIG. 3, and FIG. 6 shows an example of an area rendered by the processor shown in FIG. 1.

도 5 및 도 6을 참조하면, 가상 입력/물체 제어기(210)는 작업자로부터 가상 물체에 대한 제어 명령을 수신할 수 있다. 가상 입력/물체 제어기(210)는 입력 받은 제어 명령을 처리하여 가상 환경 내 가상 물체의 상태를 변경할 수 있다. 가상 물체는 가상 강체 및 가상 유체를 포함할 수 있다. 가상 입력/물체 제어기(210)는 제어 명령에 따라 그래픽 렌더러(230)에게 그래픽 렌더링 명령을 수행할 수 있다.5 and 6, the virtual input/object controller 210 may receive a control command for a virtual object from an operator. The virtual input/object controller 210 may change the state of the virtual object in the virtual environment by processing the input control command. The virtual object may include a virtual rigid body and a virtual fluid. The virtual input/object controller 210 may perform a graphic rendering command to the graphic renderer 230 according to the control command.

그래픽 렌더러(230)는 시각 정보를 렌더링할 수 있다. 그래픽 렌더러(230) 객체에 대한 깊이 텍스처를 렌더링할 수 있고, 객체에게 제공하기 위한 시각 피드백 정보를 렌더링할 수 있다.The graphic renderer 230 may render visual information. The graphic renderer 230 may render a depth texture for an object, and may render visual feedback information to be provided to the object.

예를 들어, 그래픽 렌더러(230)는 카메라를 통해 수신한 이미지에 기초하여 시각 정보의 렌더링을 수행하여 디스플레이(500)로 출력할 수 있다. 그래픽 렌더러(230)는 디스플레이(500)에 적합하게 시각 정보를 처리 및 변환하여 출력할 수 있다.For example, the graphic renderer 230 may render visual information based on an image received through a camera and output it to the display 500. The graphic renderer 230 may process, convert, and output visual information suitable for the display 500.

그래픽 렌더러(230)는 객체에 대한 깊이 텍스처를 렌더링할 수 있다. 그래픽 렌더러(230)는 깊이 텍스처의 렌더링을 통해 3 차원 깊이 정보를 텍스처의 형태로 생성할 수 있다. 그래픽 렌더러(230)는 생성한 텍스처를 집중점 계산기(250)로 출력할 수 있다. 또한, 그래픽 렌더러(230)는 집중점 계산기(250)에 가상 강체 입자 생성 명령을 함께 전송할 수 있다.The graphic renderer 230 may render a depth texture for an object. The graphic renderer 230 may generate 3D depth information in the form of a texture through rendering of the depth texture. The graphic renderer 230 may output the generated texture to the focus point calculator 250. In addition, the graphic renderer 230 may transmit a virtual rigid particle generation command to the focus point calculator 250 together.

그래픽 렌더러(230)는 가상 강체 입자 생성을 위한 가상 카메라를 구성할 수 있다. 그래픽 렌더러(230)는 송신기(300)의 위치에 대응하는 렌더링 정보(예를 들어, 송신기(300)의 회전 정보 및 시야각 정보)를 이용하여 가상 카메라를 구성할 수 있다. 그래픽 렌더러(230)는 가상 카메라를 이용하여 객체의 깊이 텍스처를 생성할 수 있다.The graphic renderer 230 may configure a virtual camera for generating virtual rigid particles. The graphic renderer 230 may configure a virtual camera using rendering information corresponding to the location of the transmitter 300 (eg, rotation information and viewing angle information of the transmitter 300 ). The graphic renderer 230 may generate a depth texture of an object using a virtual camera.

도 6의 예시에서 사다리꼴 영역은 그래픽 렌더러(230)의 가상 카메라가 렌더링하는 프로젝션 범위를 나타낼 수 있다. 그래픽 렌더러(230)는 사다리꼴 영역에 대한 깊이 텍스처를 생성하여 집중점 계산기(250)로 출력할 수 있다.In the example of FIG. 6, the trapezoidal area may represent a projection range rendered by the virtual camera of the graphic renderer 230. The graphic renderer 230 may generate a depth texture for the trapezoidal area and output it to the focus point calculator 250.

이하에서는 도 7 내지 도 9를 참조하여, 집중점 계산기(250), 입자 시뮬레이터(270) 및 송신기(300)의 동작을 설명한다.Hereinafter, operations of the focus point calculator 250, the particle simulator 270, and the transmitter 300 will be described with reference to FIGS. 7 to 9.

도 7은 도 3에 도시된 송신기, 집중점 계산기 및 입자 시뮬레이터의 동작의 예를 나타내고, 도 8은 도 1에 도시된 프로세서에 의해 생성된 강체 입자의 예를 나타내고, 도 9는 객체 상의 집중점을 설명하기 위한 도면이다.7 shows an example of the operation of the transmitter, the focus point calculator, and the particle simulator shown in FIG. 3, FIG. 8 shows an example of a rigid particle generated by the processor shown in FIG. 1, and FIG. 9 is a focus point on an object. It is a figure for explaining.

도 7 내지 도 9를 참조하면, 집중점 계산기(250)는 그래픽 렌더러(230)로부터 전송된 깊이 텍스처에 기초하여 가상 강체 입자를 생성할 수 있다. 집중점 계산기(250)는 생성한 가상 강체 입자를 입자 시뮬레이터(270)로 출력할 수 있다. 예를 들어, 집중점 계산기(250)는 가상 강체 입자를 가상 강체 입자 배열의 형태로 입자 시뮬레이터(270)로 출력할 수 있다.7 to 9, the focus point calculator 250 may generate virtual rigid particles based on the depth texture transmitted from the graphic renderer 230. The concentration point calculator 250 may output the generated virtual rigid particle to the particle simulator 270. For example, the concentration point calculator 250 may output virtual rigid particles to the particle simulator 270 in the form of an array of virtual rigid particles.

도 8은, 집중점 계산기(250)가 생성한 가상 강체 입자의 예를 나타낸다. 즉, 가상 강체 입자는 객체가 손일 경우에 손의 표면에 생성될 수 있다.8 shows an example of a virtual rigid particle generated by the concentration point calculator 250. That is, virtual rigid particles can be generated on the surface of the hand when the object is a hand.

집중점 계산기(250)는 수신한 객체의 깊이 텍스처에 기초하여 가상 카메라의 설정에 따라 각 픽셀을 3 차원 가상 좌표로 복구할 수 있다. 집중점 계산기(250)는 복구된 3 차원 가상 좌표를 기존의 가상 강체 입자 설정에 따라 가상 강체 입자 배열로 변환할 수 있다. 이를 통해, 촉감 피드백 제공 장치(10)는 렌더링할 수 있는 영역을 가상 환경에서 구현할 수 있다.The focus point calculator 250 may restore each pixel to 3D virtual coordinates according to the setting of the virtual camera based on the received depth texture of the object. The focus point calculator 250 may convert the restored 3D virtual coordinates into a virtual rigid particle array according to an existing virtual rigid particle setting. Through this, the tactile feedback providing apparatus 10 may implement a rendering area in a virtual environment.

집중점 계산기(250)는 실시간으로 객체의 깊이 텍스처를 수신하여 실시간으로 가상 강체 입자 배열을 생성할 수 있다. 또한, 집중점 계산기(250)는 생성한 가상 강체 입자 배열을 실시간으로 입자 시뮬레이터(270)로 출력할 수 있다. 도 8의 예시는 집중점 계산기(250)가 생성한 가상 강체 입자 배열의 예시를 나타낼 수 있다.The focus point calculator 250 may generate a virtual rigid particle array in real time by receiving the depth texture of the object in real time. In addition, the concentration point calculator 250 may output the generated virtual rigid particle array to the particle simulator 270 in real time. The example of FIG. 8 may represent an example of an arrangement of virtual rigid particles generated by the focus point calculator 250.

입자 시뮬레이터(270)는 수신한 가상 강체 입자와 시뮬레이션 내의 가상 유체 입자와의 상호작용을 분석할 수 있다. 입자 시뮬레이터(270)는 가상 강체-가상 유체 간의 상호 작용을 계산하고, 가상 유체 입자의 위치 및 물성을 계산할 수 있다.The particle simulator 270 may analyze an interaction between the received virtual rigid particle and the virtual fluid particle in the simulation. The particle simulator 270 may calculate the interaction between the virtual rigid body and the virtual fluid, and calculate the location and physical properties of the virtual fluid particle.

입자 시뮬레이터(270)는 시뮬레이션을 통해 가상 유체 입자가 가상 강체 입자에 작용하는 힘을 계산할 수 있다. 입자 시뮬레이터(270)는 계산한 힘에 기초하여 가상 강체 입자에 작용하는 힘 배열을 생성할 수 있다. 입자 시뮬레이터(270)는 생성한 힘 배열을 집중점 계산기(250)로 출력할 수 있다.The particle simulator 270 may calculate a force exerted by the virtual fluid particle on the virtual rigid particle through simulation. The particle simulator 270 may generate a force array acting on the virtual rigid particle based on the calculated force. The particle simulator 270 may output the generated force array to the concentration point calculator 250.

집중점 계산기(250)는 입자 시뮬레이터(270)로부터 힘 배열을 수신하여 집중점을 계산할 수 있다. 집중점 계산기(250)는 입자 시뮬레이터(270)가 생성한 힘 배열을 이용하여 최대 힘 지점을 도출할 수 있다.The focus point calculator 250 may calculate the focus point by receiving a force array from the particle simulator 270. The concentration point calculator 250 may derive the maximum force point using the force array generated by the particle simulator 270.

일반적으로, 강체에 작용하는 유체의 힘은 각 강체 입자에 인접한 유체 입자가 많을 수록, 각 유체 입자가 가한 힘이 높을 수록 클 수 있다. 따라서, 최대 힘이 곧 유체의 흐름 정보를 인코딩 한다고 볼 수 있다.In general, the force of a fluid acting on a rigid body may be greater as the number of fluid particles adjacent to each rigid body particle increases, and the higher the force applied by each fluid particle is increased. Therefore, it can be seen that the maximum force encodes the flow information of the fluid.

집중점 계산기(250)는 수신한 힘 배열에 기초하여 최대 힘 지점을 도출하여 집중점 계산에 사용할 수 있다. 집중점 계산기(250)는 힘 배열을 필터링하여 강체 입자 정보를 추출함으로써 복수의 가상 집중점을 계산할 수 있다.The focus point calculator 250 may derive a maximum force point based on the received force arrangement and use it for calculating the focus point. The focus point calculator 250 may calculate a plurality of virtual focus points by filtering the force array and extracting rigid particle information.

집중점 계산기(250)가 생성하는 가상 집중점은 가상 집중점의 3차원 물리 공간의 위치, 가상 집중점에 작용하는 힘의 크기 및 가상 집중점에 대응하는 변조 주파수에 관한 정보를 포함할 수 있다. 집중점 계산기(250)는 가상 강체 입자의 위치, 가상 강체 입자에 작용하는 힘의 크기를 이용하여 가상 집중점의 계산을 수행할 수 있다.The virtual focus point generated by the focus point calculator 250 may include information on a location of a 3D physical space of the virtual focus point, a force acting on the virtual focus point, and a modulation frequency corresponding to the virtual focus point. . The focus point calculator 250 may calculate the virtual focus point using the position of the virtual rigid particle and the magnitude of the force acting on the virtual rigid particle.

집중점 계산기(250)는 가상 집중점을 물리 위치를 반영한 물리 집중점(또는 집중점)으로 변환하고, 이를 송신기(300)로 출력할 수 있다. 송신기(300)는 수신한 집중점에 기초하여 객체에게 촉감 피드백을 제공할 수 있다.The focus point calculator 250 may convert the virtual focus point into a physical focus point (or focus point) reflecting a physical location, and output this to the transmitter 300. The transmitter 300 may provide tactile feedback to the object based on the received focus point.

도 9의 예시에서, 좌측은 입자 시뮬레이터(270)가 시뮬레이션을 수행하는 영역을 나타낼 수 있다. 우측은 송신기가 촉감 피드백을 제공하는 집중점을 나타낼 수 있다. 이 때, 송신기(300)는 임의의 수의 피드백 개수를 가질 수 있다.In the example of FIG. 9, the left side may indicate an area in which the particle simulator 270 performs simulation. The right side may indicate a focus point at which the transmitter provides tactile feedback. In this case, the transmitter 300 may have an arbitrary number of feedbacks.

집중점 계산기(250)는 객체가 사람의 손일 경우에, 손의 인지 공간 해상도(예를 들어, 2 cm 떨어져야 구분 가능함)가 낮기 때문에 최대 힘 지점에 대해서만 집중점을 생성할 수 있다.When the object is a human hand, the focus point calculator 250 may generate a focus point only for a maximum force point because the cognitive spatial resolution of the hand (for example, it is possible to distinguish when 2 cm apart) is low.

도 10은 도 3의 집중점 계산기가 집중점을 계산하는 동작을 설명하기 위한 그래프이고, 도 11은 복수의 집중점을 할당하는 방법의 예를 나타내고, 도 12는 집중점에 대한 변조 주파수를 제어하는 동작의 예를 나타낸다.FIG. 10 is a graph for explaining an operation of calculating a focus point by the focus point calculator of FIG. 3, FIG. 11 shows an example of a method of allocating a plurality of focus points, and FIG. 12 is a control of a modulation frequency for a focus point. Here is an example of the operation to be performed

도 10 내지 도 12를 참조하면, 집중점 계산기(250)는 입자 시뮬레이터(270)로부터 힘 배열을 수신하고, 수신한 힘 배열을 필터링함으로써 집중점을 생성할 수 있다. 도 10의 예시는 사람의 인지 해상도를 고려하여 힘 배열을 필터링함으로써 1 개의 집중점을 할당하는 동작을 나타낼 수 있다.10 to 12, the focus point calculator 250 may generate a focus point by receiving a force array from the particle simulator 270 and filtering the received force array. The example of FIG. 10 may represent an operation of allocating one focus point by filtering a force array in consideration of a person's cognitive resolution.

임의의 입자에 작용하는 힘은 인접한 입자의 개수에 영향을 받기 때문에 촉감 피드백 제공 장치(10)는 힘 정보를 이용한 햅틱 피드백을 통해 강체-유체 충돌 상황과 흐름 상황을 파악할 수 있다.Since the force acting on an arbitrary particle is affected by the number of adjacent particles, the tactile feedback providing device 10 can grasp a rigid-fluid collision situation and a flow situation through haptic feedback using force information.

집중점 계산기(250)는 힘 배열을 필터링 모듈을 통해 매 프레임당 하나의 집중점을 생성할 수 있다. 집중점 계산기(250)는 복수의 집중점을 할당하기 위해서 큐 기법을 사용할 수 있다.The focus point calculator 250 may generate one focus point per frame through a force array filtering module. The focus point calculator 250 may use a queue technique to allocate a plurality of focus points.

큐 내부의 요소들은 임의의 변조(modulation) 기간을 가지는 집중점으로 정의될 수 있다. 집중점 계산기(250)는 집중점의 할당이 일어날 때마다 큐 내부의 변조 기간을 감소시킬 수 있다. 집중점 계산기(250)는 큐 내부의 정보를 이용하여 집중점의 변조 주파수를 적응적으로 정의할 수 있다.Elements in the queue may be defined as focus points having an arbitrary modulation period. The focus point calculator 250 may reduce the modulation period inside the queue whenever the focus point is allocated. The focus point calculator 250 may adaptively define a modulation frequency of the focus point using information in the queue.

객체가 인체인 경우를 고려하면, 피부 내 수용기는 0.4 Hz - 500 Hz의 범위에 대한 진동을 감지할 수 있다. 집중점 계산기(250)는 도 12의 예시와 같이 큐 기반 할당 방식에 기초하여 복수의 집중점을 할당함으로써 동시에 여러 집중점을 할당할 수 있다.Considering the case where the object is a human body, the receptor in the skin can detect vibration in the range of 0.4 Hz-500 Hz. The focus point calculator 250 may allocate a plurality of focus points at the same time by allocating a plurality of focus points based on a queue-based allocation method as illustrated in FIG. 12.

이 때, 인접한 위치에 반복적으로 집중점이 할당되는 경우 충돌이 발생할 수 있기 때문에, 집중점 계산기(250)는 인접한 위치에 다시 집중점이 할당되는 지 여부에 기초하여 변조 주파수를 제어할 수 있다.At this time, since a collision may occur when a focus point is repeatedly allocated to an adjacent position, the focus point calculator 250 may control the modulation frequency based on whether or not the focus point is allocated to the adjacent position again.

도 13a는 도 3에 도시된 시뮬레이터의 시뮬레이션 결과의 예를 나타내고, 도 13b는 가상 강체 입자에 작용하는 힘의 분포를 시각화한 예를 나타낸다.13A shows an example of a simulation result of the simulator shown in FIG. 3, and FIG. 13B shows an example of visualizing the distribution of force acting on a virtual rigid particle.

도 13a 및 도 13b를 참조하면, 디스플레이(500)는 객체에게 시각 정보(또는 시각 피드백)를 제공할 수 있다. 도 13a 및 도 13b의 예시는 디스플레이(500)가 제공하는 시각 정보의 예를 나타낼 수 있다.13A and 13B, the display 500 may provide visual information (or visual feedback) to an object. 13A and 13B may represent examples of visual information provided by the display 500.

도 13 a는 가상 환경 내에서 가상 강체-가상 유체가 상호작용하는 상황을 시각화한 결과를 나타낼 수 있다. 도 13b는 가상 강체-가상 유체 간의 상호작용에 의하여 강체에 작용하는 힘을 시각화한 결과를 나타낼 수 있다.13A may show a result of visualizing a situation in which a virtual rigid body-virtual fluid interacts in a virtual environment. 13B may show a result of visualizing a force acting on a rigid body by an interaction between a virtual rigid body and a virtual fluid.

도 13 b의 결과를 살펴보면, 인접한 가상 유체 입자가 많은 영역에서 가상 강체에 가해지는 힘이 큰 것을 시각적으로 확인 할 수 있다. 촉감 피드백 제공 장치(10)는 실시간으로 가상 강체-가상 유체 입자 간 충돌 정보를 촉감 피드백으로 인코딩하여 사용자가 시뮬레이션을 통해 가상 유체의 흐름을 체감하도록 할 수 있다.13B, it can be visually confirmed that the force applied to the virtual rigid body is large in an area where there are many adjacent virtual fluid particles. The tactile feedback providing apparatus 10 may encode collision information between a virtual rigid body and a virtual fluid particle in real time as tactile feedback so that a user can experience the flow of the virtual fluid through simulation.

도 14는 도 1에 도시된 촉감 피드백 제공 장치의 동작의 순서도를 나타낸다.14 is a flowchart illustrating an operation of the apparatus for providing tactile feedback shown in FIG. 1.

도 14를 참조하면, 센서(100)는 객체를 감지할 수 있다. 프로세서(200)는 센서(100)의 감지 결과에 기초하여 객체의 형상을 렌더링(rendering)할 수 있다(1410).Referring to FIG. 14, the sensor 100 may detect an object. The processor 200 may render the shape of the object based on the detection result of the sensor 100 (1410 ).

프로세서(200)는 객체를 감지하는 위치로부터 객체의 표면까지의 깊이 정보에 기초하여 객체에 대한 깊이 텍스쳐로 형상을 렌더링할 수 있다.The processor 200 may render a shape as a depth texture for the object based on depth information from a position sensing the object to the surface of the object.

프로세서(200)는 렌더링된 형상에 기초하여 가상 강체 입자(virtual rigid body particle)를 생성할 수 있다(1430). 프로세서(200)는 랜더링된 객체에 기초하여 객체의 표면의 일부에 대응하는 가상 강체 입자를 생성할 수 있다.The processor 200 may generate a virtual rigid body particle based on the rendered shape (1430). The processor 200 may generate virtual rigid particles corresponding to a part of the surface of the object based on the rendered object.

프로세서(200)는 가상 강체 입자와 가상 유체 입자(virtual fluid particle) 간의 상호 작용(interaction)을 분석하여 객체 상에 가상 유체의 힘(force)이 작용하는 집중점을 획득할 수 있다.The processor 200 may analyze an interaction between a virtual rigid particle and a virtual fluid particle to obtain a focus point at which a force of the virtual fluid acts on the object.

프로세서(200)는 가상 강체 입자 및 가상 유체 입자 간의 입자 시뮬레이션을 수행하여 가상 강체 입자에 작용하는 힘 배열을 생성할 수 있다. 구체적으로, 프로세서(200)는 가상 강체 입자와 가상 유체 입자 사이에 작용하는 힘을 계산하고, 계산한 힘에 기초하여 가상 유체 입자의 위치를 계산할 수 있다.The processor 200 may generate a force array acting on the virtual rigid particle by performing particle simulation between the virtual rigid particle and the virtual fluid particle. Specifically, the processor 200 may calculate a force acting between the virtual rigid particle and the virtual fluid particle, and calculate the position of the virtual fluid particle based on the calculated force.

프로세서(200)는 가상 유체 입자의 위치 및 계산한 힘에 기초하여 힘 배열을 생성할 수 있다.The processor 200 may generate a force arrangement based on the position of the virtual fluid particle and the calculated force.

프로세서(200)는 생성한 힘 배열에 기초하여 상기 집중점을 획득할 수 있다. 프로세서(200)는 힘 배열에 기초하여 최대 힘 지점을 도출할 수 있다. 구체적으로, 프로세서(200)는 힘 배열 중에서 최대 힘이 작용하는 지점을 최대 힘 지점으로 결정하거나, 힘 배열 중에서 지역 최대 힘이 작용하는 지점을 최대 힘 지점으로 결정할 수 있다.The processor 200 may acquire the focus point based on the generated force arrangement. The processor 200 may derive a maximum force point based on the force arrangement. Specifically, the processor 200 may determine a point where the maximum force acts in the force array as the maximum force point, or determine a point in the force array where the local maximum force acts as the maximum force point.

프로세서(200)는 최대 힘 지점에 기초하여 가상 집중점을 계산할 수 있다. 구체적으로, 프로세서(200)는 최대 힘 지점에 기초하여 가상 집중점의 위치, 가상 집중점에 작용하는 힘의 크기 및 가상 집중점에 대응하는 변조 주파수 중 적어도 하나를 계산할 수 있다.The processor 200 may calculate the virtual focus point based on the maximum force point. Specifically, the processor 200 may calculate at least one of a location of a virtual focus point, a force acting on the virtual focus point, and a modulation frequency corresponding to the virtual focus point based on the maximum force point.

프로세서(200)는 계산한 가상 집중점을 집중점으로 변환할 수 있다.The processor 200 may convert the calculated virtual focus point into a focus point.

송신기(300)는 집중점에 기초하여 객체에 촉감 피드백을 제공할 수 있다. 송신기(300)는 집중점에 기초하여 파동의 특성을 결정하고, 특성이 결정된 파동을 객체에 출력함으로써 촉감 피드백을 제공할 수 있다.The transmitter 300 may provide tactile feedback to the object based on the focus point. The transmitter 300 may provide tactile feedback by determining a characteristic of a wave based on a concentration point and outputting the wave whose characteristic is determined to an object.

실시예에 따른 방법은 다양한 컴퓨터 수단을 통하여 수행될 수 있는 프로그램 명령 형태로 구현되어 컴퓨터 판독 가능 매체에 기록될 수 있다. 컴퓨터 판독 가능 매체는 프로그램 명령, 데이터 파일, 데이터 구조 등을 단독으로 또는 조합하여 포함할 수 있다. 매체에 기록되는 프로그램 명령은 실시예를 위하여 특별히 설계되고 구성된 것들이거나 컴퓨터 소프트웨어 당업자에게 공지되어 사용 가능한 것일 수도 있다. 컴퓨터 판독 가능 기록 매체의 예에는 하드 디스크, 플로피 디스크 및 자기 테이프와 같은 자기 매체(magnetic media), CD-ROM, DVD와 같은 광기록 매체(optical media), 플롭티컬 디스크(floptical disk)와 같은 자기-광 매체(magneto-optical media), 및 롬(ROM), 램(RAM), 플래시 메모리 등과 같은 프로그램 명령을 저장하고 수행하도록 특별히 구성된 하드웨어 장치가 포함된다. 프로그램 명령의 예에는 컴파일러에 의해 만들어지는 것과 같은 기계어 코드뿐만 아니라 인터프리터 등을 사용해서 컴퓨터에 의해서 실행될 수 있는 고급 언어 코드를 포함한다. 하드웨어 장치는 실시예의 동작을 수행하기 위해 하나 이상의 소프트웨어 모듈로서 작동하도록 구성될 수 있으며, 그 역도 마찬가지이다.The method according to the embodiment may be implemented in the form of program instructions that can be executed through various computer means and recorded in a computer-readable medium. The computer-readable medium may include program instructions, data files, data structures, and the like alone or in combination. The program instructions recorded on the medium may be specially designed and configured for the embodiment, or may be known and usable to those skilled in computer software. Examples of computer-readable recording media include magnetic media such as hard disks, floppy disks, and magnetic tapes, optical media such as CD-ROMs and DVDs, and magnetic media such as floptical disks. -A hardware device specially configured to store and execute program instructions such as magneto-optical media, and ROM, RAM, flash memory, and the like. Examples of program instructions include not only machine language codes such as those produced by a compiler, but also high-level language codes that can be executed by a computer using an interpreter or the like. The hardware device may be configured to operate as one or more software modules to perform the operation of the embodiment, and vice versa.

소프트웨어는 컴퓨터 프로그램(computer program), 코드(code), 명령(instruction), 또는 이들 중 하나 이상의 조합을 포함할 수 있으며, 원하는 대로 동작하도록 처리 장치를 구성하거나 독립적으로 또는 결합적으로(collectively) 처리 장치를 명령할 수 있다. 소프트웨어 및/또는 데이터는, 처리 장치에 의하여 해석되거나 처리 장치에 명령 또는 데이터를 제공하기 위하여, 어떤 유형의 기계, 구성요소(component), 물리적 장치, 가상 장치(virtual equipment), 컴퓨터 저장 매체 또는 장치, 또는 전송되는 신호 파(signal wave)에 영구적으로, 또는 일시적으로 구체화(embody)될 수 있다. 소프트웨어는 네트워크로 연결된 컴퓨터 시스템 상에 분산되어서, 분산된 방법으로 저장되거나 실행될 수도 있다. 소프트웨어 및 데이터는 하나 이상의 컴퓨터 판독 가능 기록 매체에 저장될 수 있다.The software may include a computer program, code, instructions, or a combination of one or more of these, configuring the processing unit to operate as desired or processed independently or collectively. You can command the device. Software and/or data may be interpreted by a processing device or, to provide instructions or data to a processing device, of any type of machine, component, physical device, virtual equipment, computer storage medium or device. , Or may be permanently or temporarily embodyed in a transmitted signal wave. The software may be distributed over networked computer systems and stored or executed in a distributed manner. Software and data may be stored on one or more computer-readable recording media.

이상과 같이 실시예들이 비록 한정된 도면에 의해 설명되었으나, 해당 기술분야에서 통상의 지식을 가진 자라면 상기를 기초로 다양한 기술적 수정 및 변형을 적용할 수 있다. 예를 들어, 설명된 기술들이 설명된 방법과 다른 순서로 수행되거나, 및/또는 설명된 시스템, 구조, 장치, 회로 등의 구성요소들이 설명된 방법과 다른 형태로 결합 또는 조합되거나, 다른 구성요소 또는 균등물에 의하여 대치되거나 치환되더라도 적절한 결과가 달성될 수 있다.As described above, although the embodiments have been described by the limited drawings, a person of ordinary skill in the art can apply various technical modifications and variations based on the above. For example, the described techniques are performed in a different order from the described method, and/or components such as systems, structures, devices, circuits, etc. described are combined or combined in a form different from the described method, or other components Alternatively, even if substituted or substituted by an equivalent, an appropriate result can be achieved.

그러므로, 다른 구현들, 다른 실시예들 및 특허청구범위와 균등한 것들도 후술하는 청구범위의 범위에 속한다.Therefore, other implementations, other embodiments, and claims and equivalents fall within the scope of the following claims.

Claims (20)

객체를 감지하는 단계;
감지 결과에 기초하여 상기 객체의 형상을 렌더링(rendering)하는 단계;
렌더링된 형상에 기초하여 가상 강체 입자(virtual rigid body particle)를 생성하는 단계; 및
상기 가상 강체 입자와 가상 유체 입자(virtual fluid particle) 간의 상호 작용(interaction)을 분석하여 상기 객체 상에 상기 가상 유체의 힘(force)이 작용하는 집중점을 획득하는 단계
를 포함하고,
상기 집중점을 획득하는 단계는,
상기 가상 강체 입자에 작용하는 힘 배열을 이용하여 도출된 최대 힘 지점에 기초하여 상기 집중점을 획득하는 단계
를 포함하는 촉감 피드백 제공 방법.
Detecting an object;
Rendering the shape of the object based on the detection result;
Generating virtual rigid body particles based on the rendered shape; And
Analyzing the interaction between the virtual rigid particle and the virtual fluid particle to obtain a focus point at which the force of the virtual fluid acts on the object.
Including,
The step of obtaining the focus point,
Obtaining the concentration point based on the maximum force point derived using the force array acting on the virtual rigid particle
A method of providing tactile feedback comprising a.
제1항에 있어서,
상기 집중점에 기초하여 상기 객체에 촉감 피드백을 제공하는 단계
를 더 포함하는 촉감 피드백 제공 방법.
The method of claim 1,
Providing tactile feedback to the object based on the focus point
A method for providing tactile feedback further comprising a.
제2항에 있어서,
상기 제공하는 단계는,
상기 집중점에 기초하여 파동의 특성을 결정하는 단계; 및
상기 파동을 상기 객체에 출력함으로써 상기 촉감 피드백을 제공하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 2,
The providing step,
Determining a characteristic of the wave based on the concentration point; And
Providing the tactile feedback by outputting the wave to the object
A method of providing tactile feedback comprising a.
제1항에 있어서,
상기 렌더링하는 단계는,
상기 객체를 감지하는 위치로부터 상기 객체의 표면까지의 깊이 정보에 기초하여 상기 객체에 대한 깊이 텍스쳐로 상기 형상을 렌더링하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 1,
The rendering step,
Rendering the shape as a depth texture for the object based on depth information from a position detecting the object to the surface of the object
A method of providing tactile feedback comprising a.
제1항에 있어서,
상기 가상 강체 입자를 생성하는 단계는,
상기 렌더링된 객체에 기초하여 상기 객체의 표면의 일부에 대응하는 가상 강체 입자를 생성하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 1,
The step of generating the virtual rigid particle,
Generating virtual rigid particles corresponding to a part of the surface of the object based on the rendered object
A method of providing tactile feedback comprising a.
제1항에 있어서,
상기 집중점을 획득하는 단계는,
상기 가상 강체 입자 및 상기 가상 유체 입자 간의 입자 시뮬레이션을 수행하여 상기 가상 강체 입자에 작용하는 상기 힘 배열을 생성하는 단계; 및
상기 힘 배열에 기초하여 상기 집중점을 획득하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 1,
The step of obtaining the focus point,
Performing a particle simulation between the virtual rigid particle and the virtual fluid particle to generate the force array acting on the virtual rigid particle; And
Obtaining the focus point based on the force arrangement
A method of providing tactile feedback comprising a.
제6항에 있어서,
상기 힘 배열을 생성하는 단계는,
상기 가상 강체 입자와 상기 가상 유체 입자 사이에 작용하는 힘을 계산하는 단계;
상기 힘에 기초하여 상기 가상 유체 입자의 위치를 계산하는 단계; 및
상기 가상 유체 입자의 위치 및 상기 힘에 기초하여 상기 힘 배열을 생성하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 6,
The step of generating the force arrangement,
Calculating a force acting between the virtual rigid particle and the virtual fluid particle;
Calculating the position of the virtual fluid particle based on the force; And
Generating the force arrangement based on the force and the position of the virtual fluid particle.
A method of providing tactile feedback comprising a.
제6항에 있어서,
상기 힘 배열에 기초하여 상기 집중점을 획득하는 단계는,
상기 힘 배열에 기초하여 상기 최대 힘 지점을 도출하는 단계;
상기 최대 힘 지점에 기초하여 가상 집중점을 계산하는 단계; 및
상기 가상 집중점을 상기 집중점으로 변환하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 6,
Obtaining the focus point based on the force arrangement,
Deriving the maximum force point based on the force arrangement;
Calculating a virtual focus point based on the maximum force point; And
Converting the virtual focus point into the focus point
A method of providing tactile feedback comprising a.
제8항에 있어서,
상기 힘 배열에 기초하여 최대 힘 지점을 도출하는 단계는,
상기 힘 배열 중에서 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정하는 단계; 또는
상기 힘 배열 중에서 지역 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 8,
The step of deriving a maximum force point based on the force arrangement,
Determining a point at which a maximum force acts in the force arrangement as the maximum force point; or
Determining a point at which the local maximum force acts in the force arrangement as the maximum force point
A method of providing tactile feedback comprising a.
제8항에 있어서,
상기 가상 집중점을 계산하는 단계는,
상기 최대 힘 지점에 기초하여 상기 가상 집중점의 위치, 상기 가상 집중점에 작용하는 힘의 크기 및 상기 가상 집중점에 대응하는 변조 주파수 중 적어도 하나를 계산하는 단계
를 포함하는 촉감 피드백 제공 방법.
The method of claim 8,
The step of calculating the virtual focus point,
Calculating at least one of a position of the virtual focus point, a force acting on the virtual focus point, and a modulation frequency corresponding to the virtual focus point based on the maximum force point
A method of providing tactile feedback comprising a.
객체를 감지하는 센서;
감지 결과에 기초하여 상기 객체의 형상을 렌더링하고, 렌더링된 형상에 기초하여 가상 강체 입자를 생성하고, 상기 가상 강체 입자와 가상 유체 입자 간의 상호 작용을 분석하여 상기 객체 상에 상기 가상 유체의 힘이 작용하는 집중점을 획득하는 프로세서
를 포함하고,
상기 프로세서는,
상기 가상 강체 입자에 작용하는 힘 배열을 이용하여 도출된 최대 힘 지점에 기초하여 상기 집중점을 획득하는 촉감 피드백 제공 장치.
A sensor that detects an object;
Rendering the shape of the object based on the detection result, generating a virtual rigid particle based on the rendered shape, analyzing the interaction between the virtual rigid particle and the virtual fluid particle, the force of the virtual fluid on the object A processor that acquires a working focus point
Including,
The processor,
A tactile feedback providing device for acquiring the concentration point based on a maximum force point derived using a force array acting on the virtual rigid particle.
제11항에 있어서,
상기 집중점에 기초하여 상기 객체에 촉감 피드백을 제공하는 송신기
를 더 포함하는 촉감 피드백 제공 장치.
The method of claim 11,
Transmitter providing tactile feedback to the object based on the focus point
A tactile feedback providing device further comprising a.
제12항에 있어서,
상기 송신기는,
상기 집중점에 기초하여 파동의 특성을 결정하고, 상기 파동을 상기 객체에 출력함으로써 상기 촉감 피드백을 제공하는
촉감 피드백 제공 장치.
The method of claim 12,
The transmitter,
Determining the characteristics of the wave based on the concentration point, and providing the tactile feedback by outputting the wave to the object
Device for providing tactile feedback.
제11항에 있어서,
상기 프로세서는,
상기 객체를 감지하는 위치로부터 상기 객체의 표면까지의 깊이 정보에 기초하여 상기 객체에 대한 깊이 텍스쳐로 상기 형상을 렌더링하는
촉감 피드백 제공 장치.
The method of claim 11,
The processor,
Rendering the shape as a depth texture for the object based on depth information from the position sensing the object to the surface of the object
Device for providing tactile feedback.
제11항에 있어서,
상기 프로세서는,
상기 렌더링된 객체에 기초하여 상기 객체의 표면의 일부에 대응하는 가상 강체 입자를 생성하는
촉감 피드백 제공 장치.
The method of claim 11,
The processor,
Generates virtual rigid particles corresponding to a part of the surface of the object based on the rendered object
Device for providing tactile feedback.
제11항에 있어서,
상기 프로세서는,
상기 가상 강체 입자 및 상기 가상 유체 입자 간의 입자 시뮬레이션을 수행하여 상기 가상 강체 입자에 작용하는 상기 힘 배열을 생성하고, 상기 힘 배열에 기초하여 상기 집중점을 획득하는
촉감 피드백 제공 장치.
The method of claim 11,
The processor,
Performing particle simulation between the virtual rigid particle and the virtual fluid particle to generate the force array acting on the virtual rigid particle, and obtaining the focus point based on the force array
Device for providing tactile feedback.
제16항에 있어서,
상기 프로세서는,
상기 가상 강체 입자와 상기 가상 유체 입자 사이에 작용하는 힘을 계산하고, 상기 힘에 기초하여 상기 가상 유체 입자의 위치를 계산하고, 상기 가상 유체 입자의 위치 및 상기 힘에 기초하여 상기 힘 배열을 생성하는
촉감 피드백 제공 장치.
The method of claim 16,
The processor,
Calculate a force acting between the virtual rigid particle and the virtual fluid particle, calculate the position of the virtual fluid particle based on the force, and generate the force array based on the position and the force of the virtual fluid particle doing
Device for providing tactile feedback.
제16항에 있어서,
상기 프로세서는,
상기 힘 배열에 기초하여 상기 최대 힘 지점을 도출하고, 상기 최대 힘 지점에 기초하여 가상 집중점을 계산하고, 상기 가상 집중점을 상기 집중점으로 변환하는
촉감 피드백 제공 장치.
The method of claim 16,
The processor,
Deriving the maximum force point based on the force arrangement, calculating a virtual concentration point based on the maximum force point, and converting the virtual concentration point into the concentration point
Device for providing tactile feedback.
제18항에 있어서,
상기 프로세서는,
상기 힘 배열 중에서 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정하거나, 상기 힘 배열 중에서 지역 최대 힘이 작용하는 지점을 상기 최대 힘 지점으로 결정하는
촉감 피드백 제공 장치.
The method of claim 18,
The processor,
Determining a point where the maximum force acts in the force array as the maximum force point, or determining a point where the local maximum force acts in the force array as the maximum force point
Device for providing tactile feedback.
제18항에 있어서,
상기 프로세서는,
상기 최대 힘 지점에 기초하여 상기 가상 집중점의 위치, 상기 가상 집중점에 작용하는 힘의 크기 및 상기 가상 집중점에 대응하는 변조 주파수 중 적어도 하나를 계산하는
촉감 피드백 제공 장치.
The method of claim 18,
The processor,
Calculating at least one of the position of the virtual focus point, the magnitude of the force acting on the virtual focus point, and a modulation frequency corresponding to the virtual focus point based on the maximum force point
Device for providing tactile feedback.
KR1020190077184A 2019-06-27 2019-06-27 Method and apparatus of providing tactile feedback KR102245898B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190077184A KR102245898B1 (en) 2019-06-27 2019-06-27 Method and apparatus of providing tactile feedback

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190077184A KR102245898B1 (en) 2019-06-27 2019-06-27 Method and apparatus of providing tactile feedback

Publications (2)

Publication Number Publication Date
KR20210001296A KR20210001296A (en) 2021-01-06
KR102245898B1 true KR102245898B1 (en) 2021-04-29

Family

ID=74128718

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190077184A KR102245898B1 (en) 2019-06-27 2019-06-27 Method and apparatus of providing tactile feedback

Country Status (1)

Country Link
KR (1) KR102245898B1 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102514713B1 (en) * 2021-06-17 2023-03-29 한국과학기술원 Method and apparatus of providing tactile feedback for volume data interaction

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102399671B1 (en) * 2014-08-26 2022-05-20 삼성전자주식회사 Method and apparatus for modeling objects
KR20170045809A (en) * 2015-10-20 2017-04-28 삼성전자주식회사 Expressing method and apparatus of caustics

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
CIRIO, G. 외 3명. Six Degrees-of-Freedom Haptic Interaction with Fluids. IEEE TRANSACTIONS ON VISUALIZATION AND COMPUTER GRAPHICS, VOL. 17, NO. 11, 1714-1727페이지. 2011.11. 1부.*

Also Published As

Publication number Publication date
KR20210001296A (en) 2021-01-06

Similar Documents

Publication Publication Date Title
US20230228857A1 (en) Method and Apparatus for Producing an Acoustic Field
Inoue et al. Active touch perception produced by airborne ultrasonic haptic hologram
Culbertson et al. Modeling and rendering realistic textures from unconstrained tool-surface interactions
Long et al. Rendering volumetric haptic shapes in mid-air using ultrasound
JP6541292B2 (en) High resolution haptic effect generation using primitives
Martínez et al. Identifying virtual 3D geometric shapes with a vibrotactile glove
US9098188B2 (en) Display device and method for controlling the same
JP2018110005A (en) System and method for providing features during friction display
CN103180818A (en) Animated page turning
WO2011003303A1 (en) Image manipulation based on tracked eye movement
JP2018142313A (en) System and method for touch of virtual feeling
KR102245898B1 (en) Method and apparatus of providing tactile feedback
CN110998489A (en) Phase calculation device, phase calculation method, haptic display system, and program
JP2011238069A (en) Virtual force sense presentation device and virtual force sense presentation program
KR102286161B1 (en) Method and apparatus of providing tactile feedback
Inoue et al. A pinchable aerial virtual sphere by acoustic ultrasound stationary wave
JP7267068B2 (en) Trained model generation device, program and trained model generation system
US10831274B2 (en) Changing tactile sensitivity of interactions with midair interfaces
Barreiro et al. Natural tactile interaction with virtual clay
KR20220086495A (en) Method for providing tactile feedback based on interaction with virtual fluid and apparatus for performing the same
KR102514713B1 (en) Method and apparatus of providing tactile feedback for volume data interaction
JP5002818B2 (en) Contact sound real-time generation apparatus, method, program, and recording medium storing program
KR102286160B1 (en) Method and apparatus of providing tactile feedback
WO2020131050A1 (en) Enhanced reality input/outputs
Pavlik et al. Interacting with grasped objects in expanded haptic workspaces using the bubble technique

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right