I'm working on a design for a robotic leg that uses strings as "tendons" for extending and retracting the leg. This is as much a geometry problem as it is a mechanical engineering problem. Refer to the two simplified images below. Points A1 and B1 are where the lines are attached to the arms of a stepper motor centered at C. An axle runs through a joint at point D. The lines run around the D axle and attach to an outer leg segment at points A2 and B2 that rotates around an axle at point E. The rotation of the stepper motor thus controls the rotation of the outer leg segment around point E.
A separate mechanism (not shown) rotates the leg segment DE around the axle at point D. Between retraction and extension, the angle CDE can vary from 45 degrees to about 150 degrees. The problem is that when this leg segment is rotated, the line length from A1 to A2 and B1 to B2 changes because distance that the lines travel around the axle at point D changes. Compare the retracted and extended images. In the retracted position, the lines must be longer because they have to go around more of the surface of the axle at D. This results in the lines being either too tight in the retracted position or too loose in the extended position. The effect can be minimized by reducing the diameter of the axle at D, but its size is limited by other design constraints.
The question is whether the geometry around the axle at point D can be modified such that the line lengths can remain constant as the joint is rotated. My best guess is that this can be accomplished with a partial corkscrew shape around the axle and affixed to the DE segment such that as the leg is extended, it takes up the slack in the lines. I'm hoping that there are other geometric configurations that I have not considered that are easier to manufacture. The solution might also be one that minimizes the change in line length rather than completely eliminating it.