(日々の記録)デジタルオシロを買った。ガイガーカウンター2号機の回路図・ソース公開ソフトパワースイッチを使ったCHANEYキットのガイガーカウンター2号機がやっとのことで完成した。思った通りソフトパワースイッチの電源制御が手間取り、GM管(SBM-20)の不安もあって、着手からここまでほぼ2ヶ月近くかかってしまった。GM管の問題が完全に解決したわけではないが、とりあえずは安定して測定が出来るようになった。ひと区切りがついたので、ソースコードと回路図を公開することにする。ツェナーダイオードは効果があった(10/11/2011)大苦労の末CHANEYのガイガーカウンター2号機は、何とか共通のひとつの電源で動き始めた。余裕が出来たので、ガイガーカウンターの高圧部をもう少し改善することにした。CHANEYの高圧回路は、GM管の寿命を考慮して改造してあるが(バイアス抵抗100K->10M、平滑コンデンサー470pF追加)、電圧をデジタル電圧計(秋月DVMキット)で測ると500Vもある。ガイガー管SBM-20の推奨電圧(400V)をはるかに超えている。このまま使っていくのは不安である。時間とともにパルスカウント(CPM)が上がってしまう問題は、オリジナルの回路の390V近辺でも起きることが確認されているので、電圧を下げたからと言って、この問題を解決できるか余り期待は持てないのだが、ものは試しである。やってみなければわからない。これには、180Vのツェナーダイオードを2つ使って電圧を下げる。この電圧のツェナーダイオードは鈴商で入手した。鈴商は高圧関係のコンデンサーや、インダクターの種類が多く、このところ頻繁に訪れている。最近は通販もしているようだ。例によって、小さな基板をキットの基板の上にリード線を使って固定し、ここにダイオードと負荷抵抗(100KΩ)、ついでに直付けしていた平滑コンデンサーを載せる。いう小さな基板の加工は、サーキュラソーでなく糸鋸(コッピングソー)だと、もっと楽に綺麗にできるのだがなあと思いながら、ミニルーターで凹部を少しづつ削って整形する(いずれ買うぞ)。電圧は正確にぴったり360Vを指した。おお、この電圧計(秋月DVM)もたいしたものだ。検知パルスも問題なく出ている(350~420Vがプラトー電圧)。ふーむ、全く安定している。このままで新たな対策(外部クェンチ回路など)は考えなくても良いか。日を替えてテストしてみると同じ管でも、一定にはならず1時間程度で倍に上がってしまう。ケースの中に入れるのと外では大分様子が違うようだ。ガンマー線あたりは問題ないが、SBM-20はベータ線も感知する。それが影響しているのかもしれない。いずれにしても360Vにしたことで、全て大丈夫になったわけではなさそうだ。電源は共通になったけれど問題山積(10/12/2011)ガイガー管はさておき、本体の実装の方である。仮配線を正式に直し、ケースに入れる前に念のため動作テストをしてみた。(1)UARTをつながないと動かなくなる。(2)待機時の電流があろうことか、mA以上だ。これでは使い物にならない。共通電源にするときに何かいじったのか。ペリフェラルの電源線をはずしてみたが変わらない。CPUがパワーダウンモードにならなくなったのか。(1)UARTの方はもっと不審だ。今までAVRでデバッグ用のUARTを残して本番時に動かなくなったことは一度もない。それなのにUARTを端末につながないとLCDにオープニングメッセージが出なくなる。すると動き出すが、LCDの表示が極端に遅くなる。この遅くなると言うこと自体が良く理解できない。こいつはデバッグができない。別の出力ルーチンが要る。ところが、この不具合はI/Oポートをいじっているうちに、いつのまにか解決してしまった。いつのまにか直るというのは、またいつのまにか起きるということだ。後味の悪い解決である。こればっかりに関わっているわけにも行かない。(2)の待機時の消費電流が増えてしまう不具合には参った。4.3mAでは使い物にならない。ブレッドボードから、こちらに移動しただけで何もいじっていない。ハードかと思って、ペリフェラルの電源線をはずすが同じだった。プルアップ抵抗もすべてはずすが、何の影響もない。ポートの初期設定で、6mAになったり、8mAになったりするので、やっぱりハードでなくソフトを疑う。I/Oポートのピンひとつひとつの初期設定をしらみつぶしに変えてファームを作り直しテストする。パワーダウンモードになっていないのかと、アイドルモードにして止めてみると、スペック通りに待機電流が増加する。スリープモードの手違いでもなさそうだ。だいたい、前に測って10μAだったときと大きく変わったところはない。替えたところはすべて元に戻してテストしてみた。それでもおかしなところは見つからない。犯人追跡の手がかりがどうにも見つからない。犯人を捕まえた(10/15/201)ここ数日、悩んでいた問題がやっと解決した。パワーダウンモードの待機電流が想定の数十倍になる不具合である。わかってしまえば、これも何ということはない、ごく当たり前のことだったが、つきとめるまでにえらい時間がかかってしまった。至るところの接続を半田ごてではずしまくり、I/Oポートの設定を換え、sleepモードをいじる。考えられる限りの対策をしてみたが、どうしても下がらない。ポートの初期化の状態で、すぐ数ミリAが流れているので、I/Oポートの設定が原因だと思うが究明できない。そのうち、UARTをはずすと、電源ディップが復活していきなりリセットに戻ったり、わけのわからない状態になった。頭を少し冷やして状況を整理してみることにした。すべてを疑って基本的なところから調べる。言えば、まだ確認していないユニットが残っていた。過放電を防止するリセット回路である。これが壊れる可能性は極めて薄い。これが壊れるのは最大定格6V以上をかけたときだけである。そんなわけはないとは思うが、もう調べるところはここしか残っていない。半田ごてを持ち出してリセットICを電源から切り離す。おおおー、こいつだった。これまでどうしても下がらなかった電流が、パワーダウンモードの10μA以下に下がった。テスターをマイクロアンペアのレンジにして測ると、0.6μAだ。(ライブラリ<avr/wdt.h>をinclude)を入れてあったので、以前の10μAよりさらに1/10以上下がった。