Constraint Slipping Problems

I am having a very difficult time trying to keep the “Pitman Crank” and “Walking Beam” connected. They are separating/sliding when animated. I am not the best at constraints so I am pulling my hair out tring to get this to work.

If anyone knows how to fix this I would really appreciate it.:confused:


Animation - Showing Problem


Personally, I’d use an armature rather than object-level constraints. If you stay with constraints, the important thing is to make sure there are no cyclic dependencies; if there are, part of your mechanism is always going to lag behind.

In this armature, the CrankRod has an IK constraint to CrankIK, which just rotates with Crank:

Best wishes,

MCollett, thanks for the reply. I will try using bones instead.

I have no idea how I would set up something like in your image. Wheres a good place to start, on the front of the model or the back or does it matter? As a first step can I just add bones to all of the parts then add the IK constraints?


I would do like you asked. Arrange the mesh parts so they are in their resting pose. Then add your armature. Place the bones to that the Head of the bone sits exactly where the piece it affects should rotate (use snapping to cursor to get these exact). Parent the model to the proper bones, then set up your constraints.

Thanks Logan. :slight_smile: I will do that.

Is this just like rigging a human then. Any very simple tutorials you might recommend for a newbie as I’ve never used FK or IK before.


It’s like rigging a character, but a little different. For mechanical rigging, I prefer to keep all objects separate and parent each object to a bone, some say you shouldn’t do that, some say you should. It works for me to keep them separate. As loganhobley said, the pivot points are important. Bones pivot at the root of the bone, when viewing in octahedron, that means the big end of the bone. And there are constraints, and IK and chains, it really becomes a deep topic once you dive into it.

I can’t think of any simple tutorials for what you are looking for, off hand. Perhaps google for rigging a piston and crankshaft, it’s the same setup except for the beam and it’s extra bone needed…

If I can, I’ll come up with an example…although I think someone else was looking for the same solution a month or two ago…might want to search BA for that…Think they were calling it a pump jack…


Thanks revolt_randy, I find constraints to be really finicky with a lot of headaches and it’s extremely difficult to know what you’re getting sometimes.

So from what I’m reading in this thread most people here feel using bones is better to rig mechanical objects than using constraints?


Well, yeah, but to do what you’re trying to you’ll have to use both bones and bone constraints. Constraints can be tricky, but once you understand what they do and how they work, they allow to do really cool things.

You can probably set this rig up with 3 bones and 2 constraints. So not too difficult to learn on.

Hey PaintGuy,

I’ve been messing around a bit, had a spare moment, and created a tutorial for rigging a pump jack. I think you’ll find it has what you need…

Hope this helps…

@Revolt_Randy: Great tutorial. I don’t know why I was thinking that it would take more than one constraint to set up this rig.

eeehhh, loganhobley, you said 3 bones, 2 constraints, I used 4 bones, 1 constraint…


Same thing

Thanks loganhobley. Thank you very much again for doing this tutorial.

I rigged my Pumpjack but now I need to add one more piece to complete it and I’m not sure how to do this. There’s a piece on the front called a “polished rod” and it moves vertically with the beam as it rotates up and down. It also has to be grounded at the base so it doesn’t move horizontally as it moves up and down.

Can you tell me the best way to do this? Can I add a bone to the beam bone and then down to the polished rod or should I add a separate bone(s) for this. I am a newbie to this so if you could help me I would really appreciate it. Thanks so much.


OK, I looked at this a bit, after you pm’ed me. There is a bit more to this than is shown in your graphic. As the head of the pump jack moves up and down, it’s horizontal location changes. The rod you show in orange is not one solid rod on a real pump jack, it’s actually a cable and a rod. The cable is actually attached to the top of the head, that is why the head is shaped as it is, to keep the rod straight. I’ve figured out a way to make it work with only a slight amount of horizontal movement.

I think the amount of horizontal movement is minimal and something you can live with. To eliminate 100% of the horizontal movement would require further in depth rigging… Take a look at the attached .blend.



PumpJack1.blend (172 KB)

Thanks Randy, I went through the file and am trying to understand how you made this. So I see there are a number of bones used to make this. Can you tell me how I would add these bones to the existing bones I made in your tutorial and a bit of an idea how to go about this. Would I just add the bones in the following order?

  1. Beam Head
  2. Cable (The “Cable” is flexible. Did you just use a number of bones for this?)
  3. Rod2
  4. Pump Rod
  5. PumpRod IK

Are these the only 2 constraints I need?
Cable = has a Copy Location constraint
Rod2 = has a IK constraint.

I’ll work up a video tutorial on it sometime soon, hopefully by tonight. Sorry to make you wait, but since I never noticed your last post about the pump rod, you’ve waited a while anyhow. (I got busy with something else) I still need to work out a few details on this and to be honest, I’m learning as I go. Last night I googled pump jacks as I have never really seen one up close and didn’t know about the cable until then. Anyway, I’ll let you know when the tut is done.

OK, here’s a finished video tutorial for the entire rig for the pump jack.

Vimeo link:

And final .blend file can be found in the tutorials thread for this…

Please ask any questions in that thread…


Thanks so much Randy. I’ve not had a chance to look at it yet because of work but will hopefully on the weekend. :slight_smile: