KR102396343B1 - 전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치 - Google Patents

전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치 Download PDF

Info

Publication number
KR102396343B1
KR102396343B1 KR1020170150609A KR20170150609A KR102396343B1 KR 102396343 B1 KR102396343 B1 KR 102396343B1 KR 1020170150609 A KR1020170150609 A KR 1020170150609A KR 20170150609 A KR20170150609 A KR 20170150609A KR 102396343 B1 KR102396343 B1 KR 102396343B1
Authority
KR
South Korea
Prior art keywords
electronic device
information
movement
user
state
Prior art date
Application number
KR1020170150609A
Other languages
English (en)
Other versions
KR20190054400A (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 삼성전자주식회사
Priority to KR1020170150609A priority Critical patent/KR102396343B1/ko
Priority to US16/763,039 priority patent/US11368828B2/en
Priority to PCT/KR2018/013333 priority patent/WO2019093730A1/ko
Publication of KR20190054400A publication Critical patent/KR20190054400A/ko
Application granted granted Critical
Publication of KR102396343B1 publication Critical patent/KR102396343B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • H04W4/48Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P] for in-vehicle communication
    • 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/025Services making use of location information using location based information parameters
    • 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/16Sound input; Sound output
    • 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/16Sound input; Sound output
    • G06F3/167Audio in a user interface, e.g. using voice commands for navigating, audio feedback
    • 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/025Services making use of location information using location based information parameters
    • H04W4/027Services making use of location information using location based information parameters using movement velocity, acceleration information
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/30Services specially adapted for particular environments, situations or purposes
    • H04W4/40Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/02Terminal devices

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • General Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Multimedia (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

본 발명의 다양한 실시 예들은 웨이브(WAVE, wireless access in vehicular environments) 통신에서, 전자 장치의 상태에 관련된 정보를 획득하여 제공하는 방법 및 장치에 관하여 개시한다. 본 발명의 다양한 실시 예들에 따르면, 전자 장치에 있어서, 통신 모듈, 적어도 하나의 센서, 및 프로세서를 포함하고, 상기 프로세서는, 상기 적어도 하나의 센서를 이용하여 상기 전자 장치의 움직임과 관련된 상태를 확인하고, 상기 움직임과 관련된 상기 상태를 확인하는 동작은 상기 움직임과 관련된 정보를 상기 통신 모듈을 이용하여 외부 전자 장치로 전송하는 동작을 포함하고, 및 상기 움직임과 관련된 상기 상태가 변경되는 경우, 상기 움직임과 관련된 정보 및 상기 상태 변경과 관련된 정보를 상기 통신 모듈을 이용하여 상기 외부 전자 장치로 전송하도록 구성할 수 있다. 다양한 실시 예들이 가능하다.

Description

전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치{METHOD AND APPARATUS FOR TRANSMITTING DATA BASED ON A CHANGE IN STATE ASSOCIATED WITH MOVEMENT OF ELECTRONIC DEVICE}
본 발명의 다양한 실시 예들은 웨이브(WAVE, wireless access in vehicular environments) 통신에서, 전자 장치의 상태에 관련된 정보를 획득하여 제공하는 방법 및 장치에 관하여 개시한다.
최근 디지털 기술의 발달과 함께 이동통신 단말기, 스마트폰(smart phone), 태블릿(tablet) PC(personal computer), 노트북(notebook), PDA(personal digital assistant), 웨어러블 장치(wearable device), 디지털 카메라(digital camera), 또는 차량 제어 장치 등과 같은 다양한 유형의 전자 장치가 널리 사용되고 있다. 웨이브 통신 기술은, 차량과 사물 간 통신(V2X(vehicle to everything) communication)에 관한 것으로, 예를 들면, 차량과 차량(V2V, vehicle to vehicle) 간의 무선 통신, 차량과 인프라(V2I, vehicle to infrastructure) 간 무선 통신, 차량 내 유무선 네트워킹(IVN, in-vehicle networking), 또는 차량과 이동 단말(또는 보행자, 사용자)(V2P, vehicle to pedestrian) 간 무선 통신 등을 포함할 수 있다. 최근에는, 웨이브 통신(또는 V2X 통신) 기술을 이용하여 차량과 도로의 정보 환경, 안정성, 및 편리성 등을 향상시키기 위한 서비스들이 개발 및 사용되고 있다.
웨이브 통신에서는, 전자 장치(또는 전자 장치의 사용자)의 이동 상황에 대해, 추가 설정이 없는 경우, 기본적인 이동 상황에 관련된 단순한 정보만을 외부로 송출하도록 하고 있다. 따라서, 종래에는 전자 장치의 이동 상황에 대한 자세한 정보를 외부로 전달이 필요한 경우, 사용자가 전자 장치를 조작하여 관련 정보를 직접 입력하여 미리 설정해 두어야 하는 불편함이 있고, 만약, 자세한 정보가 미리 입력되지 않은 경우 사용자가 이동하는 상황에서 해당 정보를 입력해야 함에 따라 사용자의 안전을 위협하는 상황을 초래할 수 있다. 또한, 이러한 불편함으로 인해, 사용자의 안전을 위해 제공하는 서비스의 활용성 또는 사용성이 떨어지는 문제가 있다.
다양한 실시 예들에서는, 전자 장치가 웨이브(wave) 통신을 수행할 때, 기본 정보를 송출하던 상황과, 추가 정보를 송출해야 하는 상황을 구분하고, 이동 상황에 맞추어 전자 장치의 상태에 관련된 정보를 정확하게 전달할 수 있도록 하는 방법 및 장치에 관하여 개시한다.
다양한 실시 예들에서는, 전자 장치의 웨이브 통신 시 추가 정보를 송출해야 하는 상황을 모니터링 하고, 추가 정보를 위한 상황이 발생하는 경우, 해당 상황에 대한 피드백을 사용자에게 제공하여, 추가 정보에 대해 보다 간단하고, 빠르고, 안전하게 사용자의 입력이 가능하도록 하는 방법 및 장치에 관하여 개시한다.
본 발명의 다양한 실시 예들에 따른 전자 장치는, 통신 모듈, 적어도 하나의 센서, 및 프로세서를 포함하고, 상기 프로세서는, 상기 적어도 하나의 센서를 이용하여 상기 전자 장치의 움직임과 관련된 상태를 확인하고, 상기 움직임과 관련된 상기 상태를 확인하는 동작은 상기 움직임과 관련된 정보를 상기 통신 모듈을 이용하여 외부 전자 장치로 전송하는 동작을 포함하고, 및 상기 움직임과 관련된 상기 상태가 변경되는 경우, 상기 움직임과 관련된 정보 및 상기 상태의 변경과 관련된 정보를 상기 통신 모듈을 이용하여 상기 외부 전자 장치로 전송하도록 구성할 수 있다.
본 발명의 다양한 실시 예들에 따른 전자 장치의 동작 방법은, 적어도 하나의 센서를 이용하여 상기 전자 장치의 움직임과 관련된 상태를 확인하는 동작, 상기 움직임과 관련된 상기 상태가 변경되는 경우, 상기 움직임과 관련된 정보 및 상기 상태의 변경과 관련된 정보를 통신 모듈을 이용하여 외부 전자 장치로 전송하는 동작을 포함하고, 상기 움직임과 관련된 상기 상태를 확인하는 동작은, 상기 움직임과 관련된 정보를 상기 통신 모듈을 이용하여 상기 외부 전자 장치로 전송하는 동작을 포함할 수 있다.
상기와 같은 과제를 해결하기 위하여 본 발명의 다양한 실시 예들에서는, 상기 방법을 프로세서에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 판독 가능한 기록 매체를 포함할 수 있다.
다양한 실시 예들에 따른 전자 장치 및 그의 동작 방법에 따르면, 전자 장치의 움직임과 관련된 상태의 변경을 검출하는 것에 기반하여 사용자에게 추가 정보에 대한 가이드 및 요청을, 사용자 상황에 맞게 제공할 수 있다. 다양한 실시 예들에 따르면, 전자 장치는 움직임과 관련된 상태를 모니터링 하고, 모니터링 하는 결과에 기반하여 추가 정보에 대한 실시간 제공 및 사용자에 의한 간단하고 정확한 입력이 가능하도록 할 수 있다. 이를 통해, 웨이브 통신에 따른 서비스의 품질을 향상할 수 있고, 사용자의 안전을 위한 보다 품질 높은 서비스를 제공할 수 있다.
도 1은 다양한 실시 예들에 따른 네트워크 환경 내의 전자 장치의 블럭도이다.
도 2는 다양한 실시 예들에 따른 통합 지능화 시스템의 지능형 서버를 나타낸 블럭도이다.
도 3은 다양한 실시 예들에 따른 전자 장치에서 기능 처리 모듈의 예를 도시하는 도면이다.
도 4는 다양한 실시 예들에 따른 전자 장치에서 제공하는 데이터 패킷의 예를 도시하는 도면이다.
도 5는 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 6은 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 7은 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 8은 다양한 실시 예들에 따른 전자 장치에서 데이터를 획득하는 동작 방법을 도시하는 흐름도이다.
도 9는 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 10은 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 11은 다양한 실시 예들에 따른 전자 장치에서 외부 전자 장치로부터 데이터를 획득하는 예를 설명하기 위해 도시하는 도면이다.
도 12는 다양한 실시 예들에 다른 전자 장치의 동작 방법을 도시하는 흐름도이다.
이하, 본 문서의 다양한 실시 예들이 첨부된 도면을 참조하여 기재된다. 실시 예 및 이에 사용된 용어들은 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 해당 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성 요소에 대해서는 유사한 참조 부호가 사용될 수 있다. 그리고 본 발명에 개시된 실시 예는 개시된 기술 내용의 설명 및 이해를 위해 제시된 것이며, 본 발명에서 기재된 기술의 범위를 한정하는 것은 아니다. 따라서, 본 발명의 범위는, 본 발명의 기술적 사상에 근거한 모든 변경 또는 다양한 다른 실시 예들을 포함하는 것으로 해석되어야 한다.
도 1은 다양한 실시 예들에 따른 네트워크 환경(100) 내의 전자 장치(101)의 블럭도이다.
도 1을 참조하면, 네트워크 환경(100)에서 전자 장치(101)는 제1 네트워크(198)(예: 근거리 무선 통신)를 통하여 전자 장치(102)와 통신하거나, 또는 제2 네트워크(199)(예: 원거리 무선 통신)를 통하여 전자 장치(104) 또는 서버(108)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 서버(108)를 통하여 전자 장치(104)와 통신할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 프로세서(120), 메모리(130), 입력 장치(150), 음향 출력 장치(155), 표시 장치(160), 오디오 모듈(170), 센서 모듈(176), 인터페이스(177), 햅틱 모듈(179), 카메라 모듈(180), 전력 관리 모듈(188), 배터리(189), 통신 모듈(190), 가입자 식별 모듈(196), 및 안테나 모듈(197)을 포함할 수 있다. 어떤 실시 예에서는, 전자 장치(101)에는, 이 구성 요소들 중 적어도 하나(예: 표시 장치(160) 또는 카메라 모듈(180))가 생략되거나 다른 구성 요소가 추가될 수 있다. 어떤 실시 예에서는, 예를 들면, 표시 장치(160)(예: 디스플레이)에 임베디드(embedded)된 센서 모듈(176)(예: 지문 센서, 홍채 센서, 또는 조도 센서)의 경우와 같이, 일부의 구성 요소들이 통합되어 구현될 수 있다.
프로세서(120)는, 예를 들면, 소프트웨어(예: 프로그램(140))를 구동하여 프로세서(120)에 연결된 전자 장치(101)의 적어도 하나의 다른 구성 요소(예: 하드웨어 또는 소프트웨어 구성 요소)를 제어할 수 있고, 다양한 데이터 처리 및 연산을 수행할 수 있다. 프로세서(120)는 다른 구성 요소(예: 센서 모듈(176) 또는 통신 모듈(190))로부터 수신된 명령 또는 데이터를 휘발성 메모리(volatile memory)(132)에 로드(load)하여 처리하고, 결과 데이터를 비휘발성 메모리(non-volatile memory)(134)에 저장할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 메인 프로세서(121)(예: 중앙 처리 장치(CPU, central processing unit) 또는 어플리케이션 프로세서(AP, application processor)), 및 이와는 독립적으로 운영되고, 추가적으로 또는 대체적으로, 메인 프로세서(121)보다 저전력을 사용하거나, 또는 지정된 기능에 특화된 보조 프로세서(123)(예: 그래픽 처리 장치(GPU, graphic processing unit), 이미지 시그널 프로세서(ISP, image signal processor), 센서 허브 프로세서(sensor hub processor), 또는 커뮤니케이션 프로세서(CP, communication processor))를 포함할 수 있다. 여기서, 보조 프로세서(123)는 메인 프로세서(121)와 별개로 또는 임베디드되어 운영될 수 있다.
이런 경우, 보조 프로세서(123)는, 예를 들면, 메인 프로세서(121)가 인액티브(inactive)(예: 슬립(sleep)) 상태에 있는 동안 메인 프로세서(121)를 대신하여, 또는 메인 프로세서(121)가 액티브(active)(예: 어플리케이션 수행) 상태에 있는 동안 메인 프로세서(121)와 함께, 전자 장치(101)의 구성 요소들 중 적어도 하나의 구성 요소(예: 표시 장치(160), 센서 모듈(176), 또는 통신 모듈(190))과 관련된 기능 또는 상태들의 적어도 일부를 제어할 수 있다. 일 실시 예에 따르면, 보조 프로세서(123)(예: 이미지 시그널 프로세서 또는 커뮤니케이션 프로세서)는 기능적으로 관련 있는 다른 구성 요소(예: 카메라 모듈(180) 또는 통신 모듈(190))의 일부 구성 요소로서 구현될 수 있다.
메모리(130)는, 전자 장치(101)의 적어도 하나의 구성 요소(예: 프로세서(120) 또는 센서모듈(176))에 의해 사용되는 다양한 데이터, 예를 들어, 소프트웨어(예: 프로그램(140)) 및, 이와 관련된 명령에 대한 입력 데이터 또는 출력 데이터를 저장할 수 있다. 메모리(130)는, 휘발성 메모리(132) 또는 비휘발성 메모리(134)를 포함할 수 있다.
프로그램(140)은 메모리(130)에 저장되는 소프트웨어로서, 예를 들면, 운영 체제(OS, operating system)(142), 미들 웨어(middleware)(144) 또는 어플리케이션(146)을 포함할 수 있다.
입력 장치(150)는, 전자 장치(101)의 구성 요소(예: 프로세서(120))에 사용될 명령 또는 데이터를 전자 장치(101)의 외부(예: 사용자)로부터 수신하기 위한 장치로서, 예를 들면, 마이크, 마우스, 또는 키보드 등을 포함할 수 있다.
음향 출력 장치(155)는 음향 신호를 전자 장치(101)의 외부로 출력하기 위한 장치로서, 예를 들면, 멀티미디어 재생 또는 녹음 재생과 같이 일반적인 용도로 사용되는 스피커와 전화 수신 전용으로 사용되는 리시버(receiver)를 포함할 수 있다. 일 실시 예에 따르면, 리시버는 스피커와 일체 또는 별도로 형성될 수 있다.
표시 장치(160)는 전자 장치(101)의 사용자에게 정보를 시각적으로 제공하기 위한 장치로서, 예를 들면, 디스플레이, 홀로그램 장치, 또는 프로젝터 및 해당 장치를 제어하기 위한 제어 회로를 포함할 수 있다. 일 실시 예에 따르면, 표시 장치(160)는 터치 회로(touch circuitry) 또는 터치에 대한 압력의 세기를 측정할 수 있는 압력 센서(pressure sensor)(또는 포스 센서(force sensor))를 포함할 수 있다.
오디오 모듈(170)은 소리와 전기 신호를 쌍방향으로 변환시킬 수 있다. 일 실시 예에 따르면, 오디오 모듈(170)은, 입력 장치(150)를 통해 소리를 획득하거나, 음향 출력 장치(155), 또는 전자 장치(101)와 유선 또는 무선으로 연결된 외부 전자 장치(예: 전자 장치(102)(예: 스피커 또는 헤드폰))를 통해 소리를 출력할 수 있다.
센서 모듈(176)은 전자 장치(101)의 내부의 작동 상태(예: 전력 또는 온도), 또는 외부의 환경 상태에 대응하는 전기 신호 또는 데이터 값을 생성할 수 있다. 센서 모듈(176)은, 예를 들면, 제스처 센서(gesture sensor), 자이로 센서(gyro sensor), 기압 센서(barometer sensor), 마그네틱 센서(magnetic sensor), 가속도 센서(acceleration sensor), 그립 센서(grip sensor), 근접 센서(proximity sensor), 컬러 센서(color sensor)(예: RGB(red, green, blue) 센서), IR(infrared) 센서, 생체 센서(medical sensor, biometric sensor), 온도 센서(temperature sensor), 습도 센서(humidity sensor), 또는 조도 센서(illuminance sensor) 등을 포함할 수 있다.
인터페이스(177)는 외부 전자 장치(예: 전자 장치(102))와 유선 또는 무선으로 연결할 수 있는 지정된 프로토콜(protocol)을 지원할 수 있다. 일 실시 예에 따르면, 인터페이스(177)는 HDMI(high definition multimedia interface), USB(universal serial bus) 인터페이스, SD(secure digital) 카드 인터페이스, 또는 오디오 인터페이스 등을 포함할 수 있다.
연결 단자(connection terminal)(178)는 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102))를 물리적으로 연결시킬 수 있는 커넥터, 예를 들면, HDMI 커넥터, USB 커넥터, SD 카드 커넥터, 또는 오디오 커넥터(예: 헤드폰 커넥터) 등을 포함할 수 있다.
햅틱 모듈(haptic module)(179)은 전기적 신호를 사용자가 촉각 또는 운동 감각을 통해서 인지할 수 있는 기계적인 자극(예: 진동 또는 움직임) 또는 전기적인 자극으로 변환할 수 있다. 햅틱 모듈(179)은, 예를 들면, 모터(motor), 압전 소자(piezoelectric element), 또는 전기 자극 장치(electrical stimulation device) 등을 포함할 수 있다.
카메라 모듈(180)은 정지 영상 및 동영상을 촬영할 수 있다. 일 실시 예에 따르면, 카메라 모듈(180)은 하나 이상의 렌즈, 이미지 센서, 이미지 시그널 프로세서, 또는 플래시를 포함할 수 있다.
전력 관리 모듈(188)은 전자 장치(101)에 공급되는 전력을 관리하기 위한 모듈로서, 예를 들면, PMIC(power management integrated circuit)의 적어도 일부로서 구성될 수 있다.
배터리(189)는 전자 장치(101)의 적어도 하나의 구성 요소에 전력을 공급하기 위한 장치로서, 예를 들면, 재충전 불가능한 1차 전지, 재충전 가능한 2차 전지 또는 연료 전지(fuel cell)를 포함할 수 있다.
통신 모듈(190)은 전자 장치(101)와 외부 전자 장치(예: 전자 장치(102), 전자 장치(104), 또는 서버(108)) 간의 유선 또는 무선 통신 채널의 수립, 및 수립된 통신 채널을 통한 통신 수행을 지원할 수 있다. 통신 모듈(190)은 프로세서(120)(예: 어플리케이션 프로세서)와 독립적으로 운영되는, 유선 통신 또는 무선 통신을 지원하는 하나 이상의 커뮤니케이션 프로세서를 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)은 무선 통신 모듈(192)(예: 셀룰러 통신 모듈, 근거리 무선 통신 모듈, 또는 GNSS(global navigation satellite system) 통신 모듈) 또는 유선 통신 모듈(194)(예: LAN(local area network) 통신 모듈, 또는 전력선 통신 모듈)을 포함하고, 그 중 해당하는 통신 모듈을 이용하여 제1 네트워크(198)(예: 블루투스, WiFi direct 또는 IrDA(infrared data association) 같은 근거리 통신 네트워크) 또는 제2 네트워크(199)(예: 셀룰러 네트워크, 인터넷, 또는 컴퓨터 네트워크(예: LAN 또는 WAN(wide area network))와 같은 원거리 통신 네트워크)를 통하여 외부 전자 장치와 통신할 수 있다. 상술한 여러 종류의 통신 모듈(190)은 하나의 칩으로 구현되거나 또는 각각 별도의 칩으로 구현될 수 있다.
일 실시 예에 따르면, 무선 통신 모듈(192)은 가입자 식별 모듈(196)에 저장된 사용자 정보를 이용하여 통신 네트워크 내에서 전자 장치(101)를 구별 및 인증할 수 있다.
안테나 모듈(197)은 신호 또는 전력을 외부로 송신하거나 외부로부터 수신하기 위한 하나 이상의 안테나들을 포함할 수 있다. 일 실시 예에 따르면, 통신 모듈(190)(예: 무선 통신 모듈(192))은 통신 방식에 적합한 안테나를 통하여 신호를 외부 전자 장치로 송신하거나, 외부 전자 장치로부터 수신할 수 있다.
상기 구성 요소들 중 일부 구성 요소들은 주변 기기들간 통신 방식(예: 버스, GPIO(general purpose input/output), SPI(serial peripheral interface), 또는 MIPI(mobile industry processor interface))를 통해 서로 연결되어 신호(예: 명령 또는 데이터)를 상호 간에 교환할 수 있다.
일 실시 예에 따르면, 명령 또는 데이터는 제2 네트워크(199)에 연결된 서버(108)를 통해서 전자 장치(101)와 외부의 전자 장치(104) 간에 송신 또는 수신될 수 있다. 전자 장치(102, 104) 각각은 전자 장치(101)와 동일한 또는 다른 종류의 장치일 수 있다.
일 실시 예에 따르면, 전자 장치(101)에서 실행되는 동작들의 전부 또는 일부는 다른 하나 또는 복수의 외부 전자 장치(102, 104)에서 실행될 수 있다. 일 실시 예에 따르면, 전자 장치(101)가 어떤 기능이나 서비스를 자동으로 또는 요청에 의하여 수행해야 할 경우에, 전자 장치(101)는 기능 또는 서비스를 자체적으로 실행시키는 대신에 또는 추가적으로, 그와 연관된 적어도 일부 기능을 외부 전자 장치(102, 104)에게 요청할 수 있다. 상기 요청을 수신한 외부 전자 장치(102, 104)는 요청된 기능 또는 추가 기능을 실행하고, 그 결과를 전자 장치(101)로 전달할 수 있다. 전자 장치(101)는 수신된 결과를 그대로 또는 추가적으로 처리하여 요청된 기능이나 서비스를 제공할 수 있다. 이를 위하여, 예를 들면, 클라우드 컴퓨팅(cloud computing), 분산 컴퓨팅(distributed computing), 또는 클라이언트-서버 컴퓨팅(client-server computing) 기술이 이용될 수 있다.
도 2는 다양한 실시 예들에 따른 통합 지능화 시스템의 지능형 서버를 나타낸 블럭도이다.
다양한 실시 예들에서, 통합 지능화 시스템은, 예를 들면, 전자 장치(101)(예: 사용자 단말)와 지능형 서버(intelligence server)(200)(예: 도1의 서버(108))를 포함할 수 있다. 다양한 실시 예들에서는 도시하지 않았으나, 통합 지능화 시스템은, 개인화 정보 서버(미도시) 또는 제안 서버(400) 등을 더 포함할 수 있다.
일 실시 예에 따라, 지능형 서버(200)는 통신 네트워크를 통해 전자 장치(101)로부터 사용자 음성 입력(voice input)을 수신하여 텍스트 데이터(text data)로 변경할 수 있다. 지능형 서버(200)는 텍스트 데이터에 기초하여 패스 룰(path rule)을 생성(또는 선택)할 수 있다. 패스 룰은 어플리케이션(또는 앱)의 기능을 수행하기 위한 동작(action)(또는 오퍼레이션(operation))에 대한 정보 또는 동작을 실행하기 위해 필요한 파라미터(parameter)에 대한 정보를 포함할 수 있다. 또한, 패스 룰은 어플리케이션의 동작의 순서를 포함할 수 있다. 전자 장치(101)는 지능형 서버(200)로부터 패스 룰을 수신하고, 수신된 패스 룰에 따라 관련 어플리케이션을 선택하고, 선택된 어플리케이션에서 패스 룰에 포함된 동작을 실행시킬 수 있다.
본 문서의 “패스 룰(path rule)” 이라는 용어는 일반적으로, 전자 장치(101)가 사용자에 의해 요청된 태스크(task)를 수행하기 위한 상태들의 시퀀스(sequence)를 의미할 수 있지만, 이에 제한되지 않는다. 다시 말해, 패스 룰은 상태들의 시퀀스에 대한 정보를 포함할 수 있다. 태스크는, 예를 들어, 지능형 어플리케이션이 제공할 수 있는 어떠한 동작(action)일 수 있다. 태스크는 일정을 생성하거나, 원하는 상대방에게 사진을 전송하거나, 날씨 정보를 제공하는 것을 포함 할 수 있다. 전자 장치(101)는 적어도 하나의 상태(예: 전자 장치(101)의 동작 상태)를 순차적으로 가짐으로써, 태스크를 수행할 수 있다.
다양한 실시 예들에 따르면, 패스 룰은 인공지능(AI, artificial intelligent) 시스템에 의해 제공되거나, 생성될 수 있다. 인공지능 시스템은 룰 베이스 시스템(rule-based system) 일 수도 있고, 신경망 베이스 시스템(neural network-based system)(예: 피드포워드 신경망(FNN, feedforward neural network), 순환 신경망(RNN, recurrent neural network) 등) 일 수도 있다. 또는 전술한 것의 조합 또는 이와 다른 인공지능 시스템일 수도 있다. 일 실시 예에 따르면, 패스 룰은 미리 정의된 패스 룰들의 집합에서 선택될 수 있거나, 사용자 요청에 응답하여 실시간으로 생성될 수 있다. 예를 들어, 인공지능 시스템은 미리 정의된 복수의 패스 룰들 중 적어도 하나의 패스 룰을 선택하거나, 동적(또는 실시간)으로 패스 룰을 생성할 수 있다. 또한, 전자 장치(101)는 패스 룰을 제공하기 위해 하이브리드 시스템을 사용할 수 있다.
일 실시 예에 따르면, 전자 장치(101)는 전술한 동작을 실행하고, 동작을 실행한 전자 장치(101)의 상태에 대응되는 화면을 표시 장치(160)(예: 디스플레이)에 표시할 수 있다. 다른 예를 들어, 전자 장치(101)는 전술한 동작을 실행하고, 동작을 수행한 결과를 표시 장치(160)에 표시하지 않을 수 있다. 전자 장치(101)는, 예를 들어, 복수의 동작들을 실행하고, 복수의 동작들의 일부 결과만을 표시 장치(160)에 표시할 수 있다. 전자 장치(101)는, 예를 들어, 마지막 순서의 동작을 실행한 결과만을 표시 장치(160)에 표시할 수 있다. 또 다른 예를 들어, 전자 장치(101)는 사용자의 입력을 수신하여 동작을 실행한 결과를 표시 장치(160)에 표시할 수 있다.
일 실시 예에 따라, 개인화 정보 서버는 사용자 정보가 저장된 데이터베이스를 포함할 수 있다. 예를 들어, 개인화 정보 서버는 전자 장치(101)로부터 사용자 정보(예: 컨텍스트 정보, 어플리케이션 실행 정보 등)를 수신하여 데이터베이스에 저장할 수 있다. 지능형 서버(200)는 통신 네트워크를 통해 개인화 정보 서버로부터 사용자 정보를 수신하여 사용자 입력에 대한 패스 룰을 생성하는 경우에 이용할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 통신 네트워크를 통해 개인화 정보 서버로부터 사용자 정보를 수신하여 데이터베이스를 관리하기 위한 정보로 이용할 수 있다.
일 실시 예에 따라, 제안 서버는 단말 내에 기능 또는 어플리케이션의 소개(또는 제공)될 기능에 대한 정보가 저장된 데이터베이스를 포함할 수 있다. 예를 들어, 제안 서버는 개인화 정보 서버로부터 전자 장치(101)의 사용자 정보를 수신하여 사용자가 사용 할 수 있는 기능에 대한 데이터베이스를 포함할 수 있다. 전자 장치(101)는 통신 네트워크를 통해 제안 서버로부터 제공될 기능에 대한 정보를 수신하여 사용자에게 정보를 제공할 수 있다.
도 2를 참조하면, 지능형 서버(200)는 자동 음성 인식(ASR, automatic speech recognition) 모듈(210), 자연어 이해(NLU, natural language understanding) 모듈(220), 패스 플래너(path planner) 모듈(230), 대화 매니저(DM, dialogue manager) 모듈(240), 자연어 생성(NLG, natural language generator) 모듈(250), 또는 텍스트 음성 변환(TTS, text to speech) 모듈(260) 등을 포함할 수 있다. 일 실시 예에 따르면, 지능형 서버(200)는 통신 회로, 메모리 및 프로세서를 포함할 수 있다. 프로세서는 메모리에 저장된 명령어를 실행하여 ASR 모듈(210), NLU 모듈(220), 패스 플래너 모듈(230), DM 모듈(240), NLG 모듈(250) 및 TTS 모듈(260)을 구동시킬 수 있다. 지능형 서버(200)는 통신 회로를 통해 외부 전자 장치(예: 전자 장치(101))와 데이터(또는 정보)를 송수신할 수 있다.
지능형 서버(200)의 NLU 모듈(220) 또는 패스 플래너 모듈(230)은 패스 룰(PR, path rule)을 생성할 수 있다.
일 실시 예에 따르면, ASR 모듈(210)은 전자 장치(101)로부터 수신된 사용자 입력(예: 음성)을 텍스트 데이터로 변환할 수 있다. 예를 들어, ASR 모듈(210)은 발화 인식 모듈을 포함할 수 있다. 발화 인식 모듈은 음향(acoustic) 모델 및 언어(language) 모델을 포함할 수 있다. 예를 들어, 음향 모델은 발성에 관련된 정보를 포함할 수 있고, 언어 모델은 단위 음소 정보 및 단위 음소 정보의 조합에 대한 정보를 포함할 수 있다. 발화 인식 모듈은 발성에 관련된 정보 및 단위 음소 정보에 대한 정보를 이용하여 사용자 발화를 텍스트 데이터로 변환할 수 있다. 음향 모델 및 언어 모델에 대한 정보는, 예를 들어, ASR 데이터베이스(ASR database)(211)에 저장될 수 있다.
일 실시 예에 따르면, NLU 모듈(220)은 문법적 분석(syntactic analyze) 또는 의미적 분석(semantic analyze)을 수행하여 사용자 의도를 파악할 수 있다. 문법적 분석은 사용자 입력을 문법적 단위(예: 단어, 구, 형태소 등)로 나누고, 나누어진 단위가 어떤 문법적인 요소를 갖는지 파악할 수 있다. 의미적 분석은 의미(semantic) 매칭, 룰(rule) 매칭, 포뮬러(formula) 매칭 등을 이용하여 수행할 수 있다. 이에 따라, NLU 모듈(220)은 사용자 입력이 어느 도메인(domain), 의도(intent) 또는 의도를 표현하는데 필요한 파라미터(parameter)(또는 슬롯(slot))를 획득할 수 있다.
일 실시 예에 따르면, NLU 모듈(220)은 도메인(domain), 의도(intend) 및 의도를 파악하는데 필요한 파라미터(parameter)(또는 슬롯(slot))로 나누어진 매칭 규칙을 이용하여 사용자의 의도 및 파라미터를 결정할 수 있다. 예를 들어, 하나의 도메인(예: 알람)은 복수의 의도들(예: 알람 설정, 알람 해제 등)을 포함할 수 있고, 하나의 의도는 복수의 파라미터들(예: 시간, 반복 횟수, 알람음 등)을 포함할 수 있다. 복수의 룰들은, 예를 들어, 하나 이상의 필수 요소 파라미터를 포함할 수 있다. 매칭 규칙은 NLU 데이터베이스(NLU DB)(221)에 저장될 수 있다.
일 실시 예에 따르면, NLU 모듈(220)은 형태소, 구 등의 언어적 특징(예: 문법적 요소)을 이용하여 사용자 입력으로부터 추출된 단어의 의미를 파악하고, 파악된 단어의 의미를 도메인 및 의도에 매칭시켜 사용자의 의도를 결정할 수 있다. 예를 들어, 자NLU 모듈(220)은 각각의 도메인 및 의도에 사용자 입력에서 추출된 단어가 얼마나 포함되어 있는 지를 계산하여 사용자 의도를 결정할 수 있다. 일 실시 예에 따르면, NLU 모듈(220)은 의도를 파악하는데 기초가 된 단어를 이용하여 사용자 입력의 파라미터를 결정할 수 있다. 일 실시 예에 따르면, NLU 모듈(220)은 사용자 입력의 의도를 파악하기 위한 언어적 특징이 저장된 NLU 데이터베이스(221)를 이용하여 사용자의 의도를 결정할 수 있다. 다른 실시 예에 따르면, NLU 모듈(220)은 개인화 언어 모델(PLM, personal language model)을 이용하여 사용자의 의도를 결정할 수 있다. 예를 들어, NLU 모듈(220)은 개인화된 정보(예: 연락처 리스트, 음악 리스트)를 이용하여 사용자의 의도를 결정할 수 있다. 개인화 언어 모델은, 예를 들어, NLU 데이터베이스(221)에 저장될 수 있다. 일 실시 예에 따르면, NLU 모듈(220)뿐만 아니라 ASR 모듈(210)도 NLU 데이터베이스(221)에 저장된 개인화 언어 모델을 참고하여 사용자의 음성을 인식할 수 있다.
일 실시 예에 따르면, NLU 모듈(220)은 사용자 입력의 의도 및 파라미터에 기초하여 패스 룰을 생성할 수 있다. 예를 들어, NLU 모듈(220)은 사용자 입력의 의도에 기초하여 실행될 어플리케이션을 선택하고, 선택된 어플리케이션에서 수행될 동작을 결정할 수 있다. NLU 모듈(220)은 결정된 동작에 대응되는 파라미터를 결정하여 패스 룰을 생성할 수 있다. 일 실시 예에 따르면, NLU 모듈(220)에 의해 생성된 패스 룰은 실행될 어플리케이션, 어플리케이션에서 실행될 동작(예: 적어도 하나 이상의 상태(state)) 및 동작을 실행하는데 필요한 파라미터에 대한 정보를 포함할 수 있다.
일 실시 예에 따르면, NLU 모듈(220)은 사용자 입력의 의도 및 파라미터를 기반으로 하나의 패스 룰, 또는 복수의 패스 룰들을 생성할 수 있다. 예를 들어, NLU 모듈(220)은 패스 플래너 모듈(230)로부터 전자 장치(101)에 대응되는 패스 룰 셋(set)을 수신하고, 사용자 입력의 의도 및 파라미터를 수신된 패스 룰 셋에 매핑하여 패스 룰을 결정할 수 있다.
다른 실시 예에 따르면, NLU 모듈(220)은 사용자 입력의 의도 및 파라미터에 기초하여 실행될 어플리케이션, 어플리케이션에서 실행될 동작 및 동작을 실행하는데 필요한 파라미터를 결정하여 하나의 패스 룰, 또는 복수의 패스 룰들을 생성할 수 있다. 예를 들어, NLU 모듈(220)은 전자 장치(101)의 정보를 이용하여 실행될 어플리케이션 및 어플리케이션에서 실행될 동작을 사용자 입력의 의도에 따라 온톨로지(ontology) 또는 그래프 모델(graph model) 형태로 배열하여 패스 룰을 생성할 수 있다. 생성된 패스 룰은, 예를 들어, 패스 플래너 모듈(230)을 통해 패스 룰(PR, path rule) 데이터베이스(PR DB)(231)에 저장될 수 있다. 생성된 패스 룰은 PR 데이터베이스(231)의 패스 룰 셋에 추가될 수 있다.
일 실시 예에 따르면, NLU 모듈(220)은 생성된 복수의 패스 룰들 중 적어도 하나의 패스 룰을 선택할 수 있다. 예를 들어, NLU 모듈(220)은 복수의 패스 룰들 중 최적의 패스 룰을 선택할 수 있다. 다른 예를 들어, NLU 모듈(220)은 사용자 발화에 기초하여 일부 동작만이 특정된 경우 복수의 패스 룰들을 선택할 수 있다. NLU 모듈(220)은 사용자의 추가 입력에 의해 복수의 패스 룰들 중 하나의 패스 룰을 결정할 수 있다.
일 실시 예에 따르면, NLU 모듈(220)은 사용자 입력에 대한 요청으로 패스 룰을 전자 장치(101)로 송신할 수 있다. 예를 들어, NLU 모듈(220)은 사용자 입력에 대응되는 하나의 패스 룰을 전자 장치(101)로 송신할 수 있다. 다른 예를 들어, NLU 모듈(220)은 사용자 입력에 대응되는 복수의 패스 룰들을 전자 장치(101)로 송신할 수 있다. 복수의 패스 룰들은, 예를 들어, 사용자 발화에 기초하여 일부 동작만이 특정된 경우 NLU 모듈(220)에 의해 생성될 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 복수의 패스 룰들 중 적어도 하나의 패스 룰을 선택할 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 NLU 모듈(220)로 복수의 패스 룰들을 포함하는 패스 룰 셋을 전달할 수 있다. 패스 룰 셋의 복수의 패스 룰들은 패스 플래너 모듈(230)에 연결된 PR 데이터베이스(231)에 테이블 형태로 저장될 수 있다. 예를 들어, 패스 플래너 모듈(230)은 전자 장치(101)(예: 전자 장치의 지능형 에이전트)로부터 수신된 전자 장치(101)의 정보(예: OS 정보, 어플리케이션 정보 등)에 대응되는 패스 룰 셋을 NLU 모듈(220)로 전달할 수 있다. PR 데이터베이스(231)에 저장된 테이블은, 예를 들어, 도메인 또는 도메인의 버전(version) 별로 저장될 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 패스 룰 셋에서 하나의 패스 룰, 또는 복수의 패스 룰들을 선택하여 NLU 모듈(220)로 전달할 수 있다. 예를 들어, 패스 플래너 모듈(230)은 사용자의 의도 및 파라미터를 전자 장치(101)에 대응되는 패스 룰 셋에 매칭하여 하나의 패스 룰, 또는 복수의 패스 룰들을 선택하여 NLU 모듈(220)로 전달할 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 사용자 의도 및 파라미터를 이용하여 하나의 패스 룰, 또는 복수의 패스 룰들을 생성할 수 있다. 예를 들어, 패스 플래너 모듈(230)은 사용자 의도 및 파라미터에 기초하여 실행될 어플리케이션 및 어플리케이션에서 실행될 동작을 결정하여 하나의 패스 룰, 또는 복수의 패스 룰들을 생성할 수 있다. 일 실시 예에 따르면, 패스 플래너 모듈(230)은 생성된 패스 룰을 PR 데이터베이스(231)에 저장할 수 있다.
일 실시 예에 따르면, 패스 플래너 모듈(230)은 NLU 모듈(220)에서 생성된 패스 룰을 PR 데이터베이스(231)에 저장할 수 있다. 생성된 패스 룰은 PR 데이터베이스(231)에 저장된 패스 룰 셋에 추가될 수 있다.
일 실시 예에 따르면, PR 데이터베이스(231)에 저장된 테이블에는 복수의 패스 룰들 또는 복수의 패스 룰 셋들을 포함할 수 있다. 복수의 패스 룰들 또는 복수의 패스 룰 셋들은 각 패스 룰을 수행하는 장치의 종류, 버전, 타입, 또는 특성을 반영할 수 있다.
일 실시 예에 따르면, DM 모듈(240)은 NLU 모듈(220)에 의해 파악된 사용자의 의도가 명확한지 여부를 판단할 수 있다. 예를 들어, DM 모듈(240)은 파라미터의 정보가 충분하지 여부에 기초하여 사용자의 의도가 명확한지 여부를 판단할 수 있다. DM 모듈(240)은 NLU 모듈(220)에서 파악된 파라미터가 태스크를 수행하는데 충분한지 여부를 판단할 수 있다. 일 실시 예에 따르면, DM 모듈(240)은 사용자의 의도가 명확하지 않은 경우 사용자에게 필요한 정보를 요청하는 피드백(feedback)을 수행할 수 있다. 예를 들어, DM 모듈(240)은 사용자의 의도를 파악하기 위한 파라미터에 대한 정보를 요청하는 피드백을 수행할 수 있다.
일 실시 예에 따르면, DM 모듈(240)은 컨텐츠 제공(content provider) 모듈을 포함할 수 있다. 컨텐츠 제공 모듈은 NLU 모듈(220)에서 파악된 의도 및 파라미터에 기초하여 동작을 수행할 수 있는 경우, 사용자 입력에 대응되는 태스크를 수행한 결과를 생성할 수 있다. 일 실시 예에 따르면, DM 모듈(240)은 사용자 입력에 대한 응답으로 컨텐츠 제공 모듈에서 생성된 결과를 전자 장치(101)로 송신할 수 있다.
일 실시 예에 따르면, NLG 모듈(250)은 지정된 정보를 텍스트 형태로 변경할 수 있다. 텍스트 형태로 변경된 정보는 자연어 발화의 형태일 수 있다. 지정된 정보는, 예를 들어, 추가 입력에 대한 정보, 사용자 입력에 대응되는 동작의 완료를 안내하는 정보, 또는 사용자의 추가 입력을 안내하는 정보(예: 사용자 입력에 대한 피드백 정보) 등을 포함할 수 있다. 텍스트 형태로 변경된 정보는 전자 장치(101)로 송신되어 전자 장치(101)의 표시 장치(160)에 표시되거나, TTS 모듈(260)로 송신되어 음성 형태로 변경될 수 있다.
일 실시 예에 따르면, TTS 모듈(260)은 텍스트 형태의 정보를 음성 형태의 정보로 변경할 수 있다. TTS 모듈(260)은 NLG 모듈(250)로부터 텍스트 형태의 정보를 수신하고, 텍스트 형태의 정보를 음성 형태의 정보로 변경하여 전자 장치(101)로 송신할 수 있다. 전자 장치(101)는 음성 형태의 정보를 전자 장치(101)의 음향 출력 장치(155)(예: 스피커)로 출력할 수 있다.
일 실시 예에 따르면, NLU 모듈(220), 패스 플래너 모듈(230) 및 DM 모듈(240)은 하나의 모듈로 구현될 수 있다. 예를 들어, NLU 모듈(220), 패스 플래너 모듈(230) 및 DM 모듈(240)은 하나의 모듈로 구현되어 사용자의 의도 및 파라미터를 결정하고, 결정된 사용자의 의도 및 파라미터에 대응되는 응답(예: 패스 룰)을 생성할 수 있다. 이에 따라, 생성된 응답은 전자 장치(101)로 송신될 수 있다.
다양한 실시 예들에 따르면, 전자 장치(101)(예: 전자 장치(101)의 어플리케이션(예: V2X safety application))은 안전에 관련된 메시지(또는 안전 관련 데이터)(예: PSM, personal safety message)를 생성 및 주변의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 방송(broadcasting) 하기 위해 전자 장치(101) 내의 센서(예: 센서 모듈(176)) 또는 외부 전자 장치로부터 수신한 데이터를 이용하여 메시지를 생성할 수 있다. 전자 장치(101)(또는 어플리케이션)는 메시지 생성 중 옵셔널 파라미터(optional parameter)가 비어 있을 경우, 옵셔널 파라미터를 채우기 위해 전자 장치(101)의 지능형 클라이언트(intelligence client)(미도시)에 관련 데이터를 전달할 수 있다. 예를 들어, 어플리케이션은 사용자에게 적절한 질문을 출력하기 위해 어플리케이션 이름(application name), 룰 아이디(rule id), 파라미터 타입(parameter type), 또는 파라미터 이름(parameter name) 등을 포함하는 데이터를 지능형 클라이언트에 전송할 수 있다.
전자 장치(101)의 지능형 클라이언트는 어플리케이션으로부터 수신된 데이터(또는 정보)를 지능형 서버(200)에 전송할 수 있다. 지능형 서버(200)는 NLG 모듈(250)을 통해 수신된 데이터(또는 정보)를 기반으로 사용자에게 질의할 질문을 선택할 수 있다. 일 실시 예에 따르면, NLG 모듈(250)은 옵셔널 파라미터 중 “탑승 기기”에 대한 정보가 없을 경우(예: MotorizedPropelledType), “어디에 탑승하셨나요?”라는 질의를 선택할 수 있다. 지능형 서버(200)는 선택된 질의가 사용자에게 제공될 수 있도록, 어플리케이션 이름, 룰 아이디, 파라미터 타입(예: MotorizedPropelledType), 파라미터 이름(예: 탑승 기기) 등의 정보를 제공해 줄 수 있다.
일 실시 예에 따라, NLG 모듈(250)은 수신된 어플리케이션 이름, 룰 아이디, 파라미터 타입, 파라미터 이름 등에 적어도 기반하여, 사용자에게 질의할 적절한 발화를 선택할 수 있다. NLG 모듈(250)을 통해 선택된 발화(예: 어디에 탑승하셨나요?)는 TTS 모듈(260)을 거쳐 전자 장치(101)의 음향 출력 장치(155)를 통해 사용자에게 출력될 수 있다.
이후, 사용자가, 예를 들면, “모터사이클(motorcycle)”라고 발화 할 경우, 사용자의 발화 데이터(또는 오디오 데이터)는 지능형 서버(200)로 전송될 수 있다. 지능형 서버(200)는 ASR 모듈(210)을 통해 텍스트로 변환할 수 있다. 일 실시 예에 따라, 지능형 서버(200)는 변환된 텍스트 데이터를 전자 장치(101)(예: 지능형 클라이언트)로 전송할 수 있다. 다른 실시 예에 따라, 지능형 서버(200)는 NLU 모듈(220), 패스 플래너 모듈(230) 등을 통해 전자 장치(101)에서 수행할 수 있는 동작(action)들이 정의된 형태로 변경한 후 전자 장치(101)(예: 지능형 클라이언트)에 전송할 수 있다. 전자 장치(101)(예: 지능형 클라이언트)는, 지능형 서버(200)로부터 수신된 데이터를 기반으로 어플리케이션(예: V2X Safety application)에 전달하여 옵셔널 파라미터 정보를 채워 주변의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))에 메시지(또는 데이터)를 방송할 수 있다.
본 문서에 개시된 다양한 실시 예들에 따른 전자 장치(101)는 다양한 형태의 장치가 될 수 있다. 전자 장치(101)는, 예를 들면, 휴대용 통신 장치(예: 스마트폰), 휴대용 전자 장치(예: 태블릿(tablet PC(personal computer), PDA(personal digital assistant) 등), 휴대용 의료 기기, 디지털 카메라(digital camera), 위치 추적 장치(location tracker device) 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 본 문서의 실시 예에 따른 전자 장치(101)는 전술한 기기들에 한정되지 않는다.
본 문서에 개시된 다양한 실시 예들에서 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 본 문서에서, "A 또는 B", "A 및/또는 B 중 적어도 하나", "A, B 또는 C" 또는 "A, B 및/또는 C 중 적어도 하나" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. "제1", "제2", "첫째" 또는 "둘째" 등의 표현들은 해당 구성 요소들을, 순서 또는 중요도에 상관없이 수식할 수 있고, 한 구성 요소를 다른 구성 요소와 구분하기 위해 사용될 뿐 해당 구성 요소들을 한정하지 않는다. 어떤(예: 제1) 구성 요소가 다른(예: 제2) 구성 요소에 "(기능적으로 또는 통신적으로) 연결되어" 있다거나 "접속되어" 있다고 언급된 때에는, 어떤 구성 요소가 다른 구성 요소에 직접적으로 연결되거나, 다른 구성 요소(예: 제3 구성 요소)를 통하여 연결될 수 있다.
본 문서에서 사용된 용어 "모듈"은 하드웨어, 소프트웨어 또는 펌웨어(firmware)로 구성된 유닛(unit)을 포함하며, 예를 들면, 로직(logic), 논리 블록(logic block), 부품(component), 또는 회로(circuit) 등의 용어와 상호 호환적으로 사용될 수 있다. 모듈은, 일체로 구성된 부품 또는 하나 또는 그 이상의 기능을 수행하는 최소 단위 또는 그 일부가 될 수 있다. 예를 들면, 모듈은 ASIC(application-specific integrated circuit)으로 구성될 수 있다.
본 문서의 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)(예: 내장 메모리(136) 또는 외장 메모리(138))에 저장된 명령어(instruction)를 포함하는 소프트웨어(예: 프로그램(140))로 구현될 수 있다. 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 따른 전자 장치(예: 전자 장치(101))를 포함할 수 있다. 명령어가 프로세서(예: 프로세서(120))에 의해 실행될 경우, 프로세서가 직접, 또는 프로세서의 제어 하에 다른 구성 요소들을 이용하여 명령어에 해당하는 기능을 수행할 수 있다. 명령어는 컴파일러(compiler) 또는 인터프리터(interpreter)에 의해 생성 또는 실행되는 코드(code)를 포함할 수 있다. 기기로 읽을 수 있는 저장 매체는, 비일시적(non-transitory) 저장 매체의 형태로 제공될 수 있다. 여기서, ‘비일시적’은 저장 매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장 매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: CD-ROM, compact disc read only memory)의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어TM)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예들에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱(heuristic)하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
도 3은 다양한 실시 예들에 따른 전자 장치에서 기능 처리 모듈의 예를 도시하는 도면이다.
도 3에 도시한 바와 같이, 도 3은 다양한 실시 예들에 따른 웨이브(WAVE, wireless access in vehicular environments) 통신(communication)에 관련된 기능을 실행하는 전자 장치(101)의 기능 처리 모듈(300)의 예를 나타낼 수 있다. 예를 들면, 도 3은 전자 장치(101)에서 전자 장치(101)의 움직임과 관련된 정보를 생성하여 주변의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 제공하는 것과 관련된 기능 처리 모듈(300)의 예를 나타낼 수 있다. 다양한 실시 예들에서, 기능 처리 모듈(300)은 프로세싱 회로(processing circuitry)를 포함하는 프로세서(예: 도 1의 프로세서(120))에 하드웨어 모듈(hardware module)로 포함되거나, 또는 소프트웨어 모듈(software module)로 포함될 수 있다.
도 3을 참조하면, 기능 처리 모듈(300)은 기능 실행 모듈(310), 정보 획득 모듈(320), 모니터링 모듈(330), 데이터 관리 모듈(340) 및 HMI(human machine interface) 모듈(350) 등을 포함할 수 있다.
기능 실행 모듈(310)은, 안전 관련 메시지(예: PSM, personal safety message)를 생성 및 방송하는 것과 관련된 웨이브 통신을 위한 어플리케이션(예: V2X safety application)을 실행할 수 있다. 기능 실행 모듈(310)는 어플리케이션으로 백그라운드(background)로 동작하도록 할 수 있다. 기능 실행 모듈(310)은 사용자에 의한 기능 실행 요청, 또는 설정된 조건(예: 사용자의 움직임 검출 상황, 또는 도로 진입 상황 등)에 적어도 기반하여 어플리케이션을 실행하도록 처리할 수 있다. 일 실시 예에 따라, V2X는 차량과 차량 사이의 무선 통신(V2V, vehicle to vehicle), 차량과 인프라 간 무선 통신(V2I, vehicle to infrastructure), 차량 내 유무선 네트워킹(IVN, in-vehicle networking), 차량과 이동 단말 간 통신(V2P, vehicle to pedestrian) 등을 총칭할 수 있다.
정보 획득 모듈(320)은, 전자 장치(101)의 센서 모듈(176) 또는 무선 통신 모듈(192)에 적어도 기반하여, 전자 장치(101) 움직임과 관련된 정보를 획득할 수 있다. 일 실시 예에 따라, 정보 획득 모듈(320)은 센서 모듈(176)(예: 가속도 센서(acceleration sensor), 자이로 센서(gyro sensor) 등)로부터 획득되는 센서 정보를 이용하여 전자 장치(101)의 움직임과 관련된 정보를 획득할 수 있다. 일 실시 예에 따라, 정보 획득 모듈(320)은 통신 모듈(190)(예: 위치 측정 회로(예: GSNN 모듈 또는 GPS 모듈 등), WiFi 모듈 등)로부터 획득된 위치에 관련된 다양한 정보를 이용하여 전자 장치(101)의 움직임과 관련된 정보를 획득할 수 있다. 일 실시 예에 따라, 정보 획득 모듈(320)은 센서 모듈(176)과 통신 모듈(190)로부터 획득되는 센서 정보와 위치 정보를 이용하여 전자 장치(101)의 움직임과 관련된 정보를 획득할 수도 있다. 일 실시 예에 따라, 정보 획득 모듈(320)은 주변의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))가 방송하여 전자 장치(101)에 수신되는 데이터로부터, 외부 전자 장치의 움직임과 관련된 정보를 획득할 수도 있다.
모니터링 모듈(330)은, 정보 획득 모듈(320)에서 획득하는 움직임과 관련된 정보에 기반하여, 전자 장치(101)에 대한 상태, 또는 상태 변경을 모니터링 할 수 있다. 일 실시 예에 따라, 모니터링 모듈(330)은 전자 장치(101)의 이동 속도의 변화, 전자 장치(101)의 진동(또는 흔들림) 정도, 외부 전자 장치의 동행 여부, 또는 사용자의 차량 탑승 여부 등과 같은, 사용자의 다양한 상황에 대한 모니터링을 수행할 수 있다. 일 실시 예에 따라, 모니터링 모듈(330)은 상황 인지(context awareness) 기술을 이용하여, 상황을 모니터링 할 수도 있다.
데이터 관리 모듈(340)은, 움직임과 관련된 정보와 모니터링 결과에 기반하여 데이터를 구성 및 전송하는 동작을 처리할 수 있다. 일 실시 예에 따라, 데이터 관리 모듈(340)은 모니터링 결과에 기반하여 기본 정보만 존재하는(또는 필요로 하는) 경우, 움직임에 관련된 정보에서 기본 정보에 대응하는 정보로 PSM의 데이터 패킷(예: 기본 데이터(default data) 포함)을 구성할 수 있다. 일 실시 예에 따라, 데이터 관리 모듈(340)은 모니터링 결과에 기반하여 추가 정보가 존재하는(또는 필요로 하는) 경우, 움직임에 관련된 정보에서 추가 정보에 대응하는 정보(예: 상태 변경에 대응하는 정보)를 포함하여 PSM의 데이터 패킷(예: 기본 데이터와 옵셔널 데이터(optional data) 포함)을 구성할 수 있다.
일 실시 예에 따라, 데이터 관리 모듈(340)은 전자 장치(101)의 움직임과 관련된 정보(예: 다양한 센서 정보, 위치 정보 등)에 적어도 기반하여, 사용자 상황(상태)를 판단하는 동작을 더 포함할 수 있다. 일 실시 예에 따라, 데이터 관리 모듈(340)은 판단하는 사용자 상황(상태)에 따라, 기본 정보에 의한 데이터 구성, 추가 정보를 포함하는 데이터 구성을 결정할 수 있다. 일 실시 예에 따라, 데이터 관리 모듈(340)은 판단하는 사용자 상황(상태)에 따라, 사용자에게 요청할 오브젝트(예: 질의문)를 생성할 수 있다. 일 실시 예에 따라, 데이터 관리 모듈(340)은 판단하는 사용자 상황(상태)에 따라, 보이스 어시스턴트(voice assistant)를 기반으로 사용자와 상호작용(interaction) 하도록 하거나, 디스플레이를 기반으로 사용자와 상호작용 하도록 하여 추가 정보를 획득하는 것과 관련된 동작을 처리할 수 있다.
HMI 모듈(350)은, 사용자 입력에 대한 요청 및 사용자 입력을 수신하여 처리하기 위한 모듈을 포함할 수 있다. 일 실시 예에 따라, HMI 모듈(350)은 사용자 상황에 대응하는 오디오 출력(예: 음성 신호 출력)으로, 사용자 입력을 요청(예: 질의문의 음성 출력)하고, 사용자의 발화를 기반으로 사용자 입력을 수신하도록 하는 일련의 인터페이스(예: 보이스 어시스턴트)를 제공할 수 있다. 다양한 실시 예들에서, 보이스 어시스턴트는, 예를 들면, 사용자의 음성을 인식하여 사용자의 명령에 따라 관련 동작을 수행 또는 제어할 수 있는 하드웨어(예: 음성 입력 모듈(예: 마이크), 스피커, 음성 인식 처리 모듈 등) 및/또는 소프트웨어(예: AI, 어플리케이션, 음성 인식 알고리즘 등)를 포함하는 용어로 사용할 수 있다. 일 실시 예에 따라, HMI 모듈(350)은 사용자 상황에 대응하는 시각적 출력(예: 질문(또는 가이드)에 관련된 텍스트를 포함하는 팝업 윈도우(pop-up window) 출력)으로, 사용자 입력을 요청(예: 질의문의 텍스트 출력)하고, 사용자의 선택(또는 터치)를 기반으로 사용자 입력을 수신하도록 하는 일련의 인터페이스를 제공할 수 있다.
도 4는 다양한 실시 예들에 따른 전자 장치에서 제공하는 데이터 패킷의 예를 도시하는 도면이다.
도 4를 참조하면, 도 4는 장치들 간에 웨이브(wave) 통신 시 사용되는 메시지(예: PSM)의 데이터 패킷(400)의 일 예를 나타낼 수 있다. 도 4에 도시한 바와 같이, 데이터 패킷(400)은 크게 기본 데이터(default data)(410)와 옵셔널 데이터(optional data)(420)로 구분될 수 있다. 일 실시 예에서, PSM의 데이터 패킷(400)은 전자 장치(101)의 움직임과 관련된 기본 데이터(410)만으로 구성되어 방송(broadcasting)될 수 있다. 일 실시 예에서, PSM의 데이터 패킷(400)은 기본 데이터(410)에, 사용자의 이동 상황에 따른 상태에 기반하는 적어도 하나의 옵셔널 정보(optional information)에 의한 옵셔널 데이터(420)가 추가 구성되어 방송될 수 있다.
일 실시 예에 따르면, 전자 장치(101)에 의해 전송(또는 방송)되는 데이터 패킷(400)은 기본 데이터(410)만을 포함할 수 있다. 예를 들면, 전자 장치(101)는 기본 데이터(410)만 존재하는 경우에도 주변으로 전자 장치(101)의 현재 상태를 송출하여 안전을 제공받을 수 있다.
일 실시 예에 따르면, 전자 장치(101)에 의해 전송(또는 방송)되는 데이터 패킷(400)은 기본 데이터(410)와 함께, 옵셔널 데이터(420)의 적어도 일부를 포함할 수 있다. 예를 들면, 전자 장치(101)가 처한 상황은 실시간으로 변화할 수 있으며, 전자 장치(101)는 현재 상황을 모니터링 할 수 있다. 전자 장치(101)는 변화(예: 전자 장치(101)의 이동 상황과 관련된 상태 변경)하는 상황에 맞는(또는 적합한) 정보를 메시지의 데이터 패킷(400)에 부가적인 정보(예: 옵셔널 정보)로 실어 전송함으로써, 전자 장치(101)(또는 전자 장치(101)의 사용자)의 상황을 주변으로 보다 정확하게 전달할 수 있다.
일 실시 예에 따라, 사용자의 상황에 대해서 전자 장치(101)가 기 정의된 알고리즘에 따라, 데이터 패킷(400)(예: 기본 데이터(410))을 업데이트할 수 있다. 하지만, 이러한 경우 사용자의 실제 상황과 맞지 않을 수도 있기 때문에, 다양한 실시 예들에서는 전자 장치(101)의 보이스 에이전트(voice agent)를 이용하여 현재 상황 변화에 적합한 업데이트를 사용자에게 요청할 수 있다. 전자 장치(101)는 사용자로부터 현재 상황 변화에 대응하게 입력된 파라미터들을 획득할 수 있고, 획득된 파라미터들을 필요한 데이터 필드(예: 옵셔널 데이터 필드)로 변환하여 저장할 수 있다. 일 실시 예에 따라, 전자 장치(101)의 보이스 에이전트는 전자 장치(101)의 사용자에 대한 정보를 더 포함하여 보이스 인터랙션(voice interaction)을 통한 음성이, 전자 장치(101)의 사용자의 음성인지 아닌지를 더 판단하여, 사용자의 음성으로 확인되는 경우, 웨이브(wave) 파라미터를 업데이트 하도록 할 수도 있다.
아래 <표 1>과 <표 2>는, 다양한 실시 예들에서 이용될 수 있는 데이터 패킷(400)의 기본 데이터(410)와 옵셔널 데이터(420)의 예들을 나타낼 수 있다.
구분 타입
basicType PersonalDeviceUserType
secMark DSecond
msgCnt MsgCount
id TemporaryID
position Position3D
accuracy PositionalAccuracy
Speed Velocity
heading Heading
... ...
도 4 및 <표 1>에 예시한 바와 같이, 기본 데이터(410)의 데이터 포맷은 웨이브 표준에서 정의한 PSM의 필수 파라미터를 나타낼 수 있다. 일 실시 예에 따르면, basicType의 경우 전자 장치(101)가 보행자의 기기인지, 자전거에 탑승된 기기인지, 차량에 탑재된 기기인지, 또는 도로 작업자나 동물인지 등에 대한 정보를 나타낼 수 있다. 일반적으로, basicType은 보행자 타입(예: PersonalDeviceUserType)을 기본으로 가질 수 있으며, 보행자가 자전거 등의 장비에 탑승한 경우 변경될 수 있다. 그 이외에 정보의 경우 전자 장치(101)의 이동에 대한 정보를 센서 값을 기반으로 추출하여 포함될 수 있다.
구분 타입
accelSet Accelerationset4Way
pathHistory PathHistory
pathPrediction PathPrediction
propulsion PropelledInformation
useState PersonalDeviceUsageState
crossRequest PersonalCrossingRequest
crossState PersonalCrossingInProgress
clusterSize NumberOfParticipantsInCluster
clusterRadius PersonalClusterRadius
eventresponderType PublicSafetyEventResponderWorkerType
activityType PublicSafetyAndRoadWorkerActivity
activitySubType PublicSafetyDirectingTrafficSubtype
assistType PersonalAssistive
sizing UserSizeAndBehaviour
attachment Attachment
attachmentRadius AttachmentRadius
animalType AnimalType
... ...
도 4 및 <표 2>에 예시한 바와 같이, 옵셔널 데이터(420)는 웨이브 표준에 의한 보행자 정보 중 적어도 하나의 옵셔널 정보를 포함할 수 있고, <표 2>는 옵셔널 정보로 포함될 수 있는 예들을 나타낼 수 있다.
일 실시 예에 따르면, <표 2>에서 “propulsion”의 “propelledinformation”의 경우 이동 상황이 사람의 힘으로 운행되는지, 동물의 힘으로 운행되는지, 또는 모터에 의하여 구동되는 지와 관련된 정보를 나타낼 수 있다. 예를 들어, <표 1>에 나타낸 기본 데이터(410)의 사용자 기본 정보 중, basicType이 보행자라고 선택된 경우, 전자 장치(101)는 “propulsion”의 타입이 사람의 힘으로 운행된다는 정보로 구성할 수 있다. 일 실시 예에 따르면, “attachment”의 경우 사용자가 함께 이동할 수 있는 보조 기구들에 대한 정보를 포함할 수 있다. 예를 들어, 유모차나, 카트, 또는 휠체어 등의 기구들이 보행자에 포함될 경우 해당 정보를 함께 송출할 수 있다.
이상에서 살펴본 바와 같이, 다양한 실시 예들에 따른 전자 장치(101)는, 통신 모듈(예: 무선 통신 모듈(192)), 적어도 하나의 센서(예: 센서 모듈(176)), 및 프로세서(120)를 포함하고, 상기 프로세서(120)는, 상기 적어도 하나의 센서를 이용하여 상기 전자 장치의 움직임과 관련된 상태를 확인하고, 상기 움직임과 관련된 상기 상태를 확인하는 동작은 상기 움직임과 관련된 정보를 상기 통신 모듈을 이용하여 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 전송하는 동작을 포함하고, 및 상기 움직임과 관련된 상기 상태가 변경되는 경우, 상기 움직임과 관련된 정보 및 상기 상태의 변경과 관련된 정보를 상기 통신 모듈을 이용하여 상기 외부 전자 장치로 전송하도록 구성할 수 있다.
다양한 실시 예들에 따라, 전자 장치(101)는, 음성 입력 모듈(예: 입력 장치(150))을 더 포함하고, 상기 프로세서(120)는, 상기 음성 입력 모듈을 통해, 상기 전자 장치의 사용자의 음성을 획득하고, 및 상기 음성에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 생성하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 상기 전자 장치와 기능적으로 연결된 디스플레이를 통해 상기 상태의 변경과 관련된 정보의 입력을 위한 사용자 인터페이스를 표시하고, 및 상기 사용자 인터페이스에 대응하는 입력에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 생성하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 상기 움직임과 관련된 상기 상태가 변경되는 경우, 상기 상태의 변경과 관련된 정보의 입력을 요청하고, 및 상기 사용자와의 상호 작용(interaction)에 기반하여 상기 상태의 변경과 관련된 정보를 사용자로부터 획득하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 상기 움직임과 관련된 상기 상태가 변경되는 경우, 설정된 조건에 기반하여 상기 상태의 정도를 확인하고, 상기 상태가 제1 조건에 대응하는 경우, 사용자의 음성에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 획득하고, 및 상기 상태가 제2 조건에 대응하는 경우, 사용자 인터페이스에 대응하는 입력에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 획득하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 이동 속도의 변화, 상기 전자 장치의 진동 정도, 상기 외부 전자 장치의 움직임과 관련된 정보, 또는 사용자의 차량 탑승 여부에 적어도 기반하여, 상기 움직임과 관련된 상기 상태를 확인하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 상기 상태가 변경되는 것과 관련된 트리거(trigger)가 검출되는 것에 응답하여, 상기 전자 장치의 이동 속도를 판단하고, 및 상기 이동 속도가 기준 속도 이상인 경우, 음성 입력 모듈을 통해, 상기 상태의 변경과 관련된 정보의 입력을 위한 사용자의 음성을 획득하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 상기 통신 모듈을 통해, 상기 외부 전자 장치가 전송하는 상기 외부 전자 장치의 움직임과 관련된 정보, 또는 상기 움직임과 관련된 정보 및 상기 외부 전자 장치의 상태의 변경과 관련된 정보를 수신하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 상기 전자 장치의 움직임에 관련된 제1 이동 정보와 상기 외부 전자 장치의 움직임에 관련된 제2 이동 정보를 확인하고, 및 상기 제1 이동 정보와 상기 제2 이동 정보에 기반하여, 상기 전자 장치의 움직임과 관련된 정보 전송의 중지 여부를 결정하도록 구성할 수 있다.
다양한 실시 예들에 따라, 상기 프로세서(120)는, 상기 전자 장치의 움직임에 관련된 제1 이동 정보와 상기 외부 전자 장치의 움직임에 관련된 제2 이동 정보를 확인하고, 상기 제1 이동 정보와 상기 제2 이동 정보에 기반하여 상기 상태의 변경과 관련된 정보의 적어도 일부로, 상기 전자 장치와 상기 외부 전자 장치의 동행에 관련된 정보를 생성하도록 구성할 수 있다.
이하에서, 첨부 도면들을 참조하여 본 발명의 다양한 실시 예들에 따른 동작 방법에 대하여 살펴보기로 한다. 하지만, 본 발명의 다양한 실시 예들이 하기에서 기술하는 내용에 의해 제한되거나 한정되는 것은 아니므로, 하기의 실시 예에 의거하여 다양한 실시 예들에 적용할 수 있음에 유의하여야 한다. 이하에서 설명되는 본 발명의 다양한 실시 예들에서는 하드웨어적인 접근 방법을 예시로서 설명한다. 하지만, 본 발명의 다양한 실시 예들에서는 하드웨어와 소프트웨어를 모두 사용하는 기술을 포함하고 있으므로, 본 발명의 다양한 실시 예들이 소프트웨어 기반의 접근 방법을 제외하는 것은 아니다.
도 5는 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 5를 참조하면, 동작(501)에서, 전자 장치(101)의 프로세서(120)(예: 프로세싱 회로를 포함하는 적어도 하나의 프로세서)(또는 도 3의 기능 처리 모듈(300))는 전자 장치(101)의 움직임과 관련된 상태를 확인할 수 있다. 일 실시 예에 따라, 프로세서(120)는 전자 장치(101)의 센서 모듈(176)(예: 가속도 센서(acceleration sensor), 자이로 센서(gyro sensor) 등)로부터 획득되는 센서 정보를 이용하여 전자 장치(101)의 움직임과 관련된 상태를 판단할 수 있다. 일 실시 예에 따라, 프로세서(120)는 통신 모듈(190)(예: 위치 측정 회로(예: GSNN 모듈 또는 GPS 모듈 등), WiFi 모듈 등)로부터 획득된 위치에 관련된 다양한 정보를 이용하여 전자 장치(101)의 움직임과 관련된 상태를 판단할 수 있다. 예를 들면, 전자 장치(101)가 실내에 위치(또는 존재)하는 경우와 같이, GPS 정보를 획득하지 못하는 상황에서는, WiFi 모듈에 기반하여 WPS(WiFi positioning system) 정보(예: WiFi를 통해 수신되는 AP(access point)의 정보)를 획득하고, WPS 정보를 통해 전자 장치(101)의 움직임(또는 이동) 정보를 판단할 수 있다. 일 실시 예에 따라, 프로세서(120)는 센서 모듈(176)과 통신 모듈(190)로부터 획득되는 센서 정보와 위치 정보를 이용하여 전자 장치(101)의 움직임과 관련된 상태를 판단할 수도 있다. 일 실시 예에 따라, 프로세서(120)는 움직임과 관련된 상태를 확인하는 것에 응답하여 통신 모듈(190)(예: 무선 통신 모듈(192))을 이용하여, 움직임과 관련된 정보를 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 전송할 수 있다.
동작(503)에서, 프로세서(120)는 움직임과 관련된 정보 및 상태 변경과 관련된 정보를 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 전송할 수 있다. 일 실시 예에 따라, 프로세서(120)는 움직임과 관련된 상태를 확인하는 것에 응답하여, 전자 장치(101)의 움직임과 관련된 상태가 변경되는지 여부를 판단할 수 있다. 프로세서(120)는 전자 장치(101)의 움직임과 관련된 상태가 변경되는 것을 검출하는 것에 응답하여, 움직임과 관련된 정보 및 상태 변경과 관련된 정보를 통신 모듈(190)을 이용하여 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 전송할 수 있다.
다양한 실시 예들에서, 움직임과 관련된 정보는, 도 4를 참조한 설명 부분에서 설명한 바와 같은 PSM(personal safety message)의 기본 데이터(또는 기본 파라미터(default parameter))(410)를 나타낼 수 있다. 다양할 실시 예들에서, 상태 변경과 관련된 정보는, 도 4를 참조한 설명 부분에서 설명한 바와 같은 PSM의 옵셔널 데이터(또는 옵셔널 파라미터(optional parameter))(420)를 나타낼 수 있다.
도 6은 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 6을 참조하면, 동작(601)에서, 전자 장치(101)의 프로세서(120)는 전자 장치(101)의 움직임과 관련된 상태를 확인할 수 있다. 일 실시 예에 따라, 프로세서(120)는 센서 모듈(176) 또는 무선 통신 모듈(192)에 적어도 기반하여 움직임과 관련된 정보를 획득할 수 있고, 획득된 정보에 기반하여 전자 장치(101)의 움직임과 관련된 상태를 판단할 수 있다.
동작(603)에서, 프로세서(120)는 움직임과 관련된 정보를 구성할 수 있다. 일 실시 예에 따라, 프로세서(120)는 획득된 움직임과 관련된 정보에 기반하여, 옵셔널 데이터(420)를 위한 정보가 존재하지 않는 경우, PSM을 위한 기본 데이터(410)만으로 구성할 수 있다.
동작(605)에서, 프로세서(120)는 움직임과 관련된 정보를 주변의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 전송할 수 있다.
동작(607)에서, 프로세서(120)는 움직임과 관련된 상태를 확인하는 것에 기반하여, 전자 장치(101)의 움직임과 관련된 상태의 변경이 검출되는지 여부를 판단할 수 있다. 예를 들면, 프로세서(120)는 옵셔널 데이터(420)에 관련된 적어도 하나의 상태가 변경되는지 여부를 모니터링 할 수 있다.
동작(607)에서, 프로세서(120)는 움직임과 관련된 상태의 변경이 검출되지 않으면(동작(607)의 아니오), 동작(601)로 진행하여, 동작(601) 이하의 동작 수행을 처리할 수 있다.
동작(607)에서, 프로세서(120)는 움직임과 관련된 상태의 변경이 검출되면(동작(607)의 예), 동작(609)에서, 움직임과 관련된 정보(예: PSM의 기본 데이터(410)) 및 상태 변경과 관련된 정보(예: PSM의 옵셔널 데이터(420))를, 통신 모듈을 이용하여 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 전송할 수 있다.
도 7은 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
다양한 실시 예들에서, 도 7은 전자 장치(101)에서 웨이브(wave) 신호를 송출함에 있어서, 전자 장치(101)의 상태가 변경되는 것을 감지하여, 송출하는 추가 정보(예: 옵셔널 데이터에 관련된 정보)를 획득하는 예를 나타낼 수 있다.
도 7을 참조하면, 동작(701)에서, 전자 장치(101)의 프로세서(120)는 기능(또는 어플리케이션(예: V2X safety application))을 실행할 수 있다. 일 실시 예에 따라, 프로세서(120)는 사용자에 의한 기능 실행 요청, 또는 설정된 조건(예: 사용자의 움직임 검출 상황 등)에 적어도 기반하여 기능을 실행하도록 처리할 수 있다.
동작(703)에서, 프로세서(120)는 움직임과 관련된 정보에 기반하여 기본 데이터를 방송할 수 있다. 일 실시 예에 따라, 프로세서(120)는 센서 모듈(176) 또는 무선 통신 모듈(192)에 적어도 기반하여 움직임과 관련된 정보를 획득할 수 있다. 프로세서(120) 획득된 정보에 기반하여 기본 데이터를 생성하고, 생성된 기본 데이터를 통신 모듈을 이용하여 주변의 외부 전자 장치들(예: 불특정 다수의 전자 장치들)로 방송할 수 있다.
동작(705)에서, 프로세서(120)는 옵셔널 정보(예: 옵셔널 데이터를 위한 상태 변경 정보)에 관련된 트리거(trigger)가 검출되는지 여부를 판단할 수 있다. 일 실시 예에 따라, 프로세서(120)는 움직임과 관련된 정보에 적어도 기반하여, PSM의 옵셔널 데이터를 위한 적어도 하나의 상태 변경이 검출되는지 여부를 판단할 수 있다.
동작(705)에서, 프로세서(120)는 옵셔널 정보에 관련된 트리거가 검출되지 않으면(동작(705)의 아니오), 동작(703)으로 진행하여, 동작(703) 이하의 동작 수행을 처리할 수 있다.
동작(705)에서, 프로세서(120)는 옵셔널 정보에 관련된 트리거가 검출되면(동작(705)의 예), 동작(707)에서, 옵셔널 정보에 관한 입력을 사용자에게 요청할 수 있다. 일 실시 예에 따라, 프로세서(120)는 전자 장치(101)와 사용자 간의 상호작용(interaction)에 의해 옵셔널 정보를 획득하기 위한 동작을 수행할 수 있다. 일 실시 예에 따라, 프로세서(120)는 보이스 어시스턴트(voice assistant)에 기반하여 옵셔널 정보에 관한 입력을 요청할 수 있다. 보이스 어시스턴트는 사용자의 음성을 인식하여 사용자의 명령에 따라 옵셔널 정보를 생성하는데 이용될 수 있는 구성을 포함할 수 있다. 예를 들면, 보이스 어시스턴트는 도 2를 참조하여 설명한 바에 대응하는 적어도 하나의 구성으로 음성 인식 기반으로 데이터를 생성하는 일련의 구성을 포함할 수 있다. 다른 실시 예에 따라, 프로세서(120)는 디스플레이(예: 표시 장치(160))에 기반하여 옵셔널 정보에 관한 입력을 요청할 수 있다. 예를 들면, 프로세서(120)는 사용자의 입력을 위한 질의를, 디스플레이를 통해 사용자에게 제공(또는 출력)할 수 있다.
동작(709)에서, 프로세서(120)는 사용자 입력에 따라 관련 옵셔널 데이터를 생성할 수 있다. 일 실시 예에 따라, 프로세서(120)는 전자 장치(101)와 사용자 간의 상호작용에 기반하여 사용자 입력을 획득하고, 획득된 입력에 기반하여 적어도 하나의 옵셔널 정보를 확인할 수 있다. 프로세서(120)는 적어도 하나의 옵셔널 정보에 기반하여 옵셔널 데이터를 생성할 수 있다. 일 실시 예에 따라, 프로세서(120)는 움직임과 관련된 정보에 기반하여 기본 데이터도 생성할 수 있으며, 기본 데이터의 변경이 없는 경우, 기존 데이터에 옵셔널 데이터를 추가적으로 생성할 수 있다. 일 실시 예에 따라, 옵셔널 데이터는 적어도 하나의 옵셔널 정보에 대응하는 적어도 하나의 필드를 포함할 수 있고, 적어도 하나의 필드에 각 옵셔널 정보를 포함하여 옵셔널 데이터를 구성할 수 있다.
동작(711)에서, 프로세서(120)는 기본 데이터 및 옵셔널 데이터를 방송할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 기본 데이터와 옵셔널 데이터를 포함하는 PSM(예: 도 4에 예시한 바와 같은 데이터 패킷 구조의 웨이브 신호)을, 통신 모듈을 이용하여, 주변의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 방송할 수 있다.
다양한 실시 예들에 따르면, 도 7에 예시한 바와 같이, 전자 장치(101)는 기본적인 웨이브 신호(예: PSM)의 방송 시에는 전자 장치(101)의 센서 정보에 의한 움직임 관련된 데이터(예: 기본 데이터)를 생성하여 송출할 수 있다. 이후, 전자 장치(101)는 전자 장치(101)의 이동 상황에 따라, 추가 정보(예: 옵셔널 정보)에 대하여 사용자에게 요청할 수 있고, 사용자 입력에 따라 기본 정보에 추가 정보를 업데이트 하여 송출할 수 있다.
도 8은 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
다양한 실시 예들에서, 도 8은 전자 장치(101)에서 웨이브(wave) 신호를 송출함에 있어서, 전자 장치(101)의 상태가 변경되는 것을 감지하여, 송출하는 추가 정보(예: 옵셔널 데이터에 관련된 정보)를 획득하는 구체적인 예를 나타낼 수 있다.
도 8을 참조하면, 동작(801)에서, 전자 장치(101)의 프로세서(120)는 움직임과 관련된 정보에 기반하여, 전자 장치(101)(또는 전자 장치(101)의 사용자)의 이동 속도를 판단할 수 있다. 일 실시 예에 따라, 프로세서(120)는 센서 모듈(176) 및/또는 무선 통신 모듈(192)에 적어도 기반하여 움직임과 관련된 정보(예: 위치, 거리, 방향 등)의 변화량을 측정하는 것에 적어도 기반하여 속도를 판단할 수 있다.
동작(803)에서, 프로세서(120)는 판단하는 결과에 기반하여, 판단된 이동 속도(예: 전자 장치(101)의 현재 측정된 이동 속도)와 미리 설정된 기준 속도를 비교할 수 있다. 일 실시 예에 따라, 프로세서(120)는 이동 속도가 기준 속도 이상인지 여부를 판단할 수 있다.
동작(803)에서, 프로세서(120)는 이동 속도가 기준 속도 이상인 것으로 판단하면(동작(803)의 예), 동작(805)에서, 보이스 어시스턴트에 기반하여 옵셔널 정보에 관한 입력을 요청할 수 있다. 일 실시 예에 따라, 프로세서(120)는 보이스 에이전트(voice agent)를 이용하여 현재 상황 변화에 적합한 업데이트를 사용자에게 요청하는 오디오 신호를 출력하도록 할 수 있다.
동작(803)에서, 프로세서(120)는 이동 속도가 기준 속도를 넘지 않는 것으로 판단하면(동작(803)의 아니오), 예를 들면, 이동 속도가 기준 속도 미만인 것을 판단하면, 동작(807)에서, 디스플레이(예: 표시 장치(160))에 기반하여 옵셔널 정보에 관한 입력을 요청할 수 있다. 일 실시 예에 따라, 프로세서(120)는 디스플레이를 통해 현재 상황 변화에 적합한 업데이트를 사용자에게 요청하는 화면(예: UI 또는 GUI로, 예를 들면, 팝업 윈도우(pop-up window))을 출력하도록 할 수 있다.
동작(809)에서, 프로세서(120)는 사용자 입력에 따라 옵셔널 데이터를 생성할 수 있다. 일 실시 예에 따라, 프로세서(120)는 보이스 어시스턴트 또는 디스플레이에 기반하여, 전자 장치(101)와 사용자 간의 상호작용으로 획득된 사용자 입력에 기반하여 적어도 하나의 옵셔널 정보를 판단할 수 있다. 프로세서(120)는 적어도 하나의 옵셔널 정보에 기반하여 옵셔널 데이터를 생성할 수 있다. 일 실시 예에 따라, 옵셔널 데이터는 적어도 하나의 옵셔널 정보에 대응하는 적어도 하나의 필드를 포함할 수 있고, 적어도 하나의 필드에 각 옵셔널 정보를 포함하여 옵셔널 데이터를 구성할 수 있다.
다양한 실시 예들에 따르면, 도 8에 예시한 바와 같이, 전자 장치(101)는 웨이브 신호(예: PSM)의 방송 시, 기본적으로 기본 데이터(410)를 송출하고, 전자 장치(101)의 이동 속도가 특정 속도 이상이 되는 경우, 현재 송출하고 있는 웨이브 신호가 적당한지 판단할 수 있다. 예를 들어, 보행자의 평균 이동 속도는, 통상적으로, 시속 5km를 넘지 않을 수 있다. 따라서, 전자 장치(101)는 보행자의 이동 속도가 시속 10km를 넘는다는 판단이 있는 경우, 사용자가 기본 이동 수단인 도보 이동 이외에, 다른 이동 수단(예: 모터사이클, 차량 등)에 탑승을 하였거나, 자전거 등의 도구를 이용하는 경우라고 판단할 수 있다. 이러한 경우, 전자 장치(101)는 사용자의 상황에 대한 정확한 정보를 획득하기 위하여 보이스 어시스턴트에 기반하여 음성 비서 기능(예: AI 기반 음성 인식 기능)을 동작할 수 있다. 일 실시 예에 따르면, 전자 장치(101)는 전자 장치(101)의 이동 속도 증가와 관련된 상태 변화를 확인하고, 상태 변화와 관련된 파라미터에 대한 질문을 생성하여 출력할 수 있다. 이후, 전자 장치(101)는 질문에 대한 사용자의 음성 입력이 수신되면, 수신된 음성을 분석(analyzing)하여 변경된 상태를 정보를 확인할 수 있다. 예를 들면, 전자 장치(101)는 변경된 상태 정보를 업데이트 할 수 있는 응답인지 판단할 수 있다. 전자 장치(101)는 업데이트 할 수 있는 응답인 것을 판단하면, 사용자 응답과 관련하여 변경이 가능한 파라미터가 존재하는 경우 해당 파라미터를 변경(예: 옵셔널 데이터의 해당 필드의 정보 업데이트, 추가 또는 삭제 등)하여 웨이브 신호를 송출할 수 있다.
이와 같이, 다양한 실시 예들에 따르면, 전자 장치(101)는 전자 장치(101)의 이동 정보를 모니터링 하고, 기본 정보에 더하여 추가 정보를 송출해야 하는 상황인지 여부를 판단할 수 있다. 전자 장치(101)는 추가 정보를 송출해야 하는 상황이라 판단되는 경우, 전자 장치(101)의 이동 속에 기반하여 추가 정보를 수집하기 위한 프로세스를 결정할 수 있다. 일 실시 예에 따라, 전자 장치(101)는 전자 장치(101)의 이동 속도가 기준 속도 이상인 경우, 사용자가 전자 장치(101)와 인터랙션 하기 힘든 경우라고 판단하고, 보이스 어시스턴트를 이용하여 현재 상황에 대한 정보를 수집할 수 있다. 일 실시 예에 따라, 전자 장치(101)는 전자 장치(101)의 이동 속도가 기준 속도 이내(예: 미만)인 경우, 전자 장치(101) 상에 팝업 윈도우 등을 통하여 사용자의 선택을 유도할 수 있다. 이후, 전자 장치(101)는 사용자로부터 정확하게 수신된 정보가 존재하는 경우, 전자 장치(101)의 상태 변경과 관련하여 새롭게 수신된 정보(예: 추가 정보 또는 옵셔널 정보)를 기본 정보에 더하여 송출할 수 있다.
한편, 다양한 실시 예들에 따르면, 도 8의 예시와 같은 이동 속도 기반의 동작 이외에도 다양한 방식으로 보이스 어시스턴트를 활성화 할 수도 있다. 일 실시 예에 따라, 전자 장치(101)는 센서 정보(예: 흔들림(또는 진동) 정보)를 기준으로 전자 장치(101)의 흔들림이 많은 경우, HMI 모듈(350)을 통해 보이스 에이전트가 실행되도록 하고, 보이스 에이전트를 이용하여 현재 변경된 사항에 대한 질문을 생성하여 출력하도록 할 수 있다. 일 실시 예에 따라, 전자 장치(101)는 전자 장치(101)의 흔들림이 미약하거나 정지한 경우에는 HMI 모듈(350)을 통해 디스플레이 상에 관련된 사용자 입력을 받을 수 있도록 화면을 출력하도록 할 수 있다. 일 실시 예에 따라, 전자 장치(101)는 마이크(예: 입력 장치(150))를 통해 획득한 전자 장치(101) 주변의 오디오를 기반으로 전자 장치(101)의 주변 소음이 기준치보다 작다고 판단되는 경우에는 HMI 모듈(350)을 통해 보이스 에이전트가 실행되도록 하고, 보이스 에이전트를 이용하여 현재 변경된 사항에 대한 질문을 생성하여 출력하도록 할 수 있다. 일 실시 예에 따라, 전자 장치(101)는 마이크(예: 입력 장치(150))를 통해 획득한 전자 장치(101) 주변의 오디오를 기반으로 전자 장치(101) 주변의 소음이 기준치보다 크다고 판단 되는 경우에는 HMI 모듈(350)을 통해 디스플레이 상에 관련된 사용자 입력을 받을 수 있도록 화면을 출력하도록 할 수 있다.
도 9는 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 9를 참조하면, 동작(901)에서, 전자 장치(101)의 프로세서(120)는 기능(또는 어플리케이션(예: V2X safety application))을 실행할 수 있다. 일 실시 예에 따라, 프로세서(120)는 사용자에 의한 기능 실행 요청, 또는 설정된 조건(예: 사용자의 움직임 검출 상황 등)에 적어도 기반하여 기능을 실행하도록 처리할 수 있다.
동작(903)에서, 프로세서(120)는 전자 장치(101)의 움직임과 관련된 정보에 기반하여 기본 데이터를 방송할 수 있다. 일 실시 예에 따라, 프로세서(120)는 센서 모듈(176) 또는 무선 통신 모듈(192)에 적어도 기반하여 획득된 움직임과 관련된 정보에 기반하여 기본 데이터를 생성하고, 기본 데이터를 통신 모듈을 이용하여 주변의 외부 전자 장치들(예: 불특정 다수의 전자 장치들)로 방송할 수 있다.
동작(905)에서, 프로세서(120)는 움직임과 관련된 정보에 기반하여 이동 속도를 판단할 수 있다. 일 실시 예에 따라, 프로세서(120)는 센서 모듈(176) 및/또는 무선 통신 모듈(192)에 적어도 기반하여 움직임과 관련된 정보(예: 위치, 거리, 방향 등)의 변화량을 측정하는 것에 적어도 기반하여 속도를 판단할 수 있다.
동작(907)에서, 프로세서(120)는 판단하는 결과에 기반하여, 판단된 이동 속도(예: 전자 장치(101)의 현재 측정된 이동 속도)와 미리 설정된 기준 속도를 비교할 수 있다. 일 실시 예에 따라, 프로세서(120)는 이동 속도가 기준 속도 이상인지 여부를 판단할 수 있다.
동작(907)에서, 프로세서(120)는 이동 속도가 기준 속도를 넘지 않은 경우(동작(907)의 예), 동작(903)으로 진행하여, 동작(903) 이하의 동작 수행을 처리할 수 있다.
동작(907)에서, 프로세서(120)는 이동 속도가 기준 속도 이상인 경우(동작(907)의 아니오), 동작(909)에서, 보이스 어시스턴트를 실행할 수 있다.
동작(911)에서, 프로세서(120)는 보이스 어시스턴트에 기반하여, 전자 장치(101)의 상태에 대한 질의를 출력할 수 있다. 일 실시 예에 따라, 프로세서(120)는 이동 속도 증가에 따른 상태 변화와 관련된 파라미터를 획득하기 위한 질문(예: 관련 음성 신호)을 생성하여 스피커를 통해 출력하도록 할 수 있다.
동작(913)에서, 프로세서(120)는 사용자의 음성 입력에 기반하여 상태 변경과 관련된 옵셔널 데이터를 구성할 수 있다. 일 실시 예에 따라, 프로세서(120)는 전자 장치(101)와 사용자 간의 상호작용에 기반하여 마이크를 통해 사용자 입력(예: 음성 입력)을 획득하고, 획득된 입력에 기반하여 적어도 하나의 옵셔널 정보를 확인할 수 있다. 프로세서(120)는 적어도 하나의 옵셔널 정보에 기반하여 옵셔널 데이터를 생성할 수 있다.
동작(915)에서, 프로세서(120)는 기본 데이터 및 옵셔널 데이터를 방송할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 기본 데이터와 옵셔널 데이터를 포함하는 PSM(예: 웨이브 신호)을, 통신 모듈을 이용하여, 주변의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로 방송할 수 있다.
도 10은 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
도 10을 참조하면, 동작(1001)에서, 전자 장치(101)의 프로세서(120)는 움직임과 관련된 정보에 기반하여 데이터를 방송할 수 있다. 일 실시 예에 따라, 프로세서(120)는 PSM 방송과 관련된 어플리케이션(예: V2X safety application)을 실행(예: 백그라운드(background) 실행)에 기반하여, 전자 장치(101)의 움직임과 관련된 정보를 획득할 수 있다. 프로세서(120)는 움직임과 관련된 정보에 기반하여, 기본 데이터(410), 또는 기본 데이터(410)와 옵셔널 데이터(420)에 의한 PSM을 방송하는 상태일 수 있다.
동작(1003)에서, 프로세서(120)는 주변의 적어도 하나의 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로부터 움직임과 관련된 정보를 수신할 수 있다. 일 실시 예에 따라, 프로세서(120)는 통신 모듈을 통해, 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))가 방송하는 PSM(예: 기본 데이터, 또는 기본 데이터 및 옵셔널 데이터)을 수신할 수 있다.
동작(1005)에서, 프로세서(120)는 이동 정보(moving information)를 모니터링 할 수 있다. 일 실시 예에 따라, 프로세서(120)는 전자 장치(101)의 움직임과 관련된 정보(이하, 제1 웨이브 데이터, 또는 제1 이동 정보)와 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104))로부터 수신된 데이터에 기반하여 획득하는 외부 전자 장치의 움직임과 관련된 정보(이하, 제2 웨이브 데이터, 또는 제2 이동 정보)를 비교할 수 있다.
동작(1007)에서, 프로세서(120)는 제1 웨이브 데이터와 제2 웨이브 데이터의 비교 결과에 기반하여, 전자 장치(101)와 외부 전자 장치 간의 이동 정보가 유사한지 여부를 판단할 수 있다.
일 실시 예에 따르면, 프로세서(120)는 제1 웨이브 데이터와 제2 웨이브 데이터에 기반하여, 전자 장치(101)와 외부 전자 장치의 이동에 관련된 이동 속도, 이동 방향, 이동 시간, 현재 위치 등을 판단할 수 있다. 예를 들면, 프로세서(120)는 전자 장치(101)와 외부 전자 장치가 동일하거나 유사한 방향 및 속도로 일정 시간 이상 함께 이동되고 있는지 여부를 판단할 수 있다. 다양한 실시 예들에서, 전자 장치(101)가 외부 전자 장치의 데이터를 획득하는 것과 관련하여 후술하는 도 11을 참조하여 설명된다.
일 실시 예에 따르면, 프로세서(120)는 전자 장치(101)가 송출하는 제1 웨이브 데이터에 기반한 이동 정보와, 주변의 외부 전자 장치로부터 수신하는 제2 웨이브 데이터에 기반한 이동 정보를 모니터링 할 수 있다. 프로세서(120)는 모니터링 하는 결과에 기반하여, 제1 웨이브 데이터에 기반한 이동 정보와 제2 웨이브 데이터에 기반한 이동 정보를 이용하여, 전자 장치(101)와 외부 전자 장치가 특정 거리 이상 일치한다고 판단되는 경우, HMI 모듈(350)을 통하여 사용자에게 변경된 상태에 대한 정보를 입력하도록 요청할 수 있다.
동작(1007)에서, 프로세서(120)는 제1 웨이브 데이터와 제2 웨이브 데이터의 이동 정보가 유사하지 않은 경우, 동작(1001)로 진행하여, 동작(1001) 이하의 동작 수행을 처리할 수 있다.
동작(1007)에서, 프로세서(120)는 제1 웨이브 데이터와 제2 웨이브 데이터의 이동 정보가 유사(또는 동일)한 경우, 동작(1009)에서, 사용자에게 상태 변경에 관한 입력을 요청할 수 있다. 일 실시 예에 따라, 프로세서(120)는 이동 정보가 유사하다고 판단되는 경우, 사용자에게 차량 탑승에 대한 상태 변화를 문의하고 그에 대한 입력을 요청할 수 있다. 일 실시 예에 따라, 프로세서(120)는 이동 정보가 유사하다고 판단되는 경우, 사용자에게 동행자에 대한 확인을 문의하고 그에 대한 입력을 요청할 수 있다. 일 실시 예에 따라, 프로세서(120)는 이동 정보가 유사하다고 판단되는 경우, 사용자에게 차량 탑승인지 또는 동행자가 있는지 등에 대한 확인을 문의하고 그에 대한 입력을 요청할 수 있다. 다양한 실시 예들에서, 프로세서(120)는 보이스 어시스턴트 또는 디스플레이를 이용하여 사용자에게 관련 입력을 요청할 수 있다.
동작(1011)에서, 프로세서(120)는 사용자에 의해 입력을 수신하는 것에 응답하여, 사용자 입력을 판단할 수 있다.
다양한 실시 예들에 따라, 프로세서(120)는, 동작(1013)에서, 사용자 입력이 보딩 정보(boarding information)에 대응하는지, 동작(1023)에서, 사용자 입력이 옵셔널 정보의 업데이트를 필요로 하는, 예를 들면, 동행자 정보에 대응하는지 등을 판단할 수 있다. 일 실시 예에 따라, 프로세서(120)는 사용자가 차량 탑승에 관한 정보를 입력(예: “차량 탑승”에 관련된 사용자 음성 입력, 또는 UI(GUI)에 의한 사용자 선택(예: 터치) 입력 등)하는 경우 보딩 정보에 대응하는 것으로 판단할 수 있다. 다른 실시 예에 따라, 프로세서(120)는 사용자가 동행자에 관한 정보를 입력(예: 적어도 하나의 동행자에 대한 확인 및 주변의 해당 동행자에 대한 동행자 정보 업데이트 입력 등)하는 경우 동행자 정보에 의한 업데이트가 필요한 것으로 판단할 수 있다. 다양한 실시 예들에서, 동작(1013)과 동작(1023)은 병렬적으로 수행되거나, 또는 동작(1013)과 동작(1023) 중 어느 하나의 동작이 선택적으로 수행될 수도 있다.
동작(1013)에서, 프로세서(120)는 사용자 입력에 기반하여 보딩 정보인 것을 판단하면(동작(1013)의 예), 동작(1015)에서 데이터 방송을 중지하도록 할 수 있다. 예를 들면, 프로세서(120)는 사용자에게 차량 탑승에 대한 상태 변화 문의에 대한 응답으로, 차량 탑승에 대한 보딩 정보가 획득되면, 차량 탑승에 따라 데이터 송출 동작을 차량 하차 시까지 중단할 수 있다.
동작(1017)에서, 프로세서(120)는 전자 장치(101)의 움직임과 관련된 정보에 기반하여, 전자 장치(101)의 상태 변경 여부를 모니터링 할 수 있다. 일 실시 예에 따라, 프로세서(120)는 데이터 송출 동작을 중지하는 동안에도, 움직임과 관련된 정보를 내부(예: 전자 장치(101)) 및/또는 외부(예: 외부 전자 장치(예: 전자 장치(102) 또는 전자 장치(104)))로부터 획득하도록 동작할 수 있다.
동작(1019)에서, 프로세서(120)는 모니터링 결과에 기반하여, 전자 장치(101)에 대한 상태 변경이 검출되는지 여부를 판단할 수 있다. 일 실시 예에 따르면, 프로세서(120)는 모니터링 하는 결과에 기반하여 전자 장치(101)의 상태가 변경(예: 이동 속도 감소 등으로 차량 하차 판단)되는지 여부를 판단할 수 있다.
동작(1019)에서, 프로세서(120)는 상태 변경이 검출되지 않는 경우(동작(1019)의 아니오), 동작(1017)로 진행하여, 동작(1017) 이하의 동작 수행을 처리할 수 있다.
동작(1019)에서, 프로세서(120)는 상태 변경이 검출되는 경우(동작(1019)의 예), 동작(1021)에서, 움직임과 관련된 정보(예: 상태 변경 후의 움직임과 관련된 정보, 또는 상태 변경과 관련된 정보)에 기반하여 데이터의 방송 동작을 재개할 수 있다.
동작(1023)에서, 프로세서(120)는 사용자 입력에 기반하여 동행자 정보인 것을 판단하면(동작(1023)의 예), 동작(1025)에서, 입력에 기반하여 상태 변경과 관련된 정보를 업데이트할 수 있다. 일 실시 예에 따라, 프로세서(120)는 동행자 정보에 대한 문의(예: 동행자 정보를 업데이트 할까요?)에 대한 사용자 응답(예: 음성 입력(예: 업데이트 해줘), 또는 팝업 윈도우에 기반하여 터치 입력 등)에 기반하여, 옵셔널 데이터를 구성할 수 있다. 예를 들면, 프로세서(120)는 외부 전자 장치로부터 수신된 데이터에서, 사용자 입력에 대응하는 적어도 하나의 외부 전자 장치를 식별할 수 있고, 식별된 외부 전자 장치를 이동 그룹으로 설정할 수 있다. 프로세서(120)는 이동 그룹으로 설정된 외부 전자 장치에 관련된 정보를 옵셔널 정보로 추가하여, 옵셔널 데이터를 업데이트 할 수 있다. 일 실시 예에 따라, 프로세서(120)는 이동 그룹으로 설정된 외부 전자 장치들에게 이동 그룹이 설정됨을 통지하는 동작을 더 수행할 수도 있다.
동작(1027)에서, 프로세서(120)는 업데이트된 데이터를 방송할 수 있다. 일 실시 예에 따라, 전자 장치(101)에 이동 그룹으로 설정된 외부 전자 장치는, 전자 장치(101)와 이동 그룹의 해제 시까지 데이터 방송을 중지할 수 있다.
다양한 실시 예들에 따라, 프로세서(120)는 사용자 입력에 대한 판단 결과, 동작(1013)과 동작(1023) 등과 같이 상태 변경과 관련된 정보가 획득되지 않는 경우(예: 옵셔널 정보가 존재하지 않는 경우)에는, 동작(1021)로 진행하여, 전자 장치(101)의 움직임과 관련된 정보에 기반하여 데이터를 계속하여 방송할 수 있다.
도 11은 다양한 실시 예들에 따른 전자 장치에서 외부 전자 장치로부터 데이터를 획득하는 예를 설명하기 위해 도시하는 도면이다.
다양한 실시 예들에서, 도 11은 웨이브 시스템에 포함된 전자 장치들 간에 데이터를 방송 및 수신하는 관계를 나타낼 수 있다.
도 11을 참조하면, 전자 장치(101)는 사용자의 기기(예: 스마트폰, 태블릿 PC, 웨어러블 장치 등)이고, 제1 전자 장치(1110)와 제2 전자 장치(1120)은 차량 내에 구비되는 기기(예: 차량 제어 장치)이고, 제3 전자 장치(1130)와 제4 전자 장치(1140)는 전자 장치(101)(또는 전자 장치(101)의 사용자)의 주변에 존재하는 다른 사용자(또는 보행자, 동행자 등)의 기기(예: 스마트폰, 태블릿 PC, 웨어러블 장치 등)인 것을 예로 나타낼 수 있다.
일 실시 예에 따라, 제1 전자 장치(1110)와 제2 전자 장치(1120)는 전자 장치(101)의 주변에서 주행 중인 차량 내에 구비되는 기기 또는 차량 내의 적어도 한 명의 사용자의 기기를 포함할 수 있다. 제1 전자 장치(1110)와 제2 전자 장치(1120)는 전자 장치(101)로부터 소정 거리 이내에 위치하는 기기들일 수 있다.
일 실시 예에 따라, 제3 전자 장치(1130)와 제4 전자 장치(1140)는 전자 장치(101)의 주변에 위치하는 다른 사용자의 기기들을 포함할 수 있다.
다양한 실시 예들에 따라, 전자 장치들(101, 1110, 1120, 1130, 1140)은 센서 정보 및/또는 위치 정보 등에 기반하여 움직임과 관련된 정보를 획득할 수 있고, 주변의 적어도 하나의 외부 전자 장치로부터 데이터(예: PSM)를 수신할 수 있다.
다양한 실시 예들에 따라, 전자 장치들(101, 1110, 1120, 1130, 1140)은, 예를 들면, 웨이브 통신(예: V2X)을 지원하기 위한 구성들을 포함할 수 있다. 일 실시 예에 따라, 전자 장치들(101, 1110, 1120, 1130, 1140)은, 통신 회로(예: WiFi 모듈, 또는 웨이브 통신 모듈(예: 모뎀) 등), 모니터링부, HMI 모듈 등을 포함할 수 있다. 일 실시 예에 따라, 전자 장치들(101, 1110, 1120, 1130, 1140)은 WiFi의 경우 5Ghz를 지원하고 있으며, 5.8Ghz까지 사용하고 있으므로, 기존의 회로 부품 및 안테나는 그대로 사용하고, 통신 회로(예: 모뎀) 칩 내부에 802.11P규격을 이용한 통신을 지원하는 것으로 적용 가능할 수 있다.
다양한 실시 예들에 따라, 전자 장치들(101, 1110, 1120, 1130, 1140)은, 각각, 움직임과 관련된 정보에 기반하여 데이터(예: 기본 데이터, 또는 기본 데이터와 옵셔널 데이터)를, 주변의 외부 전자 장치로 방송할 수 있다. 일 실시 예에 따라, 데이터에는, 각 전자 장치에 대한 식별 정보(예: ID 정보)를 포함할 수 있다. 식별 정보는, 해당 전자 장치의 식별을 위한 정보로서, 장치가 속한 종류(예: 차량인지 또는 노변 장치인지 등)를 나타내는 정보를 포함할 수 있다. 따라서, 외부 전자 장치의 데이터를 수신하는 전자 장치는 해당 데이터를 전송한 장치가 차량의 기기인지, 사용자에 의한 기기인지 등을 구분할 수 있다.
도 12는 다양한 실시 예들에 따른 전자 장치의 동작 방법을 도시하는 흐름도이다.
다양한 실시 예들에서, 도 12는 전자 장치(101)가 웨이브 신호(예: 데이터)를 송출하는 다른 예를 나타낼 수 있다.
도 12를 참조하면, 동작(1201)에서, 전자 장치(101)의 프로세서(120)는 안전 서비스에 관련된 기능(또는 어플리케이션)을 실행할 수 있다. 다양한 실시 예들에서, 기능 실행은 백그라운드로 동작할 수 있다.
동작(1203)에서, 프로세서(120)는 기능이 실행되는 것에 응답하여, 전자 장치(101)의 움직임과 관련된 정보를 획득할 수 있다.
동작(1205)에서, 프로세서(120)는 움직임과 관련된 정보에 기반하여 데이터를 외부 전자 장치로 방송할 수 있다. 일 실시 예에 따라, 데이터는 움직임과 관련된 정보에 따라, 기본 데이터 만으로 구성되거나, 또는 기본 데이터와 옵셔널 데이터로 구성된 데이터일 수 있다. 예를 들면, 데이터는 필수 정보만을 포함하거나, 사용자 상황에 따른 안전을 보장하기 위한 추가 정보를 더 포함하는 형태일 수 있다.
동작(1207)에서, 프로세서(120)는 전자 장치(101)의 움직임과 관련된 상태의 변경이 검출되는지 판단할 수 있다. 일 실시 예에 따라, 프로세서(120)는 기본 정보를 포함하는 데이터를 송출하는 상태에서, 사용자 상황에 따른 추가 정보를 판단하는 것에 기반하여, 상태 변경을 결정(이하, 제1 결정)할 수 있다. 일 실시 예에 따라, 프로세서(120)는 기본 정보와 추가 정보를 포함하는 데이터를 송출하는 상태에서, 사용자 상황에 따른 추가 정보가 존재하지 않는 것을 판단하는 것에 기반하여, 상태 변경을 결정(이하, 제2 결정)할 수 있다. 일 실시 예에 따라, 프로세서(120)는 기본 정보와 추가 정보를 포함하는 데이터를 송출하는 상태에서, 사용자 상황에 따른 추가 정보의 변경(또는 업데이트)을 판단하는 것에 기반하여, 상태 변경을 결정(이하, 제3 결정)할 수 있다.
동작(1207)에서, 프로세서(120)는 상태 변경이 검출되지 않는 경우(동작(1207)의 아니오), 동작(1203)으로 진행하여, 동작(1203) 이하의 동작 수행을 처리할 수 있다.
동작(1207)에서, 프로세서(120)는 상태 변경이 검출되는 경우(동작(1207)의 예), 동작(1209)에서, 검출된 상태를 기반으로 데이터를 업데이트 할 수 있다. 일 실시 예에 따라, 프로세서(120)는 제1 결정에 기반하여, 기본 정보에 추가 정보를 더 포함하도록 데이터를 업데이트 할 수 있다. 일 실시 예에 따라, 프로세서(120)는 제2 결정에 기반하여, 데이터에서 추가 정보를 제외하고 기본 정보만을 포함하도록 데이터를 업데이트 할 수 있다. 일 실시 예에 따라, 프로세서(120)는 제3 결정에 기반하여 데이터의 추가 정보에서 상태 변경에 대응하는 적어도 일부의 추가 정보를 변경(예: 추가, 삭제, 수정 등)하는 것에 의해 데이터를 업데이트 할 수 있다.
동작(1211)에서, 프로세서(120)는 업데이트된 데이터를 외부 전자 장치로 방송할 수 있다.
이상에서 살펴본 바와 같이, 다양한 실시 예들에 따른 전자 장치(101)의 동작 방법은, 적어도 하나의 센서를 이용하여 상기 전자 장치의 움직임과 관련된 상태를 확인하는 동작, 상기 움직임과 관련된 상기 상태가 변경되는 경우, 상기 움직임과 관련된 정보 및 상기 상태의 변경과 관련된 정보를 통신 모듈을 이용하여 외부 전자 장치로 전송하는 동작을 포함하고, 상기 움직임과 관련된 상기 상태를 확인하는 동작은, 상기 움직임과 관련된 정보를 상기 통신 모듈을 이용하여 상기 외부 전자 장치로 전송하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 상태의 변경과 관련된 정보를 생성하는 동작을 더 포함하고, 상기 상태의 변경과 관련된 정보를 생성하는 동작은, 음성 입력 모듈을 통해, 상기 전자 장치의 사용자의 음성을 획득하는 동작, 및 상기 음성에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 생성하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 전자 장치와 기능적으로 연결된 디스플레이를 통해 상기 상태의 변경과 관련된 정보의 입력을 위한 사용자 인터페이스를 표시하는 동작, 및 상기 사용자 인터페이스에 대응하는 입력에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 생성하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 움직임과 관련된 상기 상태가 변경되는 경우, 상기 상태의 변경과 관련된 정보의 입력을 요청하는 동작, 및 상기 사용자와의 상호 작용(interaction)에 기반하여 상기 상태 변경과 관련된 정보를 사용자로부터 획득하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 움직임과 관련된 상기 상태가 변경되는 경우, 설정된 조건에 기반하여 상기 상태의 정도를 확인하는 동작, 상기 상태가 제1 조건에 대응하는 경우, 사용자의 음성에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 획득하는 동작, 및 상기 상태가 제2 조건에 대응하는 경우, 사용자 인터페이스에 대응하는 입력에 적어도 기반하여, 상기 상태의 변경과 관련된 정보를 획득하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 움직임과 관련된 상태를 확인하는 동작은, 이동 속도의 변화, 상기 전자 장치의 진동 정도, 상기 외부 전자 장치의 움직임과 관련된 정보, 또는 사용자의 차량 탑승 여부에 적어도 기반하여, 상기 움직임과 관련된 상태를 확인하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 상태가 변경되는 것과 관련된 트리거(trigger)가 검출되는 것에 응답하여, 상기 전자 장치의 이동 속도를 판단하는 동작, 및 상기 이동 속도가 기준 속도 이상인 경우, 음성 입력 모듈을 통해, 상기 상태의 변경과 관련된 정보의 입력을 위한 사용자의 음성을 획득하는 동작을 포함할 수 있다.
다양한 실시 예들에 따라, 상기 통신 모듈을 통해, 상기 외부 전자 장치가 전송하는 상기 외부 전자 장치의 움직임과 관련된 정보, 또는 상기 움직임과 관련된 정보 및 상기 외부 전자 장치의 상태의 변경과 관련된 정보를 수신하는 동작을 더 포함할 수 있다.
다양한 실시 예들에 따라, 상기 전자 장치의 움직임에 관련된 제1 이동 정보와 상기 외부 전자 장치의 움직임에 관련된 제2 이동 정보를 확인하는 동작, 및 상기 제1 이동 정보와 상기 제2 이동 정보에 기반하여, 상기 전자 장치의 움직임과 관련된 정보 전송의 중지 여부를 결정하는 동작을 더 포함할 수 있다.
다양한 실시 예들에 따라, 상기 전자 장치의 움직임에 관련된 제1 이동 정보와 상기 외부 전자 장치의 움직임에 관련된 제2 이동 정보를 확인하는 동작, 및 상기 제1 이동 정보와 상기 제2 이동 정보에 기반하여 상기 상태의 변경과 관련된 정보의 적어도 일부로, 상기 전자 장치와 상기 외부 전자 장치의 동행에 관련된 정보를 생성하는 동작을 포함할 수 있다.
본 명세서와 도면에 개시된 본 발명의 다양한 실시 예들은 본 발명의 기술 내용을 쉽게 설명하고 본 발명의 이해를 돕기 위해 특정 예를 제시한 것일 뿐이며, 본 발명의 범위를 한정하고자 하는 것은 아니다. 따라서 본 발명의 범위는 여기에 개시된 실시 예들 이외에도 본 발명의 기술적 사상을 바탕으로 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다.
101: 전자 장치
120: 프로세서
160: 표시 장치
190: 통신 모듈
200: 지능형 서버
300: 기능 처리 모듈

