raspberry pi ZEROを購入したのでとりあえずGPSアンテナ付けて表示させてみようとした。消費電力が低いためモバイルバッテリーで十分動くため、思い付きで。
その際の実施した手順。
GPSユニットはこれ使った。
http://akizukidenshi.com/catalog/g/gM-14541/
はんだ付けとかやりたくないのでUSB接続タイプを選択。u-bloxのM8というチップを搭載しているらしい。Amazonの低価格帯の商品と価格差もほとんどないので秋葉原の店頭で購入。
Windowsでは別途ドライバのインストールが必要。シリアルポートとして認識させるドライバの様だ。Linux系はインストール不要とのこと。インストール後はu-blox社のサイトからユーティリティソフトをダウンロード&インストール。(Win用)
ターゲットの衛星システムとかはここで設定するらしい。よくわからない項目がたくさんあるが、設定を間違えると動作不可になるとのこと。
いじる前に調べた方が良い。自分は調べていないが。
GPSソケットを利用するための作業
ここからはRasberry pi ZERO上での作業
デフォルトのソケットを停止sudo systemctl stop gpsd.socket
無効化する
sudo systemctl disable gpsd.socket
実行結果の確認cgps -s
結果:
cgps: no gpsd running or network error: -6, can’t connect to host/port pair
再実行
ソケットの割り当てを再度行うsudo gpsd /dev/ttyUSB0 -F /var/run/gpsd.sock
再実行cgps -s
実行結果
座標が載ってると場所が特定されてしまうが、まともに受信できていないようなのでそのまま掲載
XGPS
天球上の衛星の位置を確認する(GUI専用)
デスクトップが表示された状態でターミナルにて"xgps"
と入力
実行時には空が見渡せる環境ではなかったので位置表示ができなかった。
raspberry pi の起動時にGPSDをスタートさせる
上記までの設定は再起動すると最初から再実行しなければならない。
デフォルトで実行するために以下のファイルを修正する。
/etc/default/gpsd
以下を変更・追加
#Other options you want to pass to gpsd
GPSD_OPTIONS=”/dev/ttyUSB0″
GPSD_SOCKET=”/var/run/gpsd.sock”
ターミナルに戻って以下のコマンドを実行
sudo systemctl enable gpsd.socket
以下が表示される
Created symlink /etc/systemd/system/sockets.target.wants/gpsd.socket → /lib/systemd/system/gpsd.socket.
続いて以下を実行
sudo systemctl start gpsd.socket
実行後リブートする
リブート後は以下をそのまま実行することができる
pi@rpZERO:~ $ cgps -s