Journal of Robotics, Networking and Artificial Life
Vol. 8(1); June (2021), pp. 56–59
DOI: https://doi.org/10.2991/jrnal.k.210521.013; ISSN 2405-9021; eISSN 2352-6386
https://www.atlantis-press.com/journals/jrnal

Research Article

Kinematic Modeling and Simulation of Dual-Arm RobotJiwu Wang, Junxiang Xu*
School of Mechanical and Electronic Engineering, Beijing Jiaotong University, Beijing, Haidian District, China

ARTICLE INFOABSTRACTArticle History

In recent years, dual-arm robots have attracted more and more attention due to their advantages such as strong cooperationability and high flexibility. With the improvement of real-time requirement of dual-arm cooperation, the inverse kinematics
solution of robot becomes a key problem to be solved urgently. To solve the time-consuming problem of inverse kinematics ofrobot arm, a closed inverse kinematics solution algorithm for humanoid dual-arm robot was proposed. The effectiveness of thealgorithm was verified by simulation.

Received 02 December 2020
Accepted 22 April 2021
Keywords
Dual-arm robots
real-timeinverse kinematics
simulation© 2021 The Authors. Published by Atlantis Press B.V.
This is an open access article distributed under the CC BY-NC 4.0 license (http://creativecommons.org/licenses/by-nc/4.0/).

1. INTRODUCTION
Humanoid dual-arm robot is a kind of bionic robot designed byimitating the shape, structure and function of human body. It canwork with both hands cooperatively just like human. The inverse
kinematics of manipulator mainly includes geometric method,
analytical method and numerical method. The geometric method
is a special case of analytic method in some cases, and its applicability is weak [1,2]. Analytical inverse kinematics of the manipulator
can efficiently obtain all the inverse solutions of the manipulator
in the desired position, but the manipulator must satisfy the Piper
criterion [3]. The numerical method has no special requirements
for the joint number and structure of the manipulator, but it needs
to be solved through continuous iteration, which not only takes along time, but the average calculation error is also 10 times that of
the analytical method [4,5].
Because it takes a long time to meet the accuracy requirement andsolve the problem of manipulator inverse kinematics solution, theanalytical solution is adopted. In Section 2, a closed inverse kinematics algorithm is proposed for the humanoid robot arms. Thealgorithm is used for simulation analysis in Section 3. And weverify the effectiveness of the algorithm in Section 4.

2. KINEMATIC MODELING OF
DUAL-ARM ROBOT
2.1. Forward Kinematics
The robot model in this paper is shown in Figure 1. Each armof the robot has six Degrees of Freedom (DOF). The three axes
Corresponding author. Email: 19121251@bjtu.edu.cn*of the shoulder joint intersect at one point. Because this caseconforms to the Piper criterion, there are analytic solutions. Ingeneral, the end of the robot meets the Piper criterion, but theshoulder joint of the humanoid robot generally meets the Pipercriterion. Although it looks the same, their solutions are different. Taking the shoulder joint as the basic coordinate frame [6],Figure 1 also shows the link coordinate frames of the right arm
and its D–H parameters. Where joint i represents the i-th jointof the manipulator, qi is the angle between xi−1 and xi, di is thedistance between xi−1 and xi, ai is the distance between zi−1 and zi,
ai is the angle between zi−1 and zi. The left arm and the right arm
are identical.
The position and orientation of the end-effector can be obtained bychain-multiplying the six link-transformation matrices together toobtain the spatial displacement of the sixth coordinate frame withrespect to the base coordinate frame:
6T6 = Õ i -1 Ai = 0 A1 1 A2 2 A3 3 A4 4 A5 5 A60i =1éx	 = 6ê0ëy6 z 6 p6 ù én s a p ù =0 0 1 úû êë 0 0 0 1 úû(1)Where xi, yi and zi represent the unit vectors along the principal
axes of the coordinate frame i, i-1Ai is a general link transformation
matrix, relating the i-th coordinate frame to the (i − 1)th coordinate frame, and [n, s, a, p] represents the normal vector, the sliding vector, the approach vector and the position vector of the hand
respectively.

2.2. Inverse Kinematics
We take the inverse of both sides of Equation (1). The new matrix
T ′ isJ. Wang and J. Xu / Journal of Robotics, Networking and Artificial Life 8(1) 56–59

57

The left-hand side of E4 is a11 a12 a13 a14 a21 a22 a23 a24 		 EL 4 = a31 a32 a33 a34 01 0 0(8)And the right-hand side of E4 isC1C2C3 − S1S3
 −C S
1 2ER 4 = 
S1C3 + C1C2S30
Figure 1 | Link coordinate frames of the right arm and its D–H
parameters.
-1én¢ s ¢ a¢én s a p ùT¢ = ê
ú = ê0 0 00001ûë
ë= 6 A55 A4 4 A33 A22 A11 A0 = 6 A0p¢ ù1 úû(2)

We can obtain an equation that we label as E2 equation by moving
the link transformation matrix 5A6 to the left-hand side ofEquation (2).
5543

2

1A6T ′ = A4 A3 A2 A1 A0 		 (5)2lL 2lL 324

C2 = a23 = az¢ S4 S5 - a¢y (C4C6 + S4C5S6 ) - ax¢ (C4 S6 + S4C5C6 )S2 = ± 1 - C22q 2 = a tan 2(S2 , C2 )3. DUAL-ARM ROBOT MODELINGBASED ON SIMSCAPE
3.1. Model Building
In this paper, the dual-arm robot simulation model mainly
includes three parts, namely the trajectory planning joint angle
input module, the robot body module and the output measurement module. Its Simscape Multibody model is shown inFigure 2.

(6)

C5 = ± 1 - S
q 5 = a tan 2 (S5 , C5 )q = a tan 2 (-(C l + l ), S C l ) - a tan 2 ( p¢y , px¢ + l )L34 5 L2
L464 L2
To solve for the remaining joint angles, we can move the link transformation matrix 3A4 4A5 to the left-hand side of Equation (3). And
we can obtain an equation that we label as E4 equation.
(7)

(11)

The solution of the six joints is obtained by the above procedure. The left arm is exactly the same as the right arm for thesolution.

253
A4 4 A55 A6 T ¢ = 3 A22 A11 A0 		  (10)(4)( px¢ + lL 4 )2 + p¢y 2 + pz¢ 2 - lL2 2 - lL2 3

S4 = ± 1 - C
q 4 = a tan 2 (S4 , C4 )pz¢  S5 =(S 4 l L 2 )By comparing the element (2, 3) of EL4 and ER4, we get C2 and thenS2, and the joint solution q2 from them,

a13 = ax¢ (C4C5C6 + S4 S6 ) + C4 S5az¢ + (S4C6 - C4C5S6 )a¢ya33 = S5C6ax¢ - C5az¢ - S5S6a¢yq 3 = a tan 2(a33, a13)  a21 = (S C C - C S )n¢ + S S n¢ - (S C S + C C )n¢ 
4 5 64 6x
4 5 z
4 5 64 6y
a22 = (S4C5C6 - C4 S6 )s x¢ + S4 S5 sz¢ - (S4C5S6 + C4C6 )s ¢yq 1 = a tan 2(-a22, -a21)

Where Si ≡ sin qi, Ci ≡ cos qi, Sij ≡ sin(qi + qj), Ci ≡ cos(qi + qj), andlLi are geometric link parameters in Figure 1. By comparing the elements (1, 4), (2, 4) and (3, 4) of the EL2 and ER2, we can obtain C4 andthen S4 from C4, and from which we can find the joint solution for
q4. we can solve q5 when we have solved q4. Similarly, we can solve
q6 when we have solved q4 and q5.
C4 =(9)

By comparing the elements [(1, 3) (3, 3)] and [(2, 1) (2, 2)], we canfind the joint solution q3 and q1,

And the right-hand side of E2 is
S4C5lL 2      −C l − l 4 L2L3E =	   R 2   S4 S5lL 2  1
 0 0 0

S2C3 0 
C2 l L 2 
S2S3 0  
01 (3)The left-hand side of E2 is   C6 ( px′ + lL 4 ) − S6 p′y    S ( p′ + l ) + C p′ 
66 yxL4

EL 2 = pz′   0 0 01C1S3 + S1C2S3− S1S2S1C2S3 − C1C30<thete1>

1<thete2>

2<thete3>

3<thete4>

4<thete5>

5<thete6>

6<thete1>17<thete2>18<thete3>19<thete4>110<thete5>111<thete6>112

RobotFigure 2 | Dual-arm robot simulation model.

1SensorRSensorL

2SensorL

Transform Sensor1

Transform Sensor2

Path planSensorR

Measure

58

J. Wang and J. Xu / Journal of Robotics, Networking and Artificial Life 8(1) 56–59

3.2. Establishment of Joint Angle Input
Module for Trajectory Planning
We plan the trajectory of space in Cartesian coordinates. Aftersolving the inverse kinematics function, we can obtain the angles ofeach joint. Then we output these angles to the various joints of thearm. The joint angle input model for trajectory planning is shownin Figure 3.

abcd3.3. Establishment of Robot
Ontology Module
Figure 4 shows the robot ontology module. It includes world coordinate frame and robot ontology. The robot has two arms. Eacharm has six DOF, including three DOF for shoulder joint, one DOF
for elbow joint and two DOF for wrist joint.

Figure 6 | Simulation diagram of each moment. (a) t = 5 s. (b) t = 10 s.
(c) t = 15 s. (d) t = 20 s.

ab3.4. Establishment of Output
Measurement Module
The output measurement module shown in Figure 5 can measure
the rotation angle of each DOF. Through this module, we can also
obtain the displacement of the terminal coordinate frame of themanipulator relative to the base coordinate frame.

Figure 7 | The motion angles of each joint of the (a) left and (b) right arms.

4. SIMULATION VERIFICATION
AND ANALYSIS
4.1. Simulation Process

Figure 3 | The joint angle input model for trajectory.

The robot first raised their arms and then approached each other.
The entire process is shown in Figure 6.

4.2. The Motion Angles of Each Joint
Figure 7 shows the motion angles of each joint of the manipulator. At the initial moment, the angle of each joint is 0 radian, andat about 10 s, the robotic arms begin to approach each other. The
angle of each joint is continuous in the whole process, which provesthat the inverse kinematics solution algorithm in this paper cansolve the analytic solution effectively.
Figure 4 | The robot ontology module.

5. CONCLUSION
In this paper, the kinematics modeling of dual-arm robot is carried out. We present an analytical solution method for six DOF
dual-arm robot for each arm. Simulation results show that the proposed method is effective. In the future, it will be applied to the arm
trajectory planning of the robot.

CONFLICTS OF INTEREST
Figure 5 | The output measurement module.

The authors declare they have no conflicts of interest.

J. Wang and J. Xu / Journal of Robotics, Networking and Artificial Life 8(1) 56–59

ACKNOWLEDGMENT[3]

This work was supported by the Key Research and Development
Program (No. M18GY300021).

[4]

REFERENCES[1][2]

I.S. Fischer, A geometric method for determining joint rotationsin the inverse kinematics of robotic manipulators. J. Robot. Syst.
17 (2000), 107–117.
S. Yahya, M. Moghavvemi, H.A.F. Mohamed, Geometricalapproach of planar hyper-redundant manipulators: inverse
kinematics, path planning and workspace, Simul. Modell. Pract.
Theory 19 (2011), 406–422.

[5][6]59S.R. Buss, Introduction to inverse kinematics with Jacobiantranspose, pseudoinverse and damped least squares methods,
J. IEEE Trans. Robot. Autom. 16 (2004), 1–19.
Z. Sui, L. Jiang, Y.T. Tian, W. Jiang, Genetic algorithm for solving
the inverse kinematics problem for general 6R robots, in: Z. Deng,
H. Li (Eds.), Proceedings of the 2015 Chinese Intelligent Automation
Conference, Springer, Berlin, Heidelberg, 2015, pp. 151–161.
M. Bayati, Using cuckoo optimization algorithm and imperialist
competitive algorithm to solve inverse kinematics problem fornumerical control of robotic manipulators, J. Syst. Control Eng.
229 (2015), 375–387.
M.A. Ali, H. Andy Park, C.S. George Lee, Closed-form inverse
kinematic joint solution for humanoid robots, 2010 IEEE/RSJ
International Conference on Intelligent Robots and Systems,
IEEE, Taipei, Taiwan, 2010, pp. 704–709.

AUTHORS INTRODUCTION
Mr. Junxiang Xu

Dr. Jiwu Wang
He is an Associate Professor, Beijing
Jiaotong University. His research interests
are Intelligent Robot, Machine Vision, andImage Processing.

He is a postgraduate in Beijing Jiaotong
University. His research interest is Robot
Modeling and Simulation.