**5. Inverse kinematic for humanied manipulator with 27-DOFs**

Humanoid manipulators are the type of manipulator that practically suitable to coexist with human in builtfor-human environment because of its anthropomorphism, human friendly design and locomotion ability. Humanoid manipulator is different compare to other types of manipulators because the physical structure is designed to mimic as much as human's physical structure. Humanoid's shape shares many basic physical characteristics with actual humans, and for this reason, they are expected to coexist and collaborate with humans in environments where humans work and live. They may also be substituted for humans in hazardous environments or at disaster sites. These demands make it imperative for humanoid manipulators to attain many sophisticated motions such as walking, climbing stairs, avoiding obstacles, crawling, etc.

The *model* was designed in virtual reality to mimic as much as human characteristic, especially for contribution of its joints. The manipulator is consists of total of 27-DOFs: six for each leg, three for each arm, one for the waist, and two for the head. The high numbers of DOF's provide the ability to realize complex motions. Furthermore, the configuration of joints that closely resemble those of humans provides the advantages for the humanoid manipulator to attain human-like motion. Each joint feature a relatively wide range of rotation angles, shown in Table 1, particularly for the hip yaw of both legs, which permits the legs to rotate through wide angles when correcting the manipulator's orientation and avoiding obstacles. The specification of each joint rotation range is considered factors such as correlation with human's joint rotation range, manipulability of humanoid's manipulator, and safety during performing motions.(Nortman, 2001)

In this chapter, we propose and implement a simplified approach to solving inverse kinematics problems by classifying the robot's joints into several groups of joint coordinate frames at the robot's manipulator [11]. To describe translation and rotational relationship between adjacent joint links, we employ a matrix method proposed by Denavit-Hartenberg [12], which systematically establishes a coordinate system for each link of an articulated chain in the robot body.

## **Kinematical Solutions for 6-dof Arm**

