Hardware | PiAware 로 항공기 추적하기

|

1. 꿈

대부분의 남자들이라면 어렸을적에 한번쯤 비행기 조종사의 꿈을 가지고 있었을 것입니다.

나의 꿈도 과학자 or 조종사였으니까.


어렸을적 부모님 손잡고 비행기 처음 탔을 때, 슬쩍 보았던 cockpit 의 화려한 불빛들.

옛날 비행기가 그리 대중화 되지 않았을 적에는 승객이 탐승 시, cockpit 을 열어두고 있던 때가 있었습니다.

하물며 7살 남자애가 비행기 탔으니, 승무원들이 귀엽다고 살짝 보여주기도 했었죠.


이런 모습?



이때의 비주얼은 평생 꿈을 꾸게 해주는 경험이었습니다.


돌이켜 생각해 보면, 게임들도 비행기 관련이 많았던것 같네요.

PC 버전이라면, 코만치 시리즈 (그당시 대박인 하복 엔진)


스트라이크 커멘드


Play Station 이라면, Ace Combat 시리즈.


현재 iPhone 에서 자주 띄우는 어플은,

Flight Control


Flightradar24


Air Nav Pro


Spyglass 등등.


하늘에 대한 열망이 식지를 않습니다.


그러던 와중에 Raspberry Pi 를 가지고 놀다가 우연히 이 사이트를 알게 됩니다.

- PiAwarehttp://flightaware.com/adsb/piaware/



이 사진을 본 순간 전기를 맞은 듯 했습니다.

그래 이거야! 그냥 구축해야겠어! 라고 생각했습니다.


참고로 항공기는 운항하면서 자기를 식별할 수 정보와 운항 정보 (고도, 순항속도, 목적지 등등) 를 ADS-B 라는 전파 규격을 이용하여

지속적으로 전파를 쏴 줍니다.

항공기들끼리 또는 관제탑이나 중간 기지국에서는 이런 전파를 가지고 항공기 운항지도를 만드는 것이죠.



PiAware 는 Raspberry Pi 를 이용하여 개인 기지국을 만들 수 있게 해주는 것이죠.

결국 개인이 ADS-B 전파를 받아서 FlighAware 라는 사이트 및 연계된 application 에 정보를 공유하는 것입니다.


참고로 ADS-B 는 위치/운항 정보 뿐이고, 항공기와 관제탑 끼리의 통화/통신을 들을 수 있는 Air-Band 라는 것도 있습니다.

내용이 길어지니 Air-Band 는 다른 기회에 글을 올려보도록 하겠습니다.




2. 준비

사실은 FlightAware 사이트에서는 "Free Feeder" 제공 하고 있습니다.

아래 site 에서 신청하면 심사를 거쳐서 적합하면 무료로 제공해 줍니다.


http://flightaware.com/adsb/request



신청하고 한달 이상이 지나도 답은 없더군요.

너의 신청은 잘 받았지만, 심사하고 알려줄께 답장만 받았습니다.


기다리기만 하면 아까운 시간낭비만 될 것 같아, 직접 제작하기로 합니다.


필요한 구성품을 FlightAware 사이트를 참고로 스케치하고 리스트업 해봤습니다.



일단 아래 목록이 최종 리스트 입니다. (위의 그림에서 조금 수정된 버전)

- 1090MHz ADS-B Antenna (연결부가 N-Female)

- N-Male to SMA Male Adapter

- SMA Female/Male RG58 5M Cable

- ADS-B 1090MHz Band-pass SMA Filter

- SMA Male/Male Pigtail Cable

- FlightAware Pro Stick Plus

- Raspberry Pi 3 Model B

- MicroSD 32GB


다음은 웹상에서 볼 수 있는 각 구성품들의 사진들 입니다.

- 1090MHz ADS-B Antenna (연결부가 N-Female)


- ADS-B 1090MHz Band-pass SMA Filter


- FlightAware Pro Stick Plus


- N-Male to SMA Male Adapter


- SMA Female/Male RG58 5M Cable


- SMA Male/Male Pigtail Cable


- Raspberry Pi 3 Model B


- MicroSD 32GB



