### Author Topic: Inverse Kinematics  (Read 668 times)

0 Members and 1 Guest are viewing this topic.

#### MrPbigos

• Beginner
• Posts: 1
##### Inverse Kinematics
« on: May 22, 2013, 10:40:19 AM »
I have a question involving just a single z,y plane. If there was three arms, each has a joint. If the end effector was placed at any point on the plane there is an infinite number of solutions for the possible angles between the each of the lengths so that the end effector reaches that point. If I need to find just one set of solutions for those angles how would I go about it?

My thought is I would pick an angle for the first and then solve the last two angles.
Is this the simplest solution or is there an easier way to solve this?

I found a page on inverse kinematics but it is only for two arms not three. There are the equations for having just two arms but I need to find the most efficient way for three arms.
http://www.societyofrobots.com/robot_arm_tutorial.shtml#inverse_kinematics

#### jwatte

• Supreme Robot
• Posts: 1,343
##### Re: Inverse Kinematics
« Reply #1 on: May 22, 2013, 03:18:10 PM »
The reason there is no simple solution for three arms is that there is an infinite number of solutions (assuming there's a solution at all.)
The easiest way to do this would be to do as you say: pick an angle for the first arm joint, and then solve the other two arms using the two-arm IK solution.
You probably want to be "smart" about how you pick the initial angle; for example, have a look-up table of what angle to use based on how far away the target is, so that the arm folds more "away" when the target point is "close" or whatever.

#### Pomacs

• Beginner
• Posts: 4
##### Re: Inverse Kinematics
« Reply #2 on: June 08, 2013, 09:11:06 AM »
Great my brother, I'd like you to know that your problem is the main problem in Inverse Kinematics -Infinite solutions- to get a position. To further knowing about it -> This problems name with robot arms is redundancy problem -you have DOF more than you need - it's a research point and some methods of optimization are used for it,

For a small application your solution -mentioned by our brother above- is quiet acceptable , I'd like to offer keeping a range in which the first angle changes, i.e It isn't 20 degree all the way give it say 10 degrees and compute then say 20 degrees and compute the other two and go on this way. or just remove it if you don't need  but when working on a large scale and building arms for industrial or aerospace applications more effort is but to identify the best solution. How ?

Say in an application your arm carries  something from one place to another -> you like the movement is to be slow a bit and the torque to be least value so you keep the object while manipulated near the arm base but once placed in the other place. How do you like to come back to the first place ?  now few burdens on you.

You may choose the shortest path (a trajectory)
You may choose the fastest (some burdens added but you have another trajectory)
I hope you got the meaning, Your problem requires further search. Good luck

(See video of a robot whose name is Justin made by DLR)
« Last Edit: June 08, 2013, 09:14:29 AM by Pomacs »