KR102244156B1 - Method for processing voice commands using bluetooth mesh network - Google Patents

Method for processing voice commands using bluetooth mesh network Download PDF

Info

Publication number
KR102244156B1
KR102244156B1 KR1020190126805A KR20190126805A KR102244156B1 KR 102244156 B1 KR102244156 B1 KR 102244156B1 KR 1020190126805 A KR1020190126805 A KR 1020190126805A KR 20190126805 A KR20190126805 A KR 20190126805A KR 102244156 B1 KR102244156 B1 KR 102244156B1
Authority
KR
South Korea
Prior art keywords
node
voice data
voice
mesh network
bluetooth mesh
Prior art date
Application number
KR1020190126805A
Other languages
Korean (ko)
Other versions
KR20210043902A (en
Inventor
김승현
Original Assignee
주식회사 아이포바인
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 주식회사 아이포바인 filed Critical 주식회사 아이포바인
Priority to KR1020190126805A priority Critical patent/KR102244156B1/en
Publication of KR20210043902A publication Critical patent/KR20210043902A/en
Application granted granted Critical
Publication of KR102244156B1 publication Critical patent/KR102244156B1/en

Links

Images

Classifications

    • 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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/04Segmentation; Word boundary detection
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • 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

Abstract

본 발명은 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법에 관한 것으로, 블루투스 메쉬 네트워크의 노드들 중 적어도 하나 이상의 노드에 음성 데이터가 입력되면, 상기 노드들 중 기 지정된 방식으로 특정된 하나의 특정 노드의 제어부가 상기 음성 데이터를 기 지정된 방식에 따라 복수의 음성 데이터로 분할하는 단계; 상기 분할된 복수의 음성 데이터를, 상기 특정 노드의 제어부가 상기 블루투스 메쉬 네트워크의 노드별로 분산 처리할 음성 데이터로 구분하는 단계; 상기 특정 노드의 제어부가 상기 구분된 음성 데이터를 상기 노드별로 전송하여 분산 처리하게 하고, 상기 각 노드별로 분산 처리된 음성 데이터를 기 지정된 방식으로 특정된 하나의 집중노드에 집중시켜 재구성하게 하는 단계; 및 상기 집중노드의 제어부가 상기 재구성된 음성 데이터에 대응하는 음성명령을 인식하여 명령을 실행하는 단계;를 포함한다.The present invention relates to a voice command processing method using a Bluetooth mesh network, wherein when voice data is input to at least one or more nodes of a Bluetooth mesh network, a control unit of one specific node specified in a predetermined manner among the nodes Dividing the voice data into a plurality of voice data according to a predetermined method; Dividing the divided plurality of voice data into voice data to be distributedly processed for each node of the Bluetooth mesh network, by a controller of the specific node; Allowing the control unit of the specific node to transmit the classified voice data for each node to perform distributed processing, and to reconfigure the distributed voice data for each node by concentrating on one specified central node in a predetermined manner; And recognizing a voice command corresponding to the reconstructed voice data by the controller of the central node and executing the command.

Figure R1020190126805
Figure R1020190126805

Description

블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법{METHOD FOR PROCESSING VOICE COMMANDS USING BLUETOOTH MESH NETWORK}Voice command processing method using Bluetooth mesh network {METHOD FOR PROCESSING VOICE COMMANDS USING BLUETOOTH MESH NETWORK}

본 발명은 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법에 관한 것으로, 보다 상세하게는 복수의 음성명령 처리 장치가 각기 노드로서 연결된 블루투스 메쉬 네트워크에 있어서, 상기 노드에 각기 연결된 외부기기들의 자원을 추가로 이용하여 상기 노드에 입력되는 음성명령을 처리할 수 있도록 하는, 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법에 관한 것이다.The present invention relates to a voice command processing method using a Bluetooth mesh network, and more particularly, in a Bluetooth mesh network in which a plurality of voice command processing devices are connected as nodes, respectively, additionally use resources of external devices connected to the node. The present invention relates to a method for processing a voice command using a Bluetooth mesh network, which enables the voice command input to the node to be processed.

기존에 가정이나 사무실 등에서는 적외선이나 무선신호 등을 이용하여 기기(예 : 가전기기, 전등)를 제어하기 위한 원격 제어장치(예 : 리모콘)가 많이 출시되었으나, 최근에는 음성명령을 이용하여 대상기기(예 : LED 전등, 형광등, 보일러, 공기 청정기 등)를 제어하기 위한 음성 인식 제어장치(예 : AI 스피커)가 많이 출시되고 있다.Conventionally, in homes and offices, many remote control devices (eg, remote controllers) for controlling devices (eg home appliances, lights) using infrared or wireless signals have been released, but recently, target devices using voice commands There are a lot of voice recognition control devices (eg AI speakers) to control (eg LED lights, fluorescent lights, boilers, air purifiers, etc.).

이때 상기 제어장치에 음성 인식 기능이 없을 경우에는 복잡한 연산이 필요하지 않으므로 저사양의 씨피유(CPU)를 사용할 수 있으나, 상기 제어장치에 음성 인식 기능을 부가할 경우에는 고수준의 연산을 위해서 고사양의 씨피유(CPU)를 사용해야 된다.At this time, if the control device does not have a voice recognition function, a low-spec CPU can be used because a complex operation is not required. However, in the case of adding a voice recognition function to the control device, a high-spec CPU ( CPU).

이에 따라 상기 음성 인식 제어장치의 제작 단가가 증가하는 문제점이 있으며, 처리해야 할 음성명령의 개수가 증가하거나 음성명령의 길이가 늘어날수록 처리시간을 단축하기 위해서 더욱 고사양의 씨피유(CPU)를 사용해야 하기 때문에 제작 단가가 더욱 증가하게 되는 문제점이 있다. 이는 음성 인식 제어장치의 대중화에 걸림돌로 작용하고 있다.Accordingly, there is a problem that the manufacturing cost of the voice recognition control device increases, and as the number of voice commands to be processed increases or the length of the voice commands increases, it is necessary to use a higher specification CPU to shorten the processing time. Therefore, there is a problem that the manufacturing cost is further increased. This is acting as an obstacle to the popularization of the voice recognition control device.

따라서 음성 인식 제어장치의 제작 단가를 낮추면서 음성명령의 처리 성능은 더욱 향상시킬 수 있도록 하는 방법이 필요한 상황이다.Accordingly, there is a need for a method to further improve the processing performance of voice commands while lowering the manufacturing cost of the voice recognition control device.

본 발명의 배경기술은 대한민국 등록특허 10-0984528호(2010.09.24. 등록, 분산형 음성 인식 시스템에서 음성 인식을 위한 시스템 및 방법)에 개시되어 있다. The background technology of the present invention is disclosed in Korean Patent Registration No. 10-0984528 (registered on September 24, 2010, a system and method for speech recognition in a distributed speech recognition system).

본 발명의 일 측면에 따르면, 본 발명은 상기와 같은 문제점을 해결하기 위해 창작된 것으로서, 복수의 음성명령 처리 장치가 각기 노드로서 연결된 블루투스 메쉬 네트워크에 있어서, 상기 노드에 각기 연결된 외부기기들의 자원을 추가로 이용하여 상기 노드에 입력되는 음성명령을 처리할 수 있도록 하는, 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법을 제공하는 데 그 목적이 있다. According to an aspect of the present invention, the present invention is created to solve the above problems, in a Bluetooth mesh network in which a plurality of voice command processing devices are connected as nodes, respectively, the resources of external devices connected to the nodes are Another object of the present invention is to provide a method for processing a voice command using a Bluetooth mesh network, which allows the voice command input to the node to be processed by additional use.

본 발명의 일 측면에 따른 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법은 블루투스 메쉬 네트워크의 노드들 중 적어도 하나 이상의 노드에 음성 데이터가 입력되면, 상기 노드들 중 기 지정된 방식으로 특정된 하나의 특정 노드의 제어부가 상기 음성 데이터를 기 지정된 방식에 따라 복수의 음성 데이터로 분할하는 단계; 상기 분할된 복수의 음성 데이터를, 상기 특정 노드의 제어부가 상기 블루투스 메쉬 네트워크의 노드별로 분산 처리할 음성 데이터로 구분하는 단계; 상기 특정 노드의 제어부가 상기 구분된 음성 데이터를 상기 노드별로 전송하여 분산 처리하게 하고, 상기 각 노드별로 분산 처리된 음성 데이터를 기 지정된 방식으로 특정된 하나의 집중노드에 집중시켜 재구성하게 하는 단계; 및 상기 집중노드의 제어부가 상기 재구성된 음성 데이터에 대응하는 음성명령을 인식하여 명령을 실행하는 단계;를 포함하는 것을 특징으로 한다.In the method of processing a voice command using a Bluetooth mesh network according to an aspect of the present invention, when voice data is input to at least one or more nodes of the Bluetooth mesh network, the Dividing the voice data into a plurality of voice data according to a predetermined method; Dividing the divided plurality of voice data into voice data to be distributedly processed for each node of the Bluetooth mesh network, by a controller of the specific node; Allowing the control unit of the specific node to transmit the classified voice data for each node to perform distributed processing, and to reconfigure the distributed voice data for each node by concentrating on one specified central node in a predetermined manner; And recognizing, by the controller of the central node, a voice command corresponding to the reconstructed voice data and executing the command.

본 발명에 있어서, 상기 특정 노드는, 음성 데이터를 동시에 입력받는 적어도 하나 이상의 노드들이 상기 음성 데이터의 진폭 피크 값과 음성 입력 시간을 서로 비교하여, 이 비교 결과에 따라 음성 입력 시간이 더 빠르거나 진폭 피크 값이 더 큰 노드가 특정되거나, 랜덤 방식으로 특정되는 것을 특징으로 한다.In the present invention, the specific node compares the amplitude peak value of the voice data with the voice input time by at least one or more nodes simultaneously receiving voice data, and according to the comparison result, the voice input time is faster or the amplitude A node having a larger peak value is specified or characterized in that it is specified in a random manner.

본 발명에 있어서, 상기 각 노드별로 분산 처리된 음성 데이터를 기 지정된 방식으로 특정된 하나의 집중노드에 집중시켜 재구성하게 하는 단계에서, 상기 집중노드는, 특정 노드의 제어부가, 미리 생성된 성능 테이블을 참조하거나, 또는 실시간으로 '성능 질문 요청 메시지'를 다른 노드들에게 전송하고, 다른 노드들로부터'성능 회신 메시지'를 수신하여 상기 '성능 회신 메시지'에 포함된 정보에 기초하여 가장 성능이 우수한 노드를 찾아 집중노드로 선정하는 것을 특징으로 한다.In the present invention, in the step of concentrating and reconstructing the voice data distributed by each node to one specified centralized node in a predetermined manner, the centralized node includes a performance table generated in advance by a control unit of a specific node. Or, by transmitting a'performance question request message' to other nodes in real time, and receiving a'performance reply message' from other nodes, based on the information included in the'performance reply message', It is characterized by finding a node and selecting it as a centralized node.

본 발명에 있어서, 상기 집중노드는, 분산 처리된 음성 데이터들을 전송한 다른 노드들의 물리 그룹 정보에 기초하여 사용자의 현재 위치를 추정하고, 상기 사용자의 현재 위치가 추정됨에 따라 사용자가 음성명령 입력 시 물리 그룹 정보를 생략하더라도 상기 추정한 사용자의 현재 위치에 대응하는 물리 그룹을 자동으로 인식하여 음성명령을 간소화시킬 수 있도록 구현된 것을 특징으로 한다.In the present invention, the centralized node estimates the user's current location based on physical group information of other nodes that have transmitted distributed-processed voice data, and when the user inputs a voice command as the current location of the user is estimated. Even if the physical group information is omitted, the physical group corresponding to the estimated current position of the user is automatically recognized to simplify the voice command.

본 발명에 있어서, 상기 블루투스 메쉬 네트워크의 노드들은, 음성명령 처리 장치 및 제어 대상기기가 하나로 통합되어 구현되는 것을 특징으로 한다.In the present invention, the nodes of the Bluetooth mesh network are implemented by integrating a voice command processing device and a control target device into one.

본 발명에 있어서, 상기 음성 데이터를 기 지정된 방식에 따라 복수의 음성 데이터로 분할하는 단계에서, 상기 입력된 음성 데이터를 기 설정된 기준값에 맞춰 확대 또는 축소시키는 스케일링 과정을 수행하는 단계;를 더 포함하는 것을 특징으로 한다.In the present invention, in the step of dividing the voice data into a plurality of voice data according to a predetermined method, performing a scaling process of expanding or reducing the input voice data according to a preset reference value; It is characterized by that.

본 발명에 있어서, 상기 음성 데이터가 기 지정된 방식으로 분할되면, 상기 특정 노드의 제어부가, 상기 분할된 음성 데이터의 개수가 기 지정된 개수 보다 적은지 체크하고, 상기 체크 결과, 상기 분할된 음성 데이터의 개수가 기 지정된 개수 이하인 경우, 상기 음성 데이터를 복수의 노드에 분산 처리하지 않고, 상기 특정 노드의 음성명령 처리 장치가 자체적으로 음성 분석 및 처리를 수행하도록 구현된 것을 특징으로 한다.In the present invention, when the voice data is divided in a predetermined manner, the control unit of the specific node checks whether the number of divided voice data is less than the preset number, and as a result of the check, the number of divided voice data When the number is less than a predetermined number, the voice command processing apparatus of the specific node does not distribute the voice data to a plurality of nodes, and the voice command processing apparatus of the specific node is implemented to perform voice analysis and processing on its own.

본 발명에 있어서, 상기 음성 데이터가 집중되면, 상기 집중노드의 제어부가, 상기 분할된 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있는지 체크하고, 상기 체크 결과, 상기 음성 데이터의 개수에 대응하는 명령 필수 정보가 모두 포함되어 있을 경우 해당 음성 명령을 실행하고, 상기 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있지 않을 경우 정보 출력부를 통해 부족한 명령 필수 정보가 포함된 음성명령의 재입력을 요청하도록 구현된 것을 특징으로 한다.In the present invention, when the voice data is concentrated, the control unit of the central node checks whether command essential information corresponding to the number of divided voice data is included, and as a result of the check, corresponds to the number of voice data. If all the required command information is included, the corresponding voice command is executed, and if the command essential information corresponding to the number of voice data is not included, the voice command containing insufficient command essential information is re-entered through the information output unit. It characterized in that it is implemented to request.

본 발명에 있어서, 상기 특정 노드의 제어부가 상기 블루투스 메쉬 네트워크의 노드별로 분산 처리할 음성 데이터로 구분하는 단계에서, 상기 특정 노드의 제어부는, 상기 노드들의 개수, 및 각 노드의 성능 또는 각 노드에 연결된 외부기기의 성능에 따라, 음성 데이터의 분산 여부, 음성 데이터의 분산 우선순위, 및 분산할 음성 데이터의 개수를 조정하는 것을 특징으로 한다.In the present invention, in the step of dividing by the control unit of the specific node into voice data to be distributed and processed for each node of the Bluetooth mesh network, the control unit of the specific node includes: According to the performance of the connected external device, whether or not the voice data is distributed, the distribution priority of the voice data, and the number of voice data to be distributed are adjusted.

본 발명에 있어서, 상기 특정 노드의 제어부가 상기 블루투스 메쉬 네트워크의 노드별로 분산 처리할 음성 데이터로 구분하기 위하여, 상기 특정 노드의 제어부는, 상기 노드의 개수, 각 노드 또는 노드에 연결된 외부기기의 성능 정보가 저장된 성능 테이블을 참조하는 것을 특징으로 한다.In the present invention, in order for the control unit of the specific node to classify the voice data to be distributed and processed for each node of the Bluetooth mesh network, the control unit of the specific node includes: the number of nodes, the performance of each node or an external device connected to the node. It is characterized by referring to a performance table in which information is stored.

본 발명에 있어서, 상기 성능 테이블은, 블루투스 메쉬 네트워크의 각 노드의 제어부가, '성능 질문 요청 메시지'를 다른 노드, 또는 노드에 연결된 외부기기에 전송하고, 상기 다른 노드 또는 노드에 연결된 외부기기가 회신하는'성능 회신 메시지'에 포함된 정보에 기초하여 생성하며, 상기 성능 회신 메시지는, CPU 클럭 정보, CPU 코어 개수 정보, 현재 CPU 사용률 정보, 및 현재 여유 메모리 정보 중 적어도 하나 이상을 포함하는 것을 특징으로 한다.In the present invention, in the performance table, the controller of each node of the Bluetooth mesh network transmits a'performance question request message' to another node or an external device connected to the node, and the other node or an external device connected to the node is Generated based on information included in the returned'performance reply message', and the performance reply message includes at least one of CPU clock information, CPU core count information, current CPU usage rate information, and current spare memory information. It is characterized.

본 발명에 있어서, 상기 블루투스 메쉬 네트워크의 각 노드의 제어부는, 음성 데이터 처리를 가장 빠르게 할 수 있는 노드, 또는 노드에 연결된 외부기기를 선정하기 위하여, 상기'성능 회신 메시지'의 정보뿐만 아니라, 도약 정보 및 거리 정보를 추가로 반영하는 것을 특징으로 한다.In the present invention, the controller of each node of the Bluetooth mesh network, in order to select a node that can process voice data fastest or an external device connected to the node, not only the information of the'performance reply message', but also leaps forward. It is characterized in that the information and distance information are additionally reflected.

본 발명에 있어서, 상기 블루투스 메쉬 네트워크의 노드는, 노드 자신이 제어할 대상기기의 위치에 따른 물리 그룹, 대상기기의 유형, 및 대상기기의 번호를 기반으로 분류되는 것을 특징으로 한다.In the present invention, the nodes of the Bluetooth mesh network are classified based on a physical group according to a location of a target device to be controlled by the node, a type of the target device, and a number of the target device.

본 발명에 있어서, 상기 물리 그룹은, 사용자가 외부기기를 이용해 설정하거나, 노드 자체적으로 상기 블루투스 메쉬 네트워크의 다른 노드와 통신하여 거리 정보를 바탕으로 자동으로 설정할 수도 있도록 구현된 것을 특징으로 한다.In the present invention, the physical group may be configured by a user using an external device, or a node itself may be configured to automatically set based on distance information by communicating with another node of the Bluetooth mesh network.

본 발명에 있어서, 상기 물리 그룹을, 노드 자체적으로 상기 블루투스 메쉬 네트워크의 다른 노드와 통신하여 거리 정보를 바탕으로 자동으로 설정하기 위하여, 이미 물리 그룹이 등록된 노드들이 설치되어 있는 상태에서 새로운 신규노드가 신규 설치될 경우, 상기 신규노드가 다른 노드에 물리 그룹의 등록을 요청하고, 각 물리 그룹의 노드가 자신과 상기 신규노드간의 거리를 추정하여 이 거리 정보를 집중노드에 전송하며, 상기 집중노드는 자신이 속한 물리 그룹 내의 다른 노드들과 다른 물리 그룹에 속한 노드들 간의 거리를 비교하여, 상기 신규노드가 어느 물리 그룹에 가장 근접한지 탐색하고, 상기 탐색 결과에 따라 상기 집중노드가 상기 신규노드에 가장 가까운 물리 그룹 정보를 판단하도록 구현된 것을 특징으로 한다.In the present invention, in order to automatically set the physical group based on distance information by communicating with another node of the Bluetooth mesh network by itself, a new node in a state in which nodes already registered with a physical group are installed. When is newly installed, the new node requests registration of a physical group to another node, and each physical group node estimates the distance between itself and the new node and transmits this distance information to the central node. Compares the distances between other nodes in the physical group to which it belongs and nodes in the other physical group, searches for which physical group the new node is closest to, and determines which physical group is the closest to the central node according to the search result. It characterized in that it is implemented to determine the closest physical group information to.

본 발명의 일 측면에 따르면, 본 발명은 복수의 음성명령 처리 장치가 각기 노드로서 연결된 블루투스 메쉬 네트워크에 있어서, 상기 노드에 각기 연결된 외부기기들의 자원을 추가로 이용하여 상기 노드에 입력되는 음성명령을 처리할 수 있도록 함으로써, 상기 노드의 기능성 및 경제성을 향상시킬 수 있도록 한다.According to an aspect of the present invention, in a Bluetooth mesh network in which a plurality of voice command processing devices are connected as nodes, respectively, the voice command input to the node is transmitted by additionally using resources of external devices connected to the node. By making it possible to process, it is possible to improve the functionality and economics of the node.

도 1은 본 발명의 일 실시예에 따른 음성명령 처리 장치의 개략적인 구성을 보인 예시도.
도 2는 본 발명의 일 실시예에 따른 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법을 설명하기 위한 흐름도.
도 3은 본 발명의 일 실시예에 따른 블루투스 메쉬 네트워크의 개략적인 형태를 보인 예시도.
도 4는 상기 도 2에 있어서, 각 노드별 성능 정보를 저장하는 성능 테이블 생성 및 갱신 방법을 설명하기 위하여 보인 예시도.
도 5는 상기 도 2에 있어서, 입력된 하나의 음성 데이터를 복수의 음성 데이터를 분할하는 방법을 설명하기 위하여 보인 예시도.
도 6은 상기 도 2에 있어서, 음성 데이터를 분산 처리하기 위하여 분산할 노드의 개수에 대응하여 음성 데이터를 분할시켜 분산 처리한 후 다시 분산 처리된 음성 데이터를 집중시키는 과정을 설명하기 위하여 보인 예시도.
도 7은 상기 도 5에 있어서, 분산 처리를 위한 음성 데이터의 분할 시 수행되는 스케일링을 설명하기 위하여 보인 예시도.
도 8은 상기 도 2에 있어서, 블루투스 메쉬 네트워크의 노드들 중 지정된 특정 노드를 분산 처리에서 제외하는 방법을 설명하기 위하여 보인 예시도.
도 9는 상기 도 2에 있어서, 사용자의 현재 위치에 따라 음성명령에 포함할 수 있는 정보의 종류와 개수를 설명하기 위하여 보인 예시도.
도 10은 상기 도 2에 있어서, 제어할 대상기기의 그룹화와 음성명령의 매칭 방법을 설명하기 위하여 보인 예시도.
1 is an exemplary view showing a schematic configuration of a voice command processing apparatus according to an embodiment of the present invention.
2 is a flowchart illustrating a voice command processing method using a Bluetooth mesh network according to an embodiment of the present invention.
3 is an exemplary view showing a schematic form of a Bluetooth mesh network according to an embodiment of the present invention.
FIG. 4 is an exemplary diagram illustrating a method of generating and updating a performance table for storing performance information for each node in FIG. 2.
FIG. 5 is an exemplary diagram illustrating a method of dividing a plurality of voice data from one input voice data in FIG. 2.
FIG. 6 is an exemplary diagram illustrating a process of distributing voice data in FIG. 2, dividing voice data according to the number of nodes to be distributed, and then concentrating the distributed voice data again in order to distribute the voice data. .
FIG. 7 is an exemplary diagram illustrating scaling performed when segmenting voice data for distributed processing in FIG. 5.
FIG. 8 is an exemplary diagram illustrating a method of excluding a designated specific node among nodes of a Bluetooth mesh network from distributed processing in FIG. 2.
9 is an exemplary view shown in FIG. 2 to explain the types and number of information that can be included in a voice command according to a user's current location.
10 is an exemplary view illustrating a method of grouping target devices to be controlled and matching voice commands in FIG. 2.

이하, 첨부된 도면을 참조하여 본 발명에 따른 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법의 일 실시예를 설명한다. Hereinafter, an embodiment of a method for processing a voice command using a Bluetooth mesh network according to the present invention will be described with reference to the accompanying drawings.

이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.In this process, the thickness of the lines or the size of components shown in the drawings may be exaggerated for clarity and convenience of description. In addition, terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to the intention or custom of users or operators. Therefore, definitions of these terms should be made based on the contents throughout the present specification.

도 1은 본 발명의 일 실시예에 따른 음성명령 처리 장치의 개략적인 구성을 보인 예시도이다.1 is an exemplary view showing a schematic configuration of a voice command processing apparatus according to an embodiment of the present invention.

도 1에 도시된 바와 같이, 본 실시예에 따른 음성명령 처리 장치(100)는, 음성 입력부(110), 통신부(120), 제어부(130), 저장부(140), 정보 출력부(150), 및 대상기기 구동부(160)를 포함한다. 1, the voice command processing apparatus 100 according to the present embodiment includes a voice input unit 110, a communication unit 120, a control unit 130, a storage unit 140, and an information output unit 150. , And a target device driver 160.

본 실시예에 따른 음성명령 처리 장치(100)는 복수개가 노드로서 연결되어 블루투스 메쉬 네트워크를 형성할 수 있다. In the voice command processing apparatus 100 according to the present exemplary embodiment, a plurality of voice command processing apparatuses 100 may be connected as nodes to form a Bluetooth mesh network.

만약 본 실시에에서 상기 음성명령 처리 장치(100)가 상기 대상기기(예 : LED 전등, 형광등, 보일러, 공기 청정기 등) 자체에 통합될 경우 상기 대상기기 자체가 노드로서 블루투스 메쉬 네트워크에 연결될 수 있음에 유의한다.If the voice command processing device 100 is integrated into the target device (eg, LED lamp, fluorescent lamp, boiler, air purifier, etc.) in this embodiment, the target device itself can be connected to the Bluetooth mesh network as a node. Please note.

상기 음성 입력부(110)는 마이크(MIC)를 포함하며, 외부로부터 유입되는 소리 예컨대, 사용자의 음성을 수신할 수 있다.The voice input unit 110 includes a microphone (MIC), and may receive a sound from outside, for example, a user's voice.

상기 통신부(120)는 본 실시예에 따른 음성명령 처리 장치간의 통신(또는 네트워크)을 연결하거나, 본 실시예에 따른 음성명령 처리 장치와 외부기기(예 : 스마트폰, 태블릿, PC 등)간의 통신을 연결할 수 있다. The communication unit 120 connects the communication (or network) between the voice command processing devices according to the present embodiment, or communicates between the voice command processing device according to the present embodiment and an external device (for example, a smartphone, tablet, PC, etc.). Can be connected.

여기서 상기 외부기기는 상기 음성명령 처리 장치가 아니지만, 프로세서(예 : CPU)를 구비하여 응용 프로그램의 설치가 가능하며, 또한 상기 음성명령 처리 장치로부터 전달되는 각종 데이터나 명령을 처리하거나 연산을 수행할 수 있는 장치를 의미한다. 다만 각 노드에 반드시 외부기기가 연결되는 것은 아니며, 모든 노드에 외부기기가 전혀 연결되지 않을 수도 있다.Here, the external device is not the voice command processing device, but includes a processor (eg, CPU) to install an application program, and also processes various data or commands transmitted from the voice command processing device or performs calculations. It means a device that can. However, external devices are not necessarily connected to each node, and external devices may not be connected to all nodes at all.

예컨대 상기 통신부(120)는 무선 통신(예 : 블루투스, WiFi, NFC 등) 또는 유선 통신을 통해서 상기 통신을 연결할 수 있다. For example, the communication unit 120 may connect the communication through wireless communication (eg, Bluetooth, WiFi, NFC, etc.) or wired communication.

이하 상기 통신(또는 네트워크)이 연결된 음성명령 처리 장치(100)(또는 음성명령 처리 장치가 통합된 대상기기)를 노드라고 기재할 수 있다.Hereinafter, the voice command processing device 100 (or a target device in which the voice command processing device is integrated) to which the communication (or network) is connected may be described as a node.

상기 통신부(120)는 상기 음성 입력부(110)를 통해 입력된 음성(또는 음성명령)의 전체 또는 음성(또는 음성명령)의 일부를 분할하여 상기 통신이 연결된 음성명령 처리 장치(또는 노드)나 외부기기(예 : 스마트폰, 태블릿, PC 등)에 전송할 수 있다. 또한 상기 통신부(120)는 상기 통신이 연결된 음성명령 처리 장치(또는 노드)나 외부기기(예 : 스마트폰, 태블릿, PC 등)로부터 음성(또는 음성명령) 인식 결과를 전송받을 수 있다.The communication unit 120 divides all of the voice (or voice command) input through the voice input unit 110 or a part of the voice (or voice command), and the voice command processing device (or node) to which the communication is connected, or an external device. It can be transferred to devices (e.g., smartphones, tablets, PCs, etc.). In addition, the communication unit 120 may receive a voice (or voice command) recognition result from a voice command processing device (or node) to which the communication is connected or an external device (eg, a smartphone, tablet, PC, etc.).

상기 제어부(130)는 음성명령 처리 장치(100)의 적어도 하나 이상의 다른 구성요소들의 제어 및 통신에 관한 연산이나 데이터 처리를 실행한다. The controller 130 controls at least one or more other components of the voice command processing apparatus 100 and performs operations or data processing related to communication.

예컨대 상기 제어부(130)는 운영 체제 또는 응용 프로그램을 구동하여, 상기 제어부(130)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 또는 연산을 수행할 수 있다. 또한 상기 제어부(130)는 중앙처리장치, 어플리케이션 프로세서(AP), 또는 커뮤니케이션 프로세서(CP)) 중 하나 또는 그 이상을 포함할 수 있으며, 시스템 온 칩(SoC) 형태로 구현될 수도 있다.For example, the controller 130 may control a plurality of hardware or software components connected to the controller 130 by driving an operating system or an application program, and may perform various data processing or operations. In addition, the control unit 130 may include one or more of a central processing unit, an application processor (AP), or a communication processor (CP), and may be implemented in the form of a system on a chip (SoC).

