Bongo Help Needed: How to control a bodies translation via IK and 2 DOF

I’m pretty new to bongo and I’m trying to use it for the first time. I need help defining the animated objects.
I’m aiming on achieving a simple mechanism where a platform is lifted by two separate points. At each point there a is lever which rotates 90 degrees. (Each lever has a different length resulting in a angled lift at the end of the motion)
I’ve attached the model so you guys can assist me.

2DOF_Lift.3dm (743.6 KB)


Here’s the model working as I understand it in your description.

2DOF_Lift.3dm (727.2 KB)

Instead of animating both of the levers I instead only animate the longer one. The second lever, the platform, as well as a helper point form a inverse kinematics chain. This chain is now trying to reach a goal point at the end of the longer lever. The shorter lever and platform are simple rotational joints. I had to enable limits on the smaller of the arms so it would rotate in the correct direction. I also shifted around the object pivots a bit.

It may help to do a few of the inverse kinematics tutorials to help get your head around how the system works. I think the parallelogram tutorial is most similar to this problem.

Hope this helps!


I think your struggle with this model is because you assumed that the angel of rotation of both levers is identical. Because the levers differ in length the structure is not a regular parallelogram (equal opposite sides). Hence the rotation in every corner is dissimilar.

As a demo, in 2DOF_Lift 000.3dm (765.1 KB) both levers are equally long, hence the parallelogram is regular. This makes your initial setup (in which both levers are “driver”) feasible. To ‘close’ the parallelogram I use an auxiliary point and line. This technique is illustrated in this video
I rather use a point and a line than 2 points – it bypasses accuracy in positioning.

But for you irregular parallelogram an IK structure with only one “driver” is needed (like in Joshua’s solution). More easy to understand (and to build) is the linear structure of the IK chain I used in 2DOF_Lift 001.3dm (750.3 KB)
The use of a “keep pivot location the same’ constraint makes use of auxiliary objects unnecessary.