Open access peer-reviewed chapter

# New Strategy to Approach the Inverse Kinematics Model for Manipulators with Rotational Joints

By José-Emilio Vargas-Soto, Efren Gorrostieta-Hurtado, Saúl Tovar- Arriaga, Jesús-Carlos Pedraza-Ortega and Juan-Manuel Ramos- Arreguín

Submitted: November 14th 2015Reviewed: April 11th 2016Published: October 12th 2016

DOI: 10.5772/63541

## Abstract

The chapter describes a new strategy to approach the solution of the inverse kinematics problem for robot manipulators. A method to determine a polynomial model approximation for the joints positions is described by applying the divided differences with a new point of view for lineal path in the end-effector of the robot manipulator. Results of the mathematical approach are analysed by obtaining the kinematics inverse model and the approximate model for lineal trajectories of a manipulator for three degrees of freedom. Finally, future research approaches are commented.

### Keywords

• inverse kinematics approach

## 1. Introduction

The modeling of robot manipulators with rotational joints has been extensively studied for decades. A robot manipulator is formed from the mechanical point of view by a kinematic chain of rigid bodies (links) which are joined together by linear or rotational joints. The modeling of the kinematics for a robot manipulator allows us to analyze the movements of the end-effector in order to perform a specific task.

To determine the kinematics model for a robot manipulator, conventionally there are two types of analysis, the first is called “Direct Kinematics Problem” and the second analysis is “Inverse Kinematics Problem.” Depending on what is required for a specific task in the manipulator, different mathematical models can be used to control the behavior of a wide variety of robot manipulators . The Direct Kinematics Problem determines the position of the end-effector of the robot manipulator as a function of the degrees of freedom (joint), wherein each degree of freedom is an independent movement in the mechanical structure of the robot manipulator. In contrast, the Inverse Kinematics Problem is oriented to determine the variation of the degrees of freedom of the manipulator according to the kinematics of the end-effector of the robot manipulator. This last situation is usually more complex from the point of view of mathematical modeling and its solution, given the high nonlinearity of behavior of the robot manipulators. A further disadvantage of conventional models of the Inverse Kinematics Problem is called redundancy. This happens when more than one solution is obtained by the mathematical model of the robot manipulator, causing theoretical configurations that do not occur in practical movements of an industrial manipulator. Additionally, another problem that occurs in the analysis of manipulators is when matrices for translations and rotations are used in the modeling. There is the possibility that this inverse matrix shows singular points, causing undefined mathematical solutions. Translations and rotations are essentials to solve the Kinematics Inverse Problem, to do that, auxiliary reference systems are used to refer the kinematics of the end-effector in the reference inertial system. In this regard, this chapter shows a new strategy to solve the Inverse Kinematics Problem for manipulators with rotational joints by approximating with cubic polynomial functions that define the positions of the joints.

## 2. Solutions for the Inverse Kinematics Problem

One of the first methods developed to solve the inverse kinematics for manipulator is by "Algebraic Method". In general, the algebraic methods are obtained by vector equations that respond to the links geometry of the manipulator. By this way, trigonometric relationships and algebraic equations are obtained to get mathematical functions that determine the behavior of the degrees of freedom in the manipulator . It might be supposed that this method is the most effective however; it presents mathematical uncertainties, inconsistencies, and considerable complexity.

Another method developed to determine inverse kinematics is by spatial geometry. This method is based on the decomposition of the spatial geometry of the manipulator in planar geometric systems. For many serial or parallel manipulators, this decomposition is simple when the axes of consecutive degrees of freedom present changes as 0°, 90°, and 270°. However, it is not always the case, so this method cannot always be applied. The inverse kinematics of each degree of freedom usually has more than one solution. Also, given the trigonometric relationships of mathematical models obtained, they cannot always be solved because it is more complex to obtain an exact solution for a greater number of degrees of freedom [7, 8].