상기 제어부(130)는 상기 음성 입력부(110)를 통해 입력되는 음성을 인식하여 음성명령을 처리한다. 여기서 음성을 인식하는 기술은 다양한 공지 기술이 있으므로, 본 실시예에서는 음성을 인식하는 기술 자체에 대한 설명은 생략한다.The control unit 130 processes a voice command by recognizing a voice input through the voice input unit 110. Here, since there are various known techniques for recognizing speech, a description of the speech recognizing technology itself is omitted in this embodiment.

상기 저장부(140)는 음성명령 처리 장치(100)에서 인식하여 처리할 적어도 하나 이상의 음성명령이 저장된다. 또한 상기 음성명령에 대응하여 제어(또는 구동)할 기기(즉, 대상기기)에 관련된 데이터(예 : 위치, ID, 제어를 위해 대상기기에 출력하는 신호)를 저장한다.The storage unit 140 stores at least one voice command to be recognized and processed by the voice command processing apparatus 100. In addition, in response to the voice command, data related to the device to be controlled (or driven) (ie, the target device) (eg, location, ID, signal output to the target device for control) is stored.

상기 저장부(140)는 휘발성 및/또는 비휘발성 메모리를 포함할 수 있다.The storage unit 140 may include volatile and/or nonvolatile memory.

