Arduino cutting power to itself

I have an arduino project that is powered by a NiHm battery, and unfortunately the people using it tend to leave it on until the battery is drained to the point where it becomes impossible to charge and use again.

I'm thinking of monitoring the voltage of the battery using the arduino (voltage divider and Internal 1.1v reference), but I'm not too what to use to actually cut the power.

It doesn't matter if it increases the power draw slightly in the closed position, but ideally it wouldn't draw power in the open position.
It's default position should be closed, so that when power is cut and restored using a switch already present on the device, the arduino will be powered - it can then decide if the battery voltage is sufficient to run again.
The low voltage cut off switch and the already existing switch would be/are both located between the arduino and the battery, but not between the battery and the charging port. This would allow the battery to charge no matter the position of either of the switches.

Does anyone know of a relay or transistor type device I can use for this?

Cheers,

Arthur

A bistable relay comes to mind.

Thanks for the quick reply!

I've looked into using a latching relay, but then I think I'll encounter a problem once the board battery has been charged.

The relay will be in the open position, from having been opened by the arduino due to the battery voltage being low. The user then charges the battery, and turns the device back on using the external switch. The arduino doesn't receive power as the relay is still in the open position.

Perhaps I could have a circuit so that when closing the external switch, the relay is closed, and when the arduino detects a low voltage the relay is opened? Thus toggling the external switch would "reset" the low voltage protection.

The relay will be in the open position, from having been opened by the arduino due to the battery voltage being low. The user then charges the battery, and turns the device back on using the external switch. The arduino doesn't receive power as the relay is still in the open position.

You'll have to deal with the basic power-on logic no matter what hardware solution you choose. The whole thing depends on the processor running to keep the power-on. So, you'll bave to bypass the switch (manually or automatically with some sort of timer circuit) to "jump start" the thing and to get it running before you can keep it running.

A solid state relay or MOSFET are also very efficient, so those are other options for holding power-on with out constantly-energizing a relay coil. (But,you'll still have to "jump start" it.)

I'll look into using a solid state relay or a MOFSET, thanks for the pointer.

Would you (or anyone else) know of a simple power on circuit? Assuming I use a latching relay, it would only have to output the appropriate HIGH or LOW signal long enough for the relay to close.

Thanks for the link - that seems like it would do the job pretty well.
Would anyone know of a circuit that would imitate a momentary pushbutton being triggered when it gets powered? This could turn Pololu switch into a completely automatic low voltage cut off solution.

That has been done, and them some..
take a look here:
http://arduiniana.org/projects/the-reverse-geo-cache-puzzle/

Nice reading as well...

How about a fuse?

After the hassle of replacing a few fuses they might learn to turn it off.

If they complain you can always say: "You've got it easy, I had to replace perfectly good NiHm batteries!"