KR20060131829A - 모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법및 장치 - Google Patents

모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법및 장치 Download PDF

Info

Publication number
KR20060131829A
KR20060131829A KR1020067015654A KR20067015654A KR20060131829A KR 20060131829 A KR20060131829 A KR 20060131829A KR 1020067015654 A KR1020067015654 A KR 1020067015654A KR 20067015654 A KR20067015654 A KR 20067015654A KR 20060131829 A KR20060131829 A KR 20060131829A
Authority
KR
South Korea
Prior art keywords
vibration
pattern
patterns
mobile terminal
effects
Prior art date
Application number
KR1020067015654A
Other languages
English (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 KR1020067015654A priority Critical patent/KR20060131829A/ko
Publication of KR20060131829A publication Critical patent/KR20060131829A/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/0703Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation
    • G06F11/0706Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment
    • G06F11/0736Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function
    • G06F11/0742Error or fault processing not based on redundancy, i.e. by taking additional measures to deal with the error or fault not making use of redundancy in operation, in hardware, or in data representation the processing taking place on a specific hardware platform or in a specific software environment in functional embedded systems, i.e. in a data processing system designed as a combination of hardware and software dedicated to performing a certain function in a data processing system embedded in a mobile device, e.g. mobile phones, handheld devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/3058Monitoring arrangements for monitoring environmental properties or parameters of the computing system or of the computing system component, e.g. monitoring of power, currents, temperature, humidity, position, vibrations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F7/00Methods or arrangements for processing data by operating upon the order or content of the data handled
    • G06F7/60Methods or arrangements for performing computations using a digital non-denominational number representation, i.e. number representation without radix; Computing devices using combinations of denominational and non-denominational quantity representations, e.g. using difunction pulse trains, STEELE computers, phase computers
    • G06F7/605Additive or subtractive mixing of two pulse rates into one
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/22Microcontrol or microprogram arrangements
    • G06F9/223Execution means for microinstructions irrespective of the microinstruction function, e.g. decoding of microinstructions and nanoinstructions; timing of microinstructions; programmable logic arrays; delays and fan-out problems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3889Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by multiple instructions, e.g. MIMD, decoupled access or execute
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2213/00Indexing scheme relating to interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F2213/38Universal adapter
    • G06F2213/3806Mobile device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Analysis (AREA)
  • Computational Mathematics (AREA)
  • Telephone Function (AREA)
  • Apparatuses For Generation Of Mechanical Vibrations (AREA)

Abstract

본 발명은 모바일 단말 기기의 진동 액추에이터를 제어하기 위해 진동 출력 명령들을 구현하는 방법 및 그 방법을 실행시키는 모바일 단말 기기들에 관한 것이다. 이 방법은, 적어도 한 개의 진동 신호 파라미터로 규정된 적어도 한 개의 진동 효과를 규정하는 단계, 상기 진동 효과들 중 적어도 하나로서 적어도 한 진동 패턴을 규정하는 단계, 및 상기 적어도 한 진동 패턴을 스토리지에 저장하는 단계에 의거한다.

Description

모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법 및 장치{Method and device for implementing vibration output commands in mobile terminal devices}
본 발명은 진동 알람을 이용할 수 있게 된 모바일 단말 기기들에 관한 것이다. 또한, 본 발명은 게임 소프트웨어를 실행할 수 있게 된 모바일 전자 단말 기기들에 관한 것이다. 보다 구체적으로, 본 발명은 모바일 단말 기기들의 게임 구현을 위한 촉각적 출력으로서 진동을 구현하는 간단한 방법에 관한 것이다.
현재, 미국 법률 문서 US 6,285,351, US 6,169,540 및 US 6,147,674에 정의된 것과 같이 사용가능한 각종 포스 피드백 (force feedback) 구성들이 존재한다. 포스 피드백 구성들은 실제 동작 요소나 입력 장치의 구동력(operating forces)을 시뮬레이션하기 위한 것이다. 포드 피드백 출력은 어떤 어플리케이션을 통해 수행되고 입력 장치의 위치와 직접적으로 상관되는데, 이것은 가령 경주 시뮬레이션 게임에 있어서 핸들의 힘들을 흉내 내는 비(non) 모바일 게임 기기들에서 잘 알려진 것과 같다.
문서 WO 02/27705 A1 "촉각적 피드백 인터페이스 장치들을 위한 지향성 촉각 피드백"은 입력 소자의 실제 위치나 변위와 직접적으로 관련되지 않은 것을 수반하 는 촉각적 출력에 기반함으로써, 이 분야의 최신 기술을 개시하고 있다. 이 문서는 두 개의 진동 액추에이터들을 결합하여 입력 소자의 사용자에게 촉각적 감각을 제공하는 기술에 관한 것이다.
포스 피드백이나 촉각적 진동 출력에 대한 상기 모든 접근방식들은, 모바일 전화나 핸드헬드 컴퓨터 같은 모바일 단말 장치들을 가지고 사용하기 적합하지 못하다는 공통점을 가진다. 이는 상기 진동 데이터를 저장하는데 있어서의 낮은 저장 공간, 추가 진동 출력을 발생하는데 있어서의 낮은 계산력, 또는 전력을 소비하는 진동 액추에이터를 반복적으로 작동하는데 있어서의 낮은 배터리 용량에 기인한다.
또한, 전화기에서 실행되는 게임 어플리케이션들 같은 다른 어플리케이션들에 대해서도 모바일 전화의 진동 알람 액추에이터를 사용하는 간단한 해법을 제공할 것이 요망되고 있다.
또, 모바일 기기들에 의해 제공되는 자원들을 더 활용하도록 현재의 모바일 기기들의 기능들을 더 발전시킬 것이 요망된다.
진동 출력을 구현하기 위한 프로그램밍 비용과 저장 요건을 감축시키는 것 역시 요망된다.
본 발명의 제1양태에 따르면, 모바일 단말 기기의 진동 액추에이터를 제어하기 위한 진동 출력 명령들을 구현하는 방법이 제공된다. 이 방법은, 적어도 한 개의 진동 효과를 규정하는 단계, 규정된 진동 효과를 포함하는 적어도 한 진동 패턴을 규정하는 단계 및 상기 진동 패턴을 저장하는 단계를 구비한다.
기본 버전에 있어서, 진동 효과는 강도 및 길이 또는 듀레이션(duration) 등에 따라 규정될 수 있다. 디폴트 강도 및 디폴트 듀레이션을 사용하는 것 역시 가능하다.
진동 패턴들은 적어도 상기 진동 효과들에 의해 규정된다. 진동 패턴은 일련의 진동 효과들에 대한 액세스를 단순화하기 위한 일종의 컨테이너(container)라고 생각할 수 있다. 진동 패턴이 아무 진동 효과들도 포함하지 않을 수도 있지만, 그러한 패턴은 실행시 아무 진동도 일으키지 못할 것이다. 진동 패턴들은 상기 진동 효과들을 연속적인 시퀀스로서 만들거나 구성하고, 이 시퀀스에 이름을 붙임으로써 정의될 수 있다.
상기 적어도 한 진동 패턴을 스토리지(storage)에 저장함으로써, 상기 진동 패턴들은 검색 가능한 형태로서 이용 가능하게 된다. 따라서, 진동 패턴들이 검색되어, 가령 장치의 진동 액추에이터를 제어할 수 있다. 진동 패턴들과 진동 효과들은 이를테면 확장형 마크업(markup) 언어 코딩된 데이터로서 상기 스토리지에 저장될 수 있다.
본 발명은 기본적으로 진동 출력에 대한 것으로, 기본적으로 포스 피드백에 대한 것이 아니다. 진동 출력은 어떤 어플리케이션에 의해 수행될 수 있고, 입력 장치의 위치와 직접적으로 상관되지는 않을 것이다.
패턴 자체는 어떠한 진동도 일으키지 않는다. 효과라 불리는 패턴의 작은 일부가 한 진동 성분을 담당한다. 한 효과는 구체화된다, 즉, 한 진동 성분이 기본 버전 상에서 두 개의 파라미터들로서 정의된다. 이 파라미터들은 시간과 강도이다. 시간은 한 진동 성분이 얼마나 길게 지속 될 것인가를 나타낸다.
있을 수 있는 최단 시간 인터벌로서 마이크로 초(microseconds), 즉 10e-6 초들이 선택될 수 있다. 시간 파라미터의 범위는 0부터 이론적으로 무한대까지이다. 실제로, 진동의 시간 파라미터는 최소 1 마이크로 초 (㎲)와 가령 86,400,000,000 ㎲ (= 하루)의 최대값을 취하는 정수이다. 이러한 틀 안에서, 순간(second)적 진동은 1000000에 달하는 시간에 의해 일어나게 될 것이다. 0시간의 진동 효과는 진동 패턴들을 개발할 때 유용할 수 있으나, 0 듀레이션을 가진 진동 효과는 실제로 어떠한 진동도 일으키지 못한다. 다른 시간 단위들 역시 있을 수 있다.
강도(intensity)는 진동이 얼마나 강력한지를 말한다. 강도는 이를테면 0부터 100까지의 범위 안에 있을 수 있다. 강도를 백분율로서 정의할 수 있으며, 이때 100%는 최대 진동 파워를, 0%는 최소 진동 파워 (무진동)를 나타낸다. 0시간의 듀레이션과는 달리, 0% 강도는 진동 효과 중에, 어떠한 진동도 없을 것임을 (즉, 일시 정지) 의미한다. 강도를 0부터 124 사이의 범위에 있는 값들로서 구현하는 것 역시 가능한데, 이 범위들은 최근의 전자 기기들의 바이너리 특성과 보다 잘 부합될 수 있다.
시간과 강도를 인간의 진동 및 시간 감지 능력에 적응시키는 것 역시 가능하다. 또한, 주목을 끌지 못하는 촉각 이벤트나 상기 진동 액추에이터의 반응 지연으로 야기되는 신호 손실을 피하기 위한 문턱치들, 또는 상기 진동 액추에이터를 시동하기 위한 시간 문턱치를 추가하는 것 역시 가능하다.
"0%에서 -100%" 같은 네거티브 퍼센트 진동, 즉 후방(backwards) 구동 액추에이터를 구현하는 것 역시 가능할 수 있다. 이 범위들은 ±100%까지 합성될 수도 있다. 이것은 난해한 임펄스 진동을 발생하는 데 있어, 이를테면, 후방(backward) 임펄스로서 진동 모터를 멈추고자 할 때 유용할 수 있다.
본 발명은 특히 모바일 단말들의 진동 액추에이터 사용을 통해, 촉각적 효과들을 프로그래밍하고 생성하며 재생하는 것에 관한 것이다. 따라서, 본 발명은, 사용자에게 디스플레이 콘텐츠 및 사운드 외에 진동 효과들을 제공하는 게임 어플리케이션 등에서 사용이 가능하다.
기기상에서 진동 출력을 구현하기 위한 프로그래밍 비용은 상대적으로 높다. 만약 여러 개의 서로 다른 진동 효과들이 한 개 이상의 어플리케이션들에서 사용될 경우, 저장 요건과 프로그래밍 비용은 더 증가한다.
본 발명의 다른 실시예에서, 상기 진동 신호 파라미터는, 진동의 명칭(이름), 강도, 및 듀레이션 중 적어도 한 가지를 포함한다.
진동 효과들은, 진동의 호칭, 강도, 및 듀레이션 중 적어도 한 진동 신호 파라미터에 의해 정의된다. 따라서, 기본 버전에서 진동 효과는, 가령 강도 및 길이 또는 듀레이션으로서 정의될 수 있다. 즉, 이 실시예에서, 진동 패턴의 길이는 한정되고, 진동의 듀레이션 안에서의 강도 (또는 크기)는 일정하고 유한하다. 이러한 본 발명의 기본 버전에서, 진동의 주파수는 선택될 수 없다. 진동 효과의 호칭이나 이름은 자유롭게 선택 가능하다.
효과들이 한 호칭이나 이름을 가질 수도 있다. 이것은, 진동 효과의 제3 및 최종 파라미터라고 정의된다. 두 개별 효과들이 동일한 이름을 가질 수 있다(강도와 듀레이션이 다르더라도). 실제로, 등가적인 효과들을 같은 이름으로 칭하는 것이 추천된다.
진동 효과들은 가령 강도 변화의 그레디언트(gradient, 기울기), 주파수 변화의 기울기의 주파수 같은 다른 파라미터들에 의해서도 정의될 수 있다.
본 발명의 다른 실시예에서, 상기 적어도 한 진동 패턴은 그 진동 패턴의 호칭에 의해서도 규정된다. 서로 다른 효과들을 함께 결합할 때, 이들은 패턴으로 불리는 개체를 형성한다. 패턴들은 적어도 한 개의 추가 파라미터: 패턴 칭호나 이름을 가진다.
이름이 패턴들을 서로와 구분하게 한다. 진동 효과들은 연속적인 시퀀스로서 상기 진동 효과들을 정리 또는 정렬시킴으로써 정의될 수 있다. 효과들과 패턴들의 호칭은 그 효과들과 패턴들의 이름들을 구성하는데 사용될 수 있다. 기본 버전에 있어서, 진동 패턴 (및 그 효과들)의 개발자나 프로그래머는 자신이 실제로 작업하고 있는 것이 어느 패턴인지에 대한 아무런 표시도 갖지 않는다. 패턴들과 효과들에 이름을 붙임으로써, 진동 패턴의 개발자가 자신이 작업하는 패턴과 효과들에 대한 서술적 이름을 용이하게 선택할 수 있다. 따라서, 프로그래머는 한 패턴에 "시작 엔진"이라고 명명할 수 있고, 그 효과들에 "시작 엔진, 파트 7"이라 명명할 수 있다. 프로그래머는 상기 하나의 진동 효과들로부터 한 진동 효과 패턴을 용이하게 정리 또는 정렬할 수 있다.
호칭은 정보가 든 파라미터이다. 그러나 가령 XML로서 서로 다른 효과들을 가진 패턴들을 생성하고 XML VibralPlayer로서 이들을 플레이할 때 이 호칭은 실용적 특성이 된다. 호칭하기는 서로 다른 진동 유닛들이나 아이템들을 구분하는데 사용될 수 있다.
본 발명의 다른 실시예에서, 상기 진동 패턴들은 상기 진동의 주파수 및/또는 위상에 의해 더 규정될 수 있다. 본 발명의 다른 실시예에서, 상기 진동 효과들은 상기 진동의 주파수 및/도는 위상에 의해 더 규정된다. 진동의 주파수 및 위상 정보를 이용함으로써, 본 발명은 서로 다른 진동 주파수대로 작동될 수 있는 진동 액추에이터들에 적용될 수 있다. 앞으로는, 일종의 "폴리폰(polyphone) 통화 진동 시그날링" 기능이 가능한 진동 액추에이터 구성이 있을 수 있다.
본 발명의 또 다른 실시예에서, 방법은 저장된 진동 패턴을 검색하여 모바일 단말 장치로 전송하는 단계를 더 포함한다. 저장된 적어도 하나의 진동 패턴을 검색하고 상기 저장된 적어도 하나의 진동 패턴을 단말 장치로 전송함으로써, 계획되거나 발생된 진동 패턴이 테스트 용도나 어플리케이션 용도로서 사용될 수 있게 된다. 프로그래머나 진동 패턴 설계자는 발생된 패턴을 모바일 단말 장치로 전송하여, 특정 전화 모델들에서의 진동 효과나 진동 패턴의 촉각적 감지를 테스트할 수 있게 한다.
다른 실시예에서, 상기 방법은 상기 저장된 진동 패턴들 중 적어도 하나를 선택하는 단계를 더 포함한다. 그에 따라 온라인 게임 서버 측 어플리케이션은 연결된 서로 다른 모바일 장치들에 대한 서로 다른 진동 패턴들을 평가할 수 있고, 단순한 단말들이 게임 관련 진동 출력에 대해 의도되지 않았더라도 이 단순한 단말들에 진동 출력이 갖춰지도록 할 수 있다.
일실시예에서, 상기 방법은 진동 데이터를 수신하는 단계, 및 상기 진동 데이터에 따라 상기 진동 효과들과 상기 진동 패턴들을 규정하는 단계를 더 포함한다. 진동 데이터를 수신함으로써, 가령 외부 센서로부터의 데이터는 상기 진동 효과들과 패턴들을 자동으로 생성하는데 사용될 수 있다. 그에 따라, 진동 패턴들을 "기록"하고 진동 패턴들과 진동 효과들의 형태로서 각자의 진동 출력을 자동으로 발생하기 위한 수단이 주어진다. 즉, 진동하는 장치에 고정된, 가령 가속 센서나 위치 센서로부터 수신되는 데이터가 자연스러운 진동을 기록하는데 사용될 수 있다.
상기 진동 데이터에 따라, 상기 진동 효과들과 상기 적어도 한 진동 패턴을 규정함으로써, 진동 패턴들을 생성하는데 드는 프로그래밍 비용이 극적으로 감소될 수 있다.
이 실시예는 또한, 서로 다른 모바일 장치들이 서로 다른 내재적 진동 주파수들, 진동 질량 및 단말 장치들의 질량의 서로 다른 관성 관계들을 가질 수 있기 때문에, 이들 장치들에 대한 진동 패턴들의 자동화된 "해석" 역시 가능하게 한다. 본 발명의 이 부분은 개발자로 하여금, 진동 패턴들을 생성하기 위해 진동 데이터베이스, 또는 진동 라이브러리를 구축할 수 있게 한다.
앞서의 설명에 나타낸 실시예들은 진동 패턴들을 생성 및 전송하도록 된 것이다. 이 실시예들은 게임 서버의 데이터 스트림에, 사용자의 게임 체험을 향상시키도록 추가될 수 있는 부가적 진동 명령들이 갖춰지도록 하는데 이용될 수 있다.
본 발명의 다른 양태에 따르면, 모바일 단말 장치의 진동 액추에이터를 제어하기 위한 진동 출력 명령을 구현하기 위한 방법이 제공된다. 이 방법은, 적어도 한 진동 패턴을 수신하는 단계, 및 상기 적어도 한 진동 패턴을 저장하는 단계를 포함한다. 상기 진동 패턴들 각각은 연속된 진동 효과들에 의해 규정되고, 각각의 진동 효과는 적어도 한 진동 신호 파라미터에 의해 규정된다.
이 방법을 수행함으로써 사용자는 간단하게 앞으로 사용할 여러 진동 패턴들을 수신 또는 로드할 수 있다. 진동 패턴들은 게임 실행 중에 사용할 게임 소프트웨어를 로딩하는 상황 안에서 수신될 수 있다. 진동 패턴들은 조용한(silent) 메시지/통화 시그날링의 진동 패턴들을 로딩하는 상황 안에서 수신될 수 있다.
또 다른 실시예에서, 상기 방법은, 진동 패턴 요청을 수신하는 단계, 그 패턴을 검색하여 상기 패턴의 각 진동 효과를 순차적으로 출력하는 단계를 더 포함하며, 그에 따라 진동 액추에이터를 제어한다.
출력될 진동 패턴에 대한 요청을 수신함에 따라, 실행 프로그램이 어플리케이션 프로그램 인터페이스 등을 통해 진동 패턴의 생성을 요구할 수 있다. 그러면 각각의 진동 효과를 순차적으로 출력 또는 재생함으로써, 요청되어 검색된 상기 진동 패턴이 만들어진다. 진동 효과 및 그에 따른 진동 패턴은 상기 진동 효과들에 저장된 강도 및 듀레이션 값들에 따라 진동 액추에이터를 제어함으로써 재생된다.
상기 실시예는 나중에 사용하기 위해 다수의 진동 패턴들을 모바일 장치로 전송하도록 된다.
본 발명의 또 다른 실시예에 따라, 모바일 단말 장치의 진동 액추에이터를 구동하기 위한 방법이 제공된다. 이 방법은 적어도 한 진동 패턴을 수신하는 단계 및 상기 진동 패턴을 출력하는 단계를 포함한다. 진동 패턴들은 상술한 설명에서 이미 개시된 타입으로서, 각 패턴마다 적어도 한 진동 효과를 포함한다. 진동 효과들은 각각 적어도 한 진동 신호 파라미터에 의해 규정된다.
상기 검색된 진동 패턴의 상기 적어도 한 진동 효과 각각을 순차적으로 출력하고, 상기 진동 효과들 각각에 규정된 강도 및 듀레이션에 따라 진동 액추에이터를 제어함으로써 상기 진동 패턴이 재생된다.
즉, 진동 패턴은 수신되고 즉시 재생 또는 출력된다. 이러한 특성은 중앙집중 게임 서버상에서 실행되는 온라인 게임들 안에서 이용될 수 있다. 그에 따라, 진동 데이터 스트림이 게임 데이터 스트림에 부가적으로 제공되어 사용자 체험을 향상시킬 수 있다.
상기 실시예들은 진동 패턴들을 수신하여, 바로 모바일 단말 상에서 해당 진동을 생성하도록 된다. 이것은 가령 온라인 게임의 경우 데이터 스트림 안에 진동 패턴들을 제공하는데 사용될 수 있다.
본 발명의 다른 실시예에서, 상기 진동 신호 파라미터는 위의 설명에서 정의하고 개시한 것과 같이, 진동의 호칭, 강도, 및 듀레이션 중 적어도 하나를 포함한다.
본 발명의 또 다른 실시예에서, 상기 적어도 한 진동 패턴은, 위의 설명에서 정의하고 개시한 것과 같이, 진동 패턴의 호칭에 의해서도 규정된다.
본 발명의 다른 실시예에서, 상기 진동 효과들의 진동 강도는 듀티(duty) 사이클에 의해 규정된다. 이것은, 진동 액추에이터나 장치가 단일 강도로서만 작동될 수 있더라도, 진동의 강도를 제어할 수 있다. 듀티 사이클은 펄스 폭 변조를 나타낸다. 펄스 폭 변조는 임의이긴 하나 고정된 주파수로서 행해진다. 변조 주기는 가장 적은 선택가능 진동 주기보다 짧을 수 있다. 변조 주기는, 가령 둘 이상 (이를테면, 10개)의 선택가능 진동 듀레이션을 포함할 수도 있다.
현재의 모바일 단말 기기들에서, 진동 모터 진동 (또는 회전) 주파수는 어떤 종류의 진동 모터가 실질적으로 이 장치에 포함되었는가에 따라 가령 256Hz 까지가 될 수 있는 어떤 값으로 고정된다. 따라서, 이 주파수 값은 소프트웨어 측을 통해 변경될 수 없다. 또, 진동 모터로의 전압 인가는 보통 고정된 값으로서 이뤄진다.
그러나, 듀티 사이클 백분율 (0-100%)의 펄스 폭 변조 (PWM)는 바뀔 수 있을 것이다. 그것은, 하나의 동작 전압으로만 진동 액추에이터를 구동하도록 된 시스템들에서도, 진동 효과에서 규정된 (듀레이션 이외의) 제2파라미터 (즉, 강도)가 된다. PWM 듀티 사이클은 소정 시간 프레임 안에서 얼마나 오랫동안 전력 (전압)이 진동 모터로 공급되는가에 대한 시간을 규정한다. 시간 프레임은 PWM 주파수를 규정한다, 즉, 진동 모터에 대한 두 전력 공급 펄스들의 초반부 사이의 시간의 길이로서 규정한다. PWM 주기는 가령 1/100㎲일 수 있다, 즉, 100% 제어의 경우, 최저 진동 강도(1%)가 0.01㎲의 펄스 폭이고 그 뒤에 0.99㎲의 휴지기(pause)가 따라오는 펄스를 나타낸다. 백분율이 클수록 진동 모터 회전 시작도 빨라진다.
본 발명의 다른 실시예에서, 상기 진동 패턴들과 진동 효과들은 확장형 마크업 언어 (XML) 코딩된 데이터로서 생성, 저장, 및 전송된다. XML 데이터를 사용함으로써, 명료하고 간단하면서 범용인 프로그래밍 언어가 선택되어, 처음에는 이러한 용도로 사용할 계획이 없었던 어플리케이션들 및 기기들에서의 진동 패턴들의 재생을 구현한다.
이것이 게임 개발자들 등의 어플리케이션 개발자들로 하여금 소프트웨어 개발 키트 등에서 XML을 진동 패턴 생성을 위한 도구로서 사용할 수 있게 함으로써, 게임 같은 자신들의 어플리케이션들에 진동 효과들을 만들고 구현할 수 있도록 한다.
본 발명은 모바일 단말의 운영 시스템 내 어떤 서비스 어플리케이션들을 통해 이러한 것을 제공한다. 외부에서 전화기 안으로 로드된, 잘 규정된 XML 문서가 진동 패턴들을 이용해 진동 액추에이터의 진동을 제어할 수 있다. 임의의 이용가능한 XML 편집기 어플리케이션이 이러한 XML 파일들을 만드는데 적합할 수 있다.
상술한 설명에서 개시된 방법은, 서버에서 진동 패턴을 생성하거나 회수하고, 이 패턴들을 즉각적 실행을 위해 모바일 단말 기기로 전송하도록 된 시스템 방법에 결합시킨다.
또한, 상기 방법을, 서버에서 진동 패턴을 회수하여 그 패턴을 모바일 단말 기기로 보내어 나중에 상기 단말에서 실행되는 어플리케이션 프로그램을 통해 실행시키도록 된 시스템 방법에 결합하는 것 역시 가능하다.
본 발명의 또 다른 양태에 따르면, 컴퓨터, 모바일 단말 기기, 또는 네트워크 기기상에서 실행될 때 상술한 방법을 구현하도록 된 프로그램 코드 수단을 구비하는 소프트웨어 도구가 제공된다.
본 발명의 또 다른 양태에 따르면, 컴퓨터, 모바일 단말 기기, 또는 네트워크 기기상에서 실행될 때 상술한 방법을 수행하기 위한 것으로서 컴퓨터 판독가능 매체 상에 저장되는 프로그램 코드 수단을 포함하는 컴퓨터 프로그램 제품이 제공된다.
본 발명의 또 다른 양태에 따르면, 프로세싱 유닛, 인터페이스 및 진동 액추에이터를 포함하는 모바일 기기가 제공된다. 상기 인터페이스 및 상기 진동 액추에이터는 각각 상기 프로세싱 유닛에 연결된다. 상기 단말 기기는 상기 무선 인터페이스를 통해 적어도 한 진동 패턴을 수신하도록 구성된다. 수신된 상기 적어도 한 진동 패턴은 적어도 한 진동 효과를 포함하며, 상기 진동 효과들 각각은 적어도 하나의 진동 신호 파라미터를 포함한다. 상기 CPU는 상기 저어도 한 진동 효과의 상기 강도 및 듀레이션에 따라 상기 진동 액추에이터를 순차적으로 제어하도록 더 구성된다.
본 발명의 다른 실시예에서, 상기 진동 신호 파라미터는, 본 발명의 방법에 대한 설명과 관련된 상기 설명에서 규정하고 개시된 것과 같이, 진동의 호칭, 강도, 및 듀레이션 중 적어도 하나를 포함한다.
본 발명의 또 다른 실시예에서, 상기 적어도 한 진동 패턴은, 본 발명의 방법에 대한 설명에서 규정하고 개시된 것과 같이, 진동 패턴의 호칭에 의해서도 규정된다.
상기 진동 패턴들 및 진동 효과들의 실시예에서, 상기 패턴들은 확장형 마크업 언어 (XML) 파일들의 형식으로 작성 및/또는 수신된다. XML 파일들은 상기 인터페이스를 통해 수신된다. 상기 인터페이스는 무선 인터페이스, 네트워크 인터페이스, 또는 외부 메모리 카드 (가령 콤팩트 플래시, 멀티미디어 카드 MMC 등) 수취를 위한 슬롯일 수 있다.
본 발명의 다른 실시예에서, 상기 모바일 단말은 상기 수신된 진동 패턴들을 저장할 스토리지를 더 포함한다. 상기 패턴들을 저장함으로써 이들 패턴들은 단말이나 단말에서 구동되는 어플리케이션에서 액세스 가능하게 된다.
본 발명의 다른 예에서, 상기 프로세싱 유닛은 저장된 진동 패턴들을 액세스할 수 있는 어플리케이션 프로그램을 실행하도록 구성된다. 즉, 진동 패턴들 (또는 상기 패턴들을 포함하는 XML 파일들)은 상기 CPU 상에서 실행되는 프로그램 어플리케이션에 의해 액세스 될 수 있다. 따라서, 모바일 기기의 진동 모터를 통제하기 위한 어플리케이션 프로그램 인터페이스 (API)가 XML 파일을 통해 정의될 수 있다.
본 발명의 다른 실시예에서, 상기 인터페이스는 무선 인터페이스이다. 이들은 가령 블루투스 인터페이스, W-LAN 인터페이스, 또는 모바일 전화 (GSM, GPRS, 또는 UMTS 등) 인터페이스들 등이다.
본 발명의 또 다른 실시예에서, 상기 모바일 기기는 가령 모바일 전화 같은, 통신 시스템 내 가입자 단말을 포함한다. XML 기반 진동 출력은, 모바일 전화, 통신기, 팜 탑(palmtop), PDA, 핸드헬드 GPS 장치, 휴대형 게임 콘솔 또는 이들의 조합형 등의 장치들 안에서 구현될 수도 있다.
이것은 개발자로 하여금, 초기에 조용한 호출/메시지 시그날링 말고 다른 어플리케이션들에 대해 진동 액추에이터를 사용하도록 의도하지 않은 모바일 단말들에서도 진동 효과들을 구현할 수 있게 만든다. 게임 어플리케이션에서, 이 진동 액추에이터는 경주 게임 어플리케이션에서의 차의 시동, 반동, 또는 충돌을 흉내 내도록 촉각적 신호들을 출력하는데 사용될 수도 있다.
사용자 또는 플레이어는 사용자 터치의 감각을 자극받음으로써 좀 더 완전한 시뮬레이션을 제공받을 수 있다.
이하에서, 본 발명은 첨부된 도면들을 참조하여 더 상세히 설명될 것이다.
도 1은 본 발명의 일실시예에 따른 패턴 계층을 시각화한 것이다.
도 2 내지 도 5는 XML 코드로 된 진동 패턴들의 여러 예들을 보인 것이다.
도 6은 모바일 단말 기기 내 프로그램 구조의 구성을 나타낸다.
도 7은 휴대형 기기의 구조 예를 도시한 간략화된 블록도이다.
도 8은 x 축이 시간을 나타내고 y 축들은 강도를 나타내는 세 개의 다이어그램으로 전형적 시그날링 패턴을 예시한 것이다.
도 1은 본 발명의 일실시예에 따른 패턴 계층(hierarchy)을 시각화한 것이다. 패턴 자체는 진동을 발생하지 못한다는 것을 알아야 한다. 한 패턴의 작은 일부 또는 구성요소, 즉, 진동 효과는 진동 성분의 한 요소를 나타낸다. 진동 효과는 두 개의 파라미터들에 의해 결정된다. 이 파라미터들은 시간과 강도이다. 진동 효과의 시간은 듀레이션(duration), 즉, 진동의 길이를 나타낸다.
강도는 진동이 얼마나 강력하게 만들어질 것인지를 나타낸다. 효과들은 호칭 또는 이름과 함께도 주어진다. 도면들에서, 이것은 제3의 최종 파라미터로서 규정된다. 두 개의 개별 효과들이 동일한 이름을 가질 수 있다. 등가적 효과들은 동일한 호칭을 가질 수 있다.
패턴은 일종의 진동 효과 컨테이너를 나타내며, 여기서, 진동 패턴(4.1, 4.2) 내 서로 다른 효과들(2.1, 2.2-2.4)이 순차적으로 함께 결합되어, 패턴으로 불리는 개체를 형성할 수 있다. 패턴들은 한 개의 자유 파라미터인 패턴 호칭 또는 이름을 가진다. 이 이름은 서로 다른 패턴들(4.1, 4.2)을 분간할 수 있게 하고, 한 패턴을 다른 패턴들과 분리시킬 수 있게 한다. 패턴들은 결합되어 패턴 루트(6) 트리를 생성할 수 있다. 패턴 트리는 각종 중간 단계들을 통해 각종 어플리케이션들의 상이한 패턴들 등을 분류하도록 확장될 수 있다.
모든 패턴이 RootOfPatterns(6) 요소 아래에서 분류될 수 있다. 또, 모든 효과(2.1-2.4)가 몇몇 패턴(4.1, 4.2) 아래에 놓일 것이다. 아무런 진동 효과도 포함하지 않는 패턴은 불려 질 때 아무 진동도 일으키지 않는다.
도 2는 60%의 강도와 1초의 듀레이션을 가진 진동을 발생하는 패턴의 예를 보인다. 모든 XML 파일에는 <RootOfPatterns> 요소가 포함되어야 한다. 이 요소는 HTML 태그들과 비슷한 닫기(closing) 태그를 가진다. 모든 패턴과 효과는 이러한 태그들 아래에 있어야 한다. 패턴들은 RootOfPatterns 태그와 유사하지만, 한 파라미터, 즉 패턴의 이름이나 호칭을 포함한다. 패턴은 시작 태그 <Pattern name="여기에 패턴 이름을 쓰시오">와 종료 태그 </Pattern>을 사용해 정의된다.
위에서 언급한 것처럼, 빈 패턴은 아무 진동도 유발하지 않는다. 효과들은 실질적 진동을 구현하도록 계획되었다. 효과 태그는 세 개의 파라미터들인 이름, 시간/듀레이션, 및 강도를 포함하다. 태그는 다음과 같이 정의된다: <Effect name="효과 이름" intensity="0-100 범위 내 강도 값" time="0에서 무한대까지의 시간 값"/>. 효과 태그는 종료 태그 </Effect>를 가지지 않고 대신 마지막 />에 슬래쉬를 포함하기 때문에 다른 것들과는 다르다. 여기 사용된 단위는 마이크로 초, 즉, 0.000001초이다. 시간 파라미터의 범위는 0부터 이론상으로 무한대까지가 된다. 여기 한 예로서, 1초 진동을 원하는 경우, 시간은 1000000이 될 것이다.
묘사된 효과 태그는 60%의 강도와 1초의 듀레이션을 가진 진동을 구현하도록 표현 <Effect name="long" intensity="60" time="1000000">에 의해 주어진다.
도 3에서, 도 1의 패턴 예는 1/2초의 휴지기 (즉, 강도=0) 만큼 확장되고, 그에 따라 60% 강도와 1/100초의 듀레이션을 가진 상이한 새 효과로 된다.
도 4에서, 도 3의 패턴 예가 패턴 트리 안의 제2패턴과 결합된다. 즉 둘 이상의 패턴이 RootOfPatterns 태그 하에서 정의될 수 있다. 제2패턴은 "Example pattern 2 (패턴 예 2)"라는 이름으로 정의되고 20% 강도와 1초 듀레이션을 갖는 진동 효과를 포함한다.
도 5는 실행가능한 형식으로 된 전 XML 코드를 나타낸다. 도 4의 코드가 XLM 태그와 doctype (문서 타입) 태그에 의해 확장된다. 이들 두 태그들이 제공된 상태에서, 현재의 코드는 유효하고도 잘 만들어진 XML 파일이 되고, 이것이 실제 전화기로 로드될 수 있다. XMLVibraPlayer 소프트웨어는 이 파일을 열어 패턴들을 생성할 수 있게 된다.
도 6은 다른 어플리케이션들에 의해 수신된 XML 코딩 파일들로부터 진동을 발생시키기 위한 프로그램 구조의 가능한 구성을 도시한 것이다. 이 구조는 입력되는 데이터를 XML 데이터로서 인식하기 위한 XML 파일 인식기를 포함한다. 인식기들은 끝에 ".mdl"을 포함하고 디렉토리 "\system\recogs" 안에 자리한다. 이 구조는 인식기들을 자동으로 검출하여 로드한다. 파일들을 실행하기 위해, 장치의 운영 시스템이 모든 인식기를 체크하고, 매치되는 것들을 찾고, 가장 높은 우선순위를 가진 파일들을 실행한다.
모바일 기기들 상에서 진동을 발생하기 위해, XMLRecognizer라 불리는 인식기가 XMLVibraPlayer 어플리케이션에 사용될 수 있다. XMLRecognizer는 .xml이라는 끝을 가진 파일들을 인식할 수 있고, XMLVibraPlayer 어플리케이션을 그 안에 로드된 파일과 함께 연다.
XMLRecognizer(26)는 XMLfiles(28)을 특정한 파일 끝 부분을 가지고 식별하고, 무엇인가를 실행한다. XML 인식기들은 XML 파일(28)의 식별에 따라 실행될 프로그램들(30, 32, 34)을 시작하도록 프로그래밍될 수 있다. 여기서, XMLVibraPlayer 어플리케이션은 XMLRecognizer(26)로 불리는 그 자신의 인식기를 가진다.
XMLVibraPlayer는 네 개의 클래스들로 이뤄진다. 가장 중요한 것들이 XMLVibraPlayerDocument(32)와 XMLVibraPlayerContainer(30)이다. XMLVibraPlayerDocumnet(32)는 온-스크린(on-screen) 패턴리스트를 생성하고, XML 트리를 생성하고 XML 파일을 여는 역할을 한다. 이 클래스는 VibraEngine의 함수 RunVibraEffect()를 사용하는 Play() 함수 또한 포함한다. XMLVibraPlayerContainer(30)는 사용자 입력 또는 다른 어플리케이션 프로그램들로부터의 입력을 처리하고 모든 것을 온 스크린 위에 그린다.
VibraEngine(34)은 RunVibraEffect 명령들을 실행하고, 연결된 진동 액추에이터 (미도시)의 동작을 제어한다. 수신된 XML 파일이 단말 기기에 저장되어 나중에 재생될 수 있고, 아니면 당장에 재생될 수도 있다. 도시된 구조에서 XMLRecognizer(26)는 수신된 XML 파일들(28)을 인식하고 진동 패턴들과 함께 XMLVibraPlayerDocument(32)에 저장하는 일을 한다.
저장된 XML 파일들(28)의 콘텐츠는, 어플리케이션 프로그램 인터페이스로서 기능하는 XMLVibraPlayerContainer(30)를 통해 게임 어플리케이션 등에 의해 액세스될 수 있다. 어플리케이션 프로그램 인터페이스 XMLVibraPlayerContainer는 다른 패턴들이 Play(패턴) 명령에 따라 재생되도록 요청할 수 있다.
요청된 패턴이 그런 다음 XMLVibraPlayerDocument(32) 내 데이터로부터 선택되고 VibraEngine으로 전송되어 해당하는 진동 액추에이터에 의해 그에 합당하게 재생될 것이다. VibraEngine.dll은 제조자가 제공한 미들웨어(middleware) 성분이다. 본 발명은 해시(hash) 테이블이나 그와 유사한 방식을 필요로 하지 않는다.
호칭 파라미터는 XMLVibraPlayer 어플리케이션에 있어 의무적인 것일 수 있다. 미들웨어 소프트웨어 모듈 (vibraengine.dll)이 호칭 파라미터를 그 후로는 보낼 필요가 없기 때문에, 호칭 파라미터는 진동(vibra) 제어시 지원되거나 구현되지 않을 수 있다.
패턴이 (적절한 효과들과 함께) 준비될 때, 그것은 어플리케이션들로 복사-붙여(copy-pasted)질 수 있고, 어플리케이션들은 진동 제어에 대한 액세스를 제공하는 미들웨어 성분 또한 이용할 것이다. 이 미들웨어 성분은 반드시 이름 파라미터를 포함할 필요는 없는데, 그것이 저 레벨 진동 제어시 어떤 부가 정보를 제공하지 못하기 때문이다(즉, 진동 액추에이터는 호칭을 알지 못한 채 진동 패턴들/효과들을 재생할 수 있다).
이것은, 어플리케이션 프로그램이 단말 장치상에 미리 저장된 진동 패턴들을 액세스할 수 있기 때문에, 진동 효과들을 구현하는데 필요한 노력들을 줄일 수 있다. 어플리케이션 프로그램은 단지 소정 진동 패턴에 대한 요청만을 발하면 된다.
도 7은 모바일 단말 기기 구조의 예를 도시한 간략화된 블록도이다. 도시된 기기(40)는 인터페이스(44), 중앙 처리 유닛(CPU)(42), 스토리지(48) 및 진동 액추에이터(46)를 포함한다. 기기(40)는 상기 입력 인터페이스(44)를 거쳐 진동 패턴들을 수신하고 이들을 스토리지(48)에 저장한다. 상기 CPU(42)에서 구동되는 어플리케이션이 진동 패턴의 재생을 요구하면 CPU(42)는 상기 스토리지(46)에서 상기 요청된 진동 패턴을 질의(query)할 수 있다. 상기 선택된 진동 패턴이 상기 스토리지 안에서 발견되면, CPU(42)는 상기 요청된 패턴 내 진동 효과들에 따라, 진동 액추에이터(46)를 제어할 수 있다.
도 8은 본 발명의 기본적 구성에 따른 진동 패턴의 생성을 도시한 것이다. 도 8은 각각이 진동 강도를 나타내는 세 개의 시간-동기된 다이어그램들을 포함하고 있다. 다이어그램(12)은 구현될 진동을 나타낸다. 다이어그램(16)은 본 발명에 따라 서로 다른 진동 효과들을 갖는 패턴으로서 구현되는 진동 표현을 나타낸다. 다이어그램(20)은 다이어그램(16)의 진동을 구현하기 위한 진동 액추에이터로의 전압 공급을 나타낸다.
다이어그램(12)은 강한 초기 진동(8.1), 휴지기(8.2), 중간 진동(8.3), 두 번째 휴지기(8.4), 및 증가형 진동(8.5-8.7)이 연이어 구성된, 구현될 진동을 나타낸다. 다이어그램(12)의 y 축(1)은 진동의 강도 또는 크기를 나타낸다. 초기 진동은 기록된 진동 데이터 안에 든, 프로그래머가 마음에 둔 상상의 진동 패턴에 기초할 수 있다.
다이어그램(16)은 서로 다른 진동 효과들(8.1 내지 8.7)을 가진 진동 패턴으로 해석되는 다이어그램(12)을 나타낸 것이다. 다이어그램(16)의 y 축(14)은 진동의 백분율로 정의되는 강도를 나타낸다. (부분적으로) 연속되는 다이어그램(12)의 진동은 여러 개의 직사각형 블록들로서 표현되고, 직사각형 블록들 각각은 한 진동 효과를 나타낸다. 도시된 스케일 상에서, 강한 초기 진동(8.1)은 1000㎲의 듀레이션을 가진 100% 진동으로 표현되었고, 그 뒤에 0% 강도와 500㎲ 듀레이션을 갖는 휴지기(8.2)가 오고, 중간 진동(8.3)은 50% 강도와 1500㎲ 듀레이션으로서 표현된다. 제2휴지기(8.4)는 0% 진동과 1000㎲의 듀레이션으로 표현되고, 증가형 진동(8.5-8.7)은 25%, 50%, 및 75% 진동과 각각 666㎲ 듀레이션의 세 개의 순차적 효과들로서 표현된다.
보다 많은 수의 진동 효과들이 다이어그램(12)의 증가형 진동(8.5-8.7)에 더 잘 접근하기 위해 사용될 수 있으나, 그러려면 데이터 량 증가라는 단점을 무릅써야 한다. 도시된 세 개의 진동 효과들은 본 발명의 원리를 시각화하는데 충분한 근접성을 나타낸다. 다이어그램(16)은 진동 효과들(8.1 내지 8.7)로 구성된 하나의 진동 패턴 표현을 나타낸다.
다이어그램(20)은 본 발명의 일실시예에 따라, 진동 액추에이터로 주어지는 전압 신호를 나타낸 것이다. 다이어그램(20)의 y 축(18)은 진동 액추에이터로 공급되는 전압을 나타낸다. 전압 신호는 펄스 폭 변조된다. 도시된 전압 변조는 10000 Hz의 변조 주파수에 기반한다. 즉, 듀티 사이클이 100㎲ 마다 온 및 오프로 스위치 된다. 이 듀티 사이클은 PWM 신호를 시각화할 수 있도록 선택되었다. 도시된 스케일 상에서, 강한 초기 진동(8.1)은 진동 액추에이터의 연속적 전력 공급으로 나타내었고, 그 뒤에 전압이 공급되지 않은 휴지기(8.2)가 뒤따른다. 중간 진동(8.3)은 50% 듀티 사이클, 즉 1.5ms 동안 50㎲ 듀레이션과 그 뒤에 이어지는 50㎲ 제로(zero) 전압 신호가 반복되는 전압 신호로서 표현된다. 전압 효과들(8.5-8.7)은 255, 50%, 및 75% 듀티 사이클을 갖는 세 개의 순차적 신호들로서 표현된다. 펄스 폭 변조를 위한 클록 주파수 (및 듀티 사이클)은 진동 패턴에 이해서도, 진동 효과들에 의해서도 주어지지 않는다. PWM 주파수와 진동 액추에이터의 진동 주파수는 기기 파라미터들에 의해 정해질 수 있다.
마지막으로, 도 8의 내용이, 진동 효과들이라 불리는 패턴의 여러 작은 부분들로부터 진동 패턴을 조합하도록 일정한 크기의 여러 기본 진동 요소들을 이용함 으로써 기기들에서 프로그램 진동 출력들을 구현하는 간단한 방법을 제공하는 것으로 정리될 수 있다. 패턴들은 한 개 이상의 효과들로 이뤄진다. 또, XML 포맷으로 촉각적 이벤트들을 나타낼 때, 효과와 패턴 둘 모두가 어떤 이름과 함께 제공된다. 이를테면, 도 8의 패턴은 "게임 34/충돌"이라고 지명될 수 있고, 진동 효과들은 제1임팩트, 정지(인도 너머로 점프), 땅바닥 위로 슬라이드, 그리고 도랑으로 추락 및 멈춤으로 지명될 수 있다.
이 XML 파일은 블루투스 등에 의해 타겟 장치로 전송되어, XMLVibraPlayer 어플리케이션을 통해 경험적 시험을 하도록 할 수 있다. 본 발명은 다양한 핸드셋들에서의 게임들에 대해 적합한 효과들을 생성하는 테스트 도구를 제공한다. 이것은, 상이한 핸드셋들이 상이한 진동 모터들을 가지기 때문이다. 한 핸드셋을 위해 생성된 효과들은 다른 핸드셋들에서는 같은 느낌을 주지 않을 수도 있다.
이 출원은 본 발명의 구성 및 실시예들을 예들을 통해 설명하고 있다. 이 분야의 당업자라면 본 발명이 상술한 실시예들의 세부사항에 국한되는 것이 아니고, 본 발명이 본 발명의 특성을 유지하는 한도에서 다른 형태로 구현될 수도 있다는 것을 알 수 있을 것이다. 상술한 실시예들은 예로서 간주되어야 하며 한정하는 것이어선 안 된다. 따라서, 본 발명을 구현하고 이용하는 수단들은 첨부된 청구항들에 의해서만 제한된다. 궁극적으로, 청구항들에서 정해진 것처럼, 등가적 구성들을 포함하여, 본 발명을 구현하는 다양한 옵션들 역시 본 발명의 범위 내에 속하게 된다.

Claims (26)

  1. 모바일 단말 기기의 진동 액추에이터(46)를 제어하기 위한 진동 출력 명령들을 구현하는 방법에 있어서,
    - 적어도 한 개의 진동 신호 파라미터에 의해 규정되는 적어도 한 개의 진동 효과(2.1, 2.2, 2.3,..)를 정의하는 단계,
    - 상기 진동 효과들(2.1, 2.2, 2.3,...) 중 적어도 한 개에 의해 적어도 하나의 진동 패턴(4.1, 4.2,...)을 정의하는 단계, 및
    - 상기 적어도 한 개의 진동 패턴(4.1, 4.2,...)을 스토리지 안에 저장하는 단계를 포함함을 특징으로 하는 방법.
  2. 제1항에 있어서, 상기 진동 신호 파라미터는 진동의 호칭, 강도(intensity), 및 듀레이션(duration 지속기간) 중 적어도 하나를 포함함을 특징으로 하는 방법.
  3. 제1항 또는 제2항에 있어서, 상기 적어도 한 개의 진동 패턴(4.1, 4.2,...)는 진동 패턴(4.1, 4.2,...)의 호칭에 의해서도 정의됨을 특징으로 하는 방법.
  4. 제1항 내지 제3항 중 어느 한 항에 있어서, 상기 진동 패턴들(4.1, 4.2,...)은 상기 진동의 주파수 및 위상에 의해 더 정의됨을 특징으로 하는 방법.
  5. 제1항 내지 제4항 중 어느 한 항에 있어서,
    - 상기 저장된 적어도 한 개의 진동 패턴(4.1, 4.2,...)을 검색해 가져오는 단계, 및
    - 상기 적어도 한 개의 진동 패턴(4.1, 4.2,...)을 단말 기기로 전송하는 단계를 더 포함함을 특징으로 하는 방법.
  6. 제1항 내지 제5항 중 어느 한 항에 있어서,
    - 상기 저장된 진동 패턴들(4.1, 4.2,...) 중 적어도 한 개를 선택하는 단계를 더 포함함을 특징으로 하는 방법.
  7. 제1항 내지 제6항 중 어느 한 항에 있어서,
    - 진동 데이터를 수신하는 단계, 및
    - 상기 진동 효과들(2.1, 2.2, 2.3,..) 및 상기 적어도 한 진동 패턴(4.1,4.2,..)을 상기 진동 데이터에 따라 규정하는 단계를 더 포함함을 특징으로 하는 방법.
  8. 모바일 단말 기기의 진동 액추에이터(46)를 제어하기 위해 진동 출력 명령들을 구현하는 방법에 있어서,
    - 각각이 적어도 한 개의 진동 신호 파라미터에 의해 규정되는 연속적인 진동 효과들(2.1, 2.2, 2.3,..)로서 각각이 규정되는 적어도 한 진동 패턴(4.1, 4.2,..)을 수신하는 단계, 및
    - 상기 적어도 한 진동 패턴(4.1, 4.2,..)을 저장하는 단계를 포함함을 특징으로 하는 방법.
  9. 제8항에 있어서,
    - 진동 패턴(4.1, 4.2,..) 요청을 수신하는 단계,
    - 상기 요청된 진동 패턴(4.1, 4.2,..)을 검색해 가져오는 단계, 및
    - 진동 액추에이터(46)를 각 진동 효과에 상응하도록 제어하여 각각의 진동 효과(2.1, 2.2, 2.3,..)를 순차적으로 출력하는 단계를 더 포함함을 특징으로 하는 방법.
  10. 모바일 단말 기기의 진동 액추에이터(46)를 구동하는 방법에 있어서,
    - 각각이 적어도 한 개의 진동 신호 파라미터에 의해 규정되는 적어도 한 진동 효과(2.1, 2.2, 2.3,..)로서 각각이 규정되는 적어도 한 진동 패턴(4.1, 4.2,..)을 수신하는 단계, 및
    - 진동 액추에이터(46)를 각 진동 효과에 상응하도록 제어하여, 상기 수신된 진동 패턴(4.1, 4.2,..)의 상기 적어도 한 진동 효과(2.1, 2.2, 2.3,..) 각각을 순차적으로 출력하는 단계를 더 포함함을 특징으로 하는 방법.
  11. 제8항 내지 제10항 중 어느 한 항에 있어서, 상기 진동 신호 파라미터는 진 동의 호칭, 강도, 및 듀레이션 중 적어도 하나를 포함함을 특징으로 하는 방법.
  12. 제8항 내지 제11항 중 어느 한 항에 있어서, 상기 적어도 한 진동 패턴(4.1, 4.2,..)은 진동 패턴(4.1, 4.2,...)의 호칭에 의해서도 정의됨을 특징으로 하는 방법.
  13. 제1항 내지 제7항 중 어느 한 항에 있어서, 청구항 제8항, 제9항, 제11항 또는 제12항 중 어느 한 항의 방법의 단계들을 더 포함함을 특징으로 하는 방법.
  14. 제1항 내지 제7항 중 어느 한 항에 있어서, 청구항 10항 내지 12항 중 어느 한 항의 방법의 단계들을 더 포함함을 특징으로 하는 방법.
  15. 제1항 내지 제14항 중 어느 한 항에 있어서, 상기 진동 효과들(2.1, 2.2, 2.3,..)의 상기 진동 강도는 듀티 사이클로서 규정됨을 특징으로 하는 방법.
  16. 제1항 내지 제15항 중 어느 한 항에 있어서, 상기 진동 패턴들(4.1, 4.2,..)과 진동 효과들(2.1, 2.2, 2.3,..)은 확장형 마크업 언어 코드 데이터로서 저장 및 전송됨을 특징으로 하는 방법.
  17. 컴퓨터나 네트워크 기기상에서 구동될 때 제1항 내지 제16항 중 어느 한 항 의 방법을 수행하도록, 컴퓨터 판독가능 매체에 저장되는 프로그램 코드 수단을 포함하는 소프트웨어 도구.
  18. 컴퓨터나 네트워크 기기상에서 구동될 때 제1항 내지 제16항 중 어느 한 항의 방법을 수행하도록, 컴퓨터 판독가능 매체에 저장되는 프로그램 코드 수단을 포함하는 컴퓨터 프로그램 제품.
  19. 모바일 단말 기기에 있어서,
    - 프로세싱 유닛(42),
    - 상기 프로세싱 유닛(42)과 연결되는 인터페이스(44), 및
    - 상기 프로세싱 유닛(42)과 연결된 진동 액추에이터(46)를 포함하고,
    상기 인터페이스를 통해 적어도 한 진동 패턴(4.1, 4.2,..)을 수신하도록 구성되고, 상기 진동 패턴(4.1, 4.2,..)은 적어도 한 개의 진동 효과(2.1, 2.2, 2.3,..)를 포함하고, 상기 각각의 진동 효과(2.1, 2.2, 2.3,..)는 적어도 한 진동 신호 파라미터를 포함하고, 상기 프로세싱 유닛(42)은 상기 적어도 한 진동 효과(2.1, 2.2, 2.3,..)의 상기 진동 신호 파라미터들에 의해, 상기 진동 액추에이터(46)를 제어하도록 더 구성됨을 특징으로 하는 모바일 단말 기기.
  20. 제19항에 있어서, 상기 진동 신호 파라미터는 진동의 호칭, 강도, 및 듀레이션 중 적어도 하나를 포함함을 특징으로 하는 모바일 단말 기기.
  21. 제19항 또는 제20항에 있어서, 상기 적어도 한 진동 패턴(4.1, 4.2,..)은 진동 패턴(4.1, 4.2,..)의 호칭에 의해서도 규정됨을 특징으로 하는 모바일 단말 기기.
  22. 제19항 내지 제21항 중 어느 한 항에 있어서, 상기 진동 패턴들(4.1, 4.2,..)은 확장형 마크업 언어 파일들의 형식으로 수신됨을 특징으로 하는 모바일 단말 기기.
  23. 제19항 내지 제22항 중 어느 한 항에 있어서,
    상기 수신된 진동 패턴들(4.1, 4.2,..)을 저장하기 위한 스토리지를 더 포함함을 특징으로 하는 모바일 단말 기기.
  24. 제23항에 있어서, 상기 프로세싱 유닛(42)은, 저장된 진동 패턴들(4.1, 4.2,..)을 액세스할 수 있는 어플리케이션 프로그램을 실행하도록 구성됨을 특징으로 하는 모바일 단말 기기.
  25. 제19항 내지 제24항 중 어느 한 항에 있어서, 상기 인터페이스(44)는 무선 인터페이스임을 특징으로 하는 모바일 단말 기기.
  26. 제19항 내지 제25항 중 어느 한 항에 있어서, 상기 모바일 단말 기기는 모바일 전화를 포함하고, 상기 진동 액추에이터(46)는 상기 전화의 진동 알람 액추에이터임을 특징으로 하는 모바일 단말 기기.
KR1020067015654A 2006-08-02 2004-02-03 모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법및 장치 KR20060131829A (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020067015654A KR20060131829A (ko) 2006-08-02 2004-02-03 모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020067015654A KR20060131829A (ko) 2006-08-02 2004-02-03 모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법및 장치

Publications (1)

Publication Number Publication Date
KR20060131829A true KR20060131829A (ko) 2006-12-20

Family

ID=37811660

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020067015654A KR20060131829A (ko) 2006-08-02 2004-02-03 모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법및 장치

Country Status (1)

Country Link
KR (1) KR20060131829A (ko)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100891145B1 (ko) * 2008-08-21 2009-04-03 (주)이미지스테크놀로지 진동모터를 이용한 이펙트 발생장치
WO2012044912A2 (en) * 2010-09-30 2012-04-05 Envirotech Pumpsystems, Inc. Seal cartridge for a centrifugal pump
WO2012050361A2 (ko) * 2010-10-13 2012-04-19 주식회사 예일전자 무공진주파수 진동 모터의 진동패턴 저장 방법
KR20120140207A (ko) * 2011-06-20 2012-12-28 임머숀 코퍼레이션 햅틱 테마 프레임워크
KR101424233B1 (ko) * 2013-01-24 2014-07-28 광주과학기술원 진동촉각 저작 도구 및 방법
KR101488528B1 (ko) * 2008-07-01 2015-01-30 엘지전자 주식회사 휴대 단말기 및 그 구동 방법
KR101512204B1 (ko) * 2007-02-20 2015-04-15 임머숀 코퍼레이션 저장된 효과들을 가지는 햅틱 피드백 시스템

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101512204B1 (ko) * 2007-02-20 2015-04-15 임머숀 코퍼레이션 저장된 효과들을 가지는 햅틱 피드백 시스템
KR101488528B1 (ko) * 2008-07-01 2015-01-30 엘지전자 주식회사 휴대 단말기 및 그 구동 방법
KR100891145B1 (ko) * 2008-08-21 2009-04-03 (주)이미지스테크놀로지 진동모터를 이용한 이펙트 발생장치
WO2012044912A2 (en) * 2010-09-30 2012-04-05 Envirotech Pumpsystems, Inc. Seal cartridge for a centrifugal pump
WO2012044912A3 (en) * 2010-09-30 2012-06-07 Envirotech Pumpsystems, Inc. Seal cartridge for a centrifugal pump
WO2012050361A2 (ko) * 2010-10-13 2012-04-19 주식회사 예일전자 무공진주파수 진동 모터의 진동패턴 저장 방법
WO2012050361A3 (ko) * 2010-10-13 2012-06-07 주식회사 예일전자 무공진주파수 진동 모터의 진동패턴 저장 방법
KR20120140207A (ko) * 2011-06-20 2012-12-28 임머숀 코퍼레이션 햅틱 테마 프레임워크
KR101424233B1 (ko) * 2013-01-24 2014-07-28 광주과학기술원 진동촉각 저작 도구 및 방법

Similar Documents

Publication Publication Date Title
US20080204266A1 (en) Method and Device For Implementing Vibration Output Commands in Mobile Terminal Devices
US10656718B2 (en) Device and method for outputting a series of haptic effects defined in a timeline effect definition
CN101657786B (zh) 具有存储的效应的触觉反馈系统
EP1522920B1 (en) Proactive user interface including emotional agent
CN101416139A (zh) 用于增强的触觉效果的系统和方法
GB2430328A (en) Modelling/simulating a network node including a plurality of protocol layers with selectively configurable switches disposed between and coupling the layers
KR20140030320A (ko) 사운드, 냄새, 및 햅틱 피드백을 제공하는 감각 태그를 위한 방법 및 장치
CN104992703A (zh) 语音合成方法和系统
KR20060131829A (ko) 모바일 단말 기기들에서 진동 출력 명령을 구현하는 방법및 장치
CN102819450A (zh) 一种在移动终端中模拟硬件设备的模拟器及其实现方法
Du et al. Context-aware application programming for mobile devices
CN108288937A (zh) 线性谐振装置的驱动方法及其驱动电路结构
CN1400845A (zh) 能改变输出声音的移动通信终端设备和输出声音控制方法
CN108687779A (zh) 一种家用机器人的舞蹈开发方法和系统
WO2005086339A1 (en) Method for producing a library of multi-channel vibration types, and multi-channel vibration control device
Bleul et al. Multimodal dialog description for mobile devices
CN200944230Y (zh) 可显示动漫菜单的手持终端
KR102011771B1 (ko) 사용자 인터페이스 제공 방법 및 그 장치
CN111897524B (zh) 实现Haptics触觉效果的方法及系统
Mangafic Artistic control of side effects in Playpod by scripting and game loop technology
Kelly et al. Domain-specific modelling for cross-platform product families
Savidis et al. Unified User Interface Development: New Challenges and Oppurtunities
KR20060013237A (ko) 기능 편집 통신 장치 및 방법
KR20050036496A (ko) 플래시를 이용한 가상머신 응용프로그램 제작, 제공, 갱신방법과 그 시스템

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
AMND Amendment
E601 Decision to refuse application
AMND Amendment
J201 Request for trial against refusal decision
E902 Notification of reason for refusal
B601 Maintenance of original decision after re-examination before a trial
J301 Trial decision

Free format text: TRIAL DECISION FOR APPEAL AGAINST DECISION TO DECLINE REFUSAL REQUESTED 20080828

Effective date: 20100531