Raspberry Piで航空機のADS-Bを受信してみました “NooElec R820T SDR & DVB-T MESDR Mini dump1090” (1)

先日来、TALKしている通り、Raspberry Piの基本構成を準備できたこと(“Raspberry Piを始めることにしました (1) “必要なものを揃えるところから”“)、断捨離の成果のひとつとして、電子工作のスペースが確保できたこと(“自分的断捨離も一段落したので、電子工作用の作業スペースを用意してみました“)で、そろそろPOOHっぽい工作をスタートしたいと思っていました。

で、このタイミングで、ネットを絡めた温度や湿度等のセンサー作りっていうのも新鮮さに欠ける(いずれはトライしようと思っていますが。)ので、いろいろ考えた末、やっぱりヒコーキ関連のアイテムにフォーカスした方が、自分っぽいよなあ、と思い、”Flightradar24 | Flight Tracker – Flightradar24 AB“でもお馴染みの”ADS-B“の受信に挑戦してみることに決めました。

 

(1) NooElec R820T SDR & DVB-T MESDR Mini dump1090を米国アマゾンで購入

“ADS-B”は、”Automatic Dependent Surveillance-Broadcast”の略なわけですが、空を飛んでいるヒコーキは、お互いの衝突を避ける目的で、1090MHzの周波数で、識別子、現在位置、高度、対気速度といったデータを送信しています。

で、”ADS-B”信号を手軽に受信できるデバイスが、”SDR“や”DVB-T“などを受信できる”R820T”というチップを使用したUSB”ドングル“です。

日本のアマゾンで検索してみると、”DVB-T+DAB+FM USB チューナー RTL2832U+R820T“といった製品がヒットします。これらの製品はメチャメチャ安価なんですが、なかには900MHz近辺までしか受信できないものもあるようなので、安いけど当たりハズレがあるみたいです。

いくら安くても使えない可能性があるのもツライので、POOHの場合は、25MHz-1700MHzの範囲で受信できる”NooElec R820T SDR & DVB-T MESDR Mini“という定番製品を購入しました。

気になるお値段ですが、

でした。注文してから、約2週間ぐらいで届くので、この値段と納期ならリーズナブルですよね。

p.s>

実は、ADS-B専用ということで評判の良い”FlightAware Pro Stick Plus“という製品が気になったのですが、残念なことに日本では未発売。米国アマゾンですと、日本への配送はNGですが、中国のネットショップやヤフオク等で手に入れることもできますが、とにかくお値段が高め。どこかの国内のネットショップで、リーズナブルなお値段で販売してくれないかなあ。

 

(2) macOSで試してみたのですが…

ネットで調べてみると、

dump1090 on Mac OS X El Capitan Quick Start Guide“とか、

Getting RTL SDR and dump1090 running on OSX El Capitan“などなど、参考になりそうなサイトがいろいろ見つかります。

セットアップのおおまかな手順としては、

(a) “RTL SDR“をインストールして、USBドングルを使えるようにする。

 

(b) “Dump1090“というパッケージをインストールして、受信した”ADS-B信号”を可視化する。

といった2段階なのですが、なぜか”Dump1090″をmakeする段階で、”x86_64″アーキテクチャに適したシンボルが見つからない、というエラーが発生してしまいました。こういった技術には疎いので、いまのところ、原因と対策が分かりません。引き続き、トライは続けるつもりなのですが、まずは先に進む、というスタンスで、Raspberry Piのセットアップを行うことにしました。

 

(3) Raspberry Piでセットアップしてみました

Raspberry Pi環境でのセットアップ方法については、ネット上に山のようにあります。むしろ、どのサイトを参照したら良いのか迷うほどです。(情報的に古いモノも多数あるので。)

そんななかで、POOHは、トラブルシューティングに関しても詳しく指南してくれている

Installing rtl-sdr and dump1090 on a Raspberry Pi to receive ADS-B signals“というサイトを主に参照させてもらいました。

ただ、何事もなくセットアップが完了、ということにはならず、上記のサイトに記載の通り、2つのエラーに遭遇してしまいました。

 

(a) “RTL SDR“をインストール後、USBドングルの情報を表示する”rtl-test”というコマンドを打つと、

“usb_open error -3

Please fix the device permissions, e.g. by installing the udev rules file rtl-sdr.rules”というエラーが表示されました。

詳しいことは分からないのですが、恐らく、USBドングルへのアクセス権がないので、”/etc/udev/rules.d/”というフォルダにある”trl-sdr.rules”というファイルで、USBドングルへのアクセス権を定義する必要がある、ということだと思います。

