[表紙頁]へ  関連記事の目次へ
[131211]

電圧ロガーを、調整中

この「電圧ロガー」も段々形が整って来たが、レンジを2から3に増やそうとしたため、「ハードウェアSWの変更」や「表示プログラムの変更」が必要だった。

その中で一番問題だった、“切り替えSWの状態をプログラムで検出する方法”が、良く分からなかったので、大分戸惑っていたのだが、解決した!
既成のルーチンの中に参考になる箇所を“流用&改造”する方法で、実験&確認をしたら、上手く通った。(左写真<クリック>の動画例)

私のプログラム作法は、始めは、他の手本をそのまま使い、少しずつ変更して試してみて、自分が欲しい形に変形・拡張して行く方法で、謂わば“試行錯誤的なやり方”だ。
スマートには出来ないし、時間は掛かるが、最後は、“自分好み”に仕上げられる♪
(でも、弄りだすと、程々で止められないのは問題かな?笑)
−−−−−−−−−−−−−−−−−−−−−−−−−
ルーチン発見と追加回路
0.0Vから30V(名目50V)の電圧入力を、0Vから5Vの範囲内に納めたい。

それは、半固定抵抗(可変抵抗)をSW(スイッチ)で切り替え、OPアンプの増幅率を変えれば、上手く行くのだが、PC画面上手動で切り替えねばならない不便さがあった。
その不便を解消するため、4つの入力端子RB4(2),RB5(3),RB6(4),RB7(5)(左図<クリック>)を使って、自動化してやろうというわけ。

これらの端子は、内部で軽〜くプルアップ(つまり+5V)されているので、SWで0Vにしてやれば、“信号アリ”とみなせる。
そして、この0VをPCから読み出したい...のだが、その“読み出し方法”が、今まで分からなかった。
今回、元の付属プログラムをじっくり眺め廻して、これを真似すれば出来るかもしれないというルーチン(左上図)を、見つけ出して、一部を書き直して実験してみた。(前回の“i command”の使用

あれこれ試行錯誤したが、遂に“RBxの読み出し”に成功♪ ...その結果、上記の動画のように、SW切り替えで、PC画面上の「尺度」の自動切り替えが可能になった!
(こうした、謎解きと、ささやかな成功が、プログラミングの面白さの所以(ゆえん)

調整と電圧計確認
当初、入力0V〜50Vを0V〜5Vに落とし込む事を考えていたが、どうやら、「ロガー」の対応範囲を目一杯使うと、直線性の問題でダメらしい。
なので、0V〜3V程度の範囲を使うことにして、彼方此方に適当な「補正係数」を入れて表示するようにした。

それで、上手く納まるように、あちらを叩いたり、こちらを叩いたりと、将に「叩き大工」さながらの奮闘。(苦笑)
お蔭で、何とか全範囲が、無事に納まった♪

ところで、オマケ程度に入れた「デジタル電圧計」だが、「光パワー・マルチメータ」と照合したら、そこそこの精度もあるので、十分入力電圧の“監視役”が勤まりそう。
ただ、問題は、上限入力が30Vまでらしいので、実用上では、これが足を引っ張るケースが出て来るかもしれない。
その時は、また、改善を考えよう!...今は、取り敢えず、これで暫く様子見としよう。

[表紙頁]へ  関連記事の目次へ