Stable Walking Motion NAO Humanoid Robot Using Cubic Polynomial Method.

(1)

“I hereby declare that I have read through this report entitle “Stable Walking Motion NAO Humanoid Robot using Cubic Polynomial Method ” and found that it has comply the partial fulfillment for awarding the degree of Bachelor of Electrical Engineering (Mechatronic)”

Signature : ... Supervisor’s Name : ... Date : ...


(2)

STABLE WALKING MOTION NAO HUMANOID ROBOT USING CUBIC POLYNOMIAL METHOD

MOHD ARIFF BIN RADZUAN

A report submitted in partial fulfillment of the requirements for the degree of

Bachelor of Electrical Engineering (Mechatronic)

Faculty of Electrical Engineering

UNIVERSITI TEKNIKAL MALAYSIA MELAKA


(3)

I declare that this report entitle “Stable Walking Motion NAO Humanoid Robot using Cubic Polynomial Method” is the result of my own research except as cited in the references. The report has not been accepted for any degree and is not concurrently submitted in candidature of any other degree.

Signature: ... Name : ... Date : ...


(4)

(5)

ACKNOWLEDGEMENT

With immerse pleasure I express my sincere gratitude, regards to my supervisor Mr Nur Latif Azyze bin Mohd Shaari Azyze for his excellent guidance, invaluable suggestion and continuous couragement to my final year project. I have been fortunate to have him as my supervisor as he has been a great teacher and advisor to me.

Many thanks goes to Dr. Fariz Ali, Dr. Muhammad Fahmi bin Miskon and Dr. Mariam bt Md Ghazaly for their kind help and suggestion. I would like to express my appreciation to my parents Mr Radzuan bin Jaamat and Mrs Malasiah bt Mohd Shariff for their great support and encouragement for me to succeed. I also would like to thanks to my team mates and also my classmates especially Alif Ritzli bin Zulkifli and Muhammad Shamil Iqbal bin Rahmat for their commitment and strong team works in order to achieve a great success in our final year project. Finally, I show my appreciation to masters students Mr Mohd Bazli bin Bahar and Muhammad Razmi bin Razali for helping in better understanding about my research project.

I acknowledge the chances that be given to me to express my deepest appreciation to all my member of Mechatronic Engineering for wonderful research environment. I do love to remember the time I spend with them.


(6)

ABSTRACT

Most common forms of locomotion for humanoid robots are walking and running. It is a difficult task to create a stable walking pattern for several reasons. One of the reason is a bipedal robot often rather be in stable condition when standing on both its feet, the robot itself has to lift one of its supports from the ground to take a step when starts to walk. This condition is able to make robot in unstable and making it to fall over. Another reason is the complexity of the walking pattern itself. In order to create better walking pattern all joint s of robot have to be in one complete motion. Multi joint that are changing while walking gives a great impact to the stability of the robot itself. It is tough task to construct a balancing system for such a robot. By taking stability measures as a primary objective, a stable walking motion must be develop. In this thesis, the development of a stable walking motion requires human-like robot simulation. This simulation based on the method that being used in finding the stability which refers to Zero Moment Point (ZMP) of the robot. The main purpose is to achieve a stable walking motion by using cubic polynomial method. Due to optimize the recent the stability, the walking motion should able to maintain the stability within changing of the speed of walk. Throughout the simulation, walking pattern 3 which 0.13 m step length gives better stability measurement compared to other two walking patterns. The behavior of the robot can be seen through the position, velocity and acceleration profiles gained from the cubic polynomial method. The result will be the knowledge on how to maintain stability while walking and practice a proper and good gait. This knowledge will provide a better guide to practice healthier walking in our daily activities that involving walking motion.


(7)

ABSTRAK

