OpenROV Gripper, Grabber, Manipulator

I have been working on a hydraulic power idea for running accessories like a gripper/manipulator, and I’ve made some progress! I like the idea of having the power generation close to the center of bouyancy, and being able to plumb the power to lightweight actuators, around hinges, etc. Also, using water as hydraulic fluid means no need for a reservoir, and no one cares if the fluid spills.

Here is a short video of the proof of concept (with some narration by a six year old):

Some of the early design ideas:
(1) Powered by an RC servo motor. Control is already implemented in the hardware and software. The OpenROV waterproof servo or a modified Hitec HS-646WP (hacked for continuous rotation) would be good candidates. I bought an example of the Hitec servo, and I believe it could reliably hold mineral oil, but I haven’t done any testing on this yet. An RC servo motor is a high torque motor with reasonable current draw, variable speed, and is reversible.

(2) Pump mechanism is in the water, without the need for any pressure compensation. This is what had me thinking about peristaltic pumps.

(3) Interchangability of actuators (syringes) for size/speed/power requirements. With a 10 cc syringe (15 mm dia plunger) attached to tubing with a lumen of 2.5 mm, the mechanical advantage is almost 29:1. This actuator is pretty slow as you can see in the video. But it can push! A 1 cc syringe will be faster, but with less power.

(4) Tubing and other parts somewhat consumable/replaceable.

(5) Pump mechanism built from laser cut acrylic, or 3D printed.

(6) The rotor of the peristaltic pump should be circumfrentially supported by the rollers themselves. I would like to avoid having to support the rotor on an axle with bearings. I figure this keeps the parts count down, and keeps the mechanism lightweight. It also helps me avoid over-constraining the output shaft of the servo and maybe will reduce leaks at the servo output shaft due to minor misalignment. The servo horn mounted on the splined shaft of the servo floats in a cavity in the back of the rotor to provide the driving torque.

Here is my progression so far:

I went to The Google and read about peristaltic pump design. I digested some of what I read, started iterating, then re-read a bunch of the material, then iterated, and so on…

I work in the medical field, and so it was obvious to me that I would use Luer Lock IV tubing and syringes for the pluming and actuators.

1st attempt: I found this little microbore “T piece” extension tubing. I figured I would start with the smallest I.D. tubing I could find, since I was more interested in mechanical advantage than speed (pump output flowrate). I started with some stuff I had on hand, including some little 625 bearings and a micro servo. I made the mistake of thinking I wanted the rollers to pinch the tubing over a relatively large part of the circle. I found out something I should have read more carefully, which is that ideally the pump should push the smallest possible number of pillows of fluid around the circle. Pushing multiple pillows around puts weird stress on the tubing and creates a lot of drag. The other problem with this design is my goal of having no axle support on the rotor. I would like for the rollers that pinch the tubing to run against a race opposite the tubing to maintain the pinching force. That race surface needs to be large enough that two rollers are always in contact with it, or the rotor wobbles around and the tubing comes un-pinched, and the pump won’t create pressure at the outlet. I also decided that the smaller tubing is not nearly as supple as the more common ~2.5 mm I.D. IV tubing. I am trying to create about a 15% occlusion in the design, and it turns out to be easier to do that with the larger tubing. So I ditched the microbore tubing. Good riddance, that part was ~$7 each. IV extension sets can be had for much less on Amazon or eBay.

2nd Attempt: Now that I’m using the more common IV tubing, I needed wider rollers in order to compress the tubing. So the slot that the tubing rides in went from 4.5 mm to 6 mm. I machined some little cups to press the bearings into instead of waiting to find the right bearing. So my 625 bearings are now 5.5 mm wide instead of their original 4 mm width. Excited by the idea that a 90 degree driven arc and a 270 idler arc were going to be much easier to turn, I got lazy and let the size of the servo horn dictate the diameter of the pump. This design actually pumped water, and the little micro servo was able to manage, in spite of my silly decision to increase the diameter so much, but it was only just able. I had already ordered the Hitec servo, and so the little micro servo got abandoned here. I had a chance to talk to some bar bot people, and they asked why I settled on four rollers instead of three. I explained my axle-less rotor idea, and we all shrugged. I went back and re-read some things, and decided to try a three-roller rotor in the 3rd attempt.

3rd Attempt: I decided travelling to and from the shop to use the laser was a bummer, and I started printing parts at this point. Also, I now have the waterproof Hitec HS-646WP servo. Basically, I kind of ignored the need for two rollers in contact with the idler surface opposite the tubing. I also realized that the entrance and exits where the tubing comes into the race should be at sharper angles instead of the tangents I have here, so that less of the race is removed to make the openings. It pumped, but the rotor jumped around a lot. But I’m much happier with the accuracy of the parts. Solvent welding the 3mm acrylic together with the tapered cuts made by the laser didn’t create a very ideal surface against which to squeeze the tubing. I figure once I settle on a design I can cut the race parts from 6 mm acrylic. But my 40 Watt laser doesn’t like to do that. You can see the infill on a failed print here. Obviously, if the parts were designed to be 3D printed and then sent down to 100 M depth, they would need to be printed 100% solid. So they would have external webs, not sparse infill.