처음에는 Amazon에서 모든 구성품을 구입하려고 했으나,

배송비 및 AliExpress 보다 비싸다는 것을 알게되어, 가능한 AliExpress 을 이용하기로 합니다.


구입시 가장 신경 쓴 부분은, 기기끼리 연결하는 케이블 체결 부위 adapter 는 Female/Male, SMA/N 등의 콤비네이션이 가능하여

어떤 구성으로 연결할 것인지 정하는 것이었습니다.


만일 딱 맞물리는 connecter/cable 이 없으면,

끝단을 자르고 각 종류의 connecter / 수축고무를 따로 구입하여 직접 모양을 만들려고 했습니다만,

역시 AliExpress... 모든게 다 있습니다.


참고로, AliExpress 에서 취급하지 않는 부품은 아래 3가지이고,

이외의 케이블/어뎁터 등은 AliExpress 에서 입맛에 따라 구입하였습니다.



[Amazon]

1090MHz ADS-B Antenna - 66cm / 26in (44.95 USD)

  -- https://www.amazon.com/gp/product/B00WZL6WPO/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1


ADS-B 1090MHz Band-pass SMA Filter (15.50 USD)

  -- https://www.amazon.com/gp/product/B010GBQXK8/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1


FlightAware Pro Stick Plus ADS-B USB Receiver with Built-in Filter (18.95 USD)

  -- https://www.amazon.com/gp/product/B01M7REJJW/ref=oh_aui_detailpage_o00_s00?ie=UTF8&psc=1



[AliExpress]

N-Male to SMA Male Adapter (1.90 USD)

  -- https://ko.aliexpress.com/item/RF-coaxial-coax-N-to-SMA-connector-N-male-to-SMA-male-Plug-adapter-Free-shipping/32531085427.html?isOrigTitle=true


- SMA Female/Male RG58 5M Cable (9.80 USD)

  -- https://ko.aliexpress.com/item/Factory-sales-RF-Coaxial-cable-5M-SMA-to-SMA-connector-SMA-male-to-SMA-female-RG58/32588233061.html?isOrigTitle=true


- SMA Male/Male Pigtail Cable (1.14 USD)

  -- https://ko.aliexpress.com/item/IMC-hot-6-5-Length-SMA-Male-to-SMA-Male-Connector-Pigtail-Cable/32573942384.html?isOrigTitle=true


- Raspberry Pi 3 Model B (37.88 USD)

  -- https://ko.aliexpress.com/item/Original-Raspberry-Pi-3-Model-B-1GB-LPDDR2-BCM2837-64-bit-Quad-Core-1-2-GHz/32623151958.html?isOrigTitle=true



[Danawa]

- MicroSD 32GB (18,800 KRW)

  -- http://prod.danawa.com/info/?pcode=1881487&keyword=microsd%2032g


사실 FlightAware Pro Stick Plus 는 band-pass filter 가 내장되어 있어, ADS-B 1090MHz Band-pass SMA Filter 는 구입할 필요가 없지만

없는것 보단 있는게 좋다고 하는 reviwer 가 있어서 구입했습니다.




3. 구입

구입은 각 사이트에서 결제 했으며, Amazon은 배대지를 사용했습니다.

배송료 포함하여 총 구입비는 대략 18만원 정도 들었습니다. 휴...




4. 도착

찔끔찔끔 도착해서 하나씩 만들어 갔습니다.

마지막으로 SMA Pigtail Cable 은 한달이 넘었지만 아직 도착하지 않았습니다.

다행히 SMA Pigtail Cable 은 중간에 Bandpass filter 와 Stick 연결만을 위함이고, 기기끼리 직접 연결도 되니 당분간 없어도 괜찮습니다.


택배의 배달은 항상 설레입니다.

배달된 구성품들을 사진으로 소개합니다.







Taiwan 생산이네요.



FlightAware 제품에는 모두 명함같은 카드가 들어 있습니다.
























5. OS 인스톨

일단 Raspberry Pi 3 Model B 에 Ubuntu Mate 를 인스톨 합니다.


Ubuntu Mate 는 다음 link 에서 다운로드 받습니다.

https://ubuntu-mate.org/download/



