KR20150089633A - APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF - Google Patents

APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF Download PDF

Info

Publication number
KR20150089633A
KR20150089633A KR1020140010497A KR20140010497A KR20150089633A KR 20150089633 A KR20150089633 A KR 20150089633A KR 1020140010497 A KR1020140010497 A KR 1020140010497A KR 20140010497 A KR20140010497 A KR 20140010497A KR 20150089633 A KR20150089633 A KR 20150089633A
Authority
KR
South Korea
Prior art keywords
data
rawpos
stablepos
point
positioning
Prior art date
Application number
KR1020140010497A
Other languages
Korean (ko)
Other versions
KR102174530B1 (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 KR1020140010497A priority Critical patent/KR102174530B1/en
Publication of KR20150089633A publication Critical patent/KR20150089633A/en
Application granted granted Critical
Publication of KR102174530B1 publication Critical patent/KR102174530B1/en

Links

Images

Classifications

    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0252Radio frequency fingerprinting
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S11/00Systems for determining distance or velocity not using reflection or reradiation
    • G01S11/02Systems for determining distance or velocity not using reflection or reradiation using radio waves
    • G01S11/06Systems for determining distance or velocity not using reflection or reradiation using radio waves using intensity measurements
    • GPHYSICS
    • G01MEASURING; TESTING
    • G01SRADIO DIRECTION-FINDING; RADIO NAVIGATION; DETERMINING DISTANCE OR VELOCITY BY USE OF RADIO WAVES; LOCATING OR PRESENCE-DETECTING BY USE OF THE REFLECTION OR RERADIATION OF RADIO WAVES; ANALOGOUS ARRANGEMENTS USING OTHER WAVES
    • G01S5/00Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations
    • G01S5/02Position-fixing by co-ordinating two or more direction or position line determinations; Position-fixing by co-ordinating two or more distance determinations using radio waves
    • G01S5/0205Details
    • G01S5/021Calibration, monitoring or correction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W64/00Locating users or terminals or network equipment for network management purposes, e.g. mobility management

Abstract

The present invention relates to an apparatus for indoor positioning based on Wi-Fi fingerprinting and a method thereof. The apparatus of the present invention comprises: an indoor positioning module for receiving Wi-Fi signals at the current position in real time and determining the raw position (RawPos) by referring to the data in a pre-created database (DB); a stabilizing module for receiving and accumulating an input of the determined RawPos, calculating the average coordinate of the coordinates of the RawPos of a preset number, determining the stable position (StablePos), determining that a failure position has occurred when the distance from a preset standard position to the RawPos exceeds a preset distance, calculating the average coordinate for the RawPos coordinate of the preset number coming under a failure position, and determining the StablePos; and a final position determining module for determining the StablePos calculated when the failure position does not occur or the StablePos calculated when the failure position occurs continuously as the final position.

Description

와이파이 핑거프린트 기반 실내측위 장치 및 방법{APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF}FIELD OF THE INVENTION [0001] The present invention relates to a WiFi fingerprinting indoor positioning device and method,

본 발명은 와이파이 핑거프린트 기반 실내측위 장치 및 방법에 관한 것으로, 보다 상세하게는 와이파이 핑거프린트를 기반으로 DB(Data Base) 정보를 빠르게 선택하여 측위를 위한 연산량을 줄이고, 또한 와이파이 신호만을 단독으로 사용하는 경우의 측위 결과에 대한 안정성 및 정확성을 향상시키는 와이파이 핑거프린트 기반 실내측위 장치 및 방법에 관한 것이다.
The present invention relates to a Wi-Fi fingerprint-based indoor positioning apparatus and method, and more particularly, to a Wi-Fi fingerprint-based indoor positioning apparatus and method for rapidly selecting DB (Data Base) information based on a Wi-Fi fingerprint to reduce a calculation amount for positioning, And more particularly to a WiFi fingerprint-based indoor positioning apparatus and method for improving the stability and accuracy of a positioning result in the case of performing a positioning operation.

최근 대부분의 스마트폰에 GPS(Global Positioning System)가 탑재되기 시작하면서 실생활의 다양한 영역에 위치기반서비스가 활용되기 시작했다. 특히 스마트폰의 각종 앱(APP)에서 GPS를 자유롭게 이용할 수 있게 되면서 위치 정보와 다양한 서비스의 결합이 이루어지게 되었다.Recently, GPS (Global Positioning System) has been installed in most smartphones, and location-based services have begun to be used in various areas of real life. In particular, as GPS has been freely available in various apps (APP) of smart phones, location information and various services have been combined.

최근에는 원하는 목적지까지의 최적 경로를 알려주는 길안내(내비게이션) 서비스와 함께 나의 현재 위치 정보를 기반으로 주변의 맛집을 추천해주거나, 주변의 부동산 정보, 주유소 가격 정보 등을 제공해 주는 위치 기반 검색 서비스가 활발히 이용되고 있다.In recent years, a location-based search service that provides recommendation of nearby restaurants based on my current location information, providing real estate information, gas station price information, etc., along with a navigation service (navigation service) Is being actively used.

그러나 GPS 위성에서 발생된 신호는 2만km 가 넘는 대기를 통과하면서 매우 약해지기 때문에 건물 내부까지 침투하는 것은 불가능하다. 따라서 실내에서는 길안내(내비게이션) 서비스와 같은 위치기반 서비스를 이용할 수 없는 상황이다. 왜냐하면 대부분의 위치기반 서비스가 GPS에 의존적인 상황이기 때문이다.However, signals generated by GPS satellites are very weak as they pass through more than 20,000 km of air, making it impossible to penetrate the interior of the building. Therefore, it is impossible to use location-based services such as navigation service in the room. This is because most location-based services rely on GPS.

그런데 최근 GPS를 대체할 수 있는 기술로서 와이파이(WiFi) 신호를 사용한 실내 위치 측정 기술이 개발되어 완성도를 높여가고 있고, 실내 지도를 정확하면서도 낮은 비용으로 제작할 수 있는 기술이 함께 개발되면서 실내 위치기반 서비스가 점차 현실화되고 있다.Recently, indoor positioning technology using WiFi signal has been developed as a technology for replacing GPS, and the technology for improving indoor map accuracy and low cost has been developed, Is gradually becoming a reality.

참고로 초기의 와이파이(WiFi) 신호를 사용한 실내 위치 측정 기술은 수신된 WiFi 신호가 최초 대비 얼마나 감쇄되었는지를 토대로 각각의 WiFi 액세스포인트(AP)까지 거리를 추정하고, 이미 알고 있는 각 WiFi 액세스포인트의 위치와 산출된 거리를 이용하여 자신의 위치를 계산하는 방식이었다. 그러나 상기 방식은 실내 공간의 특성상 WiFi 신호가 거리에 따라 일정하게 감소되지 않고, 벽이나 각종 물건에 부딪치며 불규칙하게 감소되기 때문에 정확성이 떨어지는 문제점이 있었다.For reference, the indoor positioning technique using the initial WiFi signal estimates the distance to each WiFi access point (AP) based on how much the received WiFi signal is initially attenuated, and estimates the distance of each WiFi access point And calculating the position of the user using the position and the calculated distance. However, this method has a problem in that the WiFi signal is not reduced uniformly according to the characteristics of the indoor space, and is irregularly reduced due to a collision with a wall or various objects.

상기와 같은 문제점을 보완하기 위해서 핑거프린트 방식이 개발되었다.In order to solve the above problems, a fingerprint method has been developed.

상기 핑거프린트 방식은 실내 공간을 가상의 격자로 잘게 쪼개고, 해당 격자마다 각 WiFi 신호의 세기를 측정하여 지문과 같은 형태로 데이터베이스화 해 놓은 후, 자신이 측정한 WiFi 신호의 세기를 상기 데이터베이스와 비교하여 위치를 알아낼 수 있도록 하는 방식으로써 종래의 방식보다 더 정확성을 향상시킨 방식이다.The fingerprint method divides the indoor space into virtual lattices, measures the intensity of each WiFi signal for each lattice, forms a database in the form of a fingerprint, and then compares the strength of the WiFi signal measured by the WiFi signal with the database So that the accuracy can be improved more than the conventional method.

그러나 상기 종래의 핑거프린트 방식을 이용한 실내측위 방법은 핑거프린트 DB(Data Base)에서 실시간 수신된 WiFi 신호와 가장 오차가 적은 지점을 측위 결과로 선택하는 방식을 적용하고 있다. 이런 경우 현재 위치를 측위하기 위해서는 상기 DB의 모든 지점과 비교해야 하고, 이로 인하여 연산량의 증가와 측위 계산 시간이 증가하게 되는 문제점이 있다. 또한 WiFi 신호세기를 기반으로 하는 핑거프린트 기반 측위는 환경 변화에 따른 신호세기의 변화가 심하여 측위 결과가 불안정하고 정확성이 떨어지는 문제점이 있다.However, in the indoor positioning method using the conventional fingerprint method, a WiFi signal received in real time in a fingerprint DB (Data Base) and a method of selecting a point with the smallest error as a positioning result are applied. In this case, in order to determine the current position, it is necessary to compare with all the points of the DB, which increases the calculation amount and the positioning calculation time. In addition, fingerprint - based positioning based on WiFi signal strength is problematic in that the positioning result is unstable and accuracy is poor due to a significant change in signal strength due to environmental changes.

본 발명의 배경기술은 대한민국 등록특허 10-1084478호(2011.11.10.등록, 지피에스 이동 단말기의 연속 측위 기능을 이용한 음영지역에서의 네트워크 기반 위치 정보 보정 방법 및 그 시스템)에 개시되어 있다.
BACKGROUND ART [0002] The background art of the present invention is disclosed in Korean Patent Registration No. 10-1084478 (registered on Nov. 10, 2011, a method and system for correcting network-based location information in a shaded area using a continuous positioning function of a GPS mobile terminal).

본 발명은 상기와 같은 문제점을 해결하기 위해 창작된 것으로서, 와이파이 핑거프린트를 기반으로 DB(Data Base) 정보를 빠르게 선택하여 측위를 위한 연산량을 감소시킬 수 있도록 하는 와이파이 핑거프린트 기반 실내측위 장치 및 방법을 제공하는데 그 목적이 있다.SUMMARY OF THE INVENTION The present invention has been made in order to solve the above problems, and it is an object of the present invention to provide a WiFi fingerprint-based indoor positioning device and method capable of rapidly selecting DB (Data Base) information based on Wi- The purpose is to provide.

또한 본 발명은 다른 측위 센서들을 사용하지 않고 와이파이 신호만을 단독으로 사용하는 경우의 측위 결과에 대한 안정성 및 정확성을 향상시킬 수 있도록 하는 와이파이 핑거프린트 기반 실내측위 장치 및 방법을 제공하는데 그 목적이 있다.
Another object of the present invention is to provide a WiFi fingerprint-based indoor positioning apparatus and method which can improve the stability and accuracy of a positioning result when only a Wi-Fi signal is used without using other positioning sensors.

본 발명의 일 측면에 따른 와이파이 핑거프린트 기반 실내측위 장치는, 현재 위치에서 WiFi 신호들을 실시간으로 수신하고, 미리 생성되어 있는 DB(Data Base)의 데이터를 참조하여 초기위치(RawPos)를 결정하는 실내측위 모듈; 상기 결정된 초기위치(RawPos)를 입력으로 받아 누적하고, 기설정된 개수의 초기위치(RawPos) 좌표에 대한 평균 좌표를 계산하여 안정위치(StablePos)를 결정하며, 미리 설정된 기준위치에서 상기 초기위치(RawPos)까지의 거리가 미리 설정된 거리를 초과하는 경우 실패위치가 발생한 것으로 판단하고, 실패위치에 해당하는 기설정된 개수의 초기위치(RawPos) 좌표에 대한 평균 좌표를 계산하여 안정위치(StablePos)를 결정하는 안정화 모듈; 및 상기 실패위치가 발생하지 않았을 경우에 계산된 안정위치(StablePos), 또는 상기 실패위치가 연속 발생할 경우에 계산된 안정위치(StablePos)를 최종위치로 결정하는 최종위치 결정 모듈;을 포함하는 것을 특징으로 한다.A WiFi fingerprint-based indoor positioning apparatus according to an aspect of the present invention includes a WiFi fingerprint-based indoor positioning device for receiving WiFi signals at a current location in real time and for determining an initial position (RawPos) by referring to data of a DB Positioning module; (RawPos) as input, determines a stable position (StablePos) by calculating an average coordinate of a predetermined number of initial positions (RawPos) coordinates, and determines the initial position (RawPos) ) Is determined to be a failure position, and determines the stable position (StablePos) by calculating an average coordinate of a predetermined number of initial positions (RawPos) coordinates corresponding to the failure position Stabilization module; And a final positioning module that determines a stable position (StablePos) calculated when the failure position does not occur, or a stable position (StablePos) calculated when the failure position occurs consecutively as a final position. .