4th Attempt: This is finally a working proof of concept and is the version in the video link above. I’m still fiddling with the scaling of the race part, so I needed to shim the assembly with tape to get good pressure out of the pump. But I’m pretty happy with the basic concept. There are four rollers, the driven arc where the tubing is pinched is 100 degrees. The entrance and exit of the tubing to the race are at a sharper angle so that there is less idler race missing. The rollers maintain good contact with the idler surface and create a nice steady pinch on the tubing.

The next step is to work out some more precise prints and then compare printed parts to acrylic parts cut with a big laser and some 6 mm acrylic. I will find some bearings that are appropriate without custom machined adapters. I also want to make the whole assembly more compact and sexy. I think I would like to pair this with a second servo (not modded for continuous rotation) that operates a three-way stopcock. That way, power could be switched between accessories. So I might give it a shape that makes it more modular. I’ll report back with some force and current consumption measurements, etc…


I, too, have been thinking about using hydraulics to operate a mini manipulator. I looked at the micro hydraulics used in RC controlled trucks, but I like your idea better. The only potential issue I see is if the water you are operating in is not perfectly clean, which is commonly the case (brine shrimp, algae, silt, etc.). Perhaps a small strainer at the open end of the tubing to filter incoming water?

Definitely a strainer! I did some tests with ice water, and it slowed the motor down slightly, and I could feel a difference in the compliance of the tubing. But it still worked.

Really great work Robert

Potential applications for a few different things

Don’t worry too much about dirt etc in the water one of the most significant uses of Peristaltic pumps is in the Mining Industries for pumping heavy slurries. Generally if anything can get into the tubing it will come out the other end

Interested to see where this may lead to


Robert, great research and development on this idea. I concur with @Stretch and that I think the way ahead is some sort of hydraulic or linear actuator system. traditional servos just can’t move the weight we need in a marine environment. We need the mechanical advantage this system affords.

The problem we’re going to have is that the OpenROV pressure proof servos have been discontinued, and modifying and sealing the Hi-Tec ones are difficult. If you like to have the pump outside the vehicle and using natural water, what about taking a brushless motor and making a water pump for that instead of a servo? Maybe gear it down for low RPMs.

Also, the rod is going to need a stop (or purge valve) at the end of the cylinder so it does not come out. I’m not sure on a way ahead for that yet.

Exactly what I’ve been thinking. Preferably build as much as possible from plastics and stainless steel to avoid corrosion.

@Stretch and @robert_swarner Maybe something like this. It’s made for smoke, but something similar could probably be used for water.

@Stretch, any ideas on how not to overextend the cylinder piston? Or even different cylinder designs that we can bolt on to moving parts?

If it is on a motor run the motor/pump backward and the piston will “suck” back

Peristaltic pumps are easily reversible alternatively if a sealed piston pump liquid into the other side of the piston to return it

To prevent hyper extension physical limit’s are typically the best (Alt 1 a backstop and dead head the pump for a short period allowing bypassing / slip through the pump Alt 2 a hole at the complete extension so the chamber looses pressure sort of like a 2 stroke motor and their exhaust)

A gear pump would be great. One advantage would be higher pressure. Is there room on the 2.8 board and the accessory wiring for another ESC and brushless motor? A fourth thruster?

The relief hole to limit the travel on the actuators is what I was thinking. The mechanism might need a small spring to help return the piston back from where the hole is.

Interestingly, the peristaltic pump seems to push harder than it sucks. I imagine the soft tubing collapses and doesn’t allow as large an amount of water into the rollers.

1 Like

@robert_swarner Yes! you can use the auxiliary servo output D9 to control a spare ESC. I’ve already tried it and it works great on the current software.

Scoop tilt up to slide back to drop down storage with
Sand drains

If you need an underwater motor why not the M100 from Blue Robotics. It’s already potted and sealed for use underwater. You can get an I2C matching escape and potting an ATTiny or some such for control could give you a sealed system. Maybe operate it via an LED/Photo Transistor through the pressure housing if you don’t want another hole.

1 Like

Hey everyone,
this is my first post in this awsome forum. Im working on a new gripper for my diy ROV and I found a way to build a very easy hydraulik gripper.
The Pump is a cheap peristaltik pump. It is powerded with a modified bl-gimbal-motor. The cylinder is from Lego (btw: do you know Lego in USA?).

The next task is to build a gripper for a full test.


A really great simple answer congrats for thinking outside the box and spotting such a simple hydraulic cylinder :thumbsup:

I know these Lego pieces from my kids. I doubt that they will resist at the pression of more than 15 meters.
Keep us informed !

So long as there is no air in the system it should be fine at depth. :D.
Super cool idea!

Here a small video of the first test mounted to my ROV.


Interesting soultion! Do you have any links/specs/details of the parts you used? Would really like to build one like this myself :slight_smile:

The pump is from china. Something like this:

The bl-motor is from hobbyking:

The cylinder is a lego part no: 6156699
You can find these parts at lego spareparts shops or you can “find” it in the toybox of your kids.

This configuration was a very “quick and dirty” try. I had all these parts laying around and I was very surprised to see that the first attempt worked very well. Maybe I would recommend a stronger bl motor. The motor sometimes stocks while starting.

If you need more informations I would be glad to help you.

Awesome! Thanks for the reply. This wil be my next project :slight_smile: At the moment I’m working on getting rid of the laptop, using Raspberry Pi for controlling and recording, and VR googles for view, and wireless from teather to Raspberry/googles…

1 Like