KR102253100B1 - 저비용 힘-감지 디바이스를 위한 초 저전력 모드 - Google Patents

저비용 힘-감지 디바이스를 위한 초 저전력 모드 Download PDF

Info

Publication number
KR102253100B1
KR102253100B1 KR1020197031168A KR20197031168A KR102253100B1 KR 102253100 B1 KR102253100 B1 KR 102253100B1 KR 1020197031168 A KR1020197031168 A KR 1020197031168A KR 20197031168 A KR20197031168 A KR 20197031168A KR 102253100 B1 KR102253100 B1 KR 102253100B1
Authority
KR
South Korea
Prior art keywords
signal
microcontroller
buffer
low power
gesture
Prior art date
Application number
KR1020197031168A
Other languages
English (en)
Other versions
KR20190131087A (ko
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 구글 엘엘씨
Publication of KR20190131087A publication Critical patent/KR20190131087A/ko
Application granted granted Critical
Publication of KR102253100B1 publication Critical patent/KR102253100B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3231Monitoring the presence, absence or movement of users
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3293Power saving characterised by the action undertaken by switching to a less power-consuming processor, e.g. sub-CPU
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3296Power saving characterised by the action undertaken by lowering the supply or operating voltage
    • 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/017Gesture based interaction, e.g. based on a set of recognized hand gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3234Power saving characterised by the action undertaken
    • G06F1/3287Power saving characterised by the action undertaken by switching off individual functional units in the computer system
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Automation & Control Theory (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Power Sources (AREA)

Abstract

저비용 힘-감지 디바이스를 위한 초 저전력 모드를 제공하는 기술 및 장치가 기술된다. 이들 기술은 잠재적인 웨이크-업 이벤트에 대한 전력 소비를 최소화함으로써 디바이스의 배터리 수명을 연장한다. 이를 위해, 신호의 변화율의 추정치를 제공하기 위해 시간 영역에서 센서 신호들을 평가하는데 고역 통과 필터(예를 들어, 미분기)가 사용된다. 신호의 변화율이 임계량만큼 베이스라인 값에서 벗어날 때, 마이크로 컨트롤러는 200 밀리 초 이상의 이력 데이터와 같은 많은 수의 이력 샘플을 평가하기 위해 깨어난다. 인간 제스처가 인식되지 않으면, 마이크로 컨트롤러는 유휴 상태로 복귀하지만, 인간 제스처가 인식되면, 고전력 애플리케이션 프로세서는 인간 제스처에 매핑된 동작을 수행하도록 구성된 애플리케이션을 실행하기 위해 깨어난다.

Description

저비용 힘-감지 디바이스를 위한 초 저전력 모드
컴퓨팅 디바이스상의 많은 센서는 디바이스를 깨워 그 디바이스가 중요한 이벤트를 확인할 수 있도록 하기 위해 하나 이상의 저전력 코어에서 실행되는 프로그램 형태의 지속적인 감독이 필요하다. 이를 위해, 저전력 코어는 허위 경보(false alarm)로 인해 여러 번 센서로부터 이벤트를 감지하기 위해 정기적으로 깨어난다. 예를 들어, 일부 디바이스는 50Hz의 주기율로 샘플링하여 저전력 코어가 초당 50회 깨어나 데이터를 판독하도록 한다. 디바이스의 이러한 모니터링 및 깨우기는 전력을 소비하여 디바이스의 배터리 수명을 줄인다.
또한, 많은 센서는 드리프트되기 쉬운 경향이 있는데, 드리프트는 판독값이 원래의 캘리브레션된 상태로부터 오프셋되게 할 수 있는 센서 입력 및 다른 구성 요소의 점진적이고 종종 예측할 수 없는 변화이다. 노이즈, 온도 변동 또는 노화와 같은 다양한 영향으로 센서에 드리프트가 발생할 수 있다. 그 결과, 드리프트는 입력을 변경하는데, 이는 중요한 이벤트를 감지하는데 사용되는 신호 임계값을 추적 및 변경하기 위해 저전력 코어의 감독이 필요하다.
이러한 배경 설명은 본 발명의 맥락을 일반적으로 제시할 목적으로 제공된다. 본 명세서에서 다르게 지시되지 않는 한, 이 섹션에 기술된 자료는 본 발명 또는 첨부된 청구 범위에 대한 선행 기술인 것으로 명시적으로 또는 암시적으로 인정되지 않는다.
저비용 힘 감지 디바이스를 위한 초 저전력 모드를 제공하는 기술 및 디바이스가 기술된다. 이들 기술은 잠재적인 웨이크-업 이벤트에 대한 전력 소비를 최소화하여 디바이스의 배터리 수명을 연장시킨다. 이를 위해, 디바이스는 하드웨어로 구현된 아날로그 프런트-엔드로 일부 태스크를 오프로드하는데, 이 기능은 센서 신호에 대한 기본 체크를 수행하여 "관심" 이벤트가 임계 레벨의 신뢰도로 발생할 경우에만 마이크로 컨트롤러(예를 들어, 저전력 코어)를 깨운다. 그런 다음 마이크로 컨트롤러는 센서 데이터를 보다 자세히 분석한다. 입력 신호가 인간 제스처에 해당한다고 마이크로 컨트롤러가 결정하면, 마이크로 컨트롤러는 애플리케이션 프로세서(예를 들어, 고전력 코어)를 깨워 인간 제스처를 처리한다. 애플리케이션 프로세서는 추가 기준에 기초하여 제스처를 처리하거나 슬립 모드로 복귀할 수 있다. 본 명세서에 기술된 기술은 단지 입력 신호의 임계 레벨의 신뢰도에 기초하여 (더 많은 전력을 소비하는) 다음 레벨의 처리 전력을 깨우기 때문에 이러한 기술은 마이크로 컨트롤러를 정기적으로 깨워 중요한 이벤트를 체크하는 종래의 기술을 개선한다.
양태들에서, 신호의 변화율의 추정치를 제공하기 위해 시간 영역에서 센서 신호를 평가하기 위해 미분기(예를 들어, 고역 통과 필터)가 사용된다. 이 미분기는 더 많은 분석을 하기 위해 마이크로 컨트롤러를 깨우기 전에 센서 신호의 예비 평가를 제공하는 자율 시스템(예를 들어 아날로그 프론트-엔드)의 일부로서 구현된다. 신호의 변화율이 임계량만큼 기준값으로부터 벗어날 때, 마이크로 컨트롤러는 200 밀리 초 이상의 이력 데이터와 같은 이력 샘플 세트를 평가하기 위해 깨어난다. 인간 제스처가 인식되지 않으면, 마이크로 컨트롤러는 유휴 상태로 복귀하지만, 인간 제스처가 인식되면, 인간 제스처에 매핑된 동작을 수행하도록 구성된 애플리케이션을 실행하기 위해 애플리케이션 프로세서가 깨어난다.
이하에 설명되는 양태는 복수의 프로세서 및 아날로그 프론트-엔드를 포함하는 시스템을 포함한다. 복수의 프로세서는 일시 정지 상태(예를 들어, 슬립 상태)에 놓이도록 각각 구성된 적어도 마이크로 컨트롤러 및 고전력 애플리케이션 프로세서를 포함한다. 아날로그 프론트-엔드는 하드웨어로 구현되고 힘 센서에 의해 생성된 아날로그 신호를 디지털 신호로 변환하고, 디지털 신호의 샘플들을 버퍼에 저장하고, 기준값으로부터 신호 변화율의 편차에 기초하여 디지털 신호를 필터링하고, 하나 이상의 임계값을 넘는 필터링된 디지털 신호에 응답하여 마이크로 컨트롤러를 일시 정지 상태로부터 깨운다. 마이크로 컨트롤러는 버퍼 내의 디지털 신호의 샘플들을 분석하여 디지털 신호가 인간 제스처에 해당하는지 여부를 판단하기 위해 깨어난다. 마이크로 컨트롤러는 인간 제스처로서 인식된 디지털 신호에 기초하여 인간 제스처를 처리하기 위해 고전력 애플리케이션 프로세서를 일시 정지 상태로부터 깨우도록 구성된다.
이하에서 설명되는 양태는 또한 모바일 디바이스가 저전력 유휴 상태(예를 들어, 슬립 상태)에 있을 때 모바일 디바이스의 하우징에 가해지는 힘의 검출에 기초하여 입력 신호를 생성하는 단계를 포함하는 방법을 포함한다. 이 방법은 또한 입력 신호의 샘플들을 버퍼에 저장하는 단계를 포함한다. 이 방법은 입력 신호의 기준 변화율로부터의 편차에 기초하여 입력 신호를 필터링하는 단계를 추가로 포함한다. 이 방법은 하나 이상의 임계값을 넘는 편차에 기초하여 인터럽트를 트리거하는 단계를 더 포함한다. 이 방법은 또한 인터럽트에 기초하여 마이크로 컨트롤러를 저전력 유휴 상태로부터 깨워 버퍼의 샘플들을 분석하고 입력 신호가 인간 제스처에 해당하는지 여부를 결정하는 단계를 포함한다.
이하에서 설명되는 양태는 또한 하나 이상의 센서, 변환기, 버퍼, 필터, 비교기 및 마이크로 컨트롤러를 포함하는 컴퓨팅 디바이스를 포함한다. 하나 이상의 센서는 컴퓨팅 디바이스의 하우징에 가해지는 힘을 검출하도록 구성된다. 변환기는 검출된 힘에 기초하여 신호를 생성하도록 구성된다. 버퍼는 신호에 대응하는 샘플들을 저장하도록 구성된다. 필터는 기준값에 대한 신호 변화율의 편차에 기초하여 신호를 필터링하도록 구성된다. 비교기는 신호 변화율의 편차가 임계값보다 크거나 작거나 지정된 범위를 벗어난 것에 기초하여 인터럽트를 트리거하도록 구성된다. 마이크로 컨트롤러는 인터럽트에 기초하여 저전력 유휴 상태로부터 깨어나 버퍼의샘플들을 판독하여, 신호가 인간 제스처에 해당하는지 여부를 결정하도록 구성된다. 마이크로 컨트롤러는 또한 인간 제스처로 인식된 신호에 응답하여 저전력 유휴 상태로부터 고전력 애플리케이션 프로세서를 깨우도록 구성된다.
다음 도면을 참조하여 저비용 힘 감지 디바이스를 위한 초 저전력 모드를 가능하게 하는 장치 및 기술이 설명된다. 도면 전체에서 동일한 특징 및 구성 요소를 참조하기 위해 동일한 번호가 사용된다.
도 1은 모바일 디바이스가 구현될 수 있는 예시적인 환경을 도시한다.
도 2는 보다 상세하게 도 1의 요소들을 도시한다.
도 3은 초 저전력 모드를 관리하도록 구성된 힘 감지 디바이스의 하드웨어 구성 요소들의 예시적인 구현을 도시한다.
도 4는 힘 감지 디바이스를 위한 초 저전력 모드를 위한 예시적인 방법을 도시한다.
도 5는 하나 이상의 양태에 따른 힘 감지 디바이스의 초 저전력 모드를 구현할 수 있는 예시적인 컴퓨팅 시스템의 다양한 구성 요소를 도시한다.
개요
일반적으로, 저전력 모드에서 동작하는 컴퓨팅 디바이스는 컴퓨팅 디바이스를 깨우는데 사용되는 상이한 센서들을 지속적으로 모니터링함으로써 여전히 전력을 소비한다. 이 디바이스는 센서에서 데이터를 판독하여 실제 이벤트를 감지하기 위해 계속 깨어날 수 있다. 그러나, 이벤트는 센서들의 드리프트와 같은 다양한 요인으로 인해 허위 경보일 수 있다. 상기 드리프트는 불균일하게 가열하는 부품의 물질 팽창, 수분, 센서와 물리적 힘이 가해진 사이의 이완 등으로 인한 기계적 문제와 같은 다양한 요인으로 인해 발생할 수 있다. 일부 센서는 다량의 드리프트가 발생하지 않을 수 있지만 이러한 센서는 비용이 많이 들 수 있다. 반면에, 저렴한 센서는 일반적으로 드리프트가 발생하는 경향이 있다.
이들 결함을 해결하기 위해, 힘 감지(force-sensing) 디바이스를 위한 초 저전력 모드를 가능하게 하는 저비용 솔루션을 제공하는 기술 및 장치가 이하에서 설명된다. 이들 기술 및 장치는 또한 센서 데이터를 자율적으로 포착하여 그 센서 데이터에 대한 추가 분석을 수행하도록 마이크로 컨트롤러를 깨우는 것을 보증하기에 충분히 "관심" 베이스라인(baseline)으로부터 편차를 검출할 수 있는 하드웨어 구조를 구현함으로써 디바이스의 배터리 수명을 연장시킨다. 마이크로 컨트롤러가 높은 신뢰도로 센서 데이터가 인간 제스처에 대응한다고 결정하면, 애플리케이션 프로세서(고전력 코어)는 제스처와 관련된 동작을 수행하기 위해 깨어난다. 그러나, 센서 데이터가 인간 제스처에 해당하지 않는 것으로 결정되면, 애플리케이션 프로세서는 깨어나지 않고 저전력 모드로 유지되고, 마이크로 컨트롤러는 저전력 모드로 복귀한다. 이러한 방식으로, 마이크로 컨트롤러와 애플리케이션 프로세서는 직류(DC) 임계값을 모니터링하여 센서들의 드리프트를 처리하지 않는 종래의 기술에 비해 더 적은 횟수로 깨어난다.
예를 들어, 사람이 주머니에 스마트 폰을 가지고 있는 경우를 고려해 보자. 스마트 폰은 사용자의 옷과의 접촉으로 인해 하우징이나 케이스에 외부의 힘이 가해지거나 사용자 신체에 대한 스마트 폰의 근접에 근거하여 온도가 증가될 수 있다. 사용자가 스마트 폰을 잡으면 하우징 또는 케이스에 힘이 가해진다. 그러나, 이들 상황 중 어느 것도 사용자가 스마트 폰을 깨우려는 의도를 나타내지는 않지만 특히 드리프트에 취약한 저전력 센서를 사용할 때 웨이크-업 이벤트를 트리거할 수 있는 잠재적인 오탐지를 나타낸다. 그러나, 사용자가 반대쪽(opposite sides)에서 스마트 폰을 스퀴즈(squeezes, 압착)하는 경우, 사용자의 의도는 웨이크 업 이벤트를 트리거하는 것일 수 있다. 본 명세서에 기술된 기술 및 장치는 스마트 폰의 프로세서가 힘 센서를 작동시키기 위해 깨어날 필요가 없거나 잠재적인 웨이크-업 이벤트를 확인 또는 거부할 필요가 없기 때문에 스마트 폰이 저전력 상태에 있을 때 스마트 폰의 오 탐지 및 전력 소비를 줄인다.
다음의 논의는 먼저 동작 환경, 그 다음 방법, 및 예시적인 전자 디바이스 및 예시적인 양태으로 순으로 설명된다.
예시적인 환경
도 1은 저비용 힘 감지 디바이스를 위한 초 저전력 모드가 구현될 수 있는 예시적인 환경(100)을 도시한다. 예시적인 환경(100)은 센서(들)(104), 아날로그 프론트-엔드(106), 메모리(108), 마이크로 컨트롤러(들)(110) 및 애플리케이션 프로세서(들)(112)를 구비한 컴퓨팅 디바이스(102)를 포함한다. 컴퓨팅 디바이스 (102)는 마이크로 컨트롤러(들)(110)와 애플리케이션 프로세서(들)(112)가 일시 정지되거나 저전력 유휴 상태에 놓이는 초 저전력 모드에서 실행되도록 구성된다.
센서(들)(104)은 컴퓨팅 디바이스의 하우징(114)에 가해지는 물리적 힘을 검출하는 힘 센서와 같은 임의의 적절한 센서를 포함할 수 있다. 양태들에서, 센서(104)는 컴퓨팅 디바이스(102), 하우징(114), 또는 하우징(114) 및 컴퓨팅 디바이스(102)의 하나 이상의 내부 구성 요소들 사이의 접착 물질에 대한 스트레인 (strain)을 기계적으로 측정하기 위해 컴퓨팅 디바이스(102)에 통합된 스트레인 게이지를 포함한다. 다수의 센서(들)(104)는 컴퓨팅 디바이스(102)상에 구현되어, 반대쪽과 같은 컴퓨팅 디바이스(102)의 상이한 영역들에 가해지는 힘을 검출할 수 있다. 적어도 하나의 구현에서, 각각의 센서(104)는 상이한 집적 회로(IC) 채널과 연관될 수 있어서, 각 센서(104)로부터 획득된 데이터는 다른 센서(104)로부터 획득된 데이터와 독립적으로 판독될 수 있다. 그러나, 일 예에서, 컴퓨팅 디바이스(102)의 반대쪽상의 2개의 센서(104)는 컴퓨팅 디바이스(102)에 가해지는 압축력을 측정하기 위해 단일 IC 채널과 연관될 수 있다. 따라서, 컴퓨팅 디바이스(102)에 가해지는 힘을 측정하기 위해 임의의 적절한 센서(104)가 사용될 수 있다.
아날로그 프론트-엔드(106)는 센서(들)(104)에 의해 획득된 데이터가 그 데이터를 분석하도록 마이크로 컨트롤러(110)를 깨우는 것을 보증하는지 여부를 자율적으로 결정할 수 있다. 아날로그 프론트-엔드(106)는 센서(들)(104)로부터 획득된 아날로그 신호와 같은 신호를 디지털 신호로 변환한다. 아날로그 프론트-엔드(106)는 또한 베이스라인(baseline) 값에 대한 디지털 신호의 변화율에 기초하여 디지털 신호를 필터링한 다음, 그 변화율이 특정 임계값을 초과하면 마이크로 컨트롤러(110)에 대한 웨이크 업 이벤트를 트리거한다. 또한, 아날로그 프론트-엔드(106)는 원시(raw, 미처리) 센서 데이터 버퍼와 같은 메모리(108)에 저장하여, 마이크로 컨트롤러(110)가 일단 깨어나면 원시 센서 데이터에 대한 제스처 분석을 수행할 수 있게 한다.
마이크로 컨트롤러(110)는 아날로그 프론트-엔드(106)에 직접 취부된 저전력 코어와 같은 저전력 컴퓨팅 엔티티를 나타낸다. 마이크로 컨트롤러(110)는 제스처 모듈(116)을 사용하기 위해 저전력 유휴 상태로부터 깨어나서, 원시 센서 데이터가 인간 제스처에 해당하는지 여부를 결정할 수 있다. 일 예에서, 인간 제스처는 화살표(120-1 및 120-2)로 도시된 바와 같이, 압축력이 하우징(114) 또는 컴퓨팅 디바이스(102)의 커버의 반대쪽에 가해지는 스퀴즈 제스처(118)를 포함한다. 예시적인 압축력(예를 들어, 화살표(120-1, 120-2))이 컴퓨팅 디바이스의 좌측 및 우측면에 적용되는 것으로 도시되어 있지만 압축력을 검출하는데 임의의 측면(예를 들어, 상면, 하면, 전면, 후면, 좌측면, 우측면)이 사용될 수 있다. 압축력이 사전 정의된 임계값보다 큰 경우, 인간 제스처(예를 들어, 압착 제스처(118))가 인식될 수 있다. 인간 제스처가 인식되면, 마이크로 컨트롤러(110)는 제스처와 관련된 동작을 수행하도록 애플리케이션 프로세서(112)를 깨운다.
애플리케이션 프로세서(들)(112)는 시스템 서비스 및 사용자 애플리케이션 코드를 실행할 수 있는 ARM 프로세서와 같은 고전력 코어를 나타낸다. 전력을 절약하기 위해, 프로세서(들)(112)는 마이크로 프로세서(110)가 애플리케이션 프로세서(112)를 깨울 때까지 애플리케이션 저전력 유휴 상태로 유지된다. 일단 깨어나면, 애플리케이션 프로세서(들)(112)는 애플리케이션(122)을 실행하여 예를 들어 인식된 제스처와 관련된 동작을 수행함으로써 제스처를 처리할 수 있다.
적어도 센서(들)(104)과 아날로그 프론트-엔드(106)는 하드웨어로 구현되어 자율적으로 동작할 수 있는데, 이는 마이크로 컨트롤러(들)(110)와 애플리케이션 프로세서(들)(112)가 장시간 저젼력 유휴 상태로 유지되게 하여 배터리 수명을 연장시킨다.
도 2는 하나 이상의 양태에 따라 보다 상세히 도 1의 컴퓨팅 디바이스(102)의 예시적인 구현(200)을 도시한다. 컴퓨팅 디바이스(102)는 스마트 폰(102-1), 랩탑(102-2), 텔레비전(102-3), 데스크탑(102-4), 태블릿(102-5), 및 웨어러블 컴퓨터(102-6)와 같은 다양한 비 제한적 예시 디바이스로 도시되어 있다. 컴퓨팅 디바이스(102)는 컴퓨터 프로세서(들)(202) 및 컴퓨터 판독 가능 매체(204)를 포함하고, 이 매체는 메모리 매체(206), 저장 매체(208) 및 제스처 모듈(116)을 포함한다. 컴퓨터 판독 가능 매체(204)상의 컴퓨터 판독 가능 명령들로서 구현된 애플리케이션 및/또는 운영 체제(미도시)는 본 명세서에 기술된 기능들 중 일부를 제공하기 위해 프로세서(들)(202)(예를 들어, 애플리케이션 프로세서(들)(112))에 의해 실행될 수 있다. 컴퓨터 판독 가능 매체(204)는 특정 동작들에 매핑된 압착 제스처(118)와 같은 하나 이상의 제스처로서 사용자 입력을 인식할 수 있는 제스처 모듈(116)을 또한 포함한다.
모바일 컴퓨팅 디바이스(102)는 또한 센서(들)(104), 아날로그 프론트-엔드(106), I/O 포트(210) 및 네트워크 인터페이스(212)를 포함한다. I/O 포트(210)는 비 제한적인 예로서, 고화질 멀티미디어 인터페이스(HDMI), 디지털 비디오 인터페이스(DVI), 디스플레이 포트, 광섬유 또는 광-기반의 오디오 포트(예를 들어, 아날로그, 광학 또는 디지털), USB(범용 직렬 버스) 포트, SATA(Serial Advanced Technology Attachment) 포트, PCI(Peripheral Component Interconnect) 익스프레스 기반 포트 또는 카드 슬롯, 직렬 포트, 병렬 포트 또는 다른 레거시 포트와 같은 다양한 포트를 포함할 수 있다. 모바일 컴퓨팅 디바이스(102)는 또한 유선, 무선 또는 광 네트워크를 통해 데이터를 통신하기 위한 네트워크 인터페이스(들)(212)를 포함할 수 있다. 비 제한적인 예로서, 네트워크 인터페이스(212)는 근거리 통신망(LAN), 무선 근거리 통신망(WLAN), 개인 영역 네트워크(PAN), 광역 통신망(WAN), 인트라넷, 인터넷, 피어-투-피어 네트워크, 점-대-점 네트워크, 메쉬 네트워크 등을 통해 데이터를 통신할 수 있다.
도 2의 컴퓨팅 디바이스(102)를 보다 상세하게 설명하면, 이 논의는 이제 초 저전력 모드를 위해 구성된 힘 감지 디바이스의 하드웨어 구성 요소의 예시적인 구현(300)을 도시하는 도 3을 참조한다. 예시적인 구현은 단일 집적 회로(IC) 채널을 나타낸다. 그러나, 각각 독립적인 경로를 갖는 복수의 IC 채널이 구현될 수 있다. 일부 예에서, IC 채널들의 서브 세트는 단일 경로를 공유할 수 있다.
도 3에서, 센서(들)(104)는 아날로그 프론트-엔드(106)로 전송되는 아날로그 신호를 생성한다. 도 1의 아날로그 프론트-엔드(106)는 변환기(302), 버퍼(304), 필터(306), 선택적 절대값 블록(308) 및 비교기(310)를 포함하는 것으로 도시되어 있다. 변환기(302)는 아날로그-디지털(AD) 변환기와 같은 임의의 적적한 변환기를 포함할 수 있다. 변환기(302)는 센서(들)(104)의 아날로그 신호를 디지털 신호로 변환하여 그 변환된 신호의 원시 샘플들을 버퍼(304)에 저장하는데, 이는 원시 샘플들(312)이 후속 분석을 위한 이력 데이터로서 이용 가능하게 한다. 또한, 변환기(302)는 디지털 신호를 필터(306)로 전송한다.
버퍼(304)는 임의의 적절한 버퍼일 수 있다. 전력 측면에서 저비용의 구현을 위해, 예시적인 버퍼(304)는 선입 선출(FIFO) 버퍼 또는 링 버퍼일 수 있다. 버퍼는 250 밀리 초, 500 밀리 초, 750 밀리 초, 1 초 등과 같은 임의의 적절한 깊이 (depth)를 포함할 수 있다. 이하에서 더 설명되는 바와 같이, 버퍼의 깊이는 제스처 검출을 위해 필요한 디지털 신호의 원시 샘플들(312)(예를 들어, 이력 데이터)의 양에 의존한다. 구현에서, 버퍼는 AD 변환기 샘플 당 하나의 엔트리를 포함하고 그 샘플들을 순차적으로 저장한다. 다수의 채널이 사용될 때, 버퍼(304)는 모든 채널 또는 그 채널들의 서브 세트 사이에서 공유될 수 있다.
필터(306)는 디지털 신호로부터 DC 성분을 효과적으로 제거하는 "베이스 라이닝(baselining)"을 수행하도록 구성된다. 적어도 하나의 예에서, 필터(306)는 신호의 변화율(예를 들어, 기울기)을 결정하기 위해 디지털 신호의 1차 미분을 취할 수 있다. 마지막 두 샘플 사이의 차이를 사용하여 순시 도함수(instantaneous derivative)를 얻을 수 있다. 그러나, 순시 도함수는 단지 변화율의 추정치를 제공하며 노이즈 또는 드리프트에 기초하여 허위 경보를 유발하는 경향이 있다. 대안적으로, 도함수는 특정 값 이상의 도함수를 허용하는 고역 통과 필터를 사용하여 얻을 수 있다. 필터는 임의의 유형일 수 있으며 전력 및 하드웨어를 최소화하도록 선택될 수 있다. 필터는 자율적인 고역 통과 필터를 형성하기 위해 고정 계수 세트를 갖는 실리콘과 같은 하드웨어로 구현될 수 있다. 결과적으로, 필터(306)는 저전력으로 구현될 수 있다.
일 예에서, 필터(306)는 예측 가능한 컷오프 및 위상 지연을 갖는 고역 통과 필터일 수 있다. 대안적으로, 필터(306)는 예컨대 5Hz 내지 15Hz의 대역과 같은 관심 대역에 대해 구성된 대역 통과 필터일 수 있다.
필터(306)는 신호의 고역 통과 표현을 제공하기 위해 하나 이상의 계수를 포함한다. 필터(306)가 신호의 변화율을 결정하기 때문에, 그 신호의 고역 통과 표현은 베이스 라인 변화율에 상대적이다. 따라서, 노이즈 및 드리프트가 있는 센서의 경우, 신호의 노이즈 및 드리프트는 필터(306)에 의해 감소되거나 제거된다. 예를 들어, 센서(104)가 초당 하나의 값을 드리프트하면, 그 값은 베이스라인 변화율이되고, 더 느린 속도(rate)로 변화하는 신호 부분들은 무시될 수 있다. 베이스라인 변화율 이상의 신호 부분들은 필터를 통해 누설되어 필터링 데이터로서 전달된다. 따라서, 필터(306)는 제스처 인식을 위해 적절한 정확도를 유지하면서 허위 활성화를 최소화하도록 구성된다. 예를 들어, 필터(306)는 드리프트보다 높지만 인식될 인간 제스처보다 낮게 설정된다.
베이스라인이 필터(306)에 의해 확립된 후, 절대값 블록(308)은 필터 데이터의 네거티브 값을 제거하기 위해 선택적으로 사용된다. 이는 베이스라인으로부터 네거티브 값 편차를 찾는데 필요한 추가 디지털 로직의 비용을 절약한다.
비교기(310)는 필터링된 데이터를 하나 이상의 레지스터(예를 들어, 임계값)와 비교하여 관심있는 이벤트들을 식별한다. 이들 이벤트는 최대 또는 최소값을 초과할 수 있으며, 이 중 하나는 인간 제스처를 나타낼 수 있다. 스퀴즈-앤-홀드 제스처, 퀵 스퀴즈-앤-릴리스 제스처, 더블 스퀴즈-앤-릴리스 제스처 등과 같은 상이한 유형의 인간 제스처를 식별하기 위해 별도의 임계값들이 사용될 수 있다. 적어도 하나의 구현에서, 이들 이벤트는 필터링된 데이터가 시간 길이에 대해 0로 설정되는 것에 기초하여 "활동 없음"을 나타낼 수 있다. 관심 이벤트는 온도 드리프트 또는 다른 센서 특성에 의해 기인되는 공지된 노이즈 주파수 이상의 베이스라인에서의 편차를 포함할 수 있다. 일 예에서, 제스처는 원시 디지털 신호가 베이스라인으로부터 1000개 이상의 AD 변환기 카운트만큼 벗어날 때 시작될 수 있다. 이와 같이, 비교기 레지스터는 약 1000 카운트로 설정될 수 있다. 다수의 레지스터가 있거나 센서(들)(104)가 전자적으로 또는 기계적으로 반전되면, 시스템은 또한 네거티브 1000 카운트를 청취할 수 있다. 비교기에 2개의 레지스터가 있으면, 그 임계값들은 {-1000, 1000}으로 설정될 수 있다. 절대값 블록(308)이 사용되는 경우, 1000 카운트의 단일 임계값이 {1000, 1000} 범위 밖의 편차를 식별하는데 사용될 수 있다. 유한 필터 주파수로 인해 이 임계값은 조정될 수 있다.
신호의 베이스라인 변화율로부터의 편차가 임계값의 절대값 이상으로 상승할 때, 마이크로 컨트롤러(110)를 저전력 유휴 상태로부터 깨우기 위해 인터럽트가 트리거될 수 있다. 마이크로 컨트롤러(110)는 아날로그 프론트-엔드(106)의 관리를 담당하는 저전력 코어를 포함한다. 마이크로 컨트롤러(110)는 또한 아날로그 프론트-엔드(106)로부터의 인터럽트에 응답할 수 있다. 예시적인 구현에서, 마이크로 컨트롤러(110)는 마이크로 컨트롤러(110)가 거의 제로 전력 비용으로 아날로그 프론트-엔드(106)로부터의 드문 이벤트를 처리할 수 있게 하는, 저전력 동작을 위해 설계된 시스템-온-칩(SOC)상의 디지털 신호 프로세서(DSP)이다. 일단 깨어난 후, 마이크로 컨트롤러(110)는 제스처 모듈(116)을 실행하여 버퍼(304) 내의 원시 샘플들(312)(예를 들어, 이력 데이터)을 분석하고, 샘플들(312)이 인간 제스처에 해당하는지 여부를 결정할 수 있다. 이력 데이터 내의 각각의 샘플(312)은 수신된 채널을 나타내는 정보 및 해당 특정 샘플이 마이크로 컨트롤러(110)를 깨운 비교기 이벤트와 관련되어 있는지 여부의 표시자를 포함할 수 있다.
이 정보를 사용하여, 마이크로 컨트롤러(110)는 이력 데이터를 롤백하여, 마이크로 컨트롤러(110)의 웨이크 업 이벤트를 트리거한 "관심" 파트를 발견할 수 있다. 또한, 슬립 상태와 웨이크(wake) 상태 사이의 데이터 스트림의 연속성이 유지될 수 있다. 예를 들어, 아날로그 프론트-엔드(106)의 감지와 그 결과인 마이크로 컨트롤러(110)의 웨이크 업은 샘플을 떨어뜨리지(drop) 않도록 빨라야 한다. 샘플을 너무 빨리 떨어뜨리는 것을 피하기 위해, 아날로그 프론트-엔드(106)의 버퍼(304)는 마이크로 컨트롤러(110)를 깨울 때 레이턴시를 수용하기에 충분한 깊이를 갖는다. 일부 예의 버퍼 깊이는 45, 64 또는 75개의 데이터 아이템을 포함하지만, 프로세서(들)를 깨울 때 레이턴시를 수용하기 위해 다른 버퍼 깊이도 고려된다.
인간 제스처가 인식되지 않으면, 마이크로 컨트롤러(110)는 저전력 유휴 상태로 복귀하고 그에 따라 배터리 전력을 보존할 수 있다. 그러나, 인간 제스처가 인식되면, 마이크로 컨트롤러(110)는 애플리케이션 프로세서(112)를 저전력 유휴 상태로부터 깨운다.
애플리케이션 프로세서(112)는 다양한 상이한 애플리케이션(122)을 실행할 수 있는 임의의 적합한 고전력 코어일 수 있다. 예를 들어, 애플리케이션 프로세서(112)는 애플리케이션(122)을 실행하여 컴퓨팅 디바이스(102)의 디스플레이 디바이스를 턴온하는 것과 같은 인간 제스처를 처리할 수 있다. 다른 예에서, 애플리케이션 프로세서(112)는 인간 제스처에 기초하여 이미지 캡처 애플리케이션과 같은 다른 애플리케이션을 개시할 수 있다. 이러한 방식으로, 사용자의 스마트 폰이 저전력 모드에 있을 때, 사용자는 스마트 폰의 반대쪽을 압착하여 스마트 폰을 깨울뿐만 아니라 스마트 폰상의 카메라 애플리케이션을 개시하여 이미지 캡처를 신속하게 준비할 수 있다. 적어도 하나의 예에서, 애플리케이션 프로세서(112)는 마이크로 컨트롤러(110)로부터의 높은-신뢰도 제스처 인식(예를 들어, 완전히 인식된 제스처)에 응답하고, 그렇지 않으면 저전력 유휴 상태로 유지된다.
이들 기술을 사용하여, 컴퓨팅 디바이스(102)는 마이크로 컨트롤러(110)와 애플리케이션 프로세서(112)가 모두 저전력 유휴 상태에 있는 초 저전력 모드를 이용할 수 있다. 초 저전력 모드 동안, 자율적으로 기능하는 아날로그 프론트-엔드(106)는 신호의 변화율에 기초하여 센서 신호를 필터링하고, 그 변화율이 알려진 노이즈 주파수 이상의 베이스라인 변화율로부터 벗어날 때 마이크로 컨트롤러(110)를 깨운다. 그런 다음, 마이크로 컨트롤러(110)는 센서 신호를 분석하여 제스처를 인식하고, 높은 신뢰도 제스처 인식에 기초하여 애플리케이션 프로세서(112)를 깨운다. 애플리케이션 프로세서(112)는 이어서 제스처를 처리할 수 있다. 이러한 초 저전력 모드는 마이크로 컨트롤러(110) 및 고전력 애플리케이션 프로세서(112)가 DC 임계값을 지속적으로 모니터링하고 센서들의 드리프트를 설명하지 못하는 종래의 기술과 비교할 때 저전력 유휴 상태로부터 덜 빈번하게 깨어나기 때문에 컴퓨팅 디바이스(102)의 배터리 수명을 연장시킬 수 있다.
예시적 방법
다음의 논의는 힘 감지 디바이스를 위한 초 저전력 모드를 위한 방법을 설명한다. 이들 방법은 도 1의 컴퓨팅 디바이스(102)와 같은 이전에 설명된 예를 이용하여 구현될 수 있다. 이들 방법의 양태는 하나 이상의 엔티티에 의해 수행되는 동작들로 도시된 도 4에 도시되어 있다. 이들 방법의 동작이 도시되고/기술되는 순서는 제한으로서 해석되도록 의도되지 않으며, 설명된 방법 동작들의 임의의 수 또는 조합은 방법 또는 대안적인 방법을 구현하기 위해 임의의 순서로 조합될 수 있다.
도 4는 힘 감지 디바이스를 위한 초 저전력 모드를 관리하기 위한 예시적인 방법(400)을 도시한다.
단계(402)에서, 입력 신호는 모바일 디바이스가 저전력 유휴 상태에 있을 때 모바일 디바이스의 하우징에 가해지는 검출된 힘에 기초하여 생성된다. 예를 들어, 힘 센서들(예를 들어, 도 1의 센서(104))은 압축력이 모바일 디바이스의 하우징에 가해질 때 아날로그 신호를 제공하고, 변환기(예를 들어, 도 3의 변환기(302))는 아날로그 신호를 디지털 신호로 변환한다.
단계(404)에서, 입력 신호의 샘플들은 버퍼에 저장된다. 예를 들어, 변환기 (302)는 필터링된 샘플들을 버퍼(예를 들어, 버퍼(304))로 전송한다. 구현에서, 버퍼는 약 1 초의 샘플들을 보유하도록 구성된 FIFO 버퍼이다.
단계(406)에서, 입력 신호는 그 입력 신호의 베이스라인 변화율로부터의 편차에 기초하여 필터링된다. 일 예에서, 필터(예를 들어, 도 3의 필터(306))는 베이스라인 변화율에 대한 입력 신호의 변화율을 결정하는 것과 같이 필터링된 입력 신호를 시간 영역에서 필터링한다. 베이스라인 변화율은 센서들의 드리프트에 의해 야기된 변화율에 대응할 수 있다.
단계(408)에서, 인터럽트는 하나 이상의 임계값을 넘는 편차에 기초하여 트리거된다. 하나 이상의 임계값은 도 3의 비교기(310)와 같은 비교기의 레지스터에 대응할 수 있다. 구현에서, 레지스터는 도 2의 아날로그 프론트-엔드(106)를 구현하는데 사용되는 하드웨어 물질의 계수에 기초하여 설정될 수 있다.
단계(410)에서, 마이크로 컨트롤러는 인터럽트에 기초하여 저전력 유휴 상태로부터 깨어나, 버퍼 내의 샘플들을 분석하여 입력 신호가 인간 제스처에 대응하는지 여부를 결정한다. 마이크로 컨트롤러(예를 들어, 도 1의 마이크로 컨트롤러(110))는 제스처 모듈(예를 들어, 도 1의 제스처 모듈(116))을 실행하여 버퍼에 저장된 원시 샘플들을 판독할 수 있다.
단계(412)에서, 입력 신호가 인간 제스처로서 인식되는지에 대한 결정이 이루어진다. 일 예에서, 제스처 모듈(116)은 버퍼에 저장된 원시 샘플이 하우징에 가해지는 힘의 양 및 그 가해진 힘과 관련된 시간에 기초하여 인간 제스처에 대응한다고 결정할 수 있다.
단계(412)에서, 입력 신호가 버퍼내의 샘플들에 기초하여 인간 제스처로 거부되면(예를 들어, NO), 414에서, 마이크로 컨트롤러는 저전력 유휴 상태로 복귀된다. 예를 들어, 버퍼내의 데이터가 인간 제스처와 매칭되지 않거나 대응하지 않으면(예를 들어, 힘이 너무 약하거나 너무 짧거나 길게 유지되면), 고전력 애플리케이션 프로세서를 깨울 필요가 없으며 마이크로 컨트롤러는 저전력 유휴 상태로 복귀할 수 있다.
단계(412)에서, 입력 신호가 버퍼 내의 샘플들에 기초하여 인간 제스처로 인식되면(예를 들어, YES), 단계(416)에서, 애플리케이션 프로세서가 인간 제스처의 인식에 기초하여 저전력 유휴 상태로부터 깨어나, 인간 제스처에 매핑된 동작을 수행하도록 구성된 애플리케이션을 실행한다. 예를 들어, 제스처 모듈이 높은 신뢰도로 제스처가 실제로 제스처라고 결정하면, 디스플레이 디바이스의 전원을 켜거나 및/또는 애플리케이션을 시작함으로써 애플리케이션 프로세서가 제스처를 처리할 수 있도록 고전력 애플리케이션 프로세서를 깨우기 위한 인터럽트가 생성된다.
전술한 논의는 힘 감지 디바이스를 위한 초 저전력 모드를 관리하는 것과 관련된 방법을 설명한다. 이들 방법의 양태는 하드웨어(예를 들어, 고정 논리 회로), 펌웨어, 소프트웨어, 수동 처리 또는 이들의 임의의 조합으로 구현될 수 있다. 이들 기술은 추가 분할, 결합 등일 수 있는 도 1 내지 3과 도 5에 도시된 하나 이상의 엔티티(컴퓨팅 시스템(500)은 아래의 도 5에 기술됨)에 구현될 수 있다. 따라서, 이들 도면은 설명된 기술을 이용할 수 있는 많은 가능한 시스템 또는 장치 중 일부를 도시한다. 이들 도면의 엔티티는 일반적으로 소프트웨어, 펌웨어, 하드웨어, 전체 디바이스 또는 네트워크 또는 이들의 조합을 나타낸다.
예시적인 컴퓨팅 시스템
도 5는 힘 감지 디바이스를 위한 초 저전력 모드를 가능하게 하기 위해 이전의 도 1 내지 도 4를 참조하여 설명된 임의의 유형의 클라이언트, 서버 및/또는 컴퓨팅 디바이스로 구현될 수 있는 예시적인 컴퓨팅 시스템(500)의 다양한 구성 요소를 도시한다. 양태들에서, 컴퓨팅 시스템(500)은 유선 및/또는 무선 웨어러블 디바이스, SoC(System-on-Chip), 및/또는 다른 유형의 디바이스 또는 그 일부의 하나 또는 조합으로 구현될 수 있다. 컴퓨팅 시스템(500)은 또한 디바이스가 소프트웨어, 펌웨어 및/또는 디바이스들의 조합을 포함하는 논리 디바이스를 기술하도록 디바이스를 동작시키는 사용자(예를 들어, 컴퓨팅 시스템을 초 저전력 모드로부터 깨우기를 원하는 사람) 및/또는 엔티티와 연관될 수 있다.
컴퓨팅 시스템(500)은 도 1 내지 도 3의 아날로그 프론트-엔드(106)를 포함하지만, 이 컴포넌트는 정확하게 도시될 필요는 없다. 아날로그 프론트-엔드(106)는 마더 보드와의 통합을 통해 또는 컴퓨팅 시스템(500) 프레임, 섀시 또는 다른 구조와는 별개로 컴퓨팅 시스템(500)과 통합될 수 있다.
컴퓨팅 시스템(500)은 디바이스 데이터(504)(예를 들어, 수신된 데이터, 수신중인 데이터, 브로드캐스트 예정인 데이터, 데이터의 데이터 패킷 등)의 유선 및/또는 무선 통신을 가능하게 하는 통신 디바이스(502)를 포함한다. 디바이스 데이터(504) 또는 다른 디바이스 컨텐츠는 디바이스의 구성 설정, 디바이스에 저장된 미디어 컨텐츠 및/또는 디바이스의 사용자와 관련된 정보를 포함할 수 있다. 컴퓨팅 시스템(500)에 저장된 미디어 컨텐츠는 임의의 유형의 오디오, 비디오 및/또는 이미지 데이터를 포함할 수 있고, 액세스가 필요한 리소스 또는 정보일 수 있다. 컴퓨팅 시스템(500)은 인간 발언, 사용자 선택 가능 입력(명시적 또는 암시적), 물리적, 선택 가능 구조, 메시지, 음악, 텔레비전 미디어 컨텐츠, 기록된 비디오 컨텐츠. 및 임의의 컨텐츠 및/또는 데이터 소스로부터 수신된 임의의 다른 유형의 오디오, 비디오 및/또는 이미지 데이터와 같은, 임의의 유형의 데이터, 미디어 컨텐츠 및/또는 입력이 수신될 수 있는 하나 이상의 데이터 입력 포트(506)를 포함한다.
컴퓨팅 시스템(500)은 또한 직렬 및/또는 병렬 인터페이스, 무선 인터페이스, 임의의 유형의 네트워크 인터페이스, 모뎀, 및 근거리 통신(NFC) 무선 인터페이스와 같은 임의의 다른 유형의 통신 인터페이스로서 구현될 수 있는 통신 인터페이스(508)를 포함한다. 통신 인터페이스(508)는 다른 전자, 컴퓨팅 및 통신 디바이스들이 컴퓨팅 시스템(500)과 데이터를 통신하는 통신 네트워크와 컴퓨팅 시스템(500) 사이의 연결 및/또는 통신 링크를 제공한다.
컴퓨팅 시스템(500)은 하나 이상의 프로세서(510)(예를 들어, 임의의 마이크로 컨트롤러, 애플리케이션 프로세서, 디지털 신호 프로세서, 컨트롤러 등) 또는 프로세서 및 (예를 들어, SoC로 구현된) 메모리 시스템을 포함하고, 이는 컴퓨팅 시스템(500)의 동작을 제어하고 힘 감지 디바이스를 위한 초 저전력 모드에 대한 기술을 가능하게 하거나 구현할 수 있는 다양한 컴퓨터 실행 가능 명령을 처리(예를 들어, 실행)한다. 대안적으로 또는 추가적으로, 컴퓨팅 시스템(500)은 처리 및 제어 회로와 관련하여 구현되는 하드웨어, 펌웨어 또는 고정 논리 회로의 임의의 하나 또는 조합으로 구현될 수 있고, 이는 일반적으로 512에서 식별된다(처리 및 제어 512).
도시되지는 않았지만, 컴퓨팅 시스템(500)은 디바이스 내의 다양한 구성 요소를 연결하는 시스템 버스 또는데이터 전송 시스템을 포함할 수 있다. 시스템 버스는 메모리 버스 또는 메모리 컨트롤러, 주변 버스, 범용 직렬 버스, 및/또는 임의의 다양한 버스 아키텍처를 사용하는 프로세서 또는 로컬 버스와 같은 상이한 버스 구조 중 하나 또는 조합을 포함할 수 있다.
컴퓨팅 시스템(500)은 또한 영구 및/또는 비-일시적 데이터 저장소(즉, 단순한 신호 전송과 대조적으로)을 가능하게 하는 하나 이상의 메모리 디바이스(514)를 포함하며, 그 예는 랜덤 액세스 메모리(RAM), 비 휘발성 메모리(예를 들어, ROM, 플래시 메모리, EPROM, EEPROM 중 임의의 하나 이상) 및 디스크 저장 디바이스를 포함한다. 디스크 저장 디바이스는 하드 디스크 드라이브, 기록 가능 및/또는 재기록 가능 컴팩트 디스크(CD), 임의의 유형의 디지털 다목적 디스크(DVD) 등과 같은 임의의 유형의 자기 또는 광 저장 디바이스로 구현될 수 있다. . 메모리 디바이스(들)(514)는 디바이스 데이터(504), 다른 유형의 정보 및/또는 데이터, 및 다양한 디바이스 애플리케이션(516)(예를 들어, 소프트웨어 애플리케이션)을 저장하는 데이터 저장 메커니즘을 제공한다. 예를 들어, 운영 체제(518)는 메모리 디바이스(514) 내의 소프트웨어 명령들로서 유지될 수 있고 프로세서(510)에 의해 실행될 수 있다. 일부 양태에서, 제스처 모듈(116)은 실행 가능한 명령들 또는 코드로서 컴퓨팅 시스템(500)의 메모리 디바이스들(514)에 구현된다. 소프트웨어 구현으로서 표현되었지만, 제스처 모듈(116)은 컴퓨팅 시스템(500)에 설치된 임의의 형태의 제어 애플리케이션, 소프트웨어 애플리케이션, 신호 처리 및 제어 모듈, 또는 하드웨어 또는 펌웨어로서 구현될 수 있다.
컴퓨팅 시스템(500)은 또한 오디오 데이터를 처리하고 및/또는 오디오 및 비디오 데이터를 통해 오디오 시스템(522) 및/또는 디스플레이 시스템(524)(예를 들어, 스마트 폰의 스크린 또는 카메라)으로 전달하는 오디오 및/또는 비디오 처리 시스템(520)을 포함한다. 오디오 시스템(522) 및/또는 디스플레이 시스템(524)은 오디오, 비디오, 디스플레이 및/또는 이미지 데이터를 처리, 디스플레이 및/또는 렌더링하는 임의의 디바이스를 포함할 수 있다. 디스플레이 데이터와 오디오 신호는 RF(무선 주파수) 링크, S-비디오 링크, HDMI(고화질 멀티미디어 인터페이스), 복합 비디오 링크, 컴포넌트 비디오 링크, DVI(디지털 비디오 인터페이스), 아날로그 오디오 연결, 또는 미디어 데이터 포트(526)와 같은 다른 유사한 통신 링크를 통해 오디오 구성 요소 및/또는 디스플레이 구성 요소와 통신할 수 있다. 일부 구현에서, 오디오 시스템(522) 및/또는 디스플레이 시스템(524)은 컴퓨팅 시스템(500)의 외부 컴포넌트이다. 대안적으로 또는 부가적으로, 디스플레이 시스템(524)은 통합 터치 인터페이스의 일부와 같은 컴퓨팅 시스템(500)의 통합된 구성 요소일 수 있다.
힘 감지 디바이스를 위한 초 저전력 모드의 양태들이 특징 및/또는 방법에 특정된 언어로 설명되었지만, 첨부된 청구항들의 주제는 설명된 특정 특징 또는 방법들에 반드시 제한되는 것은 아니다. 오히려, 특정 특징 및 방법들은 힘 감지 디바이스를 위한 초 저전력 모드의 예시적인 구현으로 개시되어 있다.

Claims (20)

  1. 시스템으로서,
    적어도 일시 정지(suspended) 상태에 놓이도록 각각 구성된 마이크로 컨트롤러 및 고전력 애플리케이션 프로세서를 포함하는 복수의 프로세서; 및
    아날로그 프런트-엔드 회로를 포함하여:
    힘 센서에 의해 생성된 아날로그 신호를 디지털 신호로 변환하고;
    상기 디지털 신호의 샘플들을 버퍼에 저장하고;
    상기 신호의 변화율의 편차에 기초하여 베이스라인 값으로부터 디지털 신호를 필터링하고; 그리고
    하나 이상의 임계값을 넘는(passing) 필터링된 디지털 신호에 응답하여, 상기 버퍼의 디지털 신호의 샘플들을 분석하여 디지털 신호가 인간 제스처에 해당하는지 여부를 결정하기 위해 마이크로 컨트롤러를 일시 정지 상태로부터 깨우도록 구성되고, 상기 마이크로 컨트롤러는 인간 제스처로서 인식된 디지털 신호에 기초하여 인간 제스처를 처리하기 위해 고전력 애플리케이션 프로세서를 일시 정지 상태로부터 깨우도록 구성되는 것을 특징으로 하는 시스템.
  2. 제1항에 있어서,
    상기 아날로그 프런트-엔드 회로는 자율적으로 기능하도록 구성되는 것을 특징으로 하는 시스템.
  3. 제1항에 있어서,
    상기 버퍼는 최대 1초의 샘플들을 저장하도록 구성된 선입 선출(FIFO) 버퍼를 포함하는 것을 특징으로 하는 시스템.
  4. 제1항에 있어서,
    상기 필터링은 고역 통과 필터 또는 대역 통과 필터에 의해 수행되는 것을 특징으로 하는 시스템.
  5. 제1항에 있어서,
    상기 마이크로 컨트롤러는 인간 제스처로서 거부되는 신호에 응답하여 일시 정지 상태로 복귀하도록 구성되는 것을 특징으로 하는 시스템.
  6. 제1항에 있어서,
    상기 시스템은 각각 개별 필터와 관련된 복수의 집적 회로 채널을 포함하는 것을 특징으로 하는 시스템.
  7. 제1항에 있어서,
    상기 시스템은 각각 개별 필터와 관련된 복수의 집적 회로 채널을 포함하고, 상기 버퍼는 복수의 집적 회로 채널의 서브 세트 사이에서 공유되는 것을 특징으로 하는 시스템.
  8. 제1항에 있어서,
    상기 힘 센서는 하우징에 가해지는 힘을 측정하는 스트레인 게이지(strain gauge)를 포함하고, 상기 인간 제스처는 하우징의 반대쪽(opposite sides)에 힘을 가하는 스퀴즈 제스처를 포함하는 것을 특징으로 하는 시스템.
  9. 모바일 디바이스에 대한 초 저전력 모드를 관리하기 위한 방법으로서,
    프로세서에 의해, 모바일 디바이스가 초 저전력 모드에 있을 때 모바일 디바이스의 하우징에 가해지는 힘의 검출에 기초하여 입력 신호를 생성하는 단계;
    프로세서에 의해, 상기 입력 신호의 샘플들을 버퍼에 저장하는 단계;
    프로세서에 의해, 상기 입력 신호의 베이스라인 변화율로부터의 편차들에 기초하여 입력 신호를 필터링하는 단계;
    프로세서에 의해, 하나 이상의 임계값을 넘는 편차들에 기초하여 인터럽트를 트리거하는 단계; 및
    프로세서에 의해, 상기 버퍼의 샘플들을 분석하여 상기 입력 신호가 인간 제스처에 해당하는지 여부를 결정하기 위해 상기 인터럽트에 기초하여 마이크로 컨트롤러를 저전력 유휴 상태로부터 깨우는 단계를 포함하는 것을 특징으로 하는 방법.
  10. 제9항에 있어서,
    프로세서에 의해, 상기 버퍼의 샘플들에 기초하여 입력 신호를 인간 제스처로서 인식하는 단계; 및
    프로세서에 의해, 상기 인간 제스처에 매핑된 동작을 수행하도록 구성된 애플리케이션을 실행하기 위해 상기 인간 제스처의 인식에 기초하여 애플리케이션 프로세서를 저전력 유휴 상태로부터 깨우는 단계를 더 포함하는 것을 특징으로 하는 방법.
  11. 제9항에 있어서,
    하우징에 가해지는 힘을 검출하는 것은 하우징의 반대쪽에 가해지는 압축력을 검출하는 것을 포함하는 것을 특징으로 하는 방법.
  12. 제9항에 있어서,
    프로세서에 의해, 상기 버퍼의 샘플들에 기초하여 인간 제스처로서 입력 신호를 거부(reject)하는 단계; 및
    프로세서에 의해, 상기 마이크로 컨트롤러를 저전력 유휴 상태로 복귀시키는 단계를 더 포함하는 것을 특징으로 하는 방법.
  13. 제9항에 있어서,
    상기 입력 신호는 하나 이상의 힘 센서에 의해 생성되는 것을 특징으로 하는 방법.
  14. 제9항에 있어서,
    상기 입력 신호를 필터링하는 단계는 고역 통과 필터 또는 대역 통과 필터를 사용하는 단계를 포함하는 것을 특징으로 하는 방법.
  15. 제9항에 있어서,
    상기 인터럽트를 트리거하는 단계는 편차들의 절대값이 하나 이상의 임계값 중 적어도 하나보다 큰 것에 기초하여 인터럽트를 트리거하는 단계를 포함하는 것을 특징으로 하는 방법.
  16. 컴퓨팅 디바이스로서,
    컴퓨팅 디바이스의 하우징에 가해지는 힘을 검출하도록 구성된 하나 이상의 센서;
    상기 검출된 힘에 기초하여 신호를 생성하도록 구성된 아날로그-디지털 변환기;
    상기 신호에 대응하는 샘플들을 저장하도록 구성된 버퍼;
    베이스라인 값에 대한 상기 신호의 변화율의 편차들에 기초하여 상기 신호를 필터링하도록 구성된 고역 통과 필터;
    상기 신호의 변화율의 편차가 임계값보다 크거나 작다는 것에 기초하여 인터럽트를 트리거하도록 구성된 비교기 회로; 및
    상기 인터럽트에 기초하여 저전력 유휴 상태로부터 깨어나 상기 신호가 인간 제스처에 해당하는지 여부를 결정하기 위해 버퍼의 샘플들을 판독하도록 구성된 마이크로 컨트롤러를 포함하고, 상기 마이크로 컨트롤러는 인간 제스처로서 인식되는 상기 신호에 응답하여 저전력 유휴 상태로부터 고전력 애플리케이션 프로세서를 깨우도록 구성되는 것을 특징으로 하는 컴퓨팅 디바이스.
  17. 제16항에 있어서,
    상기 인간 제스처는 하우징의 반대쪽에 힘을 가하는 스퀴즈 제스처를 포함하는 것을 특징으로 하는 컴퓨팅 디바이스.
  18. 제16항에 있어서,
    상기 고역 통과 필터는 하나 이상의 센서에 의해 생성된 신호로부터 드리프트 및 노이즈를 제거하는 미분기를 포함하는 것을 특징으로 하는 컴퓨팅 디바이스.
  19. 제16항에 있어서,
    상기 마이크로 컨트롤러는 상기 신호가 인간 제스처가 아니라는 결정에 응답하여 상기 저전력 유휴 상태로 복귀하도록 구성되는 것을 특징으로 하는 컴퓨팅 디바이스.
  20. 제16항에 있어서,
    상기 하나 이상의 센서, 아날로그-디지털 변환기 및 고역 통과 필터는 하드웨어로 구현되는 것을 특징으로 하는 컴퓨팅 디바이스.

















KR1020197031168A 2017-12-15 2018-11-29 저비용 힘-감지 디바이스를 위한 초 저전력 모드 KR102253100B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/844,153 US10613619B2 (en) 2017-12-15 2017-12-15 Ultra-low power mode for a low-cost force-sensing device
US15/844,153 2017-12-15
PCT/US2018/062957 WO2019118183A1 (en) 2017-12-15 2018-11-29 Ultra-low power mode for a low-cost force-sensing device

Publications (2)

Publication Number Publication Date
KR20190131087A KR20190131087A (ko) 2019-11-25
KR102253100B1 true KR102253100B1 (ko) 2021-05-14

Family

ID=64665130

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197031168A KR102253100B1 (ko) 2017-12-15 2018-11-29 저비용 힘-감지 디바이스를 위한 초 저전력 모드

Country Status (7)

Country Link
US (1) US10613619B2 (ko)
EP (2) EP3602240B1 (ko)
JP (1) JP6952130B2 (ko)
KR (1) KR102253100B1 (ko)
CN (1) CN110573990B (ko)
TW (1) TWI698739B (ko)
WO (1) WO2019118183A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20170050702A (ko) * 2015-10-30 2017-05-11 삼성전자주식회사 제스처 감지 방법 및 이를 지원하는 전자 장치
US20210304077A1 (en) * 2018-11-13 2021-09-30 Sony Corporation Method and system for damage classification
US11720158B2 (en) * 2020-03-13 2023-08-08 Google Llc Power throttling mechanism using instruction rate limiting in high power machine-learning ASICs
WO2021257072A1 (en) * 2020-06-17 2021-12-23 Google Llc Multi-radar system
CN115236135B (zh) * 2021-04-23 2023-08-22 中国石油化工股份有限公司 用于气体传感器的基线校准方法、控制装置和气体传感器

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090140985A1 (en) 2007-11-30 2009-06-04 Eric Liu Computing device that determines and uses applied pressure from user interaction with an input interface

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8996332B2 (en) 2008-06-24 2015-03-31 Dp Technologies, Inc. Program setting adjustments based on activity identification
KR101540453B1 (ko) * 2009-05-25 2015-07-30 (주)멜파스 압력 기반의 입력 장치 및 입력 감지 방법
US8970507B2 (en) * 2009-10-02 2015-03-03 Blackberry Limited Method of waking up and a portable electronic device configured to perform the same
US8432368B2 (en) * 2010-01-06 2013-04-30 Qualcomm Incorporated User interface methods and systems for providing force-sensitive input
US8775838B2 (en) * 2012-02-01 2014-07-08 Texas Instruments Incorporated Limiting the number of unexpected wakeups in a computer system implementing a power-saving preemptive wakeup method from historical data
WO2014017777A1 (en) * 2012-07-26 2014-01-30 Lg Electronics Inc. Mobile terminal and control method thereof
US9063731B2 (en) * 2012-08-27 2015-06-23 Samsung Electronics Co., Ltd. Ultra low power apparatus and method to wake up a main processor
US9081571B2 (en) 2012-11-29 2015-07-14 Amazon Technologies, Inc. Gesture detection management for an electronic device
US9146605B2 (en) 2013-01-31 2015-09-29 Salutron, Inc. Ultra low power actigraphy based on dynamic threshold
US9086749B2 (en) * 2013-08-30 2015-07-21 Qualcomm Incorporated System and method for improved processing of touch sensor data
US9513703B2 (en) * 2013-12-27 2016-12-06 Intel Corporation Gesture-based waking and control system for wearable devices
US10302499B2 (en) 2014-10-24 2019-05-28 Google Llc Adaptive threshold manipulation for movement detecting sensors
US9959128B2 (en) * 2014-11-06 2018-05-01 Infineon Technologies Ag Digital sensor system
CN104280157A (zh) 2014-11-07 2015-01-14 上海艾络格电子技术有限公司 一种低功耗变送器
JP2016136351A (ja) * 2015-01-23 2016-07-28 京セラ株式会社 電子機器及び制御方法
EP3321044A4 (en) 2015-08-25 2019-05-29 Kawasaki Jukogyo Kabushiki Kaisha REMOTELY CONTROLLED MANIPULATOR SYSTEM AND METHOD FOR OPERATION THEREOF
KR102628789B1 (ko) * 2016-09-09 2024-01-25 삼성전자주식회사 전자 장치 및 전자 장치의 제어 방법

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090140985A1 (en) 2007-11-30 2009-06-04 Eric Liu Computing device that determines and uses applied pressure from user interaction with an input interface

Also Published As

Publication number Publication date
JP2020525879A (ja) 2020-08-27
US20190187776A1 (en) 2019-06-20
EP3851938A1 (en) 2021-07-21
JP6952130B2 (ja) 2021-10-20
EP3602240A1 (en) 2020-02-05
KR20190131087A (ko) 2019-11-25
CN110573990A (zh) 2019-12-13
TWI698739B (zh) 2020-07-11
TW201928593A (zh) 2019-07-16
WO2019118183A1 (en) 2019-06-20
US10613619B2 (en) 2020-04-07
EP3602240B1 (en) 2021-07-07
CN110573990B (zh) 2023-07-25

Similar Documents

Publication Publication Date Title
KR102253100B1 (ko) 저비용 힘-감지 디바이스를 위한 초 저전력 모드
KR102220893B1 (ko) 표면들 상에서의 제스처 인식을 위한 emg의 사용
WO2019200543A1 (zh) 操作系统的唤醒方法、装置及系统
US11412981B2 (en) Intelligent device wearing detection method and intelligent device
US9229522B1 (en) Mobile battery performance by identifying apps that disproportionally run background tasks that prevent mobile devices from sleeping
US20140075230A1 (en) Waking An Electronic Device
CN108351715B (zh) 应用于人体触摸的常驻传感器设备
BR112014007951A2 (pt) método para detectar condições de falso despertar de um dispositivo eletrônico portátil
WO2016090565A1 (en) Fitness sensor with low power attributes in sensor hub
JP2004240971A5 (ko)
CN106489066B (zh) 用于预测性数据测量的装置和用于预测性数据测量的计算机实现的方法
JP2017515632A (ja) 健康モニタリングシステムおよびそのデータ採集方法
WO2015169242A1 (zh) 一种能够自动调度测量设备电源的方法及设备
Grützmacher et al. Towards energy efficient sensor nodes for online activity recognition
US10204504B1 (en) Electronic device and drop warning method
Grützmacher et al. Energy Efficient On-Sensor Processing for Online Activity Recognition.
WO2024114612A1 (zh) 智能设备的录像方法及装置、电子设备和存储介质
CN115616954A (zh) 电动牙刷的唤醒方法及装置、电子设备和存储介质
CN116530793A (zh) 一种基于智能床垫的数据处理方法、装置、设备及介质

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right