One of the most used alternative to solve the inverse kinematics of robot manipulators is based on Newton methods. These algorithms seek target configurations which posed as solutions to minimization problem . Due to extreme complexity, these methods are known to be less practical. There are also methods based on statistical filtering  and sequential iterative approaches . However, these statistical methods suffer high computational cost.

Research about the use of polynomial functions with some relationships with the inverse kinematics problem for manipulators is not new. However, some of the applications are oriented to trajectory planning , and also to solve the inverse kinematics problem by polynomial of n-degrees by using genetic algorithms [13, 14].

This work presents a novel approach to the inverse kinematic problem by cubic polynomial functions which are built under the definition of new parameters and the divided differences recursive method. The present approach is different to other strategies to get a solution for inverse kinematics problem. The benefits of the proposed method are essentially the simplicity to obtain a polynomial function for rotational joints that solve the inverse kinematics problem (position, speed, and acceleration), and the warranty to get a unique solution with no singularities. However, as many of the mathematical models that attempt to describe a real physical phenomenon, the method has several restrictions: bi-dimensional work space, the end-effector paths are straight lines, two joints are free and a third joint have fixed orientation, and four points of the path trajectory are needed.

## 3. The method of divided differences

From the mathematics point of view, the divided differences is a recursive division process of increments. The method can be used to calculate the coefficients in the interpolation polynomial in the Newton form when data points (xi, yi) are known, where i is an integer ranging from 0 to (n−1) and n is the number of points.

By definition, it is called divided difference of fin the points (xi, yi) to the value f[x0, x1, x2, .., xk] which is calculated recursively by these equations :

f[xi]=f(xi)=yiE1
f[xi,xi+1]=f[xi+1]f[xi]xi+1xiE2
f[xi,xi+1,,,xi+k]=f[xi+1,xi+2,..,xi+k]f[xi,xi+1,..,xi+k1]xi+kxiE3

To properly apply the method, it is essential to order in a table the values corresponding to the points (xi, yi), so that the xi column is sorted from the highest to lowest number, or vice versa. Considering an approach with four known points, the divided differences are defined as shown in Figure 1:

Such polynomial function f(x) is determined as:

f(x)=f[x0]+f[x0,x1](xx0)+f[x0,x1,x2](xx0)(xx1)+f[x0,x1,x2,x3](xx0)(xx1)(xx2)E4

or expressed in the reduced form:

f(x)=f[x0]+i=1n1(f[x0,,xi]*ji1(xxj))E5

## 4. Polynomial approach strategy

A new feature in the mathematical development shown in this work is to adapt the method of divided differences to approximate the functions that define the changes of the rotational joints θ1iy θ2i. For the approximation by polynomials, a table of four points known of the manipulator robot is formed; then the polynomial approach strategy can be applied. It is important to mention that for the analysis developed in this work, it is considered a robot manipulator with three rotational joints.

Point ixiyiθ1iθ2iθ3i
1x1y1θ11θ21θ31
2x2y2θ12θ22θ32
3x3y3θ13θ23θ33
4x4y4θ14θ24θ34

### Table 1.

Known values of the four positions of the manipulator.

Before showing how to construct polynomials, it is relevant to note that the movement of the end-effector of the robot manipulator performs a linear motion by keeping constant the orientation of the end-effector (θ3). In the case of analysis shown in the X-Y coordinate plane, the positions changes occur in both coordinates. In this case, proportionality of change of θ1and θ2will be done considering the changes of x with respect to y. This is because both coordinates participate proportionally varying θ1 and θ2. To this end, we have defined two new indices denominated: incidence factor of x, and incidence factor of y. Both indices respond to the model of linear proportionality by the following equations:

θ1=(Incidencefactorofx)θ1+(incidencefactorofy)θ1E6
θ2=(incidencefactorofx)θ2+(incidencefactorofy)θ2E7

Taking into account that the sum of the percentages of both coordinates is 100%, the incidence factor of y in θ (in percentage) is determined as:

%ofy=100%%ofxE8

For example, for the line defined by the equation y = x, the proportionality of the change is the same for both coordinates, so the variation of the x coordinate has a 50% incidence in the changes of θ1 and θ2. Similarly, the variation of the y-coordinate has a 50% incidence in the changes of θ1 and θ2.

The determination % of x is obtained by the value of the slope of the straight line m, the incidence factor of x in θ (percentage) is calculated using the following equation:

%ofx=1001+|m|E9

The absolute value of m is obtained because it is only of our interest to obtain the proportionality of the changes of the angles θ1 and θ2 as a function of lineal movements. So that,

θ1=θ1(x,y)=(%ofx100%)θ1+(%ofy100%)θ1E10

similarly,

θ2=θ2(x,y)=(%ofx100%)θ2+(%ofy100%)θ2E11

The tables to determine the polynomials that approximate the behavior of the angle θ1 are built based on the new approach strategy presented here, remaining as:

iXi(% ofxi100%)θ1i
1x1(% ofx1100%)θ11
2x2(% ofx2100%)θ12
3x3(% ofx3100%)θ13
4x4(% ofx4100%)θ14

### Table 2.

x vs. influence of x in θ1.

iYi(% ofyi100%)θ1i
1y1(% ofy1100%)θ11
2y2(% ofy2100%)θ12
3y3(% ofy3100%)θ13
4y4(% ofy4100%)θ14

### Table 3.

y vs. influence of y in θ1.

In a similar way,

IXi(% ofxi100%)θ2i
1x1(% ofx1100%)θ21
2x2(% ofx2100%)θ22
3x3(% ofx3100%)θ23
4x4(% ofx4100%)θ24

### Table 4.

x vs. influence of x in θ2.

iYi(% ofyi100%)θ2i
1y1(% ofy1100%)θ21
2y2(% ofy2100%)θ22
3y3(% ofy3100%)θ23
4y4(% ofy4100%)θ24

### Table 5.

y vs. influence of y in θ2.

One of the contributions of the strategy presented here is the composition of polynomial functions of the joints of the robot manipulator θ1and θ2, both as independent functions of "x" and "y". These compositions are defined as the following equations:

θ1(x,y)=(a0+a1x+a2x2+a3x3)+(b0+b1y+b2y2+b3y3)E12
θ2(x,y)=(c0+c1x+c2x2+c3x3)+(d0+d1y+d2y2+d3y3)E13

where ai, bi are coefficients obtained from Tables 2 and 3, and the coefficients ci, di are obtained by Table 4 respectively. Thus, divided differences are shown in Figure 2.

where,

Δ11=θ1θ0x1x0E14
Δ12=θ2θ1x2x1E15
Δ13=θ3θ2x3x2E16
Δ21=Δ12Δ11x2x0E17
Δ22=Δ13Δ12x3x1E18
Δ31=Δ22Δ21x3x0E19

developing the general equation,

ϑ(x)=ϑ[x0]+i=1n1(ϑ[x0,,xi]×ji1(xxj))E20

This equation allows us to obtain the model of the polynomial that approximates the angular position θ with respect to the variable x.

ϑ(x)=f[x0]+Δ11(xx0)+Δ21(xx0)(xx1)+Δ31(xx0)(xx1)(xx2)E21

In developing this equation and simplifying results,

θ(x)=(θ0Δ11+Δ21x0x1Δ31x0x1x2)+[Δ11+Δ21(x1x0)+Δ31(x0x1+x2(x1+x0))]x+[Δ21+Δ21(x2x1x0)]x2+Δ31x3E22

Similarly, the polynomial θ(y) is obtained, which has the following form:

θ(y)=(θ0Δ11+Δ21y0y1Δ31y0y1y2)+[Δ11+Δ21(y1y0)+Δ31(y0y1+y2(y1+y0))]y+[Δ21+Δ21(y2y1y0)]y2+Δ31y3E23

