I have been planning on building a rain water collection system for my parents to be used for watering their dogs outside. I thought it would be a cool project to automate the watering process. Basically, it should be gravity fed so there will be no real need for a pump. I need a simple way to remotely start and stop water flow. I have very limited experience with this sort of thing so you may need to break it down for me as if I were 5. I was thinking of maybe using an Arduino, however if anyone has some other suggestions, I am going into this with an open mind. I am also not picky about how the valve will be remotely accessed and any suggestion regarding the best way to power this device would be greatly appreciated. I am hoping to use this as a learning experience.
I think your idea needs a bit more exploration - how are you collecting the water? From a roof drain pipe? Rather than a gravity fed solenoid, I think using a reservoir and 12v pump may actually provide a cheaper solution which is easier to build.
Let's consider you have a vertical drain pipe. You don't say specifically how the water is going to be collected, so I'll assume it is run-off coming from an angled roof surface. How will you connect the drain pipe to the smaller connector on a solenoid valve? What happens when there is a lot of rain and the pipe overflows? How will you know when there is water backed up in the pipe? A pump running out of a butt type reservoir with a simple water level sensor (search for something called a float switch) may well be easier to implement.
Also, you are likely to get better water flow-rate control with a pump than a valve solenoid with a body of water above it. If the water comes out too fast it will fly straight out of the bowl!
I would suggest a 12V battery like this, with a typical 12V DC relay attached to allow the Arduino to turn on a pump like this connected to the battery. You could run the Arduino from the 12V battery also using a separate 5V regulated power supply circuit, and even add solar recharging to the system once you get it up and running.
This page explains how you can use relays with an Arduino to control motors and pumps, which would probably be a good starting point for you.
Another consideration is what happens if there is no rain water available? If you get this working well and your parent's come to rely on it, and then say go on holiday, you don't want your dogs to go without water! Also, don't burn the pump out as they are often cooled by the water flow. Maybe you could use a WiFi shield to email you when there was no water available, or just sound an alarm buzzer. You could then use a simple TCP/IP interface using Telnet or a simple DIY program to remotely control the pump. Using a flow rate meter after the pump to monitor the pump output might be another thing to think about.
There is another non-electrical issue which needs consideration too. Depending on where you live, rain water and water butts can harbour parasites and insect larvae which may be harmful to your dog's health. You might be able to get away with a few UV LEDs and a charcoal filter. You should do some research into this to see if it is a concern or not - have a look at these two pages:
Coming in late, but this question wouldn't be complete without considering a no electonics, no moving parts solution (if such is allowed on StackEX/Electical-Engineering):
If you're willing to hand fill a bottle occasionally, pick a suitably large bottle to fit your preference for "occasionally", arrange to support it inverted in the dish with its mouth at the desired water level. When the water in the dish falls below this, more will flow out to restore it. There are all kinds of pet- and livestock-fountains that work on this principle. Yours can be as cheap and as large as you need it to be.
Basically, you need a solenoid valve, a relay, and a way to control that relay. One of the quickest and easiest solution is an USB relay controlled by a mini PC, but it is not the cheapest though.
Make sure the USB relay comes with a decent API.
Assuming (and we all know what gets us!) you're going to fill a container with rain water and transfer from that into a drinking bowl of some sort, then the simplest answer is a float valve as mentioned before. You can get one that connects to a garden hose at a farm supply store and it will work reliably and refill the bowl when it gets low, no electronics involved.
Example valve here
I'd suggest a manual solution. The original idea comes from one of my teachers who was a hunter and therefore was responsible for feeding the deer as well. He made us building a very simple system that works with containers. So we made a shuttering formwork (correct word?) that we then filled with concrete. The right part that you see in the figure below was just the top part of the bucket/container. The idea was that a full container would be carried over to the feeding station, would be opened and then put topside down onto the station. As we mounted a toppart of a container into the form, we had a negative form part that would perfectly fit the water containers. As the opening would be below the upper edge of the drinking mold, the water level would stay constant and when the deer drinks, it would refill itself from the container (until the container gets emptied).
Your solution would be even simpler when you can refill it from the rainwater drain pipe. You'd simply need an overflow piece that would carry away water that doesn't fit in the container anymore.
Make sure that you put some gravel on the earth where the water overflows. Else you'd easily dig a whole into the earth and everything around it would get dirty by sprayed earth and mud. Also make sure that you put the overflow pipe away from any wall of your house (at least 30-50cm) so the wall doesn't get wet. If it gets wet and then dries again, the algae contained in the water would dry, die and would serve as perfect living base for any sort of mushrooms. Including mildew.