Submit Search
Upload
Arduinoとgpsと有効数字
•
Download as PPTX, PDF
•
1 like
•
1,590 views
J
j_rocket_boy
Follow
ArduinoでGPSデータを扱う上で、気をつけるべきことをまとめてみました。 ほかのマイコンでも、応用が利く内容かと思います。
Read less
Read more
Engineering
Report
Share
Report
Share
1 of 7
Download now
Recommended
ウェーブレットと多重解像度処理
ウェーブレットと多重解像度処理
h_okkah
画像処理の高性能計算
画像処理の高性能計算
Norishige Fukushima
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
Norishige Fukushima
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
智啓 出川
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
Takeshi HASEGAWA
Hessian free
Hessian free
Jiro Nishitoba
マルチコアを用いた画像処理
マルチコアを用いた画像処理
Norishige Fukushima
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
RCCSRENKEI
Recommended
ウェーブレットと多重解像度処理
ウェーブレットと多重解像度処理
h_okkah
画像処理の高性能計算
画像処理の高性能計算
Norishige Fukushima
組み込み関数(intrinsic)によるSIMD入門
組み込み関数(intrinsic)によるSIMD入門
Norishige Fukushima
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
2015年度GPGPU実践プログラミング 第6回 パフォーマンス解析ツール
智啓 出川
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
「スプラトゥーン」リアルタイム画像解析ツール 「IkaLog」の裏側
Takeshi HASEGAWA
Hessian free
Hessian free
Jiro Nishitoba
マルチコアを用いた画像処理
マルチコアを用いた画像処理
Norishige Fukushima
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
DEEP LEARNING、トレーニング・インファレンスのGPUによる高速化
RCCSRENKEI
静的型付け言語Python
静的型付け言語Python
kiki utagawa
きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回
Tomoya Kawanishi
R seminar on igraph
R seminar on igraph
Kazuhiro Takemoto
高効率音声符号化―MP3詳解―
高効率音声符号化―MP3詳解―
Akinori Ito
球面フィッティングの導出と実装
球面フィッティングの導出と実装
j_rocket_boy
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
Preferred Networks
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例
Fixstars Corporation
コンピューテーショナルフォトグラフィ
コンピューテーショナルフォトグラフィ
Norishige Fukushima
Halide による画像処理プログラミング入門
Halide による画像処理プログラミング入門
Fixstars Corporation
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII
Sift特徴量について
Sift特徴量について
la_flance
レイトレ空間構造入門
レイトレ空間構造入門
Toru Matsuoka
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
Kazuhide Okamura
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門
雅也 山本
ORB-SLAMの手法解説
ORB-SLAMの手法解説
Masaya Kaneko
Popcntによるハミング距離計算
Popcntによるハミング距離計算
Norishige Fukushima
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
MITSUNARI Shigeo
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
[DL輪読会]逆強化学習とGANs
[DL輪読会]逆強化学習とGANs
Deep Learning JP
remote Docker over SSHが熱い
remote Docker over SSHが熱い
Hiroyuki Ohnaka
Mコネクタの特性インピーダンス
Mコネクタの特性インピーダンス
j_rocket_boy
マイクロストリップラインの曲げ部の解析
マイクロストリップラインの曲げ部の解析
j_rocket_boy
More Related Content
What's hot
静的型付け言語Python
静的型付け言語Python
kiki utagawa
きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回
Tomoya Kawanishi
R seminar on igraph
R seminar on igraph
Kazuhiro Takemoto
高効率音声符号化―MP3詳解―
高効率音声符号化―MP3詳解―
Akinori Ito
球面フィッティングの導出と実装
球面フィッティングの導出と実装
j_rocket_boy
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
Preferred Networks
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例
Fixstars Corporation
コンピューテーショナルフォトグラフィ
コンピューテーショナルフォトグラフィ
Norishige Fukushima
Halide による画像処理プログラミング入門
Halide による画像処理プログラミング入門
Fixstars Corporation
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII
Sift特徴量について
Sift特徴量について
la_flance
レイトレ空間構造入門
レイトレ空間構造入門
Toru Matsuoka
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
Kazuhide Okamura
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門
雅也 山本
ORB-SLAMの手法解説
ORB-SLAMの手法解説
Masaya Kaneko
Popcntによるハミング距離計算
Popcntによるハミング距離計算
Norishige Fukushima
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
MITSUNARI Shigeo
TLS, HTTP/2演習
TLS, HTTP/2演習
shigeki_ohtsu
[DL輪読会]逆強化学習とGANs
[DL輪読会]逆強化学習とGANs
Deep Learning JP
remote Docker over SSHが熱い
remote Docker over SSHが熱い
Hiroyuki Ohnaka
What's hot
(20)
静的型付け言語Python
静的型付け言語Python
きつねさんでもわかるLlvm読書会 第2回
きつねさんでもわかるLlvm読書会 第2回
R seminar on igraph
R seminar on igraph
高効率音声符号化―MP3詳解―
高効率音声符号化―MP3詳解―
球面フィッティングの導出と実装
球面フィッティングの導出と実装
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
[GTCJ2018]CuPy -NumPy互換GPUライブラリによるPythonでの高速計算- PFN奥田遼介
いまさら聞けないarmを使ったNEONの基礎と活用事例
いまさら聞けないarmを使ったNEONの基礎と活用事例
コンピューテーショナルフォトグラフィ
コンピューテーショナルフォトグラフィ
Halide による画像処理プログラミング入門
Halide による画像処理プログラミング入門
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
SSII2019TS: 実践カメラキャリブレーション ~カメラを用いた実世界計測の基礎と応用~
Sift特徴量について
Sift特徴量について
レイトレ空間構造入門
レイトレ空間構造入門
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
遺伝的アルゴリズム(Genetic Algorithm)を始めよう!
TCP/IPプロトコルスタック自作入門
TCP/IPプロトコルスタック自作入門
ORB-SLAMの手法解説
ORB-SLAMの手法解説
Popcntによるハミング距離計算
Popcntによるハミング距離計算
AVX-512(フォーマット)詳解
AVX-512(フォーマット)詳解
TLS, HTTP/2演習
TLS, HTTP/2演習
[DL輪読会]逆強化学習とGANs
[DL輪読会]逆強化学習とGANs
remote Docker over SSHが熱い
remote Docker over SSHが熱い
More from j_rocket_boy
Mコネクタの特性インピーダンス
Mコネクタの特性インピーダンス
j_rocket_boy
マイクロストリップラインの曲げ部の解析
マイクロストリップラインの曲げ部の解析
j_rocket_boy
わかものハムの集い3 テーマ発表 アンテナ小僧 発表資料
わかものハムの集い3 テーマ発表 アンテナ小僧 発表資料
j_rocket_boy
高周波とVNAとアンテナエレメント長の調整
高周波とVNAとアンテナエレメント長の調整
j_rocket_boy
次期水ロケットの展望
次期水ロケットの展望
j_rocket_boy
ペットボトルロケットの水の量
ペットボトルロケットの水の量
j_rocket_boy
えだまめ作戦【CanSat】
えだまめ作戦【CanSat】
j_rocket_boy
えだまめ作戦です!
えだまめ作戦です!
j_rocket_boy
More from j_rocket_boy
(8)
Mコネクタの特性インピーダンス
Mコネクタの特性インピーダンス
マイクロストリップラインの曲げ部の解析
マイクロストリップラインの曲げ部の解析
わかものハムの集い3 テーマ発表 アンテナ小僧 発表資料
わかものハムの集い3 テーマ発表 アンテナ小僧 発表資料
高周波とVNAとアンテナエレメント長の調整
高周波とVNAとアンテナエレメント長の調整
次期水ロケットの展望
次期水ロケットの展望
ペットボトルロケットの水の量
ペットボトルロケットの水の量
えだまめ作戦【CanSat】
えだまめ作戦【CanSat】
えだまめ作戦です!
えだまめ作戦です!
Arduinoとgpsと有効数字
1.
ArduinoとGPSと有効数字 2017年6月1日 ロケット小僧@j_rocket_boy
2.
目的 • GPSモジュールから手に入る数値の精度の検討 (NMEA-0183フォー マット) •
Arduino上での扱い方を検討する。
3.
NME-0183フォーマット • 大抵のGPSモジュールから出てくる文字列データ • 今回はGGAメッセージの緯度経度データを使うことにする •
GGAメッセージの例 • $GPRMC,085120.307,A,3541.1493,N,13945.3994,E,000.0,240.3,1812 11,,,A*6A 緯度 dd mm.mmmm 経度 ddd mm.mmmm dd[°] mm[分]
4.
GPSデータを格納するために必要な精度 • 分が少数第4位まであることが多い。(秋月 みちびきGPSなど) •
0.0001 / 60 = 1.67 × 10^-5 • 経度の場合、整数部が3桁あるので、10進数で8桁あれば足りる。
5.
Arduinoで扱える実数 • float • 32ビット •
2進数で24桁精度 ≒ 10進数で7桁 → 一桁足りない • Double • 64ビット • 2進数で53桁精度 ≒ 10進数で15桁 → 足りる • Arduinoではfloatと同じ実装のため、精度は上がらない。 • http://www.musashinodenpa.com/arduino/ref/index.php?f=0&pos=1 252 • http://www.cc.kyoto-su.ac.jp/~yamada/programming/float.html
6.
floatでGPSのデータを保持すると • 1桁落ちる可能性がある。 • GPSからのデータ8桁 •
float型7桁 • 7桁の精度で、距離誤差がどれくらいあるか。 • 地球を完全な球体と考えると、1°あたりの距離はあらゆる地点の緯度方向 と赤道上の経度方向が最も長い。 • 地球の大円の長さを4万kmとすると • 4×10^7[m] / 360[deg] = 1.11×10^5 [m/deg] • 経度は整数部で3桁取られる → 小数第4桁まで保持できる • 10^-4[deg]とは、どれくらいの距離か → 10mオーダー • 1.11×10^5[m/deg] * 10^-4[deg] = 11.1 [m]
7.
解決方法 • 10m精度で諦める。 • 画像認識なら、10m程度でも誘導できるかもしれない。 •
度、分、秒で変数を分ける • 度(int 16bit) • 分(int 16bit) • 秒(float 32bit) など • 秒は4桁分(□□△△.○○○○ 分の○の部分)のため、floatで十分足りる
Download now