상기 저장부(140)는 내장 메모리 또는 외장 메모리를 포함할 수 있다.The storage unit 140 may include an internal memory or an external memory.

상기 저장부(140)는 소프트웨어 및/또는 프로그램(예 : 어플리케이션)을 저장할 수 있다. 여기서 상기 어플리케이션은 적어도 하나의 지정된 기능을 수행하기 위한 일련의 프로그램(또는 명령어(인스트럭션)) 집합으로서, 예컨대, 복수의 음성명령 처리 장치가 각기 노드로서 연결된 블루투스 메쉬 네트워크에 있어서, 상기 노드에 각기 연결된 외부기기들의 자원을 추가로 이용하여 상기 노드에 입력되는 음성명령을 처리(분산 처리)할 수 있도록 하는, 음성명령 분산 처리 어플리케이션 등을 포함할 수 있다. The storage unit 140 may store software and/or programs (eg, applications). Here, the application is a set of programs (or instructions (instructions)) for performing at least one specified function, for example, in a Bluetooth mesh network in which a plurality of voice command processing devices are connected as nodes, respectively, each connected to the node. It may include a voice command distributed processing application, etc., which enables the voice command input to the node to be processed (distributed processing) by additionally using resources of external devices.

상기 정보 출력부(150)는 상기 음성 입력부(110)를 통해서 음성(또는 음성명령)을 입력받거나, 상기 입력받은 음성(또는 음성명령)을 인식하거나, 또는 상기 음성(또는 음성명령)을 인식하여 처리할 경우, 상기 각 단계에 따른 정보(예 : 음성을 입력받은 정보, 음성 인식 상태 정보, 음성명령을 처리하여 대상기기를 구동한 결과 정보)를 사운드나 디스플레이 방식으로 출력할 수 있다. 이를 통해 사용자가 음성명령 처리 장치(100)의 동작 상태를 인지함으로써 음성명령이 제대로 처리되고 있는지 확인할 수 있다.The information output unit 150 receives a voice (or voice command) through the voice input unit 110, recognizes the received voice (or voice command), or recognizes the voice (or voice command). In the case of processing, information according to the above steps (eg, information on receiving a voice, information on a voice recognition state, information on a result of driving a target device by processing a voice command) may be output in a sound or display method. Through this, the user can check whether the voice command is being properly processed by recognizing the operation state of the voice command processing apparatus 100.

상기 대상기기 구동부(160)는, 상기 제어부(130)의 제어에 따라, 상기 음성(또는 음성명령)에 의해 제어할 대상기기(예 : LED 전등, 형광등, 보일러, 공기 청정기 등)를 제어하기 위하여 미리 지정된 제어신호(예 : 온/오프 스위칭 신호, 디밍 신호, 레벨 조절 신호 등)를 출력하여 해당 대상기기를 제어한다.The target device driving unit 160, according to the control of the control unit 130, to control the target device (eg, LED lamp, fluorescent lamp, boiler, air cleaner, etc.) to be controlled by the voice (or voice command) The target device is controlled by outputting a predetermined control signal (eg, on/off switching signal, dimming signal, level control signal, etc.).

이하 상기 음성명령 처리 장치(100)가 블루투스 메쉬 네트워크를 이용하여 음성명령을 처리하는 방법에 대해서 설명한다. Hereinafter, a method of processing a voice command by the voice command processing apparatus 100 using a Bluetooth mesh network will be described.

예컨대 상기 블루투스 메쉬 네트워크는 블루투스 LE(Low Energy)를 사용하는 외부기기와 데이터 교류가 가능하다. 상기 외부기기들은 블루투스 메쉬 네트워크에 상시 접속 상태이며 언제든지 데이터의 교류가 가능하다. 이에 따라 각 노드(즉, 음성명령 처리 장치, 또는 음성명령 처리 장치가 통합된 대상기기)에서 수행해야 할 계산(즉, 음성인식 처리를 위한 연산)을 상기 외부기기에 이양하여 분산 처리할 수 있다. For example, the Bluetooth mesh network can exchange data with an external device using Bluetooth Low Energy (LE). The external devices are always connected to the Bluetooth mesh network, and data can be exchanged at any time. Accordingly, the calculation to be performed in each node (ie, the voice command processing device or the target device in which the voice command processing device is integrated) can be transferred to the external device for distributed processing. .

이하 상기 외부기기에는 상기 노드(즉, 음성명령 처리 장치, 또는 음성명령 처리 장치가 통합된 대상기기)와 통신하여 음성인식을 위한 연산을 분산 처리할 수 있는 응용 프로그램(어플리케이션)이 설치된 것으로 가정하여 설명한다.Hereinafter, it is assumed that an application program (application) capable of distributed processing operations for speech recognition by communicating with the node (i.e., a voice command processing device or a target device in which a voice command processing device is integrated) is installed in the external device. Explain.

도 2는 본 발명의 일 실시예에 따른 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법을 설명하기 위한 흐름도이고, 도 3은 본 발명의 일 실시예에 따른 블루투스 메쉬 네트워크의 개략적인 형태를 보인 예시도이다.2 is a flowchart illustrating a method of processing a voice command using a Bluetooth mesh network according to an embodiment of the present invention, and FIG. 3 is an exemplary view showing a schematic form of a Bluetooth mesh network according to an embodiment of the present invention. .

이하 설명의 편의를 위하여, 상기 도 3에 도시된 블루투스 메쉬 네트워크에 연결된 복수의 노드 중 어느 하나의 노드(예 : A)에 음성(즉, 음성명령)이 입력되는 상황을 가정하여 설명한다. For convenience of description, the following description assumes a situation in which a voice (ie, a voice command) is input to any one node (eg, A) among a plurality of nodes connected to the Bluetooth mesh network shown in FIG. 3.

