0% found this document useful (0 votes)
19 views3 pages

Kolesnyk 2017

Documento de investigacion

Uploaded by

Ulises Yupangui
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views3 pages

Kolesnyk 2017

Documento de investigacion

Uploaded by

Ulises Yupangui
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 3

44

Managing Robot Kinematics Based on Arduino


Controllers Using a Unity System
Kostyantyn Kolesnyk1, Roman Panchak1, Vitalii Pylypenko1, Ismail Abliazizov1,
Oleksandr Fedosyeyev1, Roman Ferens1
1. CAD Department, Lviv Polytechnic National University, UKRAINE, Lviv, 12 S. Bandery str., email: kolisnykcad@gmail.com.

Abstract – This paper contains investigation on positioning accuracy. The control of robotic arm was
managing robot kinematics based on Arduino performed using a universal platform with Arduino
controllers using a Unity system. The developed system controllers. Fee based on the Arduino UNO microcontroller
allows to perform different operations using the ATmega328P contains 13 digital outputs and allows it to
specially developed software to perform movement of connect many peripherals and sensors. The control is
the robotic arm and to define position objects into the performed via standard IDE serial port that is connected to
certain positions. the Arduino controller [1-2].
Keywords – Arduino, manipulator, kinematics, To move the paddle and calculate the corresponding
MEMSTECH 2017. angles are a number of ways including the calculation
Denavit-Hartenberg parameters [3] and angle-hand based
I. INTRODUCTION on the type manipulator. Overall design of the process
Modern development of robotics improves the standard comes to solving problems of direct and inverse kinematics
of society way of life. However, more and more companies [4-5].
automated reducing human impact on the process of
production. Formed in enterprises flexible production
III. MODELING KINEMATICS OF THE ROBOT
systems using industrial robots enforce heavy and routine BY UNITY
work to improve the product life cycle. Therefore, at To study the kinematics of the manipulator mathematical
present production it is only a few dozen people to control tools based on an analysis of rotational kinematic pairs
and maintenance of industrial systems, laying the basic were developed (Fig. 2), which are required for precise
operation of manufacturing high quality products on robots. positioning of flexible parts of one object relative to other
As soon as the development of robotics, in addition, it is objects [4]. Moving parts considered relatively Cartesian
possible also in other spheres of human activity, such as coordinate system for easy robot control. Explanation of
medicine, military, etc. symbols manipulator robot hand movements are shown in
II. BASIC SYSTEMS FOR ROBOT CONTROL Table 1.

Due to the urgent need for the development of society


robotic systems, in this paper, the attention is focused on
managing the kinematics of the manipulator robot brands
TZT 10 for research purposes, which was purchased at their
own expense (see Fig. 1).

Fig. 2. System OzOy1Oy2Oy3Ox


of robot arm movements
TABLE 1
LEGEND OF MANIPULATOR HAND MOVEMENTS
Type of movement Symbolic Conditiona
Designation l pictogram
1. Rotational movement Оz
around the Z axis in the
horizontal plane.
2. Rotational movement Оy
around the Y axis in the
Fig. 1. Robot TZT 10 vertical plane.
3. Rotational movement Оx
To rotate the manipulator we used servo motors around the x-axis, rotation
TowerPro MG995, providing adequate power and of brushes.

MEMSTECH 2017, 20-23 April, 2017, Polyana-Svalyava (Zakarpattya), UKRAINE


978-1-5386-4001-2/17/$31.00 ©2017 IEEE
45
Having formed robot arm kinematic scheme as a formal 𝐶1 0 𝑆1 0 𝐶2 −𝑆2 0 0
record and the necessary frame of reference need to install a 0 1 0 0 ⎫
𝑆 𝐶2 0 0
𝐷0,1 = � � ; 𝐷1,2 = � 2 � ;⎪
model of transition from one coordinate system to another −𝑆1 0 𝐶1 0 0 0 1 0 ⎪
according to the model of robot. As a result of changes in 0 0 0 1 0 0 0 1

