KR20190013793A - 실시간 햅틱 생성 - Google Patents
실시간 햅틱 생성 Download PDFInfo
- Publication number
- KR20190013793A KR20190013793A KR1020187034685A KR20187034685A KR20190013793A KR 20190013793 A KR20190013793 A KR 20190013793A KR 1020187034685 A KR1020187034685 A KR 1020187034685A KR 20187034685 A KR20187034685 A KR 20187034685A KR 20190013793 A KR20190013793 A KR 20190013793A
- Authority
- KR
- South Korea
- Prior art keywords
- actuator
- time parameter
- haptic
- encoded value
- computer
- 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
- G08—SIGNALLING
- G08B—SIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
- G08B6/00—Tactile signalling systems, e.g. personal calling systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L25/00—Baseband systems
- H04L25/38—Synchronous or start-stop systems, e.g. for Baudot code
- H04L25/40—Transmitting circuits; Receiving circuits
- H04L25/49—Transmitting circuits; Receiving circuits using code conversion at the transmitter; using predistortion; using insertion of idle bits for obtaining a desired frequency spectrum; using three or more amplitude levels ; Baseband coding techniques specific to data transmission systems
- H04L25/4902—Pulse width modulation; Pulse position modulation
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Spectroscopy & Molecular Physics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Human Computer Interaction (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
일 실시예는 햅틱 기능을 제공한다. 실시예는 액추에이터 구동 값을 인코딩하는 인코딩된 값을 수신하고, 액추에이터 구동 값은 햅틱 효과의 강도에 대응한다. 실시예는 인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하고, 햅틱 효과를 생성하기 위해 액추에이터 상에서 온/오프 지속 기간들의 패턴을 재생한다.
Description
관련
출원에 대한 교차 참조
본 출원은 2016년 6월 29일에 출원된 미국 가특허 출원 번호 제62/356,265호 및 2017년 6월 27일에 출원된 미국 특허 출원 번호 제15/634,288호에 대한 우선권을 주장하며, 그 개시내용은 참조에 의해 여기에 포함된다.
기술 분야
일 실시예는 일반적으로 햅틱 시스템에 관한 것이며, 특히 햅틱 효과들을 생성하는 시스템에 관한 것이다.
일반적으로, 전자 디바이스 제조자들은 사용자들에게 풍부한 인터페이스를 생성하기 위해 노력한다. 종래의 디바이스들은 사용자에게 피드백을 제공하기 위해 시각적 및 청각적 큐들을 사용하고, 일부 인터페이스 디바이스들에서, 활성 및 저항성 힘 피드백과 같은 운동 감각 피드백, 및/또는 진동, 텍스처, 및 열과 같은 촉각 피드백도 사용자에게 제공되며, 더 일반적으로는 총칭하여 "햅틱 피드백" 또는 "햅틱 효과들"로서 공지되어있다. 햅틱 피드백은 사용자 인터페이스를 향상시키고 단순화하는 큐들을 제공할 수 있다. 구체적으로, 진동 효과들 또는 진동 촉각 햅틱 효과들은 사용자에게 특정 이벤트들을 경보하기 위해 전자 디바이스들의 사용자들에게 큐들을 제공하거나, 시뮬레이션된 또는 가상 환경 내에서 더 큰 감각 몰입을 생성하기 위해 현실적인 피드백을 제공하는 데 유용할 수 있다.
일반적으로, 햅틱 효과 개발자는 디바이스에 대한 햅틱 효과를 저작할 수 있고, 디바이스는 햅틱 효과를 출력하도록 구성될 수 있다. 상이한 유형들의 하드웨어는 상이한 하드웨어 특성들로 인해 상이한 유형들의 햅틱 효과들을 생성할 수 있다. 예를 들어, 편심 회전 질량 모터 액추에이터들, 선형 공진 액추에이터들, 및 압전 액추에이터들과 같은 상이한 유형들의 액추에이터들은 상이한 액추에이터들의 상이한 전기 기계적 특성들로 인해 상이한 유형들의 햅틱 효과들을 생성할 수 있다.
일반적으로, 일부 디바이스들은 액추에이터들을 제어하기 위해 Google Corp.로부터의 "안드로이드" 진동 API와 같은 "온/오프" 진동 제어를 구현할 수 있다. 그러나, 이러한 디바이스들은 액추에이터들의 구동 값들 및 지속 기간들에 대해 미세-입도 제어(fine-grain control)를 구비하지 않을 수 있다. 따라서, "온/오프" 진동 제어에 의존하는 디바이스들 상에 액추에이터들의 구동 값들 및 지속 기간들에 대한 미세-입도 제어를 제공할 필요가 있다.
일 실시예는 햅틱 기능을 제공하는 시스템이다. 시스템은 액추에이터 구동 값을 인코딩하는 인코딩된 값을 수신하고, 액추에이터 구동 값은 햅틱 효과의 강도에 대응한다. 시스템은 인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하고, 햅틱 효과를 생성하기 위해 액추에이터 상에서 온/오프 지속 기간들의 패턴을 재생한다.
도 1은 본 발명의 실시예에 따른 컴퓨터 서버/시스템의 블록도이다.
도 2는 동일한 펄스 기간을 갖지만 상이한 듀티 사이클들을 갖는 펄스들의 예시적인 그래프들을 도시한다.
도 3은 일 실시예에서 인코더의 기능을 예시하는 예시적인 블록도이다.
도 4는 일 실시예에서 재생 모듈의 기능을 예시하는 예시적인 블록도이다.
도 5 내지 도 7은 본 발명의 실시예들에 따른 햅틱 기능을 수행할 때 도 1의 햅틱 생성 모듈의 동작의 예시적인 흐름도들이다.
도 2는 동일한 펄스 기간을 갖지만 상이한 듀티 사이클들을 갖는 펄스들의 예시적인 그래프들을 도시한다.
도 3은 일 실시예에서 인코더의 기능을 예시하는 예시적인 블록도이다.
도 4는 일 실시예에서 재생 모듈의 기능을 예시하는 예시적인 블록도이다.
도 5 내지 도 7은 본 발명의 실시예들에 따른 햅틱 기능을 수행할 때 도 1의 햅틱 생성 모듈의 동작의 예시적인 흐름도들이다.
일 실시예는 오디오 또는 비디오 소스 데이터와 같은 소스 데이터 또는 멀티미디어 클립의 콘텐츠에 관련된 임의의 감각 데이터(예를 들어, 물체들의 가속도, 회전들, 속도들 등)가 주어지면 햅틱 효과를 자동으로 생성할 수 있는 시스템이다. 실시예들은 소스 데이터를 진동 패턴들로 변환함으로써 햅틱 효과들을 생성하고, 따라서 햅틱 효과들은 액추에이터에 인가되는 펄스 폭 변조(즉, 온/오프) 신호들을 사용하여 효과적으로 생성될 수 있다.
도 1은 본 발명의 일 실시예에 따른 시스템(10)의 블록도를 도시한다. 일 실시예에서, 시스템(10)은 디바이스의 일부이고 디바이스에 대한 실시간 햅틱 생성 기능을 제공한다. 다른 실시예에서, 시스템(10)은 디바이스와 별개이고, 디바이스에 대한 실시간 햅틱 생성 기능을 원격으로 제공한다.
단일 시스템으로서 도시되지만, 시스템(10)의 기능은 분산 시스템으로서 구현될 수 있다. 시스템(10)은 정보를 통신하기 위한 버스(12) 또는 다른 통신 메커니즘, 및 정보를 처리하기 위한 버스(12)에 결합된 프로세서(22)를 포함한다. 프로세서(22)는 임의의 유형의 일반 또는 특정 목적 프로세서일 수 있다. 시스템(10)은 프로세서(22)에 의해 실행될 정보 및 명령어들을 저장하기 위한 메모리(14)를 더 포함한다. 메모리(14)는 RAM(random access memory), ROM(read only memory), 자기 또는 광 디스크와 같은 정적 저장장치, 또는 임의의 다른 유형의 일시적 또는 비일시적 컴퓨터 판독 가능 매체의 임의의 조합을 포함할 수 있다.
컴퓨터 판독 가능 매체는 프로세서(22)에 의해 액세스될 수 있는 임의의 이용 가능한 일시적 또는 비일시적 매체일 수 있고, 휘발성 및 비휘발성 매체, 이동식 및 비이동식 매체, 통신 매체, 및 저장 매체 모두를 포함할 수 있다. 통신 매체는 반송파 또는 다른 전송 메커니즘과 같은 변조된 데이터 신호 내의 컴퓨터 판독 가능 명령어들, 데이터 구조들, 프로그램 모듈들, 또는 다른 데이터를 포함할 수 있고, 본 기술 분야에 공지된 임의의 다른 형태의 정보 전달 매체를 포함할 수 있다. 저장 매체는 RAM, 플래시 메모리, ROM, 소거 가능 프로그램 가능 판독 전용 메모리("EPROM"), 전기 소거 가능 프로그램 가능 판독 전용 메모리("EEPROM"), 레지스터들, 하드 디스크들, 이동식 디스크들, 컴팩트 디스크 판독 전용 메모리("CD-ROM"), 또는 본 기술 분야에 공지된 임의의 다른 형태의 저장 매체를 포함할 수 있다.
일 실시예에서, 메모리(14)는 프로세서(22)에 의해 실행될 때 기능을 제공하는 소프트웨어 모듈을 저장한다. 모듈들은 일 실시예에서 디바이스의 나머지뿐만 아니라 시스템(10)에 대한 운영 체제 기능을 제공하는 운영 체제(15)를 포함한다. 모듈들은 본 명세서에 더 상세히 개시되는 바와 같이, 펄스-폭 변조("PWM")에 따라 변조된 신호들을 사용하여 햅틱 효과들을 생성하는 햅틱 생성 모듈(16)을 더 포함한다. PWM은 메시지를 펄싱 신호로 인코딩하는데 사용되는 변조 기술이다. PWM은 전기 디바이스들에 공급되는 전력을 제어하기 위해 사용될 수 있으며, 여기서 부하에 공급되는 전압(및 전류)의 평균 값은 공급장치와 부하 사이에서 가상 또는 물리적 스위치를 빠른 속도로 턴 온 또는 오프하는 것에 의해 제어된다. 스위치가 오프 기간들에 비해 더 길게 온 상태가 될수록, 부하에 공급되는 총 전력이 더 높아진다.
일 실시예에서, 햅틱 생성 모듈(16)은 복수의 모듈을 포함할 수 있고, 각각의 개별 모듈은 햅틱 효과를 생성하기 위한 특정 개별 기능을 제공한다. 시스템(10)은 통상적으로 스마트폰의 운영 체제의 일부인 진동 애플리케이션 프로그래밍 인터페이스("API")와 같은 추가 기능을 포함하는 하나 이상의 추가 애플리케이션 모듈(18)을 포함할 것이다.
일 실시예에서, 시스템(10)은 원격 소스들로부터 데이터를 송신 및/또는 수신할 수 있고, 적외선, 라디오, Wi-Fi, 셀룰러 네트워크 통신 등과 같은 모바일 무선 네트워크 통신을 제공하기 위해 네트워크 인터페이스 카드와 같은 통신 디바이스(20)를 더 포함할 수 있다. 일 실시예에서, 통신 디바이스(20)는 이더넷 연결, 모뎀 등과 같은 유선 네트워크 연결을 제공할 수 있다.
프로세서(22)는 또한 사용자에게 그래픽 표현 또는 사용자 인터페이스를 디스플레이하기 위해, 버스(12)를 통해 액정 디스플레이("LCD")와 같은 디스플레이(24)에 결합된다. 디스플레이(24)는 프로세서(22)로/로부터 신호들을 송신 및 수신하도록 구성된 터치스크린과 같은 터치-감응 입력 디바이스일 수 있고, 멀티-터치 터치스크린일 수 있다. 프로세서(22)는 또한 사용자가 마우스 또는 스타일러스와 같은 시스템(10)과 상호 작용할 수 있게 하는 키보드 또는 커서 제어부(28)에 결합될 수 있다.
일 실시예에서, 시스템(10)은 액추에이터(26)를 더 포함한다. 프로세서(22)는 생성된 햅틱 효과와 연관된 햅틱 신호를 액추에이터(26)에 송신할 수 있고, 이는 차례로 진동 촉각 햅틱 효과들, 정전 마찰 햅틱 효과들, 또는 변형 햅틱 효과들과 같은 햅틱 효과들을 출력한다. 액추에이터(26)는 액추에이터 구동 회로를 포함한다. 액추에이터(26)는, 예를 들어, 전기 모터, 전자기 액추에이터, 보이스 코일, 형상 기억 합금, 전기 활성 폴리머, 솔레노이드, 편심 회전 질량 모터("ERM"), 선형 공진 액추에이터("LRA"), 압전 액추에이터, 고 대역폭 액추에이터, 전기 활성 폴리머("EAP") 액추에이터, 정전 마찰 디스플레이, 또는 초음파 진동 발생기일 수 있다. 대안적인 실시예들에서, 시스템(10)은 액추에이터(26)(도 1에 도시되지 않음)에 부가하여, 하나 이상의 추가적인 액추에이터들을 포함할 수 있다.
액추에이터(26)는 햅틱 출력 디바이스의 예이며, 햅틱 출력 디바이스는 구동 신호에 응답하여, 진동 촉각 햅틱 효과들, 정전 마찰 햅틱 효과들, 또는 변형 햅틱 효과들과 같은 햅틱 효과들을 출력하도록 구성된 디바이스이다. 대안적인 실시예들에서, 액추에이터(26)는 일부 다른 유형의 햅틱 출력 디바이스로 대체될 수 있다. 또한, 다른 대안적인 실시예들에서, 시스템(10)은 액추에이터(26)를 포함하지 않을 수 있고, 시스템(10)으로부터의 별개의 디바이스는 햅틱 효과들을 생성하는 액추에이터 또는 다른 햅틱 출력 디바이스를 포함하고, 시스템(10)은 발생된 햅틱 효과 신호들을 통신 디바이스(20)를 통해 그 디바이스에 송신한다.
시스템(10)은 추가로 데이터베이스(30)에 동작 가능하게 결합될 수 있고, 여기서 데이터베이스(30)는 모듈들(16 및 18)에 의해 사용되는 데이터를 저장하도록 구성될 수 있다. 데이터베이스(30)는 운영 데이터베이스, 분석 데이터베이스, 데이터 웨어하우스, 분산 데이터베이스, 최종 사용자 데이터베이스, 외부 데이터베이스, 내비게이션 데이터베이스, 인메모리(in-memory) 데이터베이스, 문서 지향 데이터베이스, 실시간 데이터베이스, 관계 데이터베이스, 객체-지향 데이터베이스, 또는 본 기술 분야에 공지된 임의의 다른 데이터베이스일 수 있다.
일 실시예에서, 시스템(10)은 스피커(32)를 더 포함한다. 프로세서(22)는 오디오 신호를 스피커(32)에 송신할 수 있으며, 이는 차례로 오디오 효과를 출력한다. 스피커(32)는, 예를 들어, 동적 확성기, 전기역학 확성기, 압전 확성기, 자기 변형 확성기, 정전 확성기, 리본 및 평면 자기 확성기, 굽힘파 확성기, 평판 확성기, 헤일 에어 모션 트랜스듀서(heil air motion transducer), 플라즈마 아크 스피커, 디지털 확성기 등일 수 있다. 대안적인 실시예들에서, 시스템(10)은 스피커(32)(도 1에 도시되지 않음)에 부가하여, 하나 이상의 추가적인 스피커들을 포함할 수 있다. 또한, 다른 대안적인 실시예들에서, 시스템(10)은 스피커(32)를 포함하지 않을 수 있고, 시스템(10)으로부터의 별개의 디바이스는 오디오 효과들을 출력하는 스피커를 포함하고, 시스템(10)은 통신 디바이스(20)를 통해 그 디바이스에 오디오 신호들을 송신한다.
일 실시예에서, 시스템(10)은 센서(34)를 더 포함한다. 센서(34)는, 사운드, 이동, 가속도, 생물학적 신호, 거리, 흐름, 힘/압력/변형/굴곡, 습도, 선형 위치, 배향/기울기, 라디오 주파수, 회전 위치, 회전 속도, 스위치 조작, 온도, 진동, 가시 광 강도 등과 같은, 그러나 이에 제한되지 않는, 에너지의 형태, 또는 다른 물리적 특성을 검출하도록 구성될 수 있다. 센서(34)는 검출된 에너지 또는 다른 물리적 특성을 전기 신호, 또는 가상 센서 정보를 나타내는 임의의 신호로 변환하도록 추가로 구성될 수 있다. 센서(34)는 가속도계, 갈바닉 스킨 응답 센서, 용량성 센서, 홀 효과 센서, 적외선 센서, 초음파 센서, 압력 센서, 광섬유 센서, 굽힘 센서(또는 굴곡 센서), 힘-감지 저항기, 로드 셀, LuSense CPS2 155, 소형 압력 트랜스듀서, 압전 센서, 변형 게이지, 습도계, 선형 위치 터치 센서, 선형 전위차계(또는 슬라이더), 선형 변위 차동 변환기, 나침반, 경사계, 자기 태그(또는 라디오 주파수 식별("RFID") 태그), 회전 인코더, 회전 전위차계, 자이로스코프, 온-오프 스위치, 온도 센서(예를 들어, 서모미터, 열전쌍, 저항 온도 검출기, 서미스터, 온도 변환 집적 회로 등), 마이크로폰, 광도계, 고도계, 생물학적 모니터, 카메라, 광 의존 저항기 등, 또는 심전도, 뇌전도, 근전도, 근전계, 안전도, 구개전도 또는 임의의 다른 전기생리학적 출력을 출력하는 임의의 디바이스 같은 그러나 이에 한정되지 않는 임의의 디바이스일 수 있다.
일 실시예에서, 시스템(10)은 센서(34)(도 1에 도시되지 않음)에 더하여 하나 이상의 추가 센서를 포함할 수 있다. 일 실시예에서, 센서(34) 및 하나 이상의 추가 센서들은 센서 어레이의 일부, 또는 일부 다른 유형의 센서들의 집합/배열일 수 있다. 일 실시예에서, 시스템(10)은 센서(34)를 포함하지 않을 수 있고, 시스템(10)으로부터의 별개의 디바이스는 에너지의 형태 또는 다른 물리적 특성을 검출하고, 검출된 에너지 또는 다른 물리적 특성을 전기 신호, 또는 가상 센서 정보를 나타내는 다른 유형의 신호로 변환하는 센서를 포함한다. 디바이스는 이어서 변환된 신호를 통신 디바이스(20)를 통해 시스템(10)에 송신할 수 있다.
본 발명의 일 실시예는 액추에이터들 상의 구동 값들 및 지속 기간들에 대한 미세-입도 제어를 제공하기 위해 온/오프 진동 제어와 함께 PWM 기능을 구현한다. 이 실시예는 고품질 햅틱을 전달하기 위해 온/오프 진동 제어를 사용하기 위한 알고리즘을 제공한다. 일 실시예에서, 햅틱 효과 설계자의 의도된 햅틱 강도는 액추에이터 상에 렌더링된 진동 패턴들 및 햅틱들로 변환된다.
일 실시예에서, 디바이스의 운영 체제가 액추에이터의 온/오프 제어만을 허용하는 기능을 실행하고 액추에이터의 구동 신호의 강도를 제어하는 것을 허용하지 않는 경우, 실시예는 고품질 햅틱 효과들을 전달하기 위해 온/오프 제어를 구성한다. 예를 들어, 일 실시예는 안드로이드 디바이스 상의 진동자를 동작시키는 "진동자" 클래스의 일부인 안드로이드 진동 API를 사용할 수 있다. 표 1은 이 클래스에 의해 노출된 예시적인 퍼블릭 메소드들을 제공한다. 표 1의 예에 도시된 바와 같이, 안드로이드 진동 API는 액추에이터의 구동 값을 제어하지 않고, 제어될 수 있는 유일한 파라미터는 지속 기간이다. 이 API가 지정된 지속 기간으로 호출될 때, 액추에이터는 호출에 지정된 지속 기간의 최대 구동 값으로 턴 온될 것이다.
일 실시예는 액추에이터 활성화 지속 기간 및 동기화의 미세-입도 제어를 구현함으로써 가변 강도들의 햅틱 신호들을 렌더링하기 위해 안드로이드 진동 API를 사용한다. 실시예는 실험(예를 들어, 특정 액추에이터에 대한 오프라인 실험)에 의해 획득될 수 있는 펄스 기간(또는 펄스 지속 기간)을 갖는 펄스를 사용하여 실시간 햅틱 기능을 제공한다. 원하는 햅틱 강도는 일반적으로 다음과 같이 정의되는 펄스의 듀티 사이클을 변조함으로써 렌더링된다:
듀티 사이클 = 펄스 폭 X 100/펄스 기간
듀티 사이클은 펄스의 펄스 폭(또는 "온" 지속 기간)을 변경함으로써 변조될 수 있다. 도 2는 동일한 기간을 갖지만 상이한 듀티 사이클들을 갖는 펄스들의 예시적인 그래프들(200)을 예시하고, 제1 펄스(202)는 10% 듀티 사이클을 갖고, 제2 펄스(204)는 30% 듀티 사이클을 갖고, 제3 펄스(206)는 50% 듀티 사이클을 갖고, 제5 펄스(208)는 90% 듀티 사이클을 갖는다. 일 실시예에서, (펄스 기간의 역수인) 펄스들의 주파수는 액추에이터의 유형에 기초하여 구성되고 일정하게 유지되는 반면, 인식된 렌더링된 햅틱 효과들의 강도를 제어하기 위해 듀티 사이클이 변화된다. 일 실시예에서, 인식된 강도는 펄스들의 듀티 사이클에 직접 비례한다. 즉, 20% 듀티 사이클을 갖는 펄스는 10% 듀티 사이클을 갖는 펄스의 2배만큼 강한 것으로 인식된다. 듀티 사이클을 적절하게 변조하는 것에 의해, 실시예들은 인식된 강도를 변조함으로써, 다양한 햅틱 효과들을 재생한다.
일 실시예는, 예를 들어, 코인 ERM 액추에이터에 인가된 구동 신호의 펄스 폭을 변조한다. 일 실시예에서, 코인 ERM 액추에이터에 대해, 펄스의 최대 시간 기간이 32 밀리초보다 작을 필요가 있고 시간 기간이 더 낮을수록 햅틱 충실도가 더 양호하다는 것을 보여주는 실험에 기초하여 펄스의 주파수가 결정되었다. 따라서, 실시예는 32 밀리초로 펄스 기간을 구성할 수 있다. 최대 햅틱 강도를 달성하기 위해, 실시예는 듀티 사이클을 100%로 설정하고, 여기서 액추에이터는 액추에이터가 턴 오프되도록 요청될 때까지 항상 온 상태가 될 것이다. 50% 햅틱 강도를 달성하기 위해, 실시예는 듀티 사이클을 50%로 설정하고, 여기서 액추에이터는 16 밀리초 동안 온 및 16 밀리초 동안 오프될 것이다. 펄스들은 액추에이터가 턴 오프되도록 요청될 때까지 반복적으로 인가될 것이다. 25% 햅틱 강도를 달성하기 위해, 실시예는 듀티 사이클을 25%로 설정하고, 여기서 액추에이터는 8 밀리초 동안 온 및 24 밀리초 동안 오프될 것이다. 펄스들은 액추에이터가 턴 오프되도록 요청될 때까지 반복적으로 인가될 것이다.
일 실시예는 아래에 상세히 설명되는 바와 같이 인코더, 패턴 변환기, 및 패턴 재생 모듈을 구현함으로써 실시간 햅틱 수정 기능을 제공한다. 일 실시예에서, 인코더는 워크스테이션(예를 들어, MAC 또는 PC 머신) 상의 미디어 애플리케이션/드라이버(예를 들어, 설계 도구)에 존재할 수 있는 반면, 패턴 변환기 및 패턴 재생 모듈은 안드로이드 디바이스와 같은 디바이스 상에 존재한다. 이 실시예에서, 워크스테이션은 유니버설 직렬 버스("USB") 연결과 같은 본 기술 분야의 임의의 공지된 수단을 통해 재생 디바이스에 인코딩된 값들을 송신할 수 있다. 일 실시예에서, 예를 들어, 사용자는 Avid Technology Corp.로부터의 "Pro Tools"와 같은 본 기술 분야에 공지된 임의의 오디오 편집 도구를 사용하여 햅틱 효과를 설계할 수 있다. 일 실시예에서, 오디오 편집 도구에 대한 플러그인은 구동 값들을 생성할 수 있거나, 추가 드라이버는 오디오 편집 도구로부터 오디오 데이터를 수신하고, (예컨대, 다운-샘플링, 피크 검출 등을 수행함으로써) 이를 구동 값들로 변환할 수 있다. 이 실시예에서, 플러그인/드라이버의 출력은 인코더에 입력되는 구동 값인 PWM 출력 신호의 듀티 사이클 값(펄스의 온 지속 기간)이다.
도 3은 일 실시예에서 인코더(302)의 기능을 예시하는 예시적인 블록도(300)이다. 인코더(302)는 햅틱 구동 값(304)을 인코딩된 값(306)으로 변환한다. 구동 값(304)은 햅틱 재생의 강도를 제어하도록 구성된다. 구동 값(304)은 입력 신호를 햅틱 신호로 변환하기 위해 관련 기술 분야의 통상의 숙련자에게 공지되어있는 임의의 햅틱 변환 알고리즘에 의해 획득될 수 있다. 일 실시예에서, 구동 값(304)은 구동 값(304)을 획득하기 위해 오디오-대-햅틱 변환을 수행하는 편집 소프트웨어 내의 오디오 파일과 같은 햅틱 파일 소스로부터 획득될 수 있다. 예를 들어, 일 실시예에서 구동 값(304)은 본 명세서에 참조로 포함되는 미국 특허 공개 제2015/0070269호에 개시된 바와 같은 피크 검출을 사용하여 오디오 신호를 햅틱 신호로 변환하는 것으로부터 도출될 수 있다.
예를 들어, 일 실시예는 입력 신호의 각각의 부분에 대한 최대 진폭 값을 식별하고 식별된 최대 진폭 값에 기초하여 입력 신호의 각각의 부분에 대한 햅틱 신호를 생성하는 피크 검출 햅틱 변환 알고리즘을 구현하고, 식별된 최대 진폭 값은 햅틱 신호의 크기를 정의한다. 다른 예로서, 일 실시예는 입력 신호의 일부(예를 들어, 최고 주파수 값들을 갖는 입력 신호의 일부)를 필터링 제거하고 입력 신호의 나머지 부분에 기초하여 햅틱 신호를 생성하는 저역 통과 필터 햅틱 변환 알고리즘을 구현한다. 또 다른 예로서, 일 실시예는 입력 신호의 일부(예를 들어, 최저 주파수 값들을 갖는 입력 신호의 일부)를 필터링 제거하고 입력 신호의 나머지 부분에 기초하여 햅틱 신호를 생성하는 고역 통과 필터 햅틱 변환 알고리즘을 구현한다. 또 다른 예로서, 일 실시예는 입력 신호의 적어도 일부의 피치를 시프트하고 피치-시프트된 입력 신호에 기초하여 햅틱 신호를 생성하는 피치-시프트 햅틱 변환 알고리즘을 구현한다. 또 다른 예로서, 일 실시예는 입력 신호의 적어도 일부의 주파수를 시프트하고, 주파수-시프트된 입력 신호에 기초하여 햅틱 신호를 생성하는 주파수-시프트 햅틱 변환 알고리즘을 구현한다.
일 실시예에서, 구동 값(304)은 햅틱 효과의 인벨로프/형상을 정의하는 파라미터화된 진동 정의의 형태로 수신될 수 있다. 정의는 지속 기간, 주파수, 크기 등을 포함하는 햅틱 효과를 정의하는 파라미터들을 포함할 수 있다. 일 실시예에서, 이 정의는 Immersion Corp.로부터의 "TouchSense ® 3000 Haptic Design Kit"에 따른다. 이 실시예에서, 햅틱 효과는 3개의 기초 부분들/영역들 또는 효과 크기들을 포함하는 인벨로프에 의해 형성된 정의 형상에 의해 정의된다: MagSweep 또는 주기성 기초 효과로부터 형성되는 임펄스, 지속, 및 페이드.
일 실시예에서, 인코더(302)는 [128, 255]와 같은 범위 내의 이산적 구동 값들(304)을 수신하도록 구성된다. 이 실시예에서, 128의 구동 값은 0 햅틱 강도를 전달하도록 구성된다. 햅틱 강도는 구동 값과 함께 증가하고, 255의 구동 값은 최대 햅틱 강도를 생성하도록 구성된다.
인코더(302)는 가속도 트래커(308) 및 구동 값 매퍼(310)를 포함한다. 가속도 트래커(308)는 실시간으로 액추에이터의 추정된 가속도를 예측하고 추적하기 위해 모터의 성능(예를 들어, 상승 및 하강 곡선)의 표를 사용한다. 이는 액추에이터가 원하는 강도에 빠르게 도달할 수 있게 하도록 구성된 피드-포워드 알고리즘을 구현한다. 이는 짧은 지속 기간 동안 액추에이터를 과구동함으로써(예를 들어, 최대 전압에서 액추에이터를 동작시킴으로써) 이를 수행한다. 과구동 지속 기간은 액추에이터 상승 시간 및 요청된 햅틱 강도(구동 값(304)에 의해 표시됨)의 함수이다. 가속도 트래커(308) 및 대응하는 피드-포워드 알고리즘의 예시적인 실시예들은 미국 특허 제9,213,408호에 개시되어있으며, 이는 본 명세서에 참고로 포함된다.
예를 들어, 일반적으로 비선형 상승 및 하강 특성들을 갖는 저속 액추에이터들을 모델링하기 위해, 실시예들은 액추에이터가 나머지로부터 정격 가속도의 90%로 상승하기 위해 소요되는 총 상승 시간을 측정한다. 그 다음, 이러한 상승 시간 영역은, 일 실시예에서, 상승 시간의 10%, 20% ..., 90%에 10개의 세그먼트로 분할되고, 각각의 포인트에서의 대응하는 가속도가 주목된다. 상승 곡선과 유사하게, 임의의 수의 값들이 사용될 수 있지만, 하나의 실시예에서 하강 곡선에 대해 10개의 값들이 획득된다. 하강 시간은 액추에이터가 정격 가속도로부터 인식 가능 가속도(일 실시예에서는 ~ 0.04 g) 아래로 진행하는 데에 요구되는 시간인 것으로 고려된다. 만일 액추에이터에 의해 제동이 지원되면, 음의 과구동 전압, 또는 션팅(shunting)과 같은 일부 다른 제동 메커니즘이 인가된다. 그렇지 않으면, 전압이 인가되지 않는다. 이러한 튜닝 모델을 적용함으로써, 실시예들은 모터가 어떤 효과를 수행할 수 있는지, 그리고, 또한, 주어진 시간의 모터의 상태의 더 정확한 구현을 갖는다.
일 실시예에서, 가속도 트래커(308)의 기능은 전형적으로 5 밀리초인 모든 타이머 틱/사이클에서 실행된다. 각각의 틱 상에서, 실시예들은 원하는 힘을 결정하고, 액추에이터에 송신하기 위해 새로운 힘/전압을 계산한다(즉, 원하는 속도로 스핀하도록 모터를 부분적으로 과구동하거나 제동함). 실시예들은 모터가 액추에이터가 상승 곡선에 있는지 하강 곡선에 있는지와 연계하여 모터가 현재 동작하고 있는 바에 대한 추정을 고려하여 모터가 얼마나 빨리 스핀할 수 있는지에 비교하여 햅틱 효과에 기초하여 모터가 얼마나 빨리 스핀하여야 하는지를 결정한다. 실시예들은 모터가 원하는 속도에 가능한 한 가깝게 스핀하게 할 전압을 계산하고, 그 다음, 추정된 속도를 업데이트/재계산하고, 이는 모터가 타이머 틱에서 원하는 속도에 도달할 수 없는 경우 원하는 속도와 동일하지 않을 수 있다.
일 실시예에서, 예를 들어, 액추에이터의 상승 및 하강 곡선들은 튜닝 프로세스에 대한 변경들에 기초하여 10개의 선형 세그먼트들로 분할된다. 타이머 틱 내의 힘 값들의 최대 증가/감소가 이러한 라인 세그먼트들의 기울기에 기초하여 결정된다. 기울기는 액추에이터가 다음 타이머 틱에 의해 원하는 힘 값이 될 수 있는지를 결정하기 위해 사용된다. 그렇지 않다면, 킥(kick) 또는 브레이크 펄스가 인가된다. 액추에이터가 다음 시간 틱에 의해 원하는 힘이 될 수 있는 경우, 힘이 증가/감소되어야하는 양은 액추에이터가 타이머 틱의 끝에 원하는 힘 값에 있도록 결정된다. 추정 힘은 모든 틱에서 업데이트된다.
일 실시예에서, 액추에이터가 다양한 가속 포인트들로 상승/하강하기 위해 얼마나 오래 걸리는지를 나타내는 응답 시간 곡선들/표들을 획득하기 위해 액추에이터가 시험되면, 현재 액추에이터가 시험된 액추에이터의 곡선을 따르는 것으로 가정하여, 기록된 곡선들/표들은 실시간으로 사용되어, 데이터를 추출하고, 임의의 시점에 어떠한 액추에이터 가속이 존재해야 하는지를 추정한다. 실시예는 예를 들어, 액추에이터가 최대 작동에 도달하는 데 얼마나 많은 시간이 걸리는지와 액추에이터가 최대 작동으로부터 휴지 상태로 진행하는 데 얼마나 많은 시간이 걸리는지를 추정할 수 있다. 이러한 값들에 기초하여, 가속도 트래커(308)는 주기적으로(예를 들어, 매 밀리초 또는 매 5 밀리초마다) 현재 가속 상태를 추적하고, 액추에이터를 얼마나 많이 가속하는지를 추정하고, 액추에이터가 예를 들어 과구동 전압을 인가함으로써(예를 들어, 특정 과구동 지속 기간 동안 액추에이터를 유지하기 위해 최대 전압에서 액추에이터를 구동함으로써) 액추에이터가 고속으로 응답하게 하기 위해 이에 따른 수정된 구동 값들을 큐잉한다. 이와 같이, 가속도 트래커(308)는 구동 값(304)에 기초하여 수정된 구동 값을 생성한다.
그 후, 구동 값 매퍼(310)는, 예를 들어, 도 2를 참조하여 본 명세서에 개시된 바와 같이, 가속도 트래커(308)로부터 수정된 구동 값들을 수신하고, 이들을 펄스 내의 "온" 지속 기간을 나타내는 듀티 팩터들인 인코딩된 값들(306)에 매핑한다.
도 4는 일 실시예에서 재생 모듈(402)의 기능을 예시하는 예시적인 블록도(400)이다. 재생 모듈(402)은 인코딩된 값들(404)(예를 들어, 값들의 어레이)을 수신하고, 이하에서 상세히 설명되는 바와 같이 이들을 햅틱 출력(406)으로 변환한다. 일 실시예에서, 재생 모듈(402)은 아래에 상세히 설명되는 바와 같이 안드로이드 디바이스에서 실행되도록 구성되는 안드로이드 진동 패턴 변환기(408) 및 안드로이드 진동 패턴 재생 모듈(410)을 포함한다. 그러나, 다른 대안적인 실시예들은, 안드로이드 진동 패턴 변환기(408) 및 안드로이드 진동 패턴 재생 모듈(410)의 것과 유사한 기능들을 각각 제공함으로써 인코딩된 값들(404)을 적절한 온/오프 패턴으로 변환하고 그들을 액추에이터 상에 재생하기 위해 다른 디바이스들에서 실행하도록 구성된 패턴 변환기들 및 패턴 재생 모듈들을 구현할 수 있다.
일반적으로, 안드로이드 진동 API는 온/오프 패턴의 형태로 입력을 요구하는 공개 API이다. 재생 모듈(402) 내로부터 이 API를 호출하기 위해, 재생 모듈(402)은 안드로이드 진동 패턴 변환기(408) 및 안드로이드 진동 패턴 재생 모듈(410)을 구현한다. 안드로이드 진동 패턴 변환기(408)는 인코딩된 값들(404)의 어레이로서 입력을 수신하고, 액추에이터 상태들을 추적하기 위해 상태 머신을 구현한다. 안드로이드 진동 패턴 변환기(408)는 상태 머신을 추적 및 업데이트하고 안드로이드 공개 API를 위한 입력으로서 적합한 진동 패턴을 출력한다. 안드로이드 진동 패턴 재생 모듈(410)은 안드로이드 진동 패턴 변환기(408)로부터의 출력을 수신하고 이러한 파라미터들로 안드로이드의 공개 API를 호출한다. 일 실시예에서, 안드로이드 진동 패턴 변환기(408) 및 안드로이드 진동 패턴 재생 모듈(410)은 인코딩된 값들(404)이 재생 모듈(402)에 의해 수신되자마자 활성화된다.
일 실시예에서, 안드로이드 진동 패턴 변환기(408)에 의해 구현되는 상태 머신은 다음의 파라미터들을 추적한다:
·
액추에이터 온 시간("act_on_time"): 액추에이터가 온 상태로 머무를 필요가 있는 시간
·
액추에이터 오프 시간("act_off_time"): 액추에이터가 오프 상태로 머무를 필요가 있는 시간. 이는 펄스의 지속 기간과 액추에이터 온 시간 간의 차이이다.
·
액추에이터 활성화 시간("act_active_time"): 액추에이터가 그 현재 상태에서 활성화되는 시간
액추에이터 현재 상태("act_state"): 온 또는 오프
일 실시예에서, 인코딩된 값들(404)은 인코더로부터 안드로이드 진동 패턴 변환기(408) 내의 "Write_value" 함수에 의해 수신된다. 인코딩된 값은 액추에이터가 펄스에서 온 상태로 머무를 필요가 있는 시간을 나타낸다. 인코딩된 값은 "act_on_time" 파라미터로 복사되고 "act_off_time" 파라미터는 다음의 값을 취한다:
act_off_time = 펄스 폭 - act_on_time
"act_state" 값은 다음 조건들을 제외하고는 변경되지 않은 채로 남는다.
이전 인코딩된 값이 현재 인코딩된 값보다 작고 액추에이터의 현재 상태가 오프이면, 액추에이터 상태는 온으로 변경되고 "act_active_time" 파라미터는 리셋된다.
이전 인코딩된 값이 현재 인코딩된 값보다 크고, 액추에이터의 현재 상태가 온이면, 액추에이터 상태는 오프로 변경되고 "act_active_time" 파라미터는 리셋된다.
밀리초 마다, 함수 "업데이트"가 호출된다. 호출되면, "업데이트"는 "act_active_time" 파라미터를 업데이트/증분하고, "act_active_time" 파라미터를 요구된 상태 시간과 비교하고, 필요한 경우 상태를 수정한다. 예를 들어, 액추에이터가 현재 온 상태에 있다면, 밀리초 마다 "act_active_time"이 증분되고 "act_on_time"과 비교된다. "act_active_time"이 "act_on_time" 보다 더 큰 경우, "act_active_time"은 리셋되고 상태는 오프로 수정된다. 다음번 업데이트 함수가 실행될 때, "act_active_time"이 추적되고 "act_off_time" 에 대해 비교된다.
일 실시예에서, 각각의 인코딩된 값(404)은 액추에이터 구동 값의 "틱"을 업데이트하도록 구성된다. 예를 들어, 일부 액추에이터들에 대해, 업데이트 틱은 5 밀리초이고, 이는 액추에이터 구동 값이 매 5 밀리초마다 업데이트되는 것을 의미한다. 따라서, "업데이트" 함수는 각각의 인코딩된 값(404)에 대해 여러 번 호출될 수 있다. 예를 들어, 인코딩된 값이 5 밀리초 동안 구성되면, "업데이트" 함수는 각각의 인코딩된 값에 대해 5 회 호출된다. "업데이트" 함수에 대한 각각의 호출 동안, 상태는 연속적으로 모니터링된다. 상태가 변화하면, 상태 시간들이 기록된다. 상태 시간들은 안드로이드 진동 기능에 의해 예상되는 포맷으로 채워진다. 패턴은 "OFF_DURATION_MILLISEC, ON_DURATION_MILLISEC, OFF_DURATION_MILLISEC, ON_DURATION_MILLISEC ..." 패턴으로서 채워지고, "OFF_DURATION_MILLISEC"는 액추에이터가 턴 오프되는 지속 기간이고 "ON_DURATION_MILLISEC"는 액추에이터가 턴 온되는 지속 기간이다. 안드로이드 진동 패턴 재생 모듈(410)은 이어서 안드로이드 진동 패턴 변환기(408)로부터의 출력을 취하고 안드로이드 진동 API 함수를 호출하며, 이는 차례로 이에 따라 액추에이터를 활성화시킨다.
일 실시예에서, PWM 기술은 더 느린 액추에이터들(예를 들어, ERM) 상에서 최상으로 작동하지만, 액추에이터들의 능력들에 따라 다양한 햅틱 기능들을 상이하게 구성함으로써 더 빠른 액추에이터들에 대해 작동할 수 있다. 예를 들어, 햅틱 기능은 더 빠른 액추에이터들에 대해 사용되는 펄스의 펄스 폭이 더 느린 액추에이터들에 대해 사용되는 펄스의 펄스 폭과 비교하여 더 낮도록 실시예들에서 펄스 폭 파라미터를 조정함으로써 더 빠른 액추에이터들을 위해 구성될 수 있다.
도 5 내지 도 7은 본 발명의 실시예들에 따른 햅틱 기능의 흐름도들(500, 600, 700)이다. 일 실시예에서, 흐름도들(500, 600, 700)의 기능은 메모리 또는 다른 컴퓨터 판독 가능 또는 유형 매체에 저장되고 프로세서에 의해 실행되는 소프트웨어에 의해 구현된다. 다른 실시예들에서, 기능은 (예를 들어, 주문형 집적 회로("ASIC"), 프로그램 가능 게이트 어레이("PGA"), 필드 프로그램 가능 게이트 어레이("FPGA") 등의 사용을 통해) 하드웨어에 의해, 또는 하드웨어와 소프트웨어의 임의의 조합에 의해 수행될 수 있다.
보다 구체적으로, 도 5는 일 실시예에서의 재생 모듈(402)의 기능을 도시하고, 블록도(400)의 요소들을 참조하여 아래에 설명된다. 재생 모듈(402)은 일 실시예에서 도 1의 시스템(10) 내의 햅틱 생성 모듈(16)과 동일하거나, 그 내에 포함되거나, 그에 부가하여 제공될 수 있다.
502에서, 재생 모듈(402) 내의 안드로이드 진동 패턴 변환기(408)는 인코딩된 값들(404)의 어레이를 수신한다. 504에서, 안드로이드 진동 패턴 변환기(408)는 어레이로부터 엘리먼트를 판독한다. 506에서, 안드로이드 진동 패턴 변환기(408)는 어레이의 엘리먼트에 기초하여 액추에이터 "온" 시간 및 "오프" 시간 값들을 계산한다.
508에서, 안드로이드 진동 패턴 변환기(408)는 "업데이트" 함수를 호출한다. "업데이트" 함수의 기능은 본 명세서에서 상세히 기술된 바와 같다. 510에서, 안드로이드 진동 패턴 변환기(408)는 액추에이터 상태를 추적하고 결과적인 패턴을 채운다. 512에서, 안드로이드 진동 패턴 변환기(408)는 "업데이트" 함수에 대한 호출의 수가 밀리초 단위의 액추에이터 업데이트율에 도달했는지를 결정한다. 그렇지 않다면, 안드로이드 진동 패턴 변환기(408)는 508로 되돌아간다. "업데이트" 함수에 대한 호출들의 수가 밀리초 단위의 액추에이터 업데이트율에 도달하였다면, 안드로이드 진동 패턴 변환기(408)는 인코딩된 값들의 어레이의 끝이 도달되는지를 결정한다. 그렇지 않다면, 안드로이드 진동 패턴 변환기(408)는 504로 되돌아간다. 인코딩된 값들의 어레이의 끝에 도달하면, 안드로이드 진동 패턴 변환기(408)는 결정된 패턴들의 어레이를 반환한다.
도 6은 일 실시예에서의 "업데이트" 함수의 기능을 예시한다. 602에서 액추에이터 활성화 시간은 "1"만큼 증분된다. 604에서, 액추에이터 활성화 시간이 요구된 상태 시간에 도달했는지가 결정된다. 그렇지 않다면, 프로세스는 610에서 종료한다. 액추에이터 활성화 시간이 요구된 상태 시간에 도달하였다면, 606에서 액추에이터 활성화 시간이 0으로 리셋되고, 606에서 액추에이터 상태가 토글되고, 610에서 프로세스가 종료된다.
도 7의 기능에서, 702에서, 액추에이터 구동 값을 인코딩하는 인코딩된 값이 수신되고, 여기서 액추에이터 구동 값은 햅틱 효과의 강도에 대응한다. 704에서, 인코딩된 값은 온/오프 지속 기간들의 패턴으로 변환되고, 706에서, 온/오프 지속 기간들의 패턴은 햅틱 효과를 생성하기 위해 액추에이터 상에서 재생된다.
일 실시예에서, 액추에이터 구동 값은 워크스테이션 상의 설계 도구에 의해 제공되고, 인코딩된 값은 워크스테이션에서 획득되고, 변환 및 재생은 워크스테이션과 통신하고 액추에이터를 동작시키는 디바이스에서 수행된다.
일 실시예에서, 인코딩된 값은 펄스의 펄스 폭을 변조하기 위해 액추에이터 구동 값을 사용하여 획득되고, 인코딩된 값은 액추에이터 온 지속 기간을 나타낸다. 일 실시예에서, 펄스의 펄스 기간은 액추에이터의 특성들에 따라 선택된다. 일 실시예에서, 펄스의 펄스 기간은 실험에 의해 결정된다.
일 실시예에서, 재생은 안드로이드 진동 API에 온/오프 지속 기간들의 패턴을 제공함으로써 수행된다.
일 실시예에서, 인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하는 것은 액추에이터 상태들을 추적하는 상태 머신을 구현함으로써 수행된다. 일 실시예에서, 액추에이터 상태들은 액추에이터 온 시간 파라미터, 액추에이터 오프 시간 파라미터, 액추에이터 활성화 시간 파라미터, 및 액추에이터 현재 상태 파라미터를 포함한다. 일 실시예에서, 인코딩된 값에 의해 표시된 액추에이터 온 지속 기간은 액추에이터 온 시간 파라미터로 복사된다. 일 실시예에서, 액추에이터 오프 파라미터는 펄스의 펄스 지속 기간과 액추에이터 온 시간 파라미터 사이의 차이로서 설정된다.
일 실시예에서, 액추에이터 현재 상태 파라미터가 오프이고 이전 인코딩된 값이 인코딩된 값보다 작은 경우, 액추에이터 현재 상태 파라미터는 온으로 변경되고 액추에이터 활성화 시간 파라미터는 리셋된다. 일 실시예에서, 액추에이터 현재 상태 파라미터가 온이고 이전 인코딩된 값이 인코딩된 값보다 큰 경우, 액추에이터 현재 상태 파라미터는 오프로 변경되고 액추에이터 활성화 시간 파라미터는 리셋된다.
일 실시예에서, 인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하는 것은 밀리초마다 업데이트 함수를 호출하는 것을 포함한다. 일 실시예에서, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 증분시킨다. 일 실시예에서, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 요구된 상태 시간과 비교한다.
일 실시예에서, 액추에이터 현재 상태 파라미터가 온일 때, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 액추에이터 온 시간 파라미터와 비교하고, 액추에이터 활성화 시간 파라미터가 액추에이터 온 시간 파라미터보다 큰 경우, 액추에이터 활성화 시간 파라미터를 리셋하고 액추에이터 현재 상태 파라미터를 오프로 변경한다.
일 실시예에서, 액추에이터 현재 상태 파라미터가 오프일 때, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 액추에이터 오프 시간 파라미터와 비교하고, 액추에이터 활성화 시간 파라미터가 액추에이터 오프 시간 파라미터보다 큰 경우, 액추에이터 활성화 시간 파라미터를 리셋하고 액추에이터 현재 상태 파라미터를 온으로 변경한다.
개시된 바와 같이, 실시예들은 실시간 햅틱 생성을 허용한다. 일 실시예는 안드로이드 진동 API와 같은 온/오프 제어 API를 사용하고, 고충실도 햅틱 기능을 렌더링하기 위해 액추에이터들에 대해 미세-입도 제어를 제공하기 위해 PWM 기능을 구현한다.
여러 실시예가 본 명세서에서 구체적으로 예시 및/또는 설명된다. 그러나, 개시된 실시예들의 수정들 및 변형들은 본 발명의 사상 및 의도된 범위로부터 벗어나지 않고 상기 교시들에 의해 그리고 첨부된 청구항들의 범위 내에서 커버된다는 것을 이해할 것이다.
Claims (20)
- 프로세서에 의해 실행될 때, 프로세서로 하여금 햅틱 기능을 제공하게 하는 명령어들이 저장되어있는 비일시적 컴퓨터 판독 가능 기록 매체로서, 프로세서는,
액추에이터 구동 값을 인코딩하는 인코딩된 값을 수신하고- 액추에이터 구동 값은 햅틱 효과의 강도에 대응함 -;
인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하고;
햅틱 효과를 생성하기 위해 액추에이터 상에서 온/오프 지속 기간들의 패턴을 재생하는 컴퓨터 판독 가능 기록 매체. - 제1항에 있어서, 액추에이터 구동 값은 워크스테이션 상의 설계 도구에 의해 제공되고, 인코딩된 값은 워크스테이션에서 획득되고, 변환 및 재생은 워크스테이션과 통신하고 액추에이터를 동작시키는 디바이스에서 수행되는 컴퓨터 판독 가능 기록 매체.
- 제1항에 있어서, 인코딩된 값은 펄스의 펄스 폭을 변조하기 위해 액추에이터 구동 값을 사용함으로써 획득되고, 인코딩된 값은 액추에이터 온 지속 기간을 나타내는 컴퓨터 판독 가능 기록 매체.
- 제3항에 있어서, 펄스의 펄스 기간은 액추에이터의 특성들에 따라 선택되는 컴퓨터 판독 가능 기록 매체.
- 제3항에 있어서, 펄스의 펄스 기간은 실험에 의해 결정되는 컴퓨터 판독 가능 기록 매체.
- 제1항에 있어서, 재생은 온/오프 지속 기간들의 패턴을 안드로이드 진동 애플리케이션 프로그래밍 인터페이스(API)에 제공함으로써 수행되는 컴퓨터 판독 가능 기록 매체.
- 제1항에 있어서, 인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하는 것은 액추에이터 상태들을 추적하는 상태 머신을 구현함으로써 수행되는 컴퓨터 판독 가능 기록 매체.
- 제7항에 있어서, 액추에이터 상태들은 액추에이터 온 시간 파라미터, 액추에이터 오프 시간 파라미터, 액추에이터 활성화 시간 파라미터, 및 액추에이터 현재 상태 파라미터를 포함하는 컴퓨터 판독 가능 기록 매체.
- 제8항에 있어서, 인코딩된 값에 의해 표시된 액추에이터 온 지속 기간은 액추에이터 온 시간 파라미터에 복사되는 컴퓨터 판독 가능 기록 매체.
- 제8항에 있어서, 액추에이터 오프 파라미터는 펄스의 펄스 지속 기간과 액추에이터 온 시간 파라미터 사이의 차이로서 설정되는 컴퓨터 판독 가능 기록 매체.
- 제8항에 있어서, 액추에이터 현재 상태 파라미터가 오프이고 이전 인코딩된 값이 인코딩된 값보다 작은 경우, 액추에이터 현재 상태 파라미터는 온으로 변경되고 액추에이터 활성화 시간 파라미터는 리셋되는 컴퓨터 판독 가능 기록 매체.
- 제8항에 있어서, 액추에이터 현재 상태 파라미터가 온이고 이전 인코딩된 값이 인코딩된 값보다 큰 경우, 액추에이터 현재 상태 파라미터는 오프로 변경되고 액추에이터 활성화 시간 파라미터는 리셋되는 컴퓨터 판독 가능 기록 매체.
- 제8항에 있어서, 인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하는 것은 밀리초마다 업데이트 함수를 호출하는 것을 포함하는 컴퓨터 판독 가능 기록 매체.
- 제13항에 있어서, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 증분시키는 컴퓨터 판독 가능 기록 매체.
- 제14항에 있어서, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 요구된 상태 시간과 비교하는 컴퓨터 판독 가능 기록 매체.
- 제15항에 있어서, 액추에이터 현재 상태 파라미터가 온일 때, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 액추에이터 온 시간 파라미터와 비교하고, 액추에이터 활성화 시간 파라미터가 액추에이터 온 시간 파라미터보다 큰 경우, 액추에이터 활성화 시간 파라미터를 리셋하고 액추에이터 현재 상태 파라미터를 오프로 변경하는 컴퓨터 판독 가능 기록 매체.
- 제15항에 있어서, 액추에이터 현재 상태 파라미터가 오프일 때, 업데이트 함수는 액추에이터 활성화 시간 파라미터를 액추에이터 오프 시간 파라미터와 비교하고, 액추에이터 활성화 시간 파라미터가 액추에이터 오프 시간 파라미터보다 큰 경우, 액추에이터 활성화 시간 파라미터를 리셋하고 액추에이터 현재 상태 파라미터를 온으로 변경하는 컴퓨터 판독 가능 기록 매체.
- 햅틱 기능을 제공하기 위한 방법으로서,
액추에이터 구동 값을 인코딩하는 인코딩된 값을 수신하는 단계- 액추에이터 구동 값은 햅틱 효과의 강도에 대응함 -;
인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하는 단계; 및
햅틱 효과를 생성하기 위해 액추에이터 상에서 온/오프 지속 기간들의 패턴을 재생하는 단계를 포함하는 방법. - 제18항에 있어서, 액추에이터 구동 값은 워크스테이션 상의 설계 도구에 의해 제공되고, 인코딩된 값은 워크스테이션에서 획득되고, 변환 및 재생은 워크스테이션과 통신하고 액추에이터를 동작시키는 디바이스에서 수행되는 방법.
- 시스템이며,
프로세서; 및
프로세서에 의해 실행될 때, 프로세서로 하여금 햅틱 기능을 제공하게 하는 명령어들을 저장하는 메모리를 포함하고, 프로세서는,
액추에이터 구동 값을 인코딩하는 인코딩된 값을 수신하고- 액추에이터 구동 값은 햅틱 효과의 강도에 대응함 -;
인코딩된 값을 온/오프 지속 기간들의 패턴으로 변환하고;
햅틱 효과를 생성하기 위해 액추에이터 상에서 온/오프 지속 기간들의 패턴을 재생하는 시스템.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020227006485A KR20220031744A (ko) | 2016-06-29 | 2017-06-28 | 실시간 햅틱 생성 |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662356265P | 2016-06-29 | 2016-06-29 | |
US62/356,265 | 2016-06-29 | ||
US15/634,288 | 2017-06-27 | ||
US15/634,288 US10210724B2 (en) | 2016-06-29 | 2017-06-27 | Real-time patterned haptic effect generation using vibrations |
PCT/US2017/039643 WO2018005590A1 (en) | 2016-06-29 | 2017-06-28 | Real-time haptics generation |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227006485A Division KR20220031744A (ko) | 2016-06-29 | 2017-06-28 | 실시간 햅틱 생성 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20190013793A true KR20190013793A (ko) | 2019-02-11 |
KR102501130B1 KR102501130B1 (ko) | 2023-02-16 |
Family
ID=60787670
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227006485A KR20220031744A (ko) | 2016-06-29 | 2017-06-28 | 실시간 햅틱 생성 |
KR1020187034685A KR102501130B1 (ko) | 2016-06-29 | 2017-06-28 | 실시간 햅틱 생성 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020227006485A KR20220031744A (ko) | 2016-06-29 | 2017-06-28 | 실시간 햅틱 생성 |
Country Status (6)
Country | Link |
---|---|
US (2) | US10210724B2 (ko) |
EP (1) | EP3449342A4 (ko) |
JP (1) | JP7060288B2 (ko) |
KR (2) | KR20220031744A (ko) |
CN (1) | CN109313503B (ko) |
WO (1) | WO2018005590A1 (ko) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP6361872B2 (ja) * | 2014-07-09 | 2018-07-25 | 任天堂株式会社 | 振動生成システム、振動生成装置、振動信号生成プログラム、および振動生成方法 |
US10210724B2 (en) * | 2016-06-29 | 2019-02-19 | Immersion Corporation | Real-time patterned haptic effect generation using vibrations |
US11651336B1 (en) * | 2017-04-27 | 2023-05-16 | United Services Automobile Association (Usaa) | Time-varying haptic alerts for computing devices |
US11175739B2 (en) | 2018-01-26 | 2021-11-16 | Immersion Corporation | Method and device for performing actuator control based on an actuator model |
EP3540567B1 (en) * | 2018-03-16 | 2021-05-05 | Goodix Technology (HK) Company Limited | Haptic signal generator |
CN109379485B (zh) * | 2018-09-26 | 2021-03-19 | 腾讯数码(天津)有限公司 | 应用程序的反馈方法、装置、终端及存储介质 |
US10984638B1 (en) * | 2019-10-17 | 2021-04-20 | Immersion Corporation | Systems, devices, and methods for encoding haptic tracks |
WO2021134323A1 (zh) * | 2019-12-30 | 2021-07-08 | 瑞声声学科技(深圳)有限公司 | 马达非线性模型判断方法和系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110130473A (ko) * | 2009-03-12 | 2011-12-05 | 임머숀 코퍼레이션 | 마찰 디스플레이에서 특징부를 제공하는 시스템 및 방법 |
KR20140099831A (ko) * | 2013-02-04 | 2014-08-13 | 임머숀 코퍼레이션 | 웨어러블 디바이스 매니저 |
US20160080682A1 (en) * | 2014-09-13 | 2016-03-17 | Vicente Diaz | System and Method for haptic integration and generation in multimedia devices |
KR20220031744A (ko) * | 2016-06-29 | 2022-03-11 | 임머숀 코퍼레이션 | 실시간 햅틱 생성 |
Family Cites Families (80)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7091948B2 (en) * | 1997-04-25 | 2006-08-15 | Immersion Corporation | Design of force sensations for haptic feedback computer interfaces |
JPH11305938A (ja) * | 1998-04-20 | 1999-11-05 | Nippon Telegr & Teleph Corp <Ntt> | 触感提示方法及び触感提示型トラックボール装置 |
US6822635B2 (en) * | 2000-01-19 | 2004-11-23 | Immersion Corporation | Haptic interface for laptop computers and other portable devices |
EP1330811B1 (en) * | 2000-09-28 | 2012-08-22 | Immersion Corporation | Directional tactile feedback for haptic feedback interface devices |
US7088224B2 (en) | 2003-03-11 | 2006-08-08 | National Institute Of Advanced Industrial Science And Technology | Audio information transmitting apparatus and the method thereof, and a vibrator holding structure |
US9948885B2 (en) | 2003-12-12 | 2018-04-17 | Kurzweil Technologies, Inc. | Virtual encounters |
US7742036B2 (en) * | 2003-12-22 | 2010-06-22 | Immersion Corporation | System and method for controlling haptic devices having multiple operational modes |
US20080204266A1 (en) * | 2004-02-03 | 2008-08-28 | Jussi Malmberg | Method and Device For Implementing Vibration Output Commands in Mobile Terminal Devices |
EP3287874A1 (en) | 2006-04-06 | 2018-02-28 | Immersion Corporation | Systems and methods for enhanced haptic effects |
US9370704B2 (en) | 2006-08-21 | 2016-06-21 | Pillar Vision, Inc. | Trajectory detection and feedback system for tennis |
JP5016117B2 (ja) | 2008-01-17 | 2012-09-05 | アーティキュレイト テクノロジーズ インコーポレーティッド | 口腔内触知フィードバックのための方法及び装置 |
US8674941B2 (en) * | 2008-12-16 | 2014-03-18 | Dell Products, Lp | Systems and methods for implementing haptics for pressure sensitive keyboards |
US8760273B2 (en) * | 2008-12-16 | 2014-06-24 | Dell Products, Lp | Apparatus and methods for mounting haptics actuation circuitry in keyboards |
US9370459B2 (en) | 2009-06-19 | 2016-06-21 | Andrew Mahoney | System and method for alerting visually impaired users of nearby objects |
US8487759B2 (en) * | 2009-09-30 | 2013-07-16 | Apple Inc. | Self adapting haptic device |
WO2011127379A2 (en) | 2010-04-09 | 2011-10-13 | University Of Florida Research Foundation Inc. | Interactive mixed reality system and uses thereof |
US8698766B2 (en) * | 2010-04-22 | 2014-04-15 | Maxim Integrated Products, Inc. | System integration of tactile feedback and touchscreen controller for near-zero latency haptics playout |
US9448626B2 (en) * | 2011-02-11 | 2016-09-20 | Immersion Corporation | Sound to haptic effect conversion system using amplitude value |
US8717152B2 (en) * | 2011-02-11 | 2014-05-06 | Immersion Corporation | Sound to haptic effect conversion system using waveform |
EP2686941A4 (en) * | 2011-03-17 | 2014-12-03 | Coactive Drive Corp | ASYMMETRIC AND GENERAL VIBRATION WAVE SHAPES FROM MULTIPLE SYNCHRONIZED VIBRATION ACTUATORS |
US20130033366A1 (en) * | 2011-08-01 | 2013-02-07 | Mcdonough Colin Albright | Method and system for providing haptic feedback of variable intensity |
US9462262B1 (en) | 2011-08-29 | 2016-10-04 | Amazon Technologies, Inc. | Augmented reality environment with environmental condition control |
CN104471521B (zh) * | 2012-05-09 | 2018-10-23 | 苹果公司 | 用于针对改变用户界面对象的激活状态来提供反馈的设备、方法和图形用户界面 |
US10852093B2 (en) | 2012-05-22 | 2020-12-01 | Haptech, Inc. | Methods and apparatuses for haptic systems |
US9245428B2 (en) * | 2012-08-02 | 2016-01-26 | Immersion Corporation | Systems and methods for haptic remote control gaming |
WO2014083751A1 (ja) * | 2012-11-30 | 2014-06-05 | パナソニック株式会社 | 触感呈示装置および触感呈示方法 |
FR2999741B1 (fr) | 2012-12-17 | 2015-02-06 | Centre Nat Rech Scient | Systeme haptique pour faire interagir sans contact au moins une partie du corps d'un utilisateur avec un environnement virtuel |
US20160139671A1 (en) * | 2013-01-15 | 2016-05-19 | Samsung Electronics Co., Ltd. | Method for providing haptic effect in electronic device, machine-readable storage medium, and electronic device |
KR102184288B1 (ko) | 2013-01-17 | 2020-11-30 | 삼성전자주식회사 | 입력 유닛에 햅틱 효과를 제공하는 휴대 단말 및 방법 |
US8866601B2 (en) * | 2013-02-05 | 2014-10-21 | Immersion Corporation | Overdrive voltage for an actuator to generate haptic effects |
US9367136B2 (en) | 2013-04-12 | 2016-06-14 | Microsoft Technology Licensing, Llc | Holographic object feedback |
CA2911756C (en) * | 2013-05-09 | 2023-06-27 | Sunnybrook Research Institute | Systems and methods for providing visual feedback of touch panel input during magnetic resonance imaging |
US9908048B2 (en) | 2013-06-08 | 2018-03-06 | Sony Interactive Entertainment Inc. | Systems and methods for transitioning between transparent mode and non-transparent mode in a head mounted display |
US9811854B2 (en) | 2013-07-02 | 2017-11-07 | John A. Lucido | 3-D immersion technology in a virtual store |
WO2015002850A1 (en) | 2013-07-05 | 2015-01-08 | Rubin Jacob A | Whole-body human-computer interface |
US10162416B2 (en) | 2013-09-06 | 2018-12-25 | Immersion Corporation | Dynamic haptic conversion system |
US9158379B2 (en) * | 2013-09-06 | 2015-10-13 | Immersion Corporation | Haptic warping system that transforms a haptic signal into a collection of vibrotactile haptic effect patterns |
US9630105B2 (en) | 2013-09-30 | 2017-04-25 | Sony Interactive Entertainment Inc. | Camera based safety mechanisms for users of head mounted displays |
US9213408B2 (en) | 2013-10-08 | 2015-12-15 | Immersion Corporation | Generating haptic effects while minimizing cascading |
US9164587B2 (en) * | 2013-11-14 | 2015-10-20 | Immersion Corporation | Haptic spatialization system |
WO2015107386A1 (en) | 2014-01-15 | 2015-07-23 | Sony Corporation | Haptic notification on wearables |
WO2015127275A2 (en) * | 2014-02-21 | 2015-08-27 | Northwestern University | Devices and methods for generating haptic waveforms |
US10379614B2 (en) * | 2014-05-19 | 2019-08-13 | Immersion Corporation | Non-collocated haptic cues in immersive environments |
US9551873B2 (en) | 2014-05-30 | 2017-01-24 | Sony Interactive Entertainment America Llc | Head mounted device (HMD) system having interface with mobile computing device for rendering virtual reality content |
CN111998027B (zh) | 2014-07-28 | 2022-05-27 | Ck高新材料有限公司 | 触觉信息提供方法 |
US9645646B2 (en) | 2014-09-04 | 2017-05-09 | Intel Corporation | Three dimensional contextual feedback wristband device |
US9799177B2 (en) | 2014-09-23 | 2017-10-24 | Intel Corporation | Apparatus and methods for haptic covert communication |
US9608848B2 (en) * | 2014-10-22 | 2017-03-28 | The Board Of Trustees Of The University Of Illinois | Communicating through physical vibration |
US9697706B2 (en) * | 2014-12-02 | 2017-07-04 | Texas Instruments Incorporated | Integrated circuit with single wire haptic vibration control and selective open loop operation |
US20160170508A1 (en) | 2014-12-11 | 2016-06-16 | Toyota Motor Engineering & Manufacturing North America, Inc. | Tactile display devices |
US9870718B2 (en) | 2014-12-11 | 2018-01-16 | Toyota Motor Engineering & Manufacturing North America, Inc. | Imaging devices including spacing members and imaging devices including tactile feedback devices |
US10166466B2 (en) | 2014-12-11 | 2019-01-01 | Elwha Llc | Feedback for enhanced situational awareness |
US9922518B2 (en) | 2014-12-11 | 2018-03-20 | Elwha Llc | Notification of incoming projectiles |
US10073516B2 (en) | 2014-12-29 | 2018-09-11 | Sony Interactive Entertainment Inc. | Methods and systems for user interaction within virtual reality scene using head mounted display |
US9746921B2 (en) | 2014-12-31 | 2017-08-29 | Sony Interactive Entertainment Inc. | Signal generation and detector systems and methods for determining positions of fingers of a user |
US9843744B2 (en) | 2015-01-13 | 2017-12-12 | Disney Enterprises, Inc. | Audience interaction projection system |
US10225442B2 (en) * | 2015-02-16 | 2019-03-05 | Mediatek Inc. | Electronic device and method for sensing air quality |
US10322203B2 (en) | 2015-06-26 | 2019-06-18 | Intel Corporation | Air flow generation for scent output |
US9778746B2 (en) | 2015-09-25 | 2017-10-03 | Oculus Vr, Llc | Transversal actuator for haptic feedback |
US20170103574A1 (en) | 2015-10-13 | 2017-04-13 | Google Inc. | System and method for providing continuity between real world movement and movement in a virtual/augmented reality experience |
US20170131775A1 (en) | 2015-11-10 | 2017-05-11 | Castar, Inc. | System and method of haptic feedback by referral of sensation |
WO2017095951A1 (en) | 2015-11-30 | 2017-06-08 | Nike Innovate C.V. | Apparel with ultrasonic position sensing and haptic feedback for activities |
US10310804B2 (en) | 2015-12-11 | 2019-06-04 | Facebook Technologies, Llc | Modifying haptic feedback provided to a user to account for changes in user perception of haptic feedback |
US10324530B2 (en) | 2015-12-14 | 2019-06-18 | Facebook Technologies, Llc | Haptic devices that simulate rigidity of virtual objects |
US10096163B2 (en) | 2015-12-22 | 2018-10-09 | Intel Corporation | Haptic augmented reality to reduce noxious stimuli |
US10065124B2 (en) | 2016-01-15 | 2018-09-04 | Disney Enterprises, Inc. | Interacting with a remote participant through control of the voice of a toy device |
US9846971B2 (en) | 2016-01-19 | 2017-12-19 | Disney Enterprises, Inc. | Systems and methods for augmenting an appearance of a hilt to simulate a bladed weapon |
US11351472B2 (en) | 2016-01-19 | 2022-06-07 | Disney Enterprises, Inc. | Systems and methods for using a gyroscope to change the resistance of moving a virtual weapon |
US10477006B2 (en) | 2016-01-22 | 2019-11-12 | Htc Corporation | Method, virtual reality system, and computer-readable recording medium for real-world interaction in virtual reality environment |
US9933851B2 (en) | 2016-02-22 | 2018-04-03 | Disney Enterprises, Inc. | Systems and methods for interacting with virtual objects using sensory feedback |
US10555153B2 (en) | 2016-03-01 | 2020-02-04 | Disney Enterprises, Inc. | Systems and methods for making non-smart objects smart for internet of things |
US20170352185A1 (en) | 2016-06-02 | 2017-12-07 | Dennis Rommel BONILLA ACEVEDO | System and method for facilitating a vehicle-related virtual reality and/or augmented reality presentation |
US10155159B2 (en) | 2016-08-18 | 2018-12-18 | Activision Publishing, Inc. | Tactile feedback systems and methods for augmented reality and virtual reality systems |
US20180053351A1 (en) | 2016-08-19 | 2018-02-22 | Intel Corporation | Augmented reality experience enhancement method and apparatus |
US10372213B2 (en) | 2016-09-20 | 2019-08-06 | Facebook Technologies, Llc | Composite ribbon in a virtual reality device |
US10779583B2 (en) | 2016-09-20 | 2020-09-22 | Facebook Technologies, Llc | Actuated tendon pairs in a virtual reality device |
US10300372B2 (en) | 2016-09-30 | 2019-05-28 | Disney Enterprises, Inc. | Virtual blaster |
US10281982B2 (en) | 2016-10-17 | 2019-05-07 | Facebook Technologies, Llc | Inflatable actuators in virtual reality |
US10088902B2 (en) | 2016-11-01 | 2018-10-02 | Oculus Vr, Llc | Fiducial rings in virtual reality |
US20170102771A1 (en) | 2016-12-12 | 2017-04-13 | Leibs Technology Limited | Wearable ultrasonic haptic feedback system |
-
2017
- 2017-06-27 US US15/634,288 patent/US10210724B2/en active Active
- 2017-06-28 KR KR1020227006485A patent/KR20220031744A/ko not_active Application Discontinuation
- 2017-06-28 CN CN201780036121.3A patent/CN109313503B/zh active Active
- 2017-06-28 EP EP17821114.0A patent/EP3449342A4/en not_active Withdrawn
- 2017-06-28 KR KR1020187034685A patent/KR102501130B1/ko active IP Right Grant
- 2017-06-28 WO PCT/US2017/039643 patent/WO2018005590A1/en unknown
- 2017-06-28 JP JP2018562029A patent/JP7060288B2/ja active Active
-
2019
- 2019-01-04 US US16/239,815 patent/US10692337B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20110130473A (ko) * | 2009-03-12 | 2011-12-05 | 임머숀 코퍼레이션 | 마찰 디스플레이에서 특징부를 제공하는 시스템 및 방법 |
KR20140099831A (ko) * | 2013-02-04 | 2014-08-13 | 임머숀 코퍼레이션 | 웨어러블 디바이스 매니저 |
US20160080682A1 (en) * | 2014-09-13 | 2016-03-17 | Vicente Diaz | System and Method for haptic integration and generation in multimedia devices |
KR20220031744A (ko) * | 2016-06-29 | 2022-03-11 | 임머숀 코퍼레이션 | 실시간 햅틱 생성 |
Also Published As
Publication number | Publication date |
---|---|
WO2018005590A1 (en) | 2018-01-04 |
US20190213852A1 (en) | 2019-07-11 |
JP7060288B2 (ja) | 2022-04-26 |
CN109313503B (zh) | 2022-08-02 |
US10210724B2 (en) | 2019-02-19 |
JP2019519846A (ja) | 2019-07-11 |
EP3449342A4 (en) | 2020-01-01 |
US10692337B2 (en) | 2020-06-23 |
US20180005497A1 (en) | 2018-01-04 |
KR102501130B1 (ko) | 2023-02-16 |
EP3449342A1 (en) | 2019-03-06 |
CN109313503A (zh) | 2019-02-05 |
KR20220031744A (ko) | 2022-03-11 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR102501130B1 (ko) | 실시간 햅틱 생성 | |
US10606358B2 (en) | Haptic effect conversion system using granular synthesis | |
US9508236B2 (en) | Haptic warping system that transforms a haptic signal into a collection of vibrotactile haptic effect patterns | |
US10613628B2 (en) | Media driven haptics | |
JP2019046505A (ja) | 動的ハプティック変換システム | |
US20170090577A1 (en) | Haptic effects design system | |
CN104423589A (zh) | 触觉变形系统 | |
CN107024985B (zh) | 线性马达刹车方法和装置,及触觉反馈系统 | |
EP3462285A1 (en) | Haptic pitch control | |
CN103984411A (zh) | 触觉力反馈系统和触觉力反馈系统实现方法 | |
CN113778229A (zh) | 信号控制系统、显示设备、控制方法、装置及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
J301 | Trial decision |
Free format text: TRIAL NUMBER: 2022101000419; TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20220225 Effective date: 20220719 |
|
E902 | Notification of reason for refusal | ||
GRNO | Decision to grant (after opposition) | ||
GRNT | Written decision to grant |