GPSDOのモジュール監視部の実験
2018-09-02
今夏はやはり異常気象と言って良さそう・・・何やら落ち着かない天候が続いていますね。スマホを身近なところに置いていますから急な雨や雷には備えられますが、それでもほんのちょっとした予想範囲のズレで当たり外れがあって、「まだ平気だな・・・」と傘を持たずに買い出しに出るとそこそこの雨量で濡れてしまったり、逆に傘を持って出ると降らなかったり
先週末のハムフェアは、初日の午前中に野暮用が発生して出鼻を挫かれ、午後から行こうかと思ったものの暑くて億劫になり、実験途上のGPSDOのフィルタやらバッファやらの組み立て実験の方に力が入ってしまい結局行かず終い。そのお陰で、この部分は上手く動作するようになりました。そこで今週末は、GPSモジュールからのメッセージを受け取ってきちんと衛星捕捉数を監視する部分をPICに組み込み、ブレボで実験することにしました。
この監視部には、以下の機能を具備することにしました。
◆GPSモジュールとのシリアル通信、受信のみ行う:1ポート
◆GPSモジュールからメッセージ”GNGGA”を受信したら、LED(赤)をブリンク:1ポート
◆”GNGGA”のパラメータから衛星捕捉数を拾い、捕捉数に応じてLED(緑)を点消灯:1ポート
3機未満:消灯、4~6機:点滅:7機以上:点灯
◆シリアル通信の取りこぼしを極力減らすため、クロック発振には水晶を使用:2ポート
通信速度:38400bps、クロック周波数:9.8304MHz
上記の機能具備のために必要なPICのポート数は単純計算すると5ポートになることから、ミニエレキーをこしらえたときに多めに買い込んだPIC12F1822をチョイス。ところが、シリアル通信を行うと(使わなくても)送信ポートも取られてしまい、都合6ポート必要であることに気づき、入力にしか使えないMCLRを考慮するとどうしても入らない
そこで、何とかこのMCLRを出力ポートっぽく使えないかとネットサーフィンしてみると、お誂え向きの記事を”EDN Japan”のWebサイトで見つけました。このアイディアを採用
土曜日の午前中にササッと回路図を完成させ、プログラムをこれまたササッと組んで実験へ・・・とその前に、回路図をご披露。

今回のブレボ実験は、点線で囲んだ部分です。PICのRA3はI/Oポートの入力として設定しますが、弱プルアップの制御ができるようにします。弱プルアップをオンにすると、見かけ上、数十KΩから数百KΩを介してこのポートから電圧(ほぼVCC)が出力されるため、これをエンハンスメント型のFETで受けてやります。これでスイッチがオン。逆に弱プルアップをオフにするとポートから電圧がでなくなりスイッチがオフ。こんな風に、MCLRのポートが恰も出力ポートのように利用できるというわけです。
ソフトの規模が小さいことから、例によって毎回躓くコンフィグ設定には躓いたもののバグ無し
あっという間に動きました。下の動画は、4から6機の衛星を捕捉している時の様子です。手持ちのスマホで撮ったため目が回ってしまうかも知れませんが、20秒程お付き合いを。
LEDには高輝度のものを使いました。電流制限用の抵抗は3.3KΩとかなり大きいですが、それでも「もう少し暗くてもいいかなぁ
」と悩むほど。画面右下の赤いLEDのブリンク(と言うか、消灯時間)を20msとしてあるためこの動画では目立ちませんが、毎秒キチンと”GNGGA”を受信していることを示しています。
これでブレボ実験は無事終了。後はこいつを基板に組み、フィルタ&バッファ部と接続すれば回路部分は完成・・・ケース加工は気が重いですが、何とか完成には持って行けそうです。頃合いのケース候補も見つけたんで、明後日の都内移動の途中でちょっくら秋葉原に寄って買ってきましょうかね

先週末のハムフェアは、初日の午前中に野暮用が発生して出鼻を挫かれ、午後から行こうかと思ったものの暑くて億劫になり、実験途上のGPSDOのフィルタやらバッファやらの組み立て実験の方に力が入ってしまい結局行かず終い。そのお陰で、この部分は上手く動作するようになりました。そこで今週末は、GPSモジュールからのメッセージを受け取ってきちんと衛星捕捉数を監視する部分をPICに組み込み、ブレボで実験することにしました。
この監視部には、以下の機能を具備することにしました。
◆GPSモジュールとのシリアル通信、受信のみ行う:1ポート
◆GPSモジュールからメッセージ”GNGGA”を受信したら、LED(赤)をブリンク:1ポート
◆”GNGGA”のパラメータから衛星捕捉数を拾い、捕捉数に応じてLED(緑)を点消灯:1ポート
3機未満:消灯、4~6機:点滅:7機以上:点灯
◆シリアル通信の取りこぼしを極力減らすため、クロック発振には水晶を使用:2ポート
通信速度:38400bps、クロック周波数:9.8304MHz
上記の機能具備のために必要なPICのポート数は単純計算すると5ポートになることから、ミニエレキーをこしらえたときに多めに買い込んだPIC12F1822をチョイス。ところが、シリアル通信を行うと(使わなくても)送信ポートも取られてしまい、都合6ポート必要であることに気づき、入力にしか使えないMCLRを考慮するとどうしても入らない


土曜日の午前中にササッと回路図を完成させ、プログラムをこれまたササッと組んで実験へ・・・とその前に、回路図をご披露。

今回のブレボ実験は、点線で囲んだ部分です。PICのRA3はI/Oポートの入力として設定しますが、弱プルアップの制御ができるようにします。弱プルアップをオンにすると、見かけ上、数十KΩから数百KΩを介してこのポートから電圧(ほぼVCC)が出力されるため、これをエンハンスメント型のFETで受けてやります。これでスイッチがオン。逆に弱プルアップをオフにするとポートから電圧がでなくなりスイッチがオフ。こんな風に、MCLRのポートが恰も出力ポートのように利用できるというわけです。
ソフトの規模が小さいことから、例によって毎回躓くコンフィグ設定には躓いたもののバグ無し

LEDには高輝度のものを使いました。電流制限用の抵抗は3.3KΩとかなり大きいですが、それでも「もう少し暗くてもいいかなぁ

これでブレボ実験は無事終了。後はこいつを基板に組み、フィルタ&バッファ部と接続すれば回路部分は完成・・・ケース加工は気が重いですが、何とか完成には持って行けそうです。頃合いのケース候補も見つけたんで、明後日の都内移動の途中でちょっくら秋葉原に寄って買ってきましょうかね

- 関連記事
-
- タンタル追加で落ち着いた未完のGPSDO
- GPSDOっぽいのを製作・・・でも課題が!?
- GPSDOのモジュール監視部の実験
- GPSモジュール再び