본 발명에 있어서, 상기 DB(Data Base)는, 해쉬맵 DB(HashMapDB)인 것을 특징으로 한다.In the present invention, the DB (Data Base) is a hash map DB (HashMapDB).

본 발명에 있어서, 상기 해쉬맵 DB(Data Base)는, 측위 대상 지역의 각 지점에서 실제로 수신되는 n개의 AP와 해당 AP의 신호세기(RSSI : Received Signal Strength Indicator)를 수집 기록하여 스캔데이터(ScanData)를 생성하고, 상기 수집 기록된 모든 스캔데이터(ScanData)를 사용하여 로DB(RawDB)를 생성하고, 상기 로DB(RawDB)의 각 지점에서 신호세기(RSSI)가 가장 강한 AP를 선정하여 키(Key)로 설정하고, 해당 지점의 스캔데이터(ScanData)를 해쉬맵(HashMap) 값(value)으로 설정하여 생성하는 것을 특징으로 한다.In the present invention, the hash map DB (Data Base) collects and records n APs actually received at each point in the positioning target area and a signal strength (RSSI: Received Signal Strength Indicator) of the corresponding AP, ), Generates a DB (RawDB) using all of the collected scan data (ScanData), selects an AP having the strongest signal strength (RSSI) at each point of the DB (RawDB) (ScanData) is set to a hash map (HashMap) value (value).

본 발명에 있어서, 상기 실내측위 모듈은, 현재 위치에서 수신된 WiFi 신호들 중 가장 신호세기가 강한 AP(Access Point)의 신호세기를 기준으로 기설정된 일정 신호범위 내의 AP들을 키(Key)로 선정하고, 현재 지점에서 상기 선정된 Key를 사용하여 상기 DB에서 비교 대상을 선정하고, 상기 DB에서 찾은 비교 대상과 현재 지점의 와이파이 스캔데이터(ScanData)의 각각에 대한 AP의 신호세기 오차(Error)를 계산하고, 상기 신호세기 오차가 가장 적은 지점을 초기위치(RawPos)로 결정하는 것을 특징으로 한다.In the present invention, the indoor positioning module selects APs within a predetermined signal range based on the signal strength of an AP (Access Point) having the strongest signal strength among the WiFi signals received at the current location And selects a comparison object in the DB using the selected key at the current point, and calculates the signal intensity error (Error) of the AP for each of the WiFi scan data (ScanData) And a point at which the signal intensity error is the smallest is determined as an initial position (RawPos).

본 발명에 있어서, 상기 일정 신호범위는, Max RSSI(Received Signal Strength Indicator) 에서 (Max RSSI-10) 이내인 것을 특징으로 한다.In the present invention, the predetermined signal range is within Max RSSI-10 in the Max RSSI (Received Signal Strength Indicator).

본 발명에 있어서, 상기 신호세기의 오차는, 아래의 수학식 1에 의해 계산되는 것을 특징으로 한다.In the present invention, the error of the signal intensity is calculated by the following equation (1).

(수학식 1)(1)

Figure pat00001
Figure pat00001

여기서

Figure pat00002
는 DB의 신호세기이고,
Figure pat00003
는 스캔데이터의 신호세기.
here
Figure pat00002
Is the signal strength of the DB,
Figure pat00003
Is the signal strength of the scan data.

본 발명의 일 측면에 따른 와이파이 핑거프린트 기반 실내측위 방법은, 실내측위 모듈이 현재 위치에서 WiFi 신호들을 실시간으로 수신하고 미리 생성되어 있는 DB(Data Base)의 데이터를 참조하여 초기위치(RawPos)를 결정하는 단계; 안정화 모듈이 기설정된 개수의 누적된 초기위치(RawPos)들에 대한 평균 지점을 계산하여 안정위치(StablePos)를 결정하는 단계; 및 최종위치 결정 모듈이 상기 안정위치를 결정하는 단계에서의 실패위치의 연속 발생 여부를 반영하여 계산된 안정위치(StablePos)를 최종위치로 결정하는 단계;를 포함하는 것을 특징으로 한다.A WiFi fingerprint-based indoor positioning method according to an aspect of the present invention is characterized in that the indoor positioning module receives WiFi signals at a current location in real time and refers to data in a DB (Data Base) Determining; The stabilization module calculating an average point for a predetermined number of accumulated initial positions (RawPos) to determine a stable position (StablePos); And determining a stable position (StablePos) calculated as a final position by reflecting whether a failure position is continuously generated in the step of determining the stable position by the final positioning module.

