2조

MIE capstone
이동: 둘러보기, 검색

프로젝트 개요

기술개발 과제

국문 : 블루투스 수신신호강도를 활용한 드론 제어

영문 : Controlling a drone with Bluetooth RSSI

과제 팀명

General

지도교수

신동헌 교수님

개발기간

2020년 9월 ~ 2020년 12월 (총 4개월)

구성원 소개

서울시립대학교 기계정보공학과 2015430022 백**(팀장)

서울시립대학교 기계정보공학과 2015430018 박**

서울시립대학교 기계정보공학과 2015430032 이**

서울시립대학교 기계정보공학과 2015430034 이**

서울시립대학교 기계정보공학과 2015430039 정**

서울시립대학교 기계정보공학과 2013871041 최**

서론

개발 과제의 개요

개발 과제 요약

이번 과제의 주된 목적은 Bluetooth Low Energy Beacon의 RSSI를 활용한 삼변측량을 통해 드론 측위 시스템을 구현하는 것이다. 설계는 총 2가지 방법으로 진행된다. 첫 번째는 HW 설계이다. HW 설계에서는 Bluetooth module을 활용한 Beacon 제작, 드론키트 조립 및 변형 그리고 리모콘 제작 과정이 요구된다. 두 번째는 SW 설계이다. SW 설계에서는 RSSI를 활용한 삼변측량 알고리즘, 드론과 서버 단말 간 통신이 요구된다. 최종적으로 Controller를 활용하는 실용적인 드론 호출을 구현할 것이다.

개발 과제의 배경 및 효과

드론을 제어하는 과정에 있어서 가장 중요한 요소는 controller 와 sight 이다. Sight는 카메라나 제 3자의 도움을 통해 확보하고 그를 통해서 드론의 위치를 조절하는 것이 드론 controlling의 주된 mechanism이다. 단순히 controller를 통해 드론을 원하는 위치에 hovering 하기 위해서는 많은 sight나 영상처리 알고리즘이 필요하다. 그래서 이런 문제점을 해결하기 위해, 위치기반 drone controlling system을 도입하고자 하였다. 개발 이후, drone controlling system을 스포츠 분야에 적용시켜 드론심판, 드론캐디 등 정적인 필드에서 다양한 역할을 수행할 수 있을 것이란 기대효과를 가지고 있다. 또한, 위치 기반 시스템과 자율주행 그리고 영상인식 알고리즘을 결합하여 개인 스포츠 데이터를 축적하고 싶은 아마추어 팀에서도 수요가 있을 것이라 판단된다.

개발 과제의 목표와 내용

이번 과제는 자체 제작한 Controller를 통한 드론 호출을 목표로 한다. 호출과정은 다음과 같다. 우선, 드론 호출을 원하는 구역 바닥에 3개의 Beacon을 설치한다. 이를 통해 해당 공간을 좌표화 시켜, 삼변측량을 가능케 한다. 이후, 드론과 Beacon 사이의 RSSI 값을 활용하여 서버에서 두 객체의 위치를 확정시킨다. 이를 통해 최종적으로 드론과 서버 간 통신을 통해서 해당 드론을 Controller가 설정한 위치로 호출시키는 것을 가능케 한다.

관련 기술의 현황

State of art

◇ 현재 드론의 위치제어는 주로 GPS 기반으로 목적지의 GPS 좌표 정보와 현재 드론의 GPS 좌표 정보를 비교함으로써 이동 거리 및 이동 각도를 계산하는 방법을 활용한다. 이러한 방법은 3~10m 정도의 오차가 존재한다.

◇ 삼변측량 위치인식 기법은 세 개의 비컨 노드에서 알고자 하는 위치 사이의 거리정보를 통해 계산한다. 비컨 노드에서 알고자 하는 위치 사이 거리정보를 얻을 때 장애물이나 주변 환경에 의해 거리오차가 발생하여 이로 인해 정확한 위치정보를 얻을 수 없다.

◇ RSSI 기법은 노드와 노드 사이의 거리를 측정할 때 노드가 라디오 신호의 세기를 나타내주는 척도이다. 신호가 전달된 거리가 길수록 RSSI는 작아진다고 가정할 때 RSSI값을 거리로 변환할 수 있다.