OS 이미지 파일을 받으면 확장자가 xz 입니다. 요즘 뜨는 파일 확장자라고 하네요.

압축을 푸는데 시간은 많이 걸리지만 용량 자체는 많이 줄어드는 것 같습니다.


OS 구축은 다음과 같은 순서 입니다.

"Ubuntu Mate 다운로드 -> unxz 으로 압축 풀기 -> MicroSD 드라이브 확인 -> image 파일을 MicroSD 에 굽기 -> 완료"


아래 사진은 다운로드한 Ubuntu Mate 이미지를 압축 풀고, 설치할 MicroSD 드라이브를 확인하는 과정 입니다.

아래와 같은 경우는 "/dev/sdb" 를 타겟으로 하면 되겠네요.



이미지 굽는 것은 "ddrescue" 코멘드로 실행하라고 하니, "gddrescue" 패키지가 필요합니다. apt-get 으로 인스톨 합니다.



이제 "ddrescue" 로 MicroSD 에 Ubuntu Mate 를 인스톨 합니다.



다음 command 만 따라하면 구축까지 완료 입니다.

wget https://ubuntu-mate.org/raspberry-pi/ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz
unxz ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img.xz

lsblk

apt-get update
apt-get install gddrescue

ddrescue -D --force ubuntu-mate-16.04.2-desktop-armhf-raspberry-pi.img /dev/sdb


Ubuntu MATE 입니다. 안녕하세요.



잘 깔렸네요.





6. PiAware 인스톨

이제 OS 가 준비되었으니, ADS-B 어플리케이션을 설치합니다.


순서는 다음과 같습니다.

piawre repository 인스톨 -> apt-get update -> piaware 및 dump1090 어플 인스톨





명령어는 다음과 같습니다.


wget http://flightaware.com/adsb/piaware/files/packages/pool/piaware/p/piaware-support/piaware-repository_3.5.0_all.deb
sudo dpkg -i piaware-repository_3.5.0_all.deb

sudo apt-get update
sudo apt-get install piaware

sudo piaware-config allow-auto-updates yes
sudo piaware-config allow-manual-updates yes

sudo apt-get install dump1090-fa


위의 과정이 다 끝나면, 기본적으로 OS 와 application 준비는 끝났습니다.

이제 마지막으로 OS 의 안정성을 위해서 컴포넌트 업데이트를 위하여 apt-get upgrade 와

Raspberry Pi 의 firmware 를 업데이트 해줍니다.

apt-get update
apt-get upgrade

rpi-update



7. 기기 연결

Raspberry Pi 3 Model 3 에 FlightAware Pro Stick Plus 를 USB에 연결하면

다음 스샷처럼 Realtek 칩의 "RTL2832U DVB-T" 으로 인식됩니다.



Raspberry Pi 3 Model B 의 CPU 에 멋진 copper heatsink 도 붙여 줍니다.

Copper heatsink 에 대해서는 다음 글을 참고하세요.

http://chocoball.tistory.com/entry/HardwareBMRC1heatsink



일단 베란다에 USB 연장선으로 빼고, 베란다 등에 기기를 걸쳐 놨습니다.



처음에는 RG58 케이블과 N-Male to SMA adapter 가 도착하기 전에는 안테나를 직접 연결할 방법이 없어서,

Airband 트렌시버용 안테나를 붙여 봤습니다.



역시 주파수가 다른지 항공기 1대만 잡을 수 있었습니다.

제대로 잡으려면 주파수에 맞는 안테나가 필요합니다.


케이블이 도착하여 전용 안테나를 연결해 보았습니다. 역시 잡는 항공기 숫자는 많이 늘어납니다.

하루 1대정도에서 30대 정도로 늘어나네요.

다만 밖에 설치를 못해서 일단 빨래 건조대 위에 걸쳐 놨습니다.



빨래 걷다가 케이블이 분리되는 사고가 있었습니다.

SMA 단자가 조금 구부려 졌지만 다시 펴주고 연결하니 문제가 없었습니다.

이런 식으로는 유지할 수도 없거니와 전파를 다 받을 수 없으니 가능한 빨리 밖에 설치하도록 합니다.