본 발명에 있어서, 상기 초기위치를 결정하는 단계는, 실내측위 모듈이 현재 위치에서 와이파이 스캔을 수행하여 스캔데이터(ScanData)를 수집하는 단계; 상기 스캔데이터(ScanData)에서 가장 강한 신호세기(RSSI)를 갖는 AP(Access Point)를 기준으로 일정 범위 안의 AP들을 Key로 선정하는 단계; 상기 Key로 선정된 AP들을 이용하여 미리 생성된 DB(HashMapDB)에서 후보 지점들의 데이터를 선택하는 단계; 상기 DB(HashMapDB)에서 선택된 후보 지점들의 AP 신호와 상기 스캔된 AP 신호 간의 오차를 계산하는 단계; 및 상기 후보 지점들의 데이터 중 상기 계산된 오차가 가장 적은 지점을 선택하여 초기위치(RawPos)로 결정하는 단계;를 포함하는 것을 특징으로 한다.In the present invention, the step of determining the initial position may include a step of the indoor positioning module collecting the scan data (ScanData) by performing a Wi-Fi scan at the current location; Selecting APs within a predetermined range based on an AP (Access Point) having the strongest signal strength (RSSI) in the scan data (ScanData); Selecting data of candidate points from a previously generated DB (HashMapDB) using APs selected by the Key; Calculating an error between the AP signal of the candidate points selected in the DB (HashMapDB) and the scanned AP signal; And selecting a point at which the calculated error is the smallest among the data of the candidate points to be the initial position (RawPos).

본 발명에 있어서, 상기 후보 지점은, 현재 위치로 선정될 가능성이 있는 데이터가 포함된 지점으로서, 현재 위치에서 선정된 Key와 상기 DB에서 동일한 Key가 설정된 지점인 것을 특징으로 한다.In the present invention, the candidate point is a point including data that is likely to be selected as a current position, and is a point selected at the current position and a point at which the same key is set in the DB.

본 발명에 있어서, 상기 안정위치(StablePos)를 결정하는 단계는, 상기 안정화 모듈이 상기 실내측위 모듈로부터 현재 위치에 대한 측위데이터를 수신하는 단계; 상기 측위데이터에 근거하여 산출된 현재 위치에서 미리 설정된 기준 위치까지의 거리를 계산하는 단계; 및 상기 계산된 거리가 미리 설정된 거리 이하이면 현재 위치를 임시위치 배열에 누적하고, 기설정된 개수의 상기 임시위치 배열에 누적된 지점들의 평균 지점을 계산하여 안정위치(StablePos)로 설정하는 단계;를 포함하는 것을 특징으로 한다.In the present invention, the step of determining the stable position (StablePos) includes the steps of: the positioning module receiving positioning data for a current position from the indoor positioning module; Calculating a distance from a current position calculated based on the positioning data to a predetermined reference position; And accumulating the current position in the temporary positional array when the calculated distance is less than a predetermined distance and calculating an average point of points accumulated in the predetermined number of temporary positional arrangements and setting it as the stable position (StablePos) .

본 발명에 있어서, 상기 안정위치(StablePos)를 결정하는 단계는, 상기 계산된 거리가 미리 설정된 거리를 초과하면 현재 위치를 실패위치 배열에 누적하고, 기설정된 개수의 상기 실패위치 배열에 연속으로 누적된 지점들의 평균 지점을 계산하여 안정위치(StablePos)로 설정하는 단계;를 포함하는 것을 특징으로 한다.In the present invention, the step of determining the stable position (StablePos) may include accumulating the current position in the failure position array when the calculated distance exceeds a predetermined distance, (StablePos) by calculating an average point of the points that have not been detected.

본 발명에 있어서, 상기 기준 위치와 관련하여, 상기 현재 위치에 대한 측위데이터가 첫 번째 측위데이터인 경우 현재 위치가 상기 기준 위치가 되고, 이전에 이미 측정된 측위데이터들이 있는 경우 그 측위데이터들을 이용하여 계산된 최종위치 또는 안정위치가 상기 기준 위치가 되는 것을 특징으로 한다.
In the present invention, regarding the reference position, if the current position is the first positioning data, the current position is the reference position, and if the previously measured positioning data exists, the positioning data is used And the calculated final position or stable position becomes the reference position.

본 발명은 와이파이 핑거프린트를 기반으로 DB(Data Base) 정보를 빠르게 선택하여 측위를 위한 연산량을 감소시킬 수 있도록 하며, 또한 다른 측위 센서들을 사용하지 않고 와이파이 신호만을 단독으로 사용하는 경우의 측위 결과에 대한 안정성 및 정확성을 향상시킬 수 있도록 한다.
According to the present invention, it is possible to quickly select DB (Data Base) information based on a Wi-Fi fingerprint to reduce the amount of calculation for positioning, and also to provide a positioning result when using only a Wi-Fi signal without using other positioning sensors So as to improve the stability and accuracy.

도 1은 본 발명의 일 실시예에 따른 와이파이 핑거프린트 기반 실내측위를 위한 데이터베이스 생성 방법을 설명하기 위한 예시도.
도 2는 본 발명의 일 실시예에 따른 와이파이 핑거프린트 기반 실내측위 장치의 개략적인 구성을 보인 예시도.
도 3은 상기 도 2에 있어서, 실내측위 모듈의 동작을 설명하기 위한 예시도.
도 4는 본 발명의 일 실시예에 따른 와이파이 핑거프린트 기반 실내측위 방법을 설명하기 위한 흐름도.
도 5는 상기 도 4에 있어서, 안정화 모듈의 동작을 더 구체적으로 설명하기 위한 흐름도.
도 6은 본 발명의 일 실시예에 따른 안정화 모듈을 적용한 경우와 안정화 모듈을 적용하지 않고 실내측위를 수행한 경우의 측위 결과를 비교하여 보인 예시도.
BRIEF DESCRIPTION OF THE DRAWINGS FIG. 1 is an exemplary diagram for explaining a database creation method for indoor positioning based on Wi-Fi fingerprint according to an embodiment of the present invention; FIG.
BACKGROUND OF THE INVENTION 1. Field of the Invention [0001] The present invention relates to an indoor positioning device based on a WiFi fingerprint.
Fig. 3 is an exemplary diagram for explaining the operation of the indoor positioning module in Fig. 2; Fig.
4 is a flowchart illustrating a Wi-Fi fingerprint-based indoor positioning method according to an embodiment of the present invention.
5 is a flowchart for explaining the operation of the stabilization module in more detail in FIG.
FIG. 6 is a diagram illustrating an example of comparison between positioning results obtained when a stabilization module according to an embodiment of the present invention is applied and when indoor positioning is performed without applying a stabilization module. FIG.

이하, 첨부된 도면을 참조하여 본 발명에 따른 와이파이 핑거프린트 기반 실내측위 장치 및 방법의 일 실시예를 설명한다. Hereinafter, an embodiment of a WiFi fingerprint-based indoor positioning apparatus and method according to the present invention will be described with reference to the accompanying drawings.

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

본 발명의 일 실시예에 따른 WiFi 핑거프린트 기반 실내측위는 DB(Data Base) 생성단계(Off-line phase)와 측위단계(Real-time phase)를 포함한다.The WiFi fingerprint-based indoor positioning according to an embodiment of the present invention includes a DB (Data Base) generation step (Off-line phase) and a positioning phase (Real-time phase).

그 중 상기 측위단계는 본 발명의 일 실시예에 따른 WiFi 핑거프린트 기반 실내측위 장치에서 실시간으로 수행한다. The positioning step is performed in real time in a WiFi fingerprint-based indoor positioning device according to an embodiment of the present invention.

그리고 상기 DB 생성단계는 지도 제공자(또는 서비스 제공자)에서 수행한다. The DB creation step is performed by a map provider (or a service provider).

본 발명의 일 실시예에서는 상기 WiFi 핑거프린트 기반 실내측위를 위한 DB(예 : RawDB, HashMapDB)가 이미 생성 완료된 것으로 가정한다. In one embodiment of the present invention, it is assumed that a DB (e.g., RawDB, HashMapDB) for the WiFi fingerprint-based indoor positioning is already generated.

여기서 상기 RawDB(이하, 제1 DB)(110)는 핑거프린트 기반 실내측위를 위하여 각각의 위치에서 수집한 WiFi AP(Access Point) 신호세기들을 취합한 DB를 의미하고, 상기 HashMapDB(이하, 제2 DB)(120)는 각 지점의 가장 강한 신호세기를 가지는 AP ID(예 : AP1, AP2, AP3 등)를 키(Key) 값으로 설정하여 생성한 DB를 의미한다.Here, the RawDB (hereafter referred to as a first DB) 110 is a DB that collects WiFi AP signal strengths collected at respective locations for fingerprint-based indoor positioning, and the HashMapDB DB 120 is a DB generated by setting an AP ID (e.g., AP1, AP2, AP3, etc.) having the strongest signal strength of each point as a key value.