Bentuk yang paling biasa bagi pergerakan robot humanoid adalah berjalan dan berlari. Ia adalah satu tugas yang sukar untuk mewujudkan satu corak berjalan yang stabil. Salah satu sebabnya adalah sebuah robot jenis berkaki dua akan berada dalam keadaan stabil apabila berdiri di atas kedua-dua kaki, tetapi apabila memulakan langkah berjalan robot harus mengangkat satu sokongan (kaki) daripada permukaan. Keadaan ini membuatkan robot berada dalm situasi tidak stabil dan berkemungkinan beasar akan terjatuh. Satu lagi sebab ialah kerumitan membentuk corak berjalan. Dalam usaha untuk mewujudkan corak berjalan lebih baik, semua sudut bergabung robot perlu berada dalam satu gerakan yang lengkap. Kesemua sudut bergabung yang mengalami perubahan ketika berjalan memberi kesan yang besar kepada kestabilan robot itu sendiri. Ia adalah tugas yang sukar untuk membina sistem keseimbangan bagi mana-mana robot berkaki dua. Faktor kestabilan dititikberatkan sebagai objektif utama untuk pergerakan yang stabil ketika berjalan. Dalam tesis ini, pembikinan gerakan berjalan yang stabil memerlukan seperti simulasi robot yang dibuat menerusi perisian yang sesuai. Simulasi ini berdasarkan kaedah yang digunakan dalam mencari kestabilan yang merujuk kepada Zero Moment Point (ZMP) robot. Tujuan utama ialah untuk mencapai pergerakan berjalan yang stabil dengan menggunakan kaedah polinomial padu. Untuk mengoptimumkan kestabilan sedia ada, corak berjalan seharusnya mengekalkan kestabilan semasa perubahan kelajuan ketika berjalan. Sepanjang simulasi berlaku, cara berjalan jenis corak yang ketiga yang 0.13 m langkah panjang memberikan ukuran kestabilan yang lebih baik berbanding dengan corak berjalan yang lain. Kelakuan robot boleh dilihat melalui profil kedudukan, profil halaju dan profil pecutan yang diperolehi daripada kaedah polinomial padu.Hasilnya akan dijadikan asas pengetahuan tentang bagaimana untuk mengekalkan


(8)

kestabilan ketika berjalan dan mengamalkan gaya berjalan yang betul dan baik. Pengetahuan ini akan memberi panduan yang lebih baik demi mengamalkan cara berjalan sihat dalam aktiviti seharian kita khususnya.


(9)

TABLE OF CONTENTS

CHAPTER TITLE PAGE

ACKNOWLEDGEMENT ii

ABSTRACT iii

TABLE OF CONTENTS vi

LIST OF TABLES viii

LIST OF FIGURES ix

LIST OF SYMBOLS xi

LIST OF ABBREVIATIONS xii

LIST OF APPENDICES xiii

1 INTRODUCTION

1.1Project Background 1.2Motivation

1.3Problem Statement 1.4Objective

1.5Scope

1.6Thesis Organization

1 1 2 3 4 4 5

2 LITERATURE REVIEW

2.1 Overview of Humanoid Robot Walking

2.1.1 Design of Present or Existing Speed Control

6

6 7


(10)

2.1.2 Three Dimensional Motion 2.1.3 Walking Phases

2.1.4 Static Walk 2.1.5 Dynamic Walk

2.2 Approach of Walking Trajectory

2.2.1 Cubic Polynomial Trajectory 2.3 Zero Moment Point and Stable Walking 2.3.1 Zero Moment Point

2.3.2 Relationship ZMP and Support Polygon

2.4 NAO Speed Walking

9 10 12 13 15 16 19 19 20 24

3 METHODOLOGY

3.1 Trajectory Planning

3.2 Real versus Simulated Robots 3.3 NAO Inverse Kinematics

3.4 Project Setup 3.4.1 Experiment 1 3.4.2 Experiment 2

25 25 26 27 31 31 32

4 RESULT AND DISCUSSION

4.1 Introduction

4.2 Result Experiment 1 4.3 Result Experiment 2

34

34 34 46

5 CONCLUSION AND RECOMMENDATIONS

5.1 Conclusion 5.2 Recommendation

49

49 50

REFERENCES 51


(11)

LIST OF TABLES

TABLE TITLE PAGE

2.1 Joint types and range for NAO robot (Lower Limb) 9

3.1 NAO Humanoid Robot Parameter 27

3.2 Walking pattern with different values of step length 33 4.1 Joint angle value for Left Foot in 1 second 35 4.2 Joint angle value for Right Foot in 1 second 35 4.3 Initial Angle for Left and Right Foot for 1 seconds 35


(12)

LIST OF FIGURES

FIGURE TITLE PAGE

2.1 Aldebaran-Robotics NAO[6] 7

2.2 Detailed kinematics of NAO[3] 8

2.3 Humanoid in anatomical position, base-frame-origin and world planes[4]

10

2.4 Typical shapes of the Support Polygon (SP), in grey[4] 11

2.5 Gait Phase [4] 12

2.6 NAO gaits parameter 14

