CircuitPython 10行プログラミング (11) UART GPS
Trinket M0マイコン・ボードとCircuitPythonを使ってGPS受信機で位置情報を取得します。
秋月電子通商からGNSS受信機キットを入手しました。3mのケーブルのついたアンテナもセットになっているので、実験場所からGPS衛星が見えるはなれた窓際に設置できます。GNSSとは、アメリカのGPS、ロシアのGLONASSからの情報と準天頂衛星「みちびき」による補強信号を受信して、誤差の少ない測定ができる全球測位衛星システムです。
デバイスは台湾メディアテックのMT3333を使っています。日本の準天頂衛星システム(QZSS)「みちびき」3機受信に対応していますが、報道で伝えられる10cmの誤差で計算できるわけではないようです。cm級の受信にはL6信号を解読しないといけません。
●接続
TxD/RxDの信号レベルは3.3Vなので、互いに直接つなげられます。
GNSS受信機 | Trinket M0 |
---|---|
VDD5V | USB |
GND | GND |
TxD | Rx |
RxD | Tx |
1PPS | - |
●GPSライブラリ
こちらからadafruit_gps.mpyをダウンロードします。CIRCUITPYドライブのlibフォルダにコピーします。ダウンロードしたファイルの中に入っているサンプルgps_simpletest.pyをMuエディタに貼り付けて、変更せずに保存しました。
実行中の様子です。
Latitude: 35.xxxは緯度35度、Longitude: 139.xxxは経度139度です。出てきた数値を地理院の検索に入れると、アンテナがある場所の地図が表示できます。