I'm trying to rig a robot arm where every bone can rotate only around one axis. It works fine when i position them one by one, but if I put an IK bone to control the whole arm, the limit rotation constraints on all bones are ignored. I understand that the whole IK task changes dramatically when there are other constraints but was wondering whether there might be some solution to this.
When you have an bone set to use an IK constraint, every bone in that chain enables the Inverse Kinematics tab, found in the bone properties (almost down the bottom)
Here you can set limits on the XYZ axis of each bone. the X and Z axis limits show up in the display as a red and blue circle. Y doesnt show up as Y is rotation along the axis of the bone.
using axis limits does cause some popping, so you will want to use a Pole target for the IK constraint to allow better control.
When there's an IK chain, in the bone section of the properties panel you can limit the rotation and set the amount of stiffness and stretch of every bone involved in the chain.