Help us understand the problem. What is going on with this article?

みちびき災危通報をデコードしてみる

みちびき災危通報をデコードしてみる

はじめに

みちびき災害・危機管理通報サービスってご存知ですか?

内閣府のホームページから抜粋

災害・危機管理通報サービス
https://qzss.go.jp/overview/services/sv08_dc-report.html

防災機関から、地震、津波などの災害情報、避難勧告などの発令状況について、みちびきから送信するサービスです。このサービスは、利用者に災害情報などのメッセージを届けるサービスで、L1S信号を受信することができる端末で利用することができます。L1S信号は、衛星測位で一般的に利用しているGPSやみちびきのL1C/A信号と同じ周波数で同じ波形のため、受信機の価格を安く抑えることができます。

GPSの電波を使って空から災害情報が降ってきているらしい。
いままさに大型台風も来ているしどんな情報が流れているのか確認してみた。

SPRESENSEボード

ボードはGPS L1S信号受信機なら何でも良かったんですが、
最近よく耳にするようになったSPRESENSEボードにしました。

購入するまではGPSアンテナも別途用意する必要があると思ってたのですが、GPSチップアンテナ内蔵でした。
しかもこのボード、ソニー製なんですねー。

Arduinoの開発環境がそのまま使えるので、ArduinoにGPSモジュールを別途取り付けるよりお手軽でGood!

開発環境構築

開発環境のセットアップ手順は Spresense Arduino スタートガイド に詳しく載ってますが、
Arduinoを使ったことがある人なら、

  1. ボードマネージャのURLにpackage_spresense_index.json を追加して
  2. ボードマネージャからインストールするだけ

バージョンは最新版v1.4.1(2019/10/12現在)をインストールする必要があるようです。
1181020875836907520.png

GPSサンプル

Spresense Arduino サンプル&チュートリアル に色々なサンプルが用意されています。

他のサンプルは追々確認するとして、今回のテーマはこちら
QZSS 災危通報を出力する

QZQSMというNMEAセンテンスの受信方法が書いてあるけど
実際にデコードしてみないと何が送られてきているのか分からない。

QZQSMデコードライブラリ

というわけで、QZQSM用ライブラリを自作してデコードしてみました。

QZQSMフォーマット

#define QZQSM_ENABLE_DC1  // 緊急地震速報
#define QZQSM_ENABLE_DC2  // 震源
#define QZQSM_ENABLE_DC3  // 震度
#define QZQSM_ENABLE_DC4  // 南海トラフ地震
#define QZQSM_ENABLE_DC5  // 津波
#define QZQSM_ENABLE_DC6  // 北西太平洋津波
#define QZQSM_ENABLE_DC8  // 火山
#define QZQSM_ENABLE_DC9  // 降灰
#define QZQSM_ENABLE_DC10 // 気象
#define QZQSM_ENABLE_DC11 // 洪水
#define QZQSM_ENABLE_DC12 // 台風
#define QZQSM_ENABLE_DC14 // 海上
  • @DisasterRept_QZ というツイッターを見つけたけど、台風情報が一切出てこない。なんでなんだろう。。

  • 国内向けの情報なんだからUTCじゃなくてJSTで送信してくれれば良いのに...>みちびきさん

    • QZQSMのプロトコル内に西暦情報が無いから厳密には日本時間へ変換できない気が...
  • GPSの現在位置をもとに必要な情報をフィルタできるようなフォーマットにしてほしかった

    • サハリン東方で濃霧海上警報とか言われてもピンとこない...

QZQSMライブラリ

自作ライブラリをGitHubにアップしてます。
仕様書からのコピペ量がハンパないのでバグってる可能性大ですがご自由にお使いください。
https://github.com/baggio63446333/QZQSM

Arduinoのlibraies以下にダウンロードして、DcReportMonitorサンプルを実行してください。
SPRESENSEボードがあればそのまま動かせると思います。

以下、男性ホルモン受信中 QZQSM受信中
DCReport.png

さいごに

災害の無い平和な世の中になりますように。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away