이하 상기 제1 DB(예 : RawDB)(110)와 제2 DB(예 : HashMapDB)(120)의 생성단계에 대해서 설명한다.Hereinafter, the steps of generating the first DB (e.g., RawDB) 110 and the second DB (e.g., HashMap DB) 120 will be described.

상기 WiFi 핑거프린트 기반 실내측위를 위한 DB 생성단계에서는, 도 1에 도시된 바와 같이, 측위 대상 지역의 측위 대상 위치(또는 각 지점)에서 실제로 수신되는 n개의 AP(예 : AP1, AP2, AP3, AP4, AP5, AP6 등)와 해당 AP의 신호세기(RSSI : Received Signal Strength Indicator)를 수집 기록하여 스캔데이터(ScanData)를 생성하고, 상기 수집 기록된 모든 스캔데이터(ScanData)를 사용하여 제1 DB(예 : RawDB)(110)를 생성한다.In the DB generation step for the WiFi fingerprint-based indoor positioning, n APs (e.g., AP1, AP2, AP3, and AP3) actually received at a positioning target position (or each point) AP4, AP5, AP6, and the like) and the signal strength (RSSI: Received Signal Strength Indicator) of the corresponding AP to generate scan data (ScanData) (E.g., RawDB) 110 is generated.

그리고 상기 제1 DB(예 : RawDB)의 각 지점(예 : A지점, B지점 등)에서 신호세기(RSSI)가 가장 강한 AP를 선정한 후, 상기 선정된 AP를 Key로 설정하고 해당 지점의 스캔데이터(ScanData)를 해쉬맵(HashMap)의 값(value)으로 설정하는 과정을 수행하여 상기 제2 DB(예 : HashMapDB)(120)를 생성한다.After selecting an AP having the strongest signal strength (RSSI) at each point (e.g., A point and B point) of the first DB (e.g., RawDB), the AP is set to Key, The second DB (e.g., HashMap DB) 120 is generated by setting the data (ScanData) to a value of a hash map (HashMap).

참고로 본 발명의 실시예에 기재된 "지점"과 "위치"는 그 의미상 큰 차이는 없지만, 설명의 편의상 DB에 이미 저장된 위치를 나타낼 경우에는 "지점"으로 기재하고, 본 발명의 실시예에 따른 실내측위 장치를 이용해 실시간으로 측위되는 위치를 나타낼 경우에는 "위치"로 기재한다. 다만 경우에 따라서 상기 구분을 따르지 않고 혼용하여 기재할 수도 있다.For the sake of convenience, "points" and "positions" described in the embodiments of the present invention are described as "points" in the case where positions already stored in the DB are shown for convenience of explanation, Quot; position "in the case of indicating the position to be positioned in real time using the indoor positioning apparatus according to the present invention. However, in some cases, they may be written in a mixed manner without following the above-mentioned classification.

이하 상기와 같이 생성된 DB(예 : RawDB, HashMapDB)를 바탕으로 실내측위를 수행하는 실내측위 장치에 대해서 설명한다.Hereinafter, an indoor positioning apparatus for performing indoor positioning based on the DB (e.g., RawDB, HashMapDB) generated as described above will be described.

도 2는 본 발명의 일 실시예에 따른 와이파이 핑거프린트 기반 실내측위 장치의 개략적인 구성을 보인 예시도이다.2 is a diagram illustrating a schematic configuration of a Wi-Fi fingerprint-based indoor positioning device according to an embodiment of the present invention.

도 2에 도시된 바와 같이, 본 발명의 일 실시예에 따른 와이파이 핑거프린트 기반 실내측위 장치는, 제1 DB(110), 제2 DB(120), 실내측위 모듈(130), 안정화 모듈(140) 및 최종위치 결정 모듈(150)을 포함한다.2, the Wi-Fi fingerprint-based indoor positioning apparatus according to an exemplary embodiment of the present invention includes a first DB 110, a second DB 120, an indoor positioning module 130, a stabilization module 140 And a final positioning module 150.

상기 제1 DB(110)와 제2 DB(120)는, 상술한 바와 같이, 이미 생성이 완료되어 있으며, DB 정보가 오프라인 또는 온라인 방식 중 적어도 한 가지 방식을 통해 실내측위 장치에 제공되고 있는 것으로 가정한다.As described above, the first DB 110 and the second DB 120 have already been created, and the DB information is provided to the indoor positioning device through at least one of the offline method and the online method I suppose.

여기서 상기 온라인 방식은 해당 DB 정보를 제공하는 서버(미도시)에 유/무선 방식으로 접속하여 실시간으로 DB 정보를 제공받아 사용하는 방식을 의미하고, 상기 오프라인 방식은 해당 DB 정보를 본 발명의 일 실시예에 따른 실내측위 장치의 내부 메모리(미도시)에 미리 다운로드 받아 사용하는 방식을 의미한다.Here, the online method refers to a method of accessing and using DB information in real time by accessing a server (not shown) providing corresponding DB information in a wire / wireless manner and using the DB information in real time. (Not shown) of the indoor positioning apparatus according to an embodiment of the present invention.

상기 실내측위 모듈(130)은 실시간으로 현재 위치에서 수신되는 WiFi 신호들 중 가장 신호세기가 강한 AP의 신호세기를 기준으로 일정 신호범위 내의 AP들을 Key로 선정한다.The indoor positioning module 130 selects APs within a predetermined signal range based on the signal strength of the AP having the strongest signal strength among the WiFi signals received at the current location in real time.

예컨대 도 3을 참조하면, 현재 지점에서 가장 신호세기가 강한 AP(예 : AP1)를 기준으로 일정 신호범위(예 : Max RSSI ~ (Max RSSI-10)) 내의 AP들(예 : AP2)을 Key로 선정할 수 있다.For example, referring to FIG. 3, APs (e.g., AP2) in a predetermined signal range (e.g., Max RSSI to Max RSSI-10) Can be selected.

이때 상기 일정 신호범위는 임의로 설정 가능하고, 상기 신호범위를 줄이는 경우 비교 대상이 줄어들어 연산량은 적어지나 측위 결과가 상대적으로 덜 정확해질 수 있고, 상기 신호범위를 넓히는 경우 비교 대상이 많아져 연산량은 높아지나 측위 결과가 상대적으로 더 정확해질 수 있다.In this case, the predetermined signal range can be arbitrarily set. When the signal range is reduced, the comparison object is reduced and the computation amount is small, but the positioning result can be relatively less accurate. When the signal range is widened, The positioning results can be relatively more accurate.

다음, 상기 실내측위 모듈(130)은 현재 지점에서 상기 결정된 Key(예 : AP1, AP2)를 사용하여 상기 제2 DB(예 : HashMapDB)(120)에서 비교 대상을 선정한다. 즉, 상기 현재 지점에서 선정된 Key와 동일한 Key가 설정된 지점(예 : A지점, B지점, C지점)을 비교 대상으로 선정한다.Next, the indoor positioning module 130 selects a comparison object from the second DB (e.g., HashMap DB) 120 using the determined key (e.g., AP1 and AP2) at the current point. That is, a point (for example, a point A, a point B, and a point C) having the same key as the key selected at the current point is selected as a comparison object.

그리고 상기 제2 DB(예 : HashMapDB)(120)에서 찾은 비교 대상과 현재 지점의 와이파이 스캔데이터(ScanData)의 각각에 대한 AP의 신호세기 오차(Error)를 계산하고, 신호세기 오차가 가장 적은 지점을 현재 위치로 결정한다.Then, the signal intensity error of the AP for each of the comparison object found in the second DB (e.g., HashMap DB) 120 and the WiFi scan data (ScanData) of the current point is calculated, Is determined as the current position.

상기 신호세기의 오차(

Figure pat00004
)는 아래의 수학식 1에 의해 계산할 수 있다.The error of the signal strength (
Figure pat00004
) Can be calculated by the following equation (1).

Figure pat00005
Figure pat00005

여기서 p는 DB의 신호세기이고, q는 스캔데이터의 신호세기이다.Where p is the signal strength of the DB and q is the signal strength of the scan data.

이때 본 발명에 따른 실시예에서는 상기 결정된 현재 위치를 초기위치(RawPos)로 설정한다.At this time, in the embodiment of the present invention, the determined current position is set as the initial position (RawPos).

즉, 본 발명에 따른 실시예에서는 상기 결정된 현재 위치를 곧바로 최종위치로 결정하는 것이 아니라 일단 초기위치(RawPos)로 설정하고, 정확성을 더 높이기 위해서 안정화 모듈(140)과 최종위치 결정 모듈(150)에 의한 처리를 추가로 수행한다.That is, in the embodiment of the present invention, the determined current position is not determined immediately as the final position but is set to the initial position (RawPos), and the stabilization module 140 and the final positioning module 150 . ≪ / RTI >