참고로 본 실시예에서 상기 블루투스 메쉬 네트워크는 예시적으로 기재된 것이며 다른 실시예에서는 단지 무선 메쉬 네트워크일 수도 있다.For reference, in this embodiment, the Bluetooth mesh network is described as an example, and in other embodiments, it may be just a wireless mesh network.

도 2를 참조하면, 본 실시예에 따른 음성명령 처리 장치(100)의 제어부(130)는, 음성 데이터(즉, 음성명령)이 입력되면(S101), 상기 음성 데이터를 기 지정된 방식(예 : 음소 단위, 음운 단위 등)으로 분할한다(S102)(도 5 참조). Referring to FIG. 2, when voice data (ie, voice command) is input (S101), the control unit 130 of the voice command processing apparatus 100 according to the present embodiment sets the voice data in a predetermined manner (eg: It is divided into phoneme units, phoneme units, etc.) (S102) (see Fig. 5).

예컨대 도 5에 도시된 바와 같이, 연속해서 입력된 하나의 음성 데이터를 기 지정된 방식에 따라 복수의 음성 데이터로 분할한다. For example, as shown in FIG. 5, one continuous input voice data is divided into a plurality of voice data according to a predetermined method.

도 5는 상기 도 2에 있어서, 입력된 하나의 음성 데이터를 복수의 음성 데이터를 분할하는 방법을 설명하기 위하여 보인 예시도이고, 도 7은 상기 도 5에 있어서, 분산 처리를 위한 음성 데이터의 분할 시 수행되는 스케일링을 설명하기 위하여 보인 예시도이다.FIG. 5 is an exemplary diagram illustrating a method of dividing a plurality of voice data from one input voice data in FIG. 2, and FIG. 7 is a division of voice data for distributed processing in FIG. It is an exemplary diagram shown to explain the scaling performed during the time.

도 7을 참조하면, 사용자가 입력하는 음성 데이터(즉, 음성명령)는 사용자에 따라 상대적으로 느리게 말할 수도 있고 빠르게 말할 수도 있기 때문에 음성 데이터(즉, 음성명령)의 길이(즉, 음성이 입력되는 시간)에도 차이가 발생한다. Referring to FIG. 7, since voice data (i.e., voice command) input by a user can be spoken relatively slowly or quickly depending on the user, the length of the voice data (i.e., voice command) Time) also makes a difference.

이에 따라 상기 제어부(130)는 음성 데이터(즉, 음성명령)를 정확히 분석하거나 처리하기 위하여, 상기 입력된 음성 데이터(즉, 입력 음성)를 기 설정된 비교값(즉, 기준값)과 일치시키는 스케일링 과정(즉, 입력 음성을 기준값에 맞춰 확대 또는 축소 과정)을 수행한다. Accordingly, in order to accurately analyze or process voice data (i.e., voice command), the control unit 130 performs a scaling process of matching the input voice data (i.e., input voice) with a preset comparison value (i.e., a reference value). (In other words, the process of expanding or reducing the input voice according to the reference value) is performed.

이때 상기 스케일링 과정을 위한 스케일 팩터(scale factor)는 음성 데이터(즉, 음성명령)가 입력될 때마다(즉, 음성을 입력하는 사용자에 따라) 다르게 설정될 수 있다.In this case, a scale factor for the scaling process may be set differently each time voice data (ie, a voice command) is input (ie, according to a user who inputs voice).

다시 도 2를 참조하면, 상기와 같이 하나의 음성 데이터(즉, 음성명령)가 기 지정된 방식으로 분할되면, 상기 제어부(130)는 상기 기 지정된 방식으로 분할된 음성 데이터의 개수가 기 지정된 값(개수) 보다 적은지 체크한다(S103).Referring back to FIG. 2, when one voice data (i.e., voice command) is divided in a predetermined manner as described above, the controller 130 determines the number of voice data divided in the predetermined manner as a predetermined value ( It is checked if it is less than the number) (S103).

예컨대 상기 분할된 음성 데이터의 개수가 기 지정된 값(개수) 이하인 경우에는 음성의 분석 및 처리에 많은 자원(즉, 씨피유 자원)을 사용하지 않고도 처리할 수 있음을 의미한다. 즉, 굳이 분산 처리를 하지 않더라도 상기 음성 데이터가 입력된 노드(예 : A) 자체에서 처리할 수도 있음을 의미한다.For example, when the number of divided voice data is less than or equal to a predetermined value (number), it means that voice analysis and processing can be processed without using many resources (ie, CPC resources). In other words, it means that even if the distributed processing is not performed, the voice data can be processed by the input node (eg, A) itself.

상기 체크(S103) 결과, 상기 기 지정된 방식으로 분할된 음성 데이터의 개수가 기 지정된 값(개수) 이하이면(S103의 예), 상기 제어부(130)는 상기 음성 데이터를 입력받은 노드(예 : A) 자체에서 음성 분석 및 처리를 수행한다(S104).As a result of the check (S103), if the number of the voice data divided in the preset manner is less than or equal to a preset value (number) (YES in S103), the controller 130 ) Performs speech analysis and processing in itself (S104).

이때 상기 제어부(130)는 상기 분할된 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있는지 체크한다(S108).At this time, the control unit 130 checks whether essential command information corresponding to the number of divided voice data is included (S108).

예컨대 상기 명령 필수 정보는, 제어할 대상기기의 종류(또는 대상기기의 ID or 대상기기에 지정된 번호) 및 제어명령(예 : 온, 오프, 켜, 꺼 등)을 포함한다. 그리고 상기 음성 데이터의 개수는, 음성 데이터(즉, 음성명령)의 구체적인 정도(즉, 음성명령에 포함된 정보의 개수)에 따라 기 지정된 방식으로 분할된 음성 데이터의 개수(즉, 음성명령에 포함된 정보의 개수)를 의미한다. 가령, 사용자는 "형광등 꺼","형광등 B 꺼","복도의 형광등 모두 꺼"등으로(도 9의 (b) 참조), 음성 데이터(즉, 음성명령)에 포함된 정보의 개수가 다를 수 있다.For example, the command essential information includes the type of the target device to be controlled (or the ID of the target device or the number designated for the target device) and a control command (eg, on, off, on, off, etc.). And the number of voice data is the number of voice data divided in a predetermined manner according to the specific degree of voice data (i.e., voice command) (i.e., the number of information included in the voice command) (i.e., included in the voice command). It means the number of information). For example, the user may use "Turn off the fluorescent lamp", "Turn off fluorescent lamp B", and "Turn off all fluorescent lamps in the corridor" (see Fig. 9(b)), and the number of information included in the voice data (ie, voice command) is different. I can.

도 9는 상기 도 2에 있어서, 사용자의 현재 위치에 따라 음성명령에 포함할 수 있는 정보의 종류와 개수를 설명하기 위하여 보인 예시도로서, 사용자의 현재 위치가 서재인 경우, 서재에는 스탠드(D)와 형광등(E)만 있으므로, 사용자는 "형광등 꺼"와 같이 2개의 정보(예 : 형광등, 꺼)가 포함된 음성명령을 입력할 수 있다. 그러나 사용자의 현재 위치가 복도인 경우, 복도에는 2개의 형광등(F, G)과 스탠드(H)가 있으므로, 사용자는 "형광등 F 꺼"와 같이 3개의 정보(예 : 형광등, F, 꺼)가 포함된 음성명령을 입력해야 한다. 또한 사용자의 현재 위치가 복도이며 내 방의 형광등(C)을 제어하고자 할 경우, 사용자는 "내 방의 형광등 C 꺼"와 같이 4개의 정보(예 : 내 방, 형광등, c, 꺼)가 포함된 음성명령을 입력해야 하는 것이다.9 is an exemplary diagram shown to explain the type and number of information that can be included in a voice command according to the user's current location in FIG. 2, and when the user's current location is a library, the library is equipped with a stand (D ) And the fluorescent lamp (E), the user can input a voice command including two pieces of information (eg, fluorescent lamp, turn off), such as "turn off the fluorescent lamp". However, if the user's current location is a corridor, there are two fluorescent lamps (F, G) and a stand (H) in the corridor, so the user has three pieces of information (eg, fluorescent lamp, F, turn off), such as "Turn off fluorescent lamp F". You must enter the included voice command. In addition, if the user's current location is a corridor and wants to control the fluorescent lamp (C) in my room, the user has a voice that includes four pieces of information (eg, my room, fluorescent lamp, c, turn off), such as “Turn off the fluorescent lamp C in my room”. You have to enter the command.

따라서 상기 제어부(130)는 사용자가 하나만 있는 대상기기(예 : 오디오)를 제어하기 위하여, "오디오 꺼"와 같이, 2개의 정보(예 : 오디오, 꺼)가 포함된 음성명령을 입력할 경우, 상기 제어부(130)는 상기 입력된 음성명령에 명령 필수 정보가 모두 포함되어 있는 것으로 판단한다. Therefore, when the user inputs a voice command including two pieces of information (eg, audio, off), such as "turn off audio", in order to control a target device (eg, audio) with only one user, The control unit 130 determines that the input voice command includes all of the essential command information.

그러나 복수개가 있는 대상기기(예 : 형광등)를 제어할 경우에도 사용자가 "형광등 꺼"와 같이, 단지 2개의 정보(예 : 형광등, 꺼)가 포함된 음성명령을 입력할 경우, 상기 제어부(130)는 상기 음성명령에 명령 필수 정보가 포함되어 있지 않은 것으로 판단하는 것이다.However, even when controlling a plurality of target devices (eg, fluorescent lamps), when the user inputs a voice command including only two pieces of information (eg, fluorescent lights, turn off), such as “turn off the fluorescent lamp”, the controller 130 ) Indicates that the voice command does not contain command essential information.

상기와 같이 음성 데이터의 개수에 대응하는 명령 필수 정보가 모두 포함되어 있을 경우(S108의 예), 상기 제어부(130)는 해당 음성 명령을 실행한다(S110). 즉, 대상기기 제어 신호를 출력한다.When all of the essential command information corresponding to the number of voice data is included as described above (YES in S108), the controller 130 executes the voice command (S110). That is, the target device control signal is output.

그러나 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있지 않을 경우(S108의 아니오), 상기 제어부(130)는 정보 출력부(150)를 통해 음성(즉, 부족한 명령 필수 정보가 포함된 음성명령) 재입력을 요청할 수 있다(S109).However, if the command essential information corresponding to the number of voice data is not included (No in S108), the control unit 130 voices through the information output unit 150 (that is, a voice command including insufficient command essential information). ) A re-input may be requested (S109).

한편 상기 체크(S103) 결과, 상기 분할된 음성 데이터의 개수가 기 지정된 값(개수) 보다 많으면(S103의 아니오), 상기 제어부(130)는 노드(예 : A) 자체, 또는 다른 노드(또는 외부기기)를 통해 처리할 음성 데이터를 구분한다(S105).On the other hand, as a result of the check (S103), if the number of divided voice data is greater than a predetermined value (number) (No in S103), the control unit 130 is Voice data to be processed through the device) is identified (S105).

예컨대 노드(예 : A) 자체 및 다른 노드(또는 외부기기)의 개수가 6개인 경우 상기 음성 데이터를 6개로 구분하는 것이다(도 5, 도 6 참조).For example, when the number of nodes (eg, A) itself and other nodes (or external devices) is 6, the voice data is divided into 6 (see FIGS. 5 and 6).

이때 상기 분할되는 음성 데이터의 개수가 반드시 노드의 개수와 일치해야 하는 것은 아니며, 또한 각 노드별로 분산시키는 음성 데이터의 개수가 동일해야 하는 것도 아니다. 즉, 상기 제어부(130)는 각 노드(또는 노드에 연결된 외부기기)의 성능(즉, 씨피유 자원의 성능)에 따라, 음성 데이터의 분산 여부, 음성 데이터의 분산 우선순위, 및 분산할 음성 데이터의 개수를 조정할 수 있다. In this case, the number of divided voice data does not necessarily have to match the number of nodes, and the number of voice data distributed for each node does not have to be the same. That is, the control unit 130 determines whether the voice data is distributed, the distribution priority of the voice data, and the voice data to be distributed according to the performance of each node (or an external device connected to the node) (that is, the performance of the CPC resource). You can adjust the number.

