Memorandumの小部屋
本ページは金銭授受を伴う行為を含むAuctionや商用Web
Pageからの無断リンク・無断参照を禁じます。
無断リンク・無断参照が判明した時点で然るべき処置をとらさせて頂きます。
電池ボックス電子工作(その16)
いつどこGPSロガー6 ( プラットフォーム プロトタイプ )
1.背景
前々からストロベリーリナックスのHPを見て試してみたいと思っていた「65チャンネル 10Hz GPSモジュール SUP500U」を千石電商で見つけました。 値段も少し安そうでしたので、衝動買いモードに突入です。 このGPSモジュールは データを見る限り、小型の割りに受信感度は良さそうです。 秋月電子通商のGPSレシーバモジュールキット [K-02294]より綺麗な軌跡をロギングできるのではと期待して製作にかかろうとしました。
まず問題となったのが実装形態です。 このGPSモジュールは小さいので「電池ボックス電子工作(その14) いつどこGPSロガー5 ( SDメモリ・一体型・別給電 )」のように一体型にした場合、単三乾電池2本用電池ボックスに実装できそうです。 一時はこの方法で製作を開始しましたが、どうしても質量が重くな る事が気がかりでした。 また、電源供給用の電線も 必要で、振動による短時間接触不良に対しの冗長性(自作の場合の注意点)がありません。 このように考えていくと一体型はジョギング対応としては いま一つで、やはり従来のセパレート型で製作し直しです。
次に、今まではUSBコネクタを使っているものの、信号線はRS−232Cレベルという、とても危ない?仕様となっていました。 前回の製作後に「プリント基板で作るPIC応用装置」情報収集装置+USB接続基板パーツセット [K-03239](使用例参照)」を使ってFT232RLでUSB化できる事を確認できていましたので、今回からFT232RL対応とする事にしました。
GPSモジュールとマイコンのインターフェースは今まで製作したものとほとんど同じとなります。 もう、毎回設計、製作するのは面倒になってきましたので、今回はGPSロガーのプラットフォーム化を想定して、プラットフォーム部分は同じ設定とし、GPSモジュール部分だけを交換すれば済むように設計、製作することにしました。 実装を含めてハードウエハは「いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」をベースにしました。 ソフトウエハは「電池ボックス電子工作(その14) いつどこGPSロガー5 ( SDメモリ・一体型・別給電 )」をベースにしました。 プラットフォーム化に際してはGPSモジュール交換によってPICマイコンのEEPROM設定変更が必要となります。 このため、パソコンからEEPROMの内容確認、変更ができるモニタプログラムを新規に追加することにしました。 1970年代最後の頃にモニタプログラムを製作して以来のモニタプログラム作成です。
このような考え方でGPSロガー6 ( プラットフォーム プロトタイプ )を設計・製作し、「いつどこGPSロガー6 ( プラットフォーム プロトタイプ )GPSセンサ部」で紹介したGPSモジュールで動作確認できましたので、以下に紹介させて頂きます。 なお、本当はこれで設計終了としたかったのですが、部品手持ち都合で回路の一部を本来とは異なる代替え回路、また、つまらぬ従来品との互換性を持たせたために配線しづらいなどの改善点が出ています。 よって、今回は「プロトタイプ」と余計な語句を追加する事になりました。
なお、本ページではいつどこGPSロガー6 ( プラットフォーム プロトタイプ )の本体部分のみを紹介しています。 GPSセンサ部については「いつどこGPSロガー6 ( プラットフォーム プロトタイプ )GPSセンサ部」で紹介しています。
以下の説明で部品類を記載しておりますが、特に記載していない部品は秋月電子通商で入手できます。 一部通販コードも記載しておりますが、これも秋月電子通用のコードです。
2.いつどこGPSロガー6 ( プラットフォーム プロトタイプ )の仕様
2.1 実装形態
いつどこGPSロガー6 ( プラットフォーム プロトタイプ )の実装構成は電池とマイコン基板を実装したプラットフォーム部とGPSセンサ部の2つからなる構成とします。
プラットフォーム部は電池ボックス「電池ボックス 単3×4本用(フタ付プラスチック・スイッチ付) [SBH-341-AS]」内部に「電池ボックス 単4×3本用 プラスチック Bスナップ付 [BH-431-1B] [P-03194] 」を実装しました。 GPSセンサー部はGPSモジュール外形に合わせて適宜ケースを選択しました。 基本的には「電池ボックス 単3×2本用(フタ付プラスチック・スイッチ付) [SBH-321-AS]」もしくは「電池ボックス 単4×2本用(フタ付プラスチック・スイッチ付) [SBH-421-AS]」を使用しています。
2.2 製作仕様概要
主たる仕様を下記します。
対応 |
出力フォーマット NMEA-0183準拠。 |
測地系 |
EEPROM設定により下記の測地系から選択可能。 (選択無しも可能。) WGS-84 TOKYO Mean Solution TOKYO
Japan |
SDメモリ種 |
マイクロSD |
SDメモリ容量 |
16MB〜1GB (SDHC非対応) |
SDメモリ読み出し |
USBポート(仮想COMポート)を介した読み出し。 SDメモリカードを 単なるEEPROMとして使用しており、でファイル管理フォーマットには準拠していないためPCでは読み出し不可 。 プラットフォームのPICマイコンを介したデータ読み出しにのみに対応。 |
記録間隔 |
EEPROM設定により1秒〜255秒間隔で設定可能。 (本VersionよりGPSデータ保存間隔設定選択スイッチ入力対応中止。) |
記録時間 |
2.2項参照 (16MBで5日以上) |
出力フォーマット |
NMEA-0183準拠 GPRMC 、GPGGA 、GPGSA 、GPVTGのデータが必要。 |
記録データ |
時刻(UTC) 、 緯度 、 経度 、 衛星数 、 測位状態 、 アンテナ高度 、 ジオイド高度 、 年月日、 方位 、 速度 |
電源 |
プラットフォーム部 内蔵乾電池 単四乾電池×3本 |
動作モード |
GPSロギングモード : GPSデータをSDメモリに格納。 SDメモリ読み出しモード : USBポート(仮想COMポート)でロギングデータを読み出し。 SDメモリ消去モード : ロギングデータを消去。 モニタモード : PICマイコンのEEPROMの編集。 |
PICマイコンソフト |
本製作例も非公開とします。 ソフトはまだFIXしていません。 これで良ければ書込みサービス対応としますのでここを参照願います。 |
なお、以下の説明でEEPROMに関して2通りの表現が記載されています。 夫々の意味は下記のようになります。
PIC-EEPROM |
「いつどこGPSロガー」を制御するPICマイコンに内蔵されているEEPROMです。 このEEPROMの設定値で「いつどこGPSロガー」の動作を設定します。 |
SDメモリ |
GPSモジュールのデータを格納する別設置のSDメモリ(EEPROM)です。 この SDメモリ(EEPROM)にGPSデータが格納されます。 |
2.3 記録メディア、記憶容量、記録方法
各サイズの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.4 GPSデータ保存フォーマット
GPSデータ保存フォーマットは以下のようになります。
時刻 (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) |
緯度 ×1°桁 BCD Data (*1) |
||||||
+6 |
緯度 ×10分 桁 BCD Data (*1) |
緯度 ×1分 桁 BCD Data (*1) |
||||||
+7 |
H’0E’ (*1) |
緯度 ×0.1分 桁 BCD Data (*1) |
||||||
+8 |
緯度 ×0.01分 桁 BCD Data (*1) |
緯度 ×0.001分 桁 BCD Data (*1) |
||||||
+9 |
緯度 ×0.0001分 桁 BCD Data(*1) |
北緯 = 1 |
東経 = 1 |
測位不能 = 1 |
||||
+10 |
経度 ×100°桁 BCD Data(*1) |
経度 ×10°桁 BCD Data(*1) |
||||||
+11 |
経度 ×1°桁 BCD Data(*1) |
H’0E’(*1) |
||||||
+12 |
経度 ×10分 桁 BCD Data(*1) |
経度 ×1分 桁 BCD Data(*1) |
||||||
+13 |
経度 ×0.1分 桁 BCD Data(*1) |
経度 ×0.01分 桁 BCD Data(*1) |
||||||
+14 |
経度 ×0.001分 桁 BCD Data(*1) |
経度 ×0.0001分 桁 BCD Data(*1) |
||||||
+15 |
衛星数 10個桁 BCD Data(*1) |
衛星数 1個桁 BCD Data(*1) |
||||||
+16 |
アンテナ高度 ×10000m 桁 BCD Data(*1) |
アンテナ高度 ×1000m 桁 BCD Data(*1) |
||||||
+17 |
アンテナ高度 ×100m 桁 BCD Data(*1) |
アンテナ高度 ×10m 桁 BCD Data(*1) |
||||||
+18 |
アンテナ高度 ×1m 桁 BCD Data(*1) |
H’0E’(*1) |
||||||
+19 |
アンテナ高度 ×0.1m 桁 BCD Data(*1) |
ジオイド高度 ×1000m 桁 BCD Data(*1) |
||||||
+20 |
ジオイド高度 ×100m 桁 BCD Data(*1) |
ジオイド高度 ×10m 桁 BCD Data(*1) |
||||||
+21 |
ジオイド高度 ×1m 桁 BCD Data(*1) |
H’0E’(*1) |
||||||
+22 |
ジオイド高度 ×0.1m 桁 BCD Data(*1) |
日付 10日桁 BCD Data |
||||||
+23 |
日付 1日桁 BCD Data |
日付 10月桁 BCD Data |
||||||
+24 |
日付 1日桁 BCD Data |
日付 10年桁 BCD Data |
||||||
+25 |
日付 1年桁 BCD Data |
方位 ×100°桁 BCD Data(*1) |
||||||
+26 |
方位 ×10°桁 BCD Data(*1) |
方位 ×1°桁 BCD Data(*1) |
||||||
+27 |
H’0E(*1) |
方位 ×0.1°桁 BCD Data(*1) |
||||||
+28 |
方位 ×0.01°桁 BCD Data(*1) |
速度×1000m 桁 BCD Data(*1) |
||||||
+29 |
速度×100m 桁 BCD Data(*1) |
速度×10m 桁 BCD Data(*1) |
||||||
+30 |
速度×1m 桁 BCD Data(*1) |
H’0E’(*1) |
||||||
+31 |
速度×0.1m 桁 BCD Data(*1) |
速度×0.1m 桁 BCD Data(*1) |
(*1)
該当のデータ種はゼロサプレスデータ(上位桁の0を送信しない。 仮数桁数値1以上のある桁から送信)に対応としています。 上記マップは、全桁数値のある場合のマップを示しています。 データ種毎にGPSモジュールから送信されてくるデータがゼロサプレスされた場合、使用されない桁にはH’0F’が格納されています。 数値に戻す場合は”0”〜”9”は数字文字に、H’0E’は小数点文字「.」に、H’0F’は読み飛ばしてもとの数値に戻します。
2.5 測地系選択
下記のコマンドを送信する事で測地系を選択できるようにしています。
動作 |
コマンド |
備 考 |
設定 |
$RSRF106,X*hh<CR><LF> |
X=21 : WGS-84 |
応答 |
$Ack Input106.<CR><LF> |
左記レスポンス |
2.6 PICマイコン IOピン割り当て
PICマイコンのIOピン割り当ては以下のようになります。 ただし、今回のプラットフォーム版よりPIN No.4の用途を変えています。
PIN |
信号 |
方向 |
信 号 |
1 |
RA2 |
出力 |
マイクロSDメモリ DI信号 |
2 |
RA3 |
入力 |
マイクロSDメモリ DO信号 |
3 |
RA4 |
入力 |
SDメモリクリヤモード選択入力。 |
4 |
RA5 |
入力 |
モニタモード移行時、通信速度変更有無。 |
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モジュール電源オンオフ信号。 |
14 |
Vdd |
Vcc |
+電源ライン。 |
15 |
OSC2 |
発振 |
セラミック振動子 10MHz |
16 |
OSC1 |
発振 |
セラミック振動子 10MHz |
17 |
RA0 |
出力 |
マイクロSDメモリ クロック信号 |
18 |
RA1 |
出力 |
マイクロSDメモリ チップセレクト信号 |
2.7 PICマイコン EEPROM割り当て、及び、プログラムのダウンロード
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ロギングモード GPSモジュール通信速度設定 (9600bps相当) SPBRGレジスタの値(10MHz、BRGH=1) |
’40’ |
|||||||||||||||||||||
$07 |
SDメモリ読み出しモード、SDメモリ消去モード、モニタモード時PICマイコン通信速度設定 (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’ |
|||||||||||||||||||||
$10 |
GPSデータ先頭コマンド指定 (必須) 一番最初にGPSモジュールから送信してくるコマンド設定。 bit0=1 GPRMC , bit1=1 GPGGA , bit2=1 GPGSA , bit3=1 GPVTG デフォルトは「GPRMC」。 << 注意 >>
|
’01’ |
2.8 動作モード
GPSロギングモード : GPSデータをSDメモリに格納(ロギング)。
SDメモリ読み出しモード : USBポート(仮想COMポート)でロギングデータを読み出し。
SDメモリ消去モード : ロギングデータを消去。
モニタモード : PICマイコンのEEPROMの編集。
2.8.1 GPSデータ記録モード
機能 |
GPSモジュールのデータをSDメモリに保存。 RS-232CポートからGPSモジュールから取得データが出力されるので、SDメモリにデータを保存しながら 秋月電子通商のHPに掲載されているGtop-Satellite-Viewerでデータを表示することができる。 |
選択方法 |
モード選択スイッチを押しながら電源を投入し、約3秒程度押し続ける。 本モードが選択されたにもかかわらず、LED1の全色(緑色、赤色、青色)が0.2s周期で点滅する場合は、データの上書きししないSingleモードの場合で SDメモリの空き領域が無い場合である。 |
動作中 |
電源投入直後、全LED1が0.5s間点灯し、その後0.1s間消灯する。 ブザー音
|
動作終了 |
シングルモード時、SDメモリに空きエリアがなくなった場合、GPSモジュールの電源をオフして 0.4s周期でLED1(青色)を点滅する。 終了方法は電源オフのみ。 |
2.8.2 SDメモリ読み出しモード
機能 |
SDメモリのデータをRS-232Cラインから出力する。 |
選択方法 |
モード選択スイッチを押さず、PICマイコンの3番ピン(PORTA RA4)をHighレベル( (JP1−3 オープン=Highに接続)にして電源を投入する。 |
動作中 |
電源投入直後、全LED1が0.5s間点灯し、その後0.1s間消灯する。 その後、SDメモリの1ページ分のデータを出力する毎にLED1(緑色)→LED1(赤色)→LED1(青色)の順番に点滅を繰り返す。 ブザー音 ブザー未使用 USBポート(仮想COMポート)の受信データ ASCII読出しの場合(EEPROM $8 bit0=0) 最終アドレス+1を$0000 8000とした場合のデータ読み出し時の受信データを下図に示します。
Binary読出しの場合(EEPROM $8 bit0=1)
先頭のメッセージは従来と同じ。 その後、SDメモリのアドレスはASCIIコード、その後に512バイトのメモリデータをBinaryで送信。 なお、アドレスの前後は復帰改行(’0D’ ’OA’)を設けて、テキスト表示しても行先頭にアドレスが表示されるようにしている。 |
動作終了 |
SDメモリデータ出力通信終了後はLED1(緑色)を0.4s周期で点滅する。 終了方法は電源オフのみ。 |
2.8.3 SDメモリクリヤモード
機能 |
SDメモリの有効のアドレス全領域のブロック先頭に’FF’に書き込む。 追記モードでは測位データはSDメモリの空き領域に追記される。 このため、測位の前に空き領域を作る必要ばあるため、本モードを設けている。 また、過去分のデータが残っていると最新のデータの最終アドレスが分かり辛くなる。 このため、 ブロックの先頭のデータに’FF’を書き込んでデータの最終アドレスを明確にする。 |
選択方法 |
モード選択スイッチを押さず、PICマイコンの3番ピン(PORTA RA4)をLowレベル( (JP1−3 短絡=Lowに接続)にして電源を投入する。 |
動作中 |
電源投入直後、全LED1が0.5s間点灯し、その後0.1s間消灯する。 SDメモリクリヤ中は、SDメモリの8ページ分書込み毎にLED1(緑色)→LED2(赤色)→LED3(青色)の順番に点滅を繰り返す。 ブザー音 ブザー未使用 USBポート(仮想COMポート)の受信データ 最終アドレス+1を$0000 8000とした場合のメモリクリヤ時の受信データを下図に示します。
|
動作終了 |
SDメモリデータ書込み完了後はLED1の赤色を0.4s周期で点滅する。 終了方法は電源オフのみ。 |
2.8.4 モニタモード
機能 |
USBポート(仮想COMポート)を介してパソコンからPICマイコンのEEPROMの書換えを行う。 |
|||||||||||||||||||||
選択方法 |
2.8.2 SDメモリ読み出しモードに移行中に、PCのキーボードより「ESC」キーを押す。 |
|||||||||||||||||||||
コマンド 動作中 |
モニタモード動作 EEPROMアドレスポインタ( H'00' 〜 H'FF' )を示すアドレスの読み書きを行う。 また、「2.8.3 SDメモリクリヤモード」へ移行する。 (ジャンパー短絡無しにSDメモリクリヤ。)
PC側ソフトのエコーバックは不要。 (PICマイコンからエコーバックする。) モニタモード時、全LED1が消灯する。 ブザー音 ブザー未使用 USBポート(仮想COMポート)の受信データ例1 (1) モニタモード移行、モニタモードのオープニングメッセージ表示。
USBポート(仮想COMポート)の受信データ例2
(1) Rコマンドでアドレスポインタ(H'00')のデータを読み出し。
|
|||||||||||||||||||||
動作終了 |
モニタコマンド「GT」でコールドスタート。 電源オフでもよい。 |
2.9 プログラム変遷
(1) 2011-02-13時点 (2011年2月版 Ver 6.0.1)
当初はロギング中のブザーオンオフ制御、LEDの点滅制御を受信コマンドの途中で行っていました。 そのためコマンド受信の順番が変わると制御時間が変化する問題があります。 この対応として、受信コマンド終了した後の次の受信コマンドブロック待ち時間(数100ms)にブザーオンオフ制御、LEDの点滅制御を行うように受信プログラムフローの全面見直しをしています。
上記変更に伴い、受信コマンドブロックの先頭コマンドを設定する必要が生じたため、EEPROMで設定するようにしました。
EEPROM変更が従来以上必要となりますので、EEPROM操作用モニタプログラムを追加してPICマイコンを取り外さずに変更できるようにしました。
EEPROMでモニタプログラムのボーレートも書き換える事ができるため、この設定を誤って設定すると二度と通信できなくなるため、強制的に9600bpsで立ち上がるジャンパーピン設定を設けました。 この対応のため、従来、ロギング間隔をジャンパーピンで選択できるようにしていましたが、この機能を無くして、9600bps設定に変更しました。
3 いつどこGPSロガー6 ( SDメモリ・一体型・別給電タイプ )の製作
本ページではいつどこGPSロガー6 ( プラットフォーム プロトタイプ
)の本体部分のみを紹介しています。 GPSセンサ部については「いつどこGPSロガー6 ( プラットフォーム プロトタイプ )GPSセンサ部」で紹介しています。
3.1 いつどこGPSロガー6 ( プラットフォーム プロトタイプ ) 回路図
GPSモジュールがSUP500Uの場合の「いつどこGPSロガー6」の回路図を下記に掲載します。 使用部品などは回路図を参照して下さい。 なお、使用部品の多くは秋月電子通商で購入しています。 電子部品だけではなくブザー、マイクロSDカード用のコネクタなども秋月電子通商で購入できます。
【 いつどこGPSロガー6 ( プラットフォーム プロトタイプ )回路 】
USBポート(仮想COMポート)用ICとしてFT232RLを使用しました。 仮想COMポート用のドライバは下記でダウンロードしてご利用下さい。
http://www.ftdichip.com/Drivers/VCP.htm
D1・Q1の回路はGPSモジュールによってGPS電源オフ時のGPSモジュールのTXD信号レベルが不定となるために、信号を強制的にマスクするために設けています。
D1,Q1,IC2の回路は、TXD、RXDの信号のOR回路となっています。 本来は後述のようにデータセレクタ回路の方が良かったのですが、SOPパッケージの部品手持ちがなかったために上記の回路となったものです。
プラットフォーム部の電子部品は抵抗R1〜R3、三端子レギュレータIC41、及び、PICマイコン以外は全て面実装部品としています。
プラットフォーム部の基板から外部に出る信号線は全てコネクタ取り合いとしています。 このコネクタは秋月電子通商扱いの「1.27mm(ハーフ)ピッチコネクタセット」[P-01151]」を利用しています。 このセットにはハーフピッチユニバーサル基板も付属しています。
3.2 プラットフォーム部の製作
プラットフォーム部の完成時の外観を示します。 基本的には「電池ボックス電子工作(その13) いつどこGPSロガー4 ( SDメモリ・セパレートタイプ )」と同じ様な製作方法をとっています。 以下、各部位毎の製作状況を写真で示します。
秋月電子通商の「電池ボックス 単3×4本用(フタ付プラスチック・スイッチ付) [SBH-341-AS]」内部に「電池ボックス 単4×3本用 プラスチック Bスナップ付 [BH-431-1B] [P-03194] 」を実装。 |
【 プラットフォーム部の完成時の外観1 】
【 プラットフォーム部の完成時の外観2 】
外部接続用CN1側の側面です。 角穴をやすりで削ってあけています。穴位置は現物合わせです。 |
【 プラットフォーム部の完成時の外観3 】
センサ部用ケーブルの口出し側です。 もともとのリード線取り出し口を少し広げてLED1を内側からはめ込んでいます。 |
【 プラットフォーム部の完成時の外観4 】
「電池ボックス 単3×4本用(フタ付プラスチック・スイッチ付)
[SBH-341-AS]」内部の加工外観です。 |
【 電池ボックス加工1 】
「電池ボックス 単3×4本用(フタ付プラスチック・スイッチ付) [SBH-341-AS]」内部の仕切をカットし、底を削っています。 この加工には彫刻刀の平刃を使用するとやりやすいようです。 |
【 電池ボックス加工2 】
今回はSDメモリとFT232RLを別実装とした立体実装となっています。 |
【 プラットフォーム部基板外観1 】
SDメモリを取り外した状態です。
|
【 プラットフォーム部基板外観2 】
FT232RL基板を取り外した状態です。 |
【 プラットフォーム部基板外観3 】
コネクタ側から見た基板外観です。 信号用配線はワイヤーラッピング用ポリウレタン電線を使用しています。 この電線は「ロジック回路の配線にはワイヤーペンを使おう!!」を参照願います。 |
【 プラットフォーム部基板外観4 】
ハンダ面です。 ハンダ面にチップ部品を実装しています。 実はモード選択スイッチSW2のプルアップ抵抗R4のハンダ付け漏れが後日確認されました。 この写真にその証拠が残っていました。 |
【 プラットフォーム部基板外観5 】
SDメモリ部です。 フラットケーブルの電線を裂いて利用しています。 |
【 SDメモリ部外観1 】
コネクタへのハンダ付けが綺麗ではありませんが、短絡だけはしてない事が確認してそのまま使用しています。 |
【 SDメモリ部外観2 】
FT232RLのピッチが0.65mmのためハーフピッチ基板では対応できません。 FT232RL自体を0.65mmピッチの基板に取り付けてからハーフピッチ基板に電線で接続しています。 これは、FT232RLの端子に電線をはんだ付けする作業が1回ではうまく作業できず何度もトライするのが分かっていましたのでハンダ付け作業を繰り返してもFT232RLのリード線を痛めないため、また、少しでも放熱してハンダ付け作業時の温度ダメージを防ぐためです。 |
【 FT232RL基板1 】
基板裏面には電源回路を設けています。 この回路に逆電圧防止ダイオードD51を設けていますが、当初はこのダイオードを設けていませんでした。 実はこの基板は2代目であり、初代の基板は誤って逆電圧を印加してFT232RLが天に召されてしまいました。 手持ちストックが少ないので破損をこれ以上起こさないこともありますが、実はこの基板を組み立てるだけで最初は1日仕事でした。 この基板を何度も製作する気力が無く、二度とこの基板を製作したくないためににD51を設けました。 |
【 FT232RL基板2 】
FT232RLをユニバーサル基板に実装してハーフピッチ基板取付用の電線を接続した様子です。 (USB顕微鏡で撮影) |
【 FT232RL基板3 】
今回使用した0.65mmピッチ変換基板です。 |
【 FT232RL基板4 】
0.65mmピッチ変換基板を上記のようにカットして使用します。 |
【 FT232RL基板5 】
取り出し用の電線として、信号線はロジック配線用のワイヤーペン用のポリウレタン線(右側)、電源関係は28AWGの素線(7本)をばらし必要に応じて数本を撚った電線(左側)を使用しています。 |
【 FT232RL基板6 】
4 完成外観
【 プラットフォーム部とGPSセンサ(SUP500U)部 組み合わせ外観1 】
【 プラットフォーム部とGPSセンサ(SUP500U)部 組み合わせ外観2 】
【 プラットフォーム部とGPSセンサ(GT −723F)部 組み合わせ外観1 】
【 プラットフォーム部とGPSセンサ(GT −723F)部 組み合わせ外観2 】
【 プラットフォーム部とGPSセンサ(GPS−52D(B))部 組み合わせ外観1 】
【 プラットフォーム部とGPSセンサ(GPS−52D(B))部 組み合わせ外観2 】
【 プラットフォーム部とGPSセンサ(GT−720)部 (試作) 組み合わせ外観1 】
【 プラットフォーム部とGPSセンサ(GT−720)部 (試作) 組み合わせ外観2 】
測地系のデフォルトがWGS−84となっていましたので該当部のEEPROMデータを変更せすに使用できました。 |
【 プラットフォーム部とGPSセンサ(GPS−74A)部 組み合わせ外観1 】
【 プラットフォーム部とGPSセンサ(GPS−74A)部 組み合わせ外観1 】
5 プロトタイプの改善
プロトタイプの製作に際して、既に改善点がいくつかあります。 もし次に製作する場合は下記の改善をする事を検討しています。
5.1 SDメモリ用コネクタピン配列見直し。 (プラットフォーム部)
過去との互換性を考えてコネクタ類は「電池ボックス電子工作(その13) いつどこGPSロガー4
( SDメモリ・セパレートタイプ )」と同じにしました。 しかし、今回の製作ではSDメモリ用中継コネクタとSDメモリコネクタ間が短く、コネクタ〜SDメモリ間の配列が順番とおりの」並びに」なっておらず、配線をクロスさせての配線作業となり、SDメモリ部の厚みを無駄に厚くせざりるを得ませんでした。
過去にとらわれず、次回は下記のピン配列で製作したいと考えています。
【 SDメモリ用コネクタピン配列見直し 】
5.2 シリアル通信データの切替え回路対応
GPSモジュールの電源をオンするGPSロギングモードと、それ以外のSDメモリ読み出しモード、SDメモリ消去モード、モニタモードでシリアル通信の状態を切り替える必要があります。 本来はデータセレクタで信号を切り替えるところですが、
今回は手持ち部品の関係で別回路で対応しました。
次回は下記回路でトライしたいと考えています。 (検討だけで回路動作確認はしておりません。)
(クリックすると原寸大の回路図をダウンロードできます。) |
【 シリアル通信データの切替え回路対応 】
5.3 充電回路追加
SDメモリのデータ消去をUSBポート(仮想COMポート)を用いたモニタモードでできるようになりましたのでプラットフォーム部の蓋を開ける機会は内蔵電池を交換するときです。 もし内蔵電池を二次電池にできれば蓋を開けなくてすみます。 この対応として充電回路を追加できないかと思っています。
本ページのPICマイコンのソフトは非公開とします。 但し、本ページで紹介しましたPICマイコンの書き込みサービス は行います。 詳細はプログラム書き込みサービスのページを参照願います。
End of This Page.