Double pendulum rig | double piston rig

Hello there,

I’m trying to create an engine that works similarly to a double pendulum. I tried to make two classic piston rigs, but I can’t put them together the way I want. Maybe there’s a way to do this in one rig chain or something?

For example I tried to use copy rotation to bone.006 from bone.002 (image), but I cannot find a way to keep its tip in the middle of the ongine

If I understand the motion you want, something like this could do the job.

Piston.blend (991.3 KB)

It’s based on a 2-bone IK chain, where the first bone has a non-zero value in IK Stretch, and all of it’s IK axes locked.

2 Likes

Hi zetka,
in your first image, your rig has 2 degrees of freedom because of that little grey link at the piston. I don’t know if that would even work :face_with_raised_eyebrow: Typically, these piston engines are built like in the example from @magpie.

Nevertheless, i gave it a try:


Engine.blend (965.3 KB)

I couldn’t find a way to limit the scale of the IK_Stretch bone. Maybe there is a better way than my solution here :sweat_smile:
The idea was to duplicate the armature → one for limiting the Min position (right side) and one for the Max position (left side).
The control bone on the left side controls the whole rig.

On the right side, the rotation of the control bone is copied and IK Stretch is enabled. That will allow the piston to move linearly. The Min position is reached, when the IK_Stretch bone is scaled down to 0. But the Max position on that rig is still not defined. Thats where the left rig comes into play.
On the left side, i copied the location of the Follower.001 bone and set a Limit Location constraint on the Follower bone. This will be our Max position.

Be aware, that the system still has one degree of freedom. It’s not fully defined only by the rotation of the Control bone. Unless you want to do it like in magpie’s example.

1 Like

hi, thanks for the answears. The one you sent @magpie is like classic piston work. I want to make something lets say less realistic :wink: I will use @Zebrahead rig as an example- I’m trying to achieve the movement, where the left bone (control) is down, then the right bone (follower)will act as a second arm and heading opposite (up) and moving left and right accordingly to avoid stretch. In this rig lenghs of the bones wont allow it, but I think it illustrates the motion. I dont know if this is even possible, but I’m working on that

Something a bit like this?

Piston2.blend (961.6 KB)

There’s a bit of a pop when it straightens out, but it may work as something you can base it on.

2 Likes

jeez man, it’s exactly what I wanted! :smiley: Thank you very much, you save my day!

1 Like