SSブログ

日記代わりのまったりブログ。

PSO2はShip5にMILAIでよく現れる。 話しかけると中の人が反応するかも?
『PHANTASY STAR ONLINE 2』公式サイト
http://pso2.jp
-------------------------------------------
[コピーライト]SEGA 『ファンタシースターオンライン2 ニュージェネシス』公式サイト
https://new-gen.pso2.jp/
<お断り>
当ブログの記事は商用・非商用に関わらず引用および転載、URL貼り付け等を一切禁止させていただきます。

Arduino Mega 2560とGT-U7(GPS)を繋いで情報取得してみる [Arduino]

うし、今年始めた音楽以外のお勉強ものでも。

電波時計を自分で作っちゃえ的な発想でGPS時計に気がついたので、基本教育キット買ったときには既に構想していたんですが(^^;

先日、AmazonでPinbotronixが販売しているGPSシールドの「GT-U7」を買ってみました。
ちょっと写真載っける余裕無く弄ってたので文面のみになりますけども;

そのままじゃ配線がつなげないので、付属のピンをまず半田付け。
で、スケッチを指定のURLからDLしてきて、スケッチの中身から配線をみて接続。

ほぼUNOとMEGAでは記述一緒って聞いていたからこれで出来るだろうと思ったら…上手く行かない><;
何でだろう?もしかして初期不良引いた?;みたいな感じで、2個買ってたのでもう片方でも試してみたら同じ動きをする。
てことは壊れてるんじゃなくてなんかが間違ってると。

まーもう簡単接続の記述決まったことやるだけのお話なので、電子知識が少ないから悩む悩むw

とにかく出来ることと言えば接続の設定を変更して変えてみるとかしか出来なくて、それでもなかなか上手く行かないので、保険で他の商品追加購入までして←

USBで接続できるGPSの商品なので、とりあえず電波拾えてるのか調べるためにu-center用意して見てみると、捕捉までいけなくても一応電波は見えてるのがわかる。
てことは、GPSユニットが問題じゃなくて、こっちがなんか間違ってる。
※これに関しては実は車のセッティング用に買ったノートでArduino作業しようとしていたので、デスクトップと比較しながらやったんですが、どうもノートだと若干ドライブ上手く行かないみたいで拾えませんでした;
 (たぶんノートPC自体が古いモデルなので電力不足かもしれない;)

で、何が違うのかよくわからないので、とりあえずArduino本体の差をきちんと把握し直そうという事で、そちらを調べていたら(この考えに行くまでに4時間かかった←)、上手いこと各種Arduinoの差をまとめているサイトを見つける。



…そして知る驚愕の事実。

シリアル接続の出来るポート番号がまるっきり違うじゃねぇか!とw
めっさ基本的な所の確認忘れて悩むとかもう慣れてないの丸出しになるという。

で、対応しているポートにスケッチを描き直して接続したところ、やっとまともに動いてくれて一安心。

ただ、どうも受信感度よろしくないようで、なかなか捉えてくれないんですよねぇ;
しばらくロングドライブさせて一度拾いきってもらうしかないか。
※オンボード充電池で一度捕捉出来れば記録するので、2回目以降はあっという間に情報取得されます。


とりあえず動いて良かった良かったと、電子工作初心者が思うお話でしたとさw


ちなみにタッチスクリーンの付いたスクリーンシールドも買ってみて動かし、綺麗に表示できるのも確認。
SDカードスロット付いてるんだけど、これはきちんと認識して使えるみたい。
送受信ポート違うからMEGAじゃノーサポートって書いてあったけど、これはたまたま一緒だったのかな?
後で調べておきませんとね。


というわけで、まだまだ覚えながらいろいろ作ってみようじゃないですかw

とりあえずの目標はGPS情報をスクリーンに表示。
絵の上に出せるのかなぁ?


<2019/01/18 追記>
とりあえずLCDに表示できるようにプログラミングして見たものの、やはりGPSを上手く捕捉出来なくて先に進まず。
きっちり動いているだけなので本当に受信のみなんだよなぁ;

で、こうなってくると付属のアンテナがダメなんじゃないか?ということで、ちょっと大きなアクティブアンテナを別途購入してみることにしました。
上手く行けば良いのだが…



<2019/01/20 追記>
その後上手く行って、基本的な9時間ずらしでの日本時間表示には成功した物の…やはりプログラミング初心者なのでハマって、夜中の3時に「USTで18時」なので思いっきり「27時」とか出て大笑い。
そしてここで気がつく。
そう、日付がオフセット出来てないのでどのみちそのままじゃダメなんですよね。
で、調べてみたらTimeライブラリってのがあると聞いて、それと紐付けてやると日付まで綺麗に日本時間に合わせられると知って、使い方調べ中ですな。

そして、ある程度動かせるのわかったので、もう実は試作手前の状態でこんな状態になってます(ぇ
DSC_0035.JPG

うん、機械屋なんで接続はわかればそれでおしまいよ。ビバシールドw(基板は設計できない←)
てことで、ある程度作るのはMega2560で試して、その先はnanoで今やってる感じですな。
プログラムのコンパイルで機種間違えるとエラー吐くので、割と最初「これどっちや?」とIDEの接続設定迷うけど、わかってしまえば簡単。

写真のnano基板はAmazonで5個セットで売ってる互換基板です。
なにやらシリアル接続用のチップが違うので、Windows7だとドライバ用意しなきゃいけないらしいですが、Windows10で俺がやってみたところ、勝手にシリアルポートで認識されました。
おそらく正規ドライバがマイクロソフト側に登録されたんやね。

しかし…TimeライブラリとGPSデータのマッチングの記述の仕方をまだ理解できない…;
一度本買ってこないといけないかな?;
(って、GithubでとりあえずDLしてきたら既にサンプルスケッチあるやん←)

<そして上の追記の直後におかわり←>
DSC_0036.JPG
Do it!!!!!

やっぱりTimeライブラリ使わないとダメだね。
サンプルスケッチからいろいろ読み解きながらSerialprintをLCDに切り替えて修正、あとは位置をカッサーターゲット変更して表示。

ちなみに最初何も出ないんでビビるw
これはGPS信号拾い終わってないので沈黙してるだけ。
なので読み込むとすんなり表示されます。

やーこれであとはケース作りだ!!

…あっという間に出来てしまったじゃないか…すごいなフィジカルコンピューティングの世界…

コメント(0) 

コメント 0

コメントを書く

お名前:
URL:
コメント:
画像認証:
下の画像に表示されている文字を入力してください。

※ブログオーナーが承認したコメントのみ表示されます。
スマートフォン専用ページを表示