가령, 도 8에 도시된 바와 같이, 블루투스 메쉬 네트워크의 노드들 중 분산 처리에서 일부 노드(예 : D)를 제외하고 분산 처리를 수행할 수도 있다.For example, as shown in FIG. 8, distributed processing may be performed by excluding some nodes (eg, D) from distributed processing among nodes of a Bluetooth mesh network.

이를 위해 상기 제어부(130)는 각 노드(또는 노드에 연결된 외부기기)별 성능 정보가 저장된 성능 테이블을 참조할 수 있다.To this end, the controller 130 may refer to a performance table in which performance information for each node (or an external device connected to the node) is stored.

도 4는 상기 도 2에 있어서, 각 노드별 성능 정보를 저장하는 성능 테이블 생성 및 갱신 방법을 설명하기 위하여 보인 예시도로서, 도 4에 도시된 바와 같이, 블루투스 메쉬 네트워크의 각 노드는 기 지정된 주기에 따라, 각 노드들이 외부기기와 연결되어 있는지 여부 및 음성 데이터 처리를 가장 빠르게 할 수 있는 노드(또는 노드에 연결된 외부기기)를 선정하기 위하여 '성능 질문 요청 메시지'를 다른 노드(또는 노드에 연결된 외부기기)에 전송하고, 다른 노드(또는 노드에 연결된 외부기기)는 '성능 회신 메시지'를 회신한다.FIG. 4 is an exemplary diagram illustrating a method of generating and updating a performance table for storing performance information for each node in FIG. 2. As shown in FIG. 4, each node of a Bluetooth mesh network has a predetermined period. Depending on whether each node is connected to an external device and to select a node (or an external device connected to the node) that can process voice data fastest, a'performance question request message' is sent to another node (or connected to a node). External device), and another node (or an external device connected to the node) returns a'performance reply message'.

이때 상기 성능 회신 메시지는, CPU 클럭 정보, CPU 코어 개수 정보, 현재 CPU 사용률 정보, 및 현재 여유 메모리 정보를 포함한다.In this case, the performance reply message includes information on a CPU clock, information on the number of CPU cores, information on a current CPU usage rate, and information on a current spare memory.

이에 따라 각 노드는 상기 수신된 '성능 회신 메시지'를 검토하여, 음성 데이터 처리를 가장 빠르게 할 수 있는 노드(또는 노드에 연결된 외부기기)를 선정한다. Accordingly, each node reviews the received'performance reply message' and selects a node (or an external device connected to the node) that can perform the fastest voice data processing.

이때 상기 음성 데이터 처리를 가장 빠르게 할 수 있는 노드(또는 노드에 연결된 외부기기)를 선정하기 위해 검토할 정보는, 수신된 각 노드(또는 노드에 연결된 외부기기)의'성능 회신 메시지'의 정보뿐만 아니라, 도약 정보(외부기기가 연결된 최종 노드까지 거치는 노드들의 개수) 및 거리 정보(외부기기가 연결된 노드까지의 물리적 거리)를 포함한다.At this time, the information to be reviewed in order to select a node (or an external device connected to the node) that can process the voice data fastest is only the information of the'performance reply message' of each received node (or an external device connected to the node). Rather, it includes leap information (the number of nodes passing through to the final node to which the external device is connected) and distance information (physical distance to the node to which the external device is connected).

예컨대 상기 외부기기의 성능이 가장 좋다고 하더라도, 다수 노드를 거친 도약으로 인하여 데이터의 송수신 시간이 지연 되거나, 먼 거리로 인하여 전송되는 데이터의 품질 저하가 발생 한다면, 이는 전체적인 처리 시간의 증가 및 오작동의 원인이 된다. 이에 따라 이러한 처리 시간의 증가 및 오작동을 방지하기 위하여, 해당 노드(예 : A)는 '성능 회신 메시지' 와 '도약 정보' 및 '거리 정보'를 종합하여 점수를 산정하고(즉, 우선순위를 산출하고), 점수가 가장 높은(즉, 우선순위가 가장 높은) 노드(또는 노드에 연결된 외부기기)를 특정한 후, 해당 노드(또는 노드에 연결된 외부기기)에 음성 데이터의 분산 처리를 요청한다. For example, even if the performance of the external device is the best, if the transmission/reception time of data is delayed due to a leap through multiple nodes, or the quality of transmitted data is deteriorated due to a long distance, this increases the overall processing time and causes malfunction. Becomes. Accordingly, in order to prevent such an increase in processing time and malfunction, the corresponding node (e.g., A) calculates a score by synthesizing'performance reply message','jumping information', and'distance information' (i.e., prioritizing Calculation), specifies the node with the highest score (i.e., the highest priority) (or an external device connected to the node), and then requests the node (or an external device connected to the node) for distributed processing of voice data.

도 3을 참조하면, 노드 A의 음성 데이터가 태블릿(노드 D에 연결된 외부기기)에 전달되려면 A → B → D를 거치며, 이때 노드 B와 노드 D간의 거리는 30m 이므로, 송수신 시간 지연 및 데이터 품질 저하가 다소 예상된다. 3, in order to transmit the voice data of node A to the tablet (external device connected to node D), it goes through A → B → D. At this time, since the distance between node B and node D is 30m, transmission/reception time delay and data quality degradation Is somewhat expected.

또한 노드 A의 음성 데이터가 PC(노드 F에 연결된 외부기기)에 전달되려면 A → C → F를 거치며, 이때 노드 C와 노드 F의 거리는 50m이므로, 상기 태블릿 보다 더 많은 품질 저하가 예상된다. In addition, in order to transmit the voice data of node A to a PC (an external device connected to node F), it goes through A → C → F. At this time, since the distance between node C and node F is 50 m, more quality degradation is expected than the tablet.

이에 반해, 노드 A의 음성 데이터가 스마트폰(노드 E에 연결된 외부기기)에 전달되려면 A -> E를 거치며 이때 노드 A와 노드 E간의 거리는 3m이므로, 예상되는 시간지연 및 품질저하가 다른 외부기기보다 훨씬 낮다. On the other hand, in order to transmit the voice data of node A to the smartphone (external device connected to node E), it goes through A -> E. At this time, the distance between node A and node E is 3m, so the expected time delay and quality deterioration are different from external devices. Much lower than

따라서 상기 노드 A는 분산 처리를 위해 우선순위가 가장 높은 노드(또는 외부기기)로 노드 E에 연결된 외부기기(스마트폰)을 선택할 수 있다. 다만 상기 분산 처리를 위해 선택하는 노드(또는 외부기기)는 우선순위에 따라 적어도 하나 이상 선택할 수 있음에 유의한다. Accordingly, the node A may select an external device (smartphone) connected to the node E as the node (or external device) having the highest priority for distributed processing. However, note that at least one node (or external device) selected for the distributed processing may be selected according to priority.

다시 도 2를 참조하면, 상기 제어부(130)는 상기와 같이 구분된 음성 데이터를 노드별로 전송하여(또는 선택된 특정 노드에 전송하여) 분산 처리하게 한다(S106). Referring back to FIG. 2, the control unit 130 transmits the divided voice data for each node (or to a selected specific node) for distributed processing (S106).

예컨대 도 3을 참조하면, 노드 A가 노드 E만을 선택하였다고 가정할 경우, 노드 A는 음성 데이터와 데이터 처리 요청 메시지를 노드 E에 보내고, 노드 E는 자신에 연결된 외부기기(스마트폰)에 상기 전달받은 내용(음성 데이터, 데이터 처리 요청 메시지)을 전달한다. 이에 따라 상기 노드 E에 연결된 외부기기(스마트폰)는 수신된 음성 데이터의 노이즈 제거 작업과 음성 처리 작업을 실시하며, 처리가 완료된 결과 데이터(예 : 문자로 구성한 음성 처리 데이터)를 생성한다. 그리고 상기 노드 E에 연결된 외부기기(스마트폰)는 상기 결과 데이터(예 : 문자로 구성한 음성 처리 데이터)를 노드 E를 통해 노드 A로 전송한다. 이에 따라 노드 A는 수신된 결과 데이터(예 : 문자로 구성한 음성 처리 데이터)를 처리하여 해당하는 명령을 실행한다.For example, referring to FIG. 3, assuming that node A selects only node E, node A sends voice data and a data processing request message to node E, and node E transmits the message to an external device (smartphone) connected to it. It delivers the received content (voice data, data processing request message). Accordingly, the external device (smartphone) connected to the node E performs a noise removal operation and a speech processing operation of the received voice data, and generates result data (eg, speech processing data composed of text) after the processing is completed. The external device (smartphone) connected to the node E transmits the result data (eg, voice processing data composed of text) to the node A through the node E. Accordingly, Node A processes the received result data (eg, voice processing data composed of text) and executes the corresponding command.

그리고 상기 제어부(130)는 상기 각 노드별로 분산 처리된 음성 데이터를 수신(또는 집중)하여 합성(또는 재구성)한다(S107).In addition, the control unit 130 receives (or concentrates) the distributed-processed voice data for each node and synthesizes (or reconstructs) it (S107).

도 6은 상기 도 2에 있어서, 음성 데이터를 분산 처리하기 위하여 분산할 노드의 개수에 대응하여 음성 데이터를 분할시켜 분산 처리한 후 다시 분산 처리된 음성 데이터를 집중시키는 과정을 설명하기 위하여 보인 예시도이다.FIG. 6 is an exemplary view illustrating a process of distributing voice data in FIG. 2 by dividing voice data corresponding to the number of nodes to be distributed, performing distributed processing, and then concentrating the distributed-processed voice data. to be.

상기와 같이 분산 처리된 음성 데이터를 집중시켜 합성(또는 재구성)한 후, 상기 제어부(130)는 상기 분할된 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있는지 체크한다(S108).After concentrating and synthesizing (or reconstructing) the distributed voice data as described above, the control unit 130 checks whether the required command information corresponding to the number of divided voice data is included (S108).

그리고 상기 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있을 경우(S108의 예), 상기 제어부(130)는 해당 음성 명령을 실행하며(S110), 만약 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있지 않을 경우(S108의 아니오), 상기 제어부(130)는 정보 출력부(150)를 통해 음성(즉, 부족한 명령 필수 정보가 포함된 음성명령) 재입력을 요청할 수 있다(S109).And if the command essential information corresponding to the number of voice data is included (YES in S108), the controller 130 executes the voice command (S110), and if the command essential information corresponding to the number of voice data is included. When is not included (No in S108), the controller 130 may request a re-input of a voice (ie, a voice command including insufficient command essential information) through the information output unit 150 (S109).

상기와 같이 본 실시예에 따른 음성명령 처리 장치(100)는 음성 데이터를 분할한 개수에 기초하여, 많은 자원(즉, 씨피유 자원)을 사용하지 않고도 음성을 인식하여 처리할 수 있을 경우에는 상기 음성이 입력된 노드(예 : A) 자체에서 음성명령을 처리하고, 많은 자원을 사용해야 하는 경우에는 분산 처리를 통해 음성명령을 처리할 수 있다. As described above, when the voice command processing apparatus 100 according to the present embodiment can recognize and process voice without using a large number of resources (ie, CPC resources) based on the number of divided voice data, the voice command processing apparatus 100 The input node (eg, A) itself processes voice commands, and when a large amount of resources needs to be used, the voice commands can be processed through distributed processing.

그러나 이에 한정하지 않고, 음성 데이터의 분할 개수에 관계없이 무조건 분산 처리를 통해 음성(즉, 음성명령)을 처리할 수도 있다.However, the present invention is not limited thereto, and voices (ie, voice commands) may be processed through unconditionally distributed processing regardless of the number of divisions of voice data.

한편 도 10은 상기 도 2에 있어서, 제어할 대상기기의 그룹화와 음성명령의 매칭 방법을 설명하기 위하여 보인 예시도로서, 도 9 및 도 10을 참조하여 제어할 대상기기에 매칭할 음성명령의 구성에 대해서 설명한다.Meanwhile, FIG. 10 is an exemplary diagram illustrating a method of grouping a target device to be controlled and a matching method of a voice command in FIG. 2, and a configuration of a voice command to be matched to a target device to be controlled with reference to FIGS. 9 and 10 Explain about.

