-
Battery Life Estimation by Implementing Sleep Mode
06/28/2015 at 14:19 • 0 commentsThe battery life can be calculated by determining the average current for the circuit.
Use the following general equation to calculate average current.
Iavg = (Ton*Ion + Tsleep*Isleep ) / (Ton +Tsleep)
Ton (arduino is active ) = 250 ms =0.25s and Ion = 16mA
Tsleep = 5min =300s and Isleep = 200 uA (approx)
It is very difficult measure the current during the sleep period .Some time I got zero reading.
Iavg = 0.205 mA
Operating Voltage =5 V
Pavg=VxIavg =5x.205=1.026 mW
Li Ion battery capacity =3000 mAh
Battery voltage =3.7V
Power =3.7x3000=11100 mWh
Battery life = 11100/1.026 =10,818.7 hours = 15 months approximately
From the above calculation it is clear that theoretically by using a fully charged 3000 mAh Li Ion battery we can run the arduino for 15 months.In practical due to battery self discharge this figure may be different.
As the system is equipped with solar charging system ,we can run for few years without any interruption.
-
Alternatives for Power saving
06/28/2015 at 14:15 • 0 comments>> The simplest method to reduce the power consumption is by passing the voltage regulator in the Arduino board.
Buy a separate boost regulator circuit and connect its output to the 5 volt pin on the Arduino board, which bypasses the 5 volt regulator on board.This procedure is used in our project.
>> using a "bare bones" board instead of arduino board.
>> Disable the unnecessary led
>> If you do not need time accuracy, then use the Atmega 328 internal 8MHz crystal instead of a external 16Mhz crystal.
>> Operate Atmega 328 at 3.3V instead of 5V
>>Turn off sensor as soon as possible
To know more details on arduino power saving techniques click here
The maximum power saving is done by using a Bare bones board.By using a bare bone board the power consumption can be reduced to micro amps level during sleep period.You can see the above figure.
You can easily make this on a bread board by following the links bellow :
1.Arduino on a Breadboard
2.Arduino to a Microcontroller on a Breadboard
Make bare bone pcb board by following the links bellow :Single Sided Really Bare Bones Board Arduino in EAGLE
I will highly recommend for the bare bone board for any battery driven projects ( like sensors). -
POWER OPTIMIZATION BY USING SLEEP MODE
06/28/2015 at 14:12 • 0 commentsThe weather data does not change frequently.So we can take reading at an interval of 5mins.As we are taking readings at regular intervals, it is a fantastic way to save lots of power. A system with appropriate sleep schedules can run for several months on just two AA batteries.We are so lucky that Arduino has several sleep modes that can be used to reduce power consumption.
This is most useful for any sensor networks.You can use this tricks in any of your stand alone sensor project.
After searching through the internet for using the sleep modes, I found a simple but powerful library by Rocket Scream has a Lightweight Low Power library supports all AVR power down modes. Each mode has an associated library method that lets you control sleep duration using the watchdog timer.For a novice programmer like me it is very simple and easy to use.
How to use LowPower Library :
1. Download the library from GitHub
2.Extract the zip file to the arduino library in your computer.
3.Import the library in your code.
4.Write the following one line code for power saving.
"LowPower.powerDown(SLEEP_1S, ADC_OFF, BOD_OFF) ; "
You can also pass different arguments to shut off individual peripherals. For different argument and sleep time refer the table provided by Lightweight Low Power Arduino Library.
example code :#include "LowPower.h" void setup() { // No setup is required for this library } void loop() { // Sleep for 8 s with ADC module and BOD module off LowPower.powerDown(SLEEP_8S, ADC_OFF, BOD_OFF); // Do something here // Example: read sensor, log data, transmit data }
Lets use it in the blink code of arduino IDE example
Apply "LowPower library" in Blink code#include "LowPower.h" // import the lowpoer library int led = 13; void setup() { pinMode(led, OUTPUT); } void loop() { digitalWrite(led, HIGH); LowPower.powerDown(SLEEP_1S, ADC_OFF, BOD_OFF); // instead of delay(1000) ; digitalWrite(led, LOW); LowPower.powerDown(SLEEP_1S, ADC_OFF, BOD_OFF); // instead of delay(1000) ; }
Before using the Lowpower library current taken by arduino51.7mA when led is ON
47mA when led is OFF
After using the Lowpower library current taken by arduino
34.93mA when led is ON
31.73mA when led is OFFAre you happy to reduce 32.43 % power ?? Hey there is still room to reduce the power consumption.
Your arduino board have different power sucking components like power led,voltage regulator and USB interface chip which takes most of the power even when it is idle. -
Li Ion Battery Pack for Powering the Arduino
06/27/2015 at 17:36 • 0 commentsTo power the Arduino I choose Li Ion battery (18650).If you look at the Periodic Table, you will find that Lithium is on the far left in the first column, where all the most reactive elements live.So during handling care should be taken.
Caution :
You must take certain precautions when dealing with Lithium Ion Batteries. In order to maintain a very precise voltage when charging. The 3.7V batteries we're using in this guide need to have a charging voltage of 4.2V.A volt high or a volt low can mean an out of control chemical reaction which can lead to danger.
Don't worry a suitable Li Ion battery charge controller will solve the above problem.
Circuit Connection :
Solder the Input positive terminal of boost converter(red wire) and battery holder positive terminal(red wire) to the charging board's BAT + .
Solder the Input negative terminal of boost converter(black wire) and battery holder negative terminal(black wire) to the charging board's BAT-.
The boost converter output is a USB terminal. For powering a bread board circuit we need two wires for connection.So we have to modify something according our requirement.
The usb have four terminals (5V,D-,D+and GND).
Solder the red and black wire to the + and - respectively as shown in the back side of the boost converter.
Note : The boost converter do not have any marking.So use my picture during soldering.