Memorandumの小部屋
本ページは金銭授受を伴う行為を含むAuctionや商用Web
Pageからの無断リンク・無断参照を禁じます。
無断リンク・無断参照が判明した時点で然るべき処置をとらさせて頂きます。
電池ボックス電子工作(その14)
いつどこGPSロガー5 ( SDメモリ・一体型・別給電 )
1.背景
秋月電子通商で安価に販売の「RS232Cレベルコンバータ内蔵 GPSモジュール GT−720F」がなぜ安価なのかよくわかりませんが、安かろう、悪かろうとの先入観を持っていたので敢えて製作をしていませんでした。 しかし、店頭でつい衝動買いしてしまい、そのままにする訳にもいかず、GPSロガーに組み上げることにしました。
今回は、「RS232Cレベルコンバータ内蔵 GPSモジュール GT−720F」の消費電流が大きいのでポータブルには向かないと判断しましたのでパソコン接続用として、「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」ベースで、電源を外部給電することで製作しました。
2.いつどこGPSロガー5 ( SDメモリ・一体型・別給電タイプ )の製作
2.1 製作仕様概要
今回の製作は「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」をベースにして秋月電子通商の「電池ボックス 単4×4本用(フタ付プラスチック・スイッチ付)単四電池ボックス[SBH-441AS]」に収納することにしました。
主たる仕様を下記します。
GPSモジュール |
CanMore Electronics Co., Ltd. GT-720 |
測地系 |
測位系選択不可能 (WGS-84) |
SDメモリ種 |
マイクロSD |
SDメモリ容量 |
16MB〜1GB (SDHC非対応) |
SDメモリ読み出し |
RS−232による読み出し(bps設定はPICマイコンで設定可) メモリカードをPCで読み出し不可 |
記録間隔 |
1秒〜255秒間隔で設定可能。 GPSデータ保存間隔設定選択スイッチ入力により2種類の設定のいずれかを選択可能。 |
記録時間 |
2.2項参照 (16MBで5日以上) |
記録データ |
時刻(UTC) 、 緯度 、 経度 、 衛星数 、 測位状態 、 アンテナ高度 、 ジオイド高度 、 年月日、 方位 、 速度 |
電源 |
外付け(3〜5V) |
PICマイコンソフト |
本製作例も非公開とします。 |
なお、以下の説明でEEPROMに関して2通りの表現が記載されています。 夫々の意味は下記のようになります。
PIC-EEPROM |
「いつどこGPSロガー」を制御するPICマイコンに内蔵されているEEPROMです。 このEEPROMの設定値で「いつどこGPSロガー」の動作を設定します。 |
SDメモリ |
GPSモジュールのデータを格納する別設置のSDメモリ(EEPROM)です。 この SDメモリ(EEPROM)にGPSデータが格納されます。 |
2.2 記録メディア、記憶容量、記録方法
本製作例も「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」と同一仕様ですので、以下のようになります。
SDメモリ容量 |
User Area |
使用可能最終アドレス+1 |
GPS用 |
連続記録日数 |
16M |
28,800 |
$00E1 0000 |
460,800 |
5日8時間0分0秒 |
32M |
59,776 |
$01D3 0000 |
956,416 |
11日1時間40分16秒 |
64M |
121,856 |
$03B8 0000 |
1,949,696 |
22日13時間34分56秒 |
128M |
246,016 |
$0782 0000 |
3,936,256 |
45日13時間24分16秒 |
256M |
494,080 |
$0F14 0000 |
7,905,280 |
91日11時間54分40秒 |
512M |
940,864 |
$1CB6 8000 |
15,053,824 |
174日5時間37分4秒 |
1GB |
1,983,744 |
$3C8A 0000 |
31,739,904 |
367日8時間38分24秒 |
多分、最後まで書込みをすることは無いと思いますが、SDメモリの最終アドレスに達した場合に、以下の2通りをPIC-EEPROMの設定で選択できるようにします。
Singleモード |
それ以上の書き込みを終了し、GPSモジュールの電源をオフする。 つまり、SDメモリの最初のデータを必ず残したいときに選択します。 |
上書きモード |
SDメモリの先頭アドレスから上書きするモード。 延々を保存を繰り返します。 つまり、最新のデータを優先して残したいときに選択すます。 ただし、終了方法は「いつどこGPS」の電源をオフする方法しかありませんので、 SDメモリへの書き込みタイミングをLED状態(LED3(青色)点灯⇒消灯)で確認して電源をオフしてください。 このタイミングをずらすと、最新の取得データのいくつかを失うことになります。 |
2.3 GPSデータ保存フォーマット
本製作例も「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」と同一仕様ですので、以下のようになります。
時刻 (UTC:日本時間−9時間)
N/S、緯度
E/W、経度
衛星数
測位状態(測位不可時は記録しませんので結果的には常時1。)
2D/3D測位
アンテナ高度
ジオイド高度
年月日
方位
速度
SDメモリに保存する際、1回の測定データの所要容量はキリのよいように 32バイトとし、データフォーマットを以下のようにしました。
アドレス |
b7 |
b6 |
b5 |
b4 |
b3 |
b2 |
b1 |
b0 |
+0 |
GPS測位 |
測位データ正常受信 = 1 |
時間 ×10時間桁 |
時間 ×1時間桁 BCD Data |
||||
+1 |
時間 ×10分桁 BCD Data |
時間 ×1分桁 BCD Data |
||||||
+2 |
時間 ×10秒桁 BCD Data |
時間 ×1秒桁 BCD Data |
||||||
+3 |
H’0E’ (「.」の下位4ビット) |
時間 ×0.1秒桁 BCD Data |
||||||
+4 |
時間 ×0.01秒桁 BCD Data |
時間 ×0.001秒桁 BCD Data |
||||||
+5 |
緯度 ×10°桁 BCD Data |
緯度 ×1°桁 BCD Data |
||||||
+6 |
緯度 ×10分 桁 BCD Data |
緯度 ×1分 桁 BCD Data |
||||||
+7 |
H’0E’ |
緯度 ×0.1分 桁 BCD Data |
||||||
+8 |
緯度 ×0.01分 桁 BCD Data |
緯度 ×0.001分 桁 BCD Data |
||||||
+9 |
緯度 ×0.0001分 桁 BCD Data |
北緯 = 1 |
東経 = 1 |
測位不能 = 1 |
||||
+10 |
経度 ×100°桁 BCD Data |
経度 ×10°桁 BCD Data |
||||||
+11 |
経度 ×1°桁 BCD Data |
H’0E’ |
||||||
+12 |
経度 ×10分 桁 BCD Data |
経度 ×1分 桁 BCD Data |
||||||
+13 |
経度 ×0.1分 桁 BCD Data |
経度 ×0.01分 桁 BCD Data |
||||||
+14 |
経度 ×0.001分 桁 BCD Data |
経度 ×0.0001分 桁 BCD Data |
||||||
+15 |
衛星数 10個桁 BCD Data |
衛星数 1個桁 BCD Data |
||||||
+16 |
アンテナ高度 ×10000m 桁 BCD Data |
アンテナ高度 ×1000m 桁 BCD Data |
||||||
+17 |
アンテナ高度 ×100m 桁 BCD Data |
アンテナ高度 ×10m 桁 BCD Data |
||||||
+18 |
アンテナ高度 ×1m 桁 BCD Data |
H’0E’ |
||||||
+19 |
アンテナ高度 ×0.1m 桁 BCD Data |
ジオイド高度 ×1000m 桁 BCD Data |
||||||
+20 |
ジオイド高度 ×100m 桁 BCD Data |
ジオイド高度 ×10m 桁 BCD Data |
||||||
+21 |
ジオイド高度 ×1m 桁 BCD Data |
H’0E’ |
||||||
+22 |
ジオイド高度 ×0.1m 桁 BCD Data |
日付 10日桁 BCD Data |
||||||
+23 |
日付 1日桁 BCD Data |
日付 10月桁 BCD Data |
||||||
+24 |
日付 1日桁 BCD Data |
日付 10年桁 BCD Data |
||||||
+25 |
日付 1年桁 BCD Data |
方位 ×100°桁 BCD Data |
||||||
+26 |
方位 ×10°桁 BCD Data |
方位 ×1°桁 BCD Data |
||||||
+27 |
H’0E’ |
方位 ×0.1°桁 BCD Data |
||||||
+28 |
方位 ×0.01°桁 BCD Data |
速度×1000m 桁 BCD Data |
||||||
+29 |
速度×100m 桁 BCD Data |
速度×10m 桁 BCD Data |
||||||
+30 |
速度×1m 桁 BCD Data |
H’0E’ |
||||||
+31 |
速度×0.1m 桁 BCD Data |
速度×0.1m 桁 BCD Data |
なお、各数値データ単位についてゼロサプレス対応としています。 小数点を含む数値の場合はH’0E’(「.」 )の位置が上位桁位置にずれ、小数点側に”0”が追加されます。 衛星数など整数の場合は下位側に”F”が書き込まれます。 数値に戻す場合は”F”を読み飛ばしてもとの数値に戻しています。
2.4 測位系選択
GPSモジュール自体は下記選択できるようですが、「Binary Message Protocol User’s Guide」が入手できておりませんのでデフォルトのWGS−84で使用します。
WGS-84
TOKYO Mean Solution
TOKYO Japan
TOKYO Korea
TOKYO Okinawa
2.6 PICマイコン IOピン割り当て
本製作例も「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」と同一仕様ですので、基本的には同じですが、GPSモジュールの電源オンオフをしない仕様としましたので、RB7をGPSモジュールのRS−232C送信マスク信号に変更します。
PIN |
信号 |
方向 |
信 号 |
1 |
RA2 |
出力 |
マイクロSDメモリ DI信号 |
2 |
RA3 |
入力 |
マイクロSDメモリ DO信号 |
3 |
RA4 |
入力 |
SDメモリクリヤモード選択入力。 |
4 |
RA5 |
入力 |
GPSデータ保存間隔設定選択スイッチ入力。 |
5 |
Vss |
GND |
電源グランドライン |
6 |
RB0 |
入力 |
モード切替スイッチ信号。 |
7 |
RB1/RX |
入力 |
シリアル通信入力 |
8 |
RB2/TX |
出力 |
シリアル通信出力 |
9 |
RB3 |
出力 |
圧電プザー用オンオフ信号。 (クロック信号であり、レベル信号ではありません。) |
10 |
RB4 |
出力 |
LED1出力 (緑色) |
11 |
RB5 |
出力 |
LED2出力 (赤色) |
12 |
RB6 |
出力 |
LED3出力 (青色) |
13 |
RB7 |
出力 |
GPSモジュールRS−232CのTX信号用マスク信号。 |
14 |
Vdd |
Vcc |
+電源ライン。 |
15 |
OSC2 |
発振 |
セラミック振動子 10MHz |
16 |
OSC1 |
発振 |
セラミック振動子 10MHz |
17 |
RA0 |
出力 |
マイクロSDメモリ クロック信号 |
18 |
RA1 |
出力 |
マイクロSDメモリ チップセレクト信号 |
2.7 PICマイコン EEPROM割り当て、及び、プログラムのダウンロード
本製作例も「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」と同一仕様(2010年1月版)ですので、以下のようになります。
PICマイコン内のEEPROMのデータ設定を下記に記載します。
アドレス |
データ内容 |
デフォルト |
|||||||||||||||||||||
$00 |
GPSデータ保存間隔設定1。 JP1−2(RA5)=High時選択。 0、1:連続 N(2〜255):GPSモジュールからのデータをN回受信して1回だけ記録する。 |
’01’ |
|||||||||||||||||||||
$01 |
GPSデータ保存間隔設定2。 JP1−2(RA5)=Low時選択。 0、1:連続 N(2〜255):GPSモジュールからのデータをN回受信して1回だけ記録する。 但し、本製作例では、切替えスイッチを設けていませんのでこの設定は選択できませんが、この機能は有ります。 |
’02’ |
|||||||||||||||||||||
$02 |
GPSデータ保存開始時先頭アドレス設定 0:空きエリアの先頭ブロックを探し、空きエリアから追加で書込み(追記モード) 1:先頭アドレス$0000 0000から書込み (上書きモード) |
’00’ |
|||||||||||||||||||||
$03 |
SDメモリ最終アドレス書込み後の処理設定。 0:Singleモード (初期データ保存) 1:上書きモード (最新データ保存) |
’00’ |
|||||||||||||||||||||
$04 |
LED1,LED2,LED3信号論理設定 bit4:LED1 、 bit5:LED2 、 bit6:LED3 0:Highレベル出力で点灯するLED使用時。(カソードコモン用) 1:Lowレベル出力で点灯するLED使用時。(アノードコモン用) |
’F0’ |
|||||||||||||||||||||
$05 |
SDメモリ書込時動作 ブザー1s間連続発音/LED1s間連続点灯間隔設定 GPSデータ保存間隔設定1の場合、16s間隔(1ブロック512バイト/32バイト=16)でSDメモリ書込時動作を行う。 書込み動作時に書込みを正常に動作していることを確認できるようにブザー1s間連続発音/LED1s間連続点灯 するようにしている。 この書込み動作確認を、書込み何回毎に行うかを設定するパラメータ。 例1 GPSデータ保存間隔設定1 本設定値=1 間隔=1×16s×1=16 例2 GPSデータ保存間隔設定1 本設定値=2 間隔=1×16s×2=32 例3 GPSデータ保存間隔設定2 本設定値=1 間隔=2×16s×1=32 例4 GPSデータ保存間隔設定2 本設定値=2 間隔=2×16s×2=64 |
’02’ |
|||||||||||||||||||||
$06 |
GPSモジュール通信速度設定 (9600bps相当) SPBRGレジスタの値(10MHz、BRGH=1)
|
’40’ |
|||||||||||||||||||||
$07 |
SDメモリ読み出し速度設定 (57.6kbps相当) SPBRGレジスタの値(10MHz、BRGH=1) |
’0A’ |
|||||||||||||||||||||
$08 |
SDメモリ読み出し状態設定
同一データサイズSDメモリ転送 ASCIIとBinary比較結果例
データサイズが大きくなるにつれて、転送時間が長く、HDD格納サイズが大きくなるためにBinary転送機能を追加した。 |
’00’ |
|||||||||||||||||||||
$09 |
GPS測位系選択有無 0:GPS測位系選択無し 1(0以外):GPS測位系選択設定有り( [$Ack Input106.]応答待ち有り) 今回の製作例はPICマイコンからGPSモジュールへの設定をしていませんので、この機能は使えない。 |
’00’ |
|||||||||||||||||||||
$0A |
GPS測位系選択 0:"$PSRF106,21*0F\r\n" WGS-84設定 1:"$PSRF106,178*32\r\n" TOKYO Mean Solution 2:"$PSRF106,179*33\r\n" TOKYO Japan 3:"$PSRF106,180*35\r\n" TOKYO Korea 4:"$PSRF106,181*34\r\n" TOKYO Okinawa |
’00’ |
|||||||||||||||||||||
$0B |
ブザー発振周期設定 (周波数 = 1/周期) 発振周期 = (設定値+1) * 4 * 16 * 0.1μs 例 : 設定値(22)16=34 → 224μs = 4.46kHz |
’22’ |
|||||||||||||||||||||
$0C |
SDメモリ種類 ’01’=16MB 、 ’02’=32MB、 ’04’=64MB、 ’08’=128MB ’10’=256MB 、 ’20’=512MB、 ’40’=1GB ’00’=Manual設定 (デフォルト) (終了アドレス+1)番地を$0A、$0B、$0Cに設定する。 最終アドレスを小さく制限したい場合などに使用する。 上記以外の設定 = 16MB |
’00’ |
|||||||||||||||||||||
$0D |
$0A=’00’時の(最終アドレス+1)番地を設定。 512バイト単位の設定のためアドレスA8〜A0は内部で0に設定。 $0B:最終アドレス A31〜A24 $0C:最終アドレス A23〜A16 $0D:最終アドレス A15〜A8 デフォルトは4MB相当(1s間隔保存で約36時間) |
$0B=’00’ $0C=’40’ $0D=’00’ |
2.8 各モードの状態
GPSデータ記録モード
機能 |
GPSモジュールのデータをSDメモリに保存。 RS-232CポートからGPSモジュールから取得データが出力されるので、SDメモリにデータを保存しながら 秋月電子通商のHPに掲載されているGtop-Satellite-Viewerでデータを表示することができる。 |
選択方法 |
モード切替スイッチを押しながら電源を投入し、約3秒程度押し続ける。 本モードが選択されたにもかかわらず、LED1の全色(緑色、赤色、青色)が0.2s周期で点滅する場合は、データの上書きししないSingleモードの場合で SDメモリの空き領域が無い場合である。 |
動作中 |
電源投入直後、全LED1が0.5s間点灯し、その後0.1s間消灯する。 ブザー音 RS−232C受信データは「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」を参照。
|
動作終了 |
シングルモード時、SDメモリに空きエリアがなくなった場合、GPSモジュールの電源をオフして 0.4s周期でLED1(青色)を点滅する。 終了方法は電源オフのみ。 |
SDメモリ読み出しモード
機能 |
SDメモリのデータをRS-232Cラインから出力する。 |
選択方法 |
モード切替スイッチを押さず、PICマイコンの3番ピン(PORTA RA4)をHighレベル( (JP1−3 オープン=Highに接続)にして電源を投入する。 |
動作中 |
電源投入直後、全LED1が0.5s間点灯し、その後0.1s間消灯する。 その後、SDメモリの1ページ分のデータを出力する毎にLED1(緑色)→LED1(赤色)→LED1(青色)の順番に点滅を繰り返す。 ブザー音 ブザー未使用 RS−232C受信データは「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」を参照。 |
動作終了 |
SDメモリデータ出力通信終了後はLED1(緑色)を0.4s周期で点滅する。 終了方法は電源オフのみ。 |
SDメモリクリヤモード
機能 |
SDメモリの有効のアドレス全領域に’FF’に書き込む。 追記モードでは測位データはSDメモリの空き領域に追記される。 このため、測位の前に空き領域を作る必要ばあるため、本モードを設けている。 また、過去分のデータが残っていると最新のデータの最終アドレスが分かり辛くなる。 このため、データを全て’FF’でクリヤしてデータの最終アドレスを明確にする。 |
選択方法 |
モード切替スイッチを押さず、PICマイコンの3番ピン(PORTA RA4)をLowレベル( (JP1−3 短絡=Lowに接続)にして電源を投入する。 |
動作中 |
電源投入直後、全LED1が0.5s間点灯し、その後0.1s間消灯する。 SDメモリクリヤ中は、SDメモリの8ページ分書込み毎にLED1(緑色)→LED2(赤色)→LED3(青色)の順番に点滅を繰り返す。 ブザー音 ブザー未使用 RS−232C受信データは「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」を参照。
|
動作終了 |
SDメモリデータ書込み完了後はLED1の赤色を0.4s周期で点滅する。 終了方法は電源オフのみ。 |
3 いつどこGPSロガー5 ( SDメモリ・一体型・別給電タイプ )の製作
3,1 いつどこGPSロガー5 ( SDメモリ・一体型・別給電タイプ ) 回路図
今回の回路図を下記に掲載します。 使用部品などは回路図を参照して下さい。 なお、使用部品の多くは秋月電子通商で購入しています。 マイクロSDカード用のコネクタも秋月電子通商で購入できます。
【 いつどこGPSロガー5 ( SDメモリ・一体型・別給電タイプ )回路 】
RS232Cレベルコンバータ内蔵 GPSモジュール GT−720Fに掲載のように消費電流が大きい結果が得られており、本品構想時に今回は電池を内蔵せずCN1からの別給電のみとしました。
別給電としたことでGPSモジュールの電源オンオフをせず、GPSモジュール電源を常時オンとしています。 SDメモリ読み出し時など、GPSモジュールのTX信号が邪魔な場合、この信号をマスクしています。
ブザーを本品製作時に入手可能な薄型のPKM17EWH4000に変更しました。 これにすることで音が大きくなりすぎ、周りにもはっきり聞こえてくるようになりました。 少し、外部への漏れが少なくなるように遮音気味の音用穴開けを行った方がよろしそう。
逆電圧印加防止ダイオードを設けていなにので、外部電源の極性には注意が必要です。
今回はIC1,R1〜R3、SW2以外は面実装用チップ部品を使用しています。
基板はハーフピッチ用ユニバーサル基板を使用しています。
CN1はパソコンのYSBポートに直接接続しないで下さい。 下記のCN1外部接続用ケーブルの製作例を参考に変換ケーブルを製作してRS−232Cへ接続して下さい。
CN1からの電源供給、RS−232C接続用のケーブル製作例です。
【 CN1外部接続用ケーブル 】
上段が変換ケーブルです。 USB用Aケーブルはジャンク品のHUBからの取り外し品です。 |
【 CN1外部接続用ケーブル外観 】
3.2 完成時外観
完成時の外観を示します。
秋月電子通商「電池ボックス 単4×4本用(フタ付プラスチック・スイッチ付)単四電池ボックス[SBH-441AS]」に収納しています。 |
【 製作品外観1 】
LED確認面です。 |
【 製作品外観2 】
外部接続用CN1側の側面です。 ケース穴あけに失敗して大きな穴になりましたのでアルミテープで塞いでいます。 |
【 製作品外観3 】
左が今回製作した「いつどこGPSロガー5」、右側がセパレートタイプの「いつどこGPSロガー 3」です。 見た目には、写真で見るより「いつどこGPSロガー5」を小さく感じます。 |
【 製作品外観4 】
3.3 内部電気品
内部の電気品実装状態を示します。
上蓋を開けた状態です。 下側に見えるモード切替スイッチ部の水色クッションは、ダイソーのカラーボードを切断して使用しています。 堅さ、削り安さからこのボードを使用しています。 このボードを削るのにルータを使用していますが、簡単に加工できるにで、この組み合わせはぴったりです。 |
【 電気品実装状態1 】
SDメモリを外した状態です。 下側にブザーを実装しています。 水色のクッションは、前記のカラーボードを切断して使用しています。 |
【 電気品実装状態2 】
ケースから電気品を一式取り出せます。 |
【 電気品実装状態3 】
電気品をひっくり返した状態です。 |
【 電気品実装状態4 】
基板の部品実装面拡大画像です。 コネクタとIC1,IC2、R1〜R3が見えていますが、CC1,CC2,CC4,CC5も実装しています。 |
【 基板部品面 】
上記以外の部品を全てハンダ面に実装しています。 部品は立体的にハンダ付けしていますので、配線保護も兼ねて、部品や配線が基板底面と接触しないように、コの字の突起を作ってハンダ面に空間を作っています。 |
【 基板ハンダ面 】
3.4 ケース加工
ケースの加工状態を示します。
底面は全体てきにルータのヤスリで削っています。 底面の穴はブザー用の穴で、現品合わせして位置決めしています。 |
【 電池ボックス加工1 】
奥側の穴の右側はモード切替スイッチ用、左側はGPSモジュールLED点灯状態確認用です。 |
【 電池ボックス加工2 】
LED部の加工です。 底側に削ってLEDを差し込み固定できるようにしています。 |
【 電池ボックス加工3 】
4 動作例
4.1 動作時外観
完成時の動作時外観を示します。
手前の赤い光はGPSモジュールのLED発光状態を外部から見た状態です。 穴の位置が適切な位置にできはかったので、斜めから見ないと確認できませんが、見えるだけもで安心です。 |
【 動作状態1 】
秋月電子通商のHPに掲載されているGtop-Satellite-Viewerでモニタしたときの画面です。 同一位置で半日放置したときの結果です。 ±5mの範囲で検出できています。 |
【 動作状態2 】
この製作例ではNMEAメッセージでVTGメッセージが必要です。 PICマイコンがGPSモジュールからのデータを受信できていない場合はVTGメッセージが送付されていない事が考えられます。(デフォルトでは0設定) |
【 NMEAメッセージ設定 】
【プログラム書き込みサービス】
本ページのPICマイコンのソフトは非公開とします。 但し、本ページで紹介しましたPICマイコンの書き込みサービス
は行います。 詳細はプログラム書き込みサービスのページを参照願います。
電池ボックス電子工作(その14) いつどこGPSロガー6 ( プラットフォーム プロトタイプ ) の公開に伴い、本Versionのソフト対応は中止しました。
End of This Page.