이하에서, 본 발명은 실시예들과 도면들을 통하여 상세하게 설명된다. In the following, the present invention is described in detail through embodiments and drawings.
도 1은 본 발명에 따른 위치 추적 시스템의 개략 구성도이다. 위치 추적 시스템은 소리를 발생시키는 제1 전기 통신 기기(10)와, 제1 전기 통신 기기(10)로부터의 소리를 획득하여 자신의 위치를 추적하는 제2 전기 통신 기기(20)를 포함하며, 제1 전기 통신 기기(10)는 제2 전기 통신 기기(20)의 위치 정보를 획득하여, 위치 정보를 입력값으로 이용하여 현재 동작 중인 소프트웨어의 상태 및 동작을 제어할 수 있다. 1 is a schematic configuration diagram of a location tracking system according to the present invention. The location tracking system includes a first telecommunication device 10 for generating sound and a second telecommunication device 20 for obtaining a sound from the first telecommunication device 10 and tracking its location. The first telecommunication device 10 may acquire the location information of the second telecommunication device 20 and control the state and operation of the currently operating software using the location information as an input value.
본 발명에서, 전기 통신 기기는 노트북, PC, 테블릿, 스마트 TV, 스마트 폰, 스마트 안경, 스마트 시계, 모바일 기기 등과 같이 신호 처리, 스피커나 마이크 등 소리를 발생시키거나 또는 획득할 수 있으며, 통신 기능을 지닌 일체의 장치를 지칭한다. In the present invention, the telecommunication device may generate or acquire a signal such as a signal processing, a speaker or a microphone, such as a notebook, a PC, a tablet, a smart TV, a smart phone, a smart glasses, a smart watch, a mobile device, and the like, and communicate It refers to any device having a function.
제1 전기 통신 기기(10)는 사용자로부터 입력을 획득하며, 버튼식 및 터치 모듈(터치 스크린)로 이루어진 입력부(11)와, 다양한 정보를 표시하는 표시부(12)와, 소리의 음원 데이터(원본 데이터를 포함) 및 다양한 소프트웨어를 저장하는 저장부(13)와, 소리를 발산 또는 출력하며, 일정 거리 이상 이격된 제1 및 제2 스피커(14a, 14b)(예를 들면, Left 스피커, Right 스피커)와, 외부 소리를 획득하는 마이크(15)와, 제2 전기 통신 기기(20)를 포함한 다른 통신 가능한 전기 기기와의 통신을 수행하는 통신부(16)와, 제1 전기 통신 기기(10)의 고유 기능을 수행하고, 다양한 소프트웨어를 동작시키고, 상술된 구성요소들을 제어하는 제어부(19)로 구성된다. 다만, 전원부가 기재되고 있지 않으나, 이러한 구성요소는 널리 알려진 기술에 해당하여 그 설명이 생략되었으며, 입력부(11), 표시부(12), 제1 및 제2 스피커(14a, 14b), 마이크(15) 및 통신부(16) 등에 대한 설명도 생략된다.The first telecommunication device 10 obtains an input from a user, an input unit 11 including a button type and a touch module (touch screen), a display unit 12 for displaying various information, and sound source data (original) A storage unit 13 storing data and various software, and first and second speakers 14a and 14b (eg, left speaker and right speaker) that emit or output sound and are spaced apart by a predetermined distance or more. ), A communication unit 16 for performing communication with the microphone 15 for acquiring an external sound, another communication device including the second communication device 20, and the first communication device 10. It consists of a control unit 19 that performs unique functions, operates various software, and controls the above-mentioned components. However, although the power supply unit is not described, such components are well-known techniques and description thereof has been omitted, and the input unit 11, the display unit 12, the first and second speakers 14a and 14b, and the microphone 15 are described. ) And the communication unit 16 and the like are also omitted.
저장부(13)는 위치 추적을 위한 충분히 연속적인 소리이거나 초음파와 같은 펄스 형태 소리를 포함하는 음원 데이터, 일반적인 음악, 배경음, 효과음 등을 위한 음원 데이터 등을 저장한다. 또한, 저장부(13)는 제어부(19)에 의해 동작되는 다양한 소프트웨어와, 제2 전기 통신 기기(20)로부터 수신된 위치 정보 등도 저장한다. The storage unit 13 stores sound source data that is sufficiently continuous sound for position tracking or includes a pulsed sound such as ultrasonic waves, sound source data for general music, background sounds, effect sounds, and the like. The storage unit 13 also stores various software operated by the control unit 19, location information received from the second telecommunication device 20, and the like.
제어부(19)는 제1 전기 통신 기기(10)의 고유 기능(통화, 영상 재생, 데이터 통신, 연산, 촬영, 이미지 처리 등)을 수행하며, 제2 전기 통신 기기(20)의 위치 정보를 추적하기 위한 위치 추적 프로세스를 수행하며, 위치 추적 프로세스에 의해 확인된 위치 정보를 이용하여, 현재 동작 중인 소프트웨어의 새로운 입력값으로 적용하여, 소프트웨어의 상태 변경 및 제어를 수행한다. 하기에서 위치 추적 프로세스는 상세하게 기재된다. The controller 19 performs a unique function (calling, image reproducing, data communication, operation, photographing, image processing, etc.) of the first telecommunication device 10, and tracks location information of the second telecommunication device 20. A location tracking process is performed, and by using the location information identified by the location tracking process, it is applied as a new input value of the currently operating software to perform a state change and control of the software. The location tracking process is described in detail below.
제2 전기 통신 기기(20)는 사용자로부터 입력을 획득하며, 버튼식 및 터치 모듈(터치 스크린)로 이루어진 입력부(21)와, 다양한 정보를 표시하는 표시부(22)와, 소리의 음원 데이터(원본 데이터를 포함) 및 다양한 소프트웨어를 저장하는 저장부(23)와, 소리를 발산 또는 출력하는 스피커(24)와, 외부 소리를 획득하며 일정 거리 이상 이격된 제1 및 제2 마이크(25a, 25b)(예를 들면, Up/Down 마이크)와, 자기장을 측정하는 자기장 센서(26a)와, 자이로스코프(26b), 가속도계(26c), 제2 전기 통신 기기(20)를 진동시키는 진동부(27)와, 제1 전기 통신 기기(10)를 포함한 다른 통신 가능한 전기 기기와의 통신을 수행하는 통신부(28)와, 제2 전기 통신 기기(20)의 고유 기능을 수행하고, 다양한 소프트웨어를 동작시키고, 상술된 구성요소들을 제어하는 제어부(30)로 구성된다. 다만, 전원부가 기재되고 있지 않으나, 이러한 구성요소는 널리 알려진 기술에 해당하여 그 설명이 생략되었으며, 입력부(21), 표시부(22), 스피커(24), 제1 및 제2 마이크(25a, 25b), 자기장 센서(26a), 자이로스코프(26b), 가속도계(26c), 진동부(27) 및 통신부(28) 등에 대한 설명도 생략된다.The second telecommunication device 20 obtains an input from a user, an input unit 21 consisting of a button type and a touch module (touch screen), a display unit 22 for displaying various information, and sound source data (original) Data) and a storage unit 23 for storing various software, a speaker 24 for emitting or outputting sound, and first and second microphones 25a and 25b spaced apart by a predetermined distance to obtain external sound. (For example, an up / down microphone), a magnetic field sensor 26a for measuring a magnetic field, a gyroscope 26b, an accelerometer 26c, and a vibrator 27 for vibrating the second telecommunication device 20. And perform a unique function of the communication unit 28 for communicating with other communicable electric devices including the first telecommunication device 10 and the second telecommunication device 20, and operate various software, It is composed of a control unit 30 for controlling the above-described components. However, although the power supply unit is not described, these components correspond to a well-known technology and description thereof has been omitted, and the input unit 21, the display unit 22, the speaker 24, the first and second microphones 25a and 25b are described. ), The magnetic field sensor 26a, the gyroscope 26b, the accelerometer 26c, the vibrator 27, the communication unit 28 and the like are also omitted.
저장부(23)는 제1 및 제2 마이크(25a, 25b)로부터 획득된 제1 및 제2 입력 파형 데이터를 저장하고, 위치 추적을 위한 음원 데이터를 저장한다. 또한, 저장부(23)는 제2 전기 통신 기기(20)에서 수행되는 소프트웨어를 저장한다. The storage unit 23 stores the first and second input waveform data obtained from the first and second microphones 25a and 25b and stores sound source data for position tracking. The storage unit 23 also stores software executed in the second telecommunication device 20.
제어부(30)는 제1 전기 통신 기기(10)의 고유 기능(통화, 영상 재생, 데이터 통신, 연산, 촬영, 이미지 처리 등)을 수행하며, 제1 또는 제2 입력 파형 데이터와, 음원 데이터를 비교하여, 제1 위치 정보(x, y, z)를 산정하고, 자기장 센서(26a), 자이로스코프(26b) 및 가속도계(26c) 등을 이용하여 제2 위치 정보(pitch, yaw, roll)를 산정한다. 제어부(30)는 제1 및 제2 위치 정보를 통신부(28)를 통하여 제1 전기 통신 기기(10)로 전송한다. The controller 30 performs unique functions (calling, image reproducing, data communication, calculation, photographing, image processing, etc.) of the first telecommunication device 10, and controls the first or second input waveform data and the sound source data. In comparison, the first position information (x, y, z) is calculated, and the second position information (pitch, yaw, roll) is obtained using the magnetic field sensor 26a, the gyroscope 26b, the accelerometer 26c, or the like. Calculate The control unit 30 transmits the first and second location information to the first telecommunication device 10 through the communication unit 28.
도 2는 도 1의 위치 추적 시스템의 제1 실시예이고, 도 3a 및 3b는 도 2의 제1 실시예에서 처리되는 신호 그래프들이다. FIG. 2 is a first embodiment of the position tracking system of FIG. 1, and FIGS. 3A and 3B are signal graphs processed in the first embodiment of FIG. 2.
제1 실시예는 위치 추적 프로세스의 예에 해당된다. 제1 실시예는 별도의 하드웨어 없이 스마트 폰인 제2 전기 통신 기기(20)가 제2 전기 통신 기기(20)와 태블릿 컴퓨터인 제1 전기 통신 기기(10)와의 거리를 산정하여, 제1 전기 통신 기기(10)로 전송하고, 제1 전기 통신 기기(10)가 표시부(12)와 제1 스피커(14a)를 시연되는 게임 등의 소프트웨어를 구동하는 것이다. 제어부(19)는 게임을 동작시키면서 표시부(12)에 이미지를 출력하고 제1 및 제2 스피커(14a, 14b)를 통해 효과음을 출력한다. 제2 전기 통신 기기(20)는 이 게임에서 일종의 공간 입력 장치 역할을 하여, 제1 전기 통신 기기(10)의 제1 스피커(14a)와 제2 전기 통신 기기(20)의 제1 마이크(25a) 간의 연속적인 거리 변화(움직임)가 게임 소프트웨어의 입력값이 되어 게임의 승패 등 소프트웨어의 상태가 달라지며, 이 결과가 표시부(12)와 제1 및 제2 스피커(14a, 14b)로 다시 출력된다. The first embodiment corresponds to an example of a location tracking process. The first embodiment calculates the distance between the second telecommunication device 20, which is a smart phone, and the first telecommunication device 10, which is a tablet computer, without a separate hardware. It transmits to the device 10, and the first telecommunication device 10 drives software such as a game in which the display unit 12 and the first speaker 14a are demonstrated. The controller 19 outputs an image to the display unit 12 while operating the game, and outputs sound effects through the first and second speakers 14a and 14b. The second telecommunication device 20 acts as a kind of space input device in the game, such that the first speaker 14a of the first telecommunication device 10 and the first microphone 25a of the second telecommunication device 20 are used. The continuous distance change (movement) between the inputs becomes the input value of the game software, and the state of the software, such as winning or losing the game, is changed, and the result is output back to the display unit 12 and the first and second speakers 14a and 14b. do.
거리 측정을 위한 위치 추적 프로세스를 위해, 제1 스피커(14a)와 제1 마이크(25a) 간의 거리(S1)를 연속적으로 충분히 정확하게 재어야 할 필요가 있다. 종래의 방법에 의하면 거리 측정을 위해 사람의 귀에 거슬리는 특정 파형의 소리를 내거나, 초음파를 쓸 경우에도 제1 스피커(14a)에서는 clicking noise가 들리는 문제가 있어서 게임의 효과음을 제대로 출력할 수 없다. For the location tracking process for the distance measurement, it is necessary to continuously and accurately measure the distance S1 between the first speaker 14a and the first microphone 25a continuously. According to the conventional method, even when sounding a particular waveform that is annoying to a person's ear for distance measurement or using ultrasonic waves, there is a problem that clicking noise is heard in the first speaker 14a, so that the effect sound of the game cannot be output properly.
제어부(19)는 위치 추적 프로세스를 수행함에 있어 제1스피커(14a)와 제1마이크(25a) 간의 연속적인 거리(S1)를 게임의 효과음을 포함하는 음원 데이터를 사용하여 수행한다. 제어부(19)는 도 3a의 원본 데이터(기준 데이터)(O1)를 제1 스피커(14a)를 통하여 재생하여 소리로 발산시킨다. 도 3a에서, 가로축은 시간(t)에 따라 세로축인 크기(amplitude)가 변화하는 파형이다. 또한, 제어부(19)는 원본 데이터(O1)의 재생과 동시에, 또는 재생 전에 또는 재생 이후에 원본 데이터(O1)를 통신부(16)를 통하여 제2 전기 통신 기기(20)로 전송한다. The controller 19 performs a continuous distance S1 between the first speaker 14a and the first microphone 25a by using sound source data including sound effects of the game in performing the position tracking process. The controller 19 reproduces the original data (reference data) O1 of FIG. 3A through the first speaker 14a and emits the sound. In FIG. 3A, the horizontal axis is a waveform in which an amplitude, which is a vertical axis, changes with time t. In addition, the control unit 19 transmits the original data O1 to the second telecommunication device 20 through the communication unit 16 at the same time as the reproduction of the original data O1 or before or after the reproduction.
원본 데이터에 의한 소리는 거리(S1)만큼 진행하여, 제1 마이크(25a)를 진동시켜, 제1 입력 파형 데이터를 도 3b에서와 같이 생성하여, 제어부(30)로 인가한다. The sound by the original data is advanced by the distance S1, vibrates the first microphone 25a, generates the first input waveform data as shown in FIG. 3B, and applies it to the controller 30.
제어부(30)는 저장부(23)에 제1 입력 파형 데이터를 저장하고, 제1 전기 통신 기기(10)로부터 원본 데이터(O1)를 수신하여 저장부(23)에 저장한다. 또는, 저장부(30)는 이미 다른 전기 통신 기기를 통하여 원본 데이터(O1)를 저장하고 있을 수도 있다.The controller 30 stores the first input waveform data in the storage unit 23, receives original data O1 from the first telecommunication device 10, and stores the original data O1 in the storage unit 23. Alternatively, the storage unit 30 may already store the original data O1 through another telecommunication device.
제어부(30)는 제1 입력 파형 데이터의 파형과, 수신되거나 기저장된 원본 데이터(O1)의 파형을 비교하여 지연 시간(d)를 결정한다. 예를 들면, 제어부(30)는 generalized cross-correlation(GCC) 등을 이용하여, 제1 입력 파형 데이터와 원본 데이터(O1)를 비교하여, 원본 데이터(O1)의 파형에 대하여 어느 정도의 지연 시간(d) 이후에 동일한 파형이 제1 입력 파형 데이터에 나타나는지를 판단한다. 제어부(30)는 시간의 흐름에 따라, 원본 데이터(O1)의 파형과 제1 입력 파형 데이터의 파형이 중첩되는 유사도를 측정하여, 유사도가 정점(peak)이 이른 때는 지연 시간(d)로 판단할 수 있다. 도 3a 및 3b에서의 시간(0)점은 제어부(30)가 원본 데이터(O1)를 수신한 시점 또는 제어부(19)가 소리를 출력한 시점 또는 제어부(19)가 원본 데이터(O1)를 전송한 시점에 해당되며, 다른 파형 그래프들에서도 동일하게 적용된다. 제어부(19)는 위의 시간(O)점의 확인을 위한 시간 정보도 제2 전기 통신 기기(20)로 전송할 수 있다. 또한, 제1 전기 통신 기기(10)와 제2 전기 통신 기기(20)는 각각 시간 지연이 없는 매체(적외선 등)를 수신 및 송신하는 장치를 구비하고, 제1 전기 통신 기기(10)가 제2 전기 통신 기기(20)로부터 적외선을 수신할 시점에, 원본 데이터(O1)의 재생이 이루어지도록 할 수도 있다. The controller 30 compares the waveform of the first input waveform data with the waveform of the received or prestored original data O1 to determine the delay time d. For example, the controller 30 compares the first input waveform data with the original data O1 by using a generalized cross-correlation (GCC) or the like, and thus delays a certain amount of time with respect to the waveform of the original data O1. After (d), it is determined whether the same waveform appears in the first input waveform data. The controller 30 measures similarity in which the waveform of the original data O1 and the waveform of the first input waveform data overlap with each other over time, and determine that the similarity is the delay time d when the peak reaches a peak. can do. The time (0) point in FIGS. 3A and 3B is a point in time when the control unit 30 receives the original data O1 or a point in time when the control unit 19 outputs a sound or the control unit 19 transmits the original data O1. One point in time, the same applies to other waveform graphs. The controller 19 may also transmit time information for checking the time point O to the second telecommunication device 20. In addition, each of the first telecommunication device 10 and the second telecommunication device 20 includes an apparatus for receiving and transmitting a medium (such as infrared rays) without a time delay, and the first telecommunication device 10 includes a first telecommunication device 10. 2 When the infrared ray is received from the telecommunication device 20, the original data O1 may be reproduced.
물론, 제1 입력 파형 데이터에는 원본 데이터(O1)의 파형 외에도 노이즈, 반향 등이 포함되어 있지만, GCC 등의 TDE(또는 SSL) 알고리즘을 적용하면, 하나의 제1 마이크(25a)만으로도 지연 시간을 정확하게 검출할 수 있다. Of course, the first input waveform data includes noise, echo, etc. in addition to the waveform of the original data O1. However, when a TDE (or SSL) algorithm such as GCC is applied, the first input waveform data has a delay time with only one first microphone 25a. Can be detected accurately.
다음으로, 거리(S1)은 지연 시간(d)으로부터 산출된다. 즉, 지연 시간(d) = 거리(S1)/(소리의 속도)로 정해지므로, 지연 시간(d)의 측정을 통해 이미 알려진 소리의 속도값을 사용하여, 제어부(30)는 거리(S1)를 정확하게 알아낼 수 있다. Next, the distance S1 is calculated from the delay time d. That is, since the delay time d is determined as the distance S1 / (velocity of the sound), the control unit 30 controls the distance S1 by using the known velocity value of the sound through the measurement of the delay time d. You can find out exactly.
또한, 소리의 지연을 더욱 정밀하게 측정하기 위해, 제1 전기 통신 기기(10)는 사용자에게 들려줄 소리에 clicking noise를 유발하지 않는 연속적인 초음파를 믹싱함으로써, 사람의 귀에 거슬리지 않는 범위에서 출력되는 소리에 의도적인 가공을 할 수 있다. In addition, in order to more accurately measure the delay of the sound, the first telecommunication device 10 mixes a continuous ultrasonic wave that does not cause clicking noise to the sound to be heard by the user, thereby outputting it in an unobtrusive range. Intentional processing can be done for sound.
제어부(30)는 거리(S1)를 포함하는 위치 정보를 통신부(28)를 통하여 제1 전기 통신 기기(10)로 전송한다. 제어부(19)는 통신부(16)를 통하여 위치 정보를 수신하고, 이 위치 정보에 포함된 거리(S1)을 동작 중인 소프트웨어의 입력값으로 이용하여, 소프트웨어를 제어한다. The control unit 30 transmits the location information including the distance S1 to the first telecommunication device 10 through the communication unit 28. The control unit 19 receives the positional information through the communication unit 16 and controls the software using the distance S1 included in the positional information as an input value of the operating software.
거리(S1)가 커지거나 작아지는 변화를 이용하여, 게임이 수행될 수도 있고, 절대적인 거리값을 게임에 반영해야 하는 경우도 있다. 이 경우, 제1 스피커(14a)와, 제1 마이크(25a)를 접촉시키거나 최대한 근접된 상태에서, 제어부(19)는 원본 데이터(O1)를 제1 스피커(14a)를 통하여 재생시키고, 제어부(30)는 제1 마이크(25a)를 통하여 그 소리를 거의 동일한 시간에 수신한다. 이러한 동작을 통하여, 제1 전기 통신 기기(10)의 시계(시간)과 제2 전기 통신 기기(20)의 시계(시간)을 동기화시킨다. 이러한 동기화가 이루어진 경우, 제어부(19)는 정해진 시각에 원본 데이터(O1)의 재생이 제1 스피커(14a)를 통하여 이루어지도록 하고, 제어부(30)는 정해신 시간을 시간의 원점(O)으로 생각하여 지연 시간(d)을 산정할 수도 있다. The game may be performed by using a change in which the distance S1 becomes larger or smaller, or the absolute distance value may need to be reflected in the game. In this case, in a state where the first speaker 14a and the first microphone 25a are in contact or as close as possible, the controller 19 reproduces the original data O1 through the first speaker 14a, and controls the controller. 30 receives the sound through the first microphone 25a at about the same time. Through this operation, the clock (time) of the first telecommunication device 10 and the clock (time) of the second telecommunication device 20 are synchronized. When such synchronization is made, the control unit 19 causes the reproduction of the original data O1 to be performed through the first speaker 14a at a predetermined time, and the control unit 30 sets the determined time to the origin O of time. In consideration of this, the delay time d may be calculated.
또한, 제어부(19) 또는 제어부(30)가 통신 및 데이터 처리 과정을 수행하는 것에 의해, 원본 데이터(O1)의 송신 또는 수신이 지연되어, 소리가 제1 마이크(25a)를 통해 검출되는 시점보다 더 늦게 준비될 수도 있다. 하지만, 제어부(30)는 제1 마이크(25a)에서 검출된 제1 입력 파형 데이터를 시간 정보(제1 입력 파형 데이터의 수신 시간)와 함께 저장부(23)에 저장하고, 원본 데이터(O1)(제어부(19)가 전송한 시간 정보를 포함)가 수신된 이후에, TDE를 수행시킬 수 있음은 자명하며, 사용자가 처리 지연을 느낄 정도로 과도하게 늦어지지 않는 한 게임 수행에 문제가 없다.In addition, when the control unit 19 or the control unit 30 performs communication and data processing, transmission or reception of the original data O1 is delayed, so that the sound is detected through the first microphone 25a. It may be prepared later. However, the controller 30 stores the first input waveform data detected by the first microphone 25a in the storage unit 23 together with time information (receipt time of the first input waveform data) and stores the original data O1. After the reception (including the time information transmitted by the control unit 19), it is obvious that the TDE can be performed, and there is no problem in game performance unless the user is excessively late enough to feel a processing delay.
도 4는 도 1의 위치 추적 시스템의 제2 실시예이고, 도 5a 내지 5c는 도 4의 제2 실시예에서 처리되는 신호 그래프들이다. 4 is a second embodiment of the position tracking system of FIG. 1, and FIGS. 5A-5C are signal graphs processed in the second embodiment of FIG. 4.
제2 실시예는 별도의 하드웨어 없이 스마트 폰인 제2 전기 통신 기기(20)로 노트북 PC인 제1 전기 통신 기기(10)의 소프트웨어의 입력값을 제공할 수 있는 평면형 마우스를 구현하는 실시예이다. 제2 전기 통신 기기(20)는 사용자의 손에 의해 평면에 끌리는 제 2 전기 통신 기기(20)의 위치의 기준인 이동점(M)이 제 1 전기 통신 기기(10)의 고정 평면 좌표계(O)를 기준으로 하여 어떤 좌표(x, y)(위치 정보)에 있는지를 측정하여, 제 1 전기 통신 기기(10)로 전송하고, 제1 전기 통신 기기(10)는 동작 중인 소프트웨어에 측정된 위치 정보 (x, y)를 입력값으로 이용한다.The second embodiment is an embodiment in which a flat type mouse capable of providing an input value of software of the first telecommunication device 10, which is a notebook PC, to the second telecommunication device 20, which is a smartphone, without any additional hardware. The second telecommunication device 20 has a fixed plane coordinate system O of the first telecommunication device 10 having a moving point M, which is a reference point of the position of the second telecommunication device 20 attracted to the plane by the user's hand. ) Is measured based on which coordinate (x, y) (location information) is measured, and transmitted to the first telecommunication device 10, the first telecommunication device 10 is measured position in the operating software Use information (x, y) as input.
이때, 측정되어야 할 제 2 전기 통신 기기(20)가 공간 상에 떠서 임의로 움직이지 않고, 평면이나 기하학적 구성이 알려진 곡면 위에서 2차원적으로 움직인다고 가정한다. 좀 더 제한을 가하여, 제 1 및 제 2 전기 통신 기기(10, 20)가 같은 평면에 놓여진다는 가정을 하고 사용자에게 실제로 두 컴퓨터를 같은 평면 위에서 사용하도록 하여도 대부분의 사용자들이 불편하게 느끼지 않는다. 이런 가정 하에서, 제어부(19)는 상술된 위치와 이동의 가정에 대한 정보(사전 정보)를 저장부(13)에 저장하고, 제1 및 제2 스피커(14a, 14b)를 통하여 원본 데이터(O2, O3)를 소리로 발산시키고, 제어부(30)는 제1 마이크(25a)를 통하여 제2 및 제3 입력 파형 데이터를 획득하여, 도 2에서와 같이, 위치 추적 프로세스(예를 들면, TDE)를 수행하고, 이를 통해 거리를 추정하여 위치 정보 (x, y)를 산출한다. In this case, it is assumed that the second telecommunication device 20 to be measured does not float arbitrarily and moves freely in space, but moves two-dimensionally on a known curved plane or geometrical configuration. With more restrictions, most users do not feel uncomfortable even if they assume that the first and second telecommunications devices 10 and 20 lie on the same plane and allow the user to actually use both computers on the same plane. Under this assumption, the control unit 19 stores the above-mentioned information (preliminary information) about the assumption of the position and movement in the storage unit 13, and the original data O2 through the first and second speakers 14a and 14b. , O3) as a sound, and the controller 30 acquires the second and third input waveform data through the first microphone 25a, and as shown in FIG. 2, the position tracking process (for example, TDE). Calculate the location information (x, y) by estimating the distance.
우선 전술한 것과 같이 제 2 전기 통신 기기(20)의 제1 마이크(25a)(이동점(M))와, 제1 전기 통신 기기(10)의 제1 스피커(14a)(고정된 원점(O))를 근접시켜, 제1 및 제2 전기 통신 기기(10, 20)의 시계를 동기화시킨다. First, as described above, the first microphone 25a (moving point M) of the second telecommunication device 20 and the first speaker 14a (fixed origin O of the first telecommunication device 10). )) To synchronize the clocks of the first and second telecommunication devices 10, 20.
다음으로, 제어부(19)는 제1 스피커(14a)를 통하여 원본 데이터(O2)를 발산하고, 제2 스피커(14b)를 통하여 원본 데이터(O3)를 발산한다. 여기서 원본 데이터(O2)와 (O3)는 도 5a에 도시된 바와 같이, 시간에 따라 위상이나 크기(진폭)에서 구별될 수 있는 파형을 지닌다. 또한, 제어부(19)는 원본 데이터(O2), (O3)를 통신부(16)를 통하여 제2 전기 통신 기기(20)로 전송한다. Next, the controller 19 emits original data O2 through the first speaker 14a, and emits original data O3 through the second speaker 14b. Here, the original data O2 and O3 have waveforms that can be distinguished in phase or magnitude (amplitude) with time, as shown in FIG. 5A. In addition, the control unit 19 transmits the original data O2 and O3 to the second telecommunication device 20 through the communication unit 16.
도 4에서, 이동점(M)은 제1 스피커(14a)로부터 거리(S2)만큼 이격되고, 제2 스피커(14b)로부터 거리(S3)만큼 이격된 상태이다. 이러한 이격에 의해, 제1 스피커(14a)의 소리가 제1 마이크(25a)에 도달하는 것은 도 5b에서와 같이, 지연 시간(d2) 후이고, 제2 스피커(14b)의 소리가 제1 마이크(25a)에 도달하는 것은 지연 시간(d3) 후이다. 그러나, 실제로 제1 마이크(25a)에서 획득되는 파형 그래프는 도 5c에서와 같이, 도 5b의 파형 그래프가 중첩된 파형에 해당되며, 기타 감쇠, 노이즈, 반향이 포함된 것이다. 제어부(30)는 제2 및 제3 입력 파형 데이터가 중첩된 중첩 파형 데이터를 제1 마이크(25a)로부터 획득하고, 도 5a의 파형 그래프를 나타내는 원본 데이터(O2, O3)와 중첩 파형 데이터를 비교하여, 지연 시간(d2, d3)를 산정한다. 예를 들면, 제어부(30)는 원본 데이터(O2, O3)와 중첩 파형 데이터를 cross correlation 알고리즘 등 다중 신호원(multi-source) TDE 기법을 이용하여 지연 시간(d2, d3)을 모두 정확하게 산정한다. In FIG. 4, the moving point M is spaced apart from the first speaker 14a by a distance S2 and spaced apart from the second speaker 14b by a distance S3. By this separation, it is after the delay time d2 that the sound of the first speaker 14a reaches the first microphone 25a, as in FIG. 5B, and the sound of the second speaker 14b is the first microphone. It is after the delay time d3 that reaches (25a). However, the waveform graph actually obtained by the first microphone 25a corresponds to a waveform in which the waveform graph of FIG. 5B is superimposed, as shown in FIG. 5C, and includes other attenuation, noise, and echo. The control unit 30 obtains the superimposed waveform data in which the second and third input waveform data are superimposed from the first microphone 25a, and compares the superimposed waveform data with the original data O2 and O3 representing the waveform graph of FIG. 5A. The delay times d2 and d3 are calculated. For example, the controller 30 accurately calculates both the delay time d2 and d3 of the original data O2 and O3 and the superimposed waveform data by using a multi-source TDE technique such as a cross correlation algorithm. .
여기서, 지연 시간(d2, d3) 및 이동점(M)의 좌표(x, y)는 하기와 같이 정의된다.Here, the delay times d2 and d3 and the coordinates x and y of the moving point M are defined as follows.
이때, 함수 f1, f2는 제1 마이크(25a)의 위치(x, y)에 따라 경과되는 소리의 지연 시간을 계산하는 함수이다. 지연 시간(d2, d3)이 알려지면, 2차 연립 방정식을 통해 이동점(M)의 좌표(x, y)가 산정된다. 제어부(30)는 수학식 1을 이용하여 이동점(M)의 좌표(x, y)를 포함하는 위치 정보를 통신부(28)를 통하여 제1 전기 통신 기기(10)로 송신한다. 제어부(19)는 수신된 위치 정보의 좌표(x, y)를 이용하여, 동작 중이 소프트웨어의 입력값으로 사용한다. In this case, the functions f1 and f2 are functions for calculating the delay time of the sound that passes according to the position (x, y) of the first microphone 25a. When the delay times d2 and d3 are known, the coordinates x and y of the moving point M are calculated through the quadratic simultaneous equations. The control unit 30 transmits the position information including the coordinates (x, y) of the moving point M to the first telecommunication device 10 through the communication unit 28 using Equation 1. The control unit 19 uses the coordinates (x, y) of the received position information to use the input value of the software in operation.
평면에서 끄는 마우스는 어느 이상을 끌게 되면 마우스를 들어 사용자가 계속 조작하기 편한 위치로 옮긴 후 다시 끄는 동작을 계속하게 된다. 평면 마우스를 구현하기 위해서는 제2 전기 통신 기기(20)가 움직일 때 사용자가 바닥(평면)에 접하여 끄는 상태(입력 상태) 또는 바닥으로부터 들어 올려서 공중에서 편리한 위치로 옮기는 상태(이동 상태)인지를 구분해야 한다.If the dragging mouse is dragged more than a plane, the mouse is moved to a position that is convenient for the user to continue to operate, and then dragging again. In order to implement a planar mouse, the second telecommunication device 20 distinguishes whether the user is in contact with the floor (plane) to be dragged (input state) or lifted from the floor to a convenient position in the air (movement state). Should be.
이러한 상태 구분을 위해, 제어부(30)는 제2 전기 통신 기기(20)에 구비된 자기장 센서(26a), 자이로스코프(26b) 및 가속도계(26c) 중에서 적어도 하나 이상의 센서로부터의 감지값을 이용한다. 즉, 제 2 전기 통신 기기(20)가 수평에 가까운 면에 놓여 끌리고 있다면, 가속도계(26c)로부터의 감지값으로부터 판단되는 가속도는 중력의 방향으로 일정할 것이다. 따라서, 제어부(30)는 검출되는 가속도의 변화가 삼차원 공간 상의 임의의 방향이 아닌 어떤 평면에 속하는 방향으로만 지속되면 일반적인 바닥(평면)에 놓인 상태로, 그렇지 않고 임의의 방향으로 가속도가 생기면 들려 공중에서 옮겨지고 있는 상태로 판단할 수 있다. In order to distinguish the states, the controller 30 uses the detected values from at least one sensor among the magnetic field sensor 26a, the gyroscope 26b, and the accelerometer 26c provided in the second telecommunication device 20. In other words, if the second telecommunication device 20 is being dragged on a plane near the horizontal, the acceleration determined from the sensed value from the accelerometer 26c will be constant in the direction of gravity. Therefore, the controller 30 is placed on a general floor (plane) if the change in the detected acceleration is sustained only in a direction belonging to a certain plane rather than any direction in the three-dimensional space, otherwise it is heard if the acceleration occurs in an arbitrary direction. It can be judged as being moved in the air.
또한, 제어부(30)는 제2 전기 통신 기기(20)가 바닥에 닿는 순간 가속도가 급격히 변하는 것도 참조하거나 평면에 놓이거나 끌리면서 생기는 진동이나 소리를 가속도계(26c) 및 제1 및 제2 마이크(25a, 25b)로 검출하여 끌리고 있음을 판단할 수 있다. 즉, 바닥에 닿아 진동과 함께 상대적으로 큰 각 가속도나 선형적 가속도가 생긴 후 가속도가 중력 방향에 일정한 상태를 유지하면 바닥에 닿아 끌리기 시작한 것으로 판단하는 등이다. 이 외에도 바닥쪽을 향한 스피커(24)에서 특정한 소리를 내어 제2 전기 통신 기기(20)가 바닥에 닿으면 이 스피커(24)가 바닥에 막혀 소리의 특성이 달라지는 것으로 바닥에 끌림 여부를 판단할 수도 있다. 이러한 여러 조건을 함께 사용할 수 있다.In addition, the controller 30 may also refer to an abrupt change in acceleration when the second telecommunication device 20 reaches the floor, or may detect vibrations or sounds generated by being placed on a plane or attracted to the accelerometer 26c and the first and second microphones ( 25a, 25b), it can be judged that it is attracted. In other words, after reaching the floor with vibration and having a relatively large angular acceleration or linear acceleration, if the acceleration remains constant in the direction of gravity, it is judged that the ground has started to attract. In addition, when the second telecommunication device 20 makes a specific sound from the speaker 24 facing the floor and touches the floor, the speaker 24 is blocked on the floor, and thus the characteristics of the sound are changed to determine whether the speaker 24 is attracted to the floor. It may be. These different conditions can be used together.
또한, 제2 전기 통신 기기(20)의 입력부(21)에 포함된 터치 스크린을 마우스의 버튼 기능으로 사용하여 사용자가 손가락으로 터치 스크린을 클릭하거나 터치스크린을 누른채 제2 전기 통신 기기(20)을 끌다가 터치스크린 누름을 해제하는 등의 입력을 받아 기존의 마우스 버튼 클릭, drag&drop 기능을 구현할 수 있다. 제어부(30)는 터치 스크린인 입력부(21)로부터의 입력값도 통신부(28)를 통하여, 제1 전기 통신 기기(10)로 전송하고, 제어부(19)는 수신된 입력값과 위치 정보를 소프트웨어의 입력값으로 사용한다. 또한, 터치 스크린을 손가락으로 긁거나(swipe) 멀티 터치 기능을 사용하여 여러 개의 손가락으로 클릭하거나 긁는 등의 입력을 참조하여 다양한 사용자 인터페이스를 제공할 수 있다. In addition, by using the touch screen included in the input unit 21 of the second telecommunication device 20 as a button function of a mouse, a user clicks the touch screen with a finger or presses the touch screen to hold the second telecommunication device 20. It is possible to implement the existing mouse button click and drag & drop functions by receiving input such as releasing the touch screen and releasing the touch screen. The control unit 30 also transmits an input value from the input unit 21, which is a touch screen, to the first telecommunication device 10 through the communication unit 28, and the control unit 19 transmits the received input value and position information to the software. Use as input value of. In addition, various user interfaces may be provided by referring to an input such as swiping a touch screen with a finger or using a multi-touch function to click or scrape with multiple fingers.
도 6은 도 1의 위치 추적 시스템의 제3 실시예이고, 도 7은 도 6의 제3 실시예에서 처리되는 신호그래프들이다. FIG. 6 is a third embodiment of the position tracking system of FIG. 1, and FIG. 7 is signal graphs processed in the third embodiment of FIG.
제3 실시예는 제 1 전기 통신 기기(10)에 해당하는 스마트 TV가 근접한 제 2 전기 통신 기기(20)인 스마트폰의 공간상의 위치(C1(0,0,0))와 (C2(x,y,z))을 측정하여 이를 제1 전기 통신 기기(10)에서 동작 중인 소프트웨어의 입력으로 사용되는 것이다. 이에 의해, 표시부(12)에 이미지의 형태로 출력되는 소프트웨어의 3차원 마우스 커서(18a)의 위치와 방향을 직관적으로 바꿔 다양한 소프트웨어 객체(18b)를 조작할 수 있으며, 제 1 전기 통신 기기(10)가 제1 및 제2 스피커(14a, 14b)를 통해 획득된 입력 파형 데이터들에 따라 결정된다. 제 1 전기 통신 기기(10)에 대한 제 2 전기 통신 기기(20)의 위치를 추적하기 위해 제 1 및 2 전기 통신 기기(10, 20)가 소리를 주고 받으면서, 소리가 검출된 지연시간 측정(TDE)을 통해 거리(D1-D4)를 측정한다. 즉, 제 1 전기 통신 기기(10)가 구비한 2개의 제1 및 제2 스피커(14a, 14b)를 통하여 소리를 발생시켜 근접한 제 2 전기 통신 기기(20)의 2개의 제1 및 제2 마이크(25a, 25b)가 이 소리를 언제 검출하는지를 제어부(30)가 산정한다. 제1 스피커(14a)에서 발생한 소리가 제1 및 제2 마이크(25a, 25b)에 도달하는데 걸리는 지연 시간은 제1 스피커(14a)와 제1 및 제2 마이크 쌍(25a, 25b)의 거리(D1, D3)에 의해 결정된다. 제 2 전기 통신 기기(20)는 마이크 배열에 쓰이던 종래의 TDE 알고리즘을 그대로 두 개의 제1 및 제2 마이크(25a, 25b)에서 검출되는 소리의 시계열 데이터에 적용하여 하나의 소리 신호원인 제1 스피커로(14a)부터 온 동일한 소리가 제1 및 제2 마이크(25a, 25b) 각각에 어느 정도의 시차를 두고 획득되는를 산정할 수 있다. 이와 동일하게, 제2 스피커(14b)에서 발생한 소리가 제1 및 제2 마이크(25a, 25b)에 도달하는데 걸리는 지연 시간 역시 제2 스피커(14b)와 제1 및 제2 마이크(25a, 25b) 쌍의 거리(D2, D4)에 의해 결정된다. 제 2 전기 통신 기기(20)는 마이크 배열에 쓰이던 종래의 TDE 알고리즘을 그대로 두 개의 제1 및 제2 마이크(25a, 25b)에서 검출되는 소리의 시계열 데이터에 적용하여 하나의 소리 신호원인 제2 스피커(14b)로부터 온 동일한 소리가 제1 및 제2 마이크(25a, 25b) 각각에 어떤 시차로 잡히는지를 산정할 수 있다. 특히, 신호원이 제1 및 제2 스피커(14a, 14b) 두개이므로 종래의 다중 소리 신호원(multi-source)에 대한 TDE를 사용하는 것이 바람직하다.In the third embodiment, the smart TV corresponding to the first telecommunication device 10 is located in the spaces C1 (0,0,0) of the smart phone, which is the second telecommunication device 20 adjacent thereto, and (C2 (x). , y, z)) is used as an input of software operating in the first telecommunication device 10. This makes it possible to intuitively change the position and orientation of the three-dimensional mouse cursor 18a of the software output to the display unit 12 in the form of an image, and operate the various software objects 18b. ) Is determined according to the input waveform data obtained through the first and second speakers 14a and 14b. As the first and second telecommunication devices 10 and 20 transmit and receive sound to track the position of the second telecommunication device 20 with respect to the first telecommunication device 10, a delay time measurement in which sound is detected ( TDE) to measure the distance (D1-D4). That is, two first and second microphones of the adjacent second telecommunication device 20 are generated by generating sound through the two first and second speakers 14a and 14b included in the first telecommunication device 10. The control unit 30 calculates when the sounds 25a and 25b detect this sound. The delay time for the sound generated by the first speaker 14a to reach the first and second microphones 25a and 25b is determined by the distance (the distance between the first speaker 14a and the first and second microphone pairs 25a and 25b). D1, D3). The second telecommunication device 20 applies the conventional TDE algorithm used for the microphone array to the time series data of the sound detected by the two first and second microphones 25a and 25b as it is, the first speaker as one sound signal source. It is possible to calculate that the same sound from the furnace 14a is obtained with some time difference in each of the first and second microphones 25a and 25b. Similarly, the delay time for the sound generated by the second speaker 14b to reach the first and second microphones 25a and 25b is also the second speaker 14b and the first and second microphones 25a and 25b. Determined by the distance (D2, D4) of the pair. The second telecommunication device 20 applies the conventional TDE algorithm used for the microphone arrangement to the time series data of the sound detected by the two first and second microphones 25a and 25b, as a second speaker as one sound signal source. It is possible to calculate what time difference the same sound from 14b is caught in each of the first and second microphones 25a and 25b. In particular, since the signal sources are two first and second speakers 14a and 14b, it is preferable to use a TDE for a conventional multi-source signal source.
제1 및 제2 스피커(14a, 14b)에서 발생하는 소리는 중첩되어도 서로 구분될 수 있도록 서로 다른 초음파와 믹싱하거나 서로 시간적으로 교차하면서 발생되게 하는 등의 인위적인 가공을 할 수 있다. 전술한 대로 제 2 전기 통신 기기(20)는 두개의 제1 및 제2 마이크(25a, 25b)에 들어오는 소리의 데이터만을 서로 비교하여 제1 및 제2 스피커(14a, 14b) 두개의 다중 소리 신호원에 대한 TDE를 수행할 수 있다. 이때, 제 1 전기 통신 기기(10)가 자신의 제1 및 제2 스피커(14a, 14b)에서 발생되는 소리에 대한 원본 데이터(O2, O3)를 통신부(16)을 통해 제 2 전기 통신 기기(20)에 전달하고, 제 2 전기 통신 기기(20)는 발생한 소리에 대한 정확한 원본 데이터(O2, O3)를 기반으로 제1 및 제2 마이크(25a, 25b) 각각으로부터 두 소리가 중첩되어 검출되는 파형에 대해 TDE를 수행하면 기존의 마이크에 검출된 파형만을 사용하는 방법보다 훨씬 정확하게 지연 시간들 및 그에 따른 거리(D1~D4)를 산정할 수 있다. Sounds generated by the first and second speakers 14a and 14b may be artificially processed such that they are generated while mixing with each other or intersecting with each other so that they can be distinguished from each other even if they overlap. As described above, the second telecommunication device 20 compares only the data of the sound coming into the two first and second microphones 25a and 25b with each other to compare the two multi-sound signals of the first and second speakers 14a and 14b. You can perform a TDE on a circle. At this time, the first telecommunication device 10 transmits the original data O2 and O3 of the sound generated from its first and second speakers 14a and 14b through the communication unit 16 to the second telecommunication device ( 20), the second telecommunication device 20 is detected by overlapping two sounds from each of the first and second microphones (25a, 25b) based on the correct original data (O2, O3) for the generated sound. Performing a TDE on a waveform can estimate delay times and distances D1 through D4 much more accurately than using only the waveform detected by a conventional microphone.
제 1 전기 통신 기기(10)에 고정되어 제 1 전기 통신 기기(10)의 위치와 방향각에 의해 공간상에 정해지는 X, Y, Z축의 C1 좌표계와 제 2 전기 통신 기기(20)에 고정되어 움직이는 C2 좌표계(X’, Y’, Z’축)를 고려할 때, C2 좌표계의 원점이 C1 좌표계의 어떤 좌표(x, y, z)에 위치하고, C1 좌표계와 3차원적으로 어떤 방향각(roll, yaw, pitch)을 향하고 있는지를 측정하여, 이 C2 좌표계의 위치와 방향각에 따라 제 1 전기 통신 기기(10)의 소프트웨어 상태를 바꿀 수 있다. 특히, 3차원 커서(18a)를 제2 전기 통신 기기(20)의 위치와 방향과 일치하도록 구동하여 표시부(12)에 표시된 소프트웨어 객체(18a)를 사용자게 조작하게 하는 등의 응용에 사용한다. 이를 위한 구현의 일례로, 제 1 전기 통신 기기(10)의 제1 스피커(14a) 위치를 C1 좌표계의 원점으로 하고, 제1 스피커(14a)에서 제2 스피커(14b)로 가는 방향을 x축으로 하고, y축은 제 1 전기 통신 기기(10)의 평면 위에 오도록 C1 좌표계를 정하면 스피커(14a, 14b)의 위치들을 수학식 2와 같이 정의할 수 있다. Fixed to the first telecommunication device 10 and fixed to the C1 coordinate system of the X, Y, Z axes and the second telecommunication device 20 defined in space by the position and orientation angle of the first telecommunication device 10. Considering the moving C2 coordinate system (X ', Y', Z 'axes), the origin of the C2 coordinate system is located at a certain coordinate (x, y, z) of the C1 coordinate system, roll, yaw, and pitch), the software state of the first telecommunication device 10 can be changed in accordance with the position and orientation angle of the C2 coordinate system. In particular, the three-dimensional cursor 18a is driven to coincide with the position and orientation of the second telecommunication device 20 to be used for applications such as allowing the user to manipulate the software object 18a displayed on the display unit 12. As an example of an implementation for this purpose, the position of the first speaker 14a of the first telecommunication device 10 is the origin of the C1 coordinate system, and the x-axis is a direction from the first speaker 14a to the second speaker 14b. If the y-axis defines the C1 coordinate system to be on the plane of the first telecommunication device 10, the positions of the speakers 14a and 14b may be defined as in Equation 2.
위와 같이, 제2 스피커(14b)는 y축으로 y_(14b)만큼 제1 스피커(14a)로부터 이격된 것이다. C1 좌표계 상에서의 제 2 전기 통신 기기(20)의 2개의 제1 및 제2 마이크(25a, 25b)의 위치 좌표 position_(25a)=(x_(25a), y_(25a), z_(25a))와 position_(25b)=(x_(25b), y_(25b), z_(25b))는 제 2 전기 통신 기기(20) 또는 동등하게 C2 좌표계가 C1 좌표계 상에서 어떤 3차원 위치(x, y, z)와 3차원 방향각(roll, yaw, pitch)을 이루는가에 의해 함수 F_(25a), F_(25b)로 기술할 수 있다. 이때, C2 좌표계의 Y’축이 (25a)와 (25b)를 지나가도록 설정하면, 제2 전기 통신 기기(20)이 Y’를 축으로 회전하는 yaw 성분은 (25a)와 (25b)의 3차원 상 좌표를 변화시키지 않으므로, yaw 성분은 무시된다. 그 결과는 하기의 수학식 3으로 산정된다As described above, the second speaker 14b is spaced apart from the first speaker 14a by y_14b along the y axis. Position coordinates of the two first and second microphones 25a and 25b of the second telecommunication device 20 on the C1 coordinate system position_25a = (x_ (25a), y_ (25a), z_ (25a)) And position_ (25b) = (x_ (25b), y_ (25b), z_ (25b)) is the second telecommunication device 20 or equivalently any three-dimensional position (x, y, z in which the C2 coordinate system is on the C1 coordinate system. ) And the three-dimensional direction angle (roll, yaw, pitch) can be described by the functions F_ (25a) and F_ (25b). At this time, if the Y 'axis of the C2 coordinate system is set to pass through (25a) and (25b), the yaw component in which the second telecommunication device 20 rotates Y' along the axis is 3 of (25a) and (25b). The yaw component is ignored because it does not change the coordinates in the dimension. The result is calculated by the following equation (3).
이는 5 자유도( = 5 변수: x, y, z, roll, pitch )의 방정식으로, 제1 및 제2 마이크(25a, 25b)의 위치와 관련한 적어도 5개 이상의 서로 독립적인 기하학적 양이 실측되어야 x, y, z, roll, pitch 등 5개의 변수를 구할 수 있다. 도 6의 구성에서는 제 1 전기 통신 기기(10)의 2개의 제1 및 제2 스피커(14a, 14b)에서 발생된 소리들을 제 2 전기 통신 기기(20)의 2개의 제1 및 제 2마이크(25a, 25b)가 검출하는 2x2=4개의 시점 t0, t1, t2, t3를 제 2 전기 통신 기기(20)의 시계로부터 구할 수 있다. 시점 t0, t1, t2, t3는 상기 2개의 제1 및 제2 스피커(14a, 14b)와 2개의 제1 및 제2 마이크(25a, 25b) 쌍에 의해 결정되는 거리 D1, D2, D3, D4에 의해 결정된다. 제 1 및 제 2 전기 통신 기기(10, 20)의 시계들이 서로 동기화 되어 있다면, 제 1 전기 통신 기기(10)의 시계로부터 소리가 발생된 시점과 제 2 전기 통신 기기(20)의 시계로부터 소리가 검출된 시점을 서로 빼서 D1, D2, D3, D4 등 4개의 거리를 구할 수 있다. 그러나 제 1 및 제 2 전기 통신 기기(10, 20)의 시계들이 동기화 되지 않은 일반적인 경우에는 4개의 시점들의 차이만 측정 가능하므로 t1-t0, t2-t0, t3-t0와 같은 3개의 측정값들 간 차이가 기하학적으로 의미가 있으며, 이들은 상기 수학식 2와 수학식 3의 Position_(25a), Position_(25b), Position_(14a), Position_(14b)의 조합을 더하고 뺀 식이 된다. 즉, 수학식 1 및 2로부터 수학식 4가 결정된다.It is an equation of 5 degrees of freedom (= 5 variables: x, y, z, roll, pitch), in which at least five independent geometric quantities with respect to the position of the first and second microphones 25a, 25b must be measured. Five variables can be obtained: x, y, z, roll, and pitch. In the configuration of FIG. 6, sounds generated by the two first and second speakers 14a and 14b of the first telecommunication device 10 may be divided into two first and second microphones of the second telecommunication device 20. 2x2 = 4 time points t0, t1, t2, t3 detected by 25a, 25b) can be calculated | required from the clock of the 2nd telecommunication device 20. FIG. The time points t0, t1, t2, t3 are the distances D1, D2, D3, D4 determined by the two first and second speakers 14a, 14b and the two first and second microphones 25a, 25b pairs. Determined by If the clocks of the first and second telecommunication devices 10 and 20 are synchronized with each other, the time when the sound is generated from the clock of the first telecommunication device 10 and the sound from the clock of the second telecommunication device 20. Four distances, such as D1, D2, D3, and D4, can be obtained by subtracting from each other. However, in the general case where the clocks of the first and second telecommunication devices 10 and 20 are not synchronized, only three measurement values such as t1-t0, t2-t0, and t3-t0 can be measured since only the difference between four viewpoints can be measured. The difference between them is geometrically significant, and these are equations added and subtracted from the combination of Position_ (25a), Position_ (25b), Position_ (14a) and Position_ (14b) of Equations 2 and 3 above. That is, equation (4) is determined from equations (1) and (2).
만일 제 2 전기 통신 기기(20)가 자기장 센서와 가속도계, 자이로스코프 등 방향각의 절대값을 측정할 수 있는 센서들을 구비하는 장치라면 이러한 센서들로부터 각도에 관련된 변량인 roll, pitch의 값을 알 수 있고, 이를 통해 수학식 5는 하기와 같다:If the second telecommunication device 20 is a device having a magnetic field sensor, an accelerometer, a gyroscope and other sensors capable of measuring the absolute value of the direction angle, the values of the roll and pitch, which are variables related to the angle, are obtained from these sensors. Whereby Equation 5 is as follows:
이는 3개 자유도의 변량 x, y, z에 관련한 3개의 제약 조건으로 비선형 최적화나 방정식의 해를 구하는 수치해석적인 방법을 통해 x, y, z를 구할 수 있다. 이렇게 x, y, z를 구하고 제2 전기 통신 기기(20)의 센서(26a~26c)로부터 roll, pitch를 구하면, 제 2 전기 통신 기기(20)의 제 1 전기 통신 기기(10)로부터의 상대적인 위치와 각도를 모두 측정할 수 있게 되며, 이를 통해 자유도 5인 제 2 전기 통신 기기(20)의 위치와 각도를 제 2 전기 통신 기기(20)가 인지하여 제 1 전기 통신 기기(10)로 wifi 통신 수단 등으로 전달하여 포인팅 장치 입력값으로 사용할 수 있다. 5자유도의 공간상에서 자유롭게 움직이는 강체에 관련한 입력이 가능하므로, 마우스, 조이스틱, 3차원 마우스, 스포츠 게임을 위한 게임 콘트롤러 등 다양한 포인팅 장치의 구현이 가능하다. The three constraints related to the three degrees of freedom, x, y, and z, can be used to find x, y, and z through nonlinear optimization or numerical methods of solving equations. When x, y, and z are obtained and roll and pitch are obtained from the sensors 26a to 26c of the second telecommunication device 20, the relative from the first telecommunication device 10 of the second telecommunication device 20 is obtained. Both the position and the angle can be measured, through which the second telecommunication device 20 recognizes the position and the angle of the second telecommunication device 20 having 5 degrees of freedom. It can be used as a pointing device input by passing it to the wifi communication means. Since input related to a rigid body moving freely in a space of five degrees of freedom is possible, various pointing devices such as a mouse, a joystick, a three-dimensional mouse, and a game controller for a sports game can be implemented.
제 1 및 제2 전기 통신 기기(10, 20)는 wifi, wifi direct, Bluetooth 등 데이터를 주고받는 네트워크로 연결되어 소리의 시점이나 방향각에 관한 정보를 공유하여 전술한 위치와 각도를 구하고 포인팅 장치 입력으로 변환하는 알고리즘을 수행할 수 있으며, 이러한 알고리즘은 제1 및 제2 전기 통신 기기(10, 20) 또는 제 3의 위치에서 분산되어 수행 될 수 있다. The first and second telecommunication devices 10 and 20 are connected to a network for transmitting and receiving data such as wifi, wifi direct, and Bluetooth, and share information about a viewpoint or direction angle of a sound to obtain the above-described position and angle, and a pointing device. Algorithms for converting to input may be performed, and such algorithms may be distributed and performed in the first and second telecommunication devices 10 and 20 or in third locations.
대부분의 현존하는 PC는 스테레오 스피커 출력을 내장하며, 현존 스마트폰은 가속도계, 자기장 센서, 콤파스, 자이로스코프를 내장하고 있고, 잡음 제거(noise cancelling) 또는 통화/비디오 촬영 전환용으로 2개 이상의 마이크를 내장하므로 도 2는 하드웨어의 추가 없이 범용의 컴퓨터와 스마트폰으로 구축될 수 있다. 또한 제 2 전기 통신 기기(20)는 하나가 아닌 여러 대가 될 수 있으며, 소리는 거리에 따라 크게 감쇠되지 않으므로 넓은 공간에서의 측정이 가능하여 여러 사용자가 대형 스크린과 고출력 스피커를 구비한 제 1 전기 통신 기기(10)를 공유하여 게임을 즐기는 형태 등 다양하게 구현될 수도 있다.Most existing PCs have built-in stereo speaker output, while existing smartphones have accelerometers, magnetic field sensors, compasses, gyroscopes, and two or more microphones for noise canceling or call / video recording switching. Since built-in, Figure 2 can be built as a general-purpose computer and smartphone without the addition of hardware. In addition, the second telecommunication device 20 may be several instead of one, and since the sound is not greatly attenuated according to the distance, the second telecommunication device 20 may be measured in a large space so that a plurality of users may have a first electric device having a large screen and a high output speaker. The communication device 10 may be shared in various ways such as playing a game.
또한, 제어부(30)는 입력부(21)로부터의 입력도 함께 제1 전기 통신 기기(10)로 전송하고, 제어부(19)를 수신된 입력도 소프프웨어의 입력값으로 이용한다. 예를 들면, 본 발명은 사용자의 손에 쥐어진 제2 전기 통신 기기(20)에 이미 구비된 터치스크린(입력부(21))의 다양한 위치를 사용자가 손가락으로 누르고 끄는 제스쳐를 동시에 입력 받아, 소프트웨어 설치만으로 더욱 편하고 직관적인 입력을 가능하게 한다. 예를 들어 응용 소프트웨어의 상태에 따라 제2 전기 통신 기기(20)의 표시부(22)에 표시되는 버튼 등 조작 장치의 형상이나 종류를 바꾸는 것도 가능하다. In addition, the control unit 30 also transmits the input from the input unit 21 to the first telecommunication device 10, and uses the control unit 19 as the input value of the software. For example, the present invention simultaneously receives a gesture of pressing and dragging a user's finger with various positions of a touch screen (input unit 21) that is already provided in the second telecommunication device 20 held in a user's hand. The installation allows for more convenient and intuitive input. For example, it is also possible to change the shape and type of the operating device such as a button displayed on the display unit 22 of the second telecommunication device 20 in accordance with the state of the application software.
제 1 전기 통신 기기(10)에서 수행되는 게임의 내용에 따라 제 1 전기 통신 기기(10)의 제어부(19)가 진동 명령을 제 2 전기 통신 기기(20)로 통신부(16)를 통하여 전송하고, 제어부(30)는 통신부(28)를 통하여 진동 명령을 수신하여, 진동부(27)를 구동시켜 진동 동작이 수행되도록 하여, force feedback을 사용자에게 줄 수 있다. 이러한 진동 명령 이외에도, 제 2 전기 통신 기기(20)에 구비된 스피커(24)를 구동하거나 표시부(22)의 밝기나 색상을 바꾸는 등의 명령이 가능하여, 제 2 전기 통신 기기(20)를 통해 제 1 전기 통신 기기(10)에서 수행되는 소프트웨어의 상태에 맞는 다양한 feedback을 사용자에게 제공할 수 있다.The control unit 19 of the first telecommunication device 10 transmits a vibration command to the second telecommunication device 20 through the communication unit 16 according to the content of the game played by the first telecommunication device 10. The controller 30 may receive the vibration command through the communication unit 28, drive the vibration unit 27 to perform the vibration operation, and give force feedback to the user. In addition to the vibration command, a command such as driving the speaker 24 included in the second telecommunication device 20 or changing the brightness or color of the display unit 22 may be performed. Various feedbacks may be provided to a user according to a state of software performed in the first telecommunication device 10.
제1 전기 통신 기기(10)는 제2 전기 통신 기기(20)를 사용자 입력 장치로서 인식하고 상술된 제어 과정을 수행하는 소프트웨어가 설치되며, 제어부(19)는 이 소프트웨어를 구동시켜 동작시킨다. 제2 전기 통신 기기(20)는 사용자 입력 장치로서 사용되며, 위치 정보를 제1 전기 통신 기기(10)로 전송하는 등의 상술된 제어 과정을 수행하는 소프트웨어가 설치되며, 제어부(30)는 이 소프트웨어를 구동시켜 동작한다. The first telecommunication device 10 is installed with software that recognizes the second telecommunication device 20 as a user input device and performs the above-described control process, and the control unit 19 operates the software to operate it. The second telecommunication device 20 is used as a user input device, and software for performing the above-described control process, such as transmitting location information to the first telecommunication device 10, is installed, and the control unit 30 provides It works by running software.
상술된 도 2, 4 및 6에서는 제1 전기 통신 기기(10)가 고정된 상태이고 제2 전기 통신 기기(20)가 이동하는 상태인 것으로 예시되고 있으나, 제1 전기 통신 기기(10)가 이동하는 상태이고 제2 전기 통신 기기(20)가 고정된 상태인 경우도 가능하다. 또한, 적어도 두 개의 전기 통신 기기 및 전기 통신 기기가 각각 이동하는 상태인 경우도 가능하다. 2, 4, and 6 described above, the first telecommunication device 10 is fixed and the second telecommunication device 20 is moved, but the first telecommunication device 10 is moved. It is also possible when the second telecommunication device 20 is in a fixed state. It is also possible that at least two telecommunication devices and telecommunication devices are in a moving state, respectively.
또한, 제2 전기 통신 기기(20)의 제어부(30)는 위치 정보를 산정하고, 산정된 위치 정보를 이용하여, 현재 동작 중인 소프트웨어의 상태 및 제어를 위한 입력값으로 제1 전기 통신 기기(10)와 동일하게 사용할 수도 있다. 특히, 이 경우, 제1 전기 통신 기기(10)는 도 1에 도시된 복잡한 구성을 대신하여, 단순하게 적어도 하나 이상의 음원 데이터에 따른 소리만을 출력하는 장치만으로도 구성될 수도 있다. 또한, 제어부(30)는 위치 정보에 따른 소프트웨어의 상태 및 제어 변경 사항을 제1 전기 통신 기기(10)로 전송하고, 제어부(19)는 수신된 제2 전기 통신 기기(20)의 소프트웨어의 상태 및 제어 변경 사항을 현재 동작 중인 소프트웨어의 상태 및 제어를 위한 입력값으로 사용할 수도 있다.In addition, the control unit 30 of the second telecommunication device 20 calculates the location information and uses the calculated location information as an input value for the state and control of the currently operating software. You can also use the same as). In particular, in this case, the first telecommunication device 10 may be configured by only a device for simply outputting sound according to at least one or more sound source data instead of the complicated configuration shown in FIG. 1. In addition, the control unit 30 transmits the state and control changes of the software according to the location information to the first telecommunication device 10, and the control unit 19 receives the state of the software of the received second telecommunication device 20. And control changes can also be used as inputs to the status and control of the software currently running.
본 발명에서 논의된 위치 추적 시스템이 수행하는 소리 지연을 이용한 위치 추적 프로세스 또는 위치 정보를 생성하는 프로세스 또는 위치 정보를 수신하여 수신된 위치 정보를 소프트웨어의 입력값으로 사용하는 프로세스, 전기 통신 기기들 간의 시계를 동기화시키는 프로세스 등은 소프트웨어(프로그램) 파일로 저장매체에 저장될 수 있으며, 이 프로그램 파일은 네트워크를 통한 전송에 의해 전기 통신 기기 간에 전송되어, 다양한 전기 통신 기기에 설치되고 동일한 동작이 수행된다. 즉, 위치 추적 시스템에서 구현되는 프로세스들은 컴퓨터 판독 가능한 저장 매체에 저장되는 프로그램으로 제공될 수 있다.A location tracking process using a sound delay performed by the location tracking system discussed in the present invention, a process of generating location information, or a process of receiving location information and using the received location information as an input value of software, between telecommunication devices. The process of synchronizing a clock may be stored in a storage medium as a software (program) file, which is transferred between telecommunication devices by transmission over a network, installed in various telecommunication devices, and the same operation is performed. . That is, the processes implemented in the location tracking system may be provided as a program stored in a computer readable storage medium.
또한, 제1 내지 제3 실시예는 서로 조합되어 수행될 수 있다.In addition, the first to third embodiments may be performed in combination with each other.
이상과 첨부된 도면을 참조하여 본 발명의 실시예를 설명하였지만, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명이 그 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 실시될 수 있다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야 한다.Although embodiments of the present invention have been described above with reference to the accompanying drawings, those skilled in the art to which the present invention pertains may implement the present invention in other specific forms without changing the technical spirit or essential features thereof. You will understand that. Therefore, it should be understood that the embodiments described above are exemplary in all respects and not restrictive.