2.7 Several possible path shapes for single joint [5] 17

2.8 ZMP Concept[7] 19

2.9 The robot stays within the support polygon 21

2.10 Zero-Moment-Point 22

2.11 The support polygon in three typical cases 23

3.1 Overview of trajectory generation 26

3.2 Inverse Kinematic Parameters from Hip to Ankle 27

3.3 Joint Angle Parameters 29

4.1 Joint Angle Trajectories for Right Ankle Roll and Left Ankle Roll 36 4.2 Velocity Profiles for Right Ankle Roll and Left Ankle Roll 37 4.3 Acceleration Profiles for Right Ankle Roll and Left Ankle Roll 37 4.4 Joint Angle Trajectories for Right Ankle Pitch and Left Ankle Pitch 38 4.5 Velocity Profiles for Right Ankle Pitch and Left Ankle Pitch 39 4.6 Acceleration Profiles for Right Ankle Pitch and Left Ankle Pitch 39 4.7 Joint Angle Trajectories for Right Knee Pitch and Left Knee Pitch 40


(13)

4.9 Acceleration Profiles for Right Knee Pitch and Left Knee Pitch 40 4.10 Joint Angle Trajectories for Right Hip Pitch and Left Hip Pitch 41 4.11 Velocity Profiles for Right Hip Pitch and Left Hip Pitch 41 4.12 Acceleration Profiles for Right Hip Pitch and Left Hip Pitch 42 4.13 Joint Angle Trajectories for Right Hip Roll and Left Hip Roll 42 4.14 Velocity Profiles for Right Hip Roll and Left Hip Roll 43 4.15 Acceleration Profiles for Right Hip Roll and Left Hip Roll 43 4.16 Lifting Height for NAO using Inverse Kinematic (H=0.015m) 44 4.17 Lifting Height for NAO using Cubic Polynomial Method

(H=0.015m)

44

4.18 NAO Behavior during walking 45

4.19 Stability Pattern 1 (Step Length= 0.07m) 46 4.20 Stability Pattern 2 (Step Length= 0.10m) 47 4.21 Stability Pattern 3 (Step Length= 0.13m) 48


(14)

LIST OF SYMBOLS

F - Force

g - Gravity = 9.81 m/s I - Moment of inertia

1 - Length m

P - Pressure

V - Velocity


(15)

LISTS OF ABBREVIATIONS

DOF - Degrees of freedom CoM - Center of mass CoP - Center of pressure FSR - Force sensitive resistor ZMP - Zero Moment Point

DS - Double Support

SS - Single Support

PH - Point Hip

PR - Point Right

PL - Point Left

LIP - Linear Inverted Pendulum


(16)

LISTS OF APPENDICES

APPENDIX TITLE PAGE

A Inverse Kinematic Parameter 52

B ZMP Computation 55

C Python Programming 60

D Matlab Calculation 67

E Cubic Polynomial Parameter 72


(17)

CHAPTER 1

INTRODUCTION

1.1 Project Background

A long time study of locomotion of biped and walking motion been researched. Today in revolution of technology, but it is only in the past years, thanks to the fast development of computers, that real robots started to walk on two legs. Since then this research been analyzed in different kind of method or approach. First, there were robots that used static walking. The control based criteria was to maintain the projection of the center of gravity (COG) on the ground, inside of the foot support area. This approach was abandoned because only slow walking speeds could be achieved, and only one at surfaces[1]. The Zero Moment Force ,ZMP criteria has been widely used to generate biped control algorithms. In this thesis, the walking problems are divided and focused on two themes: the walking trajectory using cubic polynomial method and speed variation in maintaining stability during walking.


(18)

1.2 Motivation

In United State of America there are more than a million injuries related to the fall account. This kind of fall was basically related to the way of ones walking. Walking and most other motions of the whole body involve the body's center of mass[2]. The balance point around where a movement operates which named as center of gravity. Essentially, walking results in successive losses of balance. Clayne Jensen, a motion expert, divides the human stride into three parts which are propulsion, swing, and catch and support.[3] When speed increases to running pace, only one foot is in contact with the surface at a time [1].

Somehow, people walk in distinctive ways. There are so many variations of walking that some contend there is no normal walking pattern. For example, some people nearly skip the heel in the forward step, and obese people often step flat-footed because their center of gravity is carried forward. Each walking pattern causes variations in stride.

These methods of walking are generally thought to be incorrect because they are less efficient, but they should not be considered unsafe unless evidence shows they prevent the individual from maintaining balance.


