73
CLIMBOT WINDOW CLIMBING ROBOT LEE WEI SIANG UNIVERSITI TEKNOLOGI MALAYSIA

Climbot Window Climbing Robot

  • Upload
    jjt8400

  • View
    1.348

  • Download
    1

Embed Size (px)

Citation preview

Page 1: Climbot Window Climbing Robot

CLIMBOT

WINDOW CLIMBING ROBOT

LEE WEI SIANG

UNIVERSITI TEKNOLOGI MALAYSIA

Page 2: Climbot Window Climbing Robot

PSZ 19:16 (Pind. 1/07)

DECLARATION OF THESIS / UNDERGRADUATE PROJECT PAPER AND

COPYRIGHT

Author’s full name : LEE WEI SIANG Date of birth : 15 JULY 1986 Title : CLIMBOT-A WINDOW CLIMBING ROBOT Academic Session : 2008/2009 I declare that this thesis is classified as:

I acknowledged that Universiti Teknologi Malaysia reserves the right as follows :

1. The thesis is the property of Universiti Teknologi Malaysia. 2. The Library of Universiti Teknologi Malaysia has the right to make copies

for the purpose of research only. 3. The Library has the right to make copies of the thesis for academic

exchange.

SIGNATURE SIGNATURE OF SUPERVISOR

860715-23-6675 MOHAMED SULTAN BIN MHD ALI (NEW IC NO. /PASSPORT NO.) NAME OF SUPERVISOR

Date: 01 MAY 2009 Date: 01 MAY 2009

NOTES : * If the thesis is CONFIDENTIAL or RESTRICTED, please attach with the letter from the organisation with period and reasons for confidentiality or restriction.

UNIVERSITI TEKNOLOGI MALAYSIA

CONFIDENTIAL (Contains confidential information under the Official Secret Act 1972)*

RESTRICTED (Contains restricted information as specified by the organisation where research was done)*

OPEN ACCESS I agree that my thesis to be published as online open access (full text)

Page 3: Climbot Window Climbing Robot

UNIVERSITI TEKNOLOGI MALAYSIA

BORANG PENGESAHAN STATUS TESIS♦

JUDUL: CLIMBOT-WINDOW CLIMBING ROBOT

(BIOBOT-ROBOT HAIWAN PELIHARAAN INSPIRASI BIOLOGI)

SESI PENGAJIAN: 2008/2009

Saya LEE WEI SIANG __ (HURUF BESAR) mengaku membenarkan tesis (PSM/Sarjana/Doktor Falsafah)* ini disimpan di Perpustakaan

Universiti Teknologi Malaysia dengan syarat-syarat kegunaan seperti berikut :

1. Tesis ini adalah hakmilik Universiti Teknologi Malaysia. 2. Perpustakaan Universiti Teknologi Malaysia dibenarkan membuat salinan untuk tujuan

pengajian sahaja 3. Perpustakaan dibenarkan membuat salinan tesis ini sebagai bahan pertukaran antara

institusi pengajian tinggi. 4. **Sila tandakan (a)

SULIT (Mengandungi maklumat yang berdarjah keselamatan atau kepentingan Malaysia seperti yang termaktub di dalam AKTA RAHSIA RASMI 1972).

TERHAD (Mengandungi maklumat TERHAD yang telah ditentukan oleh organisasi/badan di mana penyelidikan dijalankan).

TIDAK TERHAD Disahkan oleh

________________________________ ____________________________________ (TANDATANGAN PENULIS) (TANDATANGAN PENYELIA)

Alamat Tetap : 26, JALAN BEREMBANG, EN. MOHAMED SULTAN B. MUHAMED ALI 81550, GELANG PATAH, Nama Penyelia JOHOR. Tarikh : 01 MAY 2009 Tarikh : 01 MAY 2009 CATATAN : * Potong yang tidak berkenaan ** Jika tesis ini SULIT atau TERHAD, sila lampirkan surat daripada pihak berkuasa/organisasi

berkenaan dengan menyatakan sekali sebab dan tempoh tesis ini perlu dikelaskan sebagai SULIT atau TERHAD.

♦ Tesis dimaksudkan sebagai tesis bagi Ijazah Doktor Falsafah dan Sarjana secara penyelidikan atau disertasi bagi pengajian secara kerja kursus dan penyelidikan atau Laporan Projek Sarjana Muda (PSM).

PSZ 19:16 (Pind. 1/97)

Page 4: Climbot Window Climbing Robot

“I hereby declare that I had read this thesis and in my opinion, this thesis is

sufficient in term of quality and scope for the purpose of awarding a Bachelor

Degree in Electrical (Mechatronics) Engineering”.

Signature : ______________________________________

Supervisor : EN MOHAMED SULTAN B. MUHAMED ALI

Date : 01 MAY 2009

Page 5: Climbot Window Climbing Robot

CLIMBOT

WINDOW CLIMBING ROBOT

LEE WEI SIANG

A thesis submitted in partial fulfillment of the requirements for the award of the degree of

Bachelor of Electrical Engineering in Mechatronics

Faculty of Electrical Engineering

Universiti Teknologi Malaysia

MAY 2009

Page 6: Climbot Window Climbing Robot

ii  

DECLARATION

“I declare that this thesis entitled “Climbot – Window Climbing Robot”,

is the result of my own research except as cited in the references. The thesis

has not been accepted for any degree and is not concurrently submitted in

candidature of any other degree.”

Signature : ______________

Name of Candidate : LEE WEI SIANG

Date : 01 MAY 2009

Page 7: Climbot Window Climbing Robot

iii  

DEDICATION

Specially to my beloved

parents, siblings and friends

for their eternal support, encouragement

and inspiration throughout

my journey of education.

Page 8: Climbot Window Climbing Robot

iv  

ACKNOWLEDGEMENT

I would like to express my deepest gratitude to my project supervisor, Encik

Mohamed Sultan Bin Mohamed Ali who had presently giving me guidance and

support throughout the entire project. It would be difficult to complete this project

without his guidance and support especially in the project resources, references and

material.

My outmost thanks to my family who have given me support throughout my

academic years. Not forgetting their eternally moral support and understanding of my

academic responsibilities.

I would like to express my gratitude to my friends, especially to all my

coursemates who had given me help technically and mentally during the journey to

accomplish this project. Thank you all for giving me technical advice, moral support

and idea to enhance my project. Thank you.

 

 

  

Page 9: Climbot Window Climbing Robot

v  

     

ABSTRACT

In this paper, we propose a lightweight small robot for window climbing,

which is developed for practical use in life environment. The concept of window

climbing robot will apply at window cleaning robot. The moving mechanism is made

up of 2 drive wheels and passive suction cups. By this mechanism the robot moves to

any directions along the vertical window.

The prototype of window climbing robot has been developed. The dimensions

of prototyped robot are approximately 100mm x 200mm x100mm and its weight is

approximately less than 2 kg. The prototyped robot consists of two independently

driven wheels attached with passive suction cup. This paper includes background and

objectives of this research, prototyped mechanical systems, moving control system,

experimental result, some discussions in each experiment and a conclusion.

Page 10: Climbot Window Climbing Robot

vi  

ABSTRAK

Dalam kertas ini, kita akan mengkaji tentang satu robot memanjat kaca yang

kecil dan ringan. Ia akan digunakan dalam kehidupan kita. Konsep ini akan

digunakan dalam robot mencuci tingkap. Mekanisme bergerak adalah dua roda

dengan pasif cangkuk sedutan. Dengan menggunakan mekanisme ini, robot akan

boleh bergerak semua arah.

Prototaip robot memanjat kaca akan dibina. Dimensi robot adalah kira-kira

100mm x 200mm x 100mm dan beratnya kira-kira kurang daripada 2 kg. Prototaip

robot akan mengandungi dua roda yang bersendirian dan pasang dengan cangkuk

sedutan. Kertas ini mengandungi latar belakang dan objektif penyelidikan ini, sistem

prototaip mekanikal, sistem kawalan gerakan, keputusan eksperimen, bincangan

eksperimen dan kesimpulan.

Page 11: Climbot Window Climbing Robot

vii  

TABLE OF CONTENT

CHAPTER TITLE PAGE

DECLARATION ii

DEDICATION iii

ACKNOWLEDGEMENT iv

ABSTRACT v

TABLE OF CONTENTS vi

LIST OF TABLES vii

LIST OF FIGURES ix

LIST OF SYMBOLS AND ABBREVIATIONS xi

LIST OF APPENDICES xii

1 INTRODUCTION 1

1.0 Project Background and Inspiration 1

1.1 Window Climbing Robot 2

1.2 Problem Statement 3

1.3 Project Scope And Objective 4

2 LITERATURE REVIEW 6

2.0 Preview 6

2.1 Window Climbing Robot 6

2.1.1 Window Climbing Robot With Vacuum Pump 8

2.1.2 Window Climbing Robot Without Vacuum

Pump

11

3 PROJECT OVERVIEW 14

3.0 Introduction 14

Page 12: Climbot Window Climbing Robot

viii  

3.1 Concept 16

3.1.1 Behavior of Passive Suction Cup 18

3.1.2 Height Change 20

4 METHODOLOGY 21

4.0 General Resources 21

4.1 Preview of Structure And Mechanism 22

4.2 Preview of Electronic System And Devices 24

4.3 Preview of Peripherals Interfacing And

Programming

32

5 EXPERIMENT AND RESULT 35

5.0 Program Debugging 35

5.1 Sensor 35

5.2 Climbot Working Path 36

6 DISCUSSION AND CONCLUSION 40

6.0 Discussion 40

6.1 Suggestions And Future Development 41

6.2 Conclusion 42

REFERENCES 44

APPENDICES 45

Appendix A Gantt Chart 45

Appendix B Climbot Source Code 47

Page 13: Climbot Window Climbing Robot

ix  

LIST OF TABLES

TABLE NO. TITLE PAGE

1 Locomotion Mechanism of Wall Climbing Robot

Using Suction Cups as a Hold Principle

18

4.0 The Dynamixel AX-12 characteristic specification 29

Page 14: Climbot Window Climbing Robot

x  

LIST OF FIGURES

FIGURE

NO.

TITLE PAGE

2.0 Mechanism of small-size window cleaning robot 9

2.1 Prototype window cleaning robot 10

2.2 Prototype of biped climbing robot 11

2.3 Stickybot, a new bio-inspired robot capable of

climbing smooth surfaces.

12

2.4 Directional stalks comprised of 20 Shore-A

polyurethane

12

2.5 Prototype of climbing robot 13

2.6 The mechanism of leg of climbing robot 13

3.0 Tear-off force versus pressing force 19

3.1 Height changes of the suction cup versus the pulling

force

20

4.0 Methodology of climbot design and construction

flowchart

22

4.1 The mechanism of climbot 23

4.2 The methodology of climbot structure and mechanism

design

24

4.3 The PIC 18F4550 characteristic specification 25

4.4 Main circuit of Climbot 26

4.5 The general preview of the electronic interfacing part

of climbot.

27

4.6 Schematic for Voltage Regulator Circuit 27

4.7 Schematic for RESET circuit 28

4.8 Dynamixel AX-12 servo actuators. 30

4.9 Nickel cadmium AA 700mAh with 9.6V battery 31

Page 15: Climbot Window Climbing Robot

xi  

4.10 One packet of Infrared sensor 31

4.11 Infrared sensor circuit board with comparator LM324 31

4.12 Flowchart of program 33

4.13 Main circuit 33

4.14 Infrared sensor circuit 34

5.0 Working path of window climbing robot 36

5.1 Moving Path of Climbot when horizontal direction

testing

37

5.2 Moving path of climbot when moving up with

direction 45 degree

38

5.3 Moving path of climbot when in direction moving up 38

5.4 Moving path of climbot when moving down direction 39

Page 16: Climbot Window Climbing Robot

xii  

LIST OF SYMBOLS AND ABBREVIATIONS

Cm -Centimeter

DC -Direct Current

ESC - Electrostatic Chuck

IB - Internally Balanced

IR -Infrared Sensor

NDE -Reliable Nondestructive Evaluation

PTFE - Polytetrafluoroethylene

SRF - Smart Robot Foot

Page 17: Climbot Window Climbing Robot

xiii  

LIST OF APPENDICES

APPENDIX TITLE PAGE

A Gantt Chart Semester 1 and 2 44

B Source Code of Climbot 47

Page 18: Climbot Window Climbing Robot

1

CHAPTER 1

INTRODUCTION

1.0 Project Background and Inspiration

Changes of social and living environments require supporting works and lives

in our lives. Electronics, mechatronics and informatics are key technologies to

achieve the support system. Especially, a robot, which is made by their integration, is

expected as the main equipment. To realize the practical robot in our lives, the robots

are required to meet four conditions at the minimum: compact, lightweight, safety

and inexpensive. However, it is difficult to resolve all conditions, and a lot of studies

of the working robots reported have not achieved them.

In many practical, autonomy of a mobile robot means that the robot not only

acts autonomously, i.e. it navigates and fulfils its task without any human

intervention. But the robot should also carry its own power supply in order to operate

without an umbilical cable. While this energy-autarky is not a severe problem for

wheeled mobile robots, it is a real challenge for climbing robots because the weight

of a climbing robot is of tremendous importance, and hence also the weight of the

weight of the power supply. For energy-autarkic climbing robot it is thus essential to

keep the weight and the energy consumption as low as possible.

Note that a great amount of high rise buildings are emerging in modern cities

today. Every architect prefers to present the new buildings to the world with his own

characteristics. That is why the number of high-rise buildings with complicated

shapes is increasing worldwide. However these external cladding walls require

constant cleaning. As a result, even skilled workers with safety ropes have

Page 19: Climbot Window Climbing Robot

2

difficulties in climbing those buildings and currently almost of them are still cleaned

manually. The development of walking and climbing robots offers a novel solution to

the above-mentioned problems. Because of the current lack of uniform building

structures, window cleaning and maintenance of high-rise buildings is becoming one

of the most appropriate fields for robotization. A cleaning robotic system can make

the automatic cleaning of high-rise buildings possible and relieve cleaning workers of

their hazardous work.

1.1 Window Climbing Robot

Till recent years, many types of adhesion mechanisms have been used. There

include suction cups, electrostatic chuck, effective adhesion and surface adaptability.

One substantial part of energy consumption is required for holding a climbing

robot at the surface, e.g. a wall. Besides magnetic adhesion and van-der-walls forces,

suction cups are most commonly used which are evacuated actively by a vacuum

pump. Most machines use either a single large suction cup or multiple small suction

cups on each foot. Alternatively, the body of a climbing robot is used as a large

suction cup with a wheeled drive-system underneath. In general, these suction cups

are evacuated actively by at least one vacuum pump which is mounted on the robot.

This is called “active suction” or “active suction cups”, respectively, hereinafter.

Magnetic adhesion is limited to situations where the surface is magnetic.

Then “Suction Adhesion”, this involves the use of cups and small pumps to create

vacuum inside the cup. This method is disadvantageous. Firstly, it takes time to

generate pressure inside the cups. Secondly, it cans locomotive only on smooth

surfaces. If the cups cannot stick to a completely flat surface, then the cups cannot

generate sufficient pressure inside them and would fall off the wall.

Climbing robots feature the special working environment and mobility

against gravity. They are useful devices adopted in a variety of applications such as

reliable nondestructive evaluation (NDE) and diagnosis in some hazardous

Page 20: Climbot Window Climbing Robot

3

environments, welding and manipulation in the construction industry especially of

metallic structures, cleaning and maintenance of high-rise buildings.

As the results of surveying the requirements for the window cleaning robot,

the following points are necessary for providing the window cleaning robot for

practical use is it should be small size and lightweight for Portability, clean the

corner of window because fouling is left there often, sweep the windowpane

continuously to prevent from making striped pattern on a windowpane, automatic

operation during moving on the window.

For sufficiently flat surfaces like windows, a few number of climbing robots

use “passive suction cups” made of elastic material, i.e. vacuum cups which are

evacuated simply by pressing them to the surface. In this way, the vacuum is

generated indirectly by utilizing the robot’s locomotion system without a specific

vacuum pump, and no energy is consumed for adhesion. On more or less clean

surfaces, the vacuum is kept for a longer period of time. Freeing a passive suction

cup by tearing it off the surface needs large forces which cause mechanical stress and

thus finally a rigid and heavy mechanical construction. A better solution is to release

the suction cups in a controlled manner by a specific mechanical construction which

opens small (passive) valves to inflate the cups. But this construction and not only

increases the weight of the climbing robot. It also leads to severe kinematic

restrictions.

1.2 Problem Statement

Today, window climbing robot industrial face the constraints and challenges

of the complexity of technology, time to market and limited market interest due to

the high cost of products. The limited resources of highly talented and passion robot

designer and engineers, high cost of the R&D and low market revenue had somehow

contribute to the factor of flat growth in the robot entertainment industrial.

Page 21: Climbot Window Climbing Robot

4

Market demands many automatic windows cleaning system. However, almost

of them in market now are mounted on the building from the beginning and they

needs very expensive costs. Besides that, many of them need to service every time.

From the survey, the requirement of window cleaning robot is small, light weight,

low cost, and automatic operation during moving on window.

The climbot project will basically apply the fundamental concept of industrial

that promises the concern issue of competitive cost, quality material and user friendly

technology and approaches. A basic microcontroller of 18F4550 PIC and general

Infra-Red sensor had been applying to the robot.

The purpose of climbot is design a window climbing robot without vacuum

pump. This is because vacuum pump will bring many defect includes make the robot

noisy, complex, expensive and consume much power. But climbing robot using

passive suction cup will meet many problem likes what structure is most suitable,

how many suction cups are need, what type of suction cups suitable and so on. The

structure of robot also need to design so can minimize the weight of robot.

1.3 Project Scope and Objective

In order to achieve the objective of the project, there are several scope had

been outlined. The scope of this project includes using MPLAB IDE to program

microcontroller, build hardware for the robot, and interface the hardware to computer

by using RS232 serial port communication. The robot will test until it able move

vertically on the window, not fell down and able to avoid obstacles.

The main core of this project is to design and build a window climbing robot

which can adhesive on the window and move vertically on the surface of window. It

also has the ability to avoid the obstacles and automatic operation during moving on

the window. Then, apply the concept of window climbing on window cleaning robot.

Then, the robot also is a window climbing robot without using vacuum pump.

This is a challenge to make the robot stick on the smooth surface without any

Page 22: Climbot Window Climbing Robot

5

vacuum machines. Without using vacuum pump also can make the cost of robot

decrease. The concept of window climbing robot will apply to window cleaning

robot by adding cleaning system on the robot.

Page 23: Climbot Window Climbing Robot

6

CHAPTER 2

LITERATURE REVIEW

2.0 Preview

Numerous robots exist for climbing inclined surfaces. Motivations are

typically inspection or maintenance in dangerous environments like the exterior of a

tall building, airplane, or ship, or in nuclear facilities or pipelines. More limbs

typically provide redundant support and often increase load capacity and safety.

These benefits are achieved at the cost of increased complexity, size, and weight.

Thus, when compactness and efficiency are critical, a structure with minimal weight

and complexity is best applied.

2.1 Window Climbing Robot

Cheap, efficient adhesion remains a seemingly unsolved engineering problem.

In window climbing applications, reliable adhesion is a precondition for the

development of autonomous robots. On the other hand, in factory automation (and

particularly where mechanical gripping is not suitable) adhesion mechanisms such as

suction cups and electrostatic chuck are used. However, in terms of maintenance and

capital investment such systems come not cheap. In this text we propose an

alternative system that combines reliability with cost performance. Such a system,

not only would be useful for window climbing but it might be a potential

replacement for suction cups in object handling applications. In the following

sections we review how and why suction cups and electrostatic chuck are used in

Page 24: Climbot Window Climbing Robot

7

industry. We introduce the concept of distributed adhesion and finally we evaluate an

implementation of the same based on magnets.

a. Suction Cups

In factory automation, a widely used adhesion mechanism is the suction cup.

Suction cups are used for a wide range of purposes: from handling glass windows in

car assembly line to the handling of cartoon boxes in packaging lines. The popularity

of suction cups is rooted in industrial-strength reliability, excellent grip (up to 1 atm),

ease of use: the grip can be controlled at will by just closing/opening a valve, and in

delicate applications, such as glass handling, the soft cups are better suited than

mechanical gripping. However, suction cups have three main drawbacks that limit

their versatility as an adhesion device. There are they require of a vacuum pump that

needs periodic maintenance (operating overhead), and suction cups need a smooth

surface because a suction cup won’t work on a cylindrical object, or a rough surface

like tree bark. Suction cups are low Efficiency. The size, weight, bulkiness and

power consumption of the vacuum pump seems not suited for applications where

available power is limited such as in autonomous robots.

b. Electrostatic Chuck

Electrostatic Chuck (ESC) is a device (usually custom made) that achieves

controlled adhesion by means of electrostatic forces. It is usually used in

semiconductor industry to manipulate, in vacuum, delicate thin silicon wafers that

risk damage and/or contamination if gripped by means of mechanical devices. A

typical ESC has a shape of disc and has electrodes insulated by a dielectric material

(ceramic, polymer). Characteristics of ESC are: a) It can be used in vacuum. b) Its

rigidity combined with an uniformly distributed adhesion force do not deform thin

delicate wafers, c) The high sensitivity to the surface roughness (due to the short

range of the generated adhesion force) renders them ineffective in “normal”

roughness surfaces (Ra>100um). Both, suction cups and ESC are active devices:

adhesion can be switched on/off at will.

Page 25: Climbot Window Climbing Robot

8

C. Effective Adhesion & Surface Adaptability

In suction cups, electrostatic chuck, (and other noncompliant adhesion

mechanisms such as magnets, the Internally Balanced (IB) magnet , and

electromagnets), the usual poor adaptability of the device to the substrate’s surface

roughness precludes effective grip on curved and/or rough surfaces. As me

mentioned ESC’s effectiveness, for instance, is limited to ultra flat surfaces. On the

other hand, gecko foot-hair adhesion which is based on short-range forces such as

Van der Waals and capillary force is effective in many kinds of rough surfaces. This

seems due to the compliance provided by its cantilever-shaped foot-hairs. From a

contact mechanics point of view, a relation between effective adhesion and

compliance seems to exist. This suggests that if a given adhesion mechanism (ESC,

magnet) can be made (more) surface roughness compliant their effectiveness range

might be expanded to more kinds of surfaces. One way to do this is by mimicking the

same structure of gecko-foot hair. However, producing gecko foot-hair micro-

structures (even at mm scales) might be expensive. Thus, one way to achieve a low

cost but still reasonably compliant device might be to adopt a “striped down” version

of the (compliant) gecko foot structure where compliance is traded for manufacturing

cost.

2.1.1 Window Climbing Robot with Vacuum Pump

Window climbing robot with vacuum pump means that the robot uses the

active suction cups as locomotion mechanism of robot. But vacuum pumps make

climbing robots noisy. They also increase the weight and the costs of a robot.

Additionally, the design complexity and the weight are increased due to additional

vacuum tubes, muffles, valves and so forth. Hence, it is desirable to avoid a separate

installation for vacuum generation and transportation.

Page 26: Climbot Window Climbing Robot

9

2.1.1.1 Small Size Window Cleaning Robot

This robot is design by Tohru MIYAKE and Hidenori ISHIHARA from

Kagawa University, Japan. Small size window cleaning robot’s weight is less than

5kg, including the weight of battery and washing water. The robot size 300mm x

300mm x 100mm. The robot mechanism as shown in Figure 2.0 was designed under

focusing on the window cleaning robot for just a single windowpane. The robot

moves on windowpane by two-wheel locomotion mechanism with holing the body

on the surface using a suction cup vacuumed by a pump.

Figure 2.0 Mechanism of small-size window cleaning robot.

The most important point in the mechanism is the friction coefficient of

suction cup and tire against the adhering surface, e.g. high friction between the tire

and the surface of window can transmits the torque, and low friction between the

suction cup and the surface of window can achieves to move the robot with holding

the body on the window. PTFE (Polytetrafluoroethylene) was selected for the

materials of surface of a suction cup, and silicon rubber for the material of tires.

Vacuum pump Pressure is maximum -33.3 kPa with flow volume 2.5 l/min.

Page 27: Climbot Window Climbing Robot

10

Figure 2.1 Prototype window cleaning robot

2.1.1.2 Biped Climbing Robot

This robot is design by Mark Minor, Hans Dulimarta, Girish Dang, Ranjan

Mukherjee1, R.Lal Tummala, and Dean Aslam from Mechanical and Electrical

Engineering Department, Michigan State University. These robots must be

sufficiently small to travel through confined spaces, such as ventilation ducts, and to

avoid detection while traveling along the outside of a building. It is assumed that the

robot will travel on smooth surfaces with varying inclinations, such as floors, walls,

and ceilings, and walk between such surfaces. Thus, the robot must be capable of

adapting and reconfiguring for various environmental conditions, be self-contained,

and be capable of carrying wireless sensors, such as a camera or microphone and

their transmitters. The purpose of deploying such a robot would be for inspection,

isolating the source of a biological hazard, or for gathering information about a

hostile situation within a building.

The Smart Robot Foot (SRF) grips the climbing surface and supports the

weight of the robot as shown in Figure 2.2. The SRF measures 40 X 40 X 25 mm3

and weighs 35g with a 40mm diameter suction cup. The total power consumption is

0.5 watts. Its main components are a diaphragm-type motor-operated vacuum pump,

a suction cup, a pressure sensor and a micro machined shape memory alloy valve.

The pump is connected to the suction cup through a custom designed miniature

Page 28: Climbot Window Climbing Robot

11

aluminum connector. The connector integrates the SRF components and serves as a

mounting platform for the robot body. The suction cup features cleats that increase

the rigidity of the grip. The signal from the pressure sensor indicates whether the

SRF is firmly attached to the surface. The SRF is released through actuation of the

valve by a signal from the control unit. The weight that is supported by the SRF is

determined by testing it on different surfaces with loads applied parallel and

perpendicular to the surface. In parallel configuration, the load is applied at a

distance D from the clean glass surface. Results indicate that a 40mm diameter

suction cup on a glass surface can support a parallel load of approximately 590gr

80mm from the surface and 365gr 120mm from the surface.

Figure 2.2 Prototype of biped climbing robot

2.1.2 Window Climbing Robot Without Vacuum Pump Window climbing robot without vacuum pump means that the robot uses the

passive suction cups, magnet or directional adhesive material as locomotion

mechanism of robot. Window climbing robot without vacuum pump includes

Stickybot, Climbing robot and Climbatron.

Page 29: Climbot Window Climbing Robot

12

2.1.2.1 Stickybot The robot design by Stanford University, called Stickybot as shown in Figure

2.3, draws its inspiration from geckos and other climbing lizards and employs similar

compliance and force control strategies to climb smooth vertical surfaces including

glass, tile and plastic panels. Stickybot use microspines to climb rough surfaces such

a brick and concrete.

To enable Stickybot to climb a variety of surfaces an analogous, albeit much

less sophisticated, hierarchy of compliances has been employed. The body of

Stickybot is a highly compliant under-actuated system comprised of 12 servos and 38

degrees of freedom. The torso and limbs are created via Shape Deposition

Manufacturing, using two different grades of polyurethane. The stiffest and strongest

components of Stickybot are the upper and lower torso and the forelimbs, which are

reinforced with carbon fiber as shown in Figure 2.4. The central part of the body

represents a compromise between sufficient compliance to conform to gently curved

surfaces and sufficient stiffness so that maximum normal forces of approximately +/-

1N can be applied at the feet without producing excessive body torsion.

Figure 2.3 Stickybot, a new bio-inspired robot capable of climbing smooth surfaces.

Figure 2.4 Directional stalks comprised of 20 Shore-A polyurethane

Page 30: Climbot Window Climbing Robot

13

2.1.2.2 Climbing Robot

The objective of this design was to keep the weight of the climbing robot as

shown in Figure 2.5 as low as possible, so that this is in a position to move on

smooth surfaces like window panes with suction cups.

So a suction system likes Figure 2.6 was developed by which the climbing

robot can be stopped on the disk completely passively, which means without using

energy. For this purpose, simple "passive" suction cups are pressed with the normal

locomotor system on the disk and thereby evacuated.

For the movements of the individual legs difficult to coordinate, the low-

weight lubricant-free igubal® pillow block bearing is used, the individual piece

weighing not more than two grams.

Figure 2.5 Prototype of climbing robot.

Figure 2.6 The mechanism of leg of climbing robot

Page 31: Climbot Window Climbing Robot

14

CHAPTER 3

PROJECT OVERVIEW

3.0 Introduction

Recently, there have been many demands for automatic cleaning system on

outside surface of buildings such as window glass by increasing of modern

architecture. Some customized window cleaning machines have already been

installed into the practical use in the field of building maintenance. However, almost

of them are mounted on the building from the beginning and they needs very

expensive costs. Therefore, requirements for small, lightweight and portable window

cleaning robot are also growing in the field of building maintenance. As the results of

surveying the requirements for the window cleaning robot, the following points are

necessary for providing the window cleaning robot for practical use:

1) It should be small size and lightweight for portability.

2) clean the corner of window because fouling is left there often.

3) Sweep the windowpane continuously to prevent from making striped

pattern on a windowpane

4) Automatic operation during moving on the window.

The locomotion mechanism must be chosen to satisfy these demands,

especially later two subjects. Here locomotion mechanism means the combination of

adhering mechanism, traveling mechanism and a mechanism for changing a traveling

direction. First requirement brought the following specifications for designing the

window cleaning robot.

Page 32: Climbot Window Climbing Robot

15

In previous researches, we have proposed outline of mechanical system for

window cleaning robot for filling above mentioned demands. And we confirmed

basic properties and its possibility by the experiments. That mechanical system

consists of two-wheel which attach to passive suction cups. By this mechanical

system, window cleaning robot can move on vertical window with adhering

smoothly. This robot adheres on a windowpane with cleaning as moving on large

windows.

This paper deals with traveling control system in order that above mentioned

mechanical system of window cleaning robot can be operated automatically. We

know a lot of studies on window climbing robot by various research groups, but there

are few researches and development of motion control of window climbing robot.

However the environment of robot which moves on vertical or inclined plane is quite

different from the robot moves on horizontal plane at conditions of motion control.

This is due to difference of direction of gravity works on the robot.

On the other hand, the climbot, window robot project do faced some

challenges and constraints in both the technical part and project implementation.

On the technical part, initially the projects face the constraint of choosing the

best motor for the robot. At first the Cytron servo motor C55 was chosen to be

implemented on the robot, but since torque were no enough to move the wheel as a

reason to shift to the AX-12 Dynamixel servo actuator. Although it is clear that the

price of AX-12 is higher than C55, but the AX-12 has the very high torque and good

in quality. Then, because of change the servo motors, the main circuit of the robot

also change.

On another part, the hardware and structure of the climbot mechanism which

had been design on the early first semester had to be redesign when its fail to match

the program and the desired locomotion. The problem mainly contributed by the

unstable movement when the robot climbs on the window. The size of base robot

form 10cm x 10cm increase to 20cm x 10cm.

Page 33: Climbot Window Climbing Robot

16

3.1 Concept

A mobile robot with the capability of climbing walls or other inclined

surfaces and carrying out various tasks must be light enough so that its weight does

not strain the structure, yet rugged enough to work in an exterior environment and

powerful enough to carry the necessary payload. It must also have the ability to climb

over obstacles since the various surfaces like building walls, etc. will normally have

protrusion such as pipelines, window frames, etc and to maneuver reliably within an

undefined environment. Clearly, climbing robots need not be able to undertake all of

these tasks and some applications may require only one or two such capabilities. In

this paper, a design of window climbing robot is presented in order to solve these

problems.

Based on the introduction and literature review, it is fairly understand that the

climbot project is one of the kinds to create a window climbing robot based on the

study and implementation of the climbing robot. Thus in order to design and produce

a complete project which concern on the elements of technology market values, a lot

of concepts and inspiration either from the nature, science knowledge, art, economy

and user psychology had been concern in the preliminary stage of the project design

and planning.

The window climbing robot requires following functions. First is mobility,

which the robot can move continuously on a vertical smooth surface with velocity

enough. The system is handy and can be used in any place. Robot moves along the

surface of window with suctioning. Holding equipments and loco-mechanism must

be considered to design the robot with abilities to achieve the above performance.

There are four types of hold principle for climbing window surface; magnetic

force, counter weight, sticky material and vacuum system. A system using magnetic

force is useful on a steel wall, but on a window glass this is inconvenient since it

needs that a window glass is wedged between two magnetic bodies, therefore at

never be closed window the hold system does not work. In addition, thick window

glass as a double glass window needs so much magnetism, It means necessity of

control of magnetic force, but it is complicating factor Counter weight can keep the

Page 34: Climbot Window Climbing Robot

17

robot on the vertical wall and also help the motion opposing gravity. But in the

system, the robot must be towed using string-like thing as ropes or wires. It is not

suitable for the concept of handy.

Vacuum suction principle also can keep the robot on the window surface.

Window climbing robot with vacuum pump means that the robot uses the active

suction cups as locomotion mechanism of robot. But vacuum pumps make climbing

robots noisy. They also increase the weight and the costs of a robot. Additionally, the

design complexity and the weight are increased due to additional vacuum tubes,

muffles, valves and so forth.

Sticky material is one of the ways to keep the robot on the window surface.

There are same stick material like passive suction cups and directional adhesive

material. With the objective of window climbing robot, sticky material with passive

suction cups is most suitable for window cleaning robot. Hence it makes enough hold

force with lightweight and small size equipments.

Stick material has been selected for the hold principle. It allows handy design

and enough performance. Loco-mechanism in order to move freely on the window

surface the robot is required linearity and rotatability. Table 1 compares

characteristics of five types of locomotion mechanisms in points of mobility and

complexity of mechanisms. Table 1 says that a crawler mechanism allows good

linearity but rotatability is not good, that this mechanism needs many suction cups at

the minimum which are attached on outer of a crawler, and that it makes the

mechanism complexity and leads increase of mass.

The mechanism of 2 drive wheels has linearity and rotatability and it only

requires one suction cup at the minimum Locomotion mechanisms of the walking,

parallel link and inch worm are suitable solutions of the window cleaning robot since

it is easily able to ride over the frames on wall like a window frame. However, there

are several problems such as the achievement of the fast and continuous movement

and simplification of the complex mechanisms. In this research, we choose 2 drive

wheels as a locomotion mechanism of window cleaning robot according to the

evaluation of above-mentioned various locomotion methods.

Page 35: Climbot Window Climbing Robot

18

3.1.1 Behavior of Passive Suction Cup The passive suction cup of outer diameter with 75 mm and a weight of 23 g

will be discussed. It is mounted simply by a threaded pin. The achievable holding

force (measured perpendicular to the surface) is given by the vacuum and the

effective area underneath the suction cup. In theory it is 433 N at maximum. In

practice it depends on how strong a cup has been pressed to the surface, i.e. the

pressing force, and hence on the remaining amount of air underneath the cup. Figure

3.0 shows this dependency and gives the maximal pulling force, called the tear-off

force hereinafter, with respect to the pressing force.

Page 36: Climbot Window Climbing Robot

19

Figure 3.0 Tear-off forces versus pressing force

These measurements were taken for a clean glass surface which is the best

case, in order to figure out the potential of passive suction cups. A pressing force of 5

N is needed to bend the rubber material of the suction cup such that it sucks to the

surface. But even with this small pressing force, the cup is able to hold up to 200 N.

increasing the pressing force increase also the tear-off force. A limit of 270 N is

reached when the pressing force is about 30 N because the top of the cup touches the

surface and the remaining air underneath it cannot be evacuated further. Overall a

strong amplification of the pressing force is achieved in this way and no energy is

used to push a foot to the surface. Such a pushing movement is dampened by the

elasticity of the cup itself.

Adhesion also leads to a friction force which prevents the robot from slipping

(down). It depends primarily on the vacuum underneath the cup, but also on the

ground material, especially its friction coefficient. But more importantly, the vacuum

is also depending on the pulling force. A pulling force results in an increased volume

and consequently in an increased vacuum. Thus the adhesive force is increased also.

It further seems as if there is a larger indenting of the cups material with the ground

due to an increased vacuum. This enlarges the friction forces additionally. In practice,

this effect depends on the initial volume and thus also on the pressing force.

Nevertheless, the robot may slip, although a suction cup is not torn off. The safety

Page 37: Climbot Window Climbing Robot

20

factor, i.e. the number of suction cups, should hence be designed such that slippage

does not occur even in the worst case.

3.1.2 Height Change

The volume underneath a suction cup depends on the acting forces as

discussed before. The height of the cup thus varies, especially depending on the

pulling force on the height change outweighs the effect of the pressing force as

Figure 3.1 shows. While the height of the suction cup is about 10 mm for any

pressing force without load, it goes up to more than 25 mm by an increasing puling

force, until the cup is torn off. This load dependant height change introduces

elasticity into the system which is relevant for position and posture control. But a

proper design of a climbing robot itself may reduce the impact of this elasticity.

Figure 3.1 Height changes of the suction cup versus the pulling force

Page 38: Climbot Window Climbing Robot

21

CHAPTER 4

METHODOLOGY

4.0 General Resources

Generally, before starting the design and planning stage for the climbot

project, an intensive study and observation on the window climbing robot, such as

small-size window cleaning robot, stickybot, climbing robot and climbatron had been

carried out to get the general idea and a preliminary background on the process or

methodology which had to carried out in order to complete the project. Those

window climbing robots had been studied and observe their performance through

online websites, online video, E-journals and toys shops. This task is perform in

order to study the concepts, creativity and structural design of the climbing robot, it

the terms to perform reverse engineering stage on those successful products.

Then the preview and references process is conducted on previous student

projects to study their project and report, in order to get a clearer view on what had to

expected, their constraints and results. Several other related thesis and projects

produced by FKE student also had been view, especially on the electronic-circuit part

and peripheral interfacing, all those make available on the faculty thesis library.

The next stage which is more technical is the stage to collect relevant

resources for the project such as the data sheet for the microcontroller, sensor,

electronic components, and servos actuator. From those information obtain, the most

suitable devices is chose. Next for the hardware design, the mechanism structure is

designed based on kinematics and stability of knowledge and technology. Finally all

Page 39: Climbot Window Climbing Robot

22

the elements are combine and mount together to test run and complete the project as

shown in Figure 4.0 below.

Figure 4.0 Methodology of climbot design and construction flowchart.

4.1 Preview of Structure and Mechanism

The structure of the robot is made by two wheels and each wheel attach to

suction cups. The wheels will locomote by two motors. The base of robot is made by

acrylic. Figure 4.1 below are the robot look likes:

Hardware Construction Mechanism Testing Hardware Modification

Mechanism Retest Circuit Development Circuit Troubleshooting

Circuit Modification Circuit Testing Circuit Interfacing

Software Development Software Debugging

Program Modification

Program testing

Trail Run Overall Modification

Project Complete Project Presentation Documentation

Page 40: Climbot Window Climbing Robot

23

Top view side view

Front view 3D view

Figure 4.1 The mechanism of climbot

The climbot structure and mechanism is basically design by observing the

how the robot can move vertically on the smooth surface. The most important part is

the wheel of robot. The passive suction cups were attached on the wheel. The

diameters of wheels used were 6 cm and about 10 passive suction cups were used to

attach on the wheel. At the initial prototype, the robot base is 10 cm x 10 cm. After

testing the robot, modification of robot was done. The robot base size was change to

20 cm x 10 cm. The robot became more stable. Mechanism design as shown in

Figure 4.2.

Page 41: Climbot Window Climbing Robot

24

Figure 4.2 The methodology of climbot structure and mechanism design.

4.2 Preview of Electronic System and Devices

On the circuit and electronics parts, the first stage of the design methodology

is to understand the requirements of the project and the limitation of various

constraints such as the level of technology, microcontroller reliability and the

complexity of programming and interfacing. First, an intensive studies is conducted

to learn and observe the others circuit and devices used by previous year projects and

research projects conducted worldwide. From those technical studies of the circuit,

schematic layout and components used, the suitable and most reliable circuits,

components and peripheral interfacing method are modified and applied to the

climbot electronics stage.

Page 42: Climbot Window Climbing Robot

25

The first stage is to choose the suitable microcontroller for the climbot project

and the PIC18F4550 microcontroller as shown in Figure 4.3 had been selected due to

its reliable performance and availability to program in C-language. Below

characteristic specification show the advancement of the microchip.

The most important part of the circuit is the central processing unit,

microcontroller. Microcontroller PIC18F4550 which is 40 pins 8-bit CMOS FLASH.

The microcontroller has 5 difference ports that are port A, B, C, D and E. the core

features of this microcontroller are high performance RISC CPU, only 35 single

word instructions to learn, all single cycle instructions except for program branches

which are two cycle, operating speed: DC - 20 MHz clock, up to 8K x 14 words of

FLASH Program Memory, up to 368 x 8 bytes of Data Memory (RAM), up to 256 x

8 bytes of EEPROM Data Memory, low power, high speed CMOS

FLASH/EEPROM technology, fully static design and in-Circuit Serial Programming

(ICSP) via two pins.

Figure 4.3 The PIC 18F4550 characteristic specification.

PIC18F4550

Page 43: Climbot Window Climbing Robot

26

Figure 4.4 Main circuit of Climbot.

After chosen the microcontroller of the climbot, the next step is to choose the

peripherals for the window climbing robot. The basic components will be servo

motors as actuators, Intra-red sensors for obstacle and object detection, and LED in

various interactive formations for modes expression of the climbot. Main circuit

showed in Figure 4.4.

Two servo motor will be used in the climbot project, there are Dynamixel

AX-12 actuator standard torque servo motors. Meanwhile, on the Infra red sensors

part, four units of infrared sensors will be placed on the front left and right of the

climbot to interface with obstacles and one unit will be placed on the middle to

interface with objects.

The power supply part is the most critical unit in an electronic project. All the

microcontroller, servomotors and InfraRed sensors require for 5V respectively, and it

is obtain from the power supply. Rechargeable Ni-Cd AA 9.6V, 700mah, batteries

will be used to power climbot. The Ni-Cd battery is quite small, light and has longer

life spending and can be recharge to many cycles. The electronic interfacing part

showed in Figure 4.5.

Page 44: Climbot Window Climbing Robot

27

Figure 4.5 The general preview of the electronic interfacing part of climbot.

4.2.1 Voltage Regulator Circuit The voltage regulator circuit is used to provide a constant 5 Volt to the circuit.

Voltage regulator 7805 was implemented in the voltage regulator circuit. The voltage

regulator 7805 has 3 terminal pin for connection which are input, ground and output

pin. The maximum voltage for input pin of the voltage regulator 7805 is 35 Volt. The

voltage of output pin is 5 Volt with output current 500 mA.

Figure 4.6 Schematic for Voltage Regulator Circuit

Page 45: Climbot Window Climbing Robot

28

For this project, the power supply for the circuit is 9.6 Volt from battery.

Diode IN 4001 was used to protect the voltage regulator 7805 when the power supply

was connected in wrong terminal condition. The 1.0 ohm resistor was connected to

the input pin of voltage regulator for the purpose to filter out the noise come from

DC motor. Adding capacitors into the voltage regulator circuit can minimize the

noise to produce more stable and constant output voltage, 5 Volt. A LED was used as

indicator of 5 Volt output. The schematic for voltage regulator circuit showed in

Figure 4.6.

4.2.2 Reset Circuit

The reset circuit as shown in Figure 4.7 is to control the RESET pin on the

microcontroller. The RESET pin of PIC microcontroller is active low. It is used as an

input to initialize the microcontroller in a known start up state.

Figure 4.7 Schematic for RESET circuit

When the button is not press, the signal for MCLR is 5 Volt. Then the

microcontroller will not reset. When the button is press, the signal for MCLR is 0

Volt. The microcontroller will in RESET condition.

PI

C 1

6F 8

77A

______ MCLR

Page 46: Climbot Window Climbing Robot

29

4.2.3 Actuator The movement mechanism of a mobile robot is known as its drive train. The

motors and motor controllers constitute the most important part of the robot drive

train. The process of choosing a motor is a significant undertaking because the motor

ultimately selected has an impact on many aspects of the robot.

There are three basic types of electric motors commonly found in robots,

which are continuous DC motor, servo motor, and stepper motor. The robot in this

project will build by using 2 servo motors. The model of servo motor is Dynamixel

AX-12. The Dynamixel series robot actuator is a smart, modular actuator that

incorporates a gear reducer, a precision DC motor and a control circuitry with

networking functionality, all in a single package. Despite its compact size, it can

produce high torque and is made with high quality materials to provide the necessary

strength and structural resilience to withstand large external forces. It also has the

ability to detect and act upon internal conditions such as changes in internal

temperature or supply voltage. The Dynamixel series robot actuator has many

advantages over similar products.

Table 4.0 The Dynamixel AX-12 characteristic specification.

The main controller communicates with the Dynamixel units by sending and

receiving data packets. There are two types of packets; the “Instruction Packet” (sent

from the main controller to the Dynamixel actuators) and the “Status Packet” (sent

from the Dynamixel actuators to the main controller.)

Page 47: Climbot Window Climbing Robot

30

Figure 4.8 Dynamixel AX-12 servo actuators.

4.2.4 Power Supply

The power system of a robot is a critical part of its overall design. Simply

stated, a robot needs power to run. Therefore, the power source should be able to

stores enough energy for the robot to run for a predetermined time period without

having to be replaced or recharged. Additionally, power must be provided at a

constant voltage through a particular voltage regulation scheme in order to ensure the

proper operation of all circuitry and components. Most of the power consumption in

window climbing robot results from the motors. As such, a battery that meets the

power needs of the motors, and include an additionally margin of error for safety,

need to be chose.

Nickel cadmium batteries are ideal for many robotics applications because

there are among the least expensive and most readily available, have a high capacity,

and can be recharged up to 500 or more times. They exist in all standard size as well

as special purpose sub-sizes. The Nickel cadmium batteries as shown in Figure 4.9

used is AA with 700mAh 9.6V.

Page 48: Climbot Window Climbing Robot

31

Figure 4.9 Nickel cadmium AA 700mAh with 9.6V battery.

4.2.5 Sensors Sensors give a robot means to perceive its environment. The robot processes

the information received from its sensors and reacts in predetermined manner

according to the design of the control system. For window climbing robot, the robot

needs to sense the surrounding and to avoid the obstacles. Infrared sensors consist of

an infrared transmitter that sends out an invisible beam of light into the environment

and an infrared receiver that absorbs the beam of the light that is reflected back.

■ 4 IR Sensors as shown in Figure 4.10 attached for collision avoidance

purpose.

■ Front, back, down front and down back position.

■ Using comparator (LM324) as shown in Figure 4.11, output voltage from IR

receiver will compare to an input voltage through a variable resistor.

Figure 4.10 one packet of

Infrared sensor. Figure 4.11 Infrared sensor circuit board with comparator LM324.

Page 49: Climbot Window Climbing Robot

32

4.3 Preview of Peripherals Interfacing and Programming

The PIC18F4550 series which may support C programming language will be

fully utilize to operate based on the C-language in the programming mode. The

microchip compiler software itself, MPLAB will be used as the programming

platform to write the program, simulate and compile to the hex file before be loader

into the microcontroller. The program for the climbot will be written based on the

movement of the window climbing robot.

The program written in C++ language is set to perform a solely autonomous

window climbing robot that will be programmed to move vertically on the window

and move on the routine path for motive to clean the window. The climbot robot is

autonomous in the sense that it will respond to its surrounding and perform

unstructured task based on the respond signal on the sensors of the robot and thus

activated its modes selection automatically. Via the four Infra-Red sensor, the robot

is able to perform such as obstacle avoidance and sense the below of robot, to detect

either the surface is empty or not.

PIC MPLAB microcontroller programming software will be use as the

platform to write the program, simulate, debug, verified and burn the hex file into the

microcontroller via self made program board of the JDM. In order to perform in-

circuit debugger programming during real time operation (RTO) fine-tuning of the

robot, In-Circuit Debugger ICD2 schematic had been added to the main circuit to

support the in-circuit debugger function. The programming flow chart as shown in

Figure 4.12 will be discussed on Chapter 5.

Page 50: Climbot Window Climbing Robot

33

Figure 4.12 Flowchart of program.

Figure 4.13 Main circuit.

Page 51: Climbot Window Climbing Robot

34

Figure 4.14 Infrared sensor circuit.

Page 52: Climbot Window Climbing Robot

35

CHAPTER 5

EXPERIMENT AND RESULT

5.0 Program Debugging

After the climbot hardware, structure, and electronic system are tested, the

next stage will proceed to the programming enhancement of the robot where more

dynamic and interesting gait pattern and movement to fully optimize the 10 degree of

freedom of the robot will be tested. In this stage, creativity and observation of real cat

movement and characteristic play an important role to enhance the climbot

movement and body flexibilities. The aid of support circuit of In-Circuit Debugger

tool (ICD2) from MicroChip free share programmer plays an importance role to

debug the program. The MPLAB IDE software which is able to support the

debugging process is fully utilized.

5.1 Sensor

Basically four pair of infrared sensor had been used in climbot. These are use

to detect the existence of obstacle where 2 unit is places on the front panel and

another 2 unit was places on the back panel of the robot. In order to create a

autonomous program that have many modes but only activated through the IR sensor.

A comparator chip of LM 324 was attached to the receiver LED sensor to

enhance the signal before it when to the microcontroller. Variable resistor was also

attached so that the sensors are adjustable of its sensitivity to light, and can operate

Page 53: Climbot Window Climbing Robot

36

on day time or under bright light. However it will effected its sensitivity when it is

too bright where under the florescence light without sun light, it can operate on the

distance of maximum 5cm, but under day light, it only exceed to 1.5cm.

5.2 Climbot Working Path Meanwhile, a push button is attached to the microcontroller pin-1 to activated

the master clear function of the microcontroller and reset it. Another one push button

is attached on pin-2 (portA0) as load into the autonomous program. When the robot

power supply is on, the program will run and wait for pin-2 ‘ON’. When pin-2 is

‘ON’, the robot will start to run.

Figure 5.0 Working path of window climbing robot

This chapter reports experimental result of motion control of prototyped

window climbing robot. At the initial stage of climbot, the servo motors used are

Cytron C55 servo. But after testing, the C55 is not suitable use in climbot. It is

because the C55 servo motors have not enough torque to move the wheel when the

wheel was stick on the window. After changing the actuators to Dynamixel AX-12,

main circuit needs change to a new one. Way of write programming also different.

Hence, I need to study the datasheet of AX-12 before write a new program.

Page 54: Climbot Window Climbing Robot

37

This experiment consists of four kinds of experiments. There were

measurements of performance of attitude control when the robot moves to horizontal

direction, elevation angle of 45 degrees, moving down and moving up.

The robot was examined on the window stood vertically. The glass of the

window is flat, clear and the thick. The glass is held by window frame made of

aluminum. In all the experiment, the motions of robot is measured and observed. In

this experiment, electric power is supplied form batteries placed in the robot, i.e. the

robot is operated without any cables.

Test 1: Horizontal direction

Moving of horizontal direction was measured in same position on the window,

and same moving distance of 0.5 meters. At the starting point, the robot is attached

on the window direct to horizontal direction. Figure 5.1show the moving path of

robot. The robot will starting at one end and go to another end. Climbot will move on

the reverse direction when in front have obstacles or below surface is empty. The

average moving velocities is 0.06 m/s. Climbot also testing on high speed mode. The

robot will direct move horizontal without delay. The average moving velocities is

0.167 m/s. But high speed mode will cause the robot unstable.

Figure 5.1 Moving Path of Climbot when horizontal direction testing

Page 55: Climbot Window Climbing Robot

38

Test 2: Direction of elevation angle of 45 degrees

In this experiment, moving direction of elevation angle of 45 degrees was

measured as test 1. Figure 5.2 shows motion trajectory of climbing to direction of

elevation angle of 45 degrees. The average moving velocity is 0.06 m/s.

Figure 5.2 Moving path of climbot when moving up with direction 45 degree

Test 3: Moving up direction

Figure 5.3 indicates moving trajectory of the robot moved on the window

toward a path. The robot was started from the corner of lower left and climbed up

toward window frame of left side. The average moving velocities is 0.06 m/s.

Figure 5.3 Moving path of climbot when in direction moving up.

Page 56: Climbot Window Climbing Robot

39

Test 4: moving down direction

Figure 5.4 indicates moving trajectory of the robot moved on the window

toward a path. The robot was started from the corner of higher left and climbed down

toward window frame of left side. The average moving velocities is 0.06 m/s.

Figure 5.4 Moving path of climbot when moving down direction

Page 57: Climbot Window Climbing Robot

40

CHAPTER 6

DISCUSSION AND CONCLUSION 6.0 Discussion

Based on the achievement and respond from the lecturer and student, the

climbot project is seen successfully achieve its project scope and objectives as

discussed in chapter one. The earlier constrains that exist such as choosing the best

servo actuators to develop the robot. Because of climbot need a very high torque and

light weight servo actuator to run it. After testing and analysis, AX-12 Dynamixel

servo actuators is choose.

On the electronic parts, the decision to use intermediate advance

microcontroller of PIC18F4550 which support C-language had speed up the

interfacing and programming process. Previously the trial of using the Philips ARM7

LPC2119 microcontroller was too advance and complex, but the microcontroller was

very powerful and high-end. Since the PIC18F4550 microcontroller can support the

needs and requirements of the climbot internal and external peripherals electronic

devices such as the servomotors, LED, and IR sensor, the whole electronic part of the

project had been redesign to support the interfacing system with the PIC

microcontroller which play a role as the brain of the robot.

On next stage, as expected the project face much more challenge on the phase

of programming the microcontroller to perform all the task and specification of the

window climbing robot. The style and technique of C-language in microcontroller

programming is quite advance and required a lot of time to master and get familiar

with the interfacing part. The programming part will not only focus on the

Page 58: Climbot Window Climbing Robot

41

microcontroller but will have to consider the interfacing with the external peripherals

such as the servo motors and LED. It consist of 70% of the second semester schedule

to debug and trail the program

In-circuit debugger platform via the ICD2 module which had been readied on

the main PIC circuit play an important role on the later part when the process of fine-

tuning the program to match the requirement climbot locomotion, movement and

positioning. This phase had also consumed a lot of time and effort. However, with a

well planning and systematic strategic approach to tackle all the problem and

constraints, the project had been completed as plan and achieve more than the

minimum requirements.

The project limitations are mostly on the unstable of climbot. The robot

sometimes can move vertically on the window for a long time but sometimes cannot.

It’s because of the passive suction cups maybe cannot stick on the window very well.

So, the robot will fell down.

6.1 Suggestion and Future Development

There is still a lot of space for improvement and enhancement for this climbot

project. Window climbing field is very large fields wish needed creativity, talent and

dynamic mentality to fully optimize the technology, knowledge and inspiration of the

nature. Thus the climbot project is begin develop and design based on dynamic and

organic platform where changes are flexible to be applied and inspiration from any

fields that are relevant may be absorb and adapt in the climbot project.

Page 59: Climbot Window Climbing Robot

42

6.2 Conclusion

The window climbing platform brings a great significant to the robotic and

artificial intelligent field. The market value for this segment is large and beyond the

ordinary conventional field. The window climbing concept can be widely applied

into window cleaning application and fields of research. Based on the extract of a

journal, “The world has found out that the market potential on domestic and service

robots is far bigger than on industrial robots”. (DesignBoom, 2003), we can

conclude that climbot, a window climbing robot project is a right on time project with

a wide opportunity scope in the field of economy, scientific research and design. The

knowledge and skill obtain through this project will bring in a lot of benefit and

opportunity.

Based on the achievement and respond from the lecturer and student, the

climbot project is seen successfully achieve its project scope and objectives as

discussed in chapter one.

Climbing with passive suction cups reduces the energy consumption of a

climbing robot as far as possible in order to achieve an energy autarkic robot. The

proposed passive suction cups are robust, low weight, and low cost. This allow to

build low cost climbing robots having the same dexterity s robots using active

suction cups, but with reduced weight, complexity, and costs. Furthermore, nearly no

energy is needed for keeping the vacuum, and the robot moves with low noise. Hence,

passive suction cups seem to be an important approach to build fully autonomous,

energy-autarkic climbing robots for lots of potential fields of application.

On the other hand, even a very small gap underneath a passive suction cup

will cause the vacuum to break down by the time. The robots are thus not applicable

to any area and not allowed to stand still for a longer period of time. Additionally,

requirements concerning flatness and cleanness of the surface, on which the robot is

climbing, may be a bit harder than for active suction. Possible applications hence

range from cleaning and inspection of windows and facades or even of whole

greenhouses to climbing robots for education, entertainment, and hobby, probably

Page 60: Climbot Window Climbing Robot

43

with a focus on the latter ones. Nevertheless, investigations have to be done

concerning how to deal with elasticity and different surface conditions.

Page 61: Climbot Window Climbing Robot

44

REFERENCES [1] Manuel A.Armada Pablo Gonzalez de Santos(Eds): Climbing and walking

robot, Springer Berlin Heidelberg, 2005, 935-942.

[2] Dirk Spenneberg, Andreas Strack, Frank Kirchner, Aramies: A four-legged

climbing and walking robot, University of Bremen, Germany, 2006.

[3] PIC 18F452 Microcontroller User Manual, 2005.

[4] MPLAB C-18, C-Compiler Getting started, 2005.

[5] http://www.microchip.com

[6] http://www.cytron.com.my

[7] http://www.youtube.com

[8] http://www.stanford.edu/%7Esangbae/Stickybot.htm

Page 62: Climbot Window Climbing Robot

45  

APPENDIX A

Gantt Chart For First Semester  

 

 

 

 

 

 

 

 

 

 

Page 63: Climbot Window Climbing Robot

46  

Gantt Chart For Second Semester

 

 

 

Page 64: Climbot Window Climbing Robot

50  

 

APPENDIX B

Source code  /************************************************************************** * INTERFACING OF AX‐12 DYNAMIXELS WITH PIC18F4550 *PROJECT WINDOW CLIMBING ROBOT‐CLIMBOT *CREATED BY LEE WEI SIANG **************************************************************************/ #include "p18f4550.h" #include "delays.h" #include "timers.h"  /************************************************************************** * CONFIGURATION **************************************************************************/ #pragma config PLLDIV   = 1       // (4 MHz input) #pragma config CPUDIV   = OSC1_PLL2 #pragma config USBDIV   = 2       // Clock source from 96MHz PLL/2 #pragma config FOSC     = HSPLL_HS #pragma config FCMEN    = OFF #pragma config IESO     = OFF #pragma config PWRT     = OFF #pragma config BOR      = ON #pragma config VREGEN   = ON #pragma config WDT      = OFF #pragma config WDTPS    = 32768 #pragma config MCLRE    = ON #pragma config LPT1OSC  = OFF #pragma config PBADEN   = OFF #pragma config STVREN   = ON #pragma config LVP      = OFF #pragma config XINST    = OFF       // Extended Instruction Set #pragma config CP0      = OFF #pragma config CP1      = OFF #pragma config CPB      = OFF #pragma config WRT0     = OFF #pragma config WRT1     = OFF #pragma config WRTB     = ON       // Boot Block Write Protection #pragma config WRTC     = OFF #pragma config EBTR0    = OFF #pragma config EBTR1    = OFF #pragma config EBTRB    = OFF  

Page 65: Climbot Window Climbing Robot

51  

 

 /************************************************************************** * FUNCTION PROTOTYPES **************************************************************************/ void uart_send(unsigned char data); char AX_TxPacket(char id, char instruction, char *parameter, char paramLength); char AX_TxPacket1(char id, char instruction, char *parameter, char paramLength); char sync_write(char id,char *parameter); char read_data(char id,char *param_read); void delay1(void); void delay(void); void moveforward(void); void movebackward(void); void stop(void);  /************************************************************************** * SERVO MOTOR INSTRUCTION SET **************************************************************************/ #define I_WRITE_DATA 0x03 #define I_READ_DATA    0x02 #define I_SYNC_WRITE  0x83      /************************************************************************** * GLOBAL VARIABLE **************************************************************************/ char data[10] = {0} ; //char data_read[10]={0}; char length,i,k,j,checksum, checksum1; unsigned char value,value1; int L,N,a,turning; char hundred,tenth; unsigned int  r=1; unsigned int  select=1;   char sync_move[4]={0x00,0x00,0xff,0x03}; char sync_move1[4]={0x00,0x00,0xff,0x07}; char sync_move2[4]={0x00,0x00,0x00,0x00}; char move[5]={0x06,0x00,0x00,0x00,0x00};  /************************************************************************** * BEGIN MAIN PROGRAM CODE **************************************************************************/ void main() {  //set I/O input output   TRISC = 0;            //configure PORTC I/O direction   TRISA = 0b00000010;          //configure PORTA I/O direction 

Page 66: Climbot Window Climbing Robot

52  

 

  TRISB = 0b00011110;   TRISD = 0;   TRISE = 0;    //setup USART   SPBRG = 2;          //set baud rate to 1M for 48MHz   TXSTAbits.BRGH = 1;        //baud rate high speed option   TXSTAbits.TXEN = 1;        //enable transmission   RCSTAbits.CREN = 1;        //enable reception   RCSTAbits.SPEN = 1;        //enable serial port      //setup ADC   ADCON1 = 0b00001110;      //set ADx pin digital I/O     //downfront sensor   = RB4   //downback sensor   = RB3   //front sensor     = RB1   //back sensor     = RB2  if(!PORTAbits.RA1) { while(1) {   while(AX_TxPacket1(0x01,I_WRITE_DATA, move, 5) );   while(AX_TxPacket1(0x02,I_WRITE_DATA, move, 5) );    switch(select)   {     case 1:     {     if(PORTBbits.RB1 && PORTBbits.RB2 && !PORTBbits.RB3 && PORTBbits.RB4)     {     select=3;     break;     }     else if (!PORTBbits.RB1 && PORTBbits.RB2 && !PORTBbits.RB3 && !PORTBbits.RB4)     {     select=4;     break;     }        else     {     select=2;     break;     }     }     break;          case 2: 

Page 67: Climbot Window Climbing Robot

53  

 

    moveforward();     delay();     stop();     delay1();     select=1;     break;      case 3:     while(1)     {       if(PORTBbits.RB1 && PORTBbits.RB2 && !PORTBbits.RB3 && PORTBbits.RB4)       {       movebackward();       delay();       stop();       delay1();       select=3;       break;       }       else if (PORTBbits.RB1 && PORTBbits.RB2 && !PORTBbits.RB3 && !PORTBbits.RB4)       {       movebackward();       delay();       stop();       delay1();       select=3;       break;       }       else if(PORTBbits.RB1 && PORTBbits.RB2 && PORTBbits.RB3 && !PORTBbits.RB4)       {       moveforward();       delay();       stop();       delay1();       select=2;       break;       }       else if(PORTBbits.RB1 && !PORTBbits.RB2 && !PORTBbits.RB3 && !PORTBbits.RB4)       {       moveforward();       delay();       stop();       delay1();       select=2;       break;       }        

Page 68: Climbot Window Climbing Robot

54  

 

             }     break;          case 4:     while(1)     {       if(!PORTBbits.RB1 && PORTBbits.RB2 && !PORTBbits.RB3 && !PORTBbits.RB4)       {       movebackward();       delay();       stop();       delay1();       select=4;       break;       }       else if(PORTBbits.RB1 && PORTBbits.RB2 && !PORTBbits.RB3 && !PORTBbits.RB4)       {       movebackward();       delay();       stop();       delay1();       select=4;       break;       }       else if(PORTBbits.RB1 && PORTBbits.RB2 && PORTBbits.RB3 && !PORTBbits.RB4)       {       moveforward();       delay();       stop();       delay1();       select=2;       break;       }       else if(PORTBbits.RB1 && !PORTBbits.RB2 && !PORTBbits.RB3 && !PORTBbits.RB4)       {       moveforward();       delay();       stop();       delay1();       select=2;       break;       }     }         }   

Page 69: Climbot Window Climbing Robot

55  

 

 } } else {};  } char sync_write(char id,char *parameter) {   checksum1 = 0;   uart_send(id);   checksum1 = checksum1 + id;       for(i=0;i<4;i++)   {     uart_send(parameter[i]);     checksum1 = checksum1 + parameter[i];   }   return(checksum1); }    char AX_TxPacket(char id, char instruction, char *parameter, char paramLength) {   LATCbits.LATC0= 0;    length = 2 + paramLength;   checksum = 0;   uart_send(0xff);   uart_send(0xff);   uart_send(id);   checksum = checksum + id;   uart_send(length);   checksum = checksum + length;   uart_send(instruction);   checksum = checksum + instruction;   for(i=0;i<paramLength;i++)   {     uart_send(parameter[i]);     checksum = checksum + parameter[i];   }   checksum = ~checksum;   uart_send(checksum);    while(TXSTAbits.TRMT==0);   LATCbits.LATC0 = 1;   } char AX_TxPacket1(char id, char instruction, char *parameter, char paramLength) {   unsigned char data[10] = {0};   unsigned char header[3] = {0xff,0xff, id}; 

Page 70: Climbot Window Climbing Robot

56  

 

  unsigned char i = 0, j = 4;     LATCbits.LATC0= 0;    length = 2 + paramLength;   checksum = 0;   uart_send(0xff);   uart_send(0xff);   uart_send(id);   checksum = checksum + id;   uart_send(length);   checksum = checksum + length;   uart_send(instruction);   checksum = checksum + instruction;   for(i=0;i<paramLength;i++)   {     uart_send(parameter[i]);     checksum = checksum + parameter[i];   }   checksum = ~checksum;   uart_send(checksum);    while(TXSTAbits.TRMT==0);   LATCbits.LATC0 = 1;     checksum = 0;   for (i=0 ; i < j ; i++)   {     while(!PIR1bits.RCIF);      data[i] = RCREG;     PIR1bits.RCIF = 0;     if ( i < 3 )     {       if (data[i] != header [i])       {         if (data[i] == header[0]) i=1;         else i = 0;       }     }      else if (i == 3)j = data [i] + 4;     else if (i < (j‐1))checksum += data[i];   }     checksum += id + data[3];     checksum = ~checksum;      if (checksum == data[j‐1])     return data[4];  

Page 71: Climbot Window Climbing Robot

57  

 

    else return 1;   }  void delay() {  T0CON=0x07;  TMR0H=0xCC;  TMR0L=0x28;  T0CONbits.TMR0ON=1;  while(INTCONbits.TMR0IF==0);  T0CONbits.TMR0ON=0;   INTCONbits.TMR0IF=0; }  void delay1() {  T0CON=0x07;  TMR0H=0x24;  TMR0L=0x14;  T0CONbits.TMR0ON=1;  while(INTCONbits.TMR0IF==0);  T0CONbits.TMR0ON=0;   INTCONbits.TMR0IF=0; }  void uart_send(unsigned char data) {     while(TXSTAbits.TRMT==0);      //only send the new data after    TXREG=data;          //the previous data finish sent }  void moveforward() {      LATCbits.LATC0= 0;   checksum = 0;   L = 4;  //data length for each dynamixel actuator   N = 2;  //the number of dynamixel actuator   length = (L+1)*N+4;   uart_send(0xff);   uart_send(0xff);   uart_send(0xfe);   checksum = checksum + 0xfe;   uart_send(length);   checksum = checksum + length;   uart_send(I_SYNC_WRITE);   checksum = checksum + I_SYNC_WRITE;   uart_send(0x1e);   checksum = checksum + 0x1e;   uart_send(L);   checksum = checksum + L; 

Page 72: Climbot Window Climbing Robot

58  

 

  sync_write(0x01,sync_move);   checksum = checksum + checksum1;   sync_write(0x02,sync_move1);   checksum = checksum + checksum1;   checksum = ~checksum;   uart_send(checksum);    while(TXSTAbits.TRMT==0);   LATCbits.LATC0 = 1; }  void movebackward() {   LATCbits.LATC0= 0;   checksum = 0;   L = 4;  //data length for each dynamixel actuator   N = 2;  //the number of dynamixel actuator   length = (L+1)*N+4;   uart_send(0xff);   uart_send(0xff);   uart_send(0xfe);   checksum = checksum + 0xfe;   uart_send(length);   checksum = checksum + length;   uart_send(I_SYNC_WRITE);   checksum = checksum + I_SYNC_WRITE;   uart_send(0x1e);   checksum = checksum + 0x1e;   uart_send(L);   checksum = checksum + L;   sync_write(0x01,sync_move1);   checksum = checksum + checksum1;   sync_write(0x02,sync_move);   checksum = checksum + checksum1;   checksum = ~checksum;   uart_send(checksum);    while(TXSTAbits.TRMT==0);   LATCbits.LATC0 = 1;  }  void stop() {   LATCbits.LATC0= 0;   checksum = 0;   L = 4;  //data length for each dynamixel actuator   N = 2;  //the number of dynamixel actuator   length = (L+1)*N+4;   uart_send(0xff);   uart_send(0xff); 

Page 73: Climbot Window Climbing Robot

59  

 

  uart_send(0xfe);   checksum = checksum + 0xfe;   uart_send(length);   checksum = checksum + length;   uart_send(I_SYNC_WRITE);   checksum = checksum + I_SYNC_WRITE;   uart_send(0x1e);   checksum = checksum + 0x1e;   uart_send(L);   checksum = checksum + L;   sync_write(0x01,sync_move2);   checksum = checksum + checksum1;   sync_write(0x02,sync_move2);   checksum = checksum + checksum1;   checksum = ~checksum;   uart_send(checksum);    while(TXSTAbits.TRMT==0);   LATCbits.LATC0 = 1;     }