generalized coordinates q (q1, q2, q3 ... qn) coordinates 1 0 0 𝑙1 𝐶3 −𝑆3 0 0 ⎪
change their spatial position and coordinates, these systems 𝑆 𝐶3 0 0 ⎪
𝐷2,3 = � 0 1 0 0 � ; 𝐷3,4 = � 3 �;
are changing too. 0 0 1 0 0 0 1 0 ⎪
Position of any point of robot at time t for a given 0 0 0 1 0 0 0 1
(7)
program of the robot movements in generalized coordinates 1 0 0 𝑙2 ⎬
can be determined by the formula:
𝐷4,5 = � 0 1 0 0 � ; 𝐶4 −𝑆4 0 0 ⎪
𝑞 = {𝑞1 = 𝑞1 (𝑡); 𝑞2 = 𝑞2 (𝑡); … ; 𝑞𝑛 = 𝑞𝑛 (𝑡); } , (1) 0 0 1 0
where n – number of degrees of mobility of robot. 0 0 0 1 𝑆 𝐶4 0 0 ⎪
𝐷5,6 = � 4 � ;⎪
With solid body bound moving frame in which you can 1 0 0 0 0 0 1 0 ⎪
0 𝐶5 −𝑆5 0 0 0 0 1 ⎪
select a point K with coordinates (x1, y1, z1). This mobile
𝐷5,7 = � �,
system is moving relative to the old coordinate system (x0, 0 𝑆5 𝐶5 0 ⎪
y0, z0) progressively according to equation: 0 0 0 1 ⎭
𝑎 = 𝑎(𝑡); 𝑏 = 𝑏(𝑡); 𝑐 = 𝑐(𝑡). (2) where l 1 , l 2 , l 3 are the lengths parts of robot arm.
The joint coordinate transformation point K (x1, y1, z1) For the convenience of the system matrix (7) introduced
while turning axes and parallel transfer can be represented the following notation:
by the following formula: 𝐶1 = cos 𝑞1 ; 𝐶2 = cos 𝑞2 ; 𝐶3 = cos 𝑞3 ; 𝐶4 = cos 𝑞4 ;
𝑥 𝑥1 𝐶5 = cos 𝑞5 ; 𝑆1 = sin 𝑞1 ; 𝑆2 = sin 𝑞2 ; 𝑆3 = sin 𝑞3 ;
𝑦 𝑦2 𝑆4 = sin 𝑞4 ; 𝑆5 = sin 𝑞5 . (8)
� � = 𝐷 ∙ � 𝑧 �. (3)
𝑧 3 Coordinates of pole delight in their bound coordinates
1 1 matter (l 1 0 0). With time t changing generalized
Conversion matrix D has a structure including a rotation
coordinates, changing the spatial orientation of parts robot
matrix A size 3 × 3 matrix of forward movement (a b c) and
arm and thus capture the pole coordinates relative to the
row matrix (0 0 0 1):
𝑎 fixed frame of reference OXYZ.
𝐴 𝑏 According to (3) capture pole position in the basic
𝐷=� �. (4) coordinate system at any time t can be determined
𝑐
0 0 0 1 following matrix expression
Matrix with coordinates transformations consecutive 𝑥 𝑙1
turning points in the coordinate system can be expressed as 𝑦
� � = 𝐷0,1 ∙ 𝐷1,2 ∙ 𝐷2,3 ∙∙∙ 𝐷5,7 ∙ � 0 �. (9)
the product of matrices: 𝑧 0
𝐴 = 𝐴𝑥 ∙ 𝐴𝑧 ∙ 𝐴𝑦 (5) 1 1
To solve our problem with the management of robot the
Transformation matrix with a simple turn around one of
3D model TZT 10 in SolidWorks CAD software system
the axes x, y or z are represented by the following formulas:
1 0 0 was built and determined its power characteristics. Initially,
management was provided by our 3D model in SolidWorks
𝐴𝑥 = �0 𝐶𝑥 −𝑆𝑥 � ;⎫
0 𝑆𝑥 𝐶𝑥 ⎪ environment using a graphical development environment
⎪ LabView. However, due to the complexity of managing our
𝐶𝑦 −𝑆𝑦 0 ⎪
facilities and, thus, provide feedback indicated CAD
𝐴𝑦 = � 𝑆𝑦 𝐶𝑦 0� ; (6) operating system Windows, applied multiplatform tool for