(19)

1.3 Problem Statement

Walking and most other motions of the whole body involve the body's center of mass[4]. While complex measurements are necessary to determine the exact location of the center of gravity, it is estimated that the COG in the average person who is standing is about 55 percent of the distance between the floor and the person's height.[1] This COG is located in the center of the body, as viewed from the side. The location of the center of gravity affects the way a person walks and falls, and may even affect the severity of a fall. The COG changes during various activities and postures, and also varies according to the build of the person. During walking, the center of gravity is carried alternately over the right and left foot.

In order to study walking motion, there are important to look out for a walking gaits which take into consideration of mechanism periodic motions of the links of the mechanism that, together with interactions with the ground. A technique need to be defined to achieve an efficient walking gaits or walking motion in consideration of center of gravity towards a high stability in walking motion. On top of that, like a human, walking on a surfaces with different speed varies the stability of the humanoid robot influenced by changing on zero moment point (ZMP). As research question that needed to be find out, what kind/type of walking motion gives higher stability to the humanoid robot on a surface with variety of speeds.


(20)

1.4 Objective

1. To design and develop a stable walking motion for NAO Humanoid robot by using cubic polynomial method.

2. To evaluate the stability of NAO Humanoid robot due to different in speeds by maintaining the value of ZMP as zero.

1.5 Scope

The primary scope of this research involves the developing a stable walking motion for humanoid robot by using cubic polynomial method which refers to the trajectory planning control. The simulation will take place by using Webots for NAO software. The algorithm will cover the real of robot’s leg from waist and below. The floor of walking robot is rigid. Different speed and even surface of the experimental platform are also factors in the research. The design joint motion is offline approach and only forward speed is taking into account. Hardware implementation is not covered in this research. Others factors not covered in this research are running motion, energy consumption, flat and rough terrain.


(21)

1.6 Thesis Organization

This thesis is composed of five chapters. This section shall briefly outline the main idea of each chapter.

Chapter 2 thoroughly describes the definition, concept and mathematical equations of Cubic Polynomial Method and the Zero-Moment Point (ZMP), a consistent statically and dynamic stability index, which is the basis of this study. Furthermore, it examines previous research of biped locomotion related specifically to the ZMP and attempts to give a solid understanding of the theory fundamental humanoid locomotion control development.

Chapter 3 introduces the methodology used in this research. It briefly discusses the how the research is being done and the importance of using simulation, it then elaborates on the concerns involved in the obtaining the related points to construct a walking trajectory for NAO itself. Programming is take place in the Python.

Chapter 4 presents the experimental result obtained based on experiment that are being conducted through simulation and programming in Webots and Python. These experiments include among others: adapting walking trajectories of the joint angles, to improve stability. The results of these experiments prove the viability and proficiency of the proposed method.

In Chapter 5 significant conclusion and recommendation are being projected in this chapter. It also recaps the knowledge and understanding the author acquired during the course of this work. This chapter also concludes with a brief summary of this dissertation, and outlines several potential ideas for future development.


(22)

CHAPTER 2

LITERATURE REVIEW

This chapter examines and evaluates walking motion for humanoid robot which cubic polynomial is suggested as the technique/method. The literature review is organized as follows.

2.1 Overview of Humanoid Robot Walking

Humanoid robot is a type of robot that its body shape built resembles to the human body structures. A humanoid robot or known as anthropomorphic robot was basically design functional purpose such to interacting with environment and human tools. It also was designed for experimental purposes such the study of bipedal locomotion. Bipedal locomotion involves robot that has two legs. The movement that the robot has to resemble the human action is walking by using legging locomotion. To maintain the stability during walking, a robot required information about the contact force, its current and desired motion. The Zero Moment Point (ZMP) concept must be acknowledged first.


(23)

2.1.1 NAO Humanoid Robot

NAO robot is an autonomous and programmable humanoid robot that is developed by Aldebaran Robotics Company. Creation of NAO to promote research in the area of assistance robotics. Their application should help people in their everyday life or achieve tedious tasks in the place of humans.

Figure 2.1 : Aldebaran-Robotics NAO [6]


(24)

NAO has a total of 25 degrees of freedom, 11 degrees of freedom (DOF) for the lower part that includes legs and pelvis, and 14 DOF for the upper part that includes trunk, arms and head. Each leg has 2 DOF at the ankle, 1 DOF at the knee and2 DOF at the hip. A special mechanism composed of two coupled joints at each hip equips the pelvis. Table 1 shows the list of joints and its range.