Claims (20)

  1. 전자 장치에 있어서,
    통신 모듈;
    적어도 하나의 센서; 및
    프로세서를 포함하고, 상기 프로세서는,
    상기 적어도 하나의 센서를 이용하여 상기 전자 장치의 움직임과 관련된 상태를 확인하고,
    상기 통신 모듈을 이용하여 상기 움직임과 관련된 제1 정보를 외부 전자 장치로 전송하고,
    상기 적어도 하나의 센서를 이용하여 상기 움직임과 관련된 상기 상태가 변경되는지 여부를 판단하고,
    상기 움직임과 관련된 상기 상태가 변경되었다고 판단한 것에 응답하여:
    상기 변경된 상태와 관련된 질의를 출력하고,
    상기 질의에 대한 사용자 입력을 수신한 것에 응답하여, 상기 통신 모듈을 이용하여 상기 제1 정보 및 상기 사용자 입력을 기반으로 획득된 제2 정보를 상기 외부 전자 장치로 전송하도록 설정되고,
    상기 제2 정보는, 상기 사용자 입력에 기초하여 결정되는 상기 상태의 변경과 관련된 정보를 포함하는, 전자 장치.
  2. 제 1항에 있어서,
    스피커; 및
    음성 입력 모듈을 더 포함하고,
    상기 프로세서는,
    상기 스피커를 통해 상기 질의를 출력하고,
    상기 음성 입력 모듈을 통해, 상기 사용자 입력에 대응하는 사용자의 음성을 획득하도록 설정된 전자 장치.
  3. 제 1항에 있어서,
    디스플레이를 더 포함하고,
    상기 프로세서는,
    상기 디스플레이를 통해 상기 질의에 대응되는 사용자 인터페이스를 표시하고, 및
    상기 디스플레이를 통해 상기 사용자 입력에 대응하는, 상기 사용자 인터페이스에 대한 터치 입력을 수신하도록 설정된 전자 장치.


  4. 삭제
  5. 제 1항에 있어서,
    상기 프로세서는,
    상기 움직임과 관련된 상기 상태가 변경되는 경우, 설정된 조건에 기반하여 상기 상태의 정도를 확인하고,
    상기 상태가 제1 조건에 대응하는 경우, 사용자의 음성에 적어도 기반하여, 상기 사용자 입력을 수신하고, 및
    상기 상태가 제2 조건에 대응하는 경우, 사용자 인터페이스에 대응하는 입력에 적어도 기반하여, 상기 사용자 입력을 수신하도록 설정된 전자 장치.
  6. 제 1항에 있어서,
    상기 프로세서는, 이동 속도의 변화, 상기 전자 장치의 진동 정도, 상기 외부 전자 장치의 움직임과 관련된 정보, 또는 사용자의 차량 탑승 여부에 적어도 기반하여, 상기 움직임과 관련된 상기 상태를 확인하도록 설정된 전자 장치.
  7. 제 1항에 있어서,
    상기 프로세서는,
    상기 상태가 변경되는 것과 관련된 트리거(trigger)가 검출되는 것에 응답하여, 상기 전자 장치의 이동 속도를 판단하고, 및
    상기 이동 속도가 기준 속도 이상인 경우, 음성 입력 모듈을 통해, 상기 사용자 입력에 대응하는 사용자의 음성을 획득하도록 설정된 전자 장치.
  8. 제 1항에 있어서,
    상기 프로세서는, 상기 통신 모듈을 통해, 상기 외부 전자 장치가 전송하는 상기 외부 전자 장치의 움직임과 관련된 제3 정보, 또는 상기 제3 정보와 상기 외부 전자 장치의 상태의 변경과 관련된 제4 정보를 수신하도록 설정된 전자 장치.
  9. 제 1항에 있어서,
    상기 프로세서는,
    상기 전자 장치의 움직임에 관련된 상기 제1 정보와 상기 외부 전자 장치의 움직임에 관련된 제3 정보를 확인하고, 및
    상기 제1 정보와 상기 제3 정보에 기반하여, 상기 제1 정보의 전송을 중지할지 여부를 결정하도록 설정된 전자 장치.
  10. 제 1항에 있어서,
    상기 프로세서는,
    상기 전자 장치의 움직임에 관련된 상기 제1 정보와 상기 외부 전자 장치의 움직임에 관련된 제3 정보를 확인하고,
    상기 제1 정보와 상기 제3 정보에 기반하여, 상기 제2 정보의 적어도 일부로서, 상기 전자 장치와 상기 외부 전자 장치의 동행에 관련된 정보를 생성하도록 설정된 전자 장치.
  11. 전자 장치의 동작 방법에 있어서,
    적어도 하나의 센서를 이용하여 상기 전자 장치의 움직임과 관련된 상태를 확인하는 동작,
    통신 모듈을 이용하여 상기 움직임과 관련된 제1 정보를 외부 전자 장치로 전송하는 동작,
    상기 적어도 하나의 센서를 이용하여 상기 움직임과 관련된 상기 상태가 변경되는지 여부를 판단하는 동작,
    상기 움직임과 관련된 상기 상태가 변경되었다고 판단한 것에 응답하여:
    상기 변경된 상태와 관련된 질의를 출력하는 동작,
    상기 질의에 대한 사용자 입력을 수신한 것에 응답하여, 상기 통신 모듈을 이용하여 상기 제1 정보 및 상기 사용자 입력을 기반으로 획득된 제2 정보를 상기 외부 전자 장치로 전송하는 동작을 포함하고,
    상기 제2 정보는, 상기 사용자 입력에 기초하여 결정되는 상기 상태의 변경과 관련된 정보를 포함하는, 전자 장치의 동작 방법.
  12. ◈청구항 12은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 질의를 출력하는 동작은, 스피커를 통해 상기 질의를 출력하는 동작을 포함하고,
    상기 제2 정보를 획득하는 동작은, 음성 입력 모듈을 통해, 상기 사용자 입력에 대응하는 사용자의 음성을 획득하는 동작, 및 상기 음성에 적어도 기반하여 상기 제2 정보를 생성하는 동작을 포함하는, 전자 장치의 동작 방법.
  13. ◈청구항 13은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 질의를 출력하는 동작은, 상기 전자 장치와 기능적으로 연결된 디스플레이를 통해 상기 질의에 대응되는 사용자 인터페이스를 표시하는 동작을 포함하고,
    상기 제2 정보를 획득하는 동작은, 상기 디스플레이를 통해 상기 사용자 입력에 대응하는, 상기 사용자 인터페이스에 대한 터치 입력을 수신하고, 상기 터치 입력에 적어도 기반하여 상기 제2 정보를 생성하는 동작을 포함하는, 전자 장치의 동작 방법.


  14. 삭제
  15. ◈청구항 15은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 움직임과 관련된 상기 상태가 변경되는 경우, 설정된 조건에 기반하여 상기 상태의 정도를 확인하는 동작,
    상기 상태가 제1 조건에 대응하는 경우, 사용자의 음성에 적어도 기반하여, 상기 사용자 입력을 수신하는 동작, 및
    상기 상태가 제2 조건에 대응하는 경우, 사용자 인터페이스에 대응하는 입력에 적어도 기반하여, 상기 사용자 입력을 수신하는 동작을 더 포함하는, 전자 장치의 동작 방법.
  16. ◈청구항 16은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 움직임과 관련된 상태를 확인하는 동작은,
    이동 속도의 변화, 상기 전자 장치의 진동 정도, 상기 외부 전자 장치의 움직임과 관련된 정보, 또는 사용자의 차량 탑승 여부에 적어도 기반하여, 상기 움직임과 관련된 상태를 확인하는 동작을 포함하는, 전자 장치의 동작 방법.
  17. ◈청구항 17은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 상태가 변경되는 것과 관련된 트리거(trigger)가 검출되는 것에 응답하여, 상기 전자 장치의 이동 속도를 판단하는 동작, 및
    상기 이동 속도가 기준 속도 이상인 경우, 음성 입력 모듈을 통해, 상기 사용자 입력에 대응하는 사용자의 음성을 획득하는 동작을 더 포함하는, 전자 장치의 동작 방법.
  18. ◈청구항 18은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 통신 모듈을 통해, 상기 외부 전자 장치가 전송하는 상기 외부 전자 장치의 움직임과 관련된 제3 정보, 또는 상기 제3 정보와 상기 외부 전자 장치의 상태의 변경과 관련된 제4 정보를 수신하는 동작을 더 포함하는, 전자 장치의 동작 방법.
  19. ◈청구항 19은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 전자 장치의 움직임에 관련된 상기 제1 정보와 상기 외부 전자 장치의 움직임에 관련된 제3 정보를 확인하는 동작, 및
    상기 제1 정보와 상기 제3 정보에 기반하여, 상기 제2 정보의 전송을 중지할지 여부를 결정하는 동작을 더 포함하는, 전자 장치의 동작 방법.
  20. ◈청구항 20은(는) 설정등록료 납부시 포기되었습니다.◈
    제 11항에 있어서,
    상기 전자 장치의 움직임에 관련된 상기 제1 정보와 상기 외부 전자 장치의 움직임에 관련된 제3 정보를 확인하는 동작, 및
    상기 제1 정보와 상기 제3 정보에 기반하여, 상기 제2 정보의 적어도 일부로서, 상기 전자 장치와 상기 외부 전자 장치의 동행에 관련된 정보를 생성하는 동작을 더 포함하는, 전자 장치의 동작 방법.
