Introduction: Servo Powered Peristaltic Pump Controlled by Arduino
This instructable shows you how to make a pump using a servo motor and an Arduino Uno to transfer small amounts of liquids.
The pump is a peristaltic pump which consists mainly of a motor, flexible tubing and a circular pump casing. Two rollers attached to a turning rotor press the flexible tube to the circular pump casing wall. As the rotor turns, the part of the tube under compression is pinched closed thus forcing the fluid to be pumped to move through the tube (from Wikipedia modified).
Step 1: Advantage
Beside the fact that it is quite easy to make, without a seal and not noisy the peristaltic pump principle has the advantage not to contaminate any part of the installation. Because the only part of the pump in contact with the fluid being pumped is the interior of the tube. An aseptic application can be achieved when sterilizing agent is pumped through the tubing first e.g. Ethanol. Moreover the pump design prevents backflow without check valves.
Step 2: Design
The tricky part about the construction is to find tubing which can be compressed. Most tubing's are quite rigid and therefore the servo motor has not enough power anymore to start rotating. This was solved by the use of soft tubing from a drip system to water plants and a circular pump casing which is pressed against the tube by the use of rubber bands. The pump was built to water a Bonsai tree in the Office.
Step 3: Modifying a Standard Servo Into a Continuous Rotating Servo
I had a standard servo left from a RC plane and therefore had to modify it into a continuous rotating model. Since this modification is widely spread in the Internet I do not describe it here. I was successful with the procedure given in the book "Make: Arduino Bots and Gadgets", page 207.
Step 4: The Rotor
Among the accessories that come along with a servo you will find a disk that can be used perfectly as rotor. The disk should be bigger in diameter than the diameter of the circular pump casing. The rollers (combination of screw, pipe and heat shrink tubing) will be mounted on the rotor. Make two holes in the rotor so the rollers fit into the circular pump casing leaving also some space for the tubing. The pipe should be free to move when put over the screw. A piece of heat shrink tubing is put over the pipe for protection.
Step 5: The Circular Pump Casing
The circular pump casing is a piece that can be bought in the local do-it-yourself/hardware store. In addition you need screws with a head where you can fix one part of the rubber band. The heat shrink tubing is used as a spacer.
Step 6: The Platform
The platform is made of wood. The pieces of wood to fix the servo are just glued onto the platform.
The clothes-peg has the function of holding the flexible tubing. Due to the constant rotating movement of the rotor the flexible tubing would "walk away" if the tubing is not secured. Be aware that the hole in the clothes-peg where the flexible tubing is put, needs to be that big that inside the liquid can run through.
Two drive-in nuts are used to make the screws adjustable in height. In this way the pressure of the circular casing onto the tubing can be adjusted.
Step 7: Software
The sketch to control the servo is simple since you can reference to the library for the servo object. The code is given in the attached file and print screen.
Step 8: Hardware
Upload the sketch and then connect the servo motor's black wire to the Arduino's GND pin and the red wire to the +5V pin. Connect the signal wire to digital pin 2 to control the motor.
Step 9: Putting It All Together
Install the tubing in the circular pump casing and put both ends of the tubing into the water tank. Connect the Arduino to your Laptop or your battery pack.
If you think that the flow rate is too low for your application you can start playing with the rotation speed of the servo, include a gearbox, use two tubings in the casing zone, increase the diameter of the rotor etc.
Hope you like this instructable.
We have a be nice policy.
Please be positive and constructive.