0

I have a small project with arduino UNO R3 + RTC clock DS3231, that control through a relay a electrovalve (12V).

I would like to use the entire circuit on battery.

The electrovalve (a small motor) has a consumption of 500mA and will be active 4 times a day for 15 second.

I have a 7Ah battery, and I had calculated that my system will work only around 34 hours with it... is there any way to optimize circuit consumption ?

Thanks for any suggestion !

Dadep
  • 133
  • 7
  • 1
    You don't write what kind of Arduino, I think there you also can gain something (using a stripped IC plus the minimum needed), or use sleep mode if you want to keep the (complete) Arduino. – Michel Keijzers Jul 19 '17 at 13:25
  • 1
    Can you paste you calculations here? The time seems pretty short to me. I come up with 500mA * 15s = 0,5A * 1/240h = 0,002 Ah. So your Battery will last for 3500 cycles = 875 days = about two years. What are the characteristics of your arduino setup? In sleep mode an Arduino can go as low as 0.2µA. – Kwasmich Jul 19 '17 at 13:26
  • @MichelKeijzers I edit my post it's an arduino uno. – Dadep Jul 19 '17 at 13:28
  • @Kwasmich what do you mean by sleep mode ? you mean 200mA ? – Dadep Jul 19 '17 at 13:28
  • 1
    No, I really mean 200 nano Amperes. 200nA = 0.2µA. – Kwasmich Jul 19 '17 at 13:29

1 Answers1

1

You can turn off the entire Arduino and let it wake by your RTC. That way you can conserve a lot of power. (link)

Also you will have losses from the power regulator when powering the Arduino from 12V. You might consider using a Arduino Pro mini with 3.3V powered by two AA batteries. That should last for years.

Kwasmich
  • 1,513
  • 12
  • 18
  • That's very interesting, but it's not clear how my RTC can awake arduino, because in my program arduino just read permanently the time send by the RTC... – Dadep Jul 19 '17 at 14:09
  • 1
    Some (not all) RTCs have an interrupt timer. Depending on the module it is either INT or SQW. You can set a time and go to sleep then RTC will wake the arduino that is configured to wake up on that interrupt. Then you can read the data, set a new timer and go sleeping again. See here and here – Kwasmich Jul 19 '17 at 14:21
  • Thanks, it's seems to be what I'm looking for, do you know any library that allow easily to make this configuration ? I read a lot about but didn't understand how to set the RTC DS3231, to send message four time a day. – Dadep Jul 19 '17 at 18:39