Clearly, the differences divided for this equation refers to the rate of change of the θ with respect to y, being defined by the polynomial approximation model of joint θ1 and θ2 of the robot manipulator, which in simplified form are expressed as:

θ1(x,y)=θ1(x)+θ1(y)E24
θ2(x,y)=θ2(x)+θ2(y)E25

## 5. Development of the approach by polynomials

In this section, the strategy proposed to approach the Kinematics Inverse Problem by polynomial functions of the rotational joints of a robot manipulator is shown. The procedures to three different cases of lineal path in the end-effector are analysed: a) slope of a straight line, m = 1, b) slope of a straight line, m < 1 and c) slope of a straight line, m > 1. To show the procedures, it is important to describe the mechanical configuration of the robot manipulator that is shown in Figure 3.

The three degrees of freedom that are considered known in the plane of the robot manipulator moves are (x, y, θ3). The link in the base of the robot manipulator is 35 units of effective length, the second link is 30 units of length, and third link is 10 units of length. The orientation of the end-effector is considered constant during the lineal movements.

Remembering that the procedure exposes that four positions of the configuration robot are known, the approach by polynomial function are described in the next lines:

a) Case 1. Slope of a straight line, m = 1.

In order to show the effectiveness of the developed strategy, the movement of the end-effector of the robot manipulator was selected by considering that the maximum length of the lineal trajectory is close to the effective length of link 1. For this case, the orientation of the end-effector is 90° and is keeping constant during its moves. Under these considerations, Figure 4 shows the selected lineal trajectory.

The values of the four known positions of the robot manipulator are shown in Table 6.

xyΘ1 [°]Θ2 [°]Θ3 [°]
−1525193.51°50.58°90°
−535158.15°23.53°90°
040144.28°18.59°90°
1050121.37°19.71°90°

### Table 6.

The four known positions of the lineal trajectory.

The incidence factor of x in θ, according to Eq. (9) and the value of the slope of a straight line is calculated as:

%ofx=1001+|m|=1001+|1|1002=50E26

Then, from Eq. (8) the incidence factor of y in θ takes the next value:

%ofy=100%%ofx=10050=50E27

Considering both factors, the tables to obtain the polynomial functions for the joint θ1 are defined as:

iXiθ1i(x)
1−1596.755
2−579.075
3072.14
41060.685

### Table 7.

x vs. incidence of x in θ1.

iYiθ1i(y)
12596.755
23579.075
34072.14
45060.685

### Table 8.

y vs. incidence of y in θ1.

The polynomial approach of Table 7 is determined by the divided differences according to Eqs. (14) to (19). In this way, next table shows the values obtained:

Xiθ1i(x)Δ1iΔ2iΔ3i
−1596.755−1.7680.0254−0.000372
−579.075−1.3870.0161
072.14−1.1455
1060.685

### Table 9.

Values of the divided differences for θ1(x).

Applying Eq. (22) and simplifying results:

θ1(x)=72.141.2879x+0.0179x20.000372x3E28

This polynomial function represents the incidence of x in joint of θ1. To complete the approach, it is also necessary to add the incidence of y in the same joint of θ1. So the polynomial approach from Table 8 is obtained by applying Eqs. (14) to (19).

Yiθ1i(y)Δ1iΔ2iΔ3i
2596.755−1.7680.0254−0.000372
3579.075−1.3870.0161
4072.14−1.1455
5060.685

### Table 10.

Values of the divided differences for θ1(y).

Applying Eq. (23) and simplifying it gives:

θ1(y)=176.24.5103y+0.0626y20.000372y3E29

According to Eq. (24) the complete function approximation of θ1 becomes:

θ1(x,y)=248.341.2879x+0.0179x20.000372x34.5103y+0.0626y20.000372y3E30

The next step is to obtain the function approximation of θ2(x). According to the above procedure, the differences divided for Table 8 to get the polynomial approximation with respect of x takes the form:

Xiθ2i(x)Δ1iΔ2iΔ3i
−1525.29−1.35250.05723−0.0008267
−1511.765−0.4940.0366
09.2950.056
109.855

### Table 11.

Values of the divided differences for θ2(x).

Applying Eq. (22) and simplifying it gives:

θ2(x)=9.2950.26953x+0.04078x20.00082267x3E31

Similarly, the divided differences of Table 8 to get the polynomial approximation for θ2(y) takes the form:

Yiθ2i(y)Δ1iΔ2iΔ3i
2525.29−1.35250.05723−0.0008267
3511.765−0.4940.0366
409.2950.056
509.855

### Table 12.

The divided differences values for θ2(y).

Applying Eq. (23) and simplifying it gives:

θ2(y)=137.9757.48073y+0.1395y20.00082267y3E32

According to Eq. (25) the complete function approximation of θ2 becomes:

θ2(x,y)=147.270.26953x+0.04078x20.00082267x37.48073y+0.1395y20.00082267y3E33

Obtaining result from the complete approximation by polynomials θ1 and θ2:

θ1(x,y)=248.341.2879x+0.0179x20.000372x34.5103y+0.0626y20.000372y3E34
θ2(x,y)=147.270.26953x+0.04078x20.00082267x37.48073y+0.1395y20.00082267y3E35
x(15,10);y(25,50)

After obtaining the desired approach, the next step is to check the positions of the end-effector of the robot manipulator in order to verify that a lineal trajectory is made. According to the Direct Kinematics Model of the robot manipulator, the approximate position of the end-effector is determined by:

[xaproxyaprox]=[L1cosθ1(x,y)+L2cosθ2(x,y)+L3cosθ3L1sinθ1(x,y)+L2sinθ2(x,y)+L3sinθ3]E36

Remembering that L1 = 35, L2 = 30, L3 = 10 y θ3 = 90°, the Eq. (36) is evaluated in the range x(15,50)where y(x) = x + 40. Considering an increment Δx = 2.5, the following table is obtained:

xyΘ1(x,y)[°]Θ2(x,y)[°]xapproxyapprox
−1525193.49750.580−14.98325.007
−12.527.5183.53441.286−12.39127.637
−1030174.36833.782−9.89630.116
−7.532.5165.93027.915−7.44132.554
−535158.14923.530−4.98035.004
−2.537.5150.95520.473−2.49337.485
040144.28018.5900.01939.998
2.542.5138.05317.7262.54442.530
545132.20517.7285.06345.061
7.547.5126.66518.4407.56047.565
1050121.36419.71010.02650.003

### Table 13.

Values of θ1, θ2, xapprox and yapprox.

In order to ensure the validity of the polynomial function, the Error of x, Error of y, and Error(x, y) are calculated by the next equations:

Errorofx=xxaproxE37
Errorofy=yyaproxE38
Error(x,y)=(xxaprox)2+(yyaprox)2E39

Getting the following table for the values of Table 13:

xyError of xError of yError (x, y)
−1525−0.017−0.0070.0179
−12.527.5−0.109−0.1370.1754
−1030−0.104−0.1160.1555
−7.532.5−0.059−0.0540.0801
−535−0.020−0.0040.0206
−2.537.5−0.0070.0150.0161
040−0.0190.0020.0190
2.542.5−0.044−0.0300.0529
545−0.063−0.0610.0879
7.547.5−0.060−0.0650.0881

### Table 14.

Errors of the polynomial approach.

The error of interest is the maximum error, in this case the maximum error is 0.1754 units and occurs in the point (−12.5, 27.5). The percentage of maximum error is determined by the following equation:

%Maximumerror=|Maximumerror(x,y)|(xfxi)2+(yfyi)2×100E40

where (xi, yi) are the coordinates of the starting point and (xf, yf) are the coordinates of the endpoint. That is, for an error rate, the maximum error is compared with the path length. Substituting values in Eq. (40), it gives:

%Maximumerror=|0.1754|(10(15))2+(5025)2×100=0.496%E41

Considering that this value is acceptable, Eqs. (34) and (35) can be used to do a lineal trajectory in the end-effector of the robot manipulator.

b) Case 2. Slope of a straight line, m < 1.

Similarly, as in the previous case, the end-effector of the robot manipulator makes a lineal path, which is shown in Figure 5. In this case it is considered θ3 as a constant, with the value of 45°.

For this case, the values of four known positions of the manipulator robot are shown in the following table.

xyΘ1[°]Θ2[°]Θ3[°]
−1045159.3458.4645
040153.8735.6945
1035139.489.9445
2030117.01-15.9945

### Table 15.

Four known positions of the manipulator, negative slope.

The four known positions correspond to the linear relationship y = −0.5 x + 40. Considering that slope: m = −0.5, the incidence factors can be calculated by the (8) and (9) equations, like this:

%ofx=1001+|m|=1001+|0.5|=1001.5=66.66E42
%ofy=100%%dex=10066.66=33.34E43

According to the presented strategy, the incidence table to approximate polynomial functions θ1 takes the next form:

ixiθ1i(x) [°]
1−10106.216
20102.569
31092.977
42077.998

### Table 16.

x vs. incidence of x in θ1.

iyiθ1i(y) [°]
14553.108
24051.284
33546.488
43038.999

### Table 17.

y vs. incidence of y in θ1.

Calculating the polynomial approximation to θ1(x), the next table is obtained:

Xiθ1i(x)Δ1iΔ2iΔ3i
−10106.2165−0.3647−0.0297259.3x10-5
0102.569−0.9592−0.026935
1092.977−1.4979
2077.998

### Table 18.

Divided differences values for θ1(x).

Applying Eq. (22) and simplifying it gives:

θ1(x)=102.5690.67125x0.029725x2+9.3×105x3E44

Likewise,

Yiθ1i(y)Δ1iΔ2iΔ3i
4553.108−0.3648−0.05944−0.000372
4051.2840.9592−0.05386
3546.4881.4978
3038.999

### Table 19.

Divided differences values for θ1(y).

Applying Eq. (23) and simplifying it gives:

θ1(y)=46.864+3.6409y0.0148y20.000372y3E45

The complete function approximation of θ1 becomes:

θ1(x,y)=55.7050.67125x0.029725x2+9.3×105x3+3.6409y0.0148y20.000372y3E46

Also, the tables to approximate polynomial functions θ2 are:

iXiθ2i(x)
1−1038.969
2023.790
3106.626
420−10.658

### Table 20.

x vs. Incidence of x in θ2.

iYiθ2i(y)
14519.484
24011.895
3353.313
430−5.329

### Table 21.

y vs. incidence of y in θ2.

Calculating the polynomial approximation for the Tables 20 and 21, we obtain:

θ2(x)=23.791.64823x0.009925x2+0.00031083x3E47
θ2(y)=6.1932.7342y+0.12942y20.001244y3E48

According to Eq. (25) the function approximation of θ2 becomes:

θ2(x,y)=17.5971.64823x0.009925x2+0.00031083x32.7342y+0.12942y20.001244y3E47

Determining the complete polynomial approximation of θ1 and θ2 by Eqs. (46) and (47) respectively, it results to:

θ1(x,y)=55.7050.67125x0.29725x2+9.3×105x3+3.6409y0.0148y20.000372y3E48
θ2(x,y)=17.5971.64823x0.009925x2+0.00031083x32.7342y+0.12942y20.001244y3E49
x(10,20);y(45,30)

Applying the direct kinematic model of the robot manipulator defined by Eq. (36), it proceeds to verify polynomials approach θ1 and θ2. In this case, θ3 is a constant with the value of 45°, where y = −0.5 x + 40, with x ∈ (−10.20). Considering an increase Δx = 3 units, the following table is obtained:

xyΘ1(x,y)[°]Θ2(x,y)[°]xapproxyapprox
−1045159.32458.453−9.97944.995
−743.5158.66952.102−7.10343.476
−442157.15845.306−4.08541.984
−140.5154.81538.142−1.00740.493
239151.66230.6852.06538.994
537.5147.72123.0095.09337.489
836143.01615.1928.06535.989
1134.5137.5687.30810.99534.502
1433131.401−0.56613.92333.028
1731.5124.536−8.35716.91031.543
2030116.997−15.98720.02329.995

### Table 22.

Values θ1, θ2, xapprox and yapprox.

Applying Eqs. (37), (38), and (39) the table of the errors become:

XyError of xError of yError(x, y)
−1045−0.0210.0050.0218
−743.50.1030.0240.1062
−4420.0850.0160.0863
−140.50.0070.0070.0099
239−0.0650.0060.0654
537.5−0.0930.0110.0938
836−0.0650.0110.0656
1134.50.005−0.0020.0059
14330.077−0.0280.0816
1731.50.090−0.0430.0995

### Table 23.

Errors of the polynomial approach.

The maximum error occurs at (−7, 43.5). From Eq. (40) the maximum percentage of error becomes:

%Maximunerror=|0.1062|(20(10))2+(3045)2×100=0.316%E50

Similarly as in the previous case, this value is reasonably acceptable. So for this case, Eqs. (48) and (49) can be used to do the lineal trajectory in the end-effector of the robot manipulator.

c) Case 3. Slope of a straight line, m > 1.

As in the two previous cases, the end-effector of the robot performs a linear path. In this case, the geometric robot positions were made considering an infinite slope (x = constant). Figure 6 shows these positions, and the angle of the end-effector is considered constant with a value of 180°.

The values of the known positions are shown in the Table 24:

XyΘ1 [°]Θ2 [°]Θ3 [°]
−50−20248.6155.16180
−50−10239.46137.78180
−500226.55122.06180
−5015203.45105.24180

### Table 24.

Four know positions of the manipulator, infinite slope.

Considering that slope: m = ∞, the incidence factors can be calculated by the (8) and (9) equations like this:

%ofx=1001+|m|=1001+||=100=0E51
%ofy=100%%dex=100E52

As expected, the change in x has no any incidence on changes in θ1 and θ2, it is in this case that the change of y causes the change in both degrees of freedom of the robot manipulator.

The incidence tables to approximate polynomial functions θ1 and θ2 take the next form:

Iyiθ1i(X) [°]
1-20248.6
2-10239.46
30226.55
415203.45

### Table 25.

y vs. incidence of y in θ1.

Iyiθ2i(X) [°]
1-20155.16
2-10137.78
30122.06
415105.24

### Table 26.

y vs. incidence of y in θ2.

Performing the same procedure as in the previous cases, the desired functions of polynomial approximation are obtained for both Tables 25 and 26:

θ1(y)=226.551.4287y0.01123y2+0.000254y3E53
θ2(y)=122.061.4334y+0.01663y2+0.0002779y3E54

In this case θ3 = 180°, with y(20,15)and x = 50. Considering an increase Δx = 3.5 units, the following Table 27 is obtained:

yΘ1(X, Y)[°]Θ2(X, Y)[°]yaproxError of y
−20248.600155.16−19.983−19.983
−16.5245.925148.990−16.5000.000
−13242.667142.894−12.994−0.006
−9.5238.891136.940−9.484−0.016
−6234.663131.199−5.979−0.021
−2.5230.048125.743−2.481−0.019
1225.110120.6441.014−0.014
4.5219.917115.9724.512−0.012
8214.532111.7998.015−0.015
11.5209.021108.19811.520−0.020
15203.450105.23915.017−0.017

### Table 27.

Values θ1, θ2, yaprox, and Error of y.