◇ 드론의 무선통신 방식으로 블루투스,Wi-Fi, 위성통신, 셀룰러시스템, LTE와 5G 이동통신이 사용되고 있다.

◇ 블루투스는 단거리 저전력 무선통신에 주료 사용한다.

◇ Wi-Fi는 주로 스마트폰으로 드론을 조종할 때 사용한다.

◇ 위성통신은 자금이 많이 들고 시간지연이 많아 잘 사용되지 않는다.

◇ 셀룰러 시스템은 통신이 잘 끊기지 않는다는 장점이 있지만 공중에는 셀룰러 망이 개설되어 있지 않아 고도에 제한을 받는다.

◇ LTE는 대단위 망이 구축되어 있어 무인택배 같은 서비스에 드론으로 접목하는데 유용하다.

◇ 5G는 빠른 통신이 가능하고 여러 사물과 실시간으로 통신할 수 있다는 장점이 있지만 아직 5G 표준이 확정되지 않아 상용화에 기간이 필요하다.

기술 로드맵

조사.png

특허조사

◇ Method of controlling Drone with bluetooth in smartphone

◇ Long-range remote-control device for a drone

◇ Drone detection systems

◇ Method of controlling Drone with bluetooth in smartphone

◇ Method for controlling movement of drone using low energy bluetooth and appartus for supporting the same

◇ Portable device and drone for location tracking service, and method for providing location tracking service using thereof

특허전략

◇ 조사 특허 중 첫 번째, 두 번째, 네 번째는 드론 키트에 포함된 기능임.

◇ 따라서 완제품에 포함된 기술에 대하여 문제의 소지가 없을 것으로 보임.

◇ Drone detection 그리고 tracking 특허는 우리가 구현하고자 하는 RSSI 방식과 다름

◇ 하지만 접근 방식에 있어서는 참고할 가치가 있음.

◇ 오차가 크게 발생할 경우 위 특허에서 아이디어를 얻어 새로운 방식을 도모

관련 시장에 대한 분석

경쟁제품 조사 비교

◇ 시프트 레드 드론 (199,900원), 한빛 스트론 드론 (35,500원), DJI 매빅 미니 드론 (625,000원) 등 가격적으로 비교할 경우 저가부터 고가까지 다양한 제품군이 있다. 보통 고가의 경우에는 단순 드론 제어가 아닌 촬영용 드론일 경우 고가로 올라가는 것을 확인하였기 때문에 경쟁제품에서 촬영용 드론은 제외하기로 하였다. 또한 블루투스 제어 드론은 찾기가 제한되어 GPS 드론으로 조사하였다.

◇ 지노2 하이버전 GPS드론 (650,000원)

◇ SG906Pro 드론 (101,000원)

◇ SJRC F11 GPS 5G WIFI 드론(145,000원)

◇ 이지드론 X35 드론 (179,000원)

◇ SG907 4K카메라 GPS 드론 (89,900원)

마케팅 전략

◇ 위 제품은 GPS 기반으로 pin 포인트를 클릭하면 그 위치로 이동하는 원리를 가진 드론이다. 그 기능을 바탕으로 웨이포인트 비행, 원 포인트 비행 등의 기능을 지원한다. 위 제품군들은 GPS 기능을 지원하나 인터넷 연결이 불안정하거나 인프라가 잘 되어있지 않은 곳에서는 인식이 잘 되지 않는다는 단점이 존재한다. 블루투스 제어 드론은 통신망이 불안정한 구역에서도 특정 위치를 구별할 수 있다는 장점이 있기 때문에 다양한 특수 목적의 상황( 공장, 농업) 등의 상업용 드론으로 사용할 수 있음을 강점으로 내세워야 할 것이다.