상기 안정화 모듈(140)은 상기 결정된 초기위치(RawPos)를 입력으로 받아 기설정된 개수(예 : 5개)의 초기위치(RawPos) 지점(즉, 좌표)을 합산하여 평균 지점(즉, 좌표)을 계산한다. 이때 상기 실내측위 모듈(130)을 통하여 결정된 초기위치의 개수가 5개 이하인 경우에도 합하여 평균 지점(즉, 좌표)을 계산할 수 있다.The stabilization module 140 receives the determined initial position RawPos as an input and adds the predetermined number (e.g., five) of initial positions (RawPos) (i.e., coordinates) . At this time, even when the number of initial positions determined through the indoor positioning module 130 is five or less, the average point (i.e., coordinate) can be calculated.

그리고 상기 안정화 모듈(140)은 상기 계산된 초기위치(RawPos)들의 평균 지점(즉, 좌표)을 안정위치(StablePos)로 결정한다.Then, the stabilization module 140 determines the average position (i.e., coordinate) of the calculated initial positions RawPos as the stable position StablePos.

예컨대 A지점에서 실내측위 모듈(130)을 통하여 결정된 위치(초기위치)를 P1이라 하고, 사용자가 이동하여 B 지점에서 실내측위 모듈(130)을 통해 결정된 위치(초기위치)를 P2라고 가정할 경우, 상기 안정화 모듈(140)은 상기 결정된 초기위치(P1, P2)의 평균 지점을 계산((P1 + P2)/2)하여 안정위치(StablePos)로 결정한다. 그리고 사용자가 또 다시 이동하여(또는 소정 시간이 경과하여) 새로운 초기위치(RawPos)인 P3가 입력되는 경우 상기 3개의 초기위치의 평균 지점을 계산((P1 + P2 + P3)/3)하여 안정위치(StablePos)를 결정한다. 그리고 사용자가 계속 이동하여(또는 소정 시간이 경과하여) 기설정된 개수(예 : 5개) 이상 측위 되는 경우(예 : P4, P5, P6 입력될 때), 상기 안정화 모듈(140)은 최종 입력된 초기위치(예 : P6)를 기준으로 기설정된 개수(예 : 5개)의 평균지점을 계산((P2 + P3 + P4 + P5 + P6)/5)하여 안정위치(StablePos)로 결정한다.For example, assuming that the position (initial position) determined through the indoor positioning module 130 at the A point is P1 and the position (initial position) determined by the user through the indoor positioning module 130 at the B point is P2 , The stabilization module 140 calculates an average point of the determined initial positions P1 and P2 and determines the stable position StablePos as (P1 + P2) / 2. When the user moves again (or a predetermined time elapses) and a new initial position (RawPos) P3 is input, the average point of the three initial positions is calculated ((P1 + P2 + P3) / 3) Determine the location (StablePos). (For example, when P4, P5, and P6 are input), the stabilization module 140 determines whether or not the final input (i.e., (P6 + P4 + P5 + P6) / 5) to determine the stable position (StablePos) based on the initial position (e.g., P6)

이때 상기 과정은 초기위치(RawPos)와 안정위치(StablePos)와의 거리가 일정 거리 이내인 경우를 설명한 것이다. 가령, 도보로 이동할 경우 현재 위치의 변화가 도보에 의한 이동 거리 이내인 경우에 적합하며, 그 이상의 빠른 속도로 이동하여 현재 위치의 변화가 큰 경우(예 : 실내 이동차량에 탑승하여 빠르게 이동하는 경우)에는 적합하지 않을 수 있다.At this time, the above procedure describes a case where the distance between the initial position (RawPos) and the stable position (StablePos) is within a certain distance. For example, when the user moves on foot, the present position is suitable for the case where the change of the current position is within the movement distance by the walking, ).

따라서 상기 실내측위 모듈(130)은 환경 변화 등에 의하여 부정확한 위치가 측위되는 것을 방지하기 위하여, 이전에 결정된 안정위치(StablePos)를 기준으로 새로 결정된 초기위치(RawPos)까지의 거리가 미리 설정된 임의의 거리(예 : 50m)를 초과하는 경우 해당 초기위치(RawPos)는 안정위치(StablePos) 계산 시 제외한다.Therefore, in order to prevent an incorrect position from being determined due to a change in environment or the like, the indoor positioning module 130 may set the distance to the newly determined initial position (RawPos) based on the previously determined stable position (StablePos) If the distance (eg 50 m) is exceeded, the corresponding initial position (RawPos) is excluded in the calculation of the stable position (StablePos).

그리고 상기 제외된 초기위치(RawPos)를 실패위치 배열에 저장한다. And stores the excluded initial position (RawPos) in the failure location array.

그 이유는 안정위치(StablePos)로 계산된 위치가 잘못되고, 새로 결정된 초기위치(RawPos)가 더 정확한 경우가 발생할 수 있으며, 이 경우 상기 새로 결정된 초기위치(RawPos)를 최종위치로 설정하여 사용해야 하기 때문이다.The reason is that the position calculated by the stable position (StablePos) is wrong, and the newly determined initial position (RawPos) may be more accurate. In this case, the newly determined initial position (RawPos) Because.

그리고 상기 안정위치(StablePos) 계산에서 제외된 초기위치(RawPos)가 연속으로 일정 개수(예 : 2개 ~ 5개) 이상 누적되는 경우 예외 처리를 수행한다.If an initial position (RawPos) excluded from the stable position calculation is accumulated in a predetermined number (eg, two to five) in succession, exception processing is performed.

예컨대 연속으로 5개 이상의 실패위치가 발생하는 경우 해당 위치들의 평균지점을 계산하여 안정위치(StablePos)로 결정한다.For example, when five or more failure positions occur consecutively, an average point of the positions is calculated and determined as a stable position (StablePos).

상기 최종위치 결정 모듈(150)은 상황에 따라 상기 실패위치가 발생하지 않았을 경우에 계산된 안정위치(StablePos), 또는 상기 실패위치가 발생할 경우에 계산된 안정위치(StablePos)를 최종 측위 지점(즉, 최종위치)으로 결정한다.The final positioning module 150 may calculate the stable position StablePos calculated when the failure position does not occur or the stable position StablePos calculated when the failure position occurs, , Final position).

이상으로 상기 실내측위 모듈(130), 안정화 모듈(140) 및 최종위치 결정 모듈(150)은 각기 개별적인 동작을 수행하는 것으로 설명하였으나, 하나의 제어부(미도시)에서 상기 각 모듈들(130, 140, 150)의 동작을 통합하여 수행할 수도 있다.Although the indoor positioning module 130, the stabilization module 140, and the final positioning module 150 perform the respective operations as described above, the indoor modules 130, 140 And 150 may be integrated.

도 4는 본 발명의 일 실시예에 따른 와이파이 핑거프린트 기반 실내측위 방법을 설명하기 위한 흐름도이다.4 is a flowchart illustrating a Wi-Fi fingerprint-based indoor positioning method according to an embodiment of the present invention.

도 4에 도시된 바와 같이, 실내측위 모듈(130)은 현재 위치에서 와이파이 스캔(WiFi Scan)을 수행하여 스캔데이터(ScanData)를 수집한다(S101).As shown in FIG. 4, the indoor positioning module 130 performs WiFi scanning at the current location to collect scan data (ScanData) (S101).

여기서 상기 스캔데이터(ScanData)는, 임의의 지점(또는 위치)에서 실내측위 장치(예 : 스마트폰, 이동 단말, 내비게이션 등)가 수신하는 WiFi AP에 대한 신호세기 정보를 의미한다.Here, the scan data (ScanData) refers to signal strength information for a WiFi AP received by an indoor positioning device (e.g., a smart phone, a mobile terminal, a navigation device, or the like) at an arbitrary point (or position).

그리고 상기 실내측위 모듈(130)은 상기 스캔데이터(ScanData)의 가장 강한 신호세기를 갖는 AP를 기준으로 일정 범위(예 : Max RSSI ~ (Max RSSI-10)) 안의 AP들을 Key로 선정한다(S102).The indoor positioning module 130 selects APs within a certain range (e.g., Max RSSI to Max RSSI-10) based on the AP having the strongest signal strength of the scan data ScanData (S102 ).

