I am using labview and arduino mega 2560 board to control water filtration experiment. The goal is to maintain constant filtered flow during experiment by increasing/decreasing the pump voltage based on the flow value recorded by a flow meter.
I am using PWM pin 3 to supply voltage to the pump however, the issue is that the maximum supplied voltage by the PWM pin is around 2.5V which is not enough to get the flow required for experiment (at least 5V-7.5V). The pump can be ran at max of 10V. The labview coding for PWM to increase/ decrease voltage based on a set condition (i.e flow) works well except that the pump is not getting enough voltage to pump higher flow!
is there any way to boost the voltage from PWM pin and make the pump run at higher voltages (i.e. 7.5V)?
You're not trying to power the pump motor directly from the Arduino output pin, are you?
If so, STOP!
You need a power transistor in the works. How much current does the pump require?
The pump is powered using external power cord (a black cord usually comes with the pump) connected to a wall electrical outlet
The Arduino digital pin (40) is used to start/stop the pump (i.e. ON and OFF)
The flow from the pump drive can be controlled either internally (i.e. manually), or by current (4-20mA) or voltage. The Arduino board can only supply and read voltage, so I set the pump drive to Voltage. the goal is to allow labview to increase/decrease the speed of the pump using the volatge from PWM pin. But, the Arduino can only increase the voltage up to 2.5V which is not enough for my experiments.
Does this make sense? I have been using the system for a year and it works well.
Where to get the power transistor and what does it actually do? The pump current (4-20mA) but can Arduino recognize current?
Are you using a 5V Arduino? The PWM pin can supply Vcc with digitalWrite(pin, 255) unless the load impedance is too low causing excessive current draw and pulling the voltage down, can you post a datasheet or link to the pump?
MarkT:
Sounds like you have a pump controller with an analog 10V input that is low pass filtered (so it
works with PWM too).
You thus need a level-shifter to boost the Arduino pin's output to 10V, such as a common-emitter
NPN stage and pull-up resistor.
You need to tell us what the pump controller is (a link to a datasheet would be good).
Thanks Mark ,
here is the link to the pump. you can download the manual as PDF under RESOURCES section. Page 12 and 13 are about the remote control. I have explained the setup in details (see my previous comment).
Looks like pin 1 expects an analog voltage from 0 to 10V (common industrial control voltage) NOT PWM.
If you have a 10VDC power supply, the Arduino could simulate with 2 transistors a few resistors and capacitor.