ドローンのリモートIDを受信して内容を確認するためのメモ

日本のドローンのリモートID仕様についての国土交通省の資料
リモート ID 技術規格書
2. RID 機器等の性能要件
(1) リモート ID 信号(以下「RID 信号」という。)は、Bluetooth 5.x Long Range(以下「Bluetooth 5.x」という。)、Wi-Fi Neighbor Awareness Networking(以下「Wi-Fi Aware」という。)又は Wi-Fi Beacon の無線方式による直接放送方式(RID 機器等から発信された RID 信号を受信機能を有する端末が直接受信する通信方式)により発信されるものでなければならない。
4. RID 信号のデータ形式・通信方式
RID 信号は、ASTM International F3411-19 “Standard Specification for Remote ID and Tracking”(以下「ASTM 規格」という。)の 5.Performance Requirements に従って発信すること(注)。
(注)Wi-Fi Beacon については、ASTM F3411-19 規格に含まれていないが、改訂規格で
は認められたことを踏まえた上で、ASTM F3411-19 規格に準拠したデータ形式での発信
を認める。
結局どういうこと
リモート信号の発信仕様
- Bluetooth 5.x Long Range(以下「Bluetooth 5.x」という。)
- Wi-Fi Neighbor Awareness Networking(以下「Wi-Fi Aware」という。)
- Wi-Fi Beacon の無線方式による直接放送方式(RID 機器等から発信された RID 信号を受信機能を有する端末が直接受信する通信方式)
どれか1つを満たしてれば良いのか?
データ形式
ASTM International F3411-19 “Standard Specification for Remote ID and Tracking” の仕様にしたがって発信する必要があるということか?
なるほど。わからん

今度は、スマホアプリでどんなものがあるのか調査
iOS
- Drone Scanner
https://apps.apple.com/gb/app/drone-scanner/id1644548782
Android

MAVLink にOpen Drone IDというのを見つけた。
MAVLink
小型無人機(UAV)との通信プロトコル
Open Drone ID
直接遠隔識別(DRI)またはリモートID(RID)は、日本、アメリカ合衆国、および欧州連合において、無人航空機(UA)に必須の技術となります。
UAのリアルタイム位置/高度、UAのシリアル番号、オペレーターID/位置情報などのデータは、UAからWi-FiまたはBluetooth経由で送信されます。
Open Drone IDは、RIDのオープンソース実装です。

Open Drone IDメッセージをエンコードおよびデコードするためのCコード関数ライブラリ
下記のアプリ、上記のソースを利用したAndroidアプリだった模様

ここらあたりで、実際にドローン(DJI Air 3S)の電源を入れて、上記調べたiOS/Androidアプリでドローンを検出できるか調べてみた。
アプリ | 結果 |
---|---|
(iOS) Drone Scanner | 検出できない |
(Android) Drone Scanner | 検出できない |
(Android) OpenDroneID OSM | 検出できない |
(Android) opendroneid/receiver-android | 検出できない |
屋内で電源を入れて検証したが、GPSを受信していないとだめなのか、離陸しないとだめなのか?
電源入れただけでリモートID発信するはずなんだけど、スマホアプリだと検出できなかった😭
→リモートIDに関する発信タイミングの仕様について確認する。

リモートIDの発信タイミングについての調査
リモート ID 技術規格書
1.2. RID 機器等の性能要件
(3) RID 信号の発信周期は①~④のすべてについて 1 秒に 1 回以上とし、無人航空機が飛行している間自動的に発信し続けるようにしなければならない。
また、位置、時刻等の動的情報については、情報を取得してから1秒以内を目安に発信しなければならない。
opendroneid-core-c Comparison
2.Open Drone IDのデータを読み取るライブラリ側に、各国のルールがまとまっていて、それを見るに「Transmission time」が「When airborne」になっているので、飛行している時にしか送信されないように見える。
UAS Remote Identification
3.What Information Will be Broadcast
Whether using a Standard Remote ID Drone or a remote ID broadcast module, the message elements must be broadcast from take-off to shutdown.
まとめ
-
を見るに日本のリモートIDの仕様は、「無人航空機が飛行している間自動的に発信し続けるようにしなければならない」とのことなので、離陸から着陸までの間に発信されていて、飛行していない間はリモートIDが発信されないと取れる。
-
を見るに、1. 同様のことが書いてあると思う。
-
はアメリカの仕様なので日本とは厳密に同じではないかもしれないが、DJIのサポートに「the message elements must be broadcast from take-off to shutdown.」という記述がありました。
これをそのまま解釈すると、離陸から着陸後の電源オフまで発信する必要があると読み取れる。
上記をもとに、実際にドローンを実際に飛ばさないと確認出来なさそうなことが分かった。

実際にDJI Air 3Sを飛行させたところ、リモートIDがWi-Fiビーコンとして送信されていることが確認できた。
結果からの確認になるが、マニュアルに記載されていないか確認したところ、日本語マニュアルには記載がなかったが、英語マニュアルに記載があった。
DJI Air 3S 7.11 C1 Certification Direct Remote ID
なお、ブラウザの言語設定が日本語になっていると、DJIの英語サイトにアクセスしても自動的に日本語ページにリダイレクトされてしまうため、DJIサイト下部の言語設定から「英語」に切り替えるとスムーズに確認できる。
すべての機種を確認したわけではないが、DJI製ドローンのリモートIDは、ほとんどがWi-Fiビーコン方式で送信されているようである。