그리고 상기 실내측위 모듈(130)은 상기 Key로 선정된 AP들을 이용하여 상기 제2 DB(120)(예 : HashMapDB)에서 후보 지점들의 데이터(즉, 현재 위치 결정을 위하여 신호세기를 비교할 후보 위치 데이터)를 선택한다(S103).The indoor positioning module 130 then transmits the data of the candidate points in the second DB 120 (e.g., HashMapDB) using the APs selected by the Key (i.e., the candidate position data (S103).

여기서 상기 후보 Data는, 상기 제2 DB(120)(예 : HashMapDB)에서 특정 Key를 사용하여 얻은 후보 지점의 신호세기 데이터를 의미한다.Here, the candidate data means signal strength data of a candidate point obtained by using a specific key in the second DB 120 (e.g., HashMapDB).

그리고 상기 실내측위 모듈(130)은 상기 제2 DB(120)(예 : HashMapDB)에서 선택된 후보 지점들의 데이터(AP 신호)와 상기 스캔데이터(AP 신호)간의 오차를 계산한다(S104).The indoor positioning module 130 calculates an error between the data (AP signal) of the candidate points selected in the second DB 120 (e.g., HashMapDB) and the scan data (AP signal) (S104).

그리고 상기 후보 지점들의 데이터 중 계산된 오차가 가장 적은 지점을 선택하여 초기위치(RawPos)로 결정한다(S105).Then, a point at which the calculated error is the smallest among the data of the candidate points is selected and determined as the initial position (RawPos) (S105).

여기서 상기 실내측위 모듈(130)은, 상기 제2 DB(120)(예 : HashMapDB)와 현재 위치에서 WiFi 스캔된 스캔데이터(ScanData)를 사용하여 측위하는 모듈을 의미한다. 그리고 상기 초기위치(예 : RawPos)는 상기 실내측위 모듈(130)에서 상기 제1 DB(110)(예 : RawDB)와 실내측위 모듈(130)에서 실시간 스캔된 WiFi 신호(즉, WiFi ScanData)를 비교하여 결정된 초기위치를 의미한다.The indoor positioning module 130 refers to a module that uses the second DB 120 (e.g., HashMapDB) and the scan data (ScanData) that is WiFi scanned at the current location. The initial position (e.g., RawPos) is determined by the indoor positioning module 130 in such a manner that the first DB 110 (e.g., RawDB) and the WiFi signal (i.e., WiFi ScanData) Quot; means an initial position determined by comparison.

상기와 같이 현재 위치에 대한 초기위치(RawPos)가 결정되면, 안정화 모듈(140)은 기설정된 개수(예 : 5개)의 초기위치(RawPos) 지점(즉, 좌표)을 합산하여 그 평균 지점을 계산한다. 그리고 상기 계산된 초기위치(RawPos)들의 평균 지점을 안정위치(StablePos)로 결정한다(S106).When the initial position (RawPos) for the current position is determined as described above, the stabilization module 140 adds the predetermined number (e.g., 5) of initial positions (RawPos) (i.e., coordinates) . The average position of the calculated initial positions (RawPos) is determined as the stable position (StablePos) (S106).

여기서 상기 안정위치(예 : StablePos)는 상기 안정화 모듈(140)에서 초기위치(예 : RawPos)들의 평균 지점을 산출하여 최종 결정된 위치를 의미한다. Here, the stable position (e.g., StablePos) refers to a final determined position by calculating an average point of initial positions (e.g., RawPos) in the stabilization module 140.

상기 안정화 모듈(140)의 동작은 도 5를 참조하여 좀 더 자세히 설명한다.The operation of the stabilization module 140 will be described in more detail with reference to FIG.

그리고 최종위치 결정 모듈(150)은 실패위치(즉, 이전에 결정된 안정위치(StablePos)를 기준으로 새로 결정된 초기위치(RawPos)까지의 거리가 미리 설정된 임의의 거리(예 : 50m) 이상인 경우로 결정된 위치)의 발생 여부를 반영하여 계산된 안정위치(StablePos)를 최종 측위 지점(즉, 최종위치)으로 결정한다(S107).The final positioning module 150 determines whether or not the distance to the newly determined initial position RawPos based on the previously determined stable position StablePos is equal to or greater than a predetermined distance (e.g., 50 m) Position) is determined as the last positioning point (i.e., the final position) (S107).

도 5는 상기 도 4에 있어서, 안정화 모듈의 동작을 더 구체적으로 설명하기 위한 흐름도이다.5 is a flowchart illustrating the operation of the stabilization module in more detail in FIG.

도 5에 도시된 바와 같이, 상기 안정화 모듈(140)은 상기 실내측위 모듈(130)로부터 현재 위치에 대한 측위 결과(또는 측위데이터, 스캔데이터)를 수신한다(S201). 5, the stabilization module 140 receives a positioning result (or positioning data, scan data) for the current position from the indoor positioning module 130 (S201).

그리고 상기 측위데이터에 근거하여 산출된 현재 위치에서 미리 설정된 기준 위치까지의 거리를 계산한다(S202).Then, a distance from the current position calculated based on the positioning data to a predetermined reference position is calculated (S202).

여기서 상기 기준 위치와 관련하여, 상기 현재 위치에 대한 측위데이터가 첫 번째 측위데이터인 경우 현재 위치가 기준 지점(또는 기준 위치)이 되고, 이전에 이미 측정된 측위데이터들이 있는 경우 그 측위데이터들을 이용하여 계산된 최종위치(또는 안정위치)가 기준 지점(또는 기준 위치)이 된다.Here, regarding the reference position, if the positioning data for the current position is the first positioning data, the current position becomes the reference position (or the reference position), and if there is the positioning data that was previously measured, The calculated final position (or stable position) becomes the reference point (or reference position).

그리고 상기 계산된 거리(즉, 현재 위치에서 기준 위치까지의 거리)가 미리 설정된 거리(예 : 50m) 이하이면 현재 위치를 임시위치(또는 초기위치) 배열에 누적한다(S203).If the calculated distance (i.e., the distance from the current position to the reference position) is less than a predetermined distance (e.g., 50 m), the current position is accumulated in the temporary position (or initial position) arrangement (S203).

그리고 기설정된 개수(예 : 5개)의 상기 임시위치 배열(즉, 초기위치 저장을 위한 임의의 버퍼)에 누적된 지점(즉, 초기위치(RawPos))들을 합산하여 그 평균 지점(즉, 좌표)을 계산한다(S204). (I.e., initial positions RawPos) in a predetermined number (e.g., five) of the temporary position arrays (i.e., arbitrary buffers for initial position storage) (S204).

그리고 상기 계산된 평균 지점을 안정위치(StablePos)로 설정한다(S205).Then, the calculated average point is set as a stable position (StablePos) (S205).

그런데 만약 상기 계산된 거리(즉, 현재 위치에서 기준 위치까지의 거리)가 미리 설정된 거리(예 : 50m)를 초과하면 현재 위치를 실패위치 배열(즉, 실패위치 저장을 위한 임의의 버퍼)에 누적한다(S206). However, if the calculated distance (that is, the distance from the current position to the reference position) exceeds a preset distance (for example, 50 m), the current position is accumulated in the failure position arrangement (S206).

그리고 기설정된 개수(예 : 5개)의 상기 실패위치 배열에 연속으로 누적된 지점(즉, 실패위치로 결정된 초기위치(RawPos))들의 평균 지점(즉, 좌표)을 계산한다(S207).(I.e., coordinates) of consecutively accumulated points (i.e., initial positions (RawPos) determined as failure positions) in the predetermined number (e.g., five) of the failure position arrays (S207).

그리고 상기 계산된 평균 지점을 안정위치(StablePos)로 설정한다(S208). Then, the calculated average point is set as the stable position (StablePos) (S208).

이때 상기 S205 단계 또는 상기 S208 단계에서 설정된 안정위치(StablePos)를 다음 단계의 현재위치 측위를 위한 기준위치로 설정한다(S209). At this time, the stable position (StablePos) set in the step S205 or S208 is set as a reference position for the current position positioning in the next step (S209).

아울러 상기 최종위치 결정 모듈(150)은 상기 S205 단계 또는 상기 S208 단계에서 설정된 안정위치(StablePos)를 최종위치로 결정한다.In addition, the final positioning module 150 determines the stable position (StablePos) set in step S205 or S208 as the final position.

도 6은 본 발명의 일 실시예에 따른 안정화 모듈을 적용한 경우와 안정화 모듈을 적용하지 않고 실내측위를 수행한 경우의 측위 결과를 비교하여 보인 예시도이다. FIG. 6 is a diagram illustrating an example of comparison between positioning results obtained when a stabilization module according to an embodiment of the present invention is applied and when indoor positioning is performed without applying a stabilization module.

도 6에 도시된 바와 같이, 본 발명의 일 실시예에 따라 안정화 모듈(140)을 적용한 실내측위 결과는 안정화 모듈을 적용하지 않은 실내측위 결과와 비교할 때 지상 실측 정보(GroundTruth)에 훨씬 더 근접한 것을 알 수 있다. 즉, 안정화 모듈(140)을 적용할 경우 더 정확한 실내측위가 이루어지는 것을 알 수 있다.As shown in FIG. 6, the indoor positioning result using the stabilization module 140 according to an embodiment of the present invention is much closer to the ground truth information (GroundTruth) when compared with the indoor positioning result not using the stabilization module Able to know. That is, when the stabilization module 140 is applied, it can be seen that more accurate indoor positioning is performed.

