Categories: 工作・開発

ラズパイ2台で飛行機を自動追跡、サーボカメラが空を狙う自作システム

旅客機が頭上を通過するのは、それなりに身近な光景だ。空港の滑走路近くなら毎日飛んでくるし、内陸でも遠くを飛ぶ機影は意外と多い。英国在住のメイカーPrzemek Wasinski氏(Reddit ID:starvinghippo677)は、頭上を通る機体を勝手に検出し、サーボモーターでカメラを向けて自動撮影するシステム「Optical Aircraft Tracker」を1年がかりで自作し、ソースコード一式をGitHubで公開した。

仕組みはシンプルで、Raspberry Pi 4を2台に役割を分担させる。1台目「Plane Tracker」はADS-B(航空機が自機の位置や高度を1090MHz帯で常時発信する仕組み)信号を、60cmのアンテナとUSB接続のRTL-SDR(Realtek製のソフトウェア無線受信機)で受信。受信信号はオープンソースの「Dump1090」でJSONに復号し、Pythonで自作したGUI(Pygame使用)にレーダー風画面で表示する。緯度経度をピクセル座標に変換することで、各機の現在位置や軌跡、高度、機体型式、運航会社などが一目で分かる。Wasinski氏の環境では英国にいながらフランスやベルギー上空を飛ぶ機体まで、最大約150海里(278km)先まで捕捉できているという。

2台目「Plane Cam」は撮影専用のRaspberry Pi 4だ。Plane Trackerが「機体が十分近い」と判定すると、対象機の緯度・経度・高度がローカルネットワーク経由で送られる。Plane Camは座標と自分の設置位置から、パン・チルトに必要なサーボ角度(MG996Rサーボモーター駆動)をC++で計算し、Raspberry Pi High Quality CameraとArducam 8-50mm望遠レンズを目標機に向ける。撮影後はOpenCVで画像内に機体が写っているかを検証し、結果と画像をPlane Tracker側に返す。

Wasinski氏は今後、ビデオ録画と動体追従、収集データを使った飛行経路予測の機械学習モデルを追加したいとコメントしている。リポジトリ「PlaneTracker」「PlaneCam」はそれぞれ独立して公開されており、ラズパイ・RTL-SDR・サーボとカメラがあれば再現できる。

関連情報

FabScene編集部

FabScene編集部