• Tidak ada hasil yang ditemukan

Development of an Autonomous Mobile Robot Navigation System Using ROS

N/A
N/A
Protected

Academic year: 2023

Membagikan "Development of an Autonomous Mobile Robot Navigation System Using ROS"

Copied!
11
0
0

Teks penuh

(1)

By

Victor Nugraha Putera 11301041

BACHELOR’S DEGREE in

MECHANICAL ENGINEERING – MECHATRONICS CONCENTRATION FACULTY OF ENGINEERING AND INFORMATION TECHNOLOGY

SWISS GERMAN UNIVERSITY The Prominence Tower

Jalan Jalur Sutera Barat No. 15, Alam Sutera Tangerang, Banten 15143 - Indonesia

January 2018

Revision after the Thesis Defence on 18 January 2018

(2)

Victor Nugraha Putera STATEMENT BY AUTHOR

I hereby declare that this submission is my own work and to the best of my knowledge, it contains no material previously published or written by another person, nor material which to a substantial extent has been accepted for the award of any other degree or diploma at any educational institution, except where due acknowledgement is made in the thesis.

Victor Nugraha Putera

_____________________________________________

Student Date

Approved by:

Dr. Rusman Rusyadi, B. Sc., M. Sc.

_____________________________________________

Thesis Advisor Date

Dr. Irvan Kartawiria, S. T., M. Sc.

_____________________________________________

Dean Date

(3)

Victor Nugraha Putera ABSTRACT

FURTHER DEVELOPMENT OF AN AUTONOMOUS MOBILE ROBOT NAVIGATION SYSTEM USING ROBOT OPERATING SYSTEM

By

Victor Nugraha Putera

Dr. Rusman Rusyadi, B.Sc., M. Sc., Advisor SWISS GERMAN UNIVERSITY

The purpose of this thesis is to do further development towards the navigation system of an existing autonomous mobile robot by implementing robotics middleware called Robot Operating System (ROS). Wall follower technique and parking mechanism are the two mandatory navigation systems that will be developed in this thesis. A laser scanner sensor called RPLIDAR will be used as a primary sensor to determine angle and range of detected wall or object, both of the angle and range data obtained will be used as the input data. The input data will be processed in Nvidia Jetson Tegra K1 mini PC to obtain the output data, all of the software and program packages needed will also be stored in mini PC since the mini PC worked as the main processing data hardware.

Output data which consist of steering control and drive motor speed will be executed by Arduino Microcontroller.

Keywords: Autonomous, Arduino, Laser Scanner, LIDAR, Microcontroller, Navigation System, Mini PC, Radio Control Car, Robot Operating System, Wall Follower, Parking

(4)

Victor Nugraha Putera

© Copyright 2018 Victor Nugraha Putera

All rights reserved

(5)

Victor Nugraha Putera DEDICATION

I dedicated this thesis project for the future of engineering and science in all over the world.

(6)

Victor Nugraha Putera ACKNOWLEDGEMENTS

First of all, I would like to express my gratitude to Jesus Christ for His guidance and blessing which allow me to finish this thesis project in time.

I would like to express my sincere gratitude to my family, who always support me mentally, spiritually, and financially.

Furthermore, I would like to give my deepest gratitude to Dr. Rusman Rusyadi, B.Sc., M.Sc., as my thesis advisor for his guidance, patience, and support that make me able to finish my thesis project.

Last but not least, I would also like to give my deepest gratitude to my teammates Aulia Syamil and Kevin Ariesta, SGU Lectures, and all of my friends. Without all of those who have listed above, I would not be capable of finishing my thesis project.

(7)

Victor Nugraha Putera TABLE OF CONTENTS

Page

STATEMENT BY AUTHOR... 2

ABSTRACT ... 3

© Copyright 2018 ... 4

DEDICATION ... 5

ACKNOWLEDGEMENTS ... 6

TABLE OF CONTENTS ... 7

LIST OF FIGURES ... 12

LIST OF TABLES ... 16

LIST OF EQUATIONS ... 17

CHAPTER 1 – INTRODUCTION ... 18

1.1 Background ... 18

1.2 Objectives ... 19

1.3 Thesis Problem... 19

1.4 Thesis Scope ... 19

1.5 Thesis Limitation ... 19

1.6 Thesis Outline ... 20

CHAPTER 2 – LITERATURE REVIEW ... 21

2.1 Introduction ... 21

2.2 Robot Operating System ... 21

2.3 Radio Controller Car ... 23

2.4 Light Detection and Ranging Sensor ... 24

2.5 Mini PC ... 26

(8)

Victor Nugraha Putera

2.6 Arduino Microcontroller ... 27

2.7 Previous Studies ... 28

2.7.1 MIT RACECAR ... 28

2.7.2 Reconfiguration and Implementation of MIT RACECAR Navigation ... 30

2.7.3 Neato Autonomous Parking ... 30

2.7.4 Cornell University Autonomous Parallel Parking ... 31

CHAPTER 3 – RESEARCH METHOD ... 33

3.1 Introduction ... 33

3.2 General Methodology ... 33

3.3 System Design ... 34

3.4 Component Selection ... 35

3.4.1 Tamiya TT - 01 ES XB Series 1/10 Scale Radio Controlled Car ... 35

3.4.1.1 Tamiya TT-01 ES XB Series 1/10 Scale - Mechanical Design ... 35

3.4.1.2 Tamiya TT-01 ES XB Series 1/10 Scale - Electrical Design ... 36

3.4.1.3 Steering Servo PWM Value Experiment ... 38

3.4.1.4 ESC PWM Value Experiment ... 38

3.4.2 RPLIDAR A2 Laser Scanner ... 39

3.4.2.1 RPLIDAR A2 Software Development Kit ... 40

3.4.3 Nvidia Jetson Tegra K1 Mini PC ... 41

3.4.3.1 Nvidia Jetson Tegra K1 Remote Access ... 42

3.4.4 Arduino UNO Microcontroller ... 43

3.5 Robot Operating System Package ... 44

3.5.1 RPLIDAR Package ... 46

3.5.2 Teleop_twist_keyboard ... 46

3.5.3 Rosserial ... 46

3.5.4 Ros_lib Arduino Package ... 47

3.5.5 Wall Follower Package... 47

3.5.6 Autonomous Parking Package ... 47

3.6 Platform Design ... 48

(9)

Victor Nugraha Putera

3.7.1 Wall Reference ... 49

3.7.2 Filtering ... 49

3.7.3 Polar to Euclidean Conversion ... 50

3.7.4 PID Controller ... 51

3.8 Autonomous Parking Navigation System Algorithm ... 53

3.8.1 Initial Parking ... 53

3.8.2 Position Alignment ... 54

3.8.3 Parking Mechanism ... 55

3.8.3.1 Parallel Parking ... 55

3.8.3.2 Perpendicular Parking ... 55

CHAPTER 4 – RESULT AND DISCUSSIONS ... 57

4.1 Introduction ... 57

4.2 Tamiya TT-01 ES XB Series Mechanical Design ... 57

4.2.1 Ackermann Steering Mechanism Prove ... 57

4.2.2 Tamiya TT-01 ES XB Maximum Steering Angle Calculation ... 59

4.3 Tamiya TT-01 ES XB Series Electrical Design ... 60

4.3.1 Steering Servo PWM Value Calibration ... 60

4.3.2 Motor RPM According to the ESC PWM Value ... 62

4.3.3 RPM to Speed Calibration ... 64

4.4 RPLIDAR A2... 65

4.4.1 RPLIDAR SDK Installation ... 65

4.4.2 Scan Data Collection ... 66

4.5 Nvidia Jetson Tegra K1 Remote Access ... 67

4.5.1 Dnsmasq Installation ... 67

4.5.2 Dnsmasq Issue ... 68

4.6 Platform Design ... 69

4.6.1 Base Platform ... 69

4.6.2 RPLIDAR A2 Base Platform ... 70

(10)

Victor Nugraha Putera

4.6.3 Shield Platform ... 71

4.6.4 Previous Platform Design Issue... 72

4.7 Wall Follower Navigation System ... 72

4.7.1 Input Data Collection ... 73

4.7.2 RPLIDAR A2 Window Angle... 73

4.7.3 Recalibration of Proportional and Derivative Control ... 75

4.7.3.1 Oscillation Behavior ... 76

4.7.3.2 New Proportional and Derivative Value ... 78

4.7.4 Speed and Steering Controller Algorithm ... 78

4.7.4.1 Speed and Steering Controller Indicator Consideration ... 79

4.7.4.2 Slope and Intercept Value ... 80

4.7.4.3 Speed and Steering Behavior According to Slope Value ... 81

4.7.4.4 Speed and Steering Behavior According to Intercept Value ... 84

4.7.4.5 Speed Value Calculation ... 87

4.8 Autonomous Parking Navigation System ... 88

4.8.1 Initial Parking ... 88

4.8.1.1 Initial Parking When There is No Available Parking Spot ... 89

4.8.1.2 Initial Parking When There is An Available Parking Spot ... 90

4.8.2 Autonomous Parking Issue ... 91

4.9 Autonomous Forward Parking Navigation System ... 93

4.9.1 Implementation of Safety Algorithm into Wall Follower Algorithm ... 94

4.9.2 Autonomous Forward Parking Behavior ... 95

CHAPTER 5 – CONCLUSIONS AND RECOMMENDATIONS ... 97

5.1 Conclusions ... 97

5.2 Recommendations ... 99

GLOSSARY ... 100

REFERENCES ... 101

APPENDIX A – TAMIYA TT-01 ES XB SERIES MECHANICAL PARTS ... 104

APPENDIX B – TAMIYA TT-01 ES XB SERIES ELECTRICAL PARTS ... 106

(11)

Victor Nugraha Putera

B.1 Nvidia Jetson Tegra K1 ... 108

B.2 Arduino UNO ... 111

B.3 RPLIDAR A2 ... 112

APPENDIX D – PROGRAM CODE ... 114

C.1 wall_follow.py... 114

C.2 parking.py ... 123

C.3 speed_and_steering_controller.ino ... 127

C.4 wall_follower.launch ... 129

C.5 parking.launch ... 129

APPENDIX E – BILL OF MATERIALS ... 130

CURRICULUM VITAE ... 131

Referensi

Dokumen terkait

This project will develop a regulator as well as tracking controller for the dynamic model of unicycle mobile robot by integrating a kinematics controller and a

Abstract: This paper proposes hybridization of fuzzy Q-learning and behavior-based control for autonomous mobile robot navigation problem in cluttered environment

This paper proposes the use of hybrid coordination node to coordinate multi fuzzy q-learning behavior for navigation of autonomous five legs robot in cluttered

This Q learning behavior has been used in physical robot that solve autonomous navigation task, and it succeed to avoid the obstacle (after some learning time) and reach the

(i) To integrate the PIC programming and electronic components to develop a navigation system for an autonomous mobile device by using sonar sensor and will send sonar

Eka Budiarto, S.T, M.Sc, Co-Advisor SWISS GERMAN UNIVERSITY The purpose of this thesis is to simulate and study the behavior of humanoid robot including the gait algorithm.. The robot

A Fuzzy Q-Learning Approach to Navigation of an Autonomous Robot Sepideh Valiollahi Department of Electrical and Computer Engineering Babol University of Technology Babol, Iran

This research aims to implement a navigation system based on Dewantara & Ariyadi, 2021 with the combination of the Fuzzy-Social Force Model FSFM into a mobile robot that can navigate