상기와 같이 본 발명은 WiFi 핑거프린트 기반 실내측위 시 제2 DB(예 : HashMapDB)의 사용 및 신호세기에 기반하여 Key를 선정하는 작업을 통해 DB의 많은 데이터들과 비교하지 않도록 함으로써 연산의 효율성을 높일 수 있도록 한다.As described above, according to the WiFi fingerprint-based indoor positioning, the second DB (e.g., HashMapDB) is used and the key is selected based on the signal strength. .

또한 안정화 모듈(또는 안정화 알고리즘)을 적용하여 신호세기의 안정성을 향상시켜 보다 정확한 측위 결과를 얻을 수 있도록 하며, 또한 WiFi 신호 이외의 추가적인 센서(예 : 가속도계, 자이로, 지자기, NFC 등)를 사용하지 않아 복잡한 계산 과정이 불필요하고, 환경변화에 따라 센서의 부정확한 값 혹은 오작동이 발생하더라도 이러한 것에 영향을 받지 않으므로 안정성을 높일 수 있도록 한다.In addition, stabilization module (or stabilization algorithm) is applied to improve the stability of the signal strength to obtain more accurate positioning results. In addition, additional sensors other than WiFi signals (eg, accelerometer, gyro, geomagnetism, NFC etc.) So that complicated calculation process is unnecessary, and even if an inaccurate value or malfunction of the sensor occurs due to environmental change, it is not affected by such a change, so that stability can be improved.

이상으로 본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다. 따라서 본 발명의 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.
While the present invention has been particularly shown and described with reference to exemplary embodiments thereof, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, I will understand the point. Accordingly, the technical scope of the present invention should be defined by the following claims.

110 : 제1 DB 120 : 제2 DB
130 : 실내측위 모듈 140 : 안정화 모듈
150 : 최종위치 결정 모듈
110: first DB 120: second DB
130: Indoor positioning module 140: Stabilization module
150: Final positioning module

Claims (12)

현재 위치에서 WiFi 신호들을 실시간으로 수신하고, 미리 생성되어 있는 DB(Data Base)의 데이터를 참조하여 초기위치(RawPos)를 결정하는 실내측위 모듈;
상기 결정된 초기위치(RawPos)를 입력으로 받아 누적하고, 기설정된 개수의 초기위치(RawPos) 좌표에 대한 평균 좌표를 계산하여 안정위치(StablePos)를 결정하며, 미리 설정된 기준위치에서 상기 초기위치(RawPos)까지의 거리가 미리 설정된 거리를 초과하는 경우 실패위치가 발생한 것으로 판단하고, 실패위치에 해당하는 기설정된 개수의 초기위치(RawPos) 좌표에 대한 평균 좌표를 계산하여 안정위치(StablePos)를 결정하는 안정화 모듈; 및
상기 실패위치가 발생하지 않았을 경우에 계산된 안정위치(StablePos), 또는 상기 실패위치가 연속 발생할 경우에 계산된 안정위치(StablePos)를 최종위치로 결정하는 최종위치 결정 모듈;을 포함하는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 장치.
An indoor positioning module that receives WiFi signals in real time in real time and determines an initial position (RawPos) by referring to data of a DB (Data Base) generated in advance;
(RawPos) as input, determines a stable position (StablePos) by calculating an average coordinate of a predetermined number of initial positions (RawPos) coordinates, and determines the initial position (RawPos) ) Is determined to be a failure position, and determines the stable position (StablePos) by calculating an average coordinate of a predetermined number of initial positions (RawPos) coordinates corresponding to the failure position Stabilization module; And
(StablePos) calculated when the failure position does not occur, or a stable position (StablePos) calculated when the failure position continuously occurs, as the final position. WiFi fingerprint based indoor positioning device.
제 1항에 있어서, 상기 DB(Data Base)는,
해쉬맵 DB(HashMapDB)인 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 장치.
The method of claim 1, wherein the DB (Data Base)
And a hash map DB (HashMapDB).
제 2항에 있어서, 상기 해쉬맵 DB(Data Base)는,
측위 대상 지역의 각 지점에서 실제로 수신되는 n개의 AP와 해당 AP의 신호세기(RSSI : Received Signal Strength Indicator)를 수집 기록하여 스캔데이터(ScanData)를 생성하고,
상기 수집 기록된 모든 스캔데이터(ScanData)를 사용하여 로DB(RawDB)를 생성하고, 상기 로DB(RawDB)의 각 지점에서 신호세기(RSSI)가 가장 강한 AP를 선정하여 키(Key)로 설정하고, 해당 지점의 스캔데이터(ScanData)를 해쉬맵(HashMap) 값(value)으로 설정하여 생성하는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 장치.
3. The method of claim 2, wherein the hash map DB (Data Base)
The n APs actually received at each point in the positioning target area and the signal strength (RSSI: Received Signal Strength Indicator) of the corresponding AP are collected and recorded to generate scan data (ScanData)
(RawDB) using all of the collected and recorded scan data (ScanData), and selects an AP having the strongest signal strength (RSSI) at each point of the RBDB (RawDB) and sets it to a key And generates scan data (ScanData) of the corresponding point by setting a hash map (HashMap) value (value).
제 1항에 있어서, 상기 실내측위 모듈은,
현재 위치에서 수신된 WiFi 신호들 중 가장 신호세기가 강한 AP(Access Point)의 신호세기를 기준으로 기설정된 일정 신호범위 내의 AP들을 키(Key)로 선정하고, 현재 지점에서 상기 선정된 Key를 사용하여 상기 DB에서 비교 대상을 선정하고, 상기 DB에서 찾은 비교 대상과 현재 지점의 와이파이 스캔데이터(ScanData)의 각각에 대한 AP의 신호세기 오차(Error)를 계산하고, 상기 신호세기 오차가 가장 적은 지점을 초기위치(RawPos)로 결정하는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 장치.
The indoor positioning system according to claim 1,
APs within predetermined signal range based on the signal strength of AP (Access Point) having the strongest signal strength among the WiFi signals received at the current location are selected as a key, and the selected key is used at the current point And calculates a signal intensity error (Error) of the AP with respect to each of the WiFi scan data (ScanData) of the comparison point and the current point found in the DB, Is determined as an initial position (RawPos).
제 4항에 있어서, 상기 일정 신호범위는,
Max RSSI(Received Signal Strength Indicator) 에서 (Max RSSI-10) 이내인 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 장치.
5. The method of claim 4,
(Max RSSI-10) from a Max RSSI (Received Signal Strength Indicator).
제 4항에 있어서, 상기 신호세기의 오차는,
아래의 수학식 1에 의해 계산되는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 장치.
(수학식 1)
Figure pat00006

여기서
Figure pat00007
는 DB의 신호세기이고,
Figure pat00008
는 스캔데이터의 신호세기.
5. The method of claim 4,
Is calculated by the following equation (1). ≪ EMI ID = 1.0 >
(1)
Figure pat00006

