この前の前振り では「梅雨明けまで是非とも完成させたい」なんて言ってましたが・・・何とか形になりつつあります。
何を作ろうとしているのかといいますと、ずばり、ガイガーロガー。
話によれば、山の放射能汚染も随分と進んでしまっている とのことで、山間部の汚染の実態を解明しなくてはなりません。
普通に山を歩きながら放射線量をリアルタイムに記録し、下山後に GPS のログとガイガーのログとを突合させることで、汚染実態地図を簡単に作れるのではないか、という試みです。
私が入手した 基板剥きだしの YS-GC712 は、10万円くらいで売られてる高級ガイガーカウンターと同じ LND712 というGM菅(放射線を検知するセンサー)が備わっているうえに、RS232C と呼ばれる色々と遊び甲斐のある端子がついており、パソコンと繋いでログが記録できるようになっています。
とはいえ、山にパソコンを持って上がってログを記録するなんて、重さもそうですがバッテリーが全く持たないので、ここら辺を中心に改良していきます。
そこで、探し出したものが OpenLog なる部品なのであります。
シリアル通信のデータを microSD メモリーに黙々と記録し続けていくというものです。
これだけの仕事をしてくれて、2〜6mA という省エネで、お値段も 約2500円 と同等機能のものを自作する気が失せる安さ。
軽く データシート を斜め読みしますと +VCC(電源)、RxD(受信)、GND の3つを配線するだけで所望の動作をしてくれそうですが、「RxD には +6V 以上かけるな」を意味すると思われる英語表記が。
いわゆる信号線が RS232C レベル(+9V)じゃなくて TTL か CMOS レベルにしろ、って意味なので、RS232C 端子から単純に結線する方法は却下となります。
以前に解体した 時に、ADM3202 という RS232C レベルコンバータを使用していることが判明していますので、こいつの手前から TTL レベルの信号線を横取りすれば良さそうです。
早速 データシート を拝見しますと、T1in→T1out もしくは T2in→T2out のどちらか系統ですね。
RS232C の 2番ピンが(パソコン側にとって) RxD ですので、ここから辿りますと ADM3202 の 14番ピンに繋がってました。14番ピンは T1out ですから、11番ピンの T1in に TTL レベルのシリアルデータが来ているはずです。
RS232C | ADM3202 の外側 | ADM3202 の内側 | 備考 |
2:RxD | 14:T1out | 11:T1in | ログのデータが来ているはず |
3:TxD | 13:R1in | 12:R1out | なぜかPICに繋がってた、非公開のコマンドがあるのか? |
7:RTS | 8:R2in | 9:R2out | 下のT2inに繋がってるぽい |
8:CTS | 7:T2out | 10:T2in | 上のR2outに繋がってるぽい |
本当は信号を覗けるオシロスコープで確認してみると良いのですが、そんな高尚なものは持ち合わせていないので、「これで合ってるはず」で本番に入ります。
OpenLog の電気も必要なので、ADM3202 のピンに来ている電源も一緒に奪うことにしました。
横取りするピンは以下の通りです。
ADM3202 | 目的 |
16:Vcc | 電源(+5V) |
15:GND | グランド |
11:T1in | TTLレベルなシリアルデータ |
基板の裏側に出てるピンの先端に線を半田付けします。
YS-GC712 を 例のオサレなケース に戻して、次は OpenLog との接続です。
データシートを見るまでもなく基板の端子に刻印がありますので、普通に繋ぎます。
とても簡単、結線は以下のとおりです。
ADM3202 | OpenLog | 目的 |
16:Vcc | Vcc | 電源(+5V) |
15:GND | GND | グランド |
11:T1in | RxD | TTLレベルなシリアルデータ |
写ってるピンヘッダは最初の迷い(ユニバ基板に載せようと思ったとき)で付けてしまいました。
取り外すのも大変なので放置してますが、こんな邪魔なピンは元々は付いていませんので安心してください。
いちお絶縁のためビニールテープを巻いときます。
いい感じにまとまりましたよ。
microSD を入れて電源ONして待つこと数分
一発成功!♪ バッチリ記録が取れてました。
ガイガーカウンターからは年月日時分という時刻じゃなくて電源ONしてからの経過時間しか出力されないので、電源ONした時刻を別に記録しておく必要があります。
電源ONしたときにデジカメで写真を撮っておいて後で撮影時刻を元に補正する運用で何とかなるかな、と。
あとは写真にジオタグを埋めるのと一緒の要領で、時間軸を基準にして経緯度と放射線量のペアを作れば済むはず。
突合させるソフトの部分は今後の課題となりますが、とりあえず素材だけ集めておけば後は何とでもなります。
ネット上の有志にデータを送って加工してもらう、って手もありますしね。
消費電力や電池のもち、とかはおいおい評価していきます。
留意点
元々付いてる RS232C レベルコンバータを外さずに並列で信号線を分岐した格好になり、本来のインピーダンスよりも下がるので、RS232C レベルコンバータを取り外しちゃったほうがベストだと思います。
フロー制御とかしっかりやってるガイガーカウンターは、もう少し小細工が必要だと思います。
OpenLog はフロー制御に未対応ぽいのですが、YS-GC712はフロー制御なしの垂れ流しでしたので助かりました。
今回は、たまたま YS-GC712 の通信速度(9600bps)と、OpenLog の通信速度のデフォルト(9600bps)が一致してましたが、9600bps 以外をログる場合には OpenLog の設定を変更する必要があります。
追記
OpenLog を取り付けた状態での消費電力はデジタルテスター読みで概ね 50〜60mA でした。
(元々付いていた 無駄に眩しい液晶 を外して オーソドックスな液晶 に換装済み、バックライト常時点灯)
ただしニッケル水素充電池(4直列で 5.2V くらい)だと3端子レギュレータが必要とする電圧差を稼げず 5V であるべき電源ラインに 4.4V くらいしか来てません。
液晶の文字が殆ど見えなくなるほかは一応はカウントしているぽいですが・・・
山歩きでいつも持って上がってる My Battery Expert で 6V か 7.2V を供給してやれば解決するので大きな問題ではありませんが、やはり単3電池でも稼働させたいところ。
念のため買っておいた 昇圧コンバータ の出番です。(後日、続きを書きます)
追記(2011/07/16)
測定位置と測定値とをリアルタイムに送信するガイガーサーバー製作してみました
追記(2011/08/06)
マイコンの信号ピンから強引に横取りするんじゃなくて、普通に RS232C に繋いで吸い上げる OpenLog を使った汎用シリアルロガー を作りました。