Technology Remaking the World


Arduino Measures Current from Constant Current Source

Open above schematic. Schematic Arduino Current Measurement.

This is a continuing series on Arduino projects. This circuit enables Arduino to measure current from the constant current source projects below.

Also see Arduino Controlled Power Constant Current Source.

I used two parallel 0.5 Ohm resistors for 0.25 Ohms. The small voltage from resistors is amplified by an LM358 op-amp. Gain is set by R2 / R1.

An RC filter of 4.7K resistor and 10uF capacitor enable measurement of DC current or pule-width-modulated current from Arduino PWM from digital pin 9.

The test program for an I2C LCD display and serial monitor.


#include <Wire.h>
#include <LiquidCrystal_I2C.h>
LiquidCrystal_I2C lcd(0x27, 16, 2);
//set the LCD address to 0x27 for a 16 chars and 2 line display

#define pwmPin 9
#define pot 0
#define analog1 1
int analogValue = 0;    // variable to hold the analog value

int total, average;
float volts;

void setup() {
  // open the serial port at 9600 bps:
  Serial.begin(9600);
  lcd.init();
  lcd.backlight();
}

void loop() {
  // read the analog input on pin 0:
  analogValue = analogRead(0) ;
  Serial.print("Pot value = ");
  Serial.print(analogValue);
  Serial.print("\n");
  analogWrite(pwmPin, analogValue / 4);

  analogValue = analogRead(pot);

  lcd.setCursor(0, 0);
  lcd.print("POT =         ");
  lcd.setCursor(6, 0);
  lcd.print(analogValue);

  analogValue = analogRead(analog1);

  lcd.setCursor(0, 1);
  lcd.print("AMPs =       ");
  lcd.setCursor(11, 1);
  lcd.print(analogValue * .00467 );

  Serial.print("AMPs = ");
  Serial.print(analogValue * .00475);
  Serial.print("\n");
  delay(500);
}

Electronics Bio

New for 2021

Date: July 2021

In the process of publishing new gadgets and circuit ideas. Plus new tutorials and videos. They will be published here on this site.

Related video to above:

Other Circuits