MINT - Unterricht  mit  Arduino und anderen

Batterietester

In vielen Haushalten gibt es Geräte wie Fernbedienungen, Uhren und Kinderspielzeug, in denen AA-Monozellen genutzt werden. Die Spannung solcher Batterien liegt weit unter 5V, sodass sie mit einem Arduino gemessen und damit ihr Zustand beurteilt werden kann.

Für solche Messungen sind die analogen  Pins vorgesehen, die im Arduino mit einem Analog-Digital-Wandler verbunden sind. Er arbeitet mit eine Tiefe von 10 Bit, was zur Folge hat, dass die von ihm ausgegebenen Werte von 0 - 1023 reichen. Über die "analogRead()" Funktion können sie ausgelesen werden. Mit der Bezugsspannung - im Arduino sind das (mehr oder weniger genau) 5V - kann die anliegende Spannung bestimmt werden.

AA-Monozellen haben im Neuzustand eine Spannung von etwa 1,6V, die in Abhängigkeit von der Nutzungsdauer kontinuierlich abnimmt.

Für den Bau eines Batterietesters werden neben dem Arduino, ein LCD-Display mit I²C-Interface, ein Widerstand von 10 Kiloohm und einige Steckbrücken benötigt.

Die Abbildung zeigt, wie die Teile zusammengestellt werden müssen.

 

Schaltplan:

 

Programmcode:

(Beim Kopieren bitte so verfahren, wie im Kapitel LCD-Display erklärt.)

 

#include <LiquidCrystal_I2C.h>
  
LiquidCrystal_I2C lcd(0x27,16,2);

 

void setup() {

  lcd.begin();

  lcd.backlight();

  lcd.setCursor(0, 0);

  // Eine Nachricht auf dem LCD ausgeben.

  lcd.print("Batterietester");

  lcd.setCursor(0, 1);

  lcd.print("AA(A)-Monozellen");

  delay(10000);

  lcd.clear();

}

void loop() {

  lcd.clear();

  lcd.setCursor(0, 0);

  lcd.print("Zelle anklemmen!");

  lcd.setCursor(0, 1);

  lcd.print(analogRead(0)*5.00/1024.00);

  lcd.print("V =>");

  lcd.setCursor(9, 1);

  if ((analogRead(0)*5.00/1024.00) > 1.40)

  {

    lcd.print("voll");

  }

  else if ((analogRead(0)*5.00/1024.00) > 1.30)

  {

    lcd.print("gut");

  }

  else if ((analogRead(0)*5.00/1024.00) > 1.20)

  {

    lcd.print("schwach");

  }

  else if ((analogRead(0)*5.00/1024.00) > 0.30)

  {

    lcd.print("alle");

  }

  else

  {

  lcd.print("");

  }

  delay(250);

}

 



►►►

Wie mit dem Arduino auch Spannungen zwischen 0 und 30V gemessen werden können, um so beispielsweise den Ladezustand von 9V-Blocks zu ermitteln, wird auf der hier erhältlichen Anleitung erklärt: Download