I'm planning to build a water flow control system using arduino. The goal is to control a valve's opening between 0%-100%, but all the arduino compatible valves that I have found work using a on-off logic (either totally opened or totally closed). Does anyone know any valve that works the way that i want? It's a small system that uses 1/4" hoses.
I've seen a DIY solution that uses a manual valve attached to a servo motor, which is something that I'm open to do, but I would very much rather use something that already exists.
Welcome! You need to find a motorized valve, there are many from not too expensive to extremely expensive. Some offer feedback so you know where it is at. If it does not have that you can time its approximate location but you will have to zero it first by fully closing or opening it then you have a known position.
I investigated once, and IIRC found that it might be cheaper to set up a set of on/off valves with their own flow limiters. Ie with 3 valves you could have 8 different flow levels (one valve set to deliver 4 units/min, one at 2 units/min, and one at 1 unit/minute. binary fluidics, essentially.
What you want is a flow control proportional valve. Valves like this are generally driven by for example current (4 - 20 mA) or voltage (0 - 10 V). That being merely a few examples. Consider your pipe diameter, your medium going through the valve, temperature and other considerations then choose your valve. Some allow feedback and some don't. Feedback tells you the valve position, for example 0 to 100% (Closed to full open.
I can't speak for valves "off the boat" but good quality valves come with a price tag. That has been mentioned.