Need support to rig a certain part of a mechanical setup


attached to this posting there is a blend file, to which I reference here.
I will use the names of the objects in that file here. The display of the names of the relevant parts is activated in that file

The whole thing is part of machinery - a mechanical setup to move a tool around, which still needs to be modeled. I always try to animate as few parts as possible by hand and to automate the movement of the
rest of the part via armatures, parenting, constraints etc.

50% of the setup I already get working…but now I got stuck.

Description of the mechanics.
I want to animate two part only: The Slider and the Target (an Empty, shown as a sphere)

When moving the Target, the rails should follow (already working).
Additionally, the Holder should follow the Target by moving in the Rail, so that the mechanical “arrangement” (sorry, I am no native speaker…) between Target and Holder should remain the same (think of the Target as the tip of a drill and the drilling machine is welded the Rotator.
The Rotator should rotate along its Z-axis when the Target rotates.
With this not working part I got stuck with and which gives me a fair part of headaches…

The whole setup should work at all rotational angles of Axis1 and Axis2.

I would really appreciate, if someone could help me with this setup …

Thank you very much in advance for any help!

As a new member I am not allowed to upload files. The referenced file is her:

Hey, Pictures with annotations go a very long way :wink:
First off as you can see from this pic, the ‘Target’ axis (selected in orange) does not have the same axis as ‘rotator’ due to the fact you have already rotated it and not ‘applied’ the rotation. So, are you wanting to rotate the ‘Target’ on its ‘X’ axis to get the ‘Rotator’ to rotate on its current ‘Z’ axis (Blue arrow) ?? OR is it going to swivel (Red arrow) ??. Q2 - is that whole “arrangement” suppose to move / traverse (Green arrow) the rail ?? or does the rail go with it ?? Let me know and I may have a solution, one last Q - is the ‘Target’ going to be tracking something ?? Thanx

Hi ajcdfin,

I am always confused with the bunch of coordinate system, local, local with parent, world etc. pp.

The reason, why the Target has a different axis orientation as the rotator is: My fault.
If it helps, to solve this mechanical mess, it can be oriented as needed.

The Rotator should rotate around its current Z-axis, when the Target rotates around its (current) x-axis. The other axises (plural? looks wrong somehow…I am no native speaker, sorry) should in parallel with the BaseHandleAxis.

Q2->A2: Yes, it should follow the Target in that way, that it has the same Z- and Y- coordinates in the “world”.
The Rail sould rotate around Axis1 to compensate for movements in the Worlds X-direction (should already work. Movements of the Target in Z-direction of the world should be compensated by the rotation of the Rail aorund Axis 2

The object, which is missing still, is the drilling machine which is planned to be parented to the Rotator.
The Target will be the tip of the “drill” (not exactly…missing the correct terminus technicus here) in some way, which will be “attached” to something, which is the animated one (and the only one in the whole crazy setup hopefully).

May be you can give me a hint, what is the best way to “attach” the Target to the animated object…just to prevent a “local explosion of the coordinate system” an mess up the whole thing totally…

Thank you VERY much for you offered help…its kinda pain killer for the headaches this crazy thing has gave me… :wink:


Hey, This is what I have so far, let me know what I forgot or over looked or any questions. I have set this up using 2 armatures, now you can clear any transforms with out worries. All bones are named (logically I hope) and axis locks on except what is needed. ‘Armature’ is for basically what you were using the 2 in your set-up, they do the tracking and swivel but I did it with an IK for the main part, it contains the 'Target-CTRL" which is now a bone. There is also a ‘Curve’ object (Green color) which is parented to one of those bones - it has a bone from the ‘Armature_curve_holder’ clamped to it with a constraint, this holds the sliding parts to the rails. The only issue I have discovered thus far is when it ('Target-CTRL") moves too close to the track part. In top view grab the 'Target-CTRL" and move it back over top the track/base part, you will see what I am saying. If this is going to be a problem , let me know and I will try and find a different approach. I did not know how fast the ‘Rotator’ speed was to be, so I added a ‘Custom Property’ on the 'Target-CTRL" bone (find it in the Property Panel or Bone Panel), that will change the rotation speed. I prob forgot to mention something so just post back. Thanx

DISCLAIMER: This file was saved in 2.76, if using 2.7x it will open fine, IF using 2.8x, APPEND the objects from the ‘Object’ folder.

Hi ajcdfin,

You don’t know how long and how often I have thought about this and similar mechanical setups and all what I got was weird turn arounds, “rock solid” hinges, grand explosions of parts and so, aren’t you?

A BIG thank you ajcdfin for your help and for the solution!!!

The only thing is – you already mentioned it – that at extrem points, the sliding part on the rails doesn’t
follow anymore.
If this could be fixed it would be great – normally robot arms (an that alike) at assembly lines and such
have 369° turns.

Another thing: The Rotator rotates when moving Target-Ctrl linearly. On the other hand: The Target-CTRL can’t be rotated to rotate the Rotator in that way it rotates currently when moving the Target-CTRL linearly.

Best regards,

I have another idea, I will try and find time to work on that.

That part I was not sure about your goals, so I just took a stab at it, that part is easy to fix.

Hey, Try this for a solution - do it in this order, (1) Select “Armature_curve_holder” - “holder” bone in ‘pose’ mode, delete all the bone constraints on it. (2) Change that armature to ‘object’ mode (3) Hide the “rails” and “holder” mesh parts so they are not in the way (4) Select “Armature” - “MCH-Bone.axis_2_tracker” bone in ‘pose’ mode (5) Select “Armature_curve_holder” object > Shift select > “MCH-Bone.axis_2_tracker” bone > Ctrl + P > Bone. “MCH-Bone.axis_2_tracker” bone is already set to NOT inherient scale, so that should be good for that - only thing is, you will have to put some ‘Limit’ constraint on “Target-CTRL” bone to keep it from running off the rails, maybe a limit distance const might work. As far as the “rotator” rotation you can dis-able the driver or delete it. You won’t be able to rotate the “Target-CTRL”, because it will effect the IK target - but you can parent some thing to the “Rotator” bone and use it for rotations on the local ‘Y’ axis, dis-able or delete the driver so you can. That part I am still unclear as to how/when you want it to act, but that should get you closer to your goal. I will check back on monday to see if you got it. Thanx

Hey, Thank a lot for all your help and effort you put into this crazy piece of mechanical mess! I followed your and I think I can work out the rest by myself. Important for me was to learn, how to setup such thing and the logic behind that…
Best regards – have a nice weekend! :slight_smile:

1 Like

Hey, your welcome, just let me know if you have any issues. Thanx