(1)

Walking and most other motions of the whole body involve the body's center of mass[4]. While complex measurements are necessary to determine the exact location of the center of gravity, it is estimated that the COG in the average person who is standing is about 55 percent of the distance between the floor and the person's height.[1] This COG is located in the center of the body, as viewed from the side. The location of the center of gravity affects the way a person walks and falls, and may even affect the severity of a fall. The COG changes during various activities and postures, and also varies according to the build of the person. During walking, the center of gravity is carried alternately over the right and left foot.

In order to study walking motion, there are important to look out for a walking gaits which take into consideration of mechanism periodic motions of the links of the mechanism that, together with interactions with the ground. A technique need to be defined to achieve an efficient walking gaits or walking motion in consideration of center of gravity towards a high stability in walking motion. On top of that, like a human, walking on a surfaces with different speed varies the stability of the humanoid robot influenced by changing on zero moment point (ZMP). As research question that needed to be find out, what kind/type of walking motion gives higher stability to the humanoid robot on a surface with variety of speeds.


(2)

1.4 Objective

1. To design and develop a stable walking motion for NAO Humanoid robot by using cubic polynomial method.

2. To evaluate the stability of NAO Humanoid robot due to different in speeds by maintaining the value of ZMP as zero.

1.5 Scope

The primary scope of this research involves the developing a stable walking motion for humanoid robot by using cubic polynomial method which refers to the trajectory planning control. The simulation will take place by using Webots for NAO software. The algorithm will

cover the real of robot’s leg from waist and below. The floor of walking robot is rigid.

Different speed and even surface of the experimental platform are also factors in the research. The design joint motion is offline approach and only forward speed is taking into account. Hardware implementation is not covered in this research. Others factors not covered in this research are running motion, energy consumption, flat and rough terrain.


(3)

1.6 Thesis Organization

This thesis is composed of five chapters. This section shall briefly outline the main idea of each chapter.

Chapter 2 thoroughly describes the definition, concept and mathematical equations of Cubic Polynomial Method and the Zero-Moment Point (ZMP), a consistent statically and dynamic stability index, which is the basis of this study. Furthermore, it examines previous research of biped locomotion related specifically to the ZMP and attempts to give a solid understanding of the theory fundamental humanoid locomotion control development.

Chapter 3 introduces the methodology used in this research. It briefly discusses the how the research is being done and the importance of using simulation, it then elaborates on the concerns involved in the obtaining the related points to construct a walking trajectory for NAO itself. Programming is take place in the Python.

Chapter 4 presents the experimental result obtained based on experiment that are being conducted through simulation and programming in Webots and Python. These experiments include among others: adapting walking trajectories of the joint angles, to improve stability. The results of these experiments prove the viability and proficiency of the proposed method.

In Chapter 5 significant conclusion and recommendation are being projected in this chapter. It also recaps the knowledge and understanding the author acquired during the course of this work. This chapter also concludes with a brief summary of this dissertation, and outlines several potential ideas for future development.


(4)

CHAPTER 2

LITERATURE REVIEW

This chapter examines and evaluates walking motion for humanoid robot which cubic polynomial is suggested as the technique/method. The literature review is organized as follows.

2.1 Overview of Humanoid Robot Walking

Humanoid robot is a type of robot that its body shape built resembles to the human body structures. A humanoid robot or known as anthropomorphic robot was basically design functional purpose such to interacting with environment and human tools. It also was designed for experimental purposes such the study of bipedal locomotion. Bipedal locomotion involves robot that has two legs. The movement that the robot has to resemble the human action is walking by using legging locomotion. To maintain the stability during walking, a robot required information about the contact force, its current and desired motion. The Zero Moment Point (ZMP) concept must be acknowledged first.


(5)

2.1.1 NAO Humanoid Robot

NAO robot is an autonomous and programmable humanoid robot that is developed by Aldebaran Robotics Company. Creation of NAO to promote research in the area of assistance robotics. Their application should help people in their everyday life or achieve tedious tasks in the place of humans.

Figure 2.1 : Aldebaran-Robotics NAO [6]


(6)

head. Each leg has 2 DOF at the ankle, 1 DOF at the knee and2 DOF at the hip. A special mechanism composed of two coupled joints at each hip equips the pelvis. Table 1 shows the list of joints and its range.