상술한 바와 같이 본 실시예에 따른 블루투스 메쉬 네트워크의 모든 노드는, 기본적으로 노드 자신이 제어할 대상기기의 물리 그룹(예 : 대상기기가 설치된 위치로서, 내 방, 서재, 복도 등)과 대상기기의 유형(예 : 스탠드, 형광등 등), 대상기기의 번호(예 : A ~ H)를 기반으로 분류된다. As described above, all nodes of the Bluetooth mesh network according to the present embodiment basically have a physical group of the target device to be controlled by the node (e.g., a location where the target device is installed, my room, study, corridor, etc.) and the target device. It is classified based on the type of (eg, stand, fluorescent light, etc.) and the number of the target device (eg, A to H).

참고로 상기 물리 그룹은 대상기기의 구매 시 사용자가 외부기기(예 : 스마트폰, 태블릿, PC 등)를 이용해 설정할 수 있으며, 또한 대상기기 자체적으로 다른 대상기기와 통신하여 거리 정보를 바탕으로 물리 그룹을 자동으로 설정할 수도 있다(도 10 참조).For reference, the physical group can be set by the user when purchasing the target device using an external device (e.g., smartphone, tablet, PC, etc.), and the target device itself communicates with other target devices to provide a physical group based on distance information. Can also be set automatically (see Fig. 10).

그리고 상기 음성명령 처리 장치(100)가 대상기기(예 : LED 전등, 형광등, 보일러, 공기 청정기 등) 자체에 통합될 경우, 상기 대상기기 자체가 블루투스 메쉬 네트워크의 노드가 될 수 있음에 유의한다. 이 경우 상기 대상기기의 번호(예 : A ~ H)와 노드의 번호(예 : A ~ H)는 동일한 번호가 된다.In addition, when the voice command processing device 100 is integrated into a target device (eg, an LED lamp, a fluorescent lamp, a boiler, an air cleaner, etc.), it should be noted that the target device itself may become a node of the Bluetooth mesh network. In this case, the target device number (eg, A to H) and the node number (eg, A to H) are the same number.

도 9의 (a) 및 도 10을 참조하면, 하나의 블루투스 메쉬 네트워크의 각 노드에서 제어할 대상기기(또는 노드)는 동일한 위치(물리 그룹)와 동일한 유형(예 : 스탠드, 형광등 등)의 대상기기들이 다수 존재할 수 있다. 따라서 사용자는 대상기기(또는 노드)의 개별 제어를 위하여, 도 9의 (b)에 도시된 바와 같이 대상기기(또는 노드)와 매칭되는 음성명령의 형태를 숙지하여야 한다.9A and 10, a target device (or node) to be controlled by each node of a single Bluetooth mesh network is a target of the same location (physical group) and the same type (e.g., stand, fluorescent lamp, etc.) There may be multiple devices. Therefore, for individual control of the target device (or node), the user must be familiar with the form of the voice command matched with the target device (or node) as shown in (b) of FIG. 9.

예컨대 상기 음성명령의 형태는, 노드(또는 대상기기)의 호출부호(예 : 블루야), 대상기기 그룹의 기능(예 : 전등, 보일러, 공기 청정기, 오디오 등), 대상기기의 물리 그룹(예 : 내 방, 서재, 복도 등의 위치), 대상기기의 유형(예 : 스탠드, 형광등), 및 유형별 각 대상기기의 번호(예 : A ~ H), 및 제어명령(예 : 켜, 꺼, 온, 오프 등)을 포함한다.For example, the form of the voice command is the call sign of the node (or target device) (eg, Blue Night), the function of the target device group (eg, light, boiler, air cleaner, audio, etc.), and the physical group of the target device (eg. : Location of my room, study, hallway, etc.), the type of target device (eg, stand, fluorescent lamp), and the number of each target device by type (eg: A ~ H), and control commands (eg: on, off, on). , Off, etc.).

가령'내 방'에 설치된 "형광등 B"를 오프시킨다고 가정할 경우 아래와 같은 형태로 음성(즉, 음성명령)을 입력할 수 있다.For example, assuming that "Fluorescent Light B" installed in'My Room' is turned off, you can input voice (ie, voice command) in the form below.

음성명령 : "블루야" + "내 방" + "형광등" + "B" + "꺼"Voice Command: "Blue Night" + "My Room" + "Fluorescent Light" + "B" + "Off"

그런데 사용자가 대상기기의 개별 제어를 위해서 모든 대상기기의 번호(또는 개별 노드의 값)를 숙지하는 것은 어려움이 있으며, 이러한 어려움을 해결하기 위해서 음성명령을 간소화시키는 방법이 필요하다.However, it is difficult for a user to know the numbers (or values of individual nodes) of all target devices for individual control of the target devices, and a method of simplifying voice commands is needed to solve this difficulty.

이하 블루투스 메쉬 네트워크의 각 노드에서 음성명령을 인식하는 방법에 대해서 설명한다.Hereinafter, a method of recognizing a voice command in each node of a Bluetooth mesh network will be described.

예컨대 사용자가 임의의 위치(예 : 내 방)에서 음성(즉, 음성명령)(예 : 블루야 내 방 형광등 B 꺼)을 입력할 경우, 상기 음성(즉, 음성명령)을 동시에 입력받는 각 노드(예 : A, B, C, F, G)는 해당 음성 데이터의 진폭 피크 값과 음성 입력 시간을 서로 비교하고, 이 비교 결과(예 : 음성 입력 시간이 더 빠르거나 진폭 피크 값이 더 큰 노드)에 기초하여 음성 처리를 위한 어느 하나의 단일 노드를 특정한다. 이때 상기 단일 노드는 랜덤 방식으로 특정할 수도 있다.For example, when a user inputs a voice (i.e., voice command) (e.g., turn off the fluorescent light B in my room, blue night) at an arbitrary location (e.g., my room), each node receiving the voice (i.e., voice command) at the same time (Example: A, B, C, F, G) compares the amplitude peak value of the corresponding speech data with the speech input time, and the result of this comparison (e.g., a node with a faster speech input time or a larger amplitude peak value) ) To specify any single node for speech processing. In this case, the single node may be specified in a random manner.

상기 특정된 단일 노드(예 : 노드 A)는 음성 데이터를 분할하여 다른 노드들에 분산 처리하도록 전달하고, 또한 상기 분산 처리된 음성 데이터를 집중(또는 재구성)할 집중 노드(예 : 노드 G)를 선정한다. The specified single node (e.g., node A) divides the voice data and transmits it to other nodes for distributed processing, and also selects a central node (e.g., node G) to concentrate (or reconstruct) the distributed voice data. Select.

이때 상기 단일 노드(예 : 노드 A)는 상기 집중 노드(예 : 노드 G)의 선정을 위해서 미리 생성된 성능 테이블(도 4 참조)를 참조할 수 있으며, 또는 실시간으로 '성능 질문 요청 메시지'를 다른 노드들에게 전송하고, 다른 노드들로부터'성능 회신 메시지'를 수신하여 가장 성능이 우수한 노드(예 : 노드 G)를 찾아 집중 노드로 선정할 수 있다. At this time, the single node (e.g., node A) may refer to a performance table (see FIG. 4) previously generated for the selection of the centralized node (e.g., node G), or a'performance question request message' in real time. By transmitting to other nodes and receiving a'performance reply message' from other nodes, it is possible to find a node with the best performance (eg, node G) and select it as a central node.

상기와 같이 선정된 집중노드(예 : 노드 G)는 각 노드들로부터 분산 처리된 음성 데이터를 집중시켜, 즉 음성 데이터를 재구성하여, 명령을 실행한다. The centralized node (eg, node G) selected as described above concentrates the distributed voice data from each node, that is, reconstructs the voice data, and executes the command.

이때 상기 집중노드(예 : 노드 G)는 분산 처리된 음성 데이터들을 전송한 다른 노드들(즉, 사용자의 음성을 동시에 입력받은 노드들)의 물리 그룹에 의해 사용자의 현재 위치(물리 그룹)을 추정한다. 가령 상기 분산 처리된 음성 데이터들을 전송한 다른 노드들의 물리 그룹이 기 지정된 비율(예 : 80%) 이상 동일한 경우, 상기 집중노드(예 : 노드 G)는 해당 물리 그룹을 사용자의 현재 위치(물리 그룹)로 추정한다.At this time, the centralized node (e.g., node G) estimates the user's current location (physical group) by the physical group of the other nodes (i.e., nodes that simultaneously received the user's voice) that transmitted the distributed voice data. do. For example, when the physical groups of other nodes that have transmitted the distributed-processed voice data are equal to or greater than a predetermined ratio (e.g., 80%), the centralized node (e.g., node G) assigns the physical group to the user's current location (physical group). ).

상기와 같이 사용자의 현재 위치(물리 그룹)가 추정됨에 따라 사용자가 음성(즉, 음성명령) 입력 시 물리 그룹(예 : 내 방, 서재, 복도 등의 위치)을 생략할 수 있게 되어(사용자의 현재 위치에 대응하는 물리 그룹을 자동으로 인식할 수 있게 되어) 음성명령을 간소화시킬 수 있다. As the user's current location (physical group) is estimated as above, when the user inputs a voice (i.e., voice command), it is possible to omit the physical group (e.g., location of my room, study, corridor, etc.). It is possible to automatically recognize the physical group corresponding to the current location), thus simplifying the voice command.

가령 사용자가 물리그룹에 대한 정보를 포함하지 않고 "블루야, 형광등 꺼"라는 음성(즉, 음성명령)을 입력할 경우, 상기 집중노드(예 : 노드 G)는 사용자의 현재 위치를 추정하여(예 : 내 방), "내 방의 형광등 꺼"라고 인식하며, 또한 "내 방"에 있는 모든 형광등(B, C)을 구분하지 않고 통합 인식한다. 즉, 대상기기의 유형만 특정되고 대상기기의 번호가 입력되지 않을 경우, 집중노드(예 : 노드 G)는 해당 유형의 모든 대상기기를 통합하여 해당 명령을 인식하는 것이다.For example, if the user inputs a voice (ie, voice command) saying "Blue night, turn off the fluorescent lamp" without including information on the physical group, the centralized node (eg node G) estimates the user's current location ( Example: My room), "Turn off the fluorescent lights in my room", and also recognizes all fluorescent lights (B, C) in "My room" without distinction. That is, when only the type of the target device is specified and the target device number is not entered, the centralized node (eg, node G) recognizes the command by integrating all target devices of the corresponding type.

또 다른 예로서, 사용자가 "블루야, 불 꺼"라는 음성(즉, 음성명령)을 입력할 경우, 상기 집중노드(예 : 노드 G)는 사용자의 현재 위치를 추정하여(예 : 내 방), "내 방의 불 꺼"라고 인식하며, 또한 "내 방"에 있는 모든 불(즉, 전등)을 구분하지 않고 통합 인식한다. 즉, 대상기기의 기능만 특정되고 대상기기의 물리 그룹, 유형, 및 번호가 입력되지 않을 경우, 집중노드(예 : 노드 G)는 해당 기능의 모든 대상기기를 통합하여 해당 명령을 인식하는 것이다.As another example, when the user inputs a voice (i.e., voice command) saying "Blue night, turn off the lights", the centralized node (e.g., Node G) estimates the user's current location (e.g., my room) , Recognizes as "Turn off the lights in my room", and recognizes all lights (ie, lights) in "my room" without distinction. That is, when only the function of the target device is specified and the physical group, type, and number of the target device are not entered, the centralized node (eg, node G) recognizes the command by integrating all target devices of the corresponding function.

상기와 같이 본 실시예는 사용자의 현재 위치(물리 그룹)의 추정과, 음성명령의 형태에서 특정 상위 정보만 입력되고 이보다 하위 정보가 생략될 경우 하위 정보가 통합된 상기 특정 상위 정보만으로 대상기기를 통합하여 인식함으로써 음성명령을 간소화시킬 수 있도록 하는 효과가 있다. As described above, the present embodiment estimates the user's current location (physical group), and when only specific upper information is input in the form of a voice command and lower information is omitted, the target device is selected only with the specific higher information in which lower information is integrated. It has the effect of simplifying the voice command by recognizing it in an integrated manner.

