You are on page 1of 28

Prepared by bala


Chapter 1: Application of Robots 1- 4

Chapter 2: Types of Robots 5-7

Chapter 3: Types of Robot Joints 8-9

Chapter 4: Basic Components of Robots 10-15

Chapter 5: Mobile Robots 16-19

Chapter 6 : Programming Languages in Robotics 20-24


Chapter 1: Application of Robots

A robot is a machine designed to execute one or more tasks automatically with speed
and precision. Industrial robots, for example, are often designed to perform repetitive tasks
that aren't facilitated by a human-like construction. A robot can be remotely controlled by a
human operator, sometimes from a great distance.

Application of Robots:

Military Services: Military robots are some of the most

high-tech and important robots used today. These state-of-
the-art machines save lives by performing extremely
dangerous tasks without endangering humans. Some
common robots used by the military are Explosive Ordinance
Disposal (EOD) robots, which are capable of examining
suspicious packages and surrounding areas to find and even
deactivate improvised explosive devices (IEDs) and mines.
They can even deliver unexploded ordinance for examination
and proper detonation. The military also uses unmanned aerial vehicles for reconnaissance
missions, to scope out enemy movements, find hidden explosives and give the Air Force a
wide-angle surveillance of their battle space.

Car Production: Robots are used in the automobile industry to assist in building cars. These
high-powered machines have mechanical
arms with tools, wheels and sensors that
make them ideal for assembly line jobs. Not
only do robots save more money in
manufacturing costs, but they also perform
tough tasks at a pace no human could
possibly do. Robots also make car
manufacturing safer because they can take
on dangerous and difficult jobs in place of humans. Automotive industry robots are capable of
performing a wide range of tasks such as installation, painting and welding, and aren’t
restricted by fatigue or health risks, therefore making them an incredibly useful and
irreplaceable part of car production.

1|Robotics – Prepared by Balamurugan


Space Exploration: One of the most amazing areas of robotics is the use of robots in space.
These state-of-the-art machines give
astronauts the chance to explore space in
the most mind-boggling ways. The most
commonly used space robots are the
Remotely Operated Vehicle (ROV) and the
Remote Manipulator System (RMS), which
are both used in a variety of space missions.
ROVs can be unmanned spacecraft that
orbit freely or land when it makes contact
with an outer space surface and explore the terrain. Both capture remarkable data and visual
footage that would never be humanly possible without the assistance of robots. RMS
mechanical arms also help astronauts perform very important and difficult tasks during space

Remote and Minimally-Invasive Surgery: Robot-assisted surgery has truly changed the
face of medicine by expanding surgeons’
capabilities in ways no human could. Surgical
robots are directed by human surgeons who use
a computer console to move instruments
attached to robot arms. The surgeon’s
movements are translated by a computer and
then performed on the patient by the robot.
Today’s surgical robots are so advanced that it’s
possible for surgeons to perform remote surgery
without physically being in the operating room or even in the same country! Robot-assisted
surgery has improved the limitations of minimally invasive surgery and has many advantages
over traditional open surgery, including greater precision, smaller incisions, less pain and
decreased blood loss. Surgical robots, such as the da Vinci Surgical System, are used for
gynaecologic, colorectal, prostate, throat cancer surgeries, as well as bariatric surgery,
angioplasty and bypass surgery.

Underwater Exploration: Underwater robots have radically changed the way we see the
world from the ocean floor. Underwater robots can dive longer and deeper than any human,
and they provide an up-close look at marine life. These amazing machines are equipped with
sensors, high-definition cameras, wheels and other technology to assist scientists when they

2|Robotics – Prepared by Balamurugan


explore docks, ocean floors, dams,

ship bellies and other surfaces. The
most common underwater robots
used today are the remote-operated
vehicles (ROVs) that are controlled by
humans sitting in the command
centre. ROVs are connected by cable
to ships and are the best tool for
gathering data and images of life
under water.

Duct Cleaning: Duct cleaning is done best by a

robot that can actually fit into these hazardous
and tight spaces. Robots provide a more
effective and efficient cleaning than manual
brushes. It’s also safer for industrial and
institutional markets to use robots because
workers are not exposed to harmful chemicals
or enzymes that come from dust mites. Duct
cleaning robots are used in hospitals and
government buildings that may have hazardous
or contaminated environments, as well as embassies and prisons for a shorter and more
secure cleaning. Using duct cleaning robots translates to quicker, safer, cheaper and more
effective duct cleanings without the need of a human.

Fight Crime: Police robots help fight crime without risking the lives of police officers. Law
enforcement officers use an array of high-tech and remote-controlled robots that are
equipped with front and back cameras,
infrared lighting and a speaker to search for
criminals and find their location without
endangering a police officer. State-of-the-
art tools like the Robotex robot is
waterproof, can climb stairs and flip itself
over and has a 360-degree camera to help
catch criminals. Other equipment, such as

3|Robotics – Prepared by Balamurugan


the Andros F6-A, are used by police agencies during hostage situations. This heavy-duty robot
is capable of shooting off a water cannon or weapon in order to detain a criminal and protect
those who are in danger.

Fix Oil Spills: As we saw in the 2010 BP oil spill, robots play a critical role in fixing oil spills.
Underwater robots are used to explore the well site and interact with the problematic
equipment. Engineers use remote-operated vehicles (ROVs) that dive to great depths and stay
submerged for much longer than any human ever could. ROVs are remote-controlled
submarines that are operated by humans sitting in the command centre. These high-tech
robots are connected by cable to ships and are used to collect video footage and information
from fibre-optic sensors that help engineers better understand the problem and intervene
when necessary. ROVs have hydraulic arms with interchangeable tools, such as saws and
cutters, which are used for intervention tasks. Even after the well is capped, robots are used
to patrol the well site and make sure oil is no longer escaping.

Investigating Hazardous Environments: Robots have become increasingly important for

investigating and researching hazardous and dangerous environments. These robots are
capable of entering an active volcano to collect data or
a burning building to search for victims. Robots such as
the Scout Throw able Robot are used by law
enforcement agencies and fire departments to help
find information about people stuck inside a building,
and even have the ability to detect grenades or
explosives in the area. These unmanned robots also

4|Robotics – Prepared by Balamurugan


save lives because they prevent people from having to enter the hazardous environment
before them knowing what to expect.

Commercialized Agriculture: Farming has been performed by man since the beginning of
time, but throughout the years robots have been introduced
to the world of commercial agriculture. Like manufacturing
jobs, robots have the ability to work faster, longer and more
efficiently than humans in agriculture. Robots remove the
human factor from this labour intensive and difficult work.
They can be taught to navigate through farmland and harvest
crops on their own. Robots can also be used for horticulture
needs, such as pruning, weeding, spraying pesticide and
monitoring the growth of plants.

In a robot, the connection of different manipulator joints is known as Robot Links, and the
integration of two or more link is called as Robot Joints. A robot link will be in the form of solid
material, and it can be classified into two key types – input link and output link. The movement
of the input link allows the output link to move at various motions. An input link will be located
nearer to the base.

5|Robotics – Prepared by Balamurugan


Chapter 2: Types of Robots

1. Humanoid Robots : NAO humanoid
robot was attracted by many peoples
in the Robotville festival 2011. Now,
this little attractive robot is upgraded
with several impressive features by
Aldebaran Robotics. When compared
with its older version, the outside part
of the new version has not got much
difference. However, there are
various exciting changes made in the Japan.

2. Medical Robots: Raven II is the name given to the surgery robot, which was
developed by the researchers of
University of Washington and the
University of California, Santa Cruz.
They designed seven Raven II robots
(three of these robots are shown in the
left picture) with the fund provided by
the National Science Foundation.

A robotic system helps to perform brain surgery: A neurosurgeon performing a

keyhole neurosurgery makes a burr
hole on the patient’s head for
accessing the brain. Several
conditions like hydrocephalus,
Tourette syndrome, tumors, and
epilepsy can be cleared by this
process. During this operation, the
neurosurgeon must be very careful
because a small slip will cause a huge damage to the brain.

Robotic eye surgery system : This Meenink, a researcher and Ph.D. student of
Netherlands’ Eindhoven
University of Technology has
invented ‘Robotic Eye Surgery
System’ for performing eye
operations. This system is
somewhat similar to the da Vinci
robotic surgery system. For your

6|Robotics – Prepared by Balamurugan


information, da Vinci robotic surgery system has a chair in which the surgeon sits
to operate a patient eyes.

3. Military Robots : iRobot is a company which is well-known for its Roomba robotic
vacuum. It has developed several
useful robots like 110 FIRSTLOOK,
and so on. In this line up, the
company has now included the
updated version of Warrior 700 robot
called as 710 Warrior. It is capable of
carrying heavy payloads.

4. Industrial Robotics : It has been a long time since we discussed about industrial
robots. Now, we are back with a brilliant
industrial robot called Baxter developed by
Boston-based firm Rethink Robotics. This
industrial robot is designed to serve its best
in manufacturing jobs without any
requirement of robotics professionals or

5. Flying robots: Robobee (Robotic Bee) is a Micro Air Vehicle inspired by the biology of
a bee. It is on the development phase for
past five years, and Harvard researchers
have managed to make them fly under
their own strength. But, they couldn’t
really take off the robot to where they
want. The researchers have been working.

6. Household Robots : Mirra 530 is a pool cleaning robot which is capable of cleaning
your pool surface and water thoroughly
with its iAdapt Nautiq Responsive
Cleaning Technology. iRobot has
announced this brand new robot on
January 4, 2013. It is the third pool
cleaning robot developed after the
introduction of Verro 300 and the Verro

7|Robotics – Prepared by Balamurugan


7. Nano robots: Everyone will usually think to be young even they get aged. This could
someday become real with the help of
Nano robots. Robert Freitas hopes that if
this technology grows up, then aged
appearance could be replaced to a
biological age every year. In a magazine
article, he has explained how this will be
made possible. Nano robots are mostly
used in medical applications to cure
critical problems of a patient. In this case, the Nano robots are sent inside a human
body and made to swim in the blood using powering systems. As like navigation
systems, the powering systems of Nano robots also use internal or external power

Sophia - Saudi Arabian citizen robot

Sophia is a social humanoid robot
developed by Hong Kong-based
company Hanson Robotics. Sophia was
activated on April 19, 2015 and made
her first public appearance at South by
Southwest Festival (SXSW) in mid-
March 2016 in Austin, Texas, United
States. She is able to display more than
62 facial expressions.

Sophia has been covered by media

around the globe and has participated in
many high-profile interviews. While
interviewers around the world have
been impressed by the sophistication of many of Sophia's responses to their
questions, the bulk of Sophia's meaningful statements are believed by experts to be
somewhat scripted.

In October 2017, the robot became a Saudi Arabian citizen, the first robot to receive
citizenship of any country. In November 2017, Sophia was named the United Nations
Development Programme's first ever Innovation Champion, and the first non-human
to be given any United Nations title.

8|Robotics – Prepared by Balamurugan


Chapter 3: Types of Robot Joints

The Robot Joints is the important element in a robot which helps the links to travel in
different kind of movements. There are five major types of joints such as:

 Rotational joint

 Linear joint

 Twisting joint

 Orthogonal joint

 Revolving joint

Rotational Joint:

Rotational joint can also be represented as R – Joint. This type

will allow the joints to move in a rotary motion along the axis,
which is vertical to the arm axes.

Linear Joint:

Linear joint can be indicated by the letter L – Joint. This type

of joints can perform both translational and sliding
movements. These motions will be attained by several ways
such as telescoping mechanism and piston. The two links
should be in parallel axes for achieving the linear movement.

Twisting Joint:

Twisting joint will be referred as V – Joint. This joint makes

twisting motion among the output and input link. During
this process, the output link axis will be vertical to the
rotational axis. The output link rotates in relation to the
input link.

9|Robotics – Prepared by Balamurugan


Orthogonal Joint:

The O – joint is a symbol that is denoted

for the orthogonal joint. This joint is
somewhat similar to the linear joint. The
only difference is that the output and
input links will be moving at the right

Revolving Joint:

Revolving joint is generally known as V – Joint. Here,

the output link axis is perpendicular to the rotational
axis, and the input link is parallel to the rotational axes.
As like twisting joint, the output link spins about the
input link.

10 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

Chapter 4: Basic Components of Robots

Power source: At present, mostly (lead–acid) batteries are used as a power source. Many
different types of batteries can be used as a power source for robots. They range from lead–
acid batteries, which are safe and have relatively long shelf lives but are rather heavy
compared to silver–cadmium batteries that are much smaller in volume and are currently
much more expensive. Designing a battery-powered robot needs to take into account factors
such as safety, cycle lifetime and weight. Generators, often some type of internal
combustion engine, can also be used. However, such designs are often mechanically
complex and need a fuel, require heat dissipation and are relatively heavy. A tether
connecting the robot to a power
supply would remove the power
supply from the robot entirely. This
has the advantage of saving weight
and space by moving all power
generation and storage components
elsewhere. However, this design does
come with the drawback of
constantly having a cable connected
to the robot.
Actuator (A robotic leg powered by air muscles)
Actuators are the "muscles" of a robot, the parts which
convert stored energy into movement. By far the most
popular actuators are electric motors that rotate a wheel or
gear, and linear actuators that control industrial robots in
factories. There are some recent advances in alternative
types of actuators, powered by electricity, chemicals, or
compressed air.

Electric motor
The vast majority of robots use electric motors, often
brushed and brushless DC motors in portable robots
or AC motors in industrial robots and CNC machines.
These motors are often preferred in systems with
lighter loads, and where the predominant form of
motion is rotational.

11 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

Linear actuator
Various types of linear actuators move in and out
instead of by spinning, and often have quicker
direction changes, particularly when very large
forces are needed such as with industrial robotics.
They are typically powered by compressed and
oxidized air (pneumatic actuator) or an oil (hydraulic

Series elastic actuators

A flexure is designed as part of the motor actuator, to
improve safety and provide robust force control, energy
efficiency, shock absorption (mechanical filtering) while
reducing excessive wear on the transmission and other
mechanical components. The resultant lower reflected
inertia can improve safety when a robot is interacting with
humans or during collisions. It has been used in various
robots, particularly advanced manufacturing robots and
walking humanoid robots.
Pneumatic artificial muscles

Pneumatic artificial muscles, also known as air muscles,

are special tubes that expand (typically up to 40%) when
air is forced inside them. They are used in some robot

Shape memory alloy

Muscle wire, also known as shape memory alloy, Nitinol®
or Flexinol® wire, is a material which contracts (under
5%) when electricity is applied. They have been used for
some small robot applications

12 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

Electro active polymers

EAPs or EPAMs are a new plastic material that can
contract substantially (up to 380% activation strain)
from electricity, and have been used in facial
muscles and arms of humanoid robots,and to enable
new robots to float, fly, swim or walk.

Piezoelectric motor
Recent alternatives to DC motors are piezo
motors or ultrasonic motors. These work on
a fundamentally different principle,
whereby tiny piezoceramic elements,
vibrating many thousands of times per
second, cause linear or rotary motion. There
are different mechanisms of operation; one type uses the vibration of the piezo elements to
step the motor in a circle or a straight line. Another type uses the piezo elements to cause a
nut to vibrate or to drive a screw. The advantages of these motors are nanometer resolution,
speed, and available force for their size. These motors are already available commercially, and
being used on some robots.
Elastic nanotubes are a promising artificial muscle
technology in early-stage experimental development.
The absence of defects in carbon nanotubes enables
these filaments to deform elastically by several percent,
with energy storage levels of perhaps 10 J/cm3 for metal
nanotubes. Human biceps could be replaced with an 8
mm diameter wire of this material. Such compact
"muscle" might allow future robots to outrun and outjump humans
Robotic sensing
Sensors allow robots to receive
information about a certain
measurement of the environment, or
internal components. This is essential
for robots to perform their tasks, and
act upon any changes in the
environment to calculate the

13 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

appropriate response. They are used for various forms of measurements, to give the robots
warnings about safety or malfunctions, and to provide real-time information of the task it is

Tactile sensor
Current robotic and prosthetic hands receive far less
tactile information than the human hand. Recent
research has developed a tactile sensor array that
mimics the mechanical properties and touch receptors
of human fingertips. The sensor array is constructed as
a rigid core surrounded by conductive fluid contained
by an elastomeric skin. Electrodes are mounted on the
surface of the rigid core and are connected to an
impedance-measuring device within the core. When the artificial skin touches an object the
fluid path around the electrodes is deformed, producing impedance changes that map the
forces received from the object. The researchers expect that an important function of such
artificial fingertips will be adjusting robotic grip on held objects. Scientists from several
European countries and Israel developed a prosthetic hand in 2009, called Smart Hand, which
functions like a real one—allowing patients to write with it, type on a keyboard, play piano
and perform other fine movements. The prosthesis has sensors which enable the patient to
sense real feeling in its fingertips
Vision processing unit

Computer vision is the science and technology of machines that see. As a scientific discipline,
computer vision is concerned with the theory behind artificial systems that extract
information from images. The image data can take many forms, such as video sequences and

14 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

views from cameras. In most practical computer vision applications, the computers are pre-
programmed to solve a particular task, but methods based on learning are now becoming
increasingly common. Computer vision systems rely on image sensors which detect
electromagnetic radiation which is typically in the form of either visible light or infra-red
light. The sensors are designed using solid-state physics. The process by which light
propagates and reflects off surfaces is explained using optics. Sophisticated image sensors
even require quantum mechanics to provide a complete understanding of the image
formation process. Robots can also be equipped with multiple vision sensors to be better
able to compute the sense of depth in the environment. Like human eyes, robots' "eyes"
must also be able to focus on a particular area of interest, and also adjust to variations in
light intensities. There is a subfield within computer vision where artificial systems are
designed to mimic the processing and behaviour of biological system, at different levels of
complexity. Also, some of the learning-based methods developed within computer vision
have their background in biology.

Mobile manipulator
Robots need to manipulate objects; pick up, modify, destroy, or otherwise
have an effect. Thus the "hands" of a robot are often referred to as end
effectors, while the "arm" is referred to as a manipulator. Most robot arms
have replaceable effectors, each allowing them to perform some small
range of tasks. Some have a fixed manipulator which cannot be replaced,
while a few have one very general purpose manipulator, for example, a
humanoid hand. Learning how to manipulate a robot often requires a close
feedback between human to the robot, although there are several
methods for remote manipulation of robots.

Mechanical grippers
One of the most common effectors is the gripper. In
its simplest manifestation, it consists of just two
fingers which can open and close to pick up and let
go of a range of small objects. Fingers can for
example, be made of a chain with a metal wire run
through it. Hands that resemble and work more like
a human hand include the Shadow Hand and the
Robonaut hand. Hands that are of a mid-level
complexity include the Delft hand. Mechanical grippers can come in various types, including
friction and encompassing jaws. Friction jaws use all the force of the gripper to hold the

15 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

object in place using friction. Encompassing jaws cradle the object in place, using less
Vacuum grippers
Vacuum grippers are very simple astrictive devices that can
hold very large loads provided the prehension surface is
smooth enough to ensure suction. Pick and place robots for
electronic components and for large objects like car
windscreens, often use very simple vacuum grippers.

General purpose effectors

Some advanced robots are beginning to use fully
humanoid hands, like the Shadow Hand, MANUS, and the
Schunk hand. These are highly dexterous manipulators,
with as many as 20 degrees of freedom and hundreds of
tactile sensors.

16 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

Chapter 5: Mobile Robots

Rolling robots :
Segway in the Robot museum in Nagoya:
For simplicity, most mobile robots have
four wheels or a number of continuous
tracks. Some researchers have tried to
create more complex wheeled robots
with only one or two wheels. These can
have certain advantages such as greater
efficiency and reduced parts, as well as
allowing a robot to navigate in confined
places that a four-wheeled robot would
not be able to.

Two-wheeled balancing robots

Balancing robots generally use a gyroscope to detect how
much a robot is falling and then drive the wheels
proportionally in the same direction, to counterbalance the
fall at hundreds of times per second, based on the dynamics
of an inverted pendulum. Many different balancing robots
have been designed. While the Segway is not commonly
thought of as a robot, it can be thought of as a component of
a robot, when used as such Segway refer to them as RMP
(Robotic Mobility Platform). An example of this use has been as NASA's Robonaut that has
been mounted on a Segway.
One-wheeled balancing robots (Self-balancing unicycle)
A one-wheeled balancing robot is an extension of a two-
wheeled balancing robot so that it can move in any 2D
direction using a round ball as its only wheel. Several one-
wheeled balancing robots have been designed recently, such
as Carnegie Mellon University's "Ballbot" that is the
approximate height and width of a person, and Tohoku Gakuin
University's "BallIP". Because of the long, thin shape and ability

17 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

to maneuver in tight spaces, they have the potential to function better than other robots in
environments with people.
Spherical robot
Several attempts have been made in robots that are completely inside
a spherical ball, either by spinning a weight inside the ball, or by
rotating the outer shells of the sphere.

Six-wheeled robots
Using six wheels instead of four wheels can give
better traction or grip in outdoor terrain such as
on rocky dirt or grass.

Tracked robots
TALON military robots used by the United States
Tank tracks provide even more traction than a six-
wheeled robot. Tracked wheels behave as if they
were made of hundreds of wheels, therefore are
very common for outdoor and military robots, where
the robot must drive on very rough terrain. However,
they are difficult to use indoors such as on carpets
and smooth floors. Examples include NASA's Urban
Robot "Urbie".
Walking applied to robots
Walking is a difficult and dynamic problem to solve. Several
robots have been made which can walk reliably on two legs,
however, none have yet been made which are as robust as a
human. There has been much study on human inspired walking,
such as AMBER lab which was established in 2008 by the
Mechanical Engineering Department at Texas A&M University.
Many other robots have been built that walk on more than two
legs, due to these robots being significantly easier to construct.
Walking robots can be used for uneven terrains, which would

18 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

provide better mobility and energy efficiency than other locomotion methods. Hybrids too
have been proposed in movies such as I, Robot, where they walk on two legs and switch to
four (arms+legs) when going to a sprint. Typically, robots on two legs can walk well on flat
floors and can occasionally walk up stairs. None can walk over rocky, uneven terrain.
Zero moment point : The zero moment point (ZMP) is
the algorithm used by robots such as Honda's ASIMO.
The robot's onboard computer tries to keep the total
inertial forces (the combination of Earth's gravity and
the acceleration and deceleration of walking), exactly
opposed by the floor reaction force (the force of the
floor pushing back on the robot's foot). In this way, the
two forces cancel out, leaving no moment (force
causing the robot to rotate and fall over). However,
this is not exactly how a human walks, and the
difference is obvious to human observers, some of whom have pointed out that ASIMO walks
as if it needs the lavatory. ASIMO's walking algorithm is not static, and some dynamic
balancing is used (see below). However, it still requires a smooth surface to walk on.
Hopping: Several robots, built in the 1980s by Marc Raibert at the MIT Leg Laboratory,
successfully demonstrated very dynamic
walking. Initially, a robot with only one
leg, and a very small foot could stay
upright simply by hopping. The
movement is the same as that of a person
on a pogo stick. As the robot falls to one
side, it would jump slightly in that
direction, in order to catch itself. Soon,
the algorithm was generalised to two and four legs. A bipedal robot was demonstrated running
and even performing somersaults. A quadruped was also demonstrated which could trot, run,
pace, and bound. For a full list of these robots, see the MIT Leg Lab Robots page.
Dynamic balancing (controlled falling)
A more advanced way for a robot to walk is by using a dynamic
balancing algorithm, which is potentially more robust than the Zero
Moment Point technique, as it constantly monitors the robot's
motion, and places the feet in order to maintain stability. This
technique was recently demonstrated by Anybots' Dexter Robot,
which is so stable, it can even jump. Another example is the TU Delft

19 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

Passive dynamics
Perhaps the most promising approach
utilizes passive dynamics where the
momentum of swinging limbs is used
for greater efficiency. It has been
shown that totally unpowered
humanoid mechanisms can walk down
a gentle slope, using only gravity to
propel themselves. Using this technique, a robot need only supply a small amount of motor
power to walk along a flat surface or a little more to walk up a hill. This technique promises to
make walking robots at least ten times more efficient than ZMP walkers, like ASIMO.

20 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

Chapter 6 : Programming Languages in


1. BASIC / Pascal
BASIC and Pascal were two of the first programming languages that I ever learned. However,
that's not why I've included them here. They are the basis for several of the industrial robot
languages, described below. BASIC was designed for beginners (it stands for Beginners All-
Purpose Symbolic Instruction Code), which makes it a pretty simple language to start with.
Pascal was designed to encourage good programming practices and also introduces constructs
like pointers, which makes it a good “stepping stone” from BASIC to a more involved language.
These days, both languages are a bit outdated to be good for “everyday use”. However, it can
be useful to learn them if you're going to be doing a lot of low level coding or you want to
become familiar with other industrial robot languages.

2. Industrial Robot Languages Almost every robot manufacturer has developed their own
proprietary robot programming language, which has been one of the problems in industrial
robotics. You can become familiar with several of them by learning Pascal. However, you are
still going to have to learn a new language every time you start using a new robot.
ABB has its RAPID programming language. Kuka has KRL (Kuka Robot Language). Comau uses
PDL2, Yaskawa uses INFORM and Kawasaki uses AS. Then, Fanuc robots use Karel, Stäubli

21 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

robots use VAL3 and Universal Robots use URScript. In recent years, programming options
like ROS Industrial have started to provide more standardized options for programmers.
However, if you are a technician, you are still more likely to have to use the manufacturer's

LISP is the world's second oldest programming language (FORTRAN is older, but only by one
year). It is not as widely used as many of the other programming languages on this list;
however, it is still quite important within Artificial Intelligence programming. Parts of ROS are
written in LISP, although you don't need to know it to use ROS.

4. Hardware Description Languages (HDLs)

Hardware Description Languages are basically a programming way of describing electronics.
These languages are quite familiar to some roboticists, because they are used to program Field
Programmable Gate Arrays (FPGAs). FPGAs allow you to develop electronic hardware without
having to actually produce a silicon chip, which makes them a quicker and easier option for
some development. If you don't prototype electronics, you may never use HDLs. Even so, it is
important to know that they exist, as they are quite different from other programming
languages. For one thing, all operations are carried out in parallel, rather than sequentially as
with processor based languages.

5. Assembly
Assembly allows you to program at "the level of ones and zeros”. This is programming at the
lowest level (more or less). In the recent past, most low level electronics required
programming in Assembly. With the rise of Arduino and other such microcontrollers, you can
now program easily at this level using C/C++, which means that Assembly is probably going to
become less necessary for most roboticists.

MATLAB, and its open source relatives, such as Octave, is very popular with some robotic
engineers for analyzing data and developing control systems. There is also a very popular
Robotics Toolbox for MATLAB. I know people who have developed entire robotics systems
using MATLAB alone. If you want to analyze data, produce advanced graphs or implement
control systems, you will probably want to learn MATLAB.

22 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

7. C#/.NET
C# is a proprietary programming language provided by Microsoft. I include C#/.NET here
largely because of the Microsoft Robotics Developer Studio, which uses it as its primary
language. If you are going to use this system, you're probably going to have to use C#.
However, learning C/C++ first might be a good option for long term development of your
coding skills.

8. Java
As an electronics engineer, I am always surprised that some computer science degrees teach
Java to students as their first programming language. Java "hides" the underlying memory
functionality from the programmer, which makes it easier to program than, say, C, but also
this means that you have less of an understanding of what it's actually doing with your code.
If you come to robotics from a computer science background (and many people do, especially
in research) you will probably already have learned Java. Like C# and MATLAB, Java is an
interpretive language, which means that it is not compiled into machine code. Rather, the Java
Virtual Machine interprets the instructions at runtime. The theory for using Java is that you
can use the same code on many different machines, thanks to the Java Virtual Machine. In
practice, this doesn't always work out and can sometimes cause code to run slowly. However,
Java is quite popular in some parts of robotics, so you might need it.

9. Python : There has been a huge resurgence of Python in recent years especially in robotics.
One of the reasons for this is probably that Python (and C++) are the two main programming
languages found in ROS. Like Java, it is an interpretive language. Unlike Java, the prime focus
of the language is ease of use. Many people agree that it achieves this very well. Python
dispenses with a lot of the usual things which take up time in programming, such as defining
and casting variable types. Also, there are a huge number of free libraries for it, which means
you don't have to "reinvent the wheel" when you need to implement some basic functionality.
And since it allows simple bindings with C/C++ code, this means that performance heavy parts
of the code can be implemented in these languages to avoid performance loss. As more
electronics start to support Python "out-of-the-box" (as with Raspberry Pi), we are likely to see
a lot more Python in robotics.

10. C/C++ : Finally, we reach the Number 1 programming language in robotics! Many people
agree that C and C++ are a good starting point for new roboticists. Why? Because a lot of
hardware libraries use these languages.

23 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

They allow interaction with low level hardware, allow for real time performance and are very
mature programming languages. These days, you'll probably use C++ more than C, because
the language has much more functionality. C++ is basically an extension of C. It can be useful
to learn at least a little bit of C first, so that you can recognize it when you find a hardware
library written in C. C/C++ are not as simple to use as, say, Python or MATLAB. It can take quite
a lot longer to implement the same functionality using C and it will require many more lines
of code. However, as robotics is very dependent on real time performance, C and C++ are
probably the closest thing that we roboticists have to "a standard language".

24 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n

25 | R o b o t i c s – P r e p a r e d b y B a l a m u r u g a n