◇ 아래 자료에 따르면, 민수용 드론은 크게 공공용, 상업용, 취미용으로 구분되며, 그 중 취미용이 2016년 기준 22억 달러로 전체 대비 84.0%의 압도적인 비중을 차지하는 것으로 나타났다. 공공용과 상업용은 각각 0.3억 달러와 3.9억 달러로 미미한 수준이다. 하지만, 2025년에는 상업용 드론의 비중이 60%로 급증하고, 취미용 드론은 35.9%로 낮아질 전망이다. 상업용 중 세부 분야별로는 건설 분야의 드론이 16.5%로 가장 높고, 이어 통신용과 농업용 드론이 각각 15.0%와 13.6%를 차지할 것으로 예측되고 있다. 상업용 드론은 취미용 드론에 비해 시장 규모가 훨씬 작고 평균판매가(ASP)가 상당히 높은 편이다. 점차 많은 국가에서 드론 규제가 정착되면서 시장이 안정화되고 기업들은 거의 모든 산업 부문에서 드론을 테스트하고 도입하기 위해 구매하고 있다. 상업용 드론은 취미용 드론에 비해 시장 규모가 훨씬 작고 평균판매가(ASP)가 상당히 높은 편이다. 점차 많은 국가에서 드론 규제가 정착되면서 시장이 안정화되고 기업들은 거의 모든 산업 부문에서 드론을 테스트하고 도입하기 위해 구매하고 있다. 따라서, 상업용 시장을 타겟으로 노리는 것이 합당하다고 볼 수 있다.

기대1.PNG 기대2.png

개발과제의 기대효과

기술적 기대효과

◇ [국방] 영상인식 기술과 결합하여 감시/보안 인력에서 최대 92.5% 인력감축 효과

◇ [스포츠] 아마추어 리그 등 파견/교육되는 심판의 보조역으로 사용

◇ [산업] 설비고도화에 따른 스마트 설비 피드백에 사용 가능성

경제적 및 사회적 파급효과

◇ [국방] ‘소프트파워가 강한 국방’에 포함되어 GDP 성장 효과 기대

◇ [스포츠] KFA 심판 파견/교육 비용 약 210억원 -> 드론 심판을 통해 예산 감축 기대

◇ [산업] 2030년까지 산업 전역에서 스마트 팩토리에 대한 수요 증가

구성원 및 추진체계

팀원.png

설계

설계사양

Dong.png

개념설계안

Gae.png


개1.png

<Drone Interface 활용>


개2.png

<Controller Stack 활용>

이론적 계산 및 시뮬레이션

<삼각측량>


Jot.png

삼각측량은 삼각형의 기하학적인 특징을 이용하여 물체의 상대 위치를 구하는 방법이다. 이 때, 상대적인 위치의 값을 구하고자 하는 목표 지점의 대변, 그리고 그 대변이 다른 변들과 이루는 각을 알고 있는 경우에 삼각측량을 활용할 수 있다. 이 때, 삼각함수의 사인 법칙, 코사인 법칙 등을 활용하여 대변으로부터 목표 지점까지의 거리를 구할 수 있다. Sin.png을 활용하여 다른 변의 길이를 구하고, 최종적으로 d 값을 구할 수 있다.


<삼변측량>


Sn.png

삼변측량은 삼각측량과 마찬가지로 삼각형의 기하하적인 성질을 이용하여 물체의 상대의 위치를 구하는 방법이다. 그러나 한 변의 길이, 그 변에 대한 양 끝의 두 각을 요구하는 삼각측량 방법과는 달리, 삼변측량법은 2개 이상의 기준점, 물체와 각 기준점과의 거리를 활용한다. 2차원 면에서 목표 지점에 대한 상대적인 위치를 정확하고 유일하게 결정하기 위해서는 최소한 3개의 기준점을 활용한다.

위의 그림의 경우, 원하는 목표 지점인 점 B의 상대적인 위치를 구하기 위해서, P1, P2, P3를 기준점으로 설정하여서 계산하였다.

삼변측량법은 제 2코사인법칙, 반각 공식 등을 활용하여 구할 수 있다.


<RSSI>


RSSI(Received signal strength indication)란 수신된 신호 강도 표시기를 의미한다. 이를 통해서 무선 신호의 세기를 측정한다.

iBeacon에서는 RSSI가 일정하게 유지되지 못하고 변동되는 경우가 자주 존재한다. 따라서 TXpower를 조절하여 이를 해결한다.


<RSSI에 따른 거리 구하기>


RSSI는 다음 공식을 활용하였다.

RSSI = -10n*log*D+TXpower