또한 상기와 같이 본 실시예는 음성 데이터의 분산 처리를 지시하는 노드(예 : 노드 A)와 분산 처리된 음성 데이터를 집중(또는 재구성)하여 명령을 실행하는 노드(예 : 노드 G)가 다르다. 즉, 본 실시예는 별도의 서버를 구비하지 않으므로(즉, 서버의 설정을 변경할 필요가 없으므로) 확장성을 향상시킬 수 있으며, 대상기기(즉, 노드로 작용하는 대상기기)의 추가나 삭제 시 능동적으로 대응할 수 있도록 하는 효과가 있다.In addition, as described above, in the present embodiment, a node (eg, node A) instructing distributed processing of voice data is different from a node (eg, node G) that executes commands by concentrating (or reconstructing) the distributed-processed voice data. That is, since this embodiment does not have a separate server (that is, since there is no need to change the server settings), it is possible to improve scalability, and it is active when a target device (ie, a target device acting as a node) is added or deleted. It has the effect of being able to respond to it.

한편 이미 상술한 바와 같이, 상기 대상기기의 물리 그룹은 대상기기의 구매 시 사용자가 외부기기(예 : 스마트폰, 태블릿, PC 등)를 이용해 설정할 수 있으며, 또한 대상기기(또는 노드) 자체적으로 다른 대상기기(또는 다른 노드)와 통신하여 물리 그룹을 설정할 수 있다. Meanwhile, as already described above, the physical group of the target device can be set by the user when purchasing the target device using an external device (eg, smartphone, tablet, PC, etc.), and the target device (or node) itself It is possible to establish a physical group by communicating with the target device (or other node).

예컨대 일반 가정의 경우, 도 10에 도시된 바와 같이, 방의 개수가 적으므로 사용자에 의해 대상기기의 물리 그룹을 설정함에 어려움이 없으나, 아파트 전체 또는 넓은 공장처럼 물리적 공간이 다수로 분할될 경우에는 사용자가 직접 대상기기의 물리 그룹을 설정하기에는 작업의 복잡성과 난이도가 증가하는 문제점이 있다. 따라서 대상기기가 자체적으로 물리 그룹을 설정하는 기능이 필요하다.For example, in the case of a general home, as shown in FIG. 10, as the number of rooms is small, there is no difficulty in setting the physical group of the target device by the user. However, when the physical space is divided into a large number, such as an entire apartment or a large factory, the user In order to directly set the physical group of the target device, there is a problem that the complexity and difficulty of the work increase. Therefore, it is necessary for the target device to set its own physical group.

이하 도 10을 참조하여 대상기기가 신규 설치될 경우 대상기기(또는 노드) 자체적으로 다른 대상기기(또는 다른 노드)와 통신하여 물리 그룹을 설정하는 방법에 대해서 설명한다.Hereinafter, when a target device is newly installed, a method of setting a physical group by communicating with another target device (or another node) by itself will be described with reference to FIG. 10.

도 10을 참조하면, 이미 물리 그룹이 등록된 대상기기들이 설치되어 있는 상태에서 새로운 대상기기(즉, 신규노드)가 신규 설치될 경우, 상기 새로운 대상기기(즉, 신규노드)가 다른 노드에 물리 그룹의 등록을 요청한다. 이에 각 물리 그룹의 노드는 자신과 상기 새로운 대상기기(즉, 신규노드)간의 거리를 추정하여 이 거리 정보를 특정 노드(예 : 집중노드)에 전송한다.Referring to FIG. 10, when a new target device (i.e., a new node) is newly installed while target devices to which a physical group is registered are installed, the new target device (i.e., a new node) is physically connected to another node. Request group registration. Accordingly, the node of each physical group estimates the distance between itself and the new target device (ie, the new node) and transmits this distance information to a specific node (eg, a centralized node).

여기서 상기 특정 노드(예 : 집중노드, 노드 a)는 상기 새로운 대상기기(즉, 신규노드)와 가장 가까운 노드(예 : 노드 A)가 선택된다.Here, for the specific node (eg, centralized node, node a), a node (eg, node A) closest to the new target device (ie, new node) is selected.

참고로 블루투스 메쉬 네트워크의 경우 Heartbeat 메시지 또는 ibeacon을 이용하여 각 노드간의 거리 추정이 가능하다.For reference, in the case of a Bluetooth mesh network, it is possible to estimate the distance between each node using a Heartbeat message or an ibeacon.

이에 상기 집중노드(예 : 노드 A)는 자신이 속한 물리 그룹(예 : 내 방) 내의 다른 노드들과 다른 물리 그룹(예 : 복도)에 속한 노드들 간의 거리를 비교하고, 새로운 대상기기(즉, 신규노드)(N)가 어느 물리 그룹에 가장 근접한지 탐색한다.Accordingly, the centralized node (e.g., node A) compares the distances between other nodes in the physical group (e.g., my room) to which it belongs and nodes belonging to another physical group (e.g., corridor), and compares the distance between the new target device (i.e. , New node) Search which physical group (N) is closest to.

예컨대 신규노드(N)가 물리 그룹이'내 방'으로 설정된 노드(A, B, C)와 모두 통신이 가능하고 특정 거리 이내로 근접하며, 물리 그룹이'복도'로 설정된 노드(F, G, H)와는 특정 거리보다 더 멀리 이격되어 있거나 통신이 불가능한 것으로 탐색된다. 이에 따라 상기 집중노드(예 : 노드 A)는 신규노드(N)가 '내 방'물리 그룹과 가장 근접한 것으로 판단하여 해당 내용을 저장한다.For example, a new node (N) can communicate with all nodes (A, B, C) whose physical group is set to'My Room' and is close to within a certain distance, and nodes (F, G, C) whose physical group is set to'Corridor' H) is searched for that it is farther apart than a certain distance or that communication is impossible. Accordingly, the centralized node (eg, node A) determines that the new node N is the closest to the'my room' physical group and stores the corresponding content.

그리고 상기 집중노드(예 : 노드 A)는 사용자의 외부기기(예 : 스마트폰)에 상기 신규노드(N)의 물리 그룹 정보(예 : 내 방)를 전달하여 사용자가 상기 신규노드(N)의 물리 그룹 등록 여부를 결정하게 하고, 사용자가 등록을 결정할 경우 사용자의 외부기기(예 : 스마트폰)는 상기 신규노드(N)의 물리 그룹 정보(예 : 내 방)를 갱신한다. 즉, 사용자는 상기 집중노드(예 : 노드 A)가 탐색한 상기 신규노드(N)의 물리 그룹을 단지 확인하여 그 물리 그룹으로 등록할지 여부만 결정하면 된다. And the centralized node (e.g., node A) transmits physical group information (e.g., my room) of the new node (N) to the user's external device (e.g., a smartphone), so that the user Whether to register a physical group is determined, and when the user decides to register, the user's external device (eg, a smartphone) updates the physical group information (eg, my room) of the new node (N). That is, the user only needs to check the physical group of the new node N that the central node (eg, node A) has searched for and decide whether to register it as the physical group.

이에 따라 사용자는 신규 대상기기(신규노드, N)의 물리 그룹을 등록함에 있어서 편의성을 증가시키는 효과 및 신규노드(N)의 물리 그룹 등록 시간을 단축시키는 효과가 있다.Accordingly, the user has an effect of increasing convenience in registering a physical group of a new target device (new node, N) and shortening a physical group registration time of the new node (N).

이상으로 본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.As described above, the present invention has been described with reference to the embodiments shown in the drawings, but this is only an example, and various modifications and other equivalent embodiments are possible from those of ordinary skill in the field to which the technology pertains. I will understand the point. Therefore, the technical protection scope of the present invention should be determined by the following claims.

100 : 음성명령 처리 장치 110 : 음성 입력부
120 : 통신부 130 : 제어부
140 : 저장부 150 : 정보 출력부
160 : 대상기기 구동부
100: voice command processing device 110: voice input unit
120: communication unit 130: control unit
140: storage unit 150: information output unit
160: target device driving unit

Claims (15)

