日常で乾電池を利用する場面が多いので、使用済みの乾電池が結構たまってしまいます。ところが使用済みの乾電池でも、電圧を測ってみると1.0Vから1.3Vくらいの電圧が残っていることが多いのです。
もったいないのでこれら使い古しの電池を集めて1つの電源にし、Arduinoの実験やゲームボーイやモバイルバッテリーの充電などに利用したりしています。
例えば、
もったいないのでこれら使い古しの電池を集めて1つの電源にし、Arduinoの実験やゲームボーイやモバイルバッテリーの充電などに利用したりしています。
例えば、
100円ショップで購入した車のシガーライターから5Vを出力するコンバーターを加工して、
使い古しの乾電池8本から5Vを取り出したり、
キットの可変の降圧DC/DCコンバーターから5V以外の電圧を取り出したりしています。
ただし、まとめた電池の電圧がまちまちなので、しばらく使用していると一番消耗が激しい電池に負荷がかかり液漏れしてしまうことがよくあります。そのまま放置しておくと電池が破裂(といっても外側のカバーが多少歪むくらいですが)してしまい危険です。そのために電池の電圧をこまめに測って、弱った電池を交換する必要があります。
いつもはテスターを取り出してきて計測しているのですが、テスターのダイアルを電圧計に合わせてリード棒を電池の上下に当ててということを繰り返していると、手軽に図れる乾電池チェッカーが欲しいなとも思ったりしていました。
でも電圧を比較的正確に測れるテスターがあるのにチェッカーを購入するのも馬鹿らしく思ったりして、購入には二の足を踏んでいたのです。
ところが先日ATtiny13Aを購入したときに、これで乾電池専用の電圧計を作れないかなと思い立ちました。ネットで調べてみると、案の定Arduinoで電圧計を作っている記事がたくさんありました。そこでこれらの情報を元に電圧計を作ってみることにしたのです。
AVRなどで電圧を測るにはADコンバーターを使います。ATtiny13Aも4つのピンをアナログ入力に使用できるので、本体のみで簡単に電圧計を実現できます。ただし、ATtiny13Aのピンには5V以上の電圧はかけられないので、それ以上の電圧を計測するには分圧という方法が必要になってきます。分圧の方法についてはこちらのサイトで分かりやすく説明してくださっていますので、参考にしてみて下さい。
今回は12Vまで測れればいいので、200kΩ(100kΩ×2個で実現)と100kΩで入力電圧を1/3にして15Vまで測れる電圧計を作ることにしました。回路は上記のサイトと同じです。ただし、念の為ATtiny13Aの電源ラインに0.1μFのパスコンを入れています。
電圧を入力するピンは3番にしました。入力した電圧を表示するのに、今回は手軽に表示できるゲームボーイを使用してしまいましたが、小型のLCDディスプレイなどを使えば電圧計としての取り回しが簡単でいいかもしれませんね。
ゲームボーイとの接続は前回のシリアル通信と同じです。
ATtiny13Aのスケッチはこちらです。
Attiny13GBVoltmeter.ino
ゲームボーイのソースとバイナリはこちらです。
voltmeter.c
voltmeter.gb
使用方法ですが、最初にゲームボーイの電源を入れるとwaiting...と表示されますので、ATtiny13Aの電源を入れればゲームボーイの画面にATtiny13Aから一秒ごとに送られてくる電圧が表示されます。初めに電池を入れていないときは0Vとなるはずなのですが、ノイズか何かなのか多少の電圧が表示されたりします。ここで計測したい電池をつなぐとゲームボーイの画面に計測された電圧が1秒間隔でひたすら表示されていきます。
最初に回路を組んだときに、ATtiny13Aで計測される電圧はテスターで計測した値との誤差が0.1V前後ありました。結構大きな値です。テスターの数値が完全に正しいというわけではありませんが、やはり誤差は少ない方がいいですよね。
使用している抵抗の値にも多少のばらつきはありますが、テスターで抵抗値を計測してなるべく値に差のないものを選定していたので抵抗による誤差の影響でだけではないと思いました。
そこでまずは、ATtiny13Aの個体差があるのではと思い別の物と取り替えてみたりしましたが、最大で0.04V程度の差はでましたが、個体差による原因だけではないようでした。
色々確認してみましたが、結局問題だったのはATtiny13Aに使用している電源でした。当初電圧計として多少でも取り回しが楽になるように5Vのモバイルバッテリーを使用していたのですが、これを5VのACアダプターに替えたところとたんに誤差が小さくなりました。
モバイルバッテリーのときは0.1V程の誤差があったのに、ACアダプターでは0.01V〜0.02V程の誤差に納まりました。これなら十分実用になります。
乾電池専用のテスターとしては多少かさばるものになってしまいましたが、十分使えるものができたと思います。後々小型化させることも考えつつ利用してみましょう。
使い古しの乾電池8本から5Vを取り出したり、
キットの可変の降圧DC/DCコンバーターから5V以外の電圧を取り出したりしています。
ただし、まとめた電池の電圧がまちまちなので、しばらく使用していると一番消耗が激しい電池に負荷がかかり液漏れしてしまうことがよくあります。そのまま放置しておくと電池が破裂(といっても外側のカバーが多少歪むくらいですが)してしまい危険です。そのために電池の電圧をこまめに測って、弱った電池を交換する必要があります。
いつもはテスターを取り出してきて計測しているのですが、テスターのダイアルを電圧計に合わせてリード棒を電池の上下に当ててということを繰り返していると、手軽に図れる乾電池チェッカーが欲しいなとも思ったりしていました。
でも電圧を比較的正確に測れるテスターがあるのにチェッカーを購入するのも馬鹿らしく思ったりして、購入には二の足を踏んでいたのです。
ところが先日ATtiny13Aを購入したときに、これで乾電池専用の電圧計を作れないかなと思い立ちました。ネットで調べてみると、案の定Arduinoで電圧計を作っている記事がたくさんありました。そこでこれらの情報を元に電圧計を作ってみることにしたのです。
AVRなどで電圧を測るにはADコンバーターを使います。ATtiny13Aも4つのピンをアナログ入力に使用できるので、本体のみで簡単に電圧計を実現できます。ただし、ATtiny13Aのピンには5V以上の電圧はかけられないので、それ以上の電圧を計測するには分圧という方法が必要になってきます。分圧の方法についてはこちらのサイトで分かりやすく説明してくださっていますので、参考にしてみて下さい。
今回は12Vまで測れればいいので、200kΩ(100kΩ×2個で実現)と100kΩで入力電圧を1/3にして15Vまで測れる電圧計を作ることにしました。回路は上記のサイトと同じです。ただし、念の為ATtiny13Aの電源ラインに0.1μFのパスコンを入れています。
電圧を入力するピンは3番にしました。入力した電圧を表示するのに、今回は手軽に表示できるゲームボーイを使用してしまいましたが、小型のLCDディスプレイなどを使えば電圧計としての取り回しが簡単でいいかもしれませんね。
ゲームボーイとの接続は前回のシリアル通信と同じです。
ATtiny13Aのスケッチはこちらです。
Attiny13GBVoltmeter.ino
ゲームボーイのソースとバイナリはこちらです。
voltmeter.c
voltmeter.gb
使用方法ですが、最初にゲームボーイの電源を入れるとwaiting...と表示されますので、ATtiny13Aの電源を入れればゲームボーイの画面にATtiny13Aから一秒ごとに送られてくる電圧が表示されます。初めに電池を入れていないときは0Vとなるはずなのですが、ノイズか何かなのか多少の電圧が表示されたりします。ここで計測したい電池をつなぐとゲームボーイの画面に計測された電圧が1秒間隔でひたすら表示されていきます。
最初に回路を組んだときに、ATtiny13Aで計測される電圧はテスターで計測した値との誤差が0.1V前後ありました。結構大きな値です。テスターの数値が完全に正しいというわけではありませんが、やはり誤差は少ない方がいいですよね。
使用している抵抗の値にも多少のばらつきはありますが、テスターで抵抗値を計測してなるべく値に差のないものを選定していたので抵抗による誤差の影響でだけではないと思いました。
そこでまずは、ATtiny13Aの個体差があるのではと思い別の物と取り替えてみたりしましたが、最大で0.04V程度の差はでましたが、個体差による原因だけではないようでした。
色々確認してみましたが、結局問題だったのはATtiny13Aに使用している電源でした。当初電圧計として多少でも取り回しが楽になるように5Vのモバイルバッテリーを使用していたのですが、これを5VのACアダプターに替えたところとたんに誤差が小さくなりました。
モバイルバッテリーのときは0.1V程の誤差があったのに、ACアダプターでは0.01V〜0.02V程の誤差に納まりました。これなら十分実用になります。
乾電池専用のテスターとしては多少かさばるものになってしまいましたが、十分使えるものができたと思います。後々小型化させることも考えつつ利用してみましょう。
※コメント投稿者のブログIDはブログ作成者のみに通知されます