Rigging a 7 axis hinge

Hey everyone,
thank you for reading this topic!

I’m having a problem with rigging a 7 axis hinge and could need some help. I want to control the opening angle of the hinge with the bone that is connected to the cabinet front instead of using one of the two bones with a fixed pivot point:

I know how to do this with a basic four bar linkage - and this 7 axis hinge is basically made out of two stacked up four bar linkages. But i can’t figure out, how to connect them with each other if i want to controll the armature with the angle of the “cabinet front-bone”…

Here is my .blend file:
Hinge.blend (1.2 MB)

I would really appreciate it, if someone could have a look at it and point me in the right direction!
Thanks in advance!

OK, so i managed to get it somewhat working :sweat_smile: but it feels kinda buggy :face_with_raised_eyebrow:

Here is the updated .blend file:
Hinge.blend (1.3 MB)

The problem i’m facing is, that whenever i rotate the “Crank”-bone in Pose Mode and cancel the rotation with the right mouse button, the joints are completly messed up:

Could it be a circular dependency?

Would be really nice, if someone could help me out with this problem or give me a little hint!
Coming from a Solidworks background with basically no rigging experience, I kinda feel lost with inverse kinematics and mechanical rigs…

Thanks!

It certainly sounds like a circular dependency. If on Windows, you can check from main menu’s Window->Toggle System Console, which should give you some warnings if you have any. (Although I have seen times that it missed a dependency loop.)

I looked at your problem earlier and decided that it was too hard. If I really, really needed to control the structure from the rotation of that bone, I’d graph the rotation of that bone as a function of the rotation of Crank, flip the graph so that X->Y and vice versa, and then set that up as a driver or something.

1 Like

Yeah, I did actually spend a bit of time looking at this.

First off, you can’t control this rig with the bone you want to use in your first example. I haven’t looked at your second example.

Me, personally, I’d want a bone on the door to control this thing. Grab the door bone and rotate it, the door opens and the mechanism follows along nicely. The problem with that idea is that the pivot point of the door changes and so the controller bone doesn’t feel connected to the door as it’s pivot point don’t change.

If it were me, I would stick a driver on the main control bone - in your first example file - and use a custom property to drive the rotation of the control bone. This would give you a slider in the UI that you can change and keyframe as needed and the door would open and close.

I actually think you have done well with what you have done.

Feel free to ask questions,
Randy

1 Like