KR1020170150609A 2017-11-13 2017-11-13 전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치 KR102396343B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020170150609A KR102396343B1 (ko) 2017-11-13 2017-11-13 전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치
US16/763,039 US11368828B2 (en) 2017-11-13 2018-11-06 Method and device for transmitting data on basis of change in state related to movement of electronic device
PCT/KR2018/013333 WO2019093730A1 (ko) 2017-11-13 2018-11-06 전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020170150609A KR102396343B1 (ko) 2017-11-13 2017-11-13 전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치

Publications (2)

Publication Number Publication Date
KR20190054400A KR20190054400A (ko) 2019-05-22
KR102396343B1 true KR102396343B1 (ko) 2022-05-12

Family

ID=66439255

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020170150609A KR102396343B1 (ko) 2017-11-13 2017-11-13 전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치

Country Status (3)

Country Link
US (1) US11368828B2 (ko)
KR (1) KR102396343B1 (ko)
WO (1) WO2019093730A1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100781135B1 (ko) * 2005-04-29 2007-11-30 반병철 차량 통신 장치 및 그 제어 방법
US20170053530A1 (en) * 2015-08-19 2017-02-23 Qualcomm Incorporated Safety event message transmission timing in dedicated short-range communication (dsrc)

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9413869B2 (en) 2010-02-10 2016-08-09 Qualcomm Incorporated Mobile device having plurality of input modes
US8600411B2 (en) 2012-01-23 2013-12-03 Qualcomm Incorporated Methods and apparatus for controlling the transmission and/or reception of safety messages by portable wireless user devices
CA2930764C (en) 2013-01-09 2023-12-19 Martin D. Nathanson Vehicle communications via wireless access vehicular environment
DE102013205057B3 (de) 2013-03-21 2014-08-28 Siemens Aktiengesellschaft Verfahren zum Betreiben einer stationären Einrichtung sowie stationäre Einrichtung innerhalb eines Systems zur Kommunikation
JP6429368B2 (ja) 2013-08-02 2018-11-28 本田技研工業株式会社 歩車間通信システムおよび方法
US9505412B2 (en) 2013-08-02 2016-11-29 Honda Motor Co., Ltd. System and method for detection and utilization of driver distraction level
KR20150112152A (ko) * 2014-03-27 2015-10-07 삼성전자주식회사 전자 장치의 이동 상태에 따른 정보 제공 방법 및 장치
KR20160032963A (ko) 2014-09-17 2016-03-25 엘지전자 주식회사 웨어러블 기기 및 그 제어방법
JP2016184200A (ja) 2015-03-25 2016-10-20 住友電気工業株式会社 歩行者接近報知装置、歩行者接近報知システム、コンピュータプログラム及び歩行者接近報知方法
KR102429409B1 (ko) * 2015-09-09 2022-08-04 삼성전자 주식회사 전자 장치 및 전자 장치의 동작 제어 방법
KR102579694B1 (ko) * 2015-11-20 2023-09-19 삼성전자주식회사 기능 운용 방법 및 이를 지원하는 전자 장치

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100781135B1 (ko) * 2005-04-29 2007-11-30 반병철 차량 통신 장치 및 그 제어 방법
US20170053530A1 (en) * 2015-08-19 2017-02-23 Qualcomm Incorporated Safety event message transmission timing in dedicated short-range communication (dsrc)