here
Figure pat00007
Is the signal strength of the DB,
Figure pat00008
Is the signal strength of the scan data.
실내측위 모듈이 현재 위치에서 WiFi 신호들을 실시간으로 수신하고 미리 생성되어 있는 DB(Data Base)의 데이터를 참조하여 초기위치(RawPos)를 결정하는 단계;
안정화 모듈이 기설정된 개수의 누적된 초기위치(RawPos)들에 대한 평균 지점을 계산하여 안정위치(StablePos)를 결정하는 단계; 및
최종위치 결정 모듈이 상기 안정위치를 결정하는 단계에서의 실패위치의 연속 발생 여부를 반영하여 계산된 안정위치(StablePos)를 최종위치로 결정하는 단계;를 포함하는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 방법.
The indoor positioning module receiving WiFi signals in real time at the current location and determining an initial position (RawPos) by referring to data of a DB (Data Base) generated in advance;
The stabilization module calculating an average point for a predetermined number of accumulated initial positions (RawPos) to determine a stable position (StablePos); And
And determining a stable position (StablePos) calculated as a final position by reflecting whether a failure position is continuously generated in the step of determining the stable position by the final positioning module. Positioning method.
제 7항에 있어서, 상기 초기위치를 결정하는 단계는,
실내측위 모듈이 현재 위치에서 와이파이 스캔을 수행하여 스캔데이터(ScanData)를 수집하는 단계;
상기 스캔데이터(ScanData)에서 가장 강한 신호세기(RSSI)를 갖는 AP(Access Point)를 기준으로 일정 범위 안의 AP들을 Key로 선정하는 단계;
상기 Key로 선정된 AP들을 이용하여 미리 생성된 DB(HashMapDB)에서 후보 지점들의 데이터를 선택하는 단계;
상기 DB(HashMapDB)에서 선택된 후보 지점들의 AP 신호와 상기 스캔된 AP 신호 간의 오차를 계산하는 단계; 및
상기 후보 지점들의 데이터 중 상기 계산된 오차가 가장 적은 지점을 선택하여 초기위치(RawPos)로 결정하는 단계;를 포함하는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 방법.
8. The method of claim 7, wherein determining the initial position comprises:
Collecting scan data (ScanData) by performing a Wi-Fi scan at a current location of the indoor positioning module;
Selecting APs within a predetermined range based on an AP (Access Point) having the strongest signal strength (RSSI) in the scan data (ScanData);
Selecting data of candidate points from a previously generated DB (HashMapDB) using APs selected by the Key;
Calculating an error between the AP signal of the candidate points selected in the DB (HashMapDB) and the scanned AP signal; And
And selecting a point where the calculated error is the smallest among the data of the candidate points and determining it as an initial position (RawPos).
제 8항에 있어서, 상기 후보 지점은,
현재 위치로 선정될 가능성이 있는 데이터가 포함된 지점으로서, 현재 위치에서 선정된 Key와 상기 DB에서 동일한 Key가 설정된 지점인 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 방법.
9. The method of claim 8,
Wherein the key is a point including data that is likely to be selected as a current location, and a key selected at the current location and a location where the same key is set in the DB.
제 7항에 있어서, 상기 안정위치(StablePos)를 결정하는 단계는,
상기 안정화 모듈이 상기 실내측위 모듈로부터 현재 위치에 대한 측위데이터를 수신하는 단계;
상기 측위데이터에 근거하여 산출된 현재 위치에서 미리 설정된 기준 위치까지의 거리를 계산하는 단계; 및
상기 계산된 거리가 미리 설정된 거리 이하이면 현재 위치를 임시위치 배열에 누적하고, 기설정된 개수의 상기 임시위치 배열에 누적된 지점들의 평균 지점을 계산하여 안정위치(StablePos)로 설정하는 단계;를 포함하는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 방법.
8. The method of claim 7, wherein determining the stable position (StablePos)
Receiving the positioning data for the current position from the indoor positioning module;
Calculating a distance from a current position calculated based on the positioning data to a predetermined reference position; And
And accumulating the current position in the temporary position array if the calculated distance is less than a preset distance and calculating an average point of points accumulated in the predetermined number of temporary position arrays and setting the stable position as a stable position Based on the location information.
제 10항에 있어서, 상기 안정위치(StablePos)를 결정하는 단계는,
상기 계산된 거리가 미리 설정된 거리를 초과하면 현재 위치를 실패위치 배열에 누적하고, 기설정된 개수의 상기 실패위치 배열에 연속으로 누적된 지점들의 평균 지점을 계산하여 안정위치(StablePos)로 설정하는 단계;를 포함하는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 방법.
11. The method of claim 10, wherein determining the stable position (StablePos)
Accumulating the current position in the failure location array when the calculated distance exceeds a predetermined distance, calculating an average point of consecutively accumulated points in the predetermined number of failure location arrays, and setting the average point as a stable location (StablePos) And determining a location of the indoor location based on the location information.
제 10항에 있어서, 상기 기준 위치와 관련하여,
상기 현재 위치에 대한 측위데이터가 첫 번째 측위데이터인 경우 현재 위치가 상기 기준 위치가 되고, 이전에 이미 측정된 측위데이터들이 있는 경우 그 측위데이터들을 이용하여 계산된 최종위치 또는 안정위치가 상기 기준 위치가 되는 것을 특징으로 하는 와이파이 핑거프린트 기반 실내측위 방법.
11. The method of claim 10, wherein, with respect to the reference position,
If the positioning data for the current position is the first positioning data, the current position is the reference position, and if the previously measured positioning data exists, the final position or stable position calculated using the positioning data is the reference position Wherein the first fingerprint is a fingerprint-based indoor positioning method.
KR1020140010497A 2014-01-28 2014-01-28 APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF KR102174530B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020140010497A KR102174530B1 (en) 2014-01-28 2014-01-28 APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020140010497A KR102174530B1 (en) 2014-01-28 2014-01-28 APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF

Publications (2)

Publication Number Publication Date
KR20150089633A true KR20150089633A (en) 2015-08-05
KR102174530B1 KR102174530B1 (en) 2020-11-05

Family

ID=53886043

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140010497A KR102174530B1 (en) 2014-01-28 2014-01-28 APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF

Country Status (1)

Country Link
KR (1) KR102174530B1 (en)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019107731A1 (en) * 2017-11-30 2019-06-06 동국대학교산학협력단 Device and method for measuring indoor position
KR20190101007A (en) * 2018-02-22 2019-08-30 현대모비스 주식회사 Apparatus and method for determining position of user terminal
KR20200024556A (en) 2018-08-28 2020-03-09 (주)제이엠피시스템 Indoor positioning method and system using machine learning
KR20200025924A (en) * 2018-08-31 2020-03-10 에스케이플래닛 주식회사 Producing apparatus for radio map, and control method thereof
KR20210048697A (en) 2019-10-24 2021-05-04 파파야 주식회사 Indoor positioning apparatus and method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090043733A (en) * 2007-10-30 2009-05-07 한국전자통신연구원 Method and apparatus for determinating location of terminal indoors
KR20110125333A (en) * 2010-05-13 2011-11-21 한양대학교 산학협력단 Method of determining pedestrian's indoor position

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20090043733A (en) * 2007-10-30 2009-05-07 한국전자통신연구원 Method and apparatus for determinating location of terminal indoors
KR20110125333A (en) * 2010-05-13 2011-11-21 한양대학교 산학협력단 Method of determining pedestrian's indoor position

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019107731A1 (en) * 2017-11-30 2019-06-06 동국대학교산학협력단 Device and method for measuring indoor position
KR20190064345A (en) * 2017-11-30 2019-06-10 동국대학교 산학협력단 Apparatus and method for indoor positioning
KR20190101007A (en) * 2018-02-22 2019-08-30 현대모비스 주식회사 Apparatus and method for determining position of user terminal
KR20200024556A (en) 2018-08-28 2020-03-09 (주)제이엠피시스템 Indoor positioning method and system using machine learning
KR20200025924A (en) * 2018-08-31 2020-03-10 에스케이플래닛 주식회사 Producing apparatus for radio map, and control method thereof
KR20210048697A (en) 2019-10-24 2021-05-04 파파야 주식회사 Indoor positioning apparatus and method

Also Published As

Publication number Publication date
KR102174530B1 (en) 2020-11-05

Similar Documents

Publication Publication Date Title
EP3186653B1 (en) Selective crowdsourcing of location-related data
US8589318B2 (en) Location determination using generalized fingerprinting
CN107250829B (en) Apparatus, system and method for checking health of radio model data
CN107431995B (en) Enabling verification of an estimated location of a mobile device
CN103068039B (en) Wireless fidelity (WIFI) signal-based locating method for received signal strength indicator (RSSI) values
KR102319418B1 (en) Method and Apparatus for Determining Geo Coordinate for Indoor Position
KR101901039B1 (en) Method and apparatus for cross device automatic calibration
KR101785161B1 (en) System and method for determining indoor position
KR20170046665A (en) Method and apparatus for real-time, mobile-based positioning according to sensor and radio frequency measurements
KR20150018827A (en) Method and apparatus for determining locations of access points
WO2011011201A1 (en) System and method for estimating positioning error within a wlan-based positioning system
US8378891B2 (en) Method and system for optimizing quality and integrity of location database elements
KR20150089633A (en) APPARATUS FOR INDOOR POSITIONING BASED ON WiFi FINGERPRINTING AND METHOD THEREOF
CN105992259B (en) Positioning detection method and device
CN108450060A (en) Localization method, equipment based on WI-FI access points
KR100930002B1 (en) How to build a virtual 데이터베이스 Cell database, server and system
US9584973B2 (en) Integrated positioning method and apparatus
KR101599613B1 (en) Positioning apparatus and positioning method
Wei et al. Indoor localization method comparison: Fingerprinting and Trilateration algorithm
KR102302808B1 (en) Method and apparatus for measuring location
KR101468811B1 (en) Compensation method of indoor positioning system using wireless lan
KR101593679B1 (en) Method and device for estimating indoor location
CN107250831B (en) Providing an indication of the direction of travel of a mobile device
KR101642186B1 (en) Location tracking method, location tracking system and recording medium for performing the method
Matos et al. Wi-Fi fingerprint similarity in collaborative radio maps for indoor positioning

Legal Events

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