Realistically Running My Project On Batteries

Hey all,

So I've been working on my first real Arduino project which is an electronic door lock controlled by a homemade touch keypad. I have each individual part of the project running so I don't think I'll have any issues pulling this all together but I did run into an issue I hadn't thought of. My only previous experience with Microcontrollers had been at my internship in the toy industry for which they all had simple sleep commands that dropped them into a sub 50 uA sleep mode until an interrupt was detected. This could easily be handled by the 7800 mAH battery I got for this project, however even with sleep libraries I found online I cannot get my current draw under 30ish mA due to the on board regulator and USB interface(I was really hoping this would last until I move out sometime next year). I'm pretty good with an iron and I have some proto board lying around so I figured I could make my own bare bones board with a very low current voltage regulator or none at all. Basically my questions are as follows:

1.) Do I really need a regulator or could I cascade diodes to get as close to 5V from my 12V (for the solenoid lock) battery as possible? This seemed like something I could find easily on google but everyone keeps saying it needs a "stable" input.

2.) Does "stable" input refer to the battery losing charge over time? Is there anyway to get a stable output from a 12V lead acid battery for this project?

3.) If I do need a regulator, would any low current 5V regulator do the trick or are there certain specifications that need to be met? For example I found this:

http://i2c2p.twibright.com/datasheet/lm2936-5.0.pdf

If I understand the datasheet correct it will only consume 15uA if I can get the Arduino current draw under 100uA in sleep mode which should be plenty.

Thanks!

Suggest you look into switching regulators to make 5V from 12.
Example
http://www.digikey.com/product-detail/en/OKI-78SR-5%2F1.5-W36-C/811-2196-5-ND/2259781
Then you're not wasting all your energy as heat in a linear regulator.

Thanks for the suggestion but I'm still not sure that will give me the battery life I'm hoping for as it will likely be a pain to require monthly charging for a door. I've done a little more looking around and noticed what seems to be stopping me from getting down into the uA range for quiescent current is both my high input voltage and my output current requirements. Despite that, I found the part below that looks promising.

According to the data sheet it can operate anywhere from 6 to 30 V and supply up to 250mA which should be plenty for my sketch and the solenoid will be hooked directly to the battery so no need for 1.5A output.

Imgur
(Sorry I couldn't figure out how to add an image directly.)

This graph shows the Iq as input voltage increases up to 8V, I can only assume it just slowly creeps up with input voltage from there. If this is the case this seems perfect for my application as it will likely not jump above .1 mA. This would be fantastic because I have found some sleep libraries that claim to bring the Arduino into sub .1 mA as well which could allow this project to run for years on such a large battery. My major concern would be that I'm focusing to much on Iq for lower power, are there other factors I should consider before trying this device out? Thanks for bearing with me I'm new to choosing components like this.

The MCU does not require a regulator when operated from a battery. Direct battery power is fine and is the easiest and simplest approach. Normal battery discharge counts as "stable". Do be aware of the speed grades chart in the datasheet when selecting voltage and clock speed. Also set the brownout detector to a reasonable level. BTW an ATmega328P in the deepest sleep mode will draw on the order of 0.1µA.

Still there are times when a regulator is desirable. There are "micropower" regulators whose quiescent current is very small, so that when the MCU is sleeping, the regulator does not present a large load. There are also regulators that can be enabled and disabled via a logic input (e.g. from the MCU).

In this case where the solenoid will draw a very large spike, I would want to ensure that does not cause a large dip in the MCU supply voltage.

You could just use 2 or 3 AA or AAA batteries to run the mcu, and run it on a separate power supply. Then you can run the mcu directly from batteries and you won't need any voltage regulator at all. A relay or a MOSFET, or even just a npn transistor should be sufficient for the few seconds a day when the solenoid needs to be activated. Heck, you could probably use a cr2032 button battery and it would last weeks.

Thanks! I didn't realize I could just hook straight in with a battery pack. Makes things a lot simpler if I can get this code written haha

Nick Gammon wrote this tutorial on low power AVR chips: Gammon Forum : Electronics : Microprocessors : Power saving techniques for microprocessors

Rechargeable batteries tend to self-discharge, so they might not last for your
desired 6-9 months. For long-term operation, you might do better with
Alkaline, and work harder on getting the load currents down. Or maybe
SLA.

oric_dan:
Rechargeable batteries tend to self-discharge, so they might not last for your
desired 6-9 months. For long-term operation, you might do better with
Alkaline, and work harder on getting the load currents down. Or maybe
SLA.

For AA/AAA batteries, you can get low-discharge batteries are now. The total current capacity is usually less than that of the batteries that aren't low discharge, but it can hold most of the charge level for months at a time. If your device is outdoors, one possibility is to use a solar trickle charger to keep the batteries topped off.

You could drop to 3.3v and 8MHz which would reduce the current consumption and (no XTAL) required reduce the parts count.

Mark

sonnyyu:
Your sensor node last 156 hours = 6.5 Days. nRF24L01+ is not design as Low-Power RF Transceiver.

Semtech SX1212 Ultra Low Power (3mA RX) RF Transceiver 310-510MHz

  • Tx current: 34mA
  • Continuous Rx current: 3mA
  • Sleep current: 1.5uA

if it is in 1 SEC Polling mode, 1 pc 3.6V/3.6A ER18505 size A lithium battery will last 10 years.

http://www.semtech.com/wireless-rf/rf-transceivers/sx1212/

3.6V/3.6A ER18505 size A lithium battery is one time, non-rechargeable Lithium Battery

1.) Do I really need a regulator or could I cascade diodes to get as close to 5V from my 12V (for the solenoid lock) battery as possible? This seemed like something I could find easily on google but everyone keeps saying it needs a "stable" input.

Use high efficiency switch buck ( step down) dc-dc convert. The higher efficiency, the longer battery last.

2.) Does "stable" input refer to the battery losing charge over time? Is there anyway to get a stable output from a 12V lead acid battery for this project?

Yes, since Li-ion battery fully charged voltage is 4.3 v and fully discharged is 3.0 v, we need power regulator to stable voltage. unless at solar system, the lead acid battery is on the way out.

3.) If I do need a regulator, would any low current 5V regulator do the trick or are there certain specifications that need to be met?

No, we need switch power supply not linear one.

few more ways to reduce power;-

  • Use non USB version Arduino
  • By pass on board linear power regulator

One last thing is battery under voltage monitor/alert, mechanical key backup will be plus.

One thing should not overlook;

The most basic type of electronic door lock is a electro-magnet lock, The electro-magnet use a lot of power. Normally the specification of battery powered the lock is how many time door open per battery change.