Also Published As

Publication number Publication date
US11368828B2 (en) 2022-06-21
US20200389774A1 (en) 2020-12-10
WO2019093730A1 (ko) 2019-05-16
KR20190054400A (ko) 2019-05-22

Similar Documents

Publication Publication Date Title
US11004451B2 (en) System for processing sound data and method of controlling system
US11393474B2 (en) Electronic device managing plurality of intelligent agents and operation method thereof
US11662976B2 (en) Electronic device and method for sharing voice command thereof
CN112970059B (zh) 用于处理用户话语的电子装置及其控制方法
US11474780B2 (en) Method of providing speech recognition service and electronic device for same
KR102512614B1 (ko) 오디오 개선을 지원하는 전자 장치 및 이를 위한 방법
KR20200049020A (ko) 음성 명령에 응답하여 컨텐츠를 표시하기 위한 방법 및 그 전자 장치
KR20200106703A (ko) 사용자 선택 기반의 정보를 제공하는 방법 및 장치
KR20200027753A (ko) 전자 장치 및 단축 명령어에 대응하는 태스크 수행 방법
KR20210116897A (ko) 외부 장치의 음성 기반 제어를 위한 방법 및 그 전자 장치
KR20210036527A (ko) 사용자 발화를 처리하는 전자 장치 및 그 작동 방법
US11557285B2 (en) Electronic device for providing intelligent assistance service and operating method thereof
KR102417029B1 (ko) 자연어 표현 생성 방법 및 전자 장치
KR20210015234A (ko) 전자 장치, 및 그의 음성 명령에 따른 기능이 실행되도록 제어하는 방법
KR102519635B1 (ko) 음성 명령을 처리하기 위한 전자 문서 표시 방법 및 그 전자 장치
KR102396343B1 (ko) 전자 장치의 움직임과 관련된 상태의 변화에 기반하여 데이터를 전송하는 방법 및 장치
KR20200119531A (ko) 자연어 응답을 생성하는 전자 장치 및 자연어 응답 생성 방법
KR20200057426A (ko) 음성 인식 기반 이미지를 표시하는 전자 장치
KR102620705B1 (ko) 전자 장치 및 그의 동작 방법
KR20220057249A (ko) 사용자 발화를 처리하는 전자 장치, 및 그 전자 장치의 제어 방법
KR20220126544A (ko) 사용자 명령을 처리하는 장치 및 그 동작 방법
CN112542171A (zh) 使用语音识别功能执行动作的电子装置及其方法
US11756575B2 (en) Electronic device and method for speech recognition processing of electronic device
KR102642268B1 (ko) 공유 업무 처리 방법 및 장치
KR20210111423A (ko) 사용자 입력을 처리하는 전자 장치 및 방법

Legal Events

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