0% found this document useful (0 votes)
41 views

Robotic Arm Control System For Mars Rover Analogue

This document summarizes a robotic arm control system developed for use on a Mars rover analogue. It describes implementing inverse kinematics algorithms to allow smooth, precise movements in Cartesian coordinates. It also details a Phantom device that allows remote control of the arm in real-time or via taught programming. The inverse kinematics equations are provided that relate the end effector position and orientation to joint angles. The algorithms are implemented in a C# application to simulate and control movement of the 5 degree-of-freedom robotic arm.

Uploaded by

cntez11
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)
41 views

Robotic Arm Control System For Mars Rover Analogue

This document summarizes a robotic arm control system developed for use on a Mars rover analogue. It describes implementing inverse kinematics algorithms to allow smooth, precise movements in Cartesian coordinates. It also details a Phantom device that allows remote control of the arm in real-time or via taught programming. The inverse kinematics equations are provided that relate the end effector position and orientation to joint angles. The algorithms are implemented in a C# application to simulate and control movement of the 5 degree-of-freedom robotic arm.

Uploaded by

cntez11
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/ 5

Robotic Arm Control System

for Mars Rover Analogue


Piotr Czaplicki, Maciej Rećko, Justyna Tołstoj-Sienkiewicz
Department of Automatics and Robotics
Faculty of Mechanical Engineering
Bialystok University of Technology
Bialystok, Poland
Email: [email protected], [email protected], [email protected]

Abstract—Presented paper’s main focus is set on improvements so, authors designed a device along with programs that allow
in mobile robot’s arm control system. This goal is achieved, with its implementation in existing Rover Control System.
two departures from previous way of performing operations, that
relays on repositioning each joint separately with a joystick. First
part of this article focuses on implementing inverse kinematics II. I NVERSE K INEMATICS E QUATIONS
algorithms to Arm Control System. This approach allows to
perform smooth, precise movements in Cartesian coordinate A geometric solution is used to determine the geometric
system, previously impossible to execute. Second part describes
a Phantom device that allows an operator to control arm in
relationship between end-effector’s position and rotation angle
real time or to program it through teaching, even without access of each joint (Fig 1. and Fig 2.). This method decomposes
to a manipulator. This solution also incorporates, embedded in
rover core systems, inverse kinematics algorithms. The paper is
concluded with an review of presented advancements in systems
development and prediction of future improvements that may
be beneficial to achieve authors main goal - easy, intuitive and
precise robot’s manipulator control system.

I. I NTRODUCTION
Bialystok’s University of Technology Faculty of Mechanical
Engineering is famous for their Mars rovers. They are built for
University Rover Challenge (URC) competition, that occurs
yearly at Mars Desert Research Station near Hanksville, Utah.
It encourages young engineers to create and test their solutions
for future manned Mars missions. According to competition
rules, a rover must be remotely controlled mobile robotic
platform. There are several limitations, weight limit of 50
kg and budget of no more than 15 000 USD. Thus rovers
would never leave earth but may be excellent test platforms Fig. 1. Manipulator kinematic chain
for new solutions and systems. Those systems with a necessary
upgrade may someday join humans in their exploration of
arm’s spatial geometry into several plane-geometry problems.
the Red Planet [1]. The most important subsystem of rover
The solution of subsequent equations allows to determine a
is its robotic arm. Manipulator allows sample collection,
rotation angle of a joint, given the position in the global
manipulation, use of different tools, maintenance of mission
coordinate system [3, 4]. As input data it uses the position
equipment etc. Those applications require reliable and precise
and an orientation of the gripper P (P x, P y, P z, ?), where P x,
control system. This paper presents #next team’s approach to
P y, P z determines the position of end-effectors (in relation
robotic arm control in their newest rover. The manipulator will
to the reference base), and the ? angle determines the rotation
be controlled not only using joystick (the most common way
angle. The first step to calculate the inverse kinematics is to
of control at URC) but also phantom and inverse kinematics
determine an angle q1 . Q1 is the angle on the x, y plane. For
algorithm. This approach will remarkably decrease time of
the determination of the angle q1 project we point P into the
performed operations, increasing their accuracy and ease of
base plane formed by the X and Y axes. We obtain the angle
execution at the same time. Robotic arm of #next’s 2016 rover
from the relationship:
has 5 degrees of freedom. It is made of aluminum and has a
DC motor at every joint. It’s anthropomorphic structure allows Py
relatively easy adaptation of phantom based control [2]. To do tan q1 = (1)
Px

978-1-5090-1866-6/16/$31.00 ©2016 IEEE 1122

Authorized licensed use limited to: T.C. Cumhurbaskanligi Kutuphanesi. Downloaded on December 26,2021 at 21:22:02 UTC from IEEE Xplore. Restrictions apply.
Fig. 3. Class list of the application