The humanoid manipulator design has 6-DOF on each arm: 3-DOF (yaw, roll and pitch) at the shoulder joint, one DOF (roll) at the elbow joint and 2-DOF ((pitch and yaw) at the wrist joint. Fig. 13 shows the arm structure and configuration of joints and links. The coordinate orientation follows the right-hand law, and a reference coordinate is fixed at the intersection point of two joints at the shoulder. Fig. 13 displays a model of the arm describing the configurations and orientation of each joint coordinates. To avoid confusion, only the *x* and *z*-axes appear in the figure. The arm's structure is divided into seven sets of joint coordinate's frames as listed below:

Σ*0:* Reference coordinate.

106 Recurrent Neural Networks and Soft Computing

The key to understanding RTRL is to appreciate what this factor expresses. It is essentially a measure of the sensitivity of the value of the output of unit *k* at time *t* to a small change in the value of *wij*, taking into account the effect of such a change in the weight over the entire network trajectory from *t0* to *t*. Note that *wij* does not have to be connected to unit *k*. Thus this algorithm is non-local, in that we need to consider the effect of a change at one place in the network on the values computed at an entirely different place. Make sure you

Humanoid manipulators are the type of manipulator that practically suitable to coexist with human in builtfor-human environment because of its anthropomorphism, human friendly design and locomotion ability. Humanoid manipulator is different compare to other types of manipulators because the physical structure is designed to mimic as much as human's physical structure. Humanoid's shape shares many basic physical characteristics with actual humans, and for this reason, they are expected to coexist and collaborate with humans in environments where humans work and live. They may also be substituted for humans in hazardous environments or at disaster sites. These demands make it imperative for humanoid manipulators to attain many sophisticated motions such as walking, climbing

The *model* was designed in virtual reality to mimic as much as human characteristic, especially for contribution of its joints. The manipulator is consists of total of 27-DOFs: six for each leg, three for each arm, one for the waist, and two for the head. The high numbers of DOF's provide the ability to realize complex motions. Furthermore, the configuration of joints that closely resemble those of humans provides the advantages for the humanoid manipulator to attain human-like motion. Each joint feature a relatively wide range of rotation angles, shown in Table 1, particularly for the hip yaw of both legs, which permits the legs to rotate through wide angles when correcting the manipulator's orientation and avoiding obstacles. The specification of each joint rotation range is considered factors such as correlation with human's joint rotation range, manipulability of humanoid's manipulator,

In this chapter, we propose and implement a simplified approach to solving inverse kinematics problems by classifying the robot's joints into several groups of joint coordinate frames at the robot's manipulator [11]. To describe translation and rotational relationship between adjacent joint links, we employ a matrix method proposed by Denavit-Hartenberg [12], which systematically establishes a coordinate system for each link of an articulated

The humanoid manipulator design has 6-DOF on each arm: 3-DOF (yaw, roll and pitch) at the shoulder joint, one DOF (roll) at the elbow joint and 2-DOF ((pitch and yaw) at the wrist joint. Fig. 13 shows the arm structure and configuration of joints and links. The coordinate orientation follows the right-hand law, and a reference coordinate is fixed at the intersection point of two joints at the shoulder. Fig. 13 displays a model of the arm describing the configurations and orientation of each joint coordinates. To avoid confusion, only the *x* and *z*-axes appear in the figure. The arm's structure is divided into seven sets of joint

understand this before you dive into the derivation given next.(Baruch, 1999)

**5. Inverse kinematic for humanied manipulator with 27-DOFs** 

stairs, avoiding obstacles, crawling, etc.

chain in the robot body.

**Kinematical Solutions for 6-dof Arm** 

coordinate's frames as listed below:

and safety during performing motions.(Nortman, 2001)

Σ*1:* shoulder yaw coordinate.

Σ*2:* shoulder roll coordinate.

Σ*3:* shoulder pitch coordinate.

Σ*4:* elbow pitch coordinate.

Σ*5:* wrist pitch coordinate.

Σ*6:* wrist roll coordinate.

Σ*h:* End-effector coordinate (at the end of middle fingerer).


Table 1. Comparison Joint rotation range between humanoid manipulator and Human

Fig. 13. a. Configurations of joint coordinates at the Manipulator arm with 6-DOF. b. Structure of humanoid manipulator.

Recurrent Neural Network with Human Simulator Based Virtual Reality 109

2

tan 2( , )

*a xy*

tan( , 1 )

*aD D*

*c c*

222 2 1 4 1 23 13 1 23 23 23 33

tan 2( , ) tan 2( ,

*a x y dz d a cc r sc r s r*

 

cos( ), sin( ) *i i ii*

*cc c*

( ) :

*cc c*

*x y d zd a a where D*

5 1 13 1 23 1 13 1 23

 1 11 1 21 1 12 1 22 tan 2( , )

*a sr cr sr cr*

*sr cr sr cr*

2 22 222

2 3

*a a*

1 23 13 1 23 23 23 33

*cs r ss r c r*

tan 2( , 1 ( ) )

 

Each of the legs has 6-DOFs: 3-DOFs (yaw, roll and pitch) at the hip joint, 1-DOF (pitch) at the knee joint and two DOF (pitch and roll) at the ankle joint. A reference coordinate is taken at the intersection point of the 3-DOF hip joint. In solving calculations of inverse kinematics for the leg, just as for arm, the joint coordinates are divided into eight separate coordinate

Furthermore, the leg's links are classified into three groups to short-cut the calculations,

iii. From link 4 to link 6 (Coordinate joint number 5 to coordinate at the bottom of the foot).

This section introduces the basics of ANN architecture and its learning rule. Inspired by the idea of basing the feed forward and back propagation network structure. Fig.14 shows this structure , the Learning rule which is used in this paper is fast momentum back-propagation

iv. is to define the leg position, while iii) is to decide the leg's end-point orientation.

i. From link 0 to link 1 (Reference coordinate to coordinate joint number 1). ii. From link 1 to link 4 (Coordinate joint number 2 to coordinate joint number 4).

2

1 23

)

2

(14)

 

1

Kinematical Solutions for 6-dof Leg

Σ*h:* Foot bottom-center coordinate.

**6. Solution of IKP by using RNN** 

frames as listed bellow.

Σ*0:* Reference coordinate. Σ*1:* Hip yaw coordinate. Σ*2:* Hip roll coordinate. Σ*3:* Hip pitch coordinate. Σ*4:* Knee pitch coordinate. Σ*5:* Ankle pitch coordinate. Σ*6:* Ankle roll coordinate.

3

6

*where*

*a*

:

where each group of links is calculated separately as follows:

Basically, i) is to control leg rotation at the *z*-axis,

