名称 | MIRS2302 技術調査報告書(GPS取得) |
---|---|
番号 | MIRS2302-REPT-0003 |
版数 | 最終更新日 | 作成 | 承認 | 改訂記事 |
---|---|---|---|---|
A1 | 2023.10.27 | 眞邉 開 | 初版 |
本ドキュメントは、MIRSに搭載するiPadよりGPS情報を取得する方法についての調査を行った結果である。
LAN内に接続されるデバイス同士でのGPS情報の取得は困難である。
javascriptの仕様によって、クライアントがhttp通信によって接続されている場合にGPSを取得することが禁止されているためである。
これを回避するためには、GPS専用のI2Cモジュールを用意する必要があるが、精度および予算の問題上断念した。
javascriptにおいてnavigator.geolocation.watchPositionメソッドを使用し GPS情報を取得、POST通信でサーバにデータを蓄積、pythonでプロットする簡易的なwebアプリを作成した。
これを実行しながら学内を移動した結果を下図に示す。
fig1.学内移動のトラッキング結果
上図のように、経度の取得は良好である一方緯度の精度が非常に悪く、屋内を走行するには不向きであることがわかった。
前述した通り、javascriptでGPS情報を取得するためにはSSL通信によって接続されていることが前提条件であることがわかった。 (参考)
LAN内での通信を暗号化するためにはCA証明書を自前で発行し、サーバに配置する必要がある。
しかし、このような方法によってSSL接続を行う場合には証明書が信頼できないとしてブラウザが警告を出したりアクセスを遮断してしまう。
したがって、学内LANおよびMIRSに搭載予定のルータを用いて、iPadのGPSを取得することが困難であると結論づけた。