III. I MPLEMENTATION
Algorithm is implemented in a C# application. Control
algorithms are put in the methods: ArmCalculateAngle()
and ArmCalculateP osition()(Robotclass). Method
ArmCalculateAngle() performs the task of inverse
kinematics. As an it arguments method takes an object
of class P oint3D (point in three-dimensional space) and
an angle of notation. Designated angles are written down
as a field Robot class. Method ArmCalculateP osition()
is responsible for calculating the kinematics based on the
determined transformation matrix. All of those methods are
Fig. 2. Geometry relationships of manipulator core systems of programmed application. In the application

We are using two-argument function arctan 2 to calculate


angle q1 in form:
q1 = arctan 2(P y, P x) (2)
A q3 can be represented as:
p
q3 = arctan 2( 1 − M 2, M ) (3)
where:
2 2
PCx + PCy + (PCz − l1 )2 − l22 − l32
M= (4)
2 ∗ l2 ∗ l3
To determine variable q2, we calculate α and β angle:
Fig. 4. User interface of application
α = arctan 2(l3 ∗ sin q3, l2 + l3 ∗ cos q3) (5)
q
2 + P2 ) are views of the actual robot configuration and a textbox with
β = arctan 2(PCz − l1 , PCx Cy (6)
actual position of gripper and joint (Fig.5). TO realize that
Q2 can be represented as: window used author CubeElementandCylinderElement
class (Fig.4). That allows us to control robot configuration by
π
q2 = −+α+β (7) manually setting end-effector’s position or angle of each joint.
2
The purpose of the application is to simulate the movement
At the end we calculate q4 from equation: of the manipulator. Figures 5 and 6 presents start and end
q4 = η − q2 − (π − q3 ) (8) positions during vertical movement along global Z axis, with
no deviations along X and Y. The algorithm is implemented
Presented equations allow implementation of inverse kinemat- in operator application and controls data that is transmitted
ics in command centre application. wirelessly with radio modems. Control data is received by

1123

Authorized licensed use limited to: T.C. Cumhurbaskanligi Kutuphanesi. Downloaded on December 26,2021 at 21:22:02 UTC from IEEE Xplore. Restrictions apply.
Fig. 5. Robot arm configuration (top)

Fig. 7. Robot arm configuration

Fig. 6. Robot arm configuration (bottom)

the robot controller. Robot controller (single-board computer)


analyses the data and steers the arm motors with a PID
regulator. Component communication is presented on Fig. 7.
To test algorithm’s performance, acquiring of position was
performed. During setting next positions of an end-effector
sensory data is being read and written to file. It’s results are
presented on charts in fig. 8. Test are performed with fixed
velocity of 5 cm/s. Velocity is set as this value as the result
of tests. Set position line is remarkably similar to reached Fig. 8. End-effector’s position
position (solid line). We can observe slight fluctuation during
movement although positioning the error is acceptable. In test
data from rotary sensors was written as well. That presents
movement of arm, in similar manner like in 3D joysticks.
joint’s position achieved during test. Results of measurements
Phantom has steady and durable base, mounted to the ta-
are presented in fig. 9. Process of achieving set position is
ble. Device’s joints have plain bearings and potentiometers.
shown as vertical ups and downs of chart line. Each position
The rotary sensors allow read of joints position and further
was obtained relatively fast, compared to direct operator
usage of collected information. To enable accurate reads of
control using Joystick. This proves usefulness of this manner
achieved angles during operations a multi turn high resolution
of positioning.
potentiometers were used. On the last segment of phantom,
authors created a mounting point for interchangeable pointers
IV. P HANTOM D EVICE
associated with a variety of end effectors, it can be seen on the
Phantom device mimics robotic arm’s kinematics, it is used top of the picture (Fig. 10). Similar to the rover’s robotic arm,
to control the arm. It is also geometrically similar to rover’s a phantom has three main segments. Each one corresponds in
manipulator. This approach allows robot’s operator ease of use its dimension the original. This way the operator can perform
and intuitiveness of operations [5]. Operator can grip pointing manipulations just like he would guide end effectors of rover’s
device, mounted at the end of kinematic chain, and direct manipulator. The pointing device has switches for opening and

1124

Authorized licensed use limited to: T.C. Cumhurbaskanligi Kutuphanesi. Downloaded on December 26,2021 at 21:22:02 UTC from IEEE Xplore. Restrictions apply.
Fig. 10. Phantom render

Fig. 9. Achieved joint’s position of robot arm V. U SAGE

This components will certainly help in performing even the


closing gripper, whenever it’s needed. To collect and interpret most complicated operations. This approach is unique among
sensory data from the device an analog-to-digital converter is Mars rovers that compete in Rover Challenge Series. This
needed. It is possible to use stand-alone modules, fortunately method is also easy-transferable to other solutions, for example
every modern programmable board is equipped with several underwater ROV’s or sapper robots. It also follows common
ones. One of those board is Arduino Leonardo. It has six 10-bit trend in robotics. A main focus of robot’s development is set
ADC’s that are sufficient for precise measurements of joint’s on ease of use and broad accesibility of devices. This way
rotation. It also has serial port, useful for communication many non-strictly technical areas of human activity can be
with Command Centre Application Programmable board has 2 robotized. Authors believe that bringing another computer-
modes implemented. One controls robotic arm directly, second robot interface contributes to that trend.
through end-point navigation. Manipulator direct control mode
receives data frames form Command Centre Application, VI. F UTURE IMPROVEMENTS
ordering certain turns of joint motors in accordance to signals
and measures form a phantom. Its uses same PID controller In the future, authors plan on improving their algorithms
as in inverse kinematics mode, for positioning. This way and devices. They also plan on introducing haptic feedback.
of control is certainly very helpful during operations that This source of information will improve operators ability to
require smooth movement in three dimensions [6, 7]. Different perform even more complex tasks. Given sensory information
algorithm rules point-to-point guiding of the end effectors. about dangerous or unobtainable arm’s positions, its collisions
This mode requires, that operator sets desired points in space, etc. operator will be able to adjust trajectory and avoid
then saves them to Command Centre Application memory. To such situations. It will also drastically reduce complexity
do so phantom’s electronics has to calculate current global of performed operations. This approach will lead towards
coordinates with forward kinematics. Then those coordinates quicker, more precise and intuitive way of performing tests
are being transmitted to the rover where inverse kinematics and experiments in places where human presence is strongly
algorithm directs rover’s arm to determined destination [8]. unadvised or simply dangerous.

1125

Authorized licensed use limited to: T.C. Cumhurbaskanligi Kutuphanesi. Downloaded on December 26,2021 at 21:22:02 UTC from IEEE Xplore. Restrictions apply.
VII. C ONCLUSION
An innovative way to control mars rover’s analogue robotic
arm gives author’s team an advantage over competition during
University Rover Challenge competition. Solution’s usage
fortunately exceeds an original way of control’s performance.
Quick and accurate position change can be observed on an
obtained charts. Discussed approach can also be very useful in
other robotic mobile platforms, equipped with a manipulator.
It not only simplifies arm’s control but also makes it more
natural and intuitive. A virtue worth pursuing during any
device design process.
R EFERENCES
[1] Baka M., Czaplicki P., Kuryło J., Milewski A., Ostaszewski M., Rećko
M., Tołstoj-Sienkiewicz J.; Analog łazika marsjańskiego #Next jako
przykład wszechstronnej robotycznej platformy mobilnej; XX Krajowa
Konferencja: PNEUMA’2015; Białystok 2015; p.39;
[2] Quanquan Liu, Kobayashi Y., Bo Zhang, Fujie M.G.; A novel smart
surgical robotic system with eye-hand coordination for surgical assistance;
IEEE International Conference on Year: 2014; San Diego 2014; p.1175-
1180; DOI: 10.1109/SMC.2014.6974073;
[3] Kung Y.S.,Wu M. K.,Linh B. T. H.,Jung T. H,Lee S. H.,Chen W. C.;
Design of inverse kinematics IP for a six-axis articulated manipulator;
Automatic Control Conference (CACS), 2013 CACS International; p.300
- 305; 2013;
[4] Bojun M., Yongchun F.,Xuebo Z.;Inverse Kinematics Analysis for a
Mobile Manipulator with Redundant DOFs; 26th Chinese Control Con-
ference 2007; Hunan 2007; p.118 - 122;
[5] Praca zbiorowa pod redakcja: Kost G., Świder J.; Programowanie robotów
on- line; Wydawnictwo Politechniki Śla̧skiej; Gliwice 2008;
[6] Gondek L.; Analiza dokładności geometrycznej manipulatorów robotów
przemysłowych; Wydawnictwo Politechniki Krakowskiej; Kraków 2006;
[7] Siemieniako F., Kuźmierowski T.; Wspomagane komputerowo wyz-
naczanie parametrów ruchu efektora manipulatorów; Dział wydawnictw
i poligrafii Politechniki Białostockiej; Białystok 2001;
[8] Reclik D., Kaczmarczyk P.; Zastosowanie mikroprocesorowych ukadów
pomiaru ka̧ta obrotu w budowie fantomu do generowania programów
roboczych robotów FANUC ARCMate 100iB; Pomiary, Automatyka i
Robotyka; Nr 2/2012; p.206-213;

1126

Authorized licensed use limited to: T.C. Cumhurbaskanligi Kutuphanesi. Downloaded on December 26,2021 at 21:22:02 UTC from IEEE Xplore. Restrictions apply.

You might also like