The solution in details is explain in the reference.(Youssof, 2007).

*c and s* 

Consequently, corresponding link parameters of the arm can be defined as shown in Table 2. From the Denavit-Hartenberg convention mentioned above, definitions of the homogeneous transform matrix of the link parameters can be described as follows:

$$h\_T^0 = \text{Rot}(\mathbf{z}, \theta) \text{Trans}(\mathbf{0}, \mathbf{0}, d) \text{Trans}(\mathbf{l}, \mathbf{0}, \mathbf{0}) \text{Rot}(\mathbf{x}, \alpha) \tag{12}$$

Here, variable factor *θ<sup>i</sup>* is the joint angle between the *xi-1* and the *xi* axes measured about the *zi* axis; *di* is the distance from the *xi-1* axis to the *xi* axis measured along the *zi* axis; α*i* is the angle between the *zi* axis to the *zi-1* axis measured about the *xi-1* axis, and *li* is the distance from the *zi* axis to the *zi-1* axis measured along the *xi-1* axis. Here, link length for the upper and lower arm is described as *l1* and *l2*, respectively. The following is used to obtain the forward kinematics solution for the robot arm. ( Yussof, 2007)


Table 2. DH parameters for the arm of humaniod manipulator.( \* ≡ joint variable ).

$$\begin{aligned} \boldsymbol{A}\_{1} &= \begin{bmatrix} c\_{1} & 0 & s\_{1} & 0 \\ s\_{1} & 0 & -c\_{1} & 0 \\ 0 & 1 & 0 & d\_{1} \\ 0 & 0 & 0 & 1 \end{bmatrix}; \boldsymbol{A}\_{2} = \begin{bmatrix} c\_{2} & 0 & s\_{2} & a\_{2} \\ s\_{2} & 0 & -c\_{2} & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \\ \boldsymbol{A}\_{3} &= \begin{bmatrix} c\_{3} & 0 & -s\_{3} & a\_{3} \\ s\_{3} & 0 & c\_{3} & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}; \boldsymbol{A}\_{4} = \begin{bmatrix} c\_{4} & 0 & -s\_{4} & 0 \\ s\_{4} & 0 & c\_{4} & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix} \\ \boldsymbol{A}\_{5} &= \begin{bmatrix} c\_{5} & 0 & s\_{5} & 0 \\ s\_{5} & 0 & -c\_{5} & 0 \\ 0 & 1 & 0 & 0 \\ 0 & 0 & 0 & 1 \end{bmatrix}; \boldsymbol{A}\_{6} = \begin{bmatrix} c\_{6} & 0 & s\_{6} & 0 \\ s\_{6} & 0 & c\_{6} & 0 \\ 0 & 1 & 0 & d\_{6} \\ 0 & 0 & 0 & 1 \end{bmatrix} \end{aligned} \tag{13}$$

The inverse kinematic is achieved by closed solution of above eqn's, and the general solution of angles of rotation can be summarized as follows:

$$\begin{aligned} \theta\_1 &= a \tan 2(x\_c, y\_c) \\ \theta\_3 &= a \tan(D, \pm \sqrt{1 - D^2}) \\ where: D &= \frac{x\_c^2 + y\_c^2 - d^2 + (z\_c - d\_1)^2 - a\_2^2 - a\_3^2}{2a\_2 a\_3} \\ \theta\_2 &= a \tan 2(\sqrt{x\_c^2 + y\_c^2 - d^2}, z\_c - d\_1) \\ \theta\_4 &= a \tan 2(c\_1 c\_2 r\_{13} + s\_1 c\_2 r\_{23} + s\_{23} r\_{33}) \\ &\quad - c\_1 s\_{23} r\_{13} + s\_1 s\_{23} r\_{23} + c\_{23} r\_{33}) \\ \theta\_5 &= a \tan 2(s\_1 r\_{13} - c\_1 r\_{23}, \pm \sqrt{1 - (s\_1 r\_{13} - c\_1 r\_{23})^2}) \\ \theta\_6 &= a \tan 2(-s\_1 r\_{11} + c\_1 r\_{21}, s\_1 r\_{12} + c\_1 r\_{22}) \\ where: \\ c\_i &= \cos(\theta\_i), and \quad s\_i = \sin(\theta\_i) \end{aligned} \tag{14}$$

Kinematical Solutions for 6-dof Leg

Each of the legs has 6-DOFs: 3-DOFs (yaw, roll and pitch) at the hip joint, 1-DOF (pitch) at the knee joint and two DOF (pitch and roll) at the ankle joint. A reference coordinate is taken at the intersection point of the 3-DOF hip joint. In solving calculations of inverse kinematics for the leg, just as for arm, the joint coordinates are divided into eight separate coordinate frames as listed bellow.

Σ*0:* Reference coordinate.

108 Recurrent Neural Networks and Soft Computing

Consequently, corresponding link parameters of the arm can be defined as shown in Table 2. From the Denavit-Hartenberg convention mentioned above, definitions of the

<sup>0</sup> ( , ) (0,0, ) ( ,0,0) ( , ) *Th Rot z Trans d Trans l Rot x*

Here, variable factor *θ<sup>i</sup>* is the joint angle between the *xi-1* and the *xi* axes measured about the *zi* axis; *di* is the distance from the *xi-1* axis to the *xi* axis measured along the *zi* axis; α*i* is the angle between the *zi* axis to the *zi-1* axis measured about the *xi-1* axis, and *li* is the distance from the *zi* axis to the *zi-1* axis measured along the *xi-1* axis. Here, link length for the upper and lower arm is described as *l1* and *l2*, respectively. The following is used to obtain the

Link di ai α<sup>i</sup> θ<sup>i</sup>

1 d1 0 π/2 θ\*

2 0 a2 0 θ\*

3 0 a3 0 θ\*

4 0 -π/2 0 θ\*

5 0 π/2 0 θ\*

6 d6 0 0 θ\*

1 1 2 22 11 22

*c s c sa sc sc*

00 00 ; 01 0 01 0 0 00 0 1 00 0 1 0 0 0 0 0 00 ; 01 0 0 01 0 0 00 0 1 00 0 1 0 0 00

00 0

Table 2. DH parameters for the arm of humaniod manipulator.( \* ≡ joint variable ).

1

*d*

3 33 4 4 33 44

6 0

*d*

010 000 1

*c sa c s sc sc*

5 5 66 5 5 66

*c s cs s c sc*

00 0

The inverse kinematic is achieved by closed solution of above eqn's, and the general

1 2

*A A*

solution of angles of rotation can be summarized as follows:

3 4

*A A*

5 6

 

*A A*

; 01 0 0 00 0 1

(12)

(13)

homogeneous transform matrix of the link parameters can be described as follows:

forward kinematics solution for the robot arm. ( Yussof, 2007)


Furthermore, the leg's links are classified into three groups to short-cut the calculations, where each group of links is calculated separately as follows:


The solution in details is explain in the reference.(Youssof, 2007).
