Final Project Presentation
Final Project Presentation
Faculty of Engineering
Mechanical and electrical department
Antropomorphic robot
Team 1
Torres Tagle Denise
Soto García Ciro Francisco
García Lampallas Gustavo
2
JUSTIFICATION
3
OBJECTIVES
4
SCOPE
1. A general description of the basic elements that make up an anthropomorphic
robot is developed, denoting its geometric and physical limitations.
2. Develop a program that controls the different mechanical and electrical elements
that perform the movements of the robot efficiently.
3. Appropriate elements will be selected that perform best in the tasks assigned and
scheduled by the developers.
4. The simulation of the selected robot will be carried out using free code software, in
addition, a graphic presentation is included that summarizes all the development
carried out to fulfill the established objectives.
5. A written report will be delivered that will contain all the elements requested and
what is considered necessary to validate the correct development of the request.
5
Background
DEFINITION AND HISTORY OF A ROBOT
1. The term robot was first introduced into our vocabulary by the Czech
playwright Karel Capek in his 1920
2. A robot is a reprogrammable multifunctional manipulator designed to move
material, parts, tool or specialized devices through variable programmed
motions for the performance of a variety of tasks.
3. Geometric types according to the first 3 joints of the manipulators:
1. Articulated (RRR)
2. Spherical (RRP)
3. SCARA (RRP)
4. Cylindrical (RPP)
5. Cartesian (PPP)
7
Anthropomorphic manipulator (RRR)
The end position is defined by arm rotation, wrist rotation, and main body axis rotation.
These are the three variables to control to position the end effectors of an
anthropomorphic base robot.
ADVENTAGES DISADVENTAGES
Large workspace for size Cannot reach above itself
Easily computed kinematics Horizontal axis frequently in the way
Can reach all around itself
Reach and height axes rigid
8
PROGRAMMING TOOLS
Arduino Visual Studio
The Arduino Uno is an open source Microsoft Visual Studio is an integrated
microcontroller board based on the development environment (IDE) for
ATmega328P microchip and developed Windows and macOS. It supports multiple
by Arduino.cc.12 The board is equipped programming languages, such as C++,
with sets of digital and analog I/O pins C#, Visual Basic .NET, F#, Java, Python,
that can be connected to various Ruby, and PHP, as well as web
expansion boards. and other circuits. The development environments, such as
board has 14 digital pins, 6 analog pins ASP.NET MVC, Django, etc. Add to that
and is programmable with the Arduino the new online capabilities under
IDE (Integrated Development Windows Azure in the form of the Monaco
Environment) through a USB type B editor.
cable.3 It can be powered by the USB
cable or by an external 9 volt battery,
although accepts voltages between 7 and Visual Studio enables developers to
20 volts. It is also similar to the Arduino create web sites, web applications, and
Nano and Leonardo.45 The hardware web services in any environment that
reference design is released under a supports the .NET platform (starting with
Creative Commons Attribution Share- the .NET 2002 release). Thus,
Alike 2.5 license and is available on the applications can be created that
Arduino website. Design and production communicate between workstations, web
files for some versions of the hardware pages, mobile devices, embedded
are also available. devices and video consoles, among
others.
9
Mechanical design
WORKSPACE
11
FORWARD KINEMATICS
𝐶1 0 𝑆1 0
DH parameters 𝑆1 0 −𝐶1 0
𝐴1 =
0 1 0 𝐿1
0 0 0 1
𝒊 𝒂𝒊 𝜶𝒊 𝒅𝒊 𝜽𝒊
1 0 90° L1 𝜃1
𝐶2 −𝑆2 0 𝐿2𝐶2
𝑆2 𝐶2 0 𝐿2𝑆2
2 L2 0 0 𝜃2 𝐴2 =
0 0 1 0
3 L3 0 0 𝜃3 0 0 0 1
𝐶3 −𝑆3 0 𝐿3𝐶3
𝑆3 𝐶3 0 𝐿3𝑆3
𝐴3 =
0 0 1 0
0 0 0 1
12
Final transformation matrix:
𝑇20 = 𝐴1 𝐴2
13
INVERSE KINEMATICS
𝑃𝑧 − 𝑙1
𝜃2 = 𝑎𝑡𝑎𝑛2
𝑃𝑥 2 + 𝑃𝑦 2
2 2
𝑃𝑥 2 + 𝑃𝑦 2 + (𝑃𝑧 − 𝑙1 ൯ − 𝑙22 − 𝑙32
1−
2𝑙2 𝑙3
𝜃3 = 𝑎𝑡𝑎𝑛2 2
𝑃𝑥 2 + 𝑃𝑦 2 + (𝑃𝑧 − 𝑙1 ൯ − 𝑙22 − 𝑙32
2𝑙2 𝑙3
14
−𝑆1 𝐿3𝐶12 + 𝐿2𝐶2
JACOBIAN
𝐽𝑣1 = 𝑧0 ∗ 𝑂3 − 𝑂0 = 𝑆 Ǩ ∗ 𝑂3 = 𝐶1(𝐿3𝐶12 + 𝐿2𝐶2)
0
Using the Jacobian definition of angular and linear velocity: −𝐶1 𝐿3𝑆23 + 𝐿2𝑆2 + 𝐿1
𝐽𝑣2 = 𝑧1 ∗ 𝑂3 − 𝑂1 = 𝑆 𝑧1 ∗ 𝑂3 − 𝑂1 = −𝑆1 𝐿3𝑆23 + 𝐿2𝑆2 + 𝐿1
𝐿3𝐶12 + 𝐿2𝐶2
𝐽𝑣𝑖 𝑧 ∗ (𝑂𝑛 − 𝑂𝑖−1 ) 𝑧
𝐽= = 𝑖−1 / 𝑖−1
𝐽𝜔𝑖 𝑧𝑖−1 0
𝐿3(𝐶1𝐶2𝐶3 − 𝑆2𝑆3)
𝐽𝑣3 = 𝑧2 ∗ 𝑂3 − 𝑂2 = 𝑆 𝑧2 ∗ 𝑂3 − 𝑂2 = 𝐿3(𝑆1𝐶2𝐶3 − 𝑆2𝑆3)
𝐿3𝑆23
Knowing that the Jacobian of the linear velocity is made up of the individual components of each link,
the following matrix is formed:
−𝑆1 𝐿3𝐶12 + 𝐿2𝐶2 −𝐶1 𝐿3𝑆23 + 𝐿2𝑆2 + 𝐿1 𝐿3𝐶1𝐶2𝐶3 − 𝑆2𝑆3
𝐽𝑣 = 𝐽𝑣1 𝐽𝑣2 𝐽𝑣3 = 𝐶1 𝐿3𝐶12 + 𝐿2𝐶2 −𝑆1 𝐿3𝑆23 + 𝐿2𝑆2 + 𝐿1 𝐿3 𝑆1𝐶2𝐶3 − 𝑆2𝑆3
0 𝐿3𝐶12 + 𝐿2𝐶2 𝐿3𝑆23
15
0
Using the Jacobian definition of angular and linear velocity: 𝑧1−1 = 𝑧0 = 0
1
𝐽𝑣𝑖 𝑧 ∗ (𝑂𝑛 − 𝑂𝑖−1 ) 𝑧
𝐽= = 𝑖−1 / 𝑖−1
𝐽𝜔𝑖 𝑧𝑖−1 0
𝐶1
𝑧2−1 = 𝑧1 = −𝑆1
0
𝐶1
In the same way, the Jacobian of the angular velocity 𝑧3−1 = 𝑧2 = −𝑆1
is composed of the individual vectors of each link 0
obeying the following matrix:
0 𝑆1 𝑆1
𝐽𝜔 = 𝐽𝜔1 𝐽𝜔2 𝐽𝜔3 = 0 −𝐶1 −𝐶1
1 0 0
16
SINGULARITIES
det 𝐽11 = 0
Starting with the analysis of singularities for the Jacobian of the angular velocity:
0 𝑆1 𝑆1
det 𝐽11 = 0 −𝐶1 −𝐶1 = 0 −𝐶1 0 + 0 0 𝑆1 + 1 𝑆1 −𝐶1 − 0 𝑆1 0 + 0 0 −𝐶1 + 1 −𝐶1 𝑆1 =0
1 0 0
17
SINGULARITIES
Following the analysis of singularities, the same analysis must be done with the Jacobian of the linear
velocity:
Carrying out the determinant of the matrix, we obtain the following equation, which, using the decoupling
criterion of singularities, equals 0:
det 𝐽11
= −𝑆1 𝐿3𝐶12 + 𝐿2𝐶2 −𝑆1 𝐿3𝑆23 + 𝐿2𝑆2 + 𝐿1 𝐿3 𝑆1𝐶2𝐶3 − 𝑆2𝑆3
+ 𝐶1 𝐿3𝐶12 + 𝐿2𝐶2 𝐿3𝐶12 + 𝐿2𝐶2 𝐿3𝐶1𝐶2𝐶3 − 𝑆2𝑆3
−ቂ 𝐶1 𝐿3𝐶12 + 𝐿2𝐶2 −𝐶1 𝐿3𝑆23 + 𝐿2𝑆2 + 𝐿1 𝐿3𝑆23
+ −𝑆1 𝐿3𝐶12 + 𝐿2𝐶2 𝐿3 𝑆1𝐶2𝐶3 − 𝑆2𝑆3 𝐿3 𝑆1𝐶2𝐶3 − 𝑆2𝑆3 ቃ=0
18
MULTIPURPOSE SERVOMOTOR BRACKET (3)
19
U LONG SERVOMOTOR BRACKET (2)
20
GRIPPER (1)
21
FINAL ASSEMBLY
22
Electric design
ELECTRIC COMPONENTS
1. Arduino UNO:
2. Servo motors MG995 (3):
3. LED:
4. Voltage Source MB102:
5. Jumpers
6. Wire
7. PCB/Protoboard
24
CONNECTION DIAGRAM
25
Graphic Interface
26
Results
27
CONCLUSION
Along this project, we applied every theoretical knowledge
seen during the semester, as well as what was learned in the
laboratory. Also, we needed to apply what has been seen in
previous subjects to develop the programming part for the
robot and the interface. The most difficult part for us to solve
was to create the interface and to make the communication
between the Arduino, the servomotors, and the interface
The team concludes that the theorical part of the course was
perfectly applied and developed to solve this project,
however, the technical part was much more difficult than
expected due to the many variables to be controlled when
handling a robot to convert it from a virtual environment to a
physical environment.
28
REFERENCES
• 03/16/2009. Base Structure of Industrial Robots - Manipulators - Anthropomorphic
Base Robot. Consultation date: 05/03/2021 URL:
https://www.brighthubengineering.com/robotics/29395-base-bodies-of-robots-
anthropomorphic-base-robot/
• Spong W. M., Hutchinson S., Vidyasagar M. (2005). Robot Modeling and Control.
Wiley.
29