A lot of projects I work on/have worked on seem to involve the controlled movement of fluids. Below is a bit of a history of my builds involving attempts at obtaining this controlled movement for incompressible fluids. I haven’t done much myself with making custom solutions for the compressible stuff, but if you’re interested in such things, I thoroughly enjoy Major Hardware’s “Fan Showdown” series :)
This article/section is by no means intended as a thorough overview on the design and operation of pumps. While I will try to give some overview on operating principles and design considerations as I go, this is mainly just going to be a wander through my personal builds and experiences.
I’m sure there are innumerable sources online for (much better) detailed discussions of the workings of peristaltic pumps. So I’m just going to hit the highlights, and I’ll try to remember to find some promising links and add them below, should a deep dive seem intriguing to ya.
The fluid being pumped is carried into the pump in a compliant tubing. This tube is routed around some portion of a circular/cylindrical path around the axis of the pump and then exits the pump. This is one interesting/attractive aspect of peristaltic pumps, the fluid never has to leave the tube that it is in, making these pumps well-suited to situations where contamination and/or leaks are highly undesirable. The housing that features the cylindrical wall that the tubing is being routed along can be considered the Stator, and that is generally the nomenclature that I tend to use.
So if there’s a Stator, there must be a Rotor…? Yup, the rotor includes some set of features that extend out to some defined gap between this feature and the Stator wall. These features, which in many peristaltic pumps are rolling element bearings, pinch the tubing to the point of sealing (ideally) the tube. As the rotor turns, this contact point proceeds around the circumference. Because the pinched point of the tube is sealed, the volume of fluid in the tube ‘ahead’ of the pinch point are, as a result, pushed forward. So, keep rotating, keep pushing….pretty much as simple as that!
Pros:
Cons:
A couple of years back, I had a concept for an in-line-mixing hydroponics system. The idea being that the supplies to the system would be just pure water and nutrient concentrates, and a series of pumps and valves would allow precise dosing mixes to each target plant in a system (I refer to this concept as Rail Yard Hydro, since it moves the fluids around the tubing network quite like rail cars are moved around a rail system. I’m planning to add a separate page diving into that one a bit deeper since it is the design scheme I am using in my current projects.)
Well, to facilitate this plan, I wanted to find an option for a dosing pump that I could integrate in to my control system (aka Arduinos and Raspberry Pi’s :)). Unfortunately, I quickly found that a servo-driven peristaltic pump could easily set me back north of $100….so I set out to spend many multiples of that making my own!
Actually, when I saw the pricing, I decided I should see if I could make myself a cheapo, manual version that I could use to just test out some basic questions on the Rail Hydro idea (mainly verifying that I could induce good material mixing in-line and that there was no cross-contamination between fluid reservoirs.) And so, ‘twas this endeavor that resulted in the pump I’m apparently referring to as “Test Build 1”
She ain't pretty (especially after a good while of getting knocked around), but the pic above shows the dual pump setup I rigged up for my testing needs. I was VERY pleasantly surprised that, other than a tweak to the hand wheel, these things worked pretty damn well!
I decided upfront that I was going to go with a resin printed build, because I thought the high stiffness and good surface finish throughout the 'pinch region' would give me a better chance. Since I was already going to have the good surface roughness, I might as well also integrate the main bearing into the printed parts.
In the image of the model, below, the Stator is the part shown in green, and the Rotor is shown in blue(ish.) Riding on the rotor are roller skate bearings to provide the contact with the tube. Race 1 has v-grooves on both sides of the race, providing the main constraint for locating the rotor, and Race 2 has a v-groove on the Stator, but only a single plane of contact on the Rotor side. This keeps from over-constraining the bearing.
The absurdly overkill bolt running through the center is a real showcase of "using what I had on hand" :) in that these were the only bolt/nut sets I had on hand with the length I was looking for.
This iteration is the first thus far that I think counts as a "precision" pump! Separating the 'shoe' into a stand-alone component enables tuning the amount of compression to ensure a complete seal.
Rotor_Upper |
Rotor_Lower |
Frame_Upper |
Frame_Upper_Mirror (aka Frame Lower) |
Shoe |
MotorMount |
MotorCoupler |
A bit more/more options on heatsets ifn you're interested
The above cross section shows the rotor config. The lower rotor gets 10 of the m4 heat sets, as shown in the below.
Sandwiched between the upper and lower rotors goes washer -> bearing -> washer on each m4x15 fastener. The large bearings then go on to both sides on the hubs. The sub assembly should look like the below.
You'll then want to get the m5 heat sets installed in the Frame_Lower. They are intended to be inserted from the bottom, but make sure to keep the through hole clear. The rotor assembly can then be inserted into the Frame_Lower. If the ID on your bearing mount came out too tight, you may want to install the bearing in the housing first. I would not recommend "pressing" the bearing in through the rotor assembly...although I guess it'd probably be fine...but why?
Next you'll want to get your Frame Upper prepped. It gets 3 of the m4 heat sets for the Motor Mount and 2 m5 heat sets for the shoe. It gets secured to the Frame Lower with 3 of the m5x15 fasteners.
Set this assembly aside, and get the stepper and Motor Mount. The stepper is fastened to the motor mount with 4 - m3x10 fasteners. The Motor Coupler, with its m3 heat set installed, is then attached to the servo by tightening the m3 against the D flat on the servo. The motor sub assembly should then look(ish) like the below.
Do a quick test fit to make sure the coupler isn't bottoming out in the mated pocket on the top of the rotor. If it does, slide the coupler a bit further down the shaft. You want to make sure the motor mount is in intimate contact with the frame to not axially load the servo unnecessarily. If the coupler position seems good, good ahead and bolt 'er down.
Then thread your tubing through the Shoe, going behind the two posts and try to generally nest it into recess. Then tighten the shoe to the frame until you reach the desired amount compression! I found an easy way to find the point of a good seal was to use a 30cc syringe with the tip in one of the tubing. Then tighten the bolts until what a bit of resistance starts, then tighten in a criss-cross pattern, each time pulling vacuum or applying pressure using the syringe. Once the syringe returns COMPLETELY to it's starting point, you're around the sweet spot. Maintain the pressure in the syringe for at least 10 seconds or so as a quick "leakdown" test. If it passes, you're good to go!
My first attempt at a 'budget' dosing peristaltic pump, mixing some design concepts together from some previous, related designs. You can find more info on the design, and I will be continuing to add related designs, here.
One of the main concepts I was trying to test here was the use of bearing balls instead of the traditional full rolling element bearing for the contact with the tube.
The other, was having this be a modular design that could be chained together with other components using the same stepper. The reasoning being to enable each section to have a different diameter of tubing, and therefore a different flow rate per step. This would make it easier to have the one pump handle the full range of desired tasks, from precision dosing of mL (or sub-mL) volumes to pumping at a rate sufficient to water a planter box at Liters per minutes.
Ultimately the design didn't provide sufficient sealing with the spherical contacts to give the desired control over the flow. But I wanted to share the design to see if others might have a use for it, or, even better, might build off of it and make it better!
The rotor has conical recesses that the steel balls seat into, and the rotor is held inside the two housings. As the cross section below shows, the tubing is wrapped through half of this pathway and it is compressed between the balls and the housing walls.
The housings each have a v-groove ring that serves as an alignment feature to additional modules by putting spheres between the mating v-grooves.
Also to support the modular goal, each side of the pump module has the same, female coupler.