POOHの場合は、該当ファイルがなかったので、新規に作成しつつ、所定のフォルダに移動してみました。とは言え、所定のフォルダには、”root”権限がないとファイルの書き込みができないので、UNIX系に疎いPOOHとしては、手探りで何とか対処した次第です。ふう。

あ、ちなみに、”trl-sdr.rules”に書き込む内容のベースになるデータは、”lsusb”コマンドで確認できます。

 

(b) エラー “-3″が解決してホッとしていた直後、”rtl-test”というコマンドを打つと、

“usb_claim_interface error -6 Failed to open rtlsdr device #0.”というエラーが表示されました。

で、こちらへの対処は、上記のサイトに記載の通り、”sudo rmmod deb_usb_trl28xxu”と打つことで解決。

 

紆余曲折を経た結果、”./dump1090 –interactive”コマンドで、Raspberry Pi上のターミナルに可視化済のADS-B信号を表示できますし、

“./dump1090 –net –interactive”コマンド投入により、macOS側の”Safari”でも、こんな感じで、”ADS-B”信号の可視化に成功しました。

ちなみに、”Safari”でのアクセス先の”URL”ですが、”Raspberry Pi本体のIPアドレス” + “:8080″です。

“Raspberry Pi本体のIPアドレス”は、Raspberry Pi上のターミナルで、”ifconfig”コマンドを打って、”wlan0″欄に表示されたIPアドレスをチェックすればOKです。

 

今回は、自宅の書斎で動作確認テストを行ったので、受信できるADS-B信号は多くても、一度に4〜6件程度でした。でも、我が家は、マンションのベランダから、”羽田空港“の管制塔やターミナル等が見えるロケーションにあるので、一連のセットアップが完了したタイミングで、空港に近いベランダ近くに、Raspberry Piを設置し直そうかなあ、と思っています。

 

(4) 電子工作スペースを若干整理整頓してみた

というわけで、何とか、スタートラインに付くことができた感じです。

この後も、引き続き、今回セットアップしたRaspberry Pi環境のブラッシュアップ、例えば、固定IP化だったり、Flightradar24へのフィードだったりを段階を追って進めていこうと思っています。あ、それと、今回は先送りにしてしまったmacOS環境上のセットアップも成功させたいと思っています。

そういった気持ちを込めて、”ニトリ“と”百均“で買ってきたアイテムを使って、電子工作スペースを整理整頓。投資コストは、1000円前後です。

 

(5) Raspberry Piでキャプチャした画像ファイルをmacOSにコピーする

 

(a) Raspberry Pi環境で、画面のキャプチャを撮る

Raspberry Pi環境で、画面のキャプチャを撮りたい場合、初心者でも簡単に使える”KSnapshot“がお薦めです。

Raspberry Pi でスクリーンショットを撮る“辺りを参照すれば、セットアップ手順と使用方法が一目瞭然に理解できるかと思います。

 

(b) Raspberry Pi環境で撮ったキャプチャの画像ファイルをmacOSに転送する

Raspberry Pi環境で撮ったキャプチャの画像ファイルをmacOSに転送する、最もお手軽な方法は、macOS上で、SFTPクライアントアプリを使うことです。

Raspberry Piって、小さいのに、ちゃんとSFTPサーバが立ち上がっているので、この方法が一番簡単、かつ確実だと思います。

POOHの場合は、個人で、Webサーバと”WordPress“サーバを運営しているので、日頃から、”Fetch – Fetch Softworks“を愛用しています。

SFTPサーバのアドレスは、先程触れた”ifconfig”コマンドでチェック。

Raspberry Piをデフォルトのまま使っている場合は、Usernameが”Pi”、Passwordが”Raspberry”です。

随分と端折った内容でTALKを進めてしまいましたが、ま、全体の雰囲気は掴んでいただいたかと思います。

今回はここまで、ということになりますが、このネタに関しては、まだまだ続編を書けそうなので、時間を見つけつつ、頑張って継続していければと思っています。お楽しみに!

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

ラズベリー・パイで遊ぼう! [ 林和孝 ]
価格:2160円(税込、送料無料) (2017/4/18時点)

[商品価格に関しましては、リンクが作成された時点と現時点で情報が変更されている場合がございます。]

Gitが、おもしろいほどわかる基本の使い方33 [ 大串肇 ]
価格:2160円(税込、送料無料) (2017/4/18時点)

ホームページ”THE POOH FILES”にも是非お立ち寄り下さい。

tomohiko

長年に渡りMacintosh向けの自作アプリを作り続けているPOOHです。最近はiPhone,iPad向けアプリ開発にも挑戦中。グルメ、旅行、露天風呂、写真、サイクリング、映画、STAR TREKが大好き。レトロでSFなおもちゃを大量にコレクション。プレーリードッグと同居中。

おすすめ

コメントを残す