サイズの大きい単一電池の容量を測定してみました。
100均の乾電池で測定しています。
単三電池との比較までしていますので、電池の容量を確認したい方におすすめの記事です。
単一電池の容量はどれぐらい?単三電池と比較してみた
単一電池の容量を測定してみました。使用したのは100均の電池です。
あくまで一例の結果ですが、実際に容量を測定したところ「9750mAh」でした。
また同じ測定条件・型式の単三電池の容量が「1359mAh」でした。
単一電池が単三電池の容量と比べて約7.17倍の結果を確認しました。
単一電池の容量の測定方法から測定データまで詳細に紹介していきます。
実際に単一電池の容量測定した様子を動画でも確認しています。
放電するのに約24時間かかり、単一電池の容量が非常に大きいことが良く分かります。
単一電池の電圧
単一電池の電圧は1.5Vです。
下記は新品の単一電池のため、若干高めの電圧値となり「1.624V」が表示されています。
電圧値に関しては単一電池でも単三電池と変わりません。
単一、単二、単三、単四、単五の各乾電池共通で1.5Vとなります。
乾電池の電圧測定方法に関しては下記記事で紹介しています。
単一電池のサイズ
単一電池のサイズは高さが61.5㎜、直径・幅が34.2㎜と規格で決まっています。
単三電池のサイズが高さが50.5㎜、直径・幅が14.5㎜です。
そのため単一電池と単三電池を比較すると高さが約1.2倍、直径幅が約2.4倍となります。
単一電池は100均で購入可能
単一電池はサイズが大きい分、1個辺りの価格も高いです。
但し、100均でも単品で売られています。今回はダイソーの乾電池を購入してみました。
同じ100均の同タイプの単一電池と単三電池の容量を確認していきます。
単一電池の寿命と電圧
(この記事での)電池の寿命の電圧値に関しては、一般的な終止電圧の「0.9V」としています。
※市販の電気機器では0.9V以下でも使用できるものも多くありますが、今回は省略します。
今回は「新品」から「使用中の電圧値が0.9V」までの時間を乾電池の寿命としています。
単一電池と単三電池の容量(mAh)
乾電池の容量については使い方で大きく変わります。
今回のテストでは「大き目の電流(約700mA)」で「休憩無し」と厳しい条件で使用しています。
※「乾電池(1.5V)」に「2.2Ωの抵抗」を接続しています。(1.5V/2.2Ω≒682mA)
市販の電池で容量が記載されているものもあります。(例…単三電池で2000~3000mAh)
但し、この値は一般的な電子機器を接続した想定だと思われます。
(恐らく数十mA~100mA程度の負荷条件ぐらいかと)
乾電池の容量(mAh)としての概算は下記で計算式で出ます。
今回(放電電流682mA)のテスト結果では電池容量(mAh)は低めの値となりました。
- アルカリ単一電池が9750mAh [放電電流_682(mA)×放電時間_14.30(h)]
- アルカリ単三電池が1359mAh [放電電流_682(mA)×放電時間_1.99(h)]
※測定時間(横軸)が上下のグラフで異なっています。
別の記事で単三電池のアルカリとマンガンの比較も実施しています。(リンク先はこちら)
単一電池を放電する回路を作る
今回実施した乾電池を放電する(電池を寿命まで使い切る)回路の作り方は簡単です。
乾電池に「乗数が小さく」「容量が大きい」抵抗を接続すればOKです。
今回は2.2Ωの5W品のセメント抵抗を繋げています。
大きい抵抗の100Ωや1kΩを接続した方が消費電流も減り、現実的な値に近くなります。
但し、消費電流を小さくすると電池を使い切るまでの時間が一気に増えますのでご注意ください。
今回の2.2Ωの抵抗でも単三電池で3~4時間ほど掛かっています。
また単一電池に関しては使い切るのに24時間ほど必要でした。
100Ωや1kΩの場合、電池を使い切るまでに恐らく数十時間~数百時間かかります。
※グラフ上の横軸の表記は1/10されています。
電力容量(W)が大きめの抵抗を選びます
乾電池の電圧は1.5Vですが、電流を多く流すので電力容量(W)が大きめの抵抗を接続します。
電力容量(W)が大きい抵抗としてはセメント抵抗が市販でも販売されています。
例えば、乾電池1.5Vに2.2Ωの抵抗を使うとすると単純計算で1Wを超えます。
W(電力) = V(電圧)×I(電流) = V(電圧)^2/R(抵抗) = 1.5(V)^2/2.2(Ω) = 1.02(W)
今回選んだセメント抵抗は5W品のため、十分に電力容量に余裕があります。
電力容量(W)に余裕があるセメント抵抗でも結構発熱します。
普通の金属皮膜抵抗だと1/4W程度のため、NGです。最悪燃えます。
最初は筆者もセメント抵抗を持っていなくて、金属皮膜を複数並列で接続しようと思いました。
ただ一回試したところ発熱がかなり大きかったので、結局セメント抵抗を購入しました。
長時間放電させるので余裕持った電力容量(W)の抵抗をおすすめします。
乾電池の内部抵抗による電圧低下が発生します
今回のような2.2Ωなど小さい抵抗を使う場合は、内部抵抗による電圧降下が発生します。
無負荷と負荷時(2.2Ω抵抗接続)では測定電圧が異なるため注意が必要です。
下記記事で詳細をまとめています。(リンク先はこちら)
単一電池の放電特性を自動でプロット・CSV化させる
電池の寿命がどのように減っていくかを確認したいので、電圧値をグラフ化します。
24時間分の電圧値を測定する必要があるので、Arduinoのアナログ入力を使います。
Arduinoをラズベリーパイと連携させることで自動でグラフ化までさせます。
また後でデータとして使えるようにcsv出力まで対応していきます。
実際の回路図イメージとしては下記形です。
乾電池の放電回路にArduinoのアナログ入力ピン(A0)とGNDを接続した形です。
特にはんだ付けなどは必要なく、ジャンパー線などで配線・接続すればOKです。
単一電池BOXやICクリップ-ワニ口があると接続が楽だと思います。
下記記事でラズベリーパイとArduinoとの連携方法に関して紹介しています。
その際も可変抵抗使ったアナログ電圧を読み取りグラフ化しています。(リンク先はこちら)
ラズベリーパイとArduinoを連携!アナログ入力を応用してみた
ArduinoでAD変換してラズパイにデータを送る
Arduinoには予め、AD変換+USB経由でラズパイにデータを送るプログラムを書き込んでおきます。
Arduinoの開発環境のインストール方法や、プログラムの書き込み方法も特に難しくありません。
下記記事で紹介しています。(リンク先はこちら)
ArduinoでAD変換!分解能10bitで電圧測定してみた
Arduinoにはアナログ入力があり、AD変換することが可能です。(ラズパイには無い機能です)
電池の電圧値をArduinoで読み取らせます。実際のプログラムは下記です。
0.5秒周期でArduinoのアナログ0ピンの電圧値を読み取り、ラズパイにデータを送信します。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 |
void setup() { // put your setup code here, to run once: Serial.begin(115200); } void loop() { // put your main code here, to run repeatedly: float analog_0 = analogRead(0); float voltage_0 = (analog_0*5)/1024; Serial.print("ADC="); Serial.print(analog_0); Serial.print("\t"); Serial.print("V="); Serial.print(voltage_0); Serial.println(""); delay(500); } |
ラズベリーパイとPythonでプロット・CSV化する
ラズパイにはデフォルトでPythonがインストールされており、誰でも簡単に使用できます。
初心者の方でも大丈夫です。下記記事で使い方を紹介しています。(リンク先はこちら)
ラズベリーパイでプログラミング入門!Pythonの簡単な始め方
PythonでArduinoとUSBシリアル通信
今回のプログラムは下記記事でラズパイのCPU温度をリアルタイムでプロットした応用版です。
ラズベリーパイのヒートシンクの効果は?ファンまで必要かを検証!
今回はCPU温度ではなく、USB接続されているArduinoのデータをPythonでグラフ化します。
Pythonで1秒間隔でUSBシリアル通信をReadして、電圧を表示・プロットします。
そして指定の時間(今回は24時間後)に測定したデータをcsvで出力しています。
出力したcsvはプログラムの同フォルダに作成されます。
実際に使用したプログラムは下記です。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 |
#!/usr/bin/env python # -*- coding: utf-8 -*- import itertools import math import numpy as np import serial ser = serial.Serial('/dev/ttyUSB0', 115200) from matplotlib import pyplot as plt from matplotlib import animation from subprocess import getoutput def _update(frame, x, y): """グラフを更新するための関数""" # 現在のグラフを消去する plt.cla() # データを更新 (追加) する x.append(frame) # Arduino*の電圧を取得する a="" a=ser.readline() while ser.in_waiting: a= a + ser.readline() a2= a.split(b'V=') a3= a2[1].split(b'\r') y.append(float(a3[0])) # 折れ線グラフを再描画する plt.plot(x, y) # 指定の時間(s)にファイル出力する if int(x[-1]*10)== 3600*24: np.savetxt('logger_bat_24.csv', y) # グラフのタイトルに電圧を表示する plt.title("CH* = "+ str(y[-1]) +" V") # グラフに終止電圧の0.9Vに補助線(赤点線)を引く p = plt.plot([0, x[-1]],[0.9, 0.9], "red", linestyle='dashed') # グラフの縦軸_電圧の範囲を指定する plt.ylim(0,2.0) def main(): # 描画領域 fig = plt.figure(figsize=(10, 6)) # 描画するデータ x = [] y = [] params = { 'fig': fig, 'func': _update, # グラフを更新する関数 'fargs': (x, y), # 関数の引数 (フレーム番号を除く) 'interval': 1000, # 更新間隔 (ミリ秒) 'frames': itertools.count(0, 0.1), # フレーム番号を無限に生成するイテレータ } anime = animation.FuncAnimation(**params) # グラフを表示する plt.show() if __name__ == '__main__': main() |
単一のアルカリ電池の放電特性
実際に測定した単一電池(と比較用の単三電池)は100均のアルカリ電池です。
冒頭でも紹介しましたが、実際の測定動画が下記となっています。
放電しきるのに約24時間かかり、単一電池の容量が非常に大きいことが良く分かります。
単一電池の放電カーブ
単一電池のアルカリ乾電池の放電カーブは下記結果となりました。
2.2Ωの抵抗に接続した瞬間に、乾電池の内部抵抗分の電圧低下が発生しています。
そのため約1.37V程度からスタートとなっています。
暫くは一定の傾きで放電していますが、約20時間後ぐらいに一気に電圧が低下します。
100均の単一電池の測定データのcsvは下記となります。ご自由にお使いください。
CSVでは1秒置きのデータで約24時間分(約86400秒)の電圧値が保存されています。
容量が2MB程ありますのでダウンロードする際はご注意ください。
daiso-alkaline-battery-tan1.csv
終止電圧までの時間
終止電圧の0.9Vに到達するまでは14.3時間でした。
途中で紹介しましたが、電池容量としては9750(mAh)となります。
※放電電流_682(mA)×放電時間_14.30(h)=電池容量_9750(mAh)
単三電池の放電カーブ
同じ100均の比較対象の単三電池は下記結果となりました。
単一電池と同様に、乾電池の内部抵抗分の電圧低下が発生しています。
そのため約1.31V程度からスタートとなっています。
100均の電池の測定データのcsvは下記となります。ご自由にお使いください。
CSVでは1秒置きのデータで4時間分(14400秒)の電圧値が保存されています
daiso-alkaline-battery-tan3.csv
終止電圧までの時間
終止電圧の0.9Vに到達するまでは1.99時間でした。
途中で紹介しましたが、電池容量としては1359(mAh)となります。
※放電電流_682(mA)×放電時間_1.99(h)=電池容量_1359(mAh)
単一電池と単三電池の容量を比較
最後に出力したCSVから単一電池と単三電池の放電カーブを並べて比較してみました。
単一電池の方が単三電池と比べて約7.17倍の容量を持っている結果となりました。
まとめ
今回は乾電池の寿命と電圧に関して紹介させていただきました。
記事をまとめますと下記になります。
ラズベリーパイ(raspberry pi)とPythonは今回のようなデータ取集に非常に便利なツールです。
ハードウェアの勉強や趣味・工作にも十分に使えます。是非皆さまも試してみて下さい。
コメント
はじめて、訪問し、すごく参考にさせてもらっています。さっそく、ブックマークに追加させてもらいました。
画像では2.2Ωの抵抗、4本を並列に接続されておられます。その場合の合成抵抗値は、1/((1/2.2)×4)=0.55Ω。W=V^2/R=4.09W。
直列にした場合の合成抵抗値R=2.2×4=8.8Ω。W=0.25Wになると思います。
丁寧なコメントありがとうございます。
ブログ管理人のミソジと申します。
抵抗を重ねた写真に関しては説明不足でした。
その際は10Ωの抵抗を並列に接続していました。その旨を追記しておきます。
ご連絡ありがとうございました。
消費電流を固定で容量算出してますが、本来直流回路の場合、W=I・Rですよね?
そして実回路で計測開始時の電圧が1.31Vなので電流は682mAではなく
595mAがスタートで終了電圧が0.9Vなので終了時電流は410mAになります。
単1電池は14.3時間かかり等勾配で転圧低下したのであれば、平均電流を使用して
546mA x 14.3時間で 7800mwhになると思いますがいかがでしょうか?
ただ放電の後半は勾配がきついのでこれよりも少ないと思います。
あと単3は546mA x 1.99時間で 1087mwhになると思います。
もし間違いならば無視してください。
ぞ参考までに!
訂正 放電の後半ではなく前半です。申し訳ありません