8. 실외 설치

역시 안네나는 밖에 설치되어야 합니다.

마침 냉방기를 설치하면서 벾들을 뚫어 놓은, 실외기 연결 통로를 이용해 보기로 합니다.


막음재 살짝 옆을 드릴로 구멍을 뚫습니다.



베란다에서 밖으로 나가는 통로도 구멍을 뚫고 케이블을 밖으로 뺍니다.



베란다 난간에 안테나를 고정 시킵니다.

다행이 난간 두께가 딱 맞네요.



이 지역은 환절기에 바람이 장난이 아닙니다.

최대한 흔들리지 않게 고정합니다.



밖으로 뺴낸 케이블을 난간으로 이동시킵니다.



줄 길이가 좀 여유가 있어서 흔들거리지 않게 난간을 감아 올라가면서 안테나에 결속 시킵니다.



안테나 - N male adapter - SMA Female cable 을 잘 연결했습니다.

비올때를 대비하여 이 부분은 나중에 방수 테이프로 감아줘야겠습니다.



케이블을 밖으로 빼면서 구멍에 이격이 생겼으니, 벌레들이 들어올 수 있습니다.

실리콘으로 이격된 부분을 매꾸어 줍니다.



장갑... 그까이꺼 필요 없습니다.



이쁘게 발라줍니다.



베란다와 거실 연결통로도 이격부분을 잘 막아 줍니다.



밖에서 올려다 보았습니다.

좋았어! 눈에 잘 띄지 않아! 성공이야!




9. 등록

FlightAware 사이트에 사용자 등록 합니다.





축하합니다. 당신은 이제 FlightAware 의 노예가 되셨습니다.



Personal Station 을 구축하고 data 를 제공하면, Enterprise 급의 서비스를 무료로 이용할 수 있습니다.

즉 FlightAware 사이트에 있는 모든 항공정보 서비스를 무료로 이용할 수 있다는 것이지요.


전 세계에 돌아다니는 비행기를 보고 있으면, 훌쩍 여행을 떠나고 싶어집니다.






10. 결과

밖으로 안테나를 빼면서 효과는 엄청납니다.


먼저 베란다에서 Airband 용 안테나와 그 다음 베란다에서 전용 안테나를 설치했을 때의 결과 입니다.

Airband 용은 빨간색, 전용 안테나는 파란색으로 둘러 쌓아 보았습니다.

.



두둥~!! 마지막으로 실외에 전용 안테나 결과입니다.



데이터가 나오지 않던 Position / Distance 그래프도 나오기 시작했습니다.

하루 600대 이상도 검출하고 position data 는 10만개 이상도 나옵니다.



저 멀리 전라남도 지역부터 검출이 됩니다.

아~ 뿌듯합니다.

하길 잘 했어!




11. 개선 욕심

FlightAware Pro Stick Plus 을 만져보면 조금 따뜻한 감이 있습니다.

Cooling 을 하고 싶은데, 그렇게 되면 플라스틱 하우징을 잘라야 합니다.


구글에서 찾아보면 꽤 많은 사람들이 쿨링 튜닝을 하더군요.


나중에 시간이 나면, 알루미늄 케이스로 바꾸거나 플라스틱 하우징에 구멍을 뚫고, 구리 히트싱크를 붙여볼 생각입니다.

분해는 다음과 같이 가능합니다.

흠흠... 이런 구조군요.











FIN

이제 뭘하지?





Update


외부에 설치한 안테나의 SMA의 연결부분이 노출되어 있어서,

누수의 걱정이 있었습니다.


역시나 확인해 보니, 조금 녹이 슬었네요.



전기절연용 고무 접착테이프 등장입니다.

이 테이프는 일반 끈적끈적한 절연테이프는 아니고, 조금 두꺼우면서 끈적끈적함이 거의 없습니다.

다만, 쭉~ 늘이면서 돌돌 말면 찰싹 달라 붙습니다.



SMA 부분만 말아 봤습니다.

엄청 깔끔하게 실링이 되네요.



N-Male 커넥터 부분도 마져 감아 줍니다.

절연 고무 짱이네요.



이제 비가 와도 걱정 없습니다.



And