0 0 1 developing two- and three-dimensional visualization
𝐶𝑧 0 𝑆𝑧 ⎪ ⎪ applications Unity movement and work to further control it
𝐴𝑧 = � 0 1 0 �.⎪ using Wi-Fi through the mobile platform. To this medium
−𝑆𝑧 0 𝐶𝑧 ⎭ was exported 3D model of the robot manipulator TZT 10
Based on these considerations, the transformation matrix CAD SolidWorks (Fig. 3 exported 3D model of TZT 10 in
D are designated indices that show the basic transformation Unity) and held management model work in Unity
in the transition from one coordinate system to another implemented using software programming language C#.
system according OzOy1Oy2Oy3Ox robot arm movements
Fig. 3, and are as follows:

MEMSTECH 2017, 20-23 April, 2017, Polyana-Svalyava (Zakarpattya), UKRAINE


46
if (inputString.startsWith("a"))
{
tmp = inputString.substring(1);
firstservo.write(tmp.toInt());
}
In addition, the robot control program implemented code
to rotate the servo motor at a certain angle to shrink claws
depending on the width of the object that is moving:
double BaseAngle(double x, double z)
{ double cosA = x / R(x,z);
double angle = Math.Acos(cosA) * (180 / Math.PI);
if (z < 0) { angle = -angle; }
return angle;
Fig. 3. 3D model TZT 10 with interface in Unity }
float GripperAngle(float width)
Fig. 4 posted block diagram to provide feedback through {
a universal platform Arduino, robot TZT 10 and its 3D width = width /2;
model system in Unity. On Fig. 5 posted block diagram of float angle = (float)(width/ clawDetailLength);
code algorithm. return -(float)(Math.Asin(angle) * (180 / Math.PI));
}
double R(double x1, double x2)
{
return Math.Sqrt(Math.Pow(x1, 2) + Math.Pow(x2, 2));
}
IV. CONCLUSION
This paper presents the means and approaches to motion
Fig. 4. Feedback block diagram control of robot manipulator TZT 10 with the help of Unity
using the Arduino platform. To realize these goals the
appropriate mathematical tools for its management was
applied and the software to control the system operation
was written using C# programming language. The software
solution on the operation of the robot arm can be adapted
for warehouse operations.
V. REFERENCES
[1] P. Denysyuk et al., “The UML Model of Mobile Robot
System Base on the Microcontroller Arduino,”
Advanced technologies and methods for designing
MEMS: Material of 9th international conference,
MEMSTECH’2013, 16-20 April 2013, Polyana, pp.
130-132.
[2] P. Denysyuk and T. Teslyuk, "Main algorithm of mobile
robot system based on the microcontroller
Arduino," 2013 XVIIIth International Seminar/
Workshop on Direct and Inverse Problems of
Electromagnetic and Acoustic Wave Theory (DIPED),
Lviv, 2013, pp. 209-212.
[3] M Shahinpoor, A Robot Engineering Textbook. Harper
& Row, PUBLISHERS, New York, 1987.
[4] V. Yahlinskyy and D. Iorhachov, Modeling dynamic
processes robotic production, A.: Astroprint, 2004. -
231 p.
[5] Tsmots, V. Teslyuk and I. Vavruk, "Hardware and
Fig. 5. Flowchart of the algorithm software tools for motion control of mobile robotic
system," 2013 12th International Conference on the
The example of code, which allows you to control the Experience of Designing and Application of CAD
angle of rotation of the engine through the Arduino Systems in Microelectronics (CADSM), Polyana
platform: Svalyava, 2013, pp. 368-368.

MEMSTECH 2017, 20-23 April, 2017, Polyana-Svalyava (Zakarpattya), UKRAINE

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy