Advices about an Arduino driven water pump

Hello, I’d like to start by saying that mechanics is not my study subjects, but I need to create such device for my data analysis project, so forgive me because I have little to no background about this.

What I’d like to know if it is possible to build with any model of Arduino a pump with this features:
Flow rate 233ul/s
Rise time <40ms
Stimulus duration 100ms
Inter stimulus interval 200ms

Is it even possible? What kind of pumps would I need?

Thank you very much

Just to be sure.. What unit is " ul/s"?
What is Your definition of raise time?
Pulsing at that rate is no problem for any Arduino.

In general you buy a pump and then use a processor to control the pump e.g. to turn it on/off as and when you want or turn its speed up/down.

As @Railroader questioned surely you don't mean that you want a flowrate in microlitres ( ul )?

When you are choosing a pump you need to know what chemicals you are pumping, how fast you need to pump them, what pressure (head) you need and so on. There are also various physical aspects of how the pump works that need to be considered.

The flow rate will depend on the pump you choose. To control the flow rate the pump will need to have some form of electronic control such as a PWM input which can be provided by the Arduino and some form of feedback as to the current flow rate so that the Arduino can adjust the flow rate to the target value.

You could achieve this with a DC motor and a motor controller but there will be no feedback

As you can see your problem is not with the Arduino but with the pump.

Railroader:
Just to be sure.. What unit is " ul/s"?
What is Your definition of raise time?
Pulsing at that rate is no problem for any Arduino.

  1. microliters per second
  2. the time need to get approximately to 90%/100% of the full vaporizer capacity

ardly:
As @Railroader questioned surely you don't mean that you want a flowrate in microlitres ( ul )?

Yes, I do mean microliters per seconds since I'd need to build this device based on a specific high cost device which does the same, but I want to do that low cost

ardly:
When you are choosing a pump you need to know what chemicals you are pumping, how fast you need to pump them, what pressure (head) you need and so on. There are also various physical aspects of how the pump works that need to be considered.

The chemicals are all aqueous solutions

UKHeliBob:
The flow rate will depend on the pump you choose. To control the flow rate the pump will need to have some form of electronic control such as a PWM input which can be provided by the Arduino and some form of feedback as to the current flow rate so that the Arduino can adjust the flow rate to the target value.

You could achieve this with a DC motor and a motor controller but there will be no feedback

As you can see your problem is not with the Arduino but with the pump.

Sorry, I didn't understand why I would need a feedback to Arduino. If I used a PWM input the flow rate should stabilise at certain value, shouldn't it?

Thank you for your answers!

For low, accurate and repeatable flow rates a peristaltic pump driven by a stepper motor may be the answer.

I don’t know if a peristaltic pump will meet those other specs because I don’t know what they mean.

Rise time <40ms the time need to get approximately to 90%/100% of the full vaporizer capacity
Stimulus duration 100ms
Inter stimulus interval 200ms

Frank-95:

  1. microliters per second
  2. the time need to get approximately to 90%/100% of the full vaporizer capacity
    Yes, I do mean microliters per seconds since I'd need to build this device based on a specific high cost device which does the same, but I want to do that low cost
    The chemicals are all aqueous solutions
    Sorry, I didn't understand why I would need a feedback to Arduino. If I used a PWM input the flow rate should stabilise at certain value, shouldn't it?

Thank you for your answers!

you can generate the signals to the pump at the rates that were mentioned.
However, list most things, there are parameters in the equation.
Pump pressure is based on a constant suction and a constant discharge
along with constant resistance from the tubing and connections
Constant efficiencies both electrical and mechanical.

If you are using a peristaltic pump,what is your method of allowing for work hardening of the tubing ?
What is your method for allowing the motor overheating to reduce power and therefore pump at a lower rate ?
What is your method for the tubing to have internal fouling causing a higher restriction, therefore lower flow rate ?
What is your method for allowing for a higher head pressure ?
What is your method for allowing for a lower head pressure ?
What is your method for detecting there is a blockage ?
What is your method for detecting no fluid present ?
If you have a discharge orifice, what is your method for allowing wear on the orifice ?

Process feedback is needed for most controls and eliminates a lot of assumptions and changed in the equations by things that are both expected and unexpected.

Frank-95:
...
Sorry, I didn't understand why I would need a feedback to Arduino. If I used a PWM input the flow rate should stabilise at certain value, shouldn't it?
...

So this thing is going to run at 0.233ml/s, that is pretty small. How accurately does it need to do that? Where does the high cost of the existing system arise, is it because of the precision required in the mechanics?

If you send a constant control signal to a mechanical system it will tend to stabilise as you suggest. However without feedback you will not know exactly what the figure it has stabilised at is.

ardly:
So this thing is going to run at 0.233ml/s, that is pretty small. How accurately does it need to do that? Where does the high cost of the existing system arise, is it because of the precision required in the mechanics?

Yes it is pretty low. This is the link to the device, which is programmable. That flow rate is the one set in the paper I’m studying.

Basically I just need some solutions, and the pump must vaporise like 70ul at a time with the properties as above. Arduino must control which solution must be used, the inter stimulus interval, and other things.
Would you say that any low voltage arduino peristaltic pump is enough for this work?

PUMP SELECTION is your main concern.

if you need "puff's" of a mist, then a constant pressure and a fuel injector might be one way.

it appears that amortization of the fluids is purpose and I do not think a peristaltic pump is useful in any way. the pump is not continuous, it pulses, and the pressures created would not be high enough to create amortization.

or... a calibrated chamber volume in the pump might deliver the exact volume required....
this is all unknown, no data from which to draw information.

I would think a piston might.

Since water is a non-compressible fluid...you would need to compress it in a chamber.
a sealed chamber, with a piston exerting X force,... (Charles Law)
a valve opened, would alter the fixed container, and the pressure would then reach equilibrium with the outside pressure by carrying the fluids. A fixed pressure would deliver a fixed volume.....

I would think a high pressure vessel with a solenoid might allow the high pressure to be exposed to the orifice for definite periods of time like in a fuel injector.

a low pressure, micro-atmospheres, would carry vapor so that there would be no impact due to the speed of the delivery based on changing pressures.....

But pump selection is more mechanical selection than Arduino related. And the amount of information given is not making it easy to help in that area.

So, in answer to your question : YES the Arduino can control the to the timing you listed.
You can set that time, even have a menu or knob to alter times, duration, etc.
with a display, etc.

what you are controlling is uncertain, and if it can respond to the inputs is unknown.

kinda like ... just because the land speed record of of 763 MPH was set by a car... and I have a car....

dave-in-nj:
PUMP SELECTION is your main concern.

if you need "puff's" of a mist, then a constant pressure and a fuel injector might be one way.

it appears that amortization of the fluids is purpose and I do not think a peristaltic pump is useful in any way. the pump is not continuous, it pulses, and the pressures created would not be high enough to create amortization.

I would think a piston might.
I would think a high pressure vessel with a solenoid might allow the high pressure to be exposed to the orifice for definite periods of time like in a fuel injector.

But pump selection is more mechanical selection than Arduino related.

I agree perestaltic pumps work by squeezing a tube, you will get pulsing and I would be surprised if you get the accuracy required.
I was trying to look at the image of the Gustometer GU002. It is hard to tell but it may be using servos and pistons as you suggest. The OP should definitely try to understand how the existing system functions.

Frank-95:
....
Would you say that any low voltage arduino peristaltic pump is enough for this work?

The Arduino will control the pump/s. The Arduino will not supply the power to drive the pump/s. As mentioned a peristaltic pump probably will not do what you require. Try to get more info on how the GU002 works.

Here is a document explaining the design of a Gustometer,
"A new gustometer: Template for the construction of a portable and modular stimulator for taste and lingual touch";

The document even has a parts list. It uses syringes and what it calls a "low pressure syringe pump neMESYS 290N" (which is probably some kind of servo).

https://www.cetoni.com/products/low-pressure-syringe-pump-nemesys-290n/?gclid=Cj0KCQjw9ZDeBRD9ARIsAMbAmoYAU7eiBxohVAuXDbmS416DAFmkx0NR8blq8sQL-aZ1i3PFV-eLxj0aAojNEALw_wcB

The thing here is that the syringes cost €220 each and the pumps are €3300 a pop. The cost is coming from high quality, precision engineered parts.

Can you do it on the cheap? Well if you are talking about testing my crude uneducated palate then maybe, but in general tongues are so sensitive I think you are going to need quality components and quality costs money.

ardly:
The thing here is that the syringes cost €220 each and the pumps are €3300 a pop. The cost is coming from high quality, precision engineered parts.

Can you do it on the cheap? Well if you are talking about testing my crude uneducated palate then maybe, but in general tongues are so sensitive I think you are going to need quality components and quality costs money.

the paper lays it out as a basis of design with hopes others do it cheaper.
interesting to see open source in other fields.
it seems that there are a lot of high quality, high precision parts. things needed for experimentation and being able to replicate in other parts of the world to verify or corroborate results.
in the paper, it offers that the software used is Python and is also open-source.
I would venture to say that the microcontroller or computer is not a place to save much money.
if there is free software, use that system and that computer/controller to see that cost.
if their computer is $150 and an Arduino is $35, but 5 syringe/motor combinations are $4,000....
the controller is not a place to look for savings.