Ⅰ. 서 론
공장과 같은 큰 공간에는 이동이 잦은 수많은 물자가 존재한다. 원활한 관리를 위해서는 이러한 물자들의 위치가 반드시 파악되어야 하지만, 실내 환경에서는 위치 추정에 가장 용이한 GPS를 사용하기 적절하지 않 다. 따라서 실내에서 물자의 위치를 추정할 수 있는 기술에 대한 연구가 필요하다.
실내에서 위치를 추정하는 기술에 관련된 기존 연구들은 Wi-Fi, 또는 Bluetooth 등 무선 신호 AP와 신호 수신 장치의 RSSI1)를 Friis 공식을 통해 거리로 변환하고(Friis, 1946), 그 거리를 이용한 삼변측량으로 위치를 추정한다(Wang et al., 2013). 이러한 측량방법은 선박 내부 위치 측위를 위한 시스템(Park et al., 2013), 스마 트폰 상에서의 위치 측위 기술(Sung et al., 2010) 등 여러 연구에서 사용되었다. 그러나 오차가 매우 큰 RSSI 값의 특성으로 인하여 일반적인 삼변측량으로는 추정되는 위치의 오차 또한 크게 나타난다. 이러한 오차를 줄이기 위한 연구로는 개선된 삼변측량법을 이용한 위치인지 알고리즘 개발(Sohn, 2013) 등이 있다. 해당 연 구의 경우 다양한 필터링을 이용해 적절하지 않은 값을 배제시킴으로써 정확도를 높였다. 하지만 이 경우 취 득되는 데이터를 계속해서 배제하기 때문에 실시간 위치 추정에는 적절하지 않다. 본 연구에서는 실시간으 로 위치를 추정할 수 있는 위치 추정 알고리즘인 “대각측량”을 설계하였고, 오차 또한 기존 삼변측량 기법에 비해 큰 폭으로 줄였다.
1장 “서론”은 본 논문의 이해를 위해 기존 연구 및 필요한 배경기술과 대각측량 이론에 대한 설명을 기숧였고 2장 “시스템 구성”에서는 본 연구에서 설계한 시스템의 구성을 소개한다. 3장 “실험 및 결과” 에서는 이를 검증 하기 위한 실험과 그 결과에 대해 설명한다. 4장 “결론”은 실험 결과에 대한 평가와 상기 내용을 정리한다.
Ⅱ. 관련 이론 및 제안하는 모델
본 연구에서 실내 측위를 위하여 사용한 방식을 소개한다. 대부분의 위치 추정은 Wang et al.(2013)의 방식 처럼 우선 필터링 된 RSSI값을 1) Friis 공식(Friis, 1946)을 통해 거리값으로 변환하고 이 거리값을 이용하여 위치를 추정하는 기존 방법인 2) 삼변측량을 사용하고 있다. 하지만 이 경우 오차범위가 크며 실내 환경에 크게 영향을 받는 단점이 있다. 따라서 본 연구에서는 실내에서 객체의 위치 추정 정확도를 위해 3) 가중 평 균 필터를 사용하고(Zhang and Xiong, 2009), 제안하는 모델인 4) 대각측량을 소개한다.
1. Friis 공식
무선으로 송, 수신되는 신호의 경로 손실과 그 거리의 관계를 나타내는 공식으로, 관계식을 통해 경로 손 실 값을 알면 거리를 계산할 수 있다.
식(4)는 Friis공식에서 경로손실을 거리 d에 대한 식으로 나타낸 것이다.
여기서,
식(5)은 식(4)을 변환하여 거리 d를 경로손실에 대한 식으로 나타낸 것이다.
여기서,
이 때, 경로 손실 값은 다음과 같이 송신 전력과 수신 전력의 차이[dBm]2)로 나타낸다.
여기서,
2. 삼변측량
삼각형 기하학으로 물체의 상대적인 위치를 구하는 방법이다. 세 개의 기준점의 위치와, 각 기준점과 위치 를 구하고자 하는 물체와의 거리를 이용한다. <Fig. 1>은 이러한 삼변측량을 도식화한 것이다.
P1(x1, x2), P2(x2, y2), P3(x3, y3)는 세 개의 기준점, X(x, y)는 위치를 구하고자하는 물체의 좌표, 그리고 r1, r2, r3는 각 기준점과 X와의 거리를 나타낸다. 원의 교점 또는 교차영역을 이용해 X의 좌표를 구하는 측량방 법이다.
3. 가중 평균 필터(Weighted Mean Filter)
오차를 줄이기 위한 신호 처리 기법의 하나이다. 들어오는 신호를 그대로 사용하는 것이 아니라, 직전의 N개의 데이터를 함께 더해 평균을 취함으로써 데이터의 편차를 줄인다. 이에 더하여, 최근 데이터일수록 가 중치를 두어 안정적인 필터링이 이루어지도록 한다.
먼저 다음 식(1)와 같이 데이터를 정의한다.
여기서,
정의 된 데이터를 식(2)에 대입하여 필터링이 이루어진다(Zhang and Xiong, 2009).
여기서,
-
filtered_data = 필터링된 데이터
-
data = 필터링되지 않은, 수신된 데이터
-
FILTER_SIZE = 하나의 필터가 적용되는 데이터의 개수
-
weight = 각 데이터에 적용되는 가중치
이 때, 각 데이터에 대한 가중치를 의미하는 weight는 다음과 같이 정의된다. 단, FILTER_SIZE는 사전에 정의한 필터의 크기를 나타내는 상수이다.(6)
6
여기서,
4. 대각측량
본 논문에서 제안하는 위치 추정 방식으로, 오차를 보정하는 과정을 거친 후 위치 계산을 수행한다. 다음 은 수행 순서에 따른 대각측량의 요소 설명이다.
1) 수신기와의 거리 측정
대각측량을 수행하기 위해서는 먼저 데이터 수집을 위한 수신기 네 개를 직사각형을 이루도록 배치한다. 배치된 수신기는 각자 신호를 지속적으로 수신한다. 이 때 수신되는 신호의 세기, 즉 RSSI의 지속적으로 발 생되는 오차를 최소화하기 위해, 가중 평균 필터를 적용한다. 가중 평균 필터를 통해 시간에 따른 RSSI의 편 차를 줄임으로서 오차의 발생률 및 오차의 크기를 줄인다. 이렇게 보정된 RSSI의 값을 거리로 변환하여, 신 호발생기와 각 수신기 간의 거리를 구한다.
2) 거리비율에 따른 거리값 보정
RSSI를 통해 계산 된 거리값은 큰 오차를 포함하는 경우가 많다. 이로 인하여 거리값을 그대로 사용할 경 우 위치를 정상적으로 추정할 수 없다. 이 문제를 해결하기 위하여 두 수신기에서 계산 된 거리의 비율과 두 수신기 간의 실제 거리를 이용해 오차를 줄일 수 있는 방법을 소개한다. 먼저 수신기가 이루는 사각형의 두 대각선을 긋고, 대각선의 양 끝 수신기에서 계산된 거리를 비율을 유지하며 대각선의 길이에 맞게 변환한다.
3) 대각선 내분 점 찾기
r1, r2 은 거리비에 의해 변환된 거리로써 대각선의 양 끝 수신기의 좌표를 이용하여 두 개의 원을 그리고 두 원의 교점을 구한다. 그 교점은 두 수신기를 잇는 대각선을 거리 비에 따라 내분하는 점으로, 사각형의 중심점을 기준으로 신호발생기를 향한 방향성을 갖는다.(7)
여기서,
식 (8)에서 r1 + r2 = dlen 이므로 두 원은 한 점에서 접한다. 따라서 한 개의 교점의 좌표를 구할 수 있다.
<Fig. 2>에서 녹색 선은 두 수신기를 잇는 대각선이고, A와 B는 각 대각선을 내분하는 점이다. <Fig. 3>은 거리값 보정 및 대각선 내분을 수행중인 실험 장면이다. 이 때, 적색 원의 반지름은 보정되기 전의 거리값, 녹색 원의 반지름은 거리 비에 따라 보정된 거리 값이다.
4) 위치 좌표 추정
위 과정을 두 대각선에 대하여 수행하였을 때 얻어지는 두 개의 내분점을 A, B라고 하자(<Fig. 2>). 네 수 신기가 이루는 사각형의 정 가운데 지점을 원점 O라고 할 때, 계산 과정에서 내분점 A와 B는 방향성을 띄므 로, 이는 벡터 로 나타낼 수 있다. 이 때, 두 벡터의 합으로 나타나는 로 X의 좌표, 즉 구하고자 하는 신호발생기의 좌표를 추정할 수 있다. <Fig. 4>는 이러한 과정을 나타낸 그림이다. <Fig. 5>는 내분점을 찾은 뒤, 벡터합을 통해 위치를 추정하는 실험 장면이다.
Ⅲ. 시스템 구성
본 연구에서 설계한 시스템은 1. 신호발생기, 2. 수신기, 3. 데이터베이스 서버 로 이루어진다. <Fig. 6>는 전체 시스템의 구성도이다. 수신기는 빨간 점, 데이터베이스 서버는 파란 점, 신호발생기는 검은 점, 그리고 발생되는 신호는 파란 색으로 나타냈다. 이 때, 데이터베이스 서버와 수신기는 하나의 유선 LAN3)에서 TCP 통신을 수행한다.
1. 신호발생기
신호발생기는 위치를 알고자하는 물자에 부착되고, 주기적으로 BLE 신호를 발생시킴으로써 수신기가 이 를 수신할 수 있도록 하는 역할이다. 본 연구에서는 Bluetooth 5를 지원하는 개발보드인 TI Launchpad CC2640R2(Fig. 2)를 BLE 신호발생기로써 사용하였다. <Fig. 7>
2. 수신기
수신기는 신호발생기가 발생시키는 신호를 수신하고, 그 정보를 데이터베이스 서버로 전송하는 역할을 한 다. 수신기의 경우 데이터베이스 서버와 통신하기 위한 방법으로 TCP 소켓통신을 채택하여, BLE와 Wi-Fi 모 듈을 내장한 라즈베리파이3 보드(<Fig. 8>)를 사용하였다. 유선 LAN을 통해 데이터베이스서버와 연결하였다.
3. 데이터베이스 서버
수신기와 마찬가지로 라즈베리파이3 보드를 사용해 설계 및 구현하였다. 수신기와 유선 LAN을 통해 연결하 였다. 수신기로부터 축적되는 데이터를 저장 및 관리하기 위하여 <Fig. 9>와 같은 데이터베이스를 구축하였다.
4. 시스템 소프트웨어
1) 신호발생기
신호발생기는 일정한 주기(본 실험에서는 100ms로 설정)마다 BLE 신호를 발생한다. 또한, 신호발생기는 물자에 부착되어야하므로 전지를 연결해 전력을 공급해주고, 전력 사용을 최소화하도록 소프트웨어를 설계 하였다. 다음은 신호발생기의 동작 알고리즘이다. Algorithm 1
2) 수신기
수신기는 지속적으로 BLE 신호를 수신하는데, 신호가 수신될 때의 신호 수신 세기, 즉 RSSI와 해당 신호 발생장치의 MAC주소를 데이터베이스 서버로 전송한다. 수신기의 동작 알고리즘은 다음과 같다. Algorithm 2
3) 데이터베이스 서버
데이터베이스 서버는 수신기와 TCP 소켓 통신으로 연결된다. 이 때, 가중 평균 필터를 적용하여 필터링된 값을 저장하도록 한다. 필터링 된 rssi 값에 대하여 friis 공식(식 (1) ~ (3))으로 해당 신호발생기와 수신기간의 거리 정보를 획득한다. 이 후 본 연구에서 제안하는 측위 기법인 대각측량을 수행하여 산출된 위치정보를 데 이터베이스에 저장한다. <Fig. 10, 11>
Ⅳ. 실험 및 결과
1. 실험 개요 및 방법
본 실험은 대각측량 알고리즘의 실효성을 검증하는 것을 목적으로 한다. 따라서 실험은 실제 물자 관리가 필요한 공장에서 수행했다.
실험은 다음과 같은 규칙에 따라 수행했다.
-
① 실험 장소 임의의 위치에 10m 간격으로 수신기 4개를 정사각형을 이루도록 배치,
-
② 수신기가 이루는 사각형 내부에 임의의 위치를 설정하여 신호발생기 배치,
-
③ 신호발생기는 100밀리초 주기로 BLE신호를 발생시키고, 수신기는 1초 마다 BLE 신호를 수신,
-
④ 수신기는 수신 시 매 회 서버로 해당 수신에 대한 데이터(RSSI, 신호발생기 MAC주소, 수신기 MAC주 소)를 서버로 전송,
-
⑤ 서버는 전송받은 데이터를 데이터베이스에 기록하고, 대각측량 수행,
-
⑥ 실험오차는 실제 신호발생기 위치와 대각측량으로 추정한 위치의 직선거리로 함.
오차는 다음 식과 같은 방법으로 계산 된다.
여기서,
서버는 Friis 공식의 RSSI값과 거리의 관계식(식 (3))에 의해 거리를 계산했다. 본 실험에서는 실험 환경 변 수를 경험적으로 n = 2.5, A = -60 로 설정했다. 이때의 거리 계산식은 다음과 같다.(9)
여기서,
2. 실험 결과
<Fig. 12>은 실험 수행 결과를 시각화한 것으로, 빨간색 점은 수신기의 위치, 파란색 점은 신호발생기의 실제 위치, 그리고 초록색 점은 추정되는 신호발생기의 추정되는 위치이다. 파란색 점과 초록색 점 둘 사이 의 거리, 즉 오차 거리는 붉은 선으로 표시하였다. 실험환경을 눈금 당 1m인 2차원 좌표평면에 투영하여 4개 의 수신기를 원점(0, 0)을 기준으로 같은 거리인 (5, 5), (5, -5), (-5, 5), (-5, -5)에 배치 및 표시하였다. 이 때, 좌표계의 x축은 동-서 방위를 나타내고, y축은 남-북 방위를 나타낸다.
본 연구에서 제안하는 대각 측량법에 의한 각 케이스 별 좌표 및 오차 수치는 <Table 1>에서 확인할 수 있다. <Table 1>에서, Real Location은 신호 발생기의 실제 위치 좌표, Pred Location은 추정되는 위치 좌표, Error Distance는 미터 단위로 나타낸 오차 거리이다. (a) ~ (l)의 평균 오차는 약 1.17m 이다.
<Table 2>는 기존의 삼변 측량 방식을 이용한 실험 결과이다. 위의 실험에서 사용된 4개의 수신기 중 3개 의 수신기의 데이터로 삼변측량을 수행하였다. (a) ~ (l)의 평균 오차는 2.56m 이다.
두 실험 결과의 비교를 통하여, (h)를 제외한 모든 케이스에서 오차가 줄었음을 확인할 수 있다. <Fig. 13> 은 기존의 삼변 측량 방식과 제안하는 알고리즘의 오차 거리를 비교하는 막대그래프이다.
Ⅴ. 고 찰
본 연구에서 제안하는 대각측량 알고리즘의 평균 오차는 1.17m로, 기존의 삼변측량 알고리즘의 평균 오차 인 2.56m의 45.6%에 해당하는 수치이다. 이는 기존의 삼변측량 대비 45.6% 가량 오차가 개선된 결과로써 유 의미한 결과를 얻었다고 볼 수 있다. 또한 본 연구에서 제안하는 시스템은 물자의 위치를 데이터베이스에 실 시간으로 업데이트하여 관리가 용이하다는 장점을 갖는다. 본 연구에서는 실제 산업 현장에서의 응용을 위 해 제안 하는 방식을 활용하여, 스마트폰 어플리케이션으로 물자 위치 파악을 지원하고(<Fig. 14>), 물자의 정보를 AR로 출력하는 시스템(<Fig. 15>)의 개발을 진행하고 있다.
Ⅵ. 결 론
본 논문에서는 공장과 같은 넓은 실내 공간에서 물자의 위치를 파악하기 위한 시스템을 설계하였다. 실내 측위를 위해 BLE의 RSSI에 기반을 둔 삼변측량 기법을 연구하였고, 이를 기반으로 하는 대각측량 알고리즘 을 고안하였다. 본 연구에서 제안하는 시스템과 대각측량 알고리즘의 실효성을 검증하기 위하여, 실제 공장 환경에 이 시스템을 설치하고 실험을 수행하였다. 설치한 시스템은 1개의 BLE 신호 발생기와 4개의 수신기, 그리고 수신기로부터 데이터를 수집하고 이를 이용한 대각측량 수행 및 데이터베이스 관리를 위한 서버장치 1개로 구성하였다. 해당 시스템으로 실험을 수행한 결과, 평균 오차가 약 1.17m 발생함을 확인하였다. 같은 데이터를 사용한 삼변측량의 경우 평균 오차가 약 2.56m로 나타났다. 따라서 오차의 크기를 45.6%로 대폭 감소시켰음을 확인하였다.