54
1 CHAPTER ONE INTRODUCTION 1.1 BACKGROUND A robot is any automatically operated machine that replaces human effort, though it may not resemble human beings in appearance or perform functions in a humanlike manner. By extension, robotics is an engineering discipline dealing with the design, construction, and operation of robots.The modern term robot is derived from the Czech word robota (“forced labour” or “serf”). Robots are built for different purposes, like for industrial, domestic or even for scientific purposes. 1.2 SCOPE The robot to be built in question will have six legs and will have locomotion similar to that of an insect-an ant, this is a technique called Biomimetics. 1 In order to develop this robot a model will be created which will help in the design of the robot. In constructing the robot, there are certain case studies that have taken into consideration; like considering the type of terrain the robot‟s locomotion would move on. The rainforest has been picked as a case study because of its unusually rough terrain which consists of different soil types, like the rocky, sandy and marshy soil types. The robot‟s movement will entirely be orchestrated with the use of twelve actuators or 1 An actuator is a mechanical device used for moving or controlling a mechanism or system. It takes energy transported by air, electric current, or liquid.

Final Year Report

Embed Size (px)

Citation preview

Page 1: Final Year Report

1

CHAPTER ONE

INTRODUCTION

1.1 BACKGROUND

A robot is any automatically operated machine that replaces human effort, though it may

not resemble human beings in appearance or perform functions in a humanlike manner. By

extension, robotics is an engineering discipline dealing with the design, construction, and

operation of robots.The modern term robot is derived from the Czech word robota (“forced

labour” or “serf”). Robots are built for different purposes, like for industrial, domestic or even

for scientific purposes.

1.2 SCOPE

The robot to be built in question will have six legs and will have locomotion similar to

that of an insect-an ant, this is a technique called Biomimetics.1 In order to develop this robot a

model will be created which will help in the design of the robot. In constructing the robot, there

are certain case studies that have taken into consideration; like considering the type of terrain the

robot‟s locomotion would move on. The rainforest has been picked as a case study because of its

unusually rough terrain which consists of different soil types, like the rocky, sandy and marshy

soil types. The robot‟s movement will entirely be orchestrated with the use of twelve actuators or

1 An actuator is a mechanical device used for moving or controlling a mechanism or system. It takes energy

transported by air, electric current, or liquid.

Page 2: Final Year Report

2

effectors. These actuators will be driven by a PIC 18F4550 microcontroller which will be

programmed to move each actuator according to a particular gait style to be employed.

1.3 OBJECTIVE

The objective of this project is to build a hexapod (six legged) robot and to make sure it

move, depending on the gait style to be used.

The robot to be built in question will have six legs and will have locomotion similar to

that of an insect-an ant, this is a technique called Biomimetics.2 In order to develop this robot a

model will be created which will help in the design of the robot.

The robot‟s movement will entirely be orchestrated with the use of twelve actuators or

effectors. These actuators will be driven by a PIC 18F4520 microcontroller which will be

programmed to move each actuator according to a particular gait style to be employed.

1.4 PROJECT OVERVIEW

The goal of the hexapod robot project is to provide a physical test-bed for developing and

testing control system architectures conforming to the principles of control theory and also to

generate a library of control algorithms that would enable the robot autonomously adapt to the

rainforest region. The hexapod design was selected for this project because hexapods do not

require complex balancing mechanisms (thus simplifying design requirements).

The general design requirements include the following:

Low cost: The entire system must be produced within the constraints of a very modest

budget.

2 An actuator is a mechanical device used for moving or controlling a mechanism or system. It takes energy

transported by air, electric current, or liquid.

Page 3: Final Year Report

3

Relative simplicity: It must be within my technical competence to build and program.

1.5 ROBOT ARCHITECTURE

The hexapod robotic system presented in this paper was developed bearing in mind

several abilities such as, moving on irregular paths, overcoming obstacles, climbing and going

down stairs, without compromising its stability and keeping a low overall weight. The robot to

be built will have the same structure of an arthropod-an ant, having six legs, each leg will have 2

DOFs.

The mechanical structure of the hexapod robot to be built consists of one rigid, load

carrying mainframe with six legs, similar and symmetrical distributed. Each leg is composed of 2

joints or links to which 2 actuators / effectors3 are attached (to enable it move) which are then

connected to the main body. According to (J.P.Flores Fernandes et al) for nb rigid body system

with nc independent constraint equations, the mobility or the number of degrees of freedom

(DOF) is given by:

DOF/joint = 6nb - nc (1)

`This mathematical expression above, usually called the Griebler- Kutzback equation, can

be used to determine the mobility of the hexapod robotic model. Using the equation above, each

leg has 2 joints, meaning, 2 DOFs. Considering six legs the system has a total of 12 DOFs.

Hence, it is necessary to know that there are twelve generators of motion (servomotors /

actuators).

3 DOF in this context means Degree of Freedom – no of axis movements on a control system.

Page 4: Final Year Report

4

CHAPTER 2

LITERATURE REVIEW

2.1 HISTORY OF ROBOTICS

The word robot was coined by a Czech novelist Karel Capek in a 1920 play titled

Rassum‟s Universal Robots (RUR). Robot in Czech is a word for worker or servant. A robot is a

reprogrammable, multifunctional manipulator designed to move material, parts, tools or

specialized devices through variable programmed motions for the performance of a variety of

tasks: Robot Institute of America, 1979.

2.2 CHRONOLOGY OF ROBOTICS

1954: The first programmable robot is designed by George Devol, who coins the term Universal

Automation. He later shortens this to Unimation, which becomes the name of the first robot

company (1962).

1978: The Puma (Programmable Universal Machine for Assembly) robot is developed by

Unimation with a General Motors design support.

1980s: The robot industry enters a phase of rapid growth. Many institutions introduce programs

and courses in robotics. Robotics courses are spread across mechanical engineering, electrical

engineering, and computer science departments.

1995-present: Emerging applications in small robotics and mobile robots drive a second growth

of start-up companies and research.

Page 5: Final Year Report

5

2003: NASA‟s Mars Exploration Rovers will launch toward Mars in search of answers about the

history of water on Mars

2.3 KNOWLEDGE BASE FOR ROBOTICS

Typical knowledge base for the design and operation of robotics systems:

Dynamic system modeling and analysis

Feedback control

Sensors and signal conditioning

Actuators (muscles) and power electronics

Hardware/computer interfacing

2.4 ROBOT BASE

Robotic manipulators used in manufacturing are examples of fixed robots. They cannot

move their base away from the work being done.

Mobile bases are typically platforms with wheels or tracks attached. Instead of wheels or

tracks, some robots employ legs in order to move.

Page 6: Final Year Report

6

(a)

(b)

Fig 2.1 (a) Mobile Robot (b) Fixed Robot

Page 7: Final Year Report

7

2.4.1 LEGS AND WHEELS

Most man-made vehicles today travel on wheels and for good reason: wheels are much

easier to construct and control. In today‟s economy, they also tend to be much cheaper than their

legged counterparts. However legs have distinct advantages over wheels. The biggest advantage

is in transversability and efficiency. Legged robots have a unique ability to:

Isolate their body from terrain irregularities

Avoid undesirable footholds

Regulate their stability

Achieve energy efficiency

These advantages are very desirable in modern robotics, and therefore a lot of research is

being put into creating robots that can walk. The most challenging task in designing a legged

robot is to create a system that can generate the proper gait.

2.4.2 DYNAMIC VS. STATIC

Locomotion techniques can be divided into two main categories: static and dynamic.

Robots that use static movement are always balanced; that is, their center of gravity is always

within their ground contact base. While this technique has been successfully used to create many

robots (included wheeled ones), it is more akin to wheeled movement than true dynamic walking

and as such retains fewer of the advantages. While more adept at traversing uneven terrain than

most wheeled robots, robots that use static walking are very inefficient as power is put into every

movement. However, robots that use static walking are much easier to control than their dynamic

counterparts and thus often more viable.

Page 8: Final Year Report

8

Dynamic walking is characterized in that the robot is not always in balance. Many robots

that use dynamic walking are continually “falling” and thus much more energy efficient.

Dynamic walking requires much more complex control systems in order to not fall. Robots

utilizing dynamic walking cannot use the same motions at different speeds to attain different

speeds of movement, but must use entirely different motions at different speeds. However,

dynamic walking can achieve many more advantages over wheeled locomotion. Dynamic

walking is found very abundantly in nature.

A subset of dynamic walking is called passive dynamic movement. Most dynamic

walking systems use active control to move the legs to the correct orientations for walking

(hence active dynamic walking). Passive dynamic walking is characterized by a system where

“gravity and inertia alone generate the locomotion pattern.” Passive dynamic movement can be

achieved with maximum efficiency, as the vehicle uses its own forward momentum to propagate

its next movement. Very little energy is lost from the system. Most of the concepts of passive

dynamic walking and research conducted in the field was done by aeronautical engineer Tad

McGeer between 1988 and 1992.

2.4.3 LEGGED ROBOTS

“In the early days of air travel, detractors used to argue that, if God had meant us to fly,

he would have given us wings. Had he meant us to roll, he might also have given us wheels – but

instead we, along with the great preponderance of land animals great and small, have wound up

traveling on legs.”

Page 9: Final Year Report

9

2.4.3.1 MORE THAN FOUR

Many different walking robots have been developed that use six or more legs. This is due

to the fact that a robot using this many legs can be controlled with static walking techniques

rather than dynamic walking. Most of the walking techniques can be demonstrated sufficiently

using the six legged model:

1. Six legged robot in neutral position

2. Front pair of legs move forward

3. Second pair of legs move forward

4. Third pair of legs move forward

5. Body follows legs forward

6. Six legged robot in neutral position

7. Alternating legs move forward on either side

8. All other legs move forward

9. Body follows legs forward

Page 11: Final Year Report

11

2.4.3.2 FOUR LEGS

A system on four legs is another walking scheme found readily in nature. Four legged

robots have the advantage of being statically stable when not moving, but require dynamic

walking control. There are many different ways for a four legged robot to walk including

alternating pairs and opposite pairs as in six legged robots. However these techniques now cease

to be statically stable and thus require dynamic control.

Boston Dynamics has developed a four legged robot for DARPA (Defense Advanced

Research Projects Agency) called “Big Dog,” that they claim is “the most advanced quadruped

robot on earth.” Big Dog can run at four miles per hour, climb thirty five degree slopes, and carry

340 pounds. But the most impressive feature is its dynamic walking: Big Dog can recover from

slipping and even being pushed. Its behavior is such that it approaches the infamous “uncanny

valley”.

2.4.3.3 THREE LEGS

Three legged robots are not very common, especially since they have no biological

counterparts. However, researchers at Virginia Tech‟s RoMeLa lab have developed a three

legged robot STriDER that uses a “revolutionary” passive dynamic walking technique. STriDER

is short for Self-excited Tripedal Dynamic Experimental Robot. STriDER sways until it can lift

one leg, and using the other two as an A-frame, swing it in between the other two “stance” legs

moving forward at a sixty degree angle. This patent pending “tripedal gait” is extremely energy

efficient and requires minimal control. It also allows STriDER to easily change directions by

changing the sequence of its steps.

Page 12: Final Year Report

12

2.4.3.4 TWO LEGS

Two legged robots have probably seen the most development dollars since humanoid

robots have been envisioned since the very beginning of the field. Much of the development in

passive dynamic walking has been done in this area. The design of a bipedal passive dynamic

walker begins with the concept of a wheel with spokes. If the wheel is divided into sections, and

all but two removed, we have what appears to be a set of legs. When the mass is properly

distributed, the legs each act as inverted pendulums and the robots “rolls” through its steps.

Further complexity can be added to the model by using knee joints to shorten the legs

(allowing one to swing past the other without touching the ground) and ankle joints that can

provide a “spring” to the step to add lost energy back into the system.

There are several robots that have used these concepts to achieve firsts in the field of

robotics. “RunBot,” developed in Germany and Scotland, broke the speed record per size for a

robot in April 2006 by walking at 3.5 leg-lengths per second. The Cornell Ranger, while not

truly passive, is passive inspired and one of many robots that has more than two legs but is still

classified as bipedal. When viewed from the side, Ranger appears to have only two legs, but it

actually has four legs. These four legs act in pairs of two, qualifying it as bipedal but providing

better lateral stability. On April 3, 2008 Ranger walked 9.07 kilometers without stopping, an

unofficial record at that time (it has since been surpassed, according to the Cornell team, by

Boston Dynamic‟s Big Dog).

One of the most successful companies at building bipedal robots over the years has been

Honda. Their most recent model, ASIMO, is one of the few bipedal robots that appears

humanoid, can climb stairs, and carries its own power supply. ASIMO can also change its gait in

Page 13: Final Year Report

13

real time using Honda‟s i-WALK technology. This allows ASIMO to continuously change

speeds and direction. The robot can walk up stairs and run up to four miles per hour.

2.4.3.5 ONE LEG

1980 and 1993 there was a lot of research in making one legged robots at the

Massachusetts Institute of Technology (MIT). The MIT lab turned out a series of “MIT hoppers”

that could balance themselves and traverse a path. The biggest challenge with the hoppers was

that they could not stand still; they needed to continue hopping in order to maintain their balance.

Researchers were able to build a 3-D One-Leg Hopper that “hopped in place, traveled at a

specific rate, followed simple paths, and maintained balance when disturbed.”They also

constructed a hopper named Uniroo that used an actuated tail to maintain its balance.

In the building or construction of a robot, it is important for the designers to understand

basic laws of kinematics, and also know how to minimize modeling errors.

Building a six legged robot or cybernetic arachnids has a lot of relevance or benefits to

control engineering or life as a whole. To mention a few, some of them are Impedance control,

negative and positive feedback, Inverse Kinematics, Forward Kinematics, Impedance control

which studies the torque versus speed characteristics of the actuator, behavior-based learning

using positive and negative feedback techniques that allows the robot to maneuver around by

gaining experience, and so on.

2.5 FORWARD KINEMATICS

On the other hand, forward kinematics is directly the opposite which states that “Given

the angles of the robot‟s joints, what is the position of the hand”.

Page 14: Final Year Report

14

One of the differences between forward and inverse kinematics is that forward kinematics

just involves finding the angles and coordinates of one part of the robot as against being given

other parts, while is the direct opposite. They both serve the same use.

2.6 BEHAVIOUR BASED LEARNING

An architecture is desired that will allow the robot to autonomously adapt its leg and gait

control to variable terrains. The robot learns based on positive and negative feedback, thus

eliminating the need for the programmer to solve all the potential walking problems ahead of

time. The end goal was to control overall robot functionality by selecting the appropriate

behaviours from a “library of behaviours” defining the connections to the sensors and actuators,

defining the positive and negative feedback functions, and then letting the behaviours learn from

experience when to become active.

As with all behavior based robots the algorithm is mostly distributed. Each behavior tries

to find out, based on feedback when the appropriate times are for it to be active. That is, in what

situations is a particular behaviour‟s operation relevant? Also, what are the conditions in which

its operation becomes reliable? That is, when is the behaviour‟s operation consistently associated

with positive feedback? Based on feedback, each behavior is able to determine its own relevance

and reliability in the context of a given situation. Using this algorithm the robot can successfully

learn how to walk using positive and negative feedback.

2.8 STUDY OF AN ADAPTIVE FEEDBACK LINERAIZATION STRATEGY

The idea is to propose an adaptive feedback linearization control strategy for the large-

angle rotational maneuver and vibration suppression of a flexible spacecraft. The model

estimator provides the approximate model through the measure of system input variable, output

Page 15: Final Year Report

15

variable (pitch angle) and its time derivative. The integral actions included not only can

compensate of the entire dynamics of the system which is assumed to be unknown, but also

ensure that the steady state error in the regulation of pitch angle is equal to zero.

In addition, the control law is easy to implement. Simulation results are presented to

show that, compared with differential geometric feedback linearization control and variable

structure adaptive control, the designed adaptive feedback linearization control is superior in

resisting external disturbances and adapting the uncertainties of system model.

2.9 USING A STABLE ROBOST ADAPTIVE CONTROL SYSTEM FOR

SOLVING UNKNOWN NON-LINEAR EQUATION

In order to develop a stable robust adaptive control approach for a class of unknown

nonlinear systems in the strict-feedback form with disturbances. By combining neural network

technique with back-stepping method and introducing a special type of Lyapunov functions, the

controller singularity problem is avoided perfectly. As the estimates of unknown neural network

approximation error bound and external disturbance bound are adjusted adaptively, the

robustness of the closed-loop system is improved and the application scope of nonlinear systems

is extended. The overall neural network control systems can guarantee that all the signals of the

closed-loop system are uniformly ultimately bounded and the tracking error converges to a small

neighborhood of zero by suitably choosing the design parameters. The feasibility of the control

approach is demonstrated through simulation results.

Page 16: Final Year Report

16

2.10 MEASURING THE CUTTING FORCE OF A SERVOMOTOR IN THE

FREQUENCY AND TIME DOMAINS

This method introduce an indirect method of measuring cutting force, in which the

current signal of the servo motor is measured instead of cutting force. The relationship between

the cutting force and the current signal of the servo motor is analyzed in detail. After the analysis

in the frequency and the time domain, the current Eigen value of the servo motor is found with

the various load torque and the mathematical models are created. Based on the current

restriction, an adaptive cutting force control for numerical control machine is also proposed.

Practical experiments have proved that this indirect measurement is reasonable and effective.

2.11 IMPEDANCE CONTROL

By impedance control we mean the closed loop impedance from the actuator

characteristics. The objective is to study how the non-linear characteristics of the actuator affect

the closed loop impedance of the system, whereby the torque/speed of the actuator are taken into

consideration.

The objective of impedance control is to design and implement feedback control so that

specific mechanical impedances are achieved at the manipulator end effector. The chief

advantage in accomplishing manipulation tasks is that interaction with external objects (task

parts, other manipulators, etc.) is managed by “low level” servo control. This greatly reduces the

detailed knowledge required at higher levels, and simplifies the planning and decision required to

perform basic motion functions.

Page 17: Final Year Report

17

Another objective of this method is to study the torque versus speed characteristics of the

actuator/effectors of the robot.

Page 18: Final Year Report

18

CHAPTER THREE

DESIGN THEORY AND METHODOLOGY

In order to design and construct the six-legged robot, various things are being considered,

some of which are listed below.

3.1 BUILDING THE ROBOT

The building of the robot is divided into two categories which is the mechanical and the

electronic parts. The mechanical aspect deals with the torque generated on each arm, the speed of

the motor, the weight of the material used and the inertia generated on each arm.

The electronic part consists of the circuit used and connected in such a way as to control

the actuators and also programming the actuators. In order to construct the six legged robot,

strategic planning must be taken. The major components that used in building the robot are listed

below:

PIC 18F45505

AX 12 Servomotor / actuator

Power supply circuit

74HC125 (Buffer Chip) / Simple Switcher

ICSP Connector

5 As mentioned above actuator also means effector or manipulator.

Page 19: Final Year Report

19

3.2 FABRICATION OF THE ROBOT FRAME

The robot frame was made of aluminum; it was ensured that it was light enough for the

servomotors to move each joint. Formerly, a proposition was made to use wood to build its frame

but it was later knocked off due to wood‟s fragility and its inability to stand the test of time; the

initially proposed structure (made of wood) is shown in Fig 3.1 and the final design after

construction is shown in Fig 3.2.

In the fabrication of the robot‟s frame, a sheet of aluminium was bought and then folded

into a square shaped cylindrical prism that was be about 35mm × 28mm × 24mm. In the cause of

building the robot so many things were brought into place, like the material used for the frame of

the robot which was aluminium. The aluminium used for the frame had to be cut to size with

dimensions between 35mm × 24mm, after which the sides were filed, as for the joints of the

robot, they were cut out and it was made sure that they were light enough for the actuators to

move the arms with the right amount of torque.

The torque provided by the AX-12 servomotor is about 12 kgf-cm (12N-cm)-which

implies that the motor exerts approximately a force of about 12 Newton to 1cm length of the arm

it will move. This implies that for every 1cm on each arm the motor can accommodate as much

as 12kgf-cm of weight- which is a massive amount of torque for a servomotor.

Page 20: Final Year Report

20

Fig 3.1 Diagram showing

(a) Initially Proposed Robot’s structure;

(b)Leg and joint movement of Robot to be built.

Page 21: Final Year Report

21

Fig 3.2 New Design of Robot

Page 22: Final Year Report

22

3.3 CIRCUIT CONFIGURATION

In the design of the hexapod robot the certain things were taken into account such that it

would be used in the analysis of the robot which is the reason of using the components being

used. The full circuit diagram at the appendix section of this dissertation, the circuit

configuration analysis is done below:

3.3.1 POWER SUPPLY CIRCUIT

The power supplied to the robot would be from the mains and would have to be rectified

in order for the PIC 18F4550. From the circuit below, the power supply section of the circuit

consists of a transformer that converts the Alternating current to a Direct current in order to feed

the PIC. A capacitor is placed after the bridge rectifier to smoothen the rectified AC signal.

LM7805 voltage regulator is used to power both the PIC 18F4550 and the AX-12 servos.

The PICs can withstand a DC voltage of about 5Volts and the AX-12s have a rated input of

about between 7-12Volts, but an optimum voltage of about 9Volts is good. In order to power

both sections of the circuit, a variable power supply is going to be used.

3.3.2 CONTROL SECTION

This section is one that involves controlling the servomotors with the use of a PIC

(18F4550) and a buffer chip (74HC125) which is used as a simple switcher in the control circuit.

A total of 12 servomotors would be controlled by this PIC, with just 2 servos per joint on each

leg, and since the robot has six legs with two on each limb; there will be twelve servomotors on

this robot.

Page 23: Final Year Report

23

Each leg has 2DOFs, and since the robot has six legs, there will be a total of 12 degrees

of freedom (DOF). Outlined below is a brief overview of the control section and some of the

components contained in it.

In addition to this, the PIC is connected to a buffer chip 74HC125 which is used as a

simple switcher.

3.3.3 BUFFER CHIP (74HC125)-SIMPLE SWITCHER

This chip is essentially useful because it is used to control which servo would be in use

and at which time, depending on the gait style to be used- in this case the tripod gait style is used.

The buffer chip is used as a simple switcher which is connected to the data pin of one of

the servomotor, whose logical state can be transmitted via daisy chain to other Ax-12 data pins.

The 74HC125 buffer chip has about 14 pins, out of which have 4OE (output enable);

these OE pins are connected to the data pins of the respective servos to be controlled, at the

beginning of which all four pins are at a high impedance state, which makes each of the Ax-12

servomotors inactive by not sending instructions to the servos. This means that anytime a

servomotor is to move a joint/ arm of the robot, the pin to which this servo is connected to

usually is left at a low impedance state while the others are at high impedance states.

3.3.4 THE AX 12 SERVOMOTOR

The AX-12 is a smart, modular and versatile 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 a high torque (about 12kgf-cm / 229ounces-inches) and

is made with a high quality material to provide the necessary strength and structural resilience to

Page 24: Final Year Report

24

withstand large external forces. It also has the 6ability to detect and act up on internal conditions

such as changes in internal temperature or supply voltage. The robot being built has twelve AX-

12 actuators that will be programmed to suit the tripod gait style.

The Ax-12 can rotate at a maximum speed of about 114rpm. Standard hobby servos use a

variable duty cycle pulse train to control their shaft‟s angular velocity and position. The duty

cycle of the servo control pulse determines the servo shaft‟s rotational position while the angular

velocity of the servo shaft‟s rotational position while the angular velocity of the servo shaft is

dictated by the speed of the duty cycle modulation. Thus, the slower the duty cycle change, the

slower the angular velocity. The Dynamixel robot (Ax-12) actuators don‟t depend on pulse

widths for their position information. The Ax-12 servomotor is connected to the simple switcher

which controls the actuators one at a time by maintaining all individual ports but one at a high

impedance, while the other at a lower impedance. The Ax-12 receives data that indicates whether

it should move or not, this data is called the instruction packet while the data sent back to the

simple switcher circuit by the Ax-12 is called the status packet. The Ax-12 servos are arranged

on a link on the board connected to the simple switcher circuit that in addition to carrying

precision position and speed information, the digital packets can also transport robot information,

the digital packets can also transport robot actuator feedback data. We already know that with the

issuance of a command from a host controller, an Ax-12+ can report its angular position and/ or

its angular velocity. Other robot actuator parameters such as internal temperature, input voltage,

and load torque can also be queried by the host controller.

6 Gait style as mentioned above means the rate of moving or the technique used to move a system, as in the

case above it implies the robot‟s moving technique.

Page 25: Final Year Report

25

Some of the specifications of the AX-12 are: 7

Resolution: 0.35o

Operating Angle: 300o,

Endless Turn

Voltage: 7V-10V (Recommended voltage is 9.6Volts)

3.3.4.1 THE AX-12 CHARACTERISTICS

Some of this servomotor‟s characteristics are listed below:

1,000,000bps (1MBps) communication speed.

Full feedback on position, Speed, Load, Voltage, Temperature

Can be set to full rotation mode / servo range can be set by user

Full 300 degree movement in 1024 increments

Built in LED that can be used as a status indicator.

Automatic shutdown based on voltage, load or temperature.

Single cable network connections.

Hundreds of AX-12 can be connected with only 2 data ports.

7 Since the robot to be built has six legs, the tripod gait style is one that involves three of the robot‟s limbs

moving at the same time while the others are used to balance it.

Page 26: Final Year Report

26

3.3.4.2 CONTROLLING THE AX-12

The robot to be built as above would be controlled by twelve servomotors, which would

all be connected to a single PIC 18F4550. C-programming language would be used to program

the servomotor in such a way as to move the robot depending on its gait style movement. One

other important feature of this actuator is its communication speed, hence making it compatible

with a PIC 18F4550 which would be used to program it.

3.3.4.3 WHY CHOOSE THE AX-12 FOR ROBOT LOCOMOTION

In choosing a servomotor, some things have to be considered like the torque of the motor

to be used, the estimated weight of each arm, the speed of the actuator to be used depending on

the gait style to be used. These and more are some of the reasons why the AX-12 was picked.

The AX-12 servomotor provides feedback that enables you to monitor the current position of the

device. You can monitor current, voltage and temperature as well, (Michael Simpson, 2008).

The AX-12 has protective features such as been able to shut down whenever there is a

voltage overload on it, thereby protecting the device.

Page 27: Final Year Report

27

Fig 3.3. The Ax-12 Servomotor

Page 28: Final Year Report

28

(a)

(b)

Page 29: Final Year Report

29

Fig 3.4 (a) Assembling the Ax-12 Servomotor

(b)Ax-12 Frames (c) Combining Two Servos together

Page 30: Final Year Report

30

3.3.4.4 WIRING UP THE AX-12 SERVO

The connector pin assignments of the Ax-12 as in the diagram below; there are three pins

on each side of the Ax-12 servomotor, one is connected to the GND, VDD and the last is

connected to the Data port of the circuit. The Ax-12 servos can be connected pin to pin, thus the

Ax-12 can only one connector is attached. Also many Ax-12 servos can be connected with a

single bus in this manner. The diagrams are shown in Fig 3.4.

3.3.4.5 PROGRAMMING THE SERVO

In order to program the Ax-12 servomotor and interface it with the PIC, a driver for the

Ax-12 was written in C programming language which would make programming the circuit for

the robot easier, other than writing the functions for the control table for the Ax-12 again-thereby

making the code shorter. The code for the Ax-12 servo driver can be found in the appendix of

this report.

3.4 REAL TIME ROBOTIC NAVIGATION THROUGH THE RAIN FOREST

REGION

Rainforests usually occur in regions where there is a high annual rainfall of generally

more than 1,800mm, and a hot and steamy climate. The trees found in these regions are

evergreen. The rain forest is generally composed of broad-leaved trees and often, but not always

found in wet tropical uplands and lowlands around the equator. The rain forests are vegetation

types dominated by broad-leaved trees that form a dense upper canopy, with the trees either been

ever green or, in seasonally dry parts of the tropics.

This study is actually to generate control algorithms and to conduct a study on the

successful control of a robot in the rainforest region. Over two-thirds of central Africa‟s forests

still qualify as large tracts of low-access forest i.e. large areas are unbroken by public roads.

Page 31: Final Year Report

31

Only South America‟s Amazon basin has larger areas of undisturbed tropical forest. With this in

mind, it is however known that locomotion in the rainforest could prove difficult and this is one

reason why this study has been selected- to find ways of moving an autonomous robot in this

area successfully,

The second reason why this study has been selected is because Obafemi Awolowo

University-situated in Osun State is located in the rain forest.

Thirdly the reason the rainforest has been picked is because forests have considerable

economic importance across the region: wood, fuel accounts for the majority of national energy

consumption.

In other for an autonomous robot to navigate successfully in these regions, a careful study

has been done on the rain forest, which lets us know that the rain forest consists of different

terrains- rocky, stony, rough and sandy - which is by far the most difficult of all terrains to

navigate through because of its ability to change its texture and level whether high or not.

In this paper, we consider the problem of navigation in this region, since it consists of

even and uneven terrains (rainforest). Since we know that low DOF robots have difficulty in

navigating uneven terrains, a suitable algorithm for the gait style is being worked out to enable

easy navigation in this area.

Page 32: Final Year Report

32

3.5 MODELLING THE ROBOT’S MOVEMENT

The model to be developed for the robot‟s movement would be developed such that the

speed or torque characteristics of the actuators / effectors would be studied and modeled in such

a way that it would be able to move easily in the roughest terrains. To this effect, control

algorithms would be developed for the worst terrains in the country.

3.5.1 FINDING A SUITABLE GAIT STYLE

Since the robot is a biologically inspired one- a robot which gets its adaptation features

from an animal. In order to find a suitable gait style that would enable the robot move freely or

adapt easily to the rainforest region, a study was carried out in order to find an animal that easily

could easily adapt to the rainforest. This is why the robot‟s gait style is particularly very

important; therefore finding the suitable gait style would provide aid in creating the navigation

algorithms necessary for the robot‟s movement-all this would be explained in detail in the next

chapter.

Some of the animals which easily adapted to the rainforest were the Jaguar, the tortoise,

the apes, piranhas, manatee etc. From the aforementioned list, the tortoise stood out due to its

slow but steady movement combined with its weight which would suit the robot‟s movement

easily. Two gait styles were considered critically, one was the tripod gait style while the other

was the gait used by the tortoise whereby one on each side moves one at a time. Therefore, the

tripod gait (it is a gait style that involves using two of the robot‟s limbs move with two on one

side and one on its other side while the other three limbs serve as balance for it)style was

considered.

Page 33: Final Year Report

33

(a)

(b)

Fig 3.5 (a) Data Pin configuration of the Ax-12 Servo.

(b)Wiring up more than one Ax-12 Servomotor.

Page 34: Final Year Report

34

CHAPTER FOUR

TESTS AND RESULTS

During and after the building of the frame and circuit of the robot, there were tests, and

research studies that were carried out on it to make sure that all was in place for the robot‟s

locomotion. This later led to what the relevance of the project was, some of which were security

scanning, scouting remote areas etc. which can done through a series of tests which are

Impedance control, static stability analysis, and Inverse kinematics which would treated

extensively in this chapter.

4.1 RELEVANCE OF PROJECT

This project forms a platform for future projects and studies like inverse kinematics on

autonomous robots, static stability analysis on a robot based on a particular terrain and so on

would be taken into account. The design must be in such a way that the robot in question would

be able to withstand the toughest terrain in Nigeria like that in the hilly parts of Northern Nigeria

or the marshy/oil spilled parts in the Niger Delta.

In the building or construction of a robot, it is important for the designers to understand

basic laws of kinematics, and also know how to minimize modeling errors.

Building a six legged robot or cybernetic arachnid has a lot of relevance or benefits to

control engineering or life as a whole. To mention a few, some of them are Impedance control,

negative and positive feedback, Inverse Kinematics, Forward Kinematics, Impedance control

which studies the torque versus speed characteristics of the actuator, behaviour based learning

Page 35: Final Year Report

35

using positive and negative feedback techniques that allows the robot to maneuver around by

gaining experience, and so on.

4.2 ADAPTATION OF ROBOTIC ARACHNID IN THE FOREST REGION8

The main cause of study on this project is to study is to conduct a study on the navigation

of a robot if possible an autonomous one in the rainforest region. The rainforest has been picked

for this study because it is a region that consists of different rough terrains and would form a

good platform for the successful modeling of the robot. The robot being built would get its

adaptation features from an animal that easily adapts to its surroundings in the rainforest region

like the amazon-Cybernetics; the model that would be created for the robot would be such that it

would make use of the animal‟s gait style and movement. The animal‟s gait style and way of

adapting to its surrounding would provide aid in creating navigation algorithms necessary for the

robot‟s movement. Some of the animal‟s that were considered were

The study involves finding methods to generate control algorithms and successful control

of a robot in the rainforest region which evidently consists of different soil types that the robot

will have to move on (Anders-Wallen). Another reason why the rainforest has been chosen as a

case study is because over two-thirds of central Africa‟s forests still qualify as large tracts of

low-access forests and the South-American amazon basin has larger areas of undisturbed tropical

rainforests.

In other for an autonomous robot to navigate successfully in this region, a careful in this

region, a careful study has to be done on the rain forest-which is already in progress. With this in

8 Cybernetics involves a field of science whereby artificial systems being built up or made with processes of

communication and control (especially) are biologically inspired.

Page 36: Final Year Report

36

mind, it is however known that locomotion in the rainforest could prove difficult, which is why

these research studies have been chosen.

4.3 IMPEDANCE CONTROL CHARACTERISTICS ON A ROBOT ACTUATOR

IN THE RAINFOREST

To drink from a cup, a person must successfully reach for the cup, pick it up, and bring it

to his/her mouth without spilling the contents. To successfully complete this activity, the person

must be able to compensate for the forces exerted on the arm by the movement of the cup and its

contents. It is widely accepted that the human CNS (Central Nervous System) learns about the

dynamics of the physical world and in particular, learns to compensate for the externally

imposed forces on the arm during movements.

The actuator used in the construction and design of the hexapod robot is the Ax-12+

which is a super servo that has a torque of about 12kgf.cm at 7Volts and 16.5 kgf.cm at

10Volts.Since the actuator to be used (Dynamixel Ax-12+ servo) would have contact with the

environment, hence the need for impedance control analysis on the actuators. The output of the

actuator is more of force than motion-hence the torque needed for motion, in this paper we

would consider or conducting impedance control on the system without the use of force sensors

as is normally done. The rainforest is the case of study. Impedance control is used for actuators

that have a contact with the environment or a contact, it is called admittance control if

The aim of this write up is to use impedance control to determine the best kind of terrain

the robot would most likely adapt to and at different times-like sandy, rocky, swampy etc., in the

long run, it will be easy to determine the amount of torque each leg of the robot would need to

exert on the terrain to move freely. To do this the force exerted by each leg is gotten by

Page 37: Final Year Report

37

measuring the combined mass of both actuators on each leg which is then used to get the force

exerted on each leg. It is important for the actuator or manipulator/effector as the case may be

to have accurate positioning on the surface/ environment on which it is to move on, in order for it

to easily move different surfaces/terrains (Sandy, Rocky, Swampy etc.) in the rainforest. We

would look and study the impact of impedance control on different terrains, but first a look at the

structure/ characteristics of the actuator to be used (Ax-12+). The Ax-12+ as described in the

previous chapter is a super-servo, that has its own microcontroller (AVR). It is small but has a

reasonable amount of torque which would enable the robot move on different terrains. This paper

would exploit the use of Impedance control for the purpose of stability either in a static or

dynamic position.

4.3.1 GENERATING THE CONTROL ALGORITHM

Since the servo motor is an electromechanical device i.e. displays/gives a mechanical

output in response to an electrical input. The general formula in terms of torque, speed and

voltage would have to be found. This goes in line with our goal of generating control algorithms

necessary for an inference on the adaptation of a root in the rainforest.

According to the general equation for an electromechanical servomotor from classical

control theory is written below:

Jm (dω/dt) + (Dm + Kb) ωm= (Kt / Ra) Ea(t)

Where Jm = the typical loading on the motor which is also the equivalent inertia (in terms of

mass) at the armature / motor.

Page 38: Final Year Report

38

Dm = the load inertia reflected to the armature is the viscous Damping at the armature and

includes both the armature viscous damping in the motor.

Kb = the motor constant.

Ea(t)= it is the input voltage into the actuator (about 9.6Volts-)since the Ax-12 is an

electromechanical device.

dω/dt =angular acceleration of the motor.

ω(t)=dθ(t)/dt = angular speed.

Ra = Resistance of the actuator

Note: All parameters in the equation are in the time domain.

In frequency domain Vb(s)= Kbs θ(s),

Where Vb is the back emf of the motor in the frequency domain after taking the Laplace

transform of the function Vb(t)- in the time domain.

By taking the Laplace transform of the equation, we have:

RaIa(s) + La s Ia (s) + Vb(s)=Ea(s) ---------(3)

Taking note that Torque developed by the motor is given by

Tm(s) = KtIa(s)

Tm=Torque developed by the motor.

Ia=Current in the servomotor.

Page 39: Final Year Report

39

Kt=Proportionality constant.

Using this approach the transfer function (θ(s) / Ea(s)) of the motor is found whereby

Put Ia(s) = Tm(s)/Kt into (3)

And Vb(s) = Kbs θ(s)

Therefore transfer function is:

θ(s) / Ea(s)= 1 / [Ra(s)Tm(s)/Kt + Kb s θ(s)]

We usually ask the use of the transfer function, it relates the input to the output of a system, in

the case of the Ax-12 servomotor, it relates the electrical input to the mechanical output.

From the Ax-12 data sheet, it can be seen that the angular speed of rotation at 7Volts i.e.

At Ea(s)=7Volts, θ(s)=0.2690/sec

At 10Volts, θ(s) = 0.1960/sec

And the optimum/ recommended voltage is 9.6volts

All the above values are gotten from the model created by deriving the transfer function.

4.4 INFERENCE GATHERED ON THIS PROJECT

As at this time there have been a few issues in making this biologically inspired robot to move,

with the use of the Ax-12 servomotors-i.e. programming it.

Page 40: Final Year Report

40

(a)

(b)

Fig 4.1 (a) Effect of the servo's Inertia (mass) on its motion

(b)Diagram shows how the Ax-12 servo acts like an electromechanical device

Page 41: Final Year Report

41

CHAPTER FIVE

CONCLUSION AND RECOMMENDATION

The basis of this project is to develop control algorithms that would be used to test for its

adaptation features in the rainforest, therefore in the cause of building this robot, care has been

taken into account the necessary features like the torque-speed characteristics of the actuator and

other studies (Inverse Kinematics, Impedance control and other Linearization strategies) that are

still ongoing on how to make sure the robot easily adapts to the roughest of terrains in the

rainforest region.

5.1 CHALLENGES ENCOUNTERED

There have been some challenges in the construction and design of the hexapod robot,

some of which are, programming the Ax-12 finding the right machines in the fabrication of the

frame of the robot, having to cut hollow parts into the aluminium being used for the structure of

the robot being built. For example, the initial structure to be used for the frame of the robot was

very heavy, so there was a trade off between the beauty of the frame and the weight of the frame

to be used.

Due to the insufficient time, the Ax-12 could not be programmed, only the the driver was

written (collection of code for servo‟s control table), which makes the programming easy. The

circuit was built but the resulting plugs for the Ax-12 servo was not fixed, which is where work

would begin next session on how to make it work.

Page 42: Final Year Report

42

5.2 RECOMMENDATION

Due to the fact that the system is ongoing, there are certain targets that would be met in

the near future to ensure that work progresses on thus project.

Therefore, to ensure that this study is a success, the algorithm to be used will be tested on

the robot being built. In order to test the algorithm, a target location would be provided, and all

obstacles en-route to the target must be avoided in order to reach the target successfully.

Two things would be considered in focusing attention into creating algorithms for this

region; they are: Communication options and Behavioral Patterns of the autonomous robot.

Communication Options: With the ability of sending out a robot out into the rainforest it

should be able to send back communication reports on regions that have actually being passed

through. By using the algorithms initially developed and monitoring it, they can be altered to suit

the terrain better, in case future researches.

5.2.1 USING INVERSE KINEMATICS FOR ROBOT’S ADAPTIVE FEATURES

As explained above, in further studies inverse kinematics can be used to find the end

effector positions, by creating full body trajectories and then using inverse kinematics to solve

for the robot‟s positions at different points in trajectory path. Inverse Kinematics is simply stated

as, “Given the desired position of the robot‟s limb, what must be the angles at all of the robot‟s

joints?” . Human beings and generally animals solve inverse kinematics problems constantly

without conscious effort. For example, when eating cereal in the morning or a door is to be

opened, human beings reach out for their spoons or the door knob without considering the

relative configuration of their shoulder and elbow required to reach the spoon. The human brain

practically does all the necessary calculations in an attempt to solve the problem (Inverse

Page 43: Final Year Report

43

Kinematics) of gripping the spoon or the door knob by positioning his limbs and torso such that

the hand locates the spoon or door in order to necessary action.

The robot‟s motion which is determined by the robot‟s gait style is relatively studied by

solving the problem of Inverse Kinematics and therefore knowing the angles of all its body parts

just by moving its arm. Therefore Inverse kinematics in robotics is that branch of robotics which

deals with the study and application of the process of determining the parameters of a flexible

object in order to achieve a desired pose. So therefore, by moving the arm of the robot with the

use of actuators / effectors non-linear equations can be developed which are solved using

MATLAB or any mathematically oriented software.

With this at any point in time, the position of the robot can be determined. These

equations would differ for different terrains in Nigeria, beginning with the hilly terrain in Ile-Ife

Nigeria. Therefore, meaning that these equations would deal with the speed with which the joints

move to how rough the terrain is. When non-linear equations were developed in past researches,

some were solved using MATLAB and others were solved using Transformation Derivatives,

but not much emphasis would be placed on the solution to these equations but how they each

differ from each other depending on the terrain on which it is designed to move.

USES

Inverse Kinematics finds its use in so many fields from 3D animation where software

designers use inverse kinematics to determine the position of the animated characters; making

sure these characters connect physically to the world, such as the feet landing firmly on top of

the terrain.

Page 44: Final Year Report

44

APPENDIX

Page 45: Final Year Report

45

Diagram showing the Circuit diagrams for the Robot

Page 46: Final Year Report

46

Control Section of Circuit

Page 47: Final Year Report

47

Actuators in Use

Page 48: Final Year Report

48

Plan View of Robot

Page 49: Final Year Report

49

THE AX-12 DRIVER CODE

//This represents the driver for controlling the actuator.

//written code for Ax-12.c

#include <18F2620.h>

#include <stdio.h>

#include <ax12driver.c>

#use rs232 (baud=9600,xmit=PIN_C6,rcv=PIN_C7)

#use delay (clock=2000000)

void main()

{

#define ENABLE_BIT_DEFINITIONS

// the input / output header file

#include <io.h>

#include <inttypes.h>

#include <avr/interrupt.h>

#include <avr/signal.h>

//Control table address

#define P_MODEL_NUMBER_L 0x00

#define P_MODEL_NUMBER_H 0x01

#define P_VERSION 0x02

#define P_ID 0x03

#define P_BAUD_RATE 0x04

#define P_RETURN_DELAY_TIME 0x05

#define P_CW_ANGLE_LIMIT_L 0x06

Page 50: Final Year Report

50

#define P_CW_ANGLE_LIMIT_H 0x07

#define P_CCW_ANGLE_LIMIT_L 0x08

#define P_CCW_ANGLE_LIMIT_H 0x09

#define P_SYSTEM_DATA2 0x0A

#define P_LIMIT_TEMPERATURE 0x0B

#define P_DOWN_LIMIT_VOLTAGE 0x0C

#define P_UP_LIMIT_VOLTAGE 0x0D

#define P_MAX_TORQUE_L 0x0E

#define P_MAX_TORQUE_H 0x0F

#define P_RETURN_LEVEL 0x10

#define P_ALARM_LED 0x11

#define P_ALARM_SHUTDOWN 0x12

#define P_OPERATING_MODE 0x13

#define P_DOWN_CALIBRATION_L 0x14

#define P_DOWN_CALIBRATION_H 0x15

#define P_UP_CALIBRATION_L 0x16

#define P_UP_CALIBRATION_H 0x17

#define P_TORQUE_ENABLE 0x18

#define P_LED 0x19

#define P_CW_COMPLIANCE_MARGIN 0x1A

#define P_CCW_COMPLIANCE_MARGIN 0x1B

#define P_GOAL_POSITION_L 0x1C

#define P_GOAL_POSITION_H 0x1D

Page 51: Final Year Report

51

#define P_GOAL_SPEED_L 0x1E

#define P_GOAL_SPEED_H 0x1F

#define P_TORQUE_LIMIT_L 0x20

#define P_TORQUE_LIMIT_H 0x21

#define P_PRESENT_POSITION_L 0x22

#define P_PRESENT_POSITION_H 0x23

#define P_PRESENT_SPEED_L 0x24

#define P_PRESENT_SPEED_H 0x25

#define P_PRESENT_LOAD_L 0x26

#define P_PRESENT_LOAD_H 0x27

#define P_PRESENT_LOAD_H 0x28

#define P_PRESENT_VOLTAGE 0x29

#define P_PRESENT_TEMPERATURE 0x2B

#define P_REGISTERED_INSTRUCTION 0x2C

#define P_PAUSE_TIME 0x2C

#define P_MOVING 0x2E

#define P_LOCK 0x2F

#define P_PUNCH_L 0x30

#define P_PUNCH_H 0x31

//---Instruction packet---

#define INST_PING 0x01

#define INST_READ 0x02

#define INST_WRITE 0x03

Page 52: Final Year Report

52

#define INST_REG_WRITE 0x04

#define INST_ACTION 0x05

#define INST_RESET 0x06

#define INST_DIGITAL_RESET 0x07

#define INST_SYSTEM_READ 0X08

#define INST_SYSTEM_WRITE 0x09

#define INST_SYNC_WRITE 0x10

#define INST_SYNC_WRITE 0x83

#define INST_SYNC_REG_WRITE 0x84

}

Page 53: Final Year Report

53

REFERENCES

J.Barreto et al, ‘Kinematic and Dynamic Modelling of a Six legged Robot’, Instituto de

Sistemas c Robotica, E.S.T.G – Instituto Polotecnico de Leiria, Portugal.

Michael Simpson (2008), Build the Ultimate Robot.

J.P.Flores Fernandes, J.C. Pimenta Claro, Fernando Ribiero, ‘Design of a Hexapod Robotic

System’, „Mech. Engineering Department‟ ,University of Minho, Portugal.

P.McDowell, S. Iyengar, M. Gendron, B. Bourgeois, and J. Sample (2000). ‘Control / Learning

Architecture for use in Robotics Operating in Unstructured Environments’ ,University of

Southern Mississippi, pp1-10.

Marc Raibert, Kevin Blankespoor, Gabriel Nelson, Rob Playter, and the BigDog Team,

BigDog, ‘The Rough-Terrain Quaduped Robot’, Boston Dynamics,

Michael Simpson (March 2007), ‘Understanding the AX-12’.

Lonnie T. Parker and Ayanna M. Howard, ‘Real-Time Robotic Surveying for Unexplored

Arctic Terrain’ , School Electrical and Computer Engineering, Georgia Institute of Technology,

Atlanta

I-Ming Chen and Gullin Yang (1998) ’Inverse Kinematics for Modular Reconfigurable

Robots’,School of Mechanical and Production Engineering, Nanyang Technological University,

Singapore.

. Encyclopædia Britannica 2009 Student and Home Edition (2009), ‘Jaguar (Panthera onca)’.

Chicago: Encyclopædia Britannica.

David Wettergreen,( 1995), ’Robotic Walking in Natural Terrain’, In Gait planning and

behavior-based control for statically-stable walking robots, The Robotics Institute-Carnegie

Mellon University,

Matt Zucker et al, ‘An optimization Approach to Rough Terrain Locomotion’: The Robotics

Institute- Carnegie Mellon University.

Page 54: Final Year Report

54

David W. Franklin et al, (2004), ‘Impedance Control Balances Stability With Metabolic

Muscle Activation’ ,ATR Computational Neuroscience Laboratories and ATR Human and

Information Science Laboratory, Kyoto, Japan.

Yung Zhu and Eric J.Barth (2005), ‘Impedance Control of a Pneumatic Actuator for Contact

Tasks’, Department of Mechanical Engineering Vanderbilt University, Nashville, Tennessee,

USA.

www.destination360.com

www.buzzle.com/articles

www.ehow.com/pets-and-animals

www.allaboutwildlife.com.com/links

www.servomagazine.com

www.kronosrobotics.com/projects/megabots.html

www.wikipedia.com/robotkinematics.php

www.webx.dk.html

http://www-personal.umich.edu/~artkuo/Passive_Walk/passive_walking.html.

http://www.youtube.com/watch?v=7XsaJwKKBYo&feature=related.

http://en.wikipedia.org/wiki/Uncanny_Valley

http://bostondynamics.com/content/sec.php?section=BigDog