KR101795993B1 - 블루투스 저 에너지 스캔을 통한 모션 검출 - Google Patents

블루투스 저 에너지 스캔을 통한 모션 검출 Download PDF

Info

Publication number
KR101795993B1
KR101795993B1 KR1020177000630A KR20177000630A KR101795993B1 KR 101795993 B1 KR101795993 B1 KR 101795993B1 KR 1020177000630 A KR1020177000630 A KR 1020177000630A KR 20177000630 A KR20177000630 A KR 20177000630A KR 101795993 B1 KR101795993 B1 KR 101795993B1
Authority
KR
South Korea
Prior art keywords
bluetooth
computing device
location
data
advertisement packets
Prior art date
Application number
KR1020177000630A
Other languages
English (en)
Other versions
KR20170018018A (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 KR20170018018A publication Critical patent/KR20170018018A/ko
Application granted granted Critical
Publication of KR101795993B1 publication Critical patent/KR101795993B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management
    • H04W4/008
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/02Services making use of location information
    • H04W4/029Location-based management or tracking services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0225Power saving arrangements in terminal devices using monitoring of external events, e.g. the presence of a signal
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/20Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel
    • H04W4/21Services signaling; Auxiliary data signalling, i.e. transmitting data via a non-traffic channel for social networking applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Telephone Function (AREA)
  • Power Sources (AREA)

Abstract

블루투스 저 에너지 스캔을 통한 모션 검출을 제공하는 예시적인 방법이 개시된다. 특히, 그 방법은 컴퓨팅 디바이스의 블루투스 유닛을 통해 스캔을 수행하는 단계를 포함한다. 게다가, 그 방법은 수행된 스캔에 응답하여 블루투스 유닛을 통해 하나 이상의 광고 패킷들을 수신하는 단계를 포함한다. 하나 이상의 광고 패킷들은 각각의 블루투스 디바이스에 연관될 수 있다. 또 추가로, 그 방법은 수신된 하나 이상의 광고 패킷들에 기초하여 블루투스 유닛의 로케이션이 변경되었는지를 결정하는 단계를 포함한다. 결정하는 단계는 수신된 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들의 세트를 비교하는 단계를 포함한다. 덧붙여서, 그 방법은 블루투스 유닛이 로케이션을 변경하였다는 결정에 응답하여 애플리케이션 프로세싱 유닛을 인에이블시키는 단계를 포함한다. 애플리케이션 프로세싱 유닛은 블루투스 유닛의 로케이션을 결정하도록 구성될 수 있다.

Description

블루투스 저 에너지 스캔을 통한 모션 검출{MOTION DETECTION VIA A BLUETOOTH LOW ENERGY SCAN}
관련 출원에 대한 상호 참조
본 출원은 2014년 7월 10일자로 출원된 미국 특허 출원 제14/328,005호를 우선권 주장하며, 본 명세서에 그 전부가 참조로 포함된다.
본 명세서에서 달리 지시되지 않는 한, 이 섹션에 기재된 내용들은 본 출원에서의 청구항들에 대한 선행 기술이 아니고, 이 섹션에 포함되었다고 선행기술이라고 인정된 것은 아니다.
개인용 컴퓨터들, 랩톱 컴퓨터들, 태블릿 컴퓨터들, 스마트 폰들, 착용가능 컴퓨터들, 및 무수한 유형들의 인터넷-가능 디바이스들과 같은 휴대용 컴퓨팅 디바이스들이 현대 생활의 수많은 양태들에 널리 퍼져 있다. 예를 들어, 단일 소비자가 스마트 폰, 랩톱 컴퓨터, 키보드, 및 마우스를 아마도 동시에 동작시키는 것은 일반적이다. 다수의 휴대용 디바이스들의 소비자들의 증가로, 무선 기술에 대한 수요는 이러한 휴대용 디바이스들의 사용에서 계속 역할을 하고 있다. 이와 같이, 무선 기술의 다양한 형태들은 수많은 애플리케이션들에 대해 이들 휴대용 디바이스들을 국부적으로 접속시키기 위해 진화해 왔다. 다수의 휴대용 디바이스들 간에 데이터를 교환하는 하나의 무선 기술 표준이 블루투스라고 널리 알려져 있다.
블루투스는 단거리에 걸쳐 휴대용 디바이스와 하나 이상의 다른 휴대용 디바이스들을 무선으로 접속시키기 위해 일반적으로 사용된다. 예를 들어, 블루투스는 폰의 핸즈프리 사용을 아마도 허용하기 위해 셀 폰과 무선 헤드셋을 접속시키는 데 사용될 수 있다. 일부 사례들에서, 블루투스는 셀 폰과 모터 차량의 오디오 스피커들 및 마이크로폰을 접속시켜, 차량을 작동시키면서 폰의 핸즈프리 사용을 아마도 허용하는 데 또한 사용될 수 있다. 따라서, 수많은 애플리케이션들은 블루투스가 표준 유선-대체 프로토콜로서 성장하는 것을 허용하였다. 다수의 애플리케이션들에서, 블루투스는 특히 저 전력 소비를 위해 설계된 그것의 저-비용 솔루션들 및 프로토콜들로 인해 여전히 매력적이다.
본 명세서에서의 예시적인 실시예들이 블루투스 저 에너지(Bluetooth low energy) 스캔을 통해 모션 검출을 제공할 수 있는 방법들, 컴퓨팅 디바이스들, 및 컴퓨터-판독가능 매체들을 개시한다. 블루투스 저 에너지 스캔을 사용하여 모션을 검출함으로써, 블루투스 저 에너지 스캔보다 더 많은 에너지를 사용하는 모션 검출 컴포넌트들은 모션이 검출되기까지 디스에이블될 수 있다.
하나의 예에서, 방법이 제공된다. 그 방법은 컴퓨팅 디바이스의 블루투스 유닛을 통해 하나 이상의 광고 패킷들을 수신하는 단계를 포함한다. 하나 이상의 광고 패킷들은 각각의 블루투스 디바이스에 연관될 수 있다. 또 추가로, 그 방법은 수신된 하나 이상의 광고 패킷들에 기초하여 컴퓨팅 디바이스의 로케이션이 변경되었는지를 결정하는 단계를 포함한다. 결정하는 단계는 수신된 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들의 세트를 비교하는 단계를 포함한다. 덧붙여서, 그 방법은 컴퓨팅 디바이스가 로케이션을 변경하였다는 결정에 응답하여 애플리케이션 프로세싱 유닛의 로케이션 검출 기능을 인에이블시키는 단계를 포함한다.
다른 예에서, 컴퓨팅 디바이스가 제공된다. 그 컴퓨팅 디바이스는 하나 이상의 프로세서들과 블루투스 유닛 양쪽 모두를 포함한다. 블루투스 유닛은 송신기와 수신기 둘 다를 포함할 수 있다. 송신기는 블루투스 스캔을 수행하도록 구성될 수 있다. 수신기는 하나 이상의 광고 패킷들을 수신하도록 구성될 수 있다. 하나 이상의 광고 패킷들의 각각은 각각의 블루투스 디바이스에 연관될 수 있다. 컴퓨팅 디바이스는 컴퓨팅 디바이스의 로케이션을 결정하도록 구성되는 애플리케이션 프로세싱 유닛을 또한 포함할 수 있다. 게다가, 컴퓨팅 디바이스는 하나 이상의 프로세서들에 의해 실행될 때 컴퓨팅 디바이스로 하여금 기능들을 수행하게 하는 프로그램 명령들을 저장하고 있는 컴퓨터 판독가능 매체를 또한 포함할 수 있다. 그 기능들은 수신된 하나 이상의 광고 패킷들에 기초하여 컴퓨팅 디바이스의 로케이션이 변경되었는지를 결정하는 단계를 포함한다. 결정하는 단계는 수신된 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들의 세트를 비교하는 단계를 포함한다. 덧붙여서, 그 기능들은 컴퓨팅 디바이스가 로케이션을 변경하였다는 결정에 응답하여 애플리케이션 프로세싱 유닛의 로케이션 검출 기능을 인에이블시키는 단계를 포함한다.
또 다른 예에서, 컴퓨팅 디바이스가 제공된다. 컴퓨팅 디바이스는 프로세서와 프로세서에 의해 실행될 때 컴퓨팅 디바이스로 하여금 기능들을 수행하게 하는 프로그램 명령들을 저장하고 있는 컴퓨터 판독가능 매체를 포함할 수 있다. 그 기능들은 컴퓨팅 디바이스의 블루투스 유닛을 통해 하나 이상의 광고 패킷들을 수신하는 단계를 포함한다. 하나 이상의 광고 패킷들은 각각의 블루투스 디바이스에 연관될 수 있다. 또 추가로, 그 기능들은 수신된 하나 이상의 광고 패킷들에 기초하여 컴퓨팅 디바이스의 로케이션이 변경되었는지를 결정하는 단계를 포함한다. 결정하는 단계는 수신된 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들의 세트를 비교하는 단계를 포함한다. 덧붙여서, 그 기능들은 컴퓨팅 디바이스가 로케이션을 변경하였다는 결정에 응답하여 애플리케이션 프로세싱 유닛의 로케이션 검출 기능을 인에이블시키는 단계를 포함한다. 애플리케이션 프로세싱 유닛은 컴퓨팅 디바이스의 로케이션을 결정하도록 구성될 수 있다.
이들뿐만 아니라 다른 양태들, 장점들, 및 대안들이, 다음의 상세한 설명을 첨부 도면들을 적절히 참조하여 읽음으로써 본 기술분야의 통상의 기술자들에게 명백하게 될 것이다.
도 1은 예시적인 컴퓨팅 디바이스를 도시한다.
도 2는 예시적인 컴퓨팅 디바이스의 개략도를 도시한다.
도 3은 예시적인 네트워킹된 서버 클러스터의 개략도를 도시한다.
도 4a는 예시적인 블루투스 디바이스의 개략도를 도시한다.
도 4b는 다른 예시적인 블루투스 디바이스의 개략도를 도시한다.
도 4c는 예시적인 광고 패킷을 도시한다.
도 5는 블루투스 디바이스들에 근접하여 위치된 컴퓨팅 디바이스를 도시한다.
도 6은 블루투스 저 에너지 스캔을 통해 모션 검출을 제공하는 예시적인 방법의 흐름도를 도시한다.
다음의 상세한 설명은 첨부 도면들을 참조하여 개시된 시스템들 및 방법들의 다양한 특징들 및 기능들을 설명한다. 도면들에서, 유사한 기호들은 문맥에서 달리 지시되지 않는 한 유사한 컴포넌트들을 식별한다. 본 명세서에서 설명되는 구체적인 시스템 및 방법의 실시예들은 제한하는 것을 의미하지는 않는다. 개시된 시스템들 및 방법들의 특정한 양태들이 그것들의 모두가 본 명세서에서 예상되는 매우 다양한 상이한 구성들로 배열되고 결합될 수 있다는 것이 쉽사리 이해될 수 있다.
언급된 바와 같이, 블루투스는 표준 유선-대체 프로토콜로서 계속 성장하고 특히 저 전력 소비를 위해 설계된 그것의 프로토콜들로 인해 여전히 매력적이다. 특히, 블루투스 저 에너지(BLE)는 다수의 다른 컴퓨팅 디바이스들과 통신하려는 저-전력 디바이스들에 대한 프로토콜들을 제공한다. 예를 들어, 하나 이상의 배터리들에 의해 전력 공급될 수 있는 컴퓨팅 디바이스를 고려한다. 게다가, 컴퓨팅 디바이스는 무선 헤드셋들 및 지불 디바이스들과 같은 다른 컴퓨팅 디바이스들과 통신하기 위한 BLE의 프로토콜들을 이용한다는 것을 고려한다. 예를 들어, 컴퓨팅 디바이스 상의 음악-플레잉 애플리케이션이 음악을 무선 헤드셋에 스트리밍할 수 있다. 특히, BLE의 프로토콜들은, 컴퓨팅 디바이스와 무선 헤드셋을 아마도 "페어링(pairing)" 또는 접속시키기 위해, 컴퓨팅 디바이스가 무선 헤드셋과 같은 다른 컴퓨팅 디바이스들에게 자신의 존재를 "광고" 또는 통보할 수 있도록 BLE 광고 프로토콜(아마도 "광고 프로토콜" 또는 "광고 패킷들"이라고 본 명세서에 지칭됨)을 포함할 수 있다. 이와 같이, 광고 프로토콜들은 컴퓨팅 디바이스의 저 소비 전력을 유지하면서 컴퓨팅 디바이스가 무선 헤드셋과 페어링하는 것을 허용하도록 설계된다.
덧붙여, BLE는 컴퓨팅 디바이스가 한 번에 하나를 초과하는 디바이스들을 또한 동시에 상호작용시키는 것을 가능하게 할 수 있다. 예를 들어, 컴퓨팅 디바이스가 컴퓨팅 디바이스 근처에 위치된 블루투스 디바이스들을 발견하기 위하여 블루투스 스캔을 수행할 수 있다. 컴퓨팅 디바이스가 무선 블루투스 스캔을 수행할 때, 블루투스 스캔의 범위 내의 다양한 블루투스 디바이스들은 스캔을 수행하는 컴퓨팅 디바이스에게 광고 패킷을 응답하여 통신할 수 있다.
BLE의 광고 프로토콜들에 여러 다른 장점들이 있다. 예를 들어, 위의 시나리오를 고려하면, 컴퓨팅 디바이스는 다른 프로토콜들을 사용하는 것에 의한 것보다 광고 프로토콜들을 더 빠르게 사용하여 컴퓨팅 디바이스 근처에 위치된 블루투스 디바이스들을 더 빠르게 발견할 수 있다(그리고 더 적은 에너지를 소비할 수 있다). 특히, 광고 프로토콜들은 무선 스펙트럼, 예컨대, 2.4 GHz 무선 스펙트럼의 세 개의 채널들로 고정될 수 있다. 따라서, 전체 무선 스펙트럼을 스캔하지 않음으로써, 컴퓨팅 디바이스는 세 개의 고정된 채널들에 걸쳐 다른 블루투스 디바이스들을 검출하여, 다른 프로토콜들보다 더 빠르게 BLE 광고 패킷들(아마도 본 명세서에서 "광고 패킷들"이라 지칭됨)을 전송 및 수신하는 것을 허용할 수 있다.
광고 패킷들의 저-전력 사용들의 추가적인 이점이, 컴퓨팅 디바이스가 이동하였는지를 결정하기 위해 컴퓨팅 디바이스는 인근의 블루투스 디바이스들에 대한 스캔을 사용할 수 있다는 것이다. 블루투스 스캔을 사용하고 광고 패킷들을 사용함으로써, 컴퓨팅 디바이스가 컴퓨팅 디바이스가 블루투스 스캔들로부터 움직임을 검출하기까지 추가적인 로케이션-검출 하드웨어를 전력비공급으로 유지할 수 있다. 따라서, 블루투스 스캔들을 사용하여 컴퓨팅 디바이스의 움직임을 검출하는 것은, 로케이션-검출 하드웨어를 그것이 필요할 때에만 인에이블시킴으로써 컴퓨팅 디바이스가 배터리 전력을 더 효율적으로 사용하는 것을 가능하게 할 수 있다.
그러므로, 본 명세서에서의 실시예들은 블루투스 저 에너지 스캔을 통해 모션 검출을 제공하는 예시적인 방법들, 디바이스들, 및 컴퓨터 판독가능 매체들을 제공한다. 따라서, 단일 디바이스, 예컨대, 컴퓨팅 디바이스는, 컴퓨팅 디바이스의 블루투스 스캔의 범위 내의 다수의 블루투스 디바이스들로부터 다수의 광고 패킷들을 수신할 수 있다. 특히, 광고 패킷들의 각각은 일부 연관된 데이터를 포함할 수 있다. 게다가, 각각의 광고 패킷에 연관된 데이터는 광고 패킷을 송신하고 있는 각각의 블루투스 디바이스의 일부 위치 정보를 나타내는 데이터를 포함할 수 있다. 이와 같이, 컴퓨팅 디바이스는 각각의 블루투스 디바이스의 일부 위치 정보를 포함하는 데이터를 포함하는 적어도 하나의 광고 패킷을 수신할 수 있다. 게다가, 위의 시나리오에서, 컴퓨팅 디바이스는 제2 블루투스 스캔을 수행할 수 있다. 제2 스캔은 인근의 블루투스 디바이스들로부터 광고 패킷들을 수신하는 컴퓨팅 디바이스에 의해 일어날 수 있다. 따라서, 컴퓨팅 디바이스는 수신된 광고 패킷들의 수와 그 광고 패킷들 내에 포함된 데이터 양쪽 모두를 비교하여 컴퓨팅 디바이스가 이동하였는지를 결정할 수 있다. 컴퓨팅 디바이스가 이동하였다면, 컴퓨팅 디바이스에서의 프로세서가 더 정밀한 디바이스 로케이션을 획득하기 위해 응답하여 로케이션 검출 하드웨어를 인에이블시킬 수 있다.
도 1은 예시적인 컴퓨팅 디바이스를 도시한다. 도 1의 시나리오(100)에 도시된 바와 같이, 컴퓨팅 디바이스(102)에서는 스마트 폰(즉, 컴퓨팅 디바이스)이 예시될 수 있으며, 컴퓨팅 디바이스(104)는 디지털 텔레비전 또는 모니터로서 예시될 수 있으며, 컴퓨팅 디바이스(106)는 테이블 컴퓨터로서 예시될 수 있고, 컴퓨팅 디바이스(108)는 다른 스마트 폰으로서 예시될 수 있다. 이제, 도 1에서 제공되는 컴퓨팅 디바이스들(102 내지 108)에 대한 배치구성들은 예시만을 목적으로 한다. 예를 들어, 컴퓨팅 디바이스(102)는 또한, 다른 유형들의 착용가능 컴퓨팅 디바이스들 중에서, 위의 시나리오들에서 설명되는 바와 같은 컴퓨팅 디바이스일 수 있다. 덧붙여서, 일부 사례들에서, 컴퓨팅 디바이스들(102)은 다른 가능성들 중에서, 랩톱 컴퓨터, 태블릿 컴퓨터, 및/또는 인간-인터페이스 디바이스일 수 있다. 이와 같이, 컴퓨팅 디바이스(102)는, 예를 들어, 블루투스 저 에너지 스캔을 통해 모션 검출을 제공하는 것에 관련하여 위에서 설명된 컴퓨팅 디바이스들 중 임의의 컴퓨팅 디바이스의 형태를 취할 수 있다.
게다가, 도 1에 도시된 바와 같이, 컴퓨팅 디바이스(102)는 다수의 다른 컴퓨팅 디바이스들과 페어링 또는 접속할 수 있다. 예를 들어, 컴퓨팅 디바이스(102)는 접속(110)을 통해 컴퓨팅 디바이스(104)와 페어링 또는 접속할 수 있다. 게다가, 컴퓨팅 디바이스(102)는 접속(112)를 통해 컴퓨팅 디바이스(106)와 또한 페어링 또는 접속할 수 있다. 또 추가로, 컴퓨팅 디바이스(102)는 접속(114)을 통해 컴퓨팅 디바이스(108)와 또한 페어링 또는 접속할 수 있다. 덧붙여서, 접속들(110, 112, 및 114)은 접속들의 다른 유형들 중에서, 블루투스® 접속들 및/또는 블루투스 저 전력 에너지(Low Power Energy)(LPE) 접속들과 같은 점 대 점 무선 접속들일 수 있다.
일부 사례들에서, 컴퓨팅 디바이스(102)는 애플리케이션들의 수를 결정할 수 있다. 예를 들어, 애플리케이션들(116, 118, 및 120)이, 예를 들어, 컴퓨팅 디바이스(102) 상에 다운로드될 수 있다. 일부 사례들에서, 애플리케이션(116)은, 아마도 컴퓨팅 디바이스(104)의 더 큰 디스플레이 상에 비디오를 디스플레이하기 위한, 컴퓨팅 디바이스(102)로부터의 비디오들을 컴퓨팅 디바이스(104)로 스트리밍하기 위한 비디오-플레잉 애플리케이션일 수 있다. 게다가, 애플리케이션(118)은, 아마도 컴퓨팅 디바이스(106)의 그래픽 사용자 인터페이스(graphical user interface)(GUI)를 사용하여 정보를 수정하기 위해, 컴퓨팅 디바이스(102)로부터의 정보를 컴퓨팅 디바이스(106)로 전송하기 위한 프레젠테이션 애플리케이션, 워드 애플리케이션, 및/또는 스프레드시트 애플리케이션일 수 있다. 또 추가로, 애플리케이션(120)은 컴퓨팅 디바이스(102)와 컴퓨팅 디바이스(108) 간에 데이터를 송신하기 위한 스마트 폰 애플리케이션일 수 있다. 컴퓨팅 디바이스(102)의 다양한 애플리케이션들은 지불 정보를 컴퓨팅 디바이스들(104, 106, 및 108) 중 하나의 컴퓨팅 디바이스로 통신할 수 있는 지불 애플리케이션의 형태를 또한 취할 수 있다. 다른 추가의 실시예들에서, 컴퓨팅 디바이스(102)의 애플리케이션들은 인근의 컴퓨팅 디바이스들, 이를테면 컴퓨팅 디바이스(108)를 찾기 위한 애플리케이션의 형태를 또한 취할 수 있다.
도 2는 예시적인 컴퓨팅 디바이스의 개략도를 도시한다. 일부 사례들에서, 컴퓨팅 디바이스(200)는, 예를 들어, 도 1에 관련하여 위에서 설명된 임의의 컴퓨팅 디바이스 또는 본 명세서에서 설명되는 방법들 및 기능들을 수행하도록 구성될 수 있는 유사한 디바이스의 형태를 취할 수 있다. 이 예에서, 컴퓨팅 디바이스(200)는 프로세서(202), 데이터 스토리지(204), 네트워크 인터페이스(206), 및 입출력 기능부(208)를 포함하는데, 그것들의 모두는 시스템 버스(210) 또는 유사한 메커니즘에 의해 커플링될 수 있다. 프로세서(202)는 하나 이상의 CPU들, 이를테면 하나 이상의 범용 프로세서들 및/또는 하나 이상의 전용 프로세서들(예컨대, 주문형 집적회로들, 디지털 신호 프로세서들, 네트워크 프로세서들, 애플리케이션 프로세싱 유닛 등)을 포함할 수 있다.
데이터 스토리지(204)는, 결국, 휘발성 및/또는 비휘발성 데이터 스토리지를 포함할 수 있고 프로세서(202)와는 전체적으로 또는 부분적으로 통합될 수 있다. 데이터 스토리지(204)는, 프로세서(202)에 의해 실행 가능한 프로그램 명령들과, 본 명세서에서 설명되는 다양한 방법들, 프로세스들, 또는 기능들을 수행하기 위해 이들 명령들에 의해 조작될 수 있는 데이터를 유지할 수 있다. 대안적으로, 이들 방법들, 프로세스들, 또는 기능들은 하드웨어, 펌웨어, 그리고/또는 하드웨어, 펌웨어 및 소프트웨어의 임의의 조합에 의해 정의될 수 있다. 예로서, 데이터 스토리지(204)에서의 데이터는, 본 명세서 또는 첨부 도면들에서 개시된 방법들, 프로세스들, 또는 기능들 중 임의의 것을 수행하기 위해 프로세서(202)에 의해 실행 가능한, 비일시적 컴퓨터 판독가능 매체 상에 아마 저장되는 프로그램 명령들을 포함할 수 있다.
네트워크 인터페이스(206)는 무선 접속, 이를테면 블루투스®의 형태를 취할 수 있다. 특히, 네트워크 인터페이스(206)는 BLE 프로토콜들 및 관련된 광고 프로토콜들을 포함하는, 하나 이상의 블루투스 표준들 또는 프로토콜들을 인에이블시킬 수 있다. 게다가, 네트워크 인터페이스(206)는 광고 패킷들을 다른 컴퓨팅 디바이스들로 송신하기 위한 라디오를 포함할 수 있다. 예를 들어, 도 1을 다시 참조하면, 컴퓨팅 디바이스(102)는 컴퓨팅 디바이스(104 내지 106)와 페어링하기 위한 네트워크(206)를 또한 포함할 수 있다. 덧붙여서, 네트워크 인터페이스(206)는 IEEE 802.11 (Wi-Fi), 또는 광-영역 무선 접속와 같은 다른 무선 접속들의 형태를 취할 수 있다. 그러나, 다른 형태들의 물리 계층 접속들과 다른 유형들의 표준 또는 사유 통신 프로토콜들이 네트워크 인터페이스(206)를 통해 사용될 수 있다. 더욱이, 네트워크 인터페이스(206)는 다수의 물리적 인터페이스들을 포함할 수 있다. 게다가, 네트워크 인터페이스(206)는 와이어라인 접속, 이를테면 이더넷 접속의 형태를 취할 수 있다.
입출력 기능부(208)는 예시적인 컴퓨팅 디바이스(200)와의 사용자 상호작용을 용이하게 할 수 있다. 입출력 기능부(208)는 다수의 유형들의 입력 디바이스들, 이를테면 키보드, 마우스, 터치 스크린 등을 포함할 수 있다. 유사하게는, 입출력 기능부(208)는 다수의 유형들의 출력 디바이스들, 이를테면 스크린, 모니터, 프린터, 또는 하나 이상의 발광 다이오드(light emitting diode)(LED)들을 포함할 수 있다. 부가적으로 또는 대안으로, 예시적인 컴퓨팅 디바이스(200)는 다른 디바이스로부터의 원격 액세스를, 네트워크 인터페이스(206)를 통해 또는 다른 인터페이스(도시되지 않음), 이를테면 유니버셜 직렬 버스(universal serial bus)(USB) 또는 고품위 멀티미디어 인터페이스(high-definition multimedia interface)(HDMI) 포트를 통해 지원할 수 있다.
로케이션 서비스들(210)은 컴퓨팅 디바이스(200)가 자체를 지리적으로 위치결정할 수 있는 것을 용이하게 할 수 있다. 다양한 실시예들에서, 로케이션 서비스들(210)은 다양한 형태들을 취할 수 있다. 예를 들어, 로케이션 서비스들(210)은 글로벌 포지셔닝 시스템(Global Positioning System)(GPS), 셀룰러 네트워크 로케이션, 와이파이-기반 로케이션, 또는 컴퓨팅 디바이스를 위치결정하기 위한 다른 수단을 포함할 수 있다. 일부 실시예들에서, 로케이션 서비스들(210)은 컴퓨팅 디바이스의 비교적 많은 양의 에너지를 소비할 수 있다. 따라서, 로케이션 서비스들(210)을 사용중이 아닐 때 전력비공급으로 유지하는 것이 바람직할 수 있다. 게다가, 일부 사례들에서, 로케이션 서비스들(210)은 GPS 위성들, 셀룰러 네트워크들, 및/또는 와이파이 네트워크들을 검출하지 못할 수 있다. 로케이션-설정 수단이 이용 가능하지 않을, 또는 매우 약한 신호를 가질 때, 로케이션 서비스들(210)은 심지어 평상시보다 더 많은 전력을 소비할 수 있다. 따라서, 일부 상황들에서, 컴퓨팅 디바이스가 약한 로케이션-제공 신호를 갖는 영역에 있을 때 로케이션 서비스들(210)을 전력비공급으로 유지하는 것이 바람직할 수 있다. 게다가, 일부 추가적인 실시예들에서, 컴퓨팅 디바이스가 움직이고 있을 때 로케이션 서비스들(210)을 전력비공급으로 유지할 수 있는데, 이전의-알려진 로케이션 정보는 변경되지 않기 때문이다.
일부 실시예들에서, 컴퓨팅 디바이스(200)는 디바이스 플랫폼 또는 운영 체제(도시되지 않음)를 포함할 수 있다. 일부 사례들에서, 디바이스 플랫폼 또는 운영 체제는 블루투스, 블루투스 저 에너지(BLE) 프로토콜들, 및/또는 BLE 광고 프로토콜들과 호환 가능할 수 있다. 일부 사례들에서, 디바이스 플랫폼 또는 운영 체제는 멀티-계층 리눅스 플랫폼 또는 운영 체제로서 구성될 수 있다. 디바이스 플랫폼은 상이한 애플리케이션들과 애플리케이션 프레임워크, 뿐만 아니라 다양한 커널들, 라이브러리들, 및 런타임 엔티티들을 포함할 수 있다. 다른 예들에서, 다른 포맷들 또는 시스템들은 컴퓨팅 디바이스(200) 역시 동작시킬 수 있다.
일부 실시예들에서, 하나 이상의 컴퓨팅 디바이스들은, 아마도 도 1에서 예시되는 바와 같이, 네트워킹된 아키텍처로 전개될 수 있다. 컴퓨팅 디바이스들의 정확한 물리적 로케이션, 접속성, 및 구성은 다른 컴퓨팅 디바이스들에게 알려져 있지 않고 그리고/또는 중요하지 않을 수 있다. 따라서, 도 1 및 도 2에서의 컴퓨팅 디바이스들은 다양한 원격 로케이션들에서 하우징될 수 있는 "클라우드 기반" 디바이스들이라고 지칭될 수 있다.
도 3은 네트워킹된 서버 클러스터의 개략도를 예시한다. 특히, 서버 디바이스들(306)은, 예를 들어, 도 1 및 도 2에 관련하여 위에서 설명된 임의의 컴퓨팅 디바이스의 형태를 취할 수 있다. 도 3에서, 컴퓨팅 디바이스(200)의 기능들은 서버 디바이스들(306), 클러스터 데이터 스토리지(308), 및 클러스터 라우터들(310) 간에 분산될 수 있는데, 그것들의 모두는 로컬 클러스터 네트워크(312)에 의해 접속될 수 있다. 서버 클러스터(304)에서의 서버 디바이스들, 클러스터 데이터 스토리지들, 및 클러스터 라우터들의 수는 서버 클러스터(304)에 배정된 컴퓨팅 태스크(들) 및/또는 애플리케이션들에 의존할 수 있다.
예를 들어, 서버 디바이스들(306)은 컴퓨팅 디바이스(200)의 다양한 컴퓨팅 태스크들을 수행하도록 구성될 수 있다. 따라서, 컴퓨팅 태스크들은 서버 디바이스들(306) 중 하나 이상의 서버 디바이스들 간에 분산될 수 있다. 이들 컴퓨팅 태스크들이 병행하여 수행될 수 있는 결과로, 이러한 태스크들의 분산은 이들 태스크들을 완료하고 그 결과를 반환하기 위한 총 시간을 감소시킬 수 있다.
클러스터 데이터 스토리지(308)는 하드 디스크 드라이브들의 그룹들에 대한 읽기 및 쓰기 액세스를 관리하도록 구성되는 디스크 어레이 제어기들을 포함하는 데이터 스토리지 어레이들일 수 있다. 디스크 어레이 제어기들은, 단독으로 또는 서버 디바이스들(306)과 연계하여, 하나 이상의 서버 디바이스들(306)이 클러스터 데이터 스토리지(308)의 유닛들에 액세스하는 것을 방해하는 디스크 드라이브 고장들 또는 다른 유형들의 장애들에 대하여 보호하기 위해 클러스터 데이터 스토리지(308)에 저장된 데이터의 백업 또는 용장성 복사들을 관리하도록 구성될 수 있다.
클러스터 라우터들(310)은 서버 클러스터들에 내부 및 외부 통신들을 제공하도록 구성되는 네트워킹 장비를 포함할 수 있다. 예를 들어, 클러스터 라우터들(310)은 (i) 클러스터 네트워크(312)를 통한 서버 디바이스들(306)과 클러스터 데이터 스토리지(308) 간의 네트워크 통신들, 및/또는 (ii) 네트워크(300)에 대한 통신 링크(302)을 통한 서버 클러스터(304) 및 다른 디바이스들 간의 네트워크 통신들을 제공하도록 구성되는 하나 이상의 패킷-스위칭 및/또는 라우팅 디바이스들을 포함할 수 있다.
덧붙여, 클러스터 라우터들(310)의 구성은, 서버 디바이스들(306) 및 클러스터 데이터 스토리지(308)의 데이터 통신 요건들, 로컬 클러스터 네트워크들(312)의 레이턴시 및 스루풋, 통신 링크(302)의 레이턴시, 스루풋, 및 비용, 그리고/또는 시스템 아키텍처의 비용, 속력, 장애-허용성(fault-tolerance), 리질리언스(resiliency), 효율 및/또는 다른 설계 목표들에 기여할 수 있는 다른 요인들에 적어도 부분적으로 기초할 수 있다.
도 4a는 예시적인 블루투스 디바이스의 개략도를 도시한다. 특히, 블루투스 디바이스(400)는, 예를 들어, 위의 시나리오들에서 설명된 컴퓨팅 디바이스들 중 임의의 컴퓨팅 디바이스와 결합될 수 있다. 일부 사례들에서, 블루투스 디바이스(400)는 위에서 설명된 컴퓨팅 디바이스들 중 임의의 컴퓨팅 디바이스에, 아마도 블루투스 모듈로서 통합될 수 있다. 예를 들어, 위의 시나리오들에서처럼, 블루투스 디바이스(400)는 광고 패킷들을 무선 헤드 셋 및 휴대용 키보드로 전송하기 위해 컴퓨팅 디바이스에 통합될 수 있다.
이 예에서, 블루투스 디바이스(400)는 애플리케이션 관리자(402), 호스트 스택(406), 제어기(410), 및 라디오(414)를 포함한다. 특히, 애플리케이션 관리자(402)는 시스템 버스(406) 또는 유사한 메커니즘에 의해 호스트 스택(406)에 커플링될 수 있다. 게다가, 호스트 스택(406)은 시스템 버스(408) 또는 유사한 메커니즘에 의해 제어기(410)에 커플링될 수 있다. 또 추가로, 제어기(410)는 시스템 버스(412) 또는 유사한 메커니즘에 의해 라디오에 커플링될 수 있다.
제어기(410)는 물리적 블루투스 제어기 인터페이스를 포함할 수 있다. 게다가, 물리적 블루투스 제어기 인터페이스는, 아마도 블루투스 디바이스(400) 상에 다운로드된 애플리케이션에 대한 광고 패킷을 송신하기 위한, 물리적 블루투스 정적 랜덤(Bluetooth static random)(BSR) 주소(410A)에 대응할 수 있다. 예를 들어, 위의 시나리오들을 다시 참조하여, 블루투스 디바이스(400)가 컴퓨팅 디바이스와 통합되는 것을 고려한다. 이와 같이, 음악-플레잉 애플리케이션은 블루투스 디바이스(400)에 다운로드될 수 있다. 게다가, 제어기(410)는 음악-플레잉 애플리케이션에 대한 광고 패킷을 송신하기 위한 BSR 주소(410A)에 대응할 수 있다.
블루투스 디바이스(400)는 기능성에 의존하여 상이한 모드들에서 동작할 수 있다. 일부 사례들에서, 블루투스 디바이스(400)의 기능은 블루투스 디바이스(400)의 사용자에 의해 제어될 수 있다. 위의 시나리오들을 고려하여, 사용자는 블루투스 디바이스(400)에 또는 컴퓨팅 디바이스(200), 아마도 블루투스 디바이스(400)와 조합될 수 있는 컴퓨팅 디바이스에 입력을 제공할 수 있다. 특히, 사용자는, 음악-플레잉 애플리케이션을 초기화하고 음악을 무선 헤드셋으로 스트리밍하기 위해, 입출력 기능부(208), 아마도 그래픽 사용자-인터페이스(GUI)에 입력을 제공할 수 있다. 이와 같이, 블루투스(400)의 운영 모드들은 광고 모드를 포함할 수 있다.
일부 실시예들에서, 광고 모드는 광고 패킷들을 주기적으로 송신하는 블루투스 디바이스(400)를 수반한다. 게다가, 블루투스 디바이스(400)는 다른 디바이스들로부터의 요청들에 대해 더 많은 정보로 응답할 수 있다. 덧붙여서, 블루투스(400)는 스캐닝 모드, 마스터 디바이스 모드, 및 슬레이브 디바이스 모드와 같은 다른 모드들을 가질 수 있다. 일부 실시예들에서, 스캐너 모드는 다른 디바이스들에 의해 송신된 광고 패킷들에 대한 블루투스 디바이스(400) 청취를 수반한다.
일부 실시예들에서, 블루투스 디바이스(400)는 다른 컴퓨팅 디바이스와의 접속을 확립하기 위해 광고 모드에 있을 수 있다. 예를 들어, 위의 시나리오들을 다시 참조하여, 블루투스 디바이스(400)가 컴퓨팅 디바이스와 통합되는 것을 고려한다. 이와 같이, 무선 헤드셋은 블루투스 디바이스(400)에 의해 전송된 원하는 광고 패킷들에 대해 스캔할 수 있다. 광고 패킷 수신 시, 무선 헤드셋은 페어링 또는 접속 요청을 블루투스 디바이스(400)로 전송할 수 있다. 일단 페어링이 확립되면, 무선 헤드셋은 슬레이브 디바이스가 될 수 있고 블루투스 디바이스(400)는 마스터 디바이스가 될 수 있다.
도 4b는 다른 예시적인 블루투스 디바이스의 개략도를 도시한다. 특히, 블루투스 디바이스(420)는, 예를 들어, 도 1 내지 도 4a에 관련하여 위에서 설명된 컴퓨팅 디바이스들 및 블루투스 디바이스들 중 임의의 디바이스의 형태를 취할 수 있다. 예를 들어, 도 4a에 예시된 바와 같이, 블루투스 디바이스(420)는 애플리케이션 관리자(402), 호스트 스택(406), 제어기(410), 및 라디오(414)를 또한 포함한다. 게다가, 애플리케이션 관리자(402)는 시스템 버스(404) 또는 유사한 메커니즘에 의해 호스트 스택(406)에 커플링될 수 있다. 게다가, 호스트 스택(406)은 시스템 버스(408) 또는 유사한 메커니즘에 의해 제어기(410)에 커플링될 수 있다. 또 추가로, 제어기(410)는 시스템 버스(412) 또는 유사한 메커니즘에 의해 라디오에 커플링될 수 있다.
애플리케이션들(422, 424, 및 426)은 블루투스 디바이스(420) 상에 그리고/또는 블루투스 디바이스(420)와 결합된 컴퓨팅 디바이스 상에 다운로드될 수 있다. 일부 사례들에서, 애플리케이션들(422, 424, 및 426)은, 예를 들어, 도 1에 관련하여 위에서 설명된 바와 같은 애플리케이션들(116, 118, 및 120)의 형태를 취할 수 있다. 게다가, 애플리케이션들(422, 424, 및 426)은 각각 애플리케이션 인터페이스들(428, 430, 및 432)을 통하여 애플리케이션 관리자(402)과 광고 데이터를 교환할 수 있다. 게다가, 추가적인 애플리케이션들은, 애플리케이션들(424 및 426) 사이의 타원들에 의해 지정된 바와 같이, 애플리케이션 관리자(402)와 광고 데이터를 교환하려고 시도할 수 있다. 또 추가로, 애플리케이션들(422, 424, 및 426)은 다른 디바이스들(도 4에서의 도시되지 않음)과 광고 패킷을 교환하기 위해 애플리케이션 관리자(402)와 통신할 수 있다.
일부 실시예들에서, 블루투스 디바이스(420)는 애플리케이션들(422, 424, 및 426)에 대해 광고 패킷을 무선으로 송신하기 위해 광고 모드에 진입할 수 있다. 언급된 바와 같이, 제어기(410)에는 광고 패킷들을 다른 컴퓨팅 디바이스들로 송신하기 위한 단일 블루투스 정적 주소(410A)가 배정될 수 있다. 예를 들어, 블루투스 디바이스(420)는 BSR 주소(410A)를 포함하는 광고 패킷(436)을 생성할 수 있다. 이와 같이, 광고 패킷(436)은 애플리케이션들(102, 104, 및 106) 중 하나 이상의 애플리케이션들에 대해 라디오(414)를 통하여 송신될 수 있다.
도 4c는 예시적인 광고 패킷을 도시한다. 특히, 광고 패킷(440)은, 예를 들어, 도 1 내지 도 4b에 관련하여 위에서 설명된 임의의 광고 패킷들의 형태를 취할 수 있다. 일부 추가적인 실시예들에서, 블루투스 태그가 광고 패킷(440)을 통신할 수 있다. 블루투스 태그가 고정된 로케이션을 갖고 로케이션 데이터를 포함하는 광고 패킷(440)으로 블루투스 스캔들에 응답하도록 구성될 수 있다. 도 4c에 도시된 바와 같이, 광고 패킷(440)은 프리앰블(442), 액세스 주소(444), 2 내지 39 바이트를 갖는 패이로드 데이터 유닛(payload data unit)(PDU)(446), 및 순환 중복 체크(cyclic redundancy check)(CRC)(448)를 포함할 수 있다.
덧붙여서, PDU(446)는 헤더(450)와 6 내지 37 바이트를 갖는 광고 패이로드(452)를 포함할 수 있다. 게다가, 광고 패이로드(452)는 헤더(454), MAC 주소(456), 및 31 바이트까지를 갖는 광고 데이터(458)를 포함할 수 있다. 위의 시나리오들에서 언급된 바와 같이, 이 31 바이트 공간은 애플리케이션들(422, 424, 및 426)에 대해 송신될 수 있는 광고 데이터를 제한할 수 있다. 특히, 컴퓨팅 디바이스(420)는 애플리케이션들(422, 424, 및 426) 중 아마도 하나 또는 두 개의 애플리케이션들에 대해 단일 광고 패킷(436)을 송신할 수 있다. 예를 들어, 31 바이트 공간은 애플리케이션들(422 및 424)의 광고 데이터를 허용하지만, 아마도 애플리케이션(426)의 광고 데이터를 허용하지 않을 수 있다. 또 다른 예에서, 31 바이트 공간은 광고 패킷을 통해 통신될 수 있는 로케이션 데이터를 포함할 수 있다. 또, 일부 사례들에서, 추가적인 애플리케이션들이 도 1에서의 애플리케이션들(424 및 426) 사이의 타원들에 의해 지정된 바와 같이 존재할 수 있다. 이와 같이, 추가적인 애플리케이션들은 31 바이트 공간 제한 및 단일 블루투스 정적 주소(118A)로 인한 광고 데이터를 송신하기 위한 대기 기간에 직면할 수 있다.
도 5는 블루투스 디바이스들(504a-504i)에 근접하여 위치된 컴퓨팅 디바이스(502)를 갖는 시나리오(500)를 예시한다. 특히, 도 5의 시나리오(500)는 컴퓨팅 디바이스(502)를 소지한 사람이 빌딩 내부에서 돌아다니는 시나리오를 나타낼 수 있다. 예를 들어, 시나리오(500)는 사무실 빌딩, 스토어 등에서 일어날 수 있다. 덧붙여, 시나리오(500)는 도 6의 블록들(602 내지 608) 중 하나 이상의 블록들에 의해 예시된 바와 같은 하나 이상의 단계들, 프로세스들, 및/또는 기능들을 수행하는 컴퓨팅 디바이스(502)를 포함할 수 있다.
컴퓨팅 디바이스(502)를 소지한 사람이 문턱(506)을 통하여 빌딩에 진입할 수 있다. 사람이 빌딩에 진입할 때, 빌딩은 표준 로케이션 서비스들(예컨대, 도 2의 로케이션 서비스들(210))이 제대로 작동하는 것을 방해할 수 있다. 예를 들어, 빌딩이 GPS 신호들을 부분적으로 차단할 수 있다. 다른 예에서, 빌딩은 로케이션 서비스들이 로케이션 검출과 간섭하는 빌딩으로 인해 전통적인 것보다 더 많은 에너지를 사용하게 할 수 있다. 따라서, 빌딩 내에서 동작할 때, 로케이션 서비스들은 제대로 작동하지 않을 수 있거나, 또는 일반적인 것보다 상당히 더 많은 배터리를 소비할 수 있다. 게다가, 로케이션 서비스들이 제대로 기능하지 않거나 또는 높은 전력 드로우(draw)를 가질 때 컴퓨팅 디바이스(502)가 자신의 로케이션 서비스들을 디스에이블시키는 것이 바람직할 수 있다.
일부 실시예들에서, 빌딩의 문턱(506)은 컴퓨팅 디바이스가 빌딩에 진입할 때 컴퓨팅 디바이스의 로케이션 서비스들이 제대로 작동할 마지막 포인트일 수 있다. 덧붙여, 문턱(506)은 컴퓨팅 디바이스에 대한 기준 데이터로서 기능을 할 수 있다. 문턱은 로케이션 서비스들이 모바일에게 올바른 로케이션 정보를 제공하는 포인트일 수 있다. 따라서, 일부 실시예들에서, 컴퓨팅 디바이스가 문턱(506)에 대해 상대적인 자신의 포지션을 컴퓨팅할 수 있는 것이 장점이 될 수 있다. 게다가, 컴퓨팅 디바이스의 정확한 로케이션이 문턱(506)으로부터의 기준 데이터와 컴퓨팅 디바이스(502)의 상대 포지션에 기초하여 계산될 수 있다.
스토어에는 블루투스 디바이스들(504a-504i)이 장비될 수 있다. 블루투스 디바이스들(504a-504i)은 이를테면 도 5에 도시된 그리드에 배열될 수 있거나, 또는 블루투스 디바이스들(504a-504i)은 상이한 레이아웃으로 배열될 수 있다. 블루투스 디바이스들(504a-504i)은 블루투스 스캔을 수행하기 위해 컴퓨팅 디바이스, 이를테면 컴퓨팅 디바이스(502)를 기다리도록 구성될 수 있다. 블루투스 스캔에 응답하여, 블루투스 디바이스들(504a-504i)은 광고 패킷들, 이를테면 광고 패킷들(510a-510d)로 응답할 수 있다. 일부 실시예들에서, 블루투스 스캔의 범위 내의 블루투스 디바이스들만이 광고 패킷들로 응답할 수 있다.
블루투스 디바이스들(504a-504i)이 광고 패킷들을 송신할 때, 각각의 블루투스 디바이스는 로케이션 데이터를 갖는 광고 패킷을 송신할 수 있다. 특정 실시예에 의존하여, 로케이션 데이터는 많은 상이한 형태들을 취할 수 있다. 일부 실시예들에서, 블루투스 디바이스들(504a-504i)의 각각은 그리드 시스템 상에 위치될 수 있다. 그리드 시스템에서, 블루투스 디바이스들(504a-504i)의 각각은 블루투스 디바이스들(504a-504i)의 서로로부터 미리 결정된 거리에 위치될 수 있다. 그리드는 대칭적(예컨대, 전방/후방 및 측면 블루투스 디바이스 간격 양쪽 모두에서 동일한 간격) 또는 비-대칭적(예컨대, 전방/후방 및 측면 블루투스 디바이스 간격 간에 상이한 간격)일 수 있다. 추가적인 실시예들에서, 블루투스 디바이스들(504a-504i)의 각각은 그리드 상에 배치되지 않을 수 있다. 블루투스 디바이스들(504a-504i)은 빌딩 내에서 거의 모든 간격으로 배치될 수 있다. 따라서, 블루투스 디바이스들(504a-504i)의 실제 로케이션들은 일부 실시예들에 필요하지 않을 수 있다.
블루투스 디바이스들(504a-504i)이 그리드로 이격되는 실시예들에서, 블루투스 디바이스들(504a-504i)의 각각은 스캔을 수행하는 컴퓨팅 디바이스에 상대 포지션 정보를 포함하는 광고 패킷을 통신할 수 있다. 상대 포지션 정보는 좌표 로케이션 데이터를 포함할 수 있다. 좌표 로케이션 데이터는 로컬 기준 포인트, 이를테면 문턱(506)으로부터의 상대적 로케이션 정보 형태를 취할 수 있다. 하나의 예에서, 도 5에 도시된 바와 같이, 컴퓨팅 디바이스(502)는 블루투스 스캔을 수행하고 있다. 블루투스 디바이스들(504a-504i)의 레이아웃에서, 블루투스 디바이스(504c)는 문턱(506)에 가장 가까운, 우측 상단에 위치된다. 따라서, 컴퓨팅 디바이스에 패킹된 광고를 통신할 때, 블루투스 디바이스(504c)는 좌표 로케이션 (1,0)을 통신할 수 있는데, 블루투스 디바이스(504c)가 문턱(506)의 좌측으로 1 포지션 그리고 문턱(506) 아래로 0 포지션이어서이다. 블루투스 디바이스(504b)는 좌표 로케이션 (2,0)을 통신할 수 있는데, 블루투스 디바이스(504b)가 문턱(506)의 좌측으로 2 포지션 그리고 문턱(506) 아래로 0 포지션이어서이다. 블루투스 디바이스(504f)는 좌표 로케이션 (1,1)을 통신할 수 있는데, 블루투스 디바이스(504f)가 문턱(506)의 좌측으로 1 포지션 그리고 문턱(506) 아래로 1 포지션이어서이다. 그리고, 블루투스 디바이스(504e)는 좌표 로케이션 (2,1)을 통신할 수 있는데, 블루투스 디바이스(504f)가 문턱(506)의 좌측으로 2 포지션 그리고 문턱(506) 아래로 1 포지션이어서이다.
다른 실시예들에서, 블루투스 디바이스들(504a-504i)의 각각은 스캔을 수행하는 컴퓨팅 디바이스에 글로벌 로케이션 데이터를 포함하는 광고 패킷을 통신할 수 있다. 글로벌 로케이션 데이터는 지리 좌표계 데이터를 포함하는 데이터를 포함할 수 있다. 지리 좌표계 데이터는 각각의 블루투스 디바이스가 위치되는 지구 상의 정확한 좌표들의 형태를 취할 수 있다. 예를 들어, 지리 좌표계 데이터는 GPS 유닛에 의해 계산되는 동일한 유형의 데이터일 수 있다. 하나의 추가의 예에서, 블루투스 디바이스들(504a-504i)의 각각은 GPS 유닛을 포함하거나 또는 프로그래밍된 자신의 정확한 좌표들을 가질 수 있다. 컴퓨팅 디바이스(502)가 블루투스 스캔을 수행할 때, 그 컴퓨팅 디바이스는 컴퓨팅 디바이스(502)의 블루투스 범위 내의 다양한 블루투스 디바이스들의 지리 좌표계 데이터를 수신할 수 있다.
도 6은 블루투스 저 에너지 스캔을 통해 모션 검출을 제공하는 예시적인 방법의 흐름도를 도시한다. 특히, 도 6의 방법(600)은 도 1 내지 도 5에 관련하여 위에서 설명된 컴퓨팅 디바이스들 중 하나 이상에 의해 수행 또는 구현될 수 있다. 예를 들어, 방법(600)은 블루투스 디바이스들(504a-504i)로부터 광고 패킷들을 수신하기 위해 도 5의 컴퓨팅 디바이스(502)에 의해 수행될 수 있다. 게다가, 방법들(600)은 블록들(602 내지 608) 중 하나 이상의 블록들에 의해 예시된 바와 같은 하나 이상의 단계들, 프로세스들, 및/또는 기능들을 포함할 수 있다. 비록 블록들이 순차적 순서로 예시되지만, 다수의 이들 블록들은 동시에 그리고/또는 예시된 것들과는 상이한 순서로 또한 수행될 수 있다. 또한, 다양한 블록들이 특정 구현예에 기초하여 더 적은 블록들로 결합되며, 추가적인 블록들로 분할되고, 그리고/또는 제거될 수 있다.
블록 602에서, 방법(600)은 컴퓨팅 디바이스의 블루투스 유닛을 통해 스캔을 수행하는 단계를 포함한다. 컴퓨팅 디바이스는 컴퓨팅 디바이스 근처에 위치된 블루투스 디바이스들을 발견하려는 시도로 블루투스 스캔을 수행할 수 있다. 블루투스 스캔의 범위 내의 블루투스 디바이스들은 블루투스 디바이스들이 스캔을 수신할 때 컴퓨팅 디바이스로 광고 패킷을 응답하여 다시 통신할 수 있다.
블루투스 광고 프로토콜은 컴퓨팅 디바이스에게 여러 장점들을 제공할 수 있다. 광고 프로토콜은 컴퓨팅 디바이스가 다른 프로토콜들을 사용하는 것에 의한 것보다 더 빠르게 (그리고 더 적은 에너지를 소비하여) 컴퓨팅 디바이스 근처에 위치된 블루투스 디바이스들을 발견하는 것을 가능하게 할 수 있다. 특히, 광고 패킷들이 송신되게 하는 스캔은 무선 스펙트럼, 예컨대, 2.4 GHz 무선 스펙트럼의 세 개의 채널들로 고정될 수 있다. 따라서, 전체 무선 스펙트럼을 스캔하지 않음으로써, 컴퓨팅 디바이스는 세 개의 고정된 채널들에 걸쳐 다른 블루투스 디바이스들을 검출하여, 다른 프로토콜들보다 더 효율적으로 광고 패킷들을 전송 및 수신하는 것을 허용할 수 있다.
블록 604에서, 방법(600)은 수행된 스캔에 응답하여 블루투스 유닛을 통해 하나 이상의 광고 패킷들을 수신하는 단계를 더 포함한다. 컴퓨팅 디바이스가 무선 블루투스 스캔을 수행할 때, 블루투스 스캔의 범위 내의 다양한 블루투스 디바이스들은 스캔을 수행하는 컴퓨팅 디바이스에게 광고 패킷을 응답하여 통신할 수 있다. 따라서, 컴퓨팅 디바이스는 블루투스 디바이스로부터 그 블루투스 스캔의 범위에 있는 적어도 하나의 광고 패킷을 수신할 수 있다. 하나 이상의 수신된 광고 패킷들은 각각의 블루투스 디바이스에 연관될 수 있다. 덧붙여, 하나 이상의 광고 패킷들은 각각의 블루투스 디바이스에 연관된 데이터를 포함할 수 있다. 각각의 블루투스 디바이스에 연관된 데이터는 각각의 블루투스 디바이스의 로케이션에 관련된 데이터를 포함할 수 있다.
블루투스 디바이스들이 광고 패킷들을 송신할 때, 각각의 블루투스 디바이스는 로케이션 데이터와 함께 광고 패킷을 송신할 수 있다. 특정 실시예에 의존하여, 로케이션 데이터는 많은 상이한 형태들을 취할 수 있다. 예를 들어, 블루투스 디바이스들은 상대 포지션 정보 또는 지리 좌표계 데이터 중 어느 하나를 통해 각각의 블루투스 디바이스의 로케이션에 관련된 데이터를 제공하도록 구성될 수 있다.
일부 실시예들에서 이전에 논의된 바와 같이, 블루투스 디바이스들의 각각은 그리드 시스템 상에 위치될 수 있다. 그리드 시스템에서, 블루투스 디바이스들의 각각은 블루투스 디바이스들의 서로로부터 미리 결정된 거리들에 위치될 수 있다. 블루투스 디바이스들이 그리드로 이격되는 실시예들에서, 블루투스 디바이스들의 각각은 스캔을 수행하는 컴퓨팅 디바이스에 상대 포지션 정보를 포함하는 광고 패킷을 통신할 수 있다. 상대 포지션 정보는 좌표 로케이션 데이터를 포함할 수 있다. 좌표 로케이션 데이터는 로컬 기준 포인트로부터의 상대적 로케이션 정보 형태를 취할 수 있다. 예를 들어, 로케이션 정보는 특정 포지션에 대해 상대적인 X-좌표 및 Y-좌표를 포함할 수 있다.
다른 실시예들에서, 블루투스 디바이스들의 각각은 스캔을 수행하는 컴퓨팅 디바이스에 글로벌 로케이션 데이터를 포함하는 광고 패킷을 통신할 수 있다. 글로벌 로케이션 데이터는 GPS 데이터와 유사한 지리 좌표계 데이터를 포함하는 데이터를 포함할 수 있다. 따라서, 지리 좌표계 데이터는 지구의 표면 상의 각각의 블루투스 디바이스의 절대 로케이션을 제공할 수 있다.
블록 606에서, 방법(600)은 수신된 하나 이상의 광고 패킷들에 기초하여 컴퓨팅 디바이스의 로케이션이 변경되었는지를 결정하는 단계를 더 포함하는데, 결정하는 단계는 수신된 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들의 세트를 비교하는 단계를 포함한다. 결정하는 단계는 컴퓨팅 디바이스의 다양한 프로세싱 디바이스들, 이를테면 블루투스 유닛의 프로세서에 의해 수행될 수 있다.
블루투스 유닛의 로케이션이 변경되었는지를 결정하기 위하여, 컴퓨팅 디바이스는 수신된 광고 패킷들과 기준 광고 패킷들을 비교할 수 있다. 수신된 광고 패킷들과 기준 광고 패킷들 간의 높은 유사도를 비교가 나타낸다면, 모바일 디바이스는 모바일 디바이스가 이동하지 않았다는 것을 높은 확률로 결정할 수 있다. 그러나, 수신된 광고 패킷들과 기준 광고 패킷들 간의 낮은 유사도를 비교가 나타낸다면, 모바일 디바이스는 모바일 디바이스가 이동하지 않았다는 것을 높은 확률로 결정할 수 있다.
도 5에 관해 논의된 바와 같이, 블루투스 디바이스들은 데이터를 포함하는 광고 패킷들을 송신할 수 있다. 일부 실시예들에서, 이 데이터는 로케이션 정보를 포함한다. 그러나, 다른 실시예들에서, 그 데이터는 로케이션 데이터를 포함하지 않을 수 있으며, 오히려 그 데이터는 스캔에 응답하는 제 각각의 블루투스 디바이스의 정보를 식별하는 단계만을 포함할 수 있다. 제공된 데이터의 유형에 기초하여, 모바일 디바이스는 상이한 방도들로 그 모바일 디바이스가 이동하였는지를 결정할 수 있다. 일부 실시예들에서, 모바일 디바이스는 제1 블루투스 스캔을 수행하여 기준 광고 패킷들의 세트를 획득할 수 있다. 이들 기준 광고 패킷들은 모바일 디바이스에 의해 알려진 로케이션, 이를테면 빌딩의 입구에 대응할 수 있다. 다른 실시예들에서, 모바일 디바이스는 기준 광고 패킷들의 세트를 포함하는 데이터를 무선으로 수신할 수 있다. 예를 들어, 빌딩에 진입할 때, 블루투스 디바이스가 스토어 내부에 발을 내딛을 때 모바일 디바이스가 수신할 것을 기대할 수 있는 기준 광고 패킷들에 관련되는 데이터의 세트를 통신할 수 있다.
덧붙여, 모바일 디바이스는 광고 패킷들을 분석하는 것에 기초하여 모바일 디바이스가 이동하였을 확률을 확립할 수 있다. 그 확률은 모바일 디바이스가 자신이 얼마나 멀리 이동하였다고 생각하는지에 기초할 수 있다. 다른 경우들에서, 그 확률은 각각의 광고 패킷들에서의 블루투스 디바이스들로부터 수신된 데이터의 분석에 기초할 수 있다.
먼저, 블루투스 디바이스들이 로케이션 데이터를 포함하지 않는 데이터를 포함하는 광고 패킷들을 송신한다면, 모바일 디바이스는 수신된 광고 패킷들의 수 및 각각의 광고 패킷에 포함된 데이터 둘 다에 기초하여 수신된 광고 패킷들과 기준 광고 패킷들을 비교할 수 있다. 예를 들어, 주어진 로케이션에서, 모바일 디바이스는 제1 블루투스 스캔을 수행할 수 있다. 이 제1 스캔은 여섯 개의 블루투스 디바이스들이 응답 광고 패킷을 송신하는 것을 초래할 수 있다. 이들 광고 패킷들은 각각의 블루투스 디바이스에 연관된 고유 식별자를 각각이 포함할 수 있다. 모바일 디바이스는 제2 스캔을 두 번째 시간에 수행할 수 있다. 제2 스캔은 다섯 개의 블루투스 디바이스들이 각각의 블루투스 디바이스에 연관된 고유 식별자를 각각이 포함하는 응답 광고 패킷을 송신하는 것을 초래할 수 있다. 모바일 디바이스는 그 다음에 두 개의 스캔들을 비교할 수 있다.
먼저, 스캔에 응답하는 블루투스 디바이스 수 때문에, 모바일 디바이스는 모바일 디바이스가 이동하였을 공산이 증가하였다고 결정할 수 있다. 그러나, 모바일 디바이스는 스캔에도 응답하여 각각의 블루투스 디바이스에 대한 고유 식별자들을 또한 살펴볼 수 있다. 일부 사례들에서, 제2 스캔의 모든 다섯 개의 블루투스 디바이스들이 제1 스캔에도 응답하여 광고 패킷들을 송신하였을 수 있다. 덧붙여, 모바일 디바이스는 각각의 수신된 광고 패킷의 전력 레벨을 분석할 수 있다. 예를 들어, 제2 스캔이 아니라 제1 스캔의 일부였던 제6 블루투스 디바이스는 너무 낮아서 간신히 검출 가능하였던 전력 레벨로 모바일 디바이스에 의해 수신되었던 광고 패킷을 송신하였을 수 있다. 이 사례에서, 제2 스캔에서의 제6 블루투스 디바이스의 결여는 모바일 디바이스의 모션에 의해 초래되지 않을 수 있다. 따라서, 두 개의 각각의 스캔들로부터의 광고 패킷들의 세트가 상당히 중복되기 때문에, 모바일 디바이스는 모바일 디바이스가 이동했을 높은 확률이 있다고 결정할 수 있다.
다른 예에서, 제1 스캔에서는 유사하게 여섯 개의 블루투스 디바이스들이 응답 광고 패킷을 송신하고 있다는 결과를 초래할 수 있고 제2 스캔에서는 다섯 개 블루투스 디바이스들이 응답 광고 패킷을 송신하고 있다는 결과를 초래할 수 있다. 모바일 디바이스가 두 개의 스캔들을 비교할 때, 모바일 디바이스는 제2 스캔으로 수신된 광고 패킷들을 갖지 않는 두 개의 디바이스들로부터의 광고 패킷들을 제1 스캔이 수신하였다고 결정할 수 있다. 덧붙여, 모바일 디바이스는 제1 스캔으로 수신된 광고 패킷들을 갖지 않는 하나의 디바이스로부터의 광고 패킷들을 제2 스캔이 수신하였다고 결정할 수 있다. 따라서, 두 개의 각각의 스캔들로부터의 광고 패킷들의 세트가 비-중복이기 때문에, 모바일 디바이스는 모바일 디바이스가 이동하였을 높은 확률이 있다고 결정할 수 있다.
또 다른 예에서, 제1 스캔에서는 유사하게 다섯 개의 블루투스 디바이스들이 응답 광고 패킷을 송신하고 있다는 결과를 초래할 수 있고 제2 스캔에서는 다섯 개 블루투스 디바이스들이 응답 광고 패킷을 송신하고 있다는 결과를 초래할 수 있다. 모바일 디바이스가 두 개의 스캔들을 비교할 때, 모바일 디바이스는 두 개의 스캔들로부터의 광고 패킷들이 동일한 블루투스 디바이스들로부터라고 결정할 수 있다. 그러므로, 모바일 디바이스는 다양한 광고 패킷들의 수신된 전력 레벨들과, 연관된 전력 비율들을 비교하여, 모바일 디바이스가 이동하였는지를 결정할 수 있다. 예를 들어, 수신된 전력 비율들에서의 큰 변경이 모바일 디바이스가 이동하였다는 것을 나타낼 수 있다. 그러나, 전력 비율들에서 상당한 변경이 없다는 것은 모바일 디바이스가 이동하지 않았다는 것을 나타낼 수 있다.
다른 추가의 실시예들에서, 블루투스 디바이스들은 로케이션 정보를 포함하는 데이터를 갖는 광고 패킷들을 송신할 수 있다. 로케이션 정보는 좌표 로케이션 데이터 또는 글로벌 로케이션 데이터를 포함하는 어느 하나의 상대 포지션 정보를 포함한다. 광고 패킷들이 로케이션 데이터를 포함한다면, 모바일 디바이스는 모바일 디바이스들이 이동하였는지를 결정하는 이전에 논의된 방법들 중 어느 하나를 사용할 수 있거나, 또는 모바일 디바이스는 로케이션 정보를 이용할 수 있다.
예를 들어, 주어진 로케이션에서, 모바일 디바이스는 제1 블루투스 스캔을 수행할 수 있다. 이 제1 스캔은 네 개의 블루투스 디바이스들이 응답 광고 패킷을 송신하는 것을 초래할 수 있다. 이들 광고 패킷들은 각각이 로케이션 정보를 포함할 수 있다. 모바일 디바이스는 제2 스캔을 두 번째 시간에 수행할 수 있다. 제2 스캔은 네 개의 블루투스 디바이스들이 로케이션 정보를 각각이 포함하는 응답 광고 패킷을 송신하는 것을 초래할 수 있다. 모바일 디바이스는 그 다음에 두 개의 스캔들을 비교할 수 있다.
하나의 예에서, 로케이션 정보는 좌표 로케이션 데이터일 수 있다. 제1 스캔은 모바일 디바이스가 좌표 로케이션들 (0,0), (1,0), (0,1), 및 (1,1)에 대응하는 데이터를 갖는 광고 패킷들을 수신하는 결과를 초래할 수 있다. 제2 스캔은 모바일 디바이스가 좌표 로케이션들 (0,1), (1,1), (0,2), 및 (1,2)에 대응하는 데이터를 갖는 광고 패킷들을 수신하는 결과를 초래할 수 있다. 따라서, 모바일 디바이스는 제1 스캔이 (0,0), (1,0), (0,1), 및 (1,1)에 대응하는 네 개의 블루투스 디바이스들 근처의 영역에서 수행될 가능성이 있고 제2 스캔이 (0,1), (1,1), (0,2), 및 (1,2)에 대응하는 네 개의 블루투스 디바이스들 근처의 영역에서 수행될 가능성이 있다고 결정할 수 있다. 그러므로, 모바일 디바이스는 광고 패킷 데이터로부터의 수신된 좌표들에서의 변경들에 기초하여 움직임 확률을 결정할 수 있다.
게다가, 모바일 디바이스는 각각의 스캔에 대한 평균 좌표들을 계산할 수 있다. 제1 스캔의 경우, 평균은 (0.5, 0.5)이고 제2 스캔의 경우 평균은 (0.5, 1.5)이다. 그러므로, 모바일 디바이스는 평균 좌표들에서에서의 변경에 기초하여 움직임 확률을 결정할 수 있다. 또 일부 추가의 실시예들에서, 모바일 디바이스는 다양한 광고 패킷들의 수신된 전력 레벨들에 기초하여 가중된 평균 좌표를 계산할 수 있다.
로케이션 정보가 글로벌 로케이션 데이터인 실시예들에서, 동일한 계산들은 좌표 로케이션 데이터에 대해서처럼 글로벌 로케이션 데이터에 대해 수행될 수 있다. 하나의 예에서, 컴퓨팅 디바이스 빌딩에 진입할 때, 그 컴퓨팅 디바이스는 그 디바이스 상의 로케이션 서비스를 사용하여 글로벌 로케이션 데이터를 획득할 수 있다. 이 글로벌 로케이션 데이터는 기준 데이터로서 역할을 할 수 있다. 일단 빌딩 내부에서, 로케이션 서비스들은 글로벌 로케이션 데이터를 제공하기 위해 더 이상 작동하지 않을 수 있거나, 또는 덜 신뢰할 수 있는 데이터를 제공할 수 있다. 그러나, 블루투스 디바이스들은 글로벌 로케이션 데이터에 광고 패킷에서의 데이터를 제공할 수 있다. 따라서, 모바일 디바이스 로케이션 서비스들에 의해 제공된 글로벌 로케이션 데이터와 광고 패킷들에서의 데이터를 통해 블루투스 디바이스들에 의해 제공된 글로벌 로케이션 데이터를 비교하여, 모바일 디바이스가 이동하였는지의 여부를 결정할 수 있다.
블록 608에서, 방법(600)은 블루투스 유닛이 로케이션을 변경하였다는 결정에 응답하여, 애플리케이션 프로세싱 유닛의 로케이션 검출 기능을 인에이블시키는 단계를 더 포함한다. 애플리케이션 프로세싱 유닛은 블루투스 유닛의 로케이션을 결정하도록 구성될 수 있다. 애플리케이션 프로세싱 유닛이 추가적인 로케이션 서비스들의 하드웨어(이를테면 GPS, Wifi 등)을 사용하여 컴퓨팅 디바이스의 실제 로케이션을 결정할 수 있기 때문에, 컴퓨팅 디바이스가 로케이션 서비스들의 하드웨어가 디스에이블된 때에 컴퓨팅 디바이스가 사용하는 것보다 상당히 더 많은 에너지를 사용하게 할 수 있다. 그러므로, 필요할 때만 소프트웨어 또는 하드웨어 및/또는 애플리케이션 프로세싱 유닛을 통해 로케이션 서비스들만을 인에이블시키는 것은 컴퓨팅 디바이스가 상당한 전력을 절약하게 할 수 있다.
따라서, 애플리케이션 프로세싱 유닛의 로케이션 검출 기능이 인에이블될 때, 모바일 디바이스의 정확한 로케이션을 결정하는 계산 자체를 수행할 수 있거나, 또는 모바일 디바이스의 정확한 로케이션을 결정하기 위해 로케이션 서비스들의 하드웨어를 인에이블시킬 수 있다. 어느 사례에서나, 모바일 디바이스는 더 낮은 전력 모드(애플리케이션 프로세싱 유닛이 디스에이블되어 있음)로부터 더 높은 전력 모드(애플리케이션 프로세싱 유닛이 인에이블되어 있음)로 전환하고 있다.
본 명세서에서 개시되는 방법(600), 다른 단계들, 프로세스들, 및/또는 기능들은 예시적인 실시예들의 가능한 구현예들을 보여준다는 것에 주의해야 한다. 이와 관련하여, 도 4a 및 도 4b에서의 각각의 블록은 방법(600)에서의 특정 논리적 기능들을 수행하도록 설계되거나 또는 배선되는 하드웨어, 칩셋들, 및/또는 회로에 대응할 수 있다. 게다가, 방법(600)에서의 각각의 블록은, 프로세스에서의 특정 논리적 기능들 또는 단계들을 구현하기 위해, 프로세서에 의해 실행 가능한 하나 이상의 명령들을 포함하는, 프로그램 코드의 모듈, 세그먼트, 또는 부분을 나타낼 수 있다. 프로그램 코드는 예를 들어, 디스크 또는 하드 드라이브를 포함하는 저장 디바이스와 같은 임의의 유형의 컴퓨터 판독가능 매체 상에 저장될 수 있다.
컴퓨터 판독가능 매체는, 예를 들어, 레지스터 메모리, 프로세서 캐시 및 랜덤 액세스 메모리(Random Access Memory)(RAM) 같이 짧은 시구간들 동안 데이터를 저장하는 컴퓨터-판독가능 매체와 같은 비일시적 컴퓨터 판독가능 매체를 포함할 수 있다. 컴퓨터 판독가능 매체는 비-일시적 매체, 이를테면, 예를 들어, 판독 전용 메모리(read only memory)(ROM), 광 또는 자기 디스크들, 콤팩트-디스크 판독 전용 메모리(compact-disc read only memory)(CD-ROM) 같은 보조 또는 영구적 장기 스토리지를 또한 포함할 수 있다. 컴퓨터 판독가능 매체들은 또한 임의의 다른 휘발성 또는 비휘발성 저장 시스템들일 수 있다. 컴퓨터 판독가능 매체는 예를 들어, 컴퓨터 판독가능 저장 매체, 유형의 저장 디바이스, 또는 다른 제조품이라고 간주될 수 있다.
본 명세서에서 설명되는 배치구성들은 단지 예시만을 위한 것이다. 이와 같이, 본 기술분야의 통상의 기술자들은 다른 배치구성들 및 다른 엘리먼트들 (예컨대, 머신들, 인터페이스들, 기능들, 순서들, 및 기능들의 그룹들 등)이 대신 사용될 수 있다는 것과, 일부 엘리먼트들이 원하는 결과들에 따라 함께 생략될 수 있다는 것을 이해할 것이다. 게다가, 설명되는 다수의 엘리먼트들은 개별 또는 분산된 컴포넌트들로서 또는 다른 컴포넌트들과 연계하여, 임의의 적합한 조합 및 로케이션으로 구현될 수 있는 기능적 엔티티들, 또는 결합될 수 있는 독립적인 구조들로서 설명되는 다른 구조적 엘리먼트들이다.
다양한 양태들 및 실시예들이 본원에서 개시되었지만, 다른 양태들 및 실시예들은 본 기술분야의 통상의 기술자들에게 명확할 것이다. 본 명세서에서 개시되는 다양한 양태들 및 실시예들은 예시 목적을 위한 것이고 제한되도록 의도되지 않고, 진정한 범위는 다음의 청구항들과 함께, 이러한 청구항들에 주어지는 등가물들의 전체 범위에 의해 나타내어진다. 본 개시물에서 사용된 용어들은 특정 실시예들만을 설명하기 위한 것이고, 한정할 의도는 아니라는 것 또한 이해된다.

Claims (20)

  1. 컴퓨팅 디바이스의 블루투스 유닛을 통해 하나 이상의 광고 패킷들 - 상기 하나 이상의 광고 패킷들은 각각의 블루투스 디바이스에 연관됨 - 을 수신하는 단계;
    상기 블루투스 유닛의 프로세싱 유닛을 통해, 수신된 상기 하나 이상의 광고 패킷들에 기초하여 상기 컴퓨팅 디바이스의 로케이션이 변경되었다고 결정하는 단계 - 상기 결정하는 단계는 수신된 상기 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들을 비교하는 단계를 포함함 -; 및
    상기 컴퓨팅 디바이스가 로케이션을 변경하였다는 결정에 응답하여, 상기 컴퓨팅 디바이스의 애플리케이션 프로세싱 유닛의 로케이션 검출 기능을 인에이블시키는 단계를 포함하는, 방법.
  2. 제1항에 있어서, 상기 각각의 블루투스 디바이스에 연관된 데이터는 상기 각각의 블루투스 디바이스의 좌표 로케이션 데이터를 포함하며, 상기 좌표 로케이션 데이터는 로컬 기준 포인트로부터의 상대적 로케이션 정보를 포함하는, 방법.
  3. 제1항에 있어서, 상기 각각의 블루투스 디바이스에 연관된 데이터는 상기 각각의 블루투스 디바이스의 글로벌 로케이션 데이터를 포함하며, 상기 글로벌 로케이션 데이터는 지리 좌표계 데이터를 포함하는 데이터를 포함하는, 방법.
  4. 제1항에 있어서, 상기 하나 이상의 기준 광고 패킷들은 상기 블루투스 유닛을 통해 수행된 이전의 스캔으로부터 저장되는, 방법.
  5. 제1항에 있어서, 컴퓨팅 디바이스의 로케이션이 변경되었는지를 결정하는 단계는, 수신된 상기 하나 이상의 광고 패킷들에 기초하여 움직임 확률을 계산하는 단계와 상기 움직임 확률과 임계값을 비교하는 단계를 더 포함하는, 방법.
  6. 제2항에 있어서, 상기 애플리케이션 프로세싱 유닛은 상기 좌표 로케이션 데이터에 기초하여 상기 컴퓨팅 디바이스의 상기 로케이션을 결정하도록 구성되는, 방법.
  7. 제2항에 있어서, 상기 애플리케이션 프로세싱 유닛은 글로벌 로케이션 데이터에 기초하여 상기 컴퓨팅 디바이스의 상기 로케이션을 결정하도록 구성되는, 방법.
  8. 제1항에 있어서, 상기 컴퓨팅 디바이스가,
    상기 애플리케이션 프로세싱 유닛을 통해 초기 기준 로케이션 데이터를 획득하는 단계; 및
    초기 기준 로케이션 데이터를 획득한 후 상기 애플리케이션 프로세싱 유닛을 디스에이블시키는 단계를 더 포함하는, 방법.
  9. 컴퓨팅 디바이스로서,
    하나 이상의 프로세서들;
    블루투스 유닛을 통해 하나 이상의 광고 패킷들 - 상기 하나 이상의 광고 패킷들은 각각의 블루투스 디바이스에 연관됨 - 을 수신하도록 구성되는 수신기를 포함하는 상기 블루투스 유닛;
    상기 컴퓨팅 디바이스의 로케이션을 결정하도록 구성되는 애플리케이션 프로세싱 유닛; 및
    상기 하나 이상의 프로세서들에 실행될 때 상기 컴퓨팅 디바이스로 하여금 기능들을 수행하게 하는 프로그램 명령들을 저장하고 있는 컴퓨터 판독가능 매체를 포함하며, 상기 기능들은,
    수신된 상기 하나 이상의 광고 패킷들에 기초하여 상기 컴퓨팅 디바이스의 로케이션이 변경되었는지 결정하는 기능 - 상기 결정하는 기능은 수신된 상기 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들을 비교하는 기능을 포함함 -; 및
    상기 컴퓨팅 디바이스가 로케이션을 변경하였다는 결정에 응답하여, 상기 컴퓨팅 디바이스의 상기 애플리케이션 프로세싱 유닛의 로케이션 검출 기능을 인에이블시키는 기능을 포함하는, 컴퓨팅 디바이스.
  10. 제9항에 있어서,
    상기 각각의 블루투스 디바이스에 연관된 데이터는 상기 각각의 블루투스 디바이스의 좌표 로케이션 데이터를 포함하며, 상기 좌표 로케이션 데이터는 로컬 기준 포인트로부터의 상대적 로케이션 정보를 포함하며;
    상기 애플리케이션 프로세싱 유닛은 상기 좌표 로케이션 데이터에 기초하여 상기 컴퓨팅 디바이스의 상기 로케이션을 결정하도록 구성되는, 컴퓨팅 디바이스.
  11. 제9항에 있어서,
    상기 각각의 블루투스 디바이스에 연관된 데이터는 상기 각각의 블루투스 디바이스의 글로벌 로케이션 데이터를 포함하며, 상기 글로벌 로케이션 데이터는 지리 좌표계 데이터를 포함하는 데이터를 포함하며;
    상기 애플리케이션 프로세싱 유닛은 상기 글로벌 로케이션 데이터에 기초하여 상기 컴퓨팅 디바이스의 상기 로케이션을 결정하도록 구성되는, 컴퓨팅 디바이스.
  12. 제9항에 있어서, 상기 하나 이상의 기준 광고 패킷들은 상기 블루투스 유닛을 통해 수행된 이전의 스캔으로부터 저장되는, 컴퓨팅 디바이스.
  13. 제9항에 있어서, 컴퓨팅 디바이스의 로케이션이 변경되었는지를 결정하는 기능은, 수신된 상기 하나 이상의 광고 패킷들에 기초하여 움직임 확률을 계산하는 단계와 상기 움직임 확률과 임계값을 비교하는 기능을 더 포함하는, 컴퓨팅 디바이스.
  14. 제9항에 있어서,
    상기 애플리케이션 프로세싱 유닛을 통해 초기 기준 로케이션 데이터를 획득하도록 구성되는 상기 애플리케이션 프로세싱 유닛을 더 포함하고,
    상기 기능들은 초기 기준 로케이션 데이터를 획득한 후 상기 애플리케이션 프로세싱 유닛을 디스에이블시키는 기능을 더 포함하는, 컴퓨팅 디바이스.
  15. 하나 이상의 프로세서들에 의해 실행될 때 컴퓨팅 디바이스에 관련하여 기능들을 수행하게 하는 프로그램 명령들을 저장하고 있는 컴퓨터 판독가능 매체로서, 상기 기능들은,
    컴퓨팅 디바이스의 블루투스 유닛을 통해 하나 이상의 광고 패킷들 - 상기 하나 이상의 광고 패킷들은 각각의 블루투스 디바이스에 연관됨 - 을 수신하는 기능;
    상기 블루투스 유닛의 프로세싱 유닛을 통해, 수신된 상기 하나 이상의 광고 패킷들에 기초하여 상기 컴퓨팅 디바이스의 로케이션이 변경되었다고 결정하는 기능 - 상기 결정하는 기능은 수신된 상기 하나 이상의 광고 패킷들과 하나 이상의 기준 광고 패킷들을 비교하는 기능을 포함함 -; 및
    상기 컴퓨팅 디바이스가 로케이션을 변경하였다는 결정에 응답하여, 상기 컴퓨팅 디바이스의 애플리케이션 프로세싱 유닛의 로케이션 검출 기능을 인에이블시키는 기능을 포함하는, 컴퓨터 판독가능 매체.
  16. 제15항에 있어서,
    상기 각각의 블루투스 디바이스에 연관된 데이터는 상기 각각의 블루투스 디바이스의 좌표 로케이션 데이터를 포함하며, 상기 좌표 로케이션 데이터는 로컬 기준 포인트로부터의 상대적 로케이션 정보를 포함하며;
    상기 애플리케이션 프로세싱 유닛은 상기 좌표 로케이션 데이터에 기초하여 상기 컴퓨팅 디바이스의 상기 로케이션을 결정하도록 구성되는, 컴퓨터 판독가능 매체.
  17. 제15항에 있어서,
    상기 각각의 블루투스 디바이스에 연관된 데이터는 상기 각각의 블루투스 디바이스의 글로벌 로케이션 데이터를 포함하며, 상기 글로벌 로케이션 데이터는 지리 좌표계 데이터를 포함하는 데이터를 포함하며;
    상기 애플리케이션 프로세싱 유닛은 상기 글로벌 로케이션 데이터에 기초하여 상기 컴퓨팅 디바이스의 상기 로케이션을 결정하도록 구성되는, 컴퓨터 판독가능 매체.
  18. 제15항에 있어서, 상기 하나 이상의 기준 광고 패킷들은 상기 블루투스 유닛을 통해 수행된 이전의 스캔으로부터 저장되는, 컴퓨터 판독가능 매체.
  19. 제15항에 있어서, 컴퓨팅 디바이스의 로케이션이 변경되었는지를 결정하는 기능은, 수신된 상기 하나 이상의 광고 패킷들에 기초하여 움직임 확률을 계산하는 기능과 상기 움직임 확률과 임계값을 비교하는 기능을 더 포함하는, 컴퓨터 판독가능 매체.
  20. 제15항에 있어서, 상기 컴퓨팅 디바이스가,
    상기 애플리케이션 프로세싱 유닛을 통해 초기 기준 로케이션 데이터를 획득하는 기능; 및
    초기 기준 로케이션 데이터를 획득한 후 상기 애플리케이션 프로세싱 유닛을 디스에이블시키는 기능을 더 포함하는, 컴퓨터 판독가능 매체.
KR1020177000630A 2014-07-10 2015-07-08 블루투스 저 에너지 스캔을 통한 모션 검출 KR101795993B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/328,005 US9179254B1 (en) 2014-07-10 2014-07-10 Motion detection with bluetooth low energy scan
US14/328,005 2014-07-10
PCT/US2015/039557 WO2016007627A1 (en) 2014-07-10 2015-07-08 Motion detection via a bluetooth low energy scan

Publications (2)

Publication Number Publication Date
KR20170018018A KR20170018018A (ko) 2017-02-15
KR101795993B1 true KR101795993B1 (ko) 2017-11-08

Family

ID=54352907

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020177000630A KR101795993B1 (ko) 2014-07-10 2015-07-08 블루투스 저 에너지 스캔을 통한 모션 검출

Country Status (7)

Country Link
US (2) US9179254B1 (ko)
EP (1) EP3167666A4 (ko)
JP (1) JP6359126B2 (ko)
KR (1) KR101795993B1 (ko)
CN (1) CN106664678B (ko)
AU (1) AU2015287904B2 (ko)
WO (1) WO2016007627A1 (ko)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9179254B1 (en) * 2014-07-10 2015-11-03 Google Inc. Motion detection with bluetooth low energy scan
KR102380070B1 (ko) * 2015-08-25 2022-03-30 삼성전자주식회사 전자 장치 및 그의 제어 방법
US10568033B2 (en) 2015-12-23 2020-02-18 Intel Corporation Context-driven connection protocol
US9961484B2 (en) * 2016-01-22 2018-05-01 Lg Electronics Inc. Method and apparatus for controlling a device using bluetooth technology
US10284566B2 (en) * 2016-04-01 2019-05-07 Intel Corporation Proximity detection system
JP6293247B1 (ja) * 2016-11-29 2018-03-14 キヤノン株式会社 印刷装置、印刷装置の制御方法及びプログラム
EP3979219A1 (en) 2018-11-02 2022-04-06 Assa Abloy AB System, methods, and devices for access control
FR3094094A1 (fr) 2019-03-20 2020-09-25 Orange Procédé de détection de changement de position d’un récepteur radio
EP3928299A1 (en) 2019-03-25 2021-12-29 Assa Abloy Ab Ultra-wide band device for access control reader system
WO2020193580A1 (en) 2019-03-25 2020-10-01 Assa Abloy Ab Physical access control systems with localization-based intent detection
WO2021008704A1 (en) * 2019-07-17 2021-01-21 Telefonaktiebolaget Lm Ericsson (Publ) Layer one execution control
CA3152337A1 (en) 2019-09-26 2021-04-01 Assa Abloy Ab Ultra-wide band antenna configuration for physical access control system
MX2021005653A (es) 2019-10-01 2021-11-12 Assa Abloy Ab Descubrimiento de servicios y conexion para aplicaciones de rango fino.
AU2020381141B2 (en) 2019-11-07 2024-03-21 Assa Abloy Ab Upper layer device architecture for ultra-wide band enabled device
US11824906B2 (en) * 2021-07-15 2023-11-21 Socero Inc. Network architecture for hybrid conferencing service

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120258669A1 (en) 2011-04-07 2012-10-11 Nokia Corporation FACILITATING POSITIONING THROUGH BlUETOOTH LOW ENERGY WIRELESS MESSAGING
US8560229B1 (en) 2010-09-15 2013-10-15 Google Inc. Sensor based activity detection
US20140087752A1 (en) 2012-09-26 2014-03-27 Hewlett-Packard Development Company, L.P. Bluetooth beacon based location determination
WO2014087196A1 (en) 2012-12-07 2014-06-12 Nokia Corporation Handling packet data units

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080036758A1 (en) * 2006-03-31 2008-02-14 Intelisum Inc. Systems and methods for determining a global or local position of a point of interest within a scene using a three-dimensional model of the scene
EP2208391B1 (en) * 2007-10-12 2011-06-22 Nokia Corporation Determining whether a wireless communication node is stationary by evaluating changes in information about peer wireless communication nodes
US8467804B2 (en) * 2007-10-16 2013-06-18 Sony Corporation Mobile terminals and methods for regulating power-on/off of a GPS positioning circuit
US8554249B2 (en) * 2009-12-08 2013-10-08 Microsoft Corporation Location service for wireless devices
US20110244798A1 (en) * 2010-02-24 2011-10-06 Wherepro, Llc Data Packet Generator and Implementations of Same
US9185652B2 (en) * 2011-12-22 2015-11-10 Broadcom Corporation Bluetooth low energy module systems and methods
US20130217333A1 (en) * 2012-02-22 2013-08-22 Qualcomm Incorporated Determining rewards based on proximity of devices using short-range wireless broadcasts
US9661443B2 (en) * 2012-04-05 2017-05-23 Nokia Technologies Oy Method, apparatus, and computer program product for data distribution in wireless networks
CN103024154B (zh) * 2012-11-29 2014-07-16 北京购阿购技术服务有限公司 移动智能设备室内定位方法
US9179254B1 (en) * 2014-07-10 2015-11-03 Google Inc. Motion detection with bluetooth low energy scan

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8560229B1 (en) 2010-09-15 2013-10-15 Google Inc. Sensor based activity detection
US20120258669A1 (en) 2011-04-07 2012-10-11 Nokia Corporation FACILITATING POSITIONING THROUGH BlUETOOTH LOW ENERGY WIRELESS MESSAGING
US20140087752A1 (en) 2012-09-26 2014-03-27 Hewlett-Packard Development Company, L.P. Bluetooth beacon based location determination
WO2014087196A1 (en) 2012-12-07 2014-06-12 Nokia Corporation Handling packet data units

Also Published As

Publication number Publication date
JP6359126B2 (ja) 2018-07-18
JP2017526035A (ja) 2017-09-07
EP3167666A4 (en) 2018-03-07
EP3167666A1 (en) 2017-05-17
AU2015287904A1 (en) 2016-11-17
US9686643B2 (en) 2017-06-20
WO2016007627A1 (en) 2016-01-14
KR20170018018A (ko) 2017-02-15
AU2015287904B2 (en) 2018-07-05
US9179254B1 (en) 2015-11-03
CN106664678A (zh) 2017-05-10
US20160021499A1 (en) 2016-01-21
CN106664678B (zh) 2020-05-05

Similar Documents

Publication Publication Date Title
KR101795993B1 (ko) 블루투스 저 에너지 스캔을 통한 모션 검출
US9107026B1 (en) Range management with Bluetooth low energy
US9699593B2 (en) Scanning enhancements for short-range wireless devices
EP3183627B1 (en) Multi-device sensor subsystem joint optimization
US10356561B2 (en) Tracking a person in a group of people
US10244542B2 (en) Mobile communication device clustering
US11490375B2 (en) Downlink control channel transmission method and apparatus
US20150065053A1 (en) Method of controlling short-range wireless communication and apparatus supporting the same
US9326093B2 (en) Virtual bluetooth controller interfaces
WO2015118753A1 (ja) 情報処理装置、情報処理方法、および記憶媒体
US9501238B2 (en) Electronic device and method of managing memory of electronic device
KR102514593B1 (ko) Rf 핑거프린트 구축 방법 및 장치
US20140269569A1 (en) Apparatuses and methods for data transmission and reception
US8725089B2 (en) First hub and second hub communicating by temporal connection between different wireless body area networks (WBANs) and communication method thereof
EP3087494A1 (en) Method for using magnetometer together with gesture to send content to wireless display
US20150103738A1 (en) Selecting an access point for determining position of a device based on traffic load information
CN105379343A (zh) 用于发送数据的方法和装置
KR102536586B1 (ko) 와이파이 통신을 사용하는 전자 장치와 이의 동작 방법
KR102531062B1 (ko) 액세스 포인트의 위치 추적 방법 및 이를 위한 전자 장치
US9420397B1 (en) Configuring a mobile device to scan for available wireless access points when wireless data communication is disabled
US20240306120A1 (en) Management of peripheral devices using wireless beacon signals
US20190206224A1 (en) Management methods and systems for suitcase reminder
KR20220162375A (ko) 레인징 동작을 수행하는 전자 장치 및 그 동작 방법
KR20230064495A (ko) 지오펜스를 이용하는 전자 장치 및 동작 방법

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant