Robot
Robot
Study Material
Basic Robotics
“Will Robots Inherit the Earth? Yes, but they will be our children.”
-Marvin Minsky
1
Introduction
1. Why Robotics?
2. Basic Components of Robots
3. Designing and Analysis of a Robot
4. Fabrication
5. The brain of a robot
6. Sensing the Environment
7. Controlling Actuators
Reading Tip: If you find anything confusing, just google it or search the
term on youtube. There are youtube channels like “How to
Mechatronics?” which contain great content for basic Robotics.
2
Why Robotics?
Before starting with Robotics you should make a few things very clear:-
After getting answers to these questions, you are ready for further study
material.
Robotics can teach you so much. You will learn skills ranging from
electronics, mechanics, controls, programming, and even as broad
as understanding animal behavior and human psychology. My personal
experience with this field is that the more you get in this field the more
you thank GOD for their creation of a wonderful species called HUMANS.
3
Mechanics of a Robot
Mechanics of a Robot Consists of following steps:-
1. Designing a Robot: -
To check whether the robot of your imagination will be feasible to build or not we first
need to create a 3D CAD Model of the Robot using various CAD designing software
like Autodesk, SolidWorks, etc. The design of Robot includes all the mechanisms,
actuators, structural parts, power transmission setup, fasteners, and some other
important components.
4
i) Mechanisms:-
Mechanisms of a robot are dependent on the tasks it must perform. No study material
is complete when it comes to the list of mechanisms. You need to be very curious and
patient to create a working mechanism of your own.
ii) Actuators:-
After thinking of a mechanism, you now know the type of actuators you need for your
application. After identifying the type of actuators, we move on to the required
specifications for our mechanism like speed, force, torque, etc. Actuators are further
classified into two broad categories: -
1. Angular Actuators
2. Linear Actuators
1. DC Motors:
From the start, DC motors seem quite simple. Apply a voltage to both terminals, and
weeeeeeee it spins. But what if you want to control which direction the motor spins?
Correct, you reverse the wires. Now, what if you want the motor to spin at half that
speed? You would use less voltage. But how would you get a robot to do those things
autonomously? How would you know what voltage a motor should get? Why not 50V
instead of 12V? What about motor overheating? To know the answers, follow the link.
A DC Motor
5
2. Brushless DC Motors:
To make the operation more reliable, more efficient, and less noisy the recent trend
has been to use brushless D.C (BLDC) motors. They are also lighter compared to
brushed motors with the same power output. The brushes in conventional D.C motors
wear out over time and may cause sparking. As a result, the conventional D.C motors
require occasional maintenance. Thus, the brushed D.C motor should never be used
for operations that demand long life and reliability. The efficiency of a BLDC motor is
typically around 85-90%, whereas the conventional brushed motors are only 75-80%
efficient. BLDC motors are also suitable for high-speed applications (10000 rpm or
above). The BLDC motors are also well known for their better speed control. You can
learn about the working of BLDC motors here.
3. Servo Motors:
A servo motor is a rotary actuator or linear actuator that allows for precise control of
angular or linear position, velocity, and acceleration. It consists of a suitable motor
coupled to a sensor for position feedback. It also requires a relatively sophisticated
controller, often a dedicated module designed specifically for use with servo motors.
Servo motors are specifically used for periodic motion due to their position feedback
and control property.
6
A Servo Motor
4. Stepper Motors:
Stepper Motors work under a very similar principle to DC motors, except they have
many coils instead of just one. So, to operate a stepper motor, one must activate these
different coils in particular patterns to generate motor rotation. So, stepper motors
need to be sent patterned commands to rotate. These commands are sent as high
and low logic over several lines and must be pulsed in a particular order and
combination. Steppers are often used because each 'step,' separated by a set step
angle, can be counted and used for feedback control. For example, a 10-degree step
angle stepper motor would require 36 commands to rotate 360 degrees. You can see
the working principle of stepper motors here.
A Stepper Motor
5. Solenoids:
Solenoids are actuators capable of linear motion. They can be electromechanical
(AC/DC), hydraulic, or pneumatic driven - all operating on the same basic principles.
Give it energy and it will produce a linear force. They are great for pushing buttons,
hitting keys on a piano, valve operators, and even jumping robots. DC solenoids
operate on the same basic principles as a DC motor. You can see the working principle
of solenoid actuators here.
7
A Solenoid
For a detailed understanding of pneumatic actuators, you must watch this video.
Ok, then enjoy this video of pneumatics synchronization and see what pneumatic
actuators can do.
8
iii) Power Transmission Setups: -
1. Key and Key slot
2. Gear Train:
3. Chain Sprockets:
9
were also largely driven by sprocket and chain mechanism, a practice largely copied
from bicycles.
If you want to learn chain sprockets in detail, then follow the link.
4. Timing Belts
6. V belts
A belt is a loop of flexible material used to link two or more
rotating shafts mechanically, most often parallel. Belts may
be used as a source of motion, to transmit power
efficiently, or to track relative movement. Belts are looped
over pulleys and may have a twist between the pulleys,
and the shafts need not be parallel.
10
b.) V extrusions:
These are customized cross-sectional extruded structural parts
used in making robots. One of their main advantages over regular
square pipes is their enhanced strength and the presence of
several accessories that makes the construction of the structure
, using V extrusion, easier. These videos provide a basic
understanding of using V extrusions. Video:- 1 and 2.
c.) Shafts:
A shaft is a rotating machine element, usually circular in
cross-section, which is used to transmit power from one
part to another, or from a machine that produces power to
a machine that absorbs power. The various members such
as pulleys and gears are mounted on it.
d.) L-plates:
These are the mechanical parts that are used to provide strength to the
structure and also make the structure planar.
L plates use : youtube video link
v) Fasteners:-
a.) Nuts and Bolts:
Nuts and bolts are the mechanical parts that are used to join or
fasten various structural parts. There are different types of nuts
and bolts present today that have different designs according to different applications.
11
b.) Washers:
3. Gears
12
A gear or cogwheel is a rotating machine part having cut teeth, or cogs, which mesh
with another toothed part to transmit torque. Geared devices can change the speed,
torque, and direction of a power source.
Types of gears:
1. Spur
2. Helical
3. Double helical Best Video to get familiar with all
4. Bevel gear types: - LINK.
5. Spiral bevels If you are interested in learning
6. Hypoid about gears in detail, then follow
the link
7. Crown
8. Worm
13
rotating shaft operating at a constant speed. Fatigue analysis calculates the
following:-
a) Log Life—the estimated number of cycles until your model breaks.
Because of the exponential nature of fatigue, it is useful to express life
as a logarithm.
b) Factor of Safety—the permissible factor of safety on the input load.
When the fatigue life calculated for your model is greater than the target
design life, the software carries out a back-calculation to determine a
permissible factor of safety on the input load. This represents the extent
to which the amplitude of the load can be increased without
compromising the target design life.
c) Confidence of Life—the ratio between the calculated life and the target
design life. Because of the statistical nature of fatigue, the greater the
confidence the better. Values below unity indicate failure.
3) Flow / Drag Analysis: - There are few applications where we have to take
air/fluid flow analysis into consideration as it affects the results by different
amounts in different situations. It helps us to decide the shape of a mechanism in
flow critical situations like aerodynamic applications.
View this interesting simulation about a Robotic Arm picking and placing different
objects and this simulation of MIT Cheetah in Gazebo.
14
3. Fabrication: -
Once all checkboxes are marked, we receive the green light to commence
manufacturing. This encompasses a series of steps, including procuring
raw materials, machining, 3D printing, assembly, and more. Let's delve
into some of the processes and machines integral to the fabrication.
1) 3D Printing: -
Introduction to 3D Printing:
Basic Terms:
3. Filament: The material used for 3D printing. Common filaments include PLA
(Polylactic Acid) and ABS (Acrylonitrile Butadiene Styrene), among others.
15
5. Extruder: The part of the 3D printer that melts and deposits the filament onto
the print bed, creating layers of the object. Extruders are free to move in 3d space
and follow coordinates provided by gcode.
Design Considerations:
1. Layer Height: The thickness of each layer affects the quality and resolution of
the 3D print. Smaller layer heights result in finer details but may increase printing
time.
2. Infill: The internal structure of the 3D print. Higher infill percentages make the
object more solid but require more material and time. Lower percentages reduce
material usage but may result in a less sturdy print.
5. Print Bed Adhesion: Ensuring the first layer adheres well to the print bed is
crucial. Proper bed leveling and surface treatments like adhesive or heated beds
can enhance adhesion.
16
2) MLC (Metal Laser Cutter):
3) Welding:
Welding is a fabrication process that
joins materials, typically metals, by
melting and fusing them together. This
vital technique is used in construction,
manufacturing, and automotive
industries. By creating strong, durable
bonds, welding plays a pivotal role in
constructing structures, assembling
machinery, and fabricating various
components.
4) VMC (Vertical Milling Center):
A CNC milling machine is a versatile
tool in manufacturing, controlled by
computer programming. It precisely
shapes materials like metal or plastic
by removing excess material, resulting
in intricate components. Widely used
in industries for its accuracy, speed,
and repeatability, CNC milling
machines are essential for complex
and precise machining tasks.
17
4. The brain of a robot
For a robot to move and perform actions on its own a processing unit is
often used. The work of this processing unit is to take inputs from various
sensors and gives commands to the actuators accordingly. A
microcontroller can be used as a processing unit.
● Microcontroller:
○ Abbreviated as MCU.
○ Nothing, but an IC (Integrated Circuit).
○ In general, we can say that it’s like a mini-computer.
○ It can be programmed by the user.
○ Programmable input and output pins
○ Small storage memory to store data.
○ Various algorithms can be programmed onto an MCU for
the processing of input data.
○ Various communication interfaces for communicating with
different devices.
18
● Development Boards:
○ Printed circuit board with a microcontroller soldered on it.
○ Provide all the circuitry necessary for a useful control task like I/O circuit,
clock generator, memory unit, etc.
○ Provide ease to interface input, output devices.
○ Most used boards are Arduino and Raspberry Pi, for further details refer
link at end of doc.
5. Sensors
A sensor is a device used to measure a property, such as pressure,
position, temperature, or acceleration, and respond with feedback. A
Sensor converts the physical parameter (for example temperature, blood
pressure, humidity, speed, etc.) into a signal which can be measured
electrically. The various types of sensors which are commonly used are:
19
amount which can be electrically detected. Today, accelerometers are easily and
cheaply available, making it a very viable sensor for cheap
robotics hobbyists like you and me.
http://www.societyofrobots.com/sensors_accelerometer.shtml
https://learn.sparkfun.com/tutorials/accelerometer-basics
20
including unmanned aerial vehicles (UAVs), among many others,
and spacecraft, including satellites and landers.
https://en.wikipedia.org/wiki/Inertial_measurement_unit
● Proximity Sensors: These sensors are used for object and obstacle detection.
○ IR Sensor (Proximity Sensor): The Infrared emitter detector circuit is very useful
if you plan to make a line following robot, or a robot with a basic object or obstacle
21
detection. Infrared emitter detector pair sensors are fairly easy to
implement, although involved some level of testing and calibration to
get right. They can be used for obstacle detection, motion detection,
transmitters, encoders, and color detection (such as for line following).
http://www.societyofrobots.com/schematics_infraredemitdet.shtml
● Angular Position Sensor: When coupled with a rotating object it measures the
rotation of the object.
○ Encoders: The encoder is a sensor attached to a rotating object
(such as a wheel or motor) to measure rotation. By measuring
rotation your robot can do things such as determine displacement,
velocity, acceleration, or the angle of a rotating sensor. A typical
encoder uses an optical sensor(s), a moving mechanical component,
and a special reflector to provide a series of electrical pulses to your
microcontroller. These pulses can be used as part of a PID
feedback control system to determine translation distance, rotational velocity,
and/or angle of a moving robot or robot part.
http://www.societyofrobots.com/sensors_encoder.shtml
● Color Sensor: The color sensor detects the color of the surface, usually on the RGB
scale. Color is the result of interaction between a light source, an object, and an
observer. In case of reflected light, light falling on an object will be reflected or absorbed
depending on surface characteristics, such as reflectance and transmittance. For
example, green paper will absorb most of the reddish and bluish part of the spectrum
22
while reflecting the greenish part of the spectrum, making it appear greenish to
the observer.
http://www.societyofrobots.com/sensors_color.shtml
6. Actuator controllers:
These are modules or circuitry which controls the motion of the actuators based on
the signals received from the microcontroller.
● Brushed Motor Driver: Normally DC motors require large current for
their operation. A microcontroller cannot provide this much current to a motor.
Due to this, a motor driver circuitry is used to control the angular speed and
direction of rotation of the motor. The microcontroller sends direction and
speed signals to the motor driver and it sets the speed and direction of rotation
accordingly. An analog voltage (0 to 5V) or pulse width modulated (PWM)
signals for speed setpoint and a digital (0 or 5V) signal for the direction of
rotation are sent by the microcontroller. A motor driver uses an H-bridge circuit
for the control of the direction of rotation of the motor.
https://learn.sparkfun.com/tutorials/pulse-width-modulation/all
https://en.wikipedia.org/wiki/H_bridge
24
The table below shows how to drive each input to rotate the motor. Moving
forward (i.e., from step 1 to 2) makes the motor turn clockwise while moving
backward makes the motor turn counter-clockwise.
https://maker.pro/arduino/tutorial/how-to-control-a-stepper-
motor
25
Having a good understanding of the working principles and importance of different
parameters in a PID controller is essenestial to efficiently control a given system.
Although there are many more complex algorithms compared to PID in use today, it is
necessary to learn PID if one wants to excel in the field of control.
https://youtube.com/playlist?list=PLn8PRpmsu08pQBgjxYFXSsODEF3Jqmm-y
● High Pass Filter: A high-pass filter (HPF) is an electronic filter that passes
signals with a frequency higher than a certain cutoff frequency and attenuates signals
with frequencies lower than the cutoff frequency. The amount of attenuation for each
frequency depends on the filter design. A high-pass filter is usually modeled as a linear
time-invariant system. It is sometimes called a low-cut filter or bass-cut filter.[1]
High-pass filters have many uses, such as blocking DC from circuitry sensitive to non-
zero average voltages or radio frequency devices. They can also be used in
conjunction with a low-pass filter to produce a bandpass filter.
https://en.wikipedia.org/wiki/High-pass_filter
26
y[n]=(1-alpha) * x[n] + alpha * y[n-1] //use this for angles obtained
from accelerometers
x[n] is the pitch/roll/yaw that you get from the accelerometer
y[n] is the filtered final pitch/roll/yaw
https://sites.google.com/site/myimuestimationexperience/filters/complementary-filter
8. Opencv:
Pixel: Pixels are the raw building blocks of an image. Every image consists of a set of
pixels. There is no finer granularity than the pixel.Normally, a pixel is considered the
“color” or the “intensity” of light that appears in a given place in our image.
If we think of an image as a grid, each square in the grid contains a single pixel.
RGB: The RGB colour model is the most common colour model used in Digital image
processing and openCV. The colour image consists of 3 channels. One channel each
for one colour. Red, Green and Blue are the main colour components of this model. All
other colours are produced by the proportional ratio of these three colours only. 0
represents the black and as the value increases the colour intensity increases.
Properties:
● This is an additive colour model. The colours are added to the black.
● 3 main channels: Red, Green and Blue.
● Used in DIP, openCV and online logos.
HSV: The image consists of three channels. Hue, Saturation and Value are three
channels. This colour model does not use primary colours directly. It uses colour in the
way humans perceive them. HSV colour when is represented by a cone.
Hue is a colour component. Since the cone represents the HSV model, the hue
represents different colours in different angle ranges.
27
Sampling and quantization:
To create a digital image, we need to convert the continuous sensed data into digital
form.
https://sisu.ut.ee/imageprocessing/book/2
This process includes 2 processes:
1. Sampling: Digitizing the coordinate value is called sampling.
2. Quantization: Digitizing the amplitude value is called quantization.
Histogram equalization:
Histogram equalization is a method in image processing of contrast adjustment using
the image's histogram.
This method usually increases the global contrast of many images, especially when
the image is represented by a narrow range of intensity values. Through this
adjustment, the intensities can be better distributed on the histogram utilizing the full
range of intensities evenly. This allows for areas of lower local contrast to gain a
higher contrast. Histogram equalization accomplishes this by effectively spreading out
the highly populated intensity values which are used to degrade image contrast.
28
The method is useful in images with backgrounds and foregrounds that are both
bright or both dark.
Median filter
The median filter is a non-linear digital filtering technique, often used to
remove noise from an image or signal. Such noise reduction is a typical pre-
processing step to improve the results of later processing (for example, edge
detection on an image).
29
10.Machine Learning:
Machine learning in robotics involves the utilization of algorithms that learn
from historical data, allowing robots to generalize patterns and make
predictions or decisions in real-time scenarios. This module will delve into the
foundational concepts, historical background, and the wide-ranging applications
of machine learning within the field of robotics.
This section will explore the three primary types of machine learning:
supervised learning, unsupervised learning, and reinforcement learning.
30
• Supervised Learning: In supervised learning, algorithms are trained on
labeled datasets, where each input is associated with a corresponding
output. In the context of robotics, this could mean training a robot to
recognize objects based on images or predicting the next movement of a
robotic arm given historical data.
• Unsupervised Learning: Unsupervised learning deals with unlabeled
data, aiming to identify patterns, structures, or relationships within the
dataset. In robotics, unsupervised learning might be employed for tasks
such as clustering similar objects or reducing the dimensionality of sensor
data.
• Reinforcement Learning: Reinforcement learning involves training
agents to make sequential decisions by interacting with an environment
and receiving feedback in the form of rewards or penalties. This module
will discuss how reinforcement learning can be applied to robotics,
enabling robots to learn optimal strategies for tasks like navigation or
manipulation.
Key Concepts
• Features and Labels: Features are the input variables used to make
predictions or decisions, while labels represent the desired output or
outcome.
• Training and Testing Data: Training data is used to teach the model,
and testing data is employed to evaluate its performance. Striking a
balance in dataset partitioning is crucial for building robust models.
• Model and Algorithm: A model is a representation of the learned
patterns, and an algorithm is the set of rules that guide the learning
process.
Important Links:
31
Linear Regression: https://towardsdatascience.com/a-beginners-guide-to-
regression-analysis-in-machine-learning-8a828b491bbf
Arduino Tutorials:
https://learn.sparkfun.com/tutorials/what-is-an-arduino
https://learn.sparkfun.com/tutorials/installing-arduino-ide
https://learn.sparkfun.com/tutorials/data-types-in-arduino
Matlab Tutorials :
https://www.mathworks.com/academia/student-competitions/tutorials-videos.html
https://learn.sparkfun.com/tutorials/integrated-circuits
https://learn.sparkfun.com/tutorials/analog-vs-digital
https://learn.sparkfun.com/tutorials/logic-levels
http://www.arduino.cc/en/Guide/Introduction
http://learn.sparkfun.com/tutorials/how-do-i-power-my-project
Serial Communication: https://learn.sparkfun.com/tutorials/serial-communication
32
I2C: https://learn.sparkfun.com/tutorials/i2c
ADC: https://learn.sparkfun.com/tutorials/analog-to-digital-conversion
https://learn.sparkfun.com/tutorials/pcb-basics
33