The maximum error in this case is in y =−6. From Eq. (40) the maximum percentage of error becomes:

%errormáximo=|0.021|(5050)2+(15(20))2×100=0.06%E55

This value is so small that it can provide security to use the approximation obtained by Eqs. (53) and (54).

Until now, there have been three different cases that demonstrate an acceptable approximation in the position of θ1 and θ2 by polynomial functions. Given that the position of the end-effector of the robot is known, it is considered in this work that the speed and acceleration of the end-effector are well-known. Considering that the polynomial approximation for any degree of freedom has the following form:

θ(x,y)=c0+c1x+c2x2+c3x3+c1y+c2y2+c3y3E56

Deriving this equation, the speed for any degree of freedom is defined as:

θ˙(x,y)=ddt(θ(x,y))=θ(x,y)dx*dxdt+θ(x,y)dy*dydtE57

Deriving newly, the acceleration for any degree of freedom becomes:

θ¨ (x,y)= ddt (θ (x,y)dx) * dxdt+ θ (x,y)dx * ddt ( dxdt)+  ddt (θ (x,y)dy) * dydt+ θ (x,y)dy * ddt ( dydt)E58

By applying Eqs. (57) and (58), speed and acceleration for any degrees of freedom of the manipulator can be obtained respectively.

## 6. Conclusions

One of the basic activities related to the movement of industrial robots is the solution of the Inverse Kinematics Problem. This chapter has presented a new strategy that allows for an approximate solution without the use of conventional methods. However, the approach method has several restrictions. Thus, it is possible to achieve an alternative solution to the Inverse Kinematics Problem by polynomial functions that define the behaviour of the rotational joints. An advantage of this strategy is that it is easy to implement, and after getting the polynomial function for the position of the joints, the speed and acceleration can be obtained by conventional derivation.

Moreover, because this approach is made from four known configurations of the robot, it can be considered that the methodology described is a way of discretizing the continuous kinematics of the robot, which is an interpolation technique to the inverse kinematic problem.

Given the restrictions described in the analysed cases, further research is needed to determine if this strategy could be used for nonlinear paths; or for a kind of paths that require changes in the orientation of the end-effector, and also explore the possibility to extend the method for manipulator with more degrees of freedom.

chapter PDF
Citations in RIS format
Citations in bibtex format

## More

© 2016 The Author(s). Licensee IntechOpen. This chapter is distributed under the terms of the Creative Commons Attribution 3.0 License, which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.

## How to cite and reference

### Cite this chapter Copy to clipboard

José-Emilio Vargas-Soto, Efren Gorrostieta-Hurtado, Saúl Tovar- Arriaga, Jesús-Carlos Pedraza-Ortega and Juan-Manuel Ramos- Arreguín (October 12th 2016). New Strategy to Approach the Inverse Kinematics Model for Manipulators with Rotational Joints, Automation and Control Trends, Pedro Ponce, Arturo Molina Gutierrez and Luis M. Ibarra, IntechOpen, DOI: 10.5772/63541. Available from:

### Related Content

#### Automation and Control Trends

Edited by Pedro Ponce

Next chapter

#### Models for the Reliability Analysis of Digital Instrumentation and Control Systems for Nuclear Power Plants

By Jonathan M. O. Pinto, Ian B. Gomes, Pedro L. C. Saldanha, Eustério B. Furieri and Paulo F. F. e Melo

#### New Applications of Artificial Intelligence

Edited by Pedro Ponce

First chapter

#### Intelligent System for Controlling a Three-Phase Active Filter

By Raluca Rob, Gelu Ovidiu Tirian and Caius Panoiu

We are IntechOpen, the world's leading publisher of Open Access books. Built by scientists, for scientists. Our readership spans scientists, professors, researchers, librarians, and students, as well as business professionals. We share our knowledge and peer-reveiwed research papers with libraries, scientific and engineering societies, and also work with corporate R&D departments and government entities.