블루투스 메쉬 네트워크의 노드들 중 적어도 하나 이상의 노드에 음성 데이터가 입력되면, 상기 노드들 중 기 지정된 방식으로 특정된 하나의 특정 노드의 제어부가 상기 음성 데이터를 기 지정된 방식에 따라 복수의 음성 데이터로 분할하는 단계;
상기 분할된 복수의 음성 데이터를, 상기 특정 노드의 제어부가 상기 블루투스 메쉬 네트워크의 노드별로 분산 처리할 음성 데이터로 구분하는 단계;
상기 특정 노드의 제어부가 상기 구분된 음성 데이터를 상기 노드별로 전송하여 분산 처리하게 하고, 상기 각 노드별로 분산 처리된 음성 데이터를 기 지정된 방식으로 특정된 하나의 집중노드에 집중시켜 재구성하게 하는 단계; 및
상기 집중노드의 제어부가 상기 재구성된 음성 데이터에 대응하는 음성명령을 인식하여 명령을 실행하는 단계;를 포함하는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
When voice data is input to at least one of the nodes of the Bluetooth mesh network, the control unit of one specific node specified in a predetermined manner among the nodes divides the voice data into a plurality of voice data according to a predetermined method. The step of doing;
Dividing the divided plurality of voice data into voice data to be distributed and processed for each node of the Bluetooth mesh network, by a controller of the specific node;
Allowing the control unit of the specific node to transmit the classified voice data for each node to perform distributed processing, and to reconfigure the distributed voice data for each node by concentrating on one specified central node in a predetermined manner; And
And executing, by the control unit of the centralized node, a voice command corresponding to the reconstructed voice data.
제 1항에 있어서, 상기 특정 노드는,
음성 데이터를 동시에 입력받는 적어도 하나 이상의 노드들이 상기 음성 데이터의 진폭 피크 값과 음성 입력 시간을 서로 비교하여, 이 비교 결과에 따라 음성 입력 시간이 더 빠르거나 진폭 피크 값이 더 큰 노드가 특정되거나,
랜덤 방식으로 특정되는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein the specific node,
At least one or more nodes receiving voice data simultaneously compare the amplitude peak value of the voice data and the voice input time, and a node having a faster voice input time or a larger amplitude peak value is specified according to the comparison result,
Voice command processing method using a Bluetooth mesh network, characterized in that it is specified in a random manner.
제 1항에 있어서, 상기 각 노드별로 분산 처리된 음성 데이터를 기 지정된 방식으로 특정된 하나의 집중노드에 집중시켜 재구성하게 하는 단계에서,
상기 집중노드는,
특정 노드의 제어부가,
미리 생성된 성능 테이블을 참조하거나, 또는 실시간으로 '성능 질문 요청 메시지'를 다른 노드들에게 전송하고, 다른 노드들로부터'성능 회신 메시지'를 수신하여 상기 '성능 회신 메시지'에 포함된 정보에 기초하여 가장 성능이 우수한 노드를 찾아 집중노드로 선정하는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein in the step of concentrating and reconstructing the voice data distributedly-processed for each node to one specified centralized node in a predetermined manner,
The centralized node,
The control unit of a specific node,
Based on information included in the'Performance Reply Message' by referring to a previously created performance table or by transmitting a'Performance Question Request Message' to other nodes in real time, and receiving a'Performance Reply Message' from other nodes Thus, a voice command processing method using a Bluetooth mesh network, characterized in that the node with the best performance is found and selected as the centralized node.
제 1항에 있어서, 상기 집중노드는,
분산 처리된 음성 데이터들을 전송한 다른 노드들의 물리 그룹 정보에 기초하여 사용자의 현재 위치를 추정하고,
상기 사용자의 현재 위치가 추정됨에 따라 사용자가 음성명령 입력 시 물리 그룹 정보를 생략하더라도 상기 추정한 사용자의 현재 위치에 대응하는 물리 그룹을 자동으로 인식하여 음성명령을 간소화시킬 수 있도록 구현된 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein the centralized node,
Estimates the user's current location based on the physical group information of other nodes that have transmitted the distributed voice data,
As the current location of the user is estimated, even if the physical group information is omitted when the user inputs a voice command, the physical group corresponding to the estimated current location of the user is automatically recognized to simplify the voice command. Voice command processing method using a Bluetooth mesh network.
제 1항에 있어서, 상기 블루투스 메쉬 네트워크의 노드들은,
음성명령 처리 장치 및 제어 대상기기가 하나로 통합되어 구현되는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein the nodes of the Bluetooth mesh network,
A voice command processing method using a Bluetooth mesh network, characterized in that the voice command processing device and the control target device are integrated into one.
제 1항에 있어서, 상기 음성 데이터를 기 지정된 방식에 따라 복수의 음성 데이터로 분할하는 단계에서,
상기 입력된 음성 데이터를 기 설정된 기준값에 맞춰 확대 또는 축소시키는 스케일링 과정을 수행하는 단계;를 더 포함하는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein in the step of dividing the voice data into a plurality of voice data according to a predetermined method,
And performing a scaling process of expanding or reducing the input voice data according to a preset reference value.
제 1항에 있어서,
상기 음성 데이터가 기 지정된 방식으로 분할되면,
상기 특정 노드의 제어부가,
상기 분할된 음성 데이터의 개수가 기 지정된 개수 보다 적은지 체크하고,
상기 체크 결과,
상기 분할된 음성 데이터의 개수가 기 지정된 개수 이하인 경우, 상기 음성 데이터를 복수의 노드에 분산 처리하지 않고, 상기 특정 노드의 음성명령 처리 장치가 자체적으로 음성 분석 및 처리를 수행하도록 구현된 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1,
When the voice data is divided in a predetermined manner,
The control unit of the specific node,
Checking whether the number of divided voice data is less than a predetermined number,
As a result of the above check,
When the number of divided voice data is less than or equal to a predetermined number, the voice data is not distributed to a plurality of nodes, and the voice command processing apparatus of the specific node performs voice analysis and processing on its own. Voice command processing method using a Bluetooth mesh network.
제 1항에 있어서, 상기 음성 데이터가 집중되면,
상기 집중노드의 제어부가,
상기 분할된 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있는지 체크하고, 상기 체크 결과, 상기 음성 데이터의 개수에 대응하는 명령 필수 정보가 모두 포함되어 있을 경우 해당 음성 명령을 실행하고,
상기 음성 데이터의 개수에 대응하는 명령 필수 정보가 포함되어 있지 않을 경우 정보 출력부를 통해 부족한 명령 필수 정보가 포함된 음성명령의 재입력을 요청하도록 구현된 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein when the voice data is concentrated,
The control unit of the centralized node,
It is checked whether command essential information corresponding to the number of divided voice data is included, and if all of the command essential information corresponding to the number of voice data is included as a result of the check, a corresponding voice command is executed,
Voice command processing using a Bluetooth mesh network, characterized in that it is implemented to request re-input of a voice command including insufficient command essential information through an information output unit when the required command information corresponding to the number of voice data is not included. Way.
제 1항에 있어서, 상기 특정 노드의 제어부가 상기 블루투스 메쉬 네트워크의 노드별로 분산 처리할 음성 데이터로 구분하는 단계에서,
상기 특정 노드의 제어부는,
상기 노드들의 개수, 및
각 노드의 성능 또는 각 노드에 연결된 외부기기의 성능에 따라,
음성 데이터의 분산 여부, 음성 데이터의 분산 우선순위, 및 분산할 음성 데이터의 개수를 조정하는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein in the step of dividing by the control unit of the specific node into voice data to be distributed and processed for each node of the Bluetooth mesh network,
The control unit of the specific node,
The number of nodes, and
Depending on the performance of each node or the external device connected to each node,
A voice command processing method using a Bluetooth mesh network, comprising adjusting whether voice data is distributed, a distribution priority of voice data, and the number of voice data to be distributed.
제 9항에 있어서, 상기 특정 노드의 제어부가 상기 블루투스 메쉬 네트워크의 노드별로 분산 처리할 음성 데이터로 구분하기 위하여,
상기 특정 노드의 제어부는,
상기 노드의 개수, 각 노드 또는 노드에 연결된 외부기기의 성능 정보가 저장된 성능 테이블을 참조하는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 9, wherein in order for the controller of the specific node to classify voice data to be distributed and processed for each node of the Bluetooth mesh network,
The control unit of the specific node,
The voice command processing method using a Bluetooth mesh network, characterized in that referring to a performance table in which the number of nodes and performance information of each node or an external device connected to the node are stored.
제 10항에 있어서, 상기 성능 테이블은,
블루투스 메쉬 네트워크의 각 노드의 제어부가,
'성능 질문 요청 메시지'를 다른 노드, 또는 노드에 연결된 외부기기에 전송하고, 상기 다른 노드 또는 노드에 연결된 외부기기가 회신하는'성능 회신 메시지'에 포함된 정보에 기초하여 생성하며,
상기 성능 회신 메시지는,
CPU 클럭 정보, CPU 코어 개수 정보, 현재 CPU 사용률 정보, 및 현재 여유 메모리 정보 중 적어도 하나 이상을 포함하는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 10, wherein the performance table,
The control unit of each node of the Bluetooth mesh network,
A'performance question request message' is transmitted to another node or an external device connected to the node, and is generated based on the information contained in the'performance reply message' that the other node or an external device connected to the node replies,
The performance reply message,
A voice command processing method using a Bluetooth mesh network, comprising at least one of CPU clock information, CPU core number information, current CPU usage rate information, and current spare memory information.
제 11항에 있어서,
상기 블루투스 메쉬 네트워크의 각 노드의 제어부는,
음성 데이터 처리를 가장 빠르게 할 수 있는 노드, 또는 노드에 연결된 외부기기를 선정하기 위하여,
상기'성능 회신 메시지'의 정보뿐만 아니라,
도약 정보 및 거리 정보를 추가로 반영하는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 11,
The control unit of each node of the Bluetooth mesh network,
In order to select the node that can process the voice data the fastest or the external device connected to the node,
In addition to the information of the'Performance Reply Message',
Voice command processing method using a Bluetooth mesh network, characterized in that additionally reflects the leap information and distance information.
제 1항에 있어서, 상기 블루투스 메쉬 네트워크의 노드는,
노드 자신이 제어할 대상기기의 위치에 따른 물리 그룹, 대상기기의 유형, 및 대상기기의 번호를 기반으로 분류되는 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 1, wherein the node of the Bluetooth mesh network,
A method of processing a voice command using a Bluetooth mesh network, characterized in that the node itself is classified based on a physical group according to a location of a target device to be controlled, a type of the target device, and a number of the target device.
제 13항에 있어서, 상기 물리 그룹은,
사용자가 외부기기를 이용해 설정하거나,
노드 자체적으로 상기 블루투스 메쉬 네트워크의 다른 노드와 통신하여 거리 정보를 바탕으로 자동으로 설정할 수도 있도록 구현된 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 13, wherein the physical group,
The user sets it using an external device, or
A method for processing voice commands using a Bluetooth mesh network, characterized in that the node itself communicates with other nodes of the Bluetooth mesh network and can be automatically set based on distance information.
제 14항에 있어서,
상기 물리 그룹을, 노드 자체적으로 상기 블루투스 메쉬 네트워크의 다른 노드와 통신하여 거리 정보를 바탕으로 자동으로 설정하기 위하여,
이미 물리 그룹이 등록된 노드들이 설치되어 있는 상태에서 새로운 신규노드가 신규 설치될 경우,
상기 신규노드가 다른 노드에 물리 그룹의 등록을 요청하고,
각 물리 그룹의 노드가 자신과 상기 신규노드간의 거리를 추정하여 이 거리 정보를 집중노드에 전송하며,
상기 집중노드는 자신이 속한 물리 그룹 내의 다른 노드들과 다른 물리 그룹에 속한 노드들 간의 거리를 비교하여, 상기 신규노드가 어느 물리 그룹에 가장 근접한지 탐색하고,
상기 탐색 결과에 따라 상기 집중노드가 상기 신규노드에 가장 가까운 물리 그룹 정보를 판단하도록 구현된 것을 특징으로 하는 블루투스 메쉬 네트워크를 이용한 음성명령 처리 방법.
The method of claim 14,
In order to automatically set the physical group based on distance information by communicating with other nodes of the Bluetooth mesh network by the node itself,
When a new node is newly installed while the nodes that have already registered a physical group are installed,
The new node requests registration of a physical group to another node,
Each physical group node estimates the distance between itself and the new node and transmits this distance information to the centralized node,
The centralized node compares the distances between other nodes in the physical group to which it belongs and nodes in the other physical group, and searches which physical group the new node is closest to,
The voice command processing method using a Bluetooth mesh network, characterized in that the centralized node is implemented to determine information on the physical group closest to the new node according to the search result.
KR1020190126805A 2019-10-14 2019-10-14 Method for processing voice commands using bluetooth mesh network KR102244156B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190126805A KR102244156B1 (en) 2019-10-14 2019-10-14 Method for processing voice commands using bluetooth mesh network

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190126805A KR102244156B1 (en) 2019-10-14 2019-10-14 Method for processing voice commands using bluetooth mesh network

Publications (2)

Publication Number Publication Date
KR20210043902A KR20210043902A (en) 2021-04-22
KR102244156B1 true KR102244156B1 (en) 2021-04-27

Family

ID=75725562

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190126805A KR102244156B1 (en) 2019-10-14 2019-10-14 Method for processing voice commands using bluetooth mesh network

Country Status (1)

Country Link
KR (1) KR102244156B1 (en)

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101730563B1 (en) 2015-08-17 2017-04-26 오션기술 주식회사 LED system integrated with speaker for leisure vessel

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20030013154A (en) * 2001-08-07 2003-02-14 엘지전자 주식회사 Method of real time voice cognition from the plural channel
KR100404234B1 (en) * 2003-06-05 2003-11-01 주식회사 비즈모델라인 Method for Dispersing Voice Signal by Using Bluetooth Technology
KR20170132622A (en) * 2016-05-24 2017-12-04 삼성전자주식회사 Electronic device having speech recognition function and operating method of Electronic device
KR101832058B1 (en) * 2016-05-30 2018-04-04 주식회사 엘지유플러스 System and method for voice recognition
KR20180083587A (en) * 2017-01-13 2018-07-23 삼성전자주식회사 Electronic device and operating method thereof
KR102471493B1 (en) * 2017-10-17 2022-11-29 삼성전자주식회사 Electronic apparatus and method for voice recognition

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101730563B1 (en) 2015-08-17 2017-04-26 오션기술 주식회사 LED system integrated with speaker for leisure vessel

Also Published As

Publication number Publication date
KR20210043902A (en) 2021-04-22

Similar Documents

Publication Publication Date Title
JP6965384B2 (en) Smart device wake-up methods, smart devices, and computer-readable storage media
CN108683574B (en) Equipment control method, server and intelligent home system
KR102417682B1 (en) Method and apparatus for managing nick name using a voice recognition
US20160378424A1 (en) Control method, controller, and recording medium
US20180165061A1 (en) System and Method for Dialog Interaction In Distributed Automation Systems
US20160373269A1 (en) Device control method, controller, and recording medium
JP2019003190A (en) Voice agent forwarding
US11914921B2 (en) Synchronous sounds for audio assistant on devices
US9984563B2 (en) Method and device for controlling subordinate electronic device or supporting control of subordinate electronic device by learning IR signal
JP2019086535A (en) Transmission control device and program
CN111028839B (en) Smart home control method and device and electronic equipment
CN109618315A (en) A kind of control method of lighting apparatus, device, storage medium and intelligent terminal
WO2019227371A1 (en) Device connection method and apparatus, electronic device, and readable storage medium
US20230152895A1 (en) Method for Changing Displayed Scene, Intelligent Display Screen and Readable Storage Medium
CN105518645A (en) Load-balanced, persistent connection techniques
KR20240024315A (en) Control and/or registration of smart devices, locally by an assistant client device
CN113031452B (en) Method and system for batch processing of intelligent household equipment control instructions
WO2017219519A1 (en) Method, apparatus, and system for controlling device
KR102244156B1 (en) Method for processing voice commands using bluetooth mesh network
CN112995303B (en) Cross-cluster scheduling method and device
CN114203176A (en) Control method and device of intelligent equipment, storage medium and electronic device
CN112712683A (en) Control method and system of household appliance, remote controller and server
CN113777944B (en) Intelligent equipment control preference configuration method and system in intelligent home scene
EP4055997B1 (en) Configuring a bridge with groups after addition of said bridge to a lighting system
CN112867141B (en) Positioning control method, bluetooth service node and electronic equipment

Legal Events

Date Code Title Description
GRNT Written decision to grant