BeagleBoneGreenにGPSモジュールを接続してGPSを受信できるようにします。
#材料
使用したGPSモジュールはスイッチサイエンスのESPr® Developer用GPSシールド
u-bloxのアンテナ一体型モジュールSAM-M8Qを搭載しています。
https://www.switch-science.com/catalog/3480/
旧世代の6シリーズモジュール搭載基板は安価でいくつかありますが、最新M8シリーズはあまり見つかりませんでした。
u-blox最新モジュールを使いたい場合はEVKを購入する手がありますが、2万円位します。
このSAM-M8Qモジュール搭載シールドであれば別途アンテナを用意する必要が無くコンパクトに収まります。
ホットスタート&ウォームスタートができるようにコイン電池ものせられるようにします。
スイッチ付きですのでコールドスタートの実験もやりやすいです。
20mmコイン電池・ピッチ変換基板(スイッチ付き)
https://www.switch-science.com/catalog/1778/
https://www.adafruit.com/product/1871
BeagleBone用のユニバーサル基板に実装します。
BeagleBone Black用 ユニバーサル基板23 スタック-きばん本舗
https://www.amazon.co.jp/gp/product/B00NM2NSO8/ref=ppx_yo_dt_b_asin_title_o01_s00?ie=UTF8&psc=1
http://kibanhonpo.shop-pro.jp/?pid=80216183
回路図、データシートは各リンク先から参照して下さい。
BeagleBoneGreenの端子はメーカーwikiで確認できます。
http://wiki.seeedstudio.com/BeagleBone_Green/
#組立
以下を接続します。
-GPSシールドのJP2-3pin IO4 と ユニバーサル基板の J19(J9)-26pin
-GPSシールドのJP2-6pin IO6 と ユニバーサル基板の J19(J9)-24pin
-GPSシールドのJP1-10pin +3V3 と ユニバーサル基板の 3.3V
-GPSシールドのJP2-10pin GND と ユニバーサル基板の GND
-GPSシールドのJ1-1pin BACKUP と コイン電池基板のSW
-コイン電池基板の GND とニバーサル基板の GND
BeagleBoneGreenのUART1のTX,RXに接続するようにしました。
UART2はGrove Interfaceコネクタと共用になっています。電気的にもつながっていますのでUART2を使う場合は注意が必要です。
GPSシールドのTXD,RXD端子はデフォルトではSAM-M8Qに接続されていません。IO4とIO6に接続されいます。
GPSシールドのRESET端子は接続しなくても大丈夫です。モジュール内部で11kΩでプルアップされています。
RESET端子を接続する場合、出力端子はオープンドレイン出力に設定する必要があります。SAM-M8Q Hardware Integration Manualの2.1 Pin descriptionにH電圧を印加しないよう注意書きがあります。
実装後の写真。余っていたOSコン(16V47uF)とセラコン(50V0.1uF)もつけました。
BeagleBoneGreenに載せた状態。ケースに収まらないので底板以外は外しました。
#設定
BeagleBoneGreenはデフォルトではUART端子が有効になっていませんので設定を変更します。
$ config-pin p9.24 uart
$ config-pin p9.26 uart
cat でシリアル通信の受信を確認します。
$ cat /dev/ttyS1
NMEAの電文が表示されれば成功です。デフォルトの9600bpsで表示されるはずです。測位に成功するとNMEAに位置情報が出力され、GPSシールドの1SEC LEDが点滅します。