이 때, TXpower란 1m 떨어진 RSSI에서 측정된 신호 강도를 의미한다. TXpower 값을 조절함으로써 Beacon에서 간섭현상을 줄일 수 있다. 따라서 정확한 거리 측정을 위해서는 TXpower 값을 적절히 보정해야 한다.

거리 D에 대하여 식을 정리하면 다음과 같다. D = 10 ^ ( (TXpower-RSSI) / (10*n) )

이를 통해서 각 기준점에서 목표 지점까지의 거리를 구할 수 있다.

Jooji.pngYunji.png


위의 사례는 한 점에서 세 개의 원이 다 같이 모이므로 가장 이상적인 경우라고 할 수 있다. 이 경우는 각 Beacon에 대하여 RSSI 값이 거의 비슷한 경우 가능하다.

그러나 각 Beacon에 대하여 RSSI 값은 일치하기 어렵다. 왜냐하면 Beacon을 사용하는 과정에 있어서 값이 일정하게 유지되지 못하고, 갑작스럽게 증폭되는 경우가 존재하기 때문이다.

이러한 경우에는 다음과 같은 경우가 발생할 수 있다. 다음 경우들에 대해서는 세 개의 원이 동시에 일치하는 지점이 존재하지 않기 때문에 우리가 원하는 결과 값을 구하는데 큰 어려움이 있을 것이다.


<잘못된 경우 예시>


SSap.png

세 개의 Beacon 중, 한 개 Beacon의 신호가 약한 경우, 두 개의 원에서는 두 개의 겹치는 점이 존재하지만, 신호가 약한 원은 겹치지 않으므로 정확한 값을 구하기 어렵다. 따라서 오류가 발생한다.

Amang.png

세 개의 Beacon 중, 한 개 Beacon의 신호가 약한 경우, 한 개의 원에서는 두 개의 겹치는 점이 존재하지만, 신호가 약한 원은 겹치지 않으므로 정확한 값을 구하기 어렵다. 따라서 오류가 발생한다.

TTach.png

세 개의 Beacon 중, 한 개 Beacon의 신호가 다른 두 개의 원보다 강한 경우, 세 개의 원이 동시에 겹치는 점이 존재하지 않으므로 오류가 발생한다. 이러한 신호 문제는 여러 번의 실험 반복과 주변 환경 개선 등을 통해서 해결할 수 있을 것이다.

총 소요 시간은 RSSI 데이터 처리, 모듈 간 I2C 처리, 위치판단 처리 등을 종합하여 계산할 예정이다. 그러나 각 모듈 단위에서 소프트웨어 처리 시간이 상이할 가능성이 있으므로 소요시간이 변경될 가능성이 존재한다. 그러나 본 시스템을 제어하는 과정에 있어서, 엄격한 실시간성의 보장은 요구되지 않을 예정이다. 그런 점에서 각 Beacon module 간의 소프트웨어 처리로 인한 시간 차이는 제약조건으로 크게 작용되지 않을 것으로 판단된다.

회로도

회로 및 조립

Heui.png

System1.png

자체 서버 대신 선택한 유선 I2C 통신 방법을 이용하여 위와 같은 방법으로 회로도를 구성하였다. Controller와 각 Beacon들은 Arduino Nano를 활용하여 삼변측량에 필요한 값을 측정할 수 있도록 하였으며, 각 Beacon에서 수집한 값을 I2C 유선 통신 방식으로 연결된 Control Module에서 연산이 가능토록 하였다. 이 때, Control Module에서는 Raspberry Pi 4를 활용하였다.

조립순서

◇ Beacon module 제작

-1. Arduino와 Battery pack 연결
-2. BLE 모듈 연결


◇ Control module(라즈베리 파이)

-1. 각 Beacon module과 I2C 통신을 위해 전선 연결


◇ Controller module

-1. Arduino와 Battery pack 연결
-2. BLE 모듈 연결
-3. Digital push button 연결

부품도

<부품도>

Gaejot.png

① Baecon 외장
② Controller 외장


<구상도>


Jat.png


<사용 드론 모델>

Drone.png

<DJI 텔로 부스트 콤보>

소프트웨어 설계

Jap.png

◇ RSSI processing

- Beacon 모듈 내장 SW
- RSSI로부터 Controller 거리 정보 추출

◇ Communication Layer

- Control 모듈 내장 SW
- Beacon 모듈 데이터 수신 및 처리

◇ Trilateration Algorithm

- Control 모듈 내장 SW
- 삼변측량 알고리즘

◇ Position correction

- Control 모듈 내장 SW
- RSSI와 Trilateration 누적오차 최소화
- 위치정보 저장

◇ Control Unit

- Control 및 Positioning 모듈 내장 SW
- Bluetooth 통신을 통한 드론 제어

자재소요서

Halcas.png

결과 및 평가

완료작품 소개

프로토타입 사진

Beacon.png

<Beacon>


Beacon내부.png

<Beacon 내부>


Controller.png

<Controller>

포스터

2조포스터2020.png

특허출원번호 통지서

2조특허출원2020.png

개발사업비 내역서

2조개발비2020.png

완료 작품의 평가

2조평가2020.png

향후평가

1. RSSI 삼변측량

HM-10 모듈에서 측정한 RSSI value가 Int 형식을 가져 생각보다 큰 오차범위를 가지고 있었음. 드론제어단위를 RSSI에서 발생한 오차에 맞추어 제작하게 되어 대략적인 위치 범위에는 도달하지만(20점) 정확한 위치 계산에서 미흡한 점이 보이는 것이 사실(-10점).

2. Controller

디지털 푸쉬 버튼을 통해 신호를 생성하고 블루투스를 통해 컨트롤 모듈에 신호를 전달할 수 있도록 설계했음(15점). 하지만 가끔씩 높은 민감도를 통해 1회의 터치가 추가로 전달되는 문제점이 있음(-5점).

3. 드론제어 기술

최적화 되지 않은 제어 코딩으로 인해 신호가 다중으로 입력되는 문제가 있음(-15점). 이를 제외하면 작동에 문제 없음(+15점).

4. 통신

블루투스 통신과 Wifi 통신은 매우 성공적임(+8). 단 I2C 통신이 불안정한 문제가 있음(-2).

부록

참고문헌 및 참고사이트

내용

관련특허

내용

소프트웨어 프로그램 소스

내용

위키페이지 작성을 위한 문법 가이드

표는 위키 문법에 맞추어 작성할 수 있습니다. Mediawiki table generator를 이용하면 손쉽게 표를 작성하여 위키 문법으로 export할 수 있습니다. 아래는 Mediawiki table generator를 이용하여 작성한 표의 예시입니다. 위 웹페이지에서는 직접 CSV파일을 가져와서 바로 표를 만들 수도 있습니다. 직접 표를 문법에 맞추어 편집하고자 하시는 분들은 wiki 표 문법을 참조하면 도움이 됩니다.


구분 실험 1 실험 2 실험 3 실험 4
결과 1 1.1 2.1 3.1 4.1
결과 2 1.2 2.3 4.5 6.4
결과 3 5.1 5.4 2.7 8.5
  • 수식

원래 위키백과에서는 math 태그를 이용하여 바로 수식을 작성할 수 있지만 capstone wiki에서 그 기능은 지원되지 않는것으로 확인됩니다. 따라서 수식을 올리기 위해서는 수식을 사진으로 변환한 후 올려야 합니다. LATEX 수식 생성기 를 이용하면 tex 문법을 이용하여 수식을 작성하여 파일로 저장할 수 있습니다.

svm object function

위 수식은 support vector machine의 비용 함수를 표현한 예시입니다. tex 문법은 tex 수식 문법 에서 확인할 수 있습니다.

  • 사진

사진은 "도구-파일 올리기" 탭에서 파일을 올린 후 아래와 같이 올릴 수 있습니다. 파일명은 파일 올리기에서 정한 "파일의 새 이름"을 사용하면 됩니다.

Mnist 데이터 예제입니다.


  • 코드

코드는 syntaxhighlight 기능을 이용하여 아래와 같이 표현할 수 있습니다.

#include <iostream>
int main ( int argc,  char **argv ) {
    std::cout << "Hello World!";
    return 0;
}

이에 대한 자세한 내용은 Mediawiki syntaxhighlight를 참고하면 도움이 됩니다.