OPEN_ROBO_HUB Back to Projects
Module 15 // Power Analytics

Battery Monitor

Integrates voltage divider telemetry logic gates to trigger low-power alerts when battery measurement matrix values narrow down. The Arduino continuously measures battery voltage and estimates charge condition for portable robotics and IoT systems.

Battery Voltage Mapping

Voltage Divider Point Vector Mapping Target Uno Pin
Divider Output ====> Analog Pin A0
Battery Warning LED ====> Digital Pin 7
Battery OK LED ====> Digital Pin 8

Battery Monitoring Firmware


const int batteryPin = A0;
const int redLED = 7;
const int greenLED = 8;

float batteryVoltage = 0.0;

void setup()
{
 Serial.begin(9600);

 pinMode(redLED, OUTPUT);
 pinMode(greenLED, OUTPUT);
}

void loop()
{
 int sensorValue = analogRead(batteryPin);

 batteryVoltage =
 (sensorValue * 5.0 / 1023.0) * 2.0;

 Serial.print("Battery Voltage: ");
 Serial.println(batteryVoltage);

 if(batteryVoltage < 3.6)
 {
  digitalWrite(redLED, HIGH);
  digitalWrite(greenLED, LOW);
 }
 else
 {
  digitalWrite(redLED, LOW);
  digitalWrite(greenLED, HIGH);
 }

 delay(1000);
}