Hey! This thing is still a Work in Progress. Files, instructions, and other stuff might change!

Progressing Cavity Pump (cycloidical)

by mechadense, published

Progressing Cavity Pump (cycloidical) by mechadense Aug 9, 2012
2 Share
Download All Files

Thing Apps Enabled

Order This Printed View All Apps


Use This Project

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag


Thing Statistics

16032Views 2187Downloads Found in 3D Printer Extruders


Note: use of this code is DEPRECATED
With the new library:
generation of this pump degrades to a few lines of code.
New version using the new library:


This is the center part of a progressing-cavity-pump (PCP-pump or moineau-pump)

It implements the design approach with alternating epi- and hypocycloids which avoids cusps/kinks (the curve is C1 but not C2 continous)

Right now it uses two and threefold symmetry for rotor and stator respectively, but it shouldn't be hard to change it to any N and (N+1) symmetry (it's prepared) like three and four for more sturdiness or one and two for more throughput.

It is a positive displacement pump and thus provides (if the clearance would be zero) constant flow with arbitrary pressure. At no time the input and output section is directly connected. It is suitable to pump high viscous liquids possibly mixed with solid particles. You can find more info on wikipedia.


Major tweaking points are marked with arrows.

Currently wall thicknesses are faked by scaling correctly for the radial component and rotating incorrectly (by eye) for tangential component. An offset in the epi and hypocycloid functions would be better.

For the initial print I used a very high clearance of 0.6mm to make sure it will fit.

If your printer is tuned well I recommend to reduce it a lot and make a new stator *.stl.


There are also conical PCPs which by nature cant be completely tight if made out of noncompliable material.


I am thinking about a steel printed version for re extrusion of PLA and PET plastics. Judging from the PLA melt artworks PLA should flow in by gravity. Sadly I had no success trying to "gravity melt" PET in a steel-can at 230° in 15min. Melting it with an soldering iron at that temperature works like a charm ... why the difference?

For now this is a huge one just for fun and maybe for (off printhead?) paste extrusion.




You may want to reduce the clearance for the stator.

There is still a lot of work to do for inclusion into a working project.

More from 3D Printer Extruders

view more

All Apps

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

I'll try doing it on CATIA.
What's the mathématical function of the rotor?

These designs will not work properly with out the right core material.

I tested it (PLA rotor and PLA stator) and it worked pretty effectively - quite the spectacular water fountain.
I drove it with an cordless screwdriver for a few minutes in water - no degradation.
Much much longer in air (less self cooling) showed slight polishing of the printing layer lines on the outside lobes of the rotor on the entry side of the rotor. (all testing was handheld - bad idea! - risk of injury)

The clearing is pretty big (0.6mm IIRC) thus this is actually a leaky PCPump it will not build up immensely high pressures when the output gets forcibly closed - (back-flow through the gaps) - especially when pumping low viscosity media like air.

Other materials will probably wear less. I'd try Nylon PET (Delrin?)
Fore a PCP that is perfectly tight sealing (to build up high pressures even with low viscosity media) silicone rubber is a good option.
If you want to make a negative space mold use the code of the newer model not this one !!

I am sure that you have tried different material, but that will not change the way it works.
It is the basic design , the way a progressive cavity pump works.
I have designed several but I haven't posted because of conflicts of my work.
But I can say this , the core of the stator needs to be a heavy elastomer , such as (Alumilite High Strength 3 RTV silicone).
With out a flexible inner core the rotor will not seal. If you would like , I can take a pic of a core ant the building mold used to make it.


I don't have tried different materials - only PLA.
I'm aware that a proper PCP pump >>the way a progressive cavity pump works<< should seal tight and leave no gaps between rotor and stator and therefore need special materials like the one you noted. But for a simple toy application (e.g. a toy water gun) this model here pumps well enough despite the fact that it does not seal decently.
I'm guessing you had a more demanding application case in mind when you where designing your PCP model(s). Mind giving some details?

@ JML31347
Thanks for the showing your work:

Progressive Cavity Pump & Stator Mold

Thanks for the design. Now I understand what SCAD can be useful for.

Has anyone done a newer design? There are some parameters in SCAD file with comments like //but why? Does anyone have explanations now?

If you find a "why?" comment in the code of my models this most likely means that I needed to set a parameter to align something correctly but didn't know how to do it right away. So I did it just by trial and error instead of taking the effort of mentally retracing the code (or detangling/debugging it). Its left there because either I forgot to deal with that issue or I wanted to get the model out in a reasonable timespan without taking eons perfecting the code.

I recently recreated this model from ground up -- see here:

PCP pump - improved code

Wow, thanks for quick reply

Very cool; I made a simpler one awhile back: http://www.thingiverse.com/thing:7958http://www.thingiverse.com/thi...

Have you considered printing liquids or gels? ttsalo did a nice job with chocolate: http://www.thingiverse.com/thing:18017http://www.thingiverse.com/thi...

Moineau Pump
by emmett
Chocolate Extruder
by ttsalo

I arrived at this the following way:

I mainly want to re-extrude PLA and PET plastic on a very small sizescale and since I guess that auger drives won't work well when they're too small and have an already liquid gravity-feed I searched for high pressure pumps. With google-image-search I found the moineau pumps which they use for crude oil pumping (high symmetry). I searched Thingiverse and indeed found your moineau pump but I wanted a sturdier rotor so I went for copying the crude oil pumps.

In regards to paste printing I did this some time ago.
I only tried dough and with a LOT of retraction to compensate the bending of the thread oozing might be controllable.
But thats a lot of force times distance thus energy and the motors might (or might not
) become hot quite quickly.
Also the force needed for extrusion through a 4mm diameter nozzle was already quite high.
But the worst thing was filling that syringe without airbubbles - it's way too tedious.

Ultimaker Syringe Extrusion System (quickmountable)