AD ALTA
JOURNAL OF INTERDISCIPLINARY RESEARCH
SYSTEMATIC LITERATURE REVIEW: PROGRAMMING OF MICRO-ROBOTS ON THE BASIS
OF ARDUINO
a
ZHANAT NURBEKOVA,
b
TALANT TOLGANBAIULY,
c
BAHYT NURBEKOV,
d
KALIMA TUENBAEVA
a,b,c
L.N. Gumilyov Eurasian National University, 010008, 2
Satpayev Str., Nur-Sultan, Kazakhstan
d
Al-Farabi Kazakh National University, 050040, 71 Al-Farabi
Ave.., Almaty, Kazakhstan
email:
a
zhanat_n@mail.ru,
b
talant.kz@mail.ru,
c
b_zh_nur@mail.ru,
d
kalima_t@mail.ru
Abstract: Modern technology is developing at a high speed and is being practically
implemented in all areas of our lives. At the same time, the requirements of employers
are growing, in order to keep pace with the time; students need to study diligently, to
develop themselves, especially in the field of computer science and engineering. Over
the past few years, in training in engineering areas most universities in the world are
actively using Arduino platform to motivate students to learn, develop skills of
teamwork and the application of knowledge in practice. In this paper, the state of
research in this subject has been analyzed, and a literature review has been conducted.
This work is a theoretical and methodological basis for further research.
Keywords: programming, Arduino, micro-robots, robotics, board, software products.
1 Introduction
Currently, there are many microcontrollers and platforms for the
management of physical processes in relation to microprocessor
systems. Most of these devices combine disparate programming
information into an easy-to-use assembly. The Arduino
Company (Italy), in turn, also simplifies the process of working
with microcontrollers, but provides a number of advantages over
other devices because of the simple and understandable
programming environment, low price and a variety of expansion
boards. For teachers, students, and amateurs, the Arduino
platform can be a key element for research and problem solving
in the fields of mechatronics and robotics.
Arduino is a tool for designing electronic devices that interact
more tightly with the physical environment than ordinary
personal computers, which do not actually go beyond virtuality.
It is a platform designed to manage physical processes using an
ECM with opensource code, built on a simple PCB with a
modern environment for writing software. Arduino boards are
built on the basis of Atmel microcontrollers, as well as binding
elements for programming and integration with other circuits
(Table 1). Linear voltage regulator +5V or +3.3 V is located on
the board. Timing is carried out at frequencies of 8, 16 or 87
MHz by crystal oscillator. The microcontroller is pre-flashed
with boot loader, so that an external programmer is not needed.
At the conceptual level, the weight of a board is programmed
through A5-232. The Arduino integrated development
environment is a cross-platform Java application that includes a
code editor, a compiler, and a firmware transfer module to the
board. The development environment is based on the
programming language Processing and is designed for
programming by beginners who are not familiar with software
development. Strictly speaking, it is a C++ language,
supplemented by some libraries. The programs are processed
using a pre-processor and then copied using AVR-GCC. The
advantages of Arduino family boards:
1.
A large number of available options in the line of Arduino
with the ability to select the most suitable ready-made
controller from a large list of devices that have a wide
range of variable parameters.
2.
The presence of expansion boards designed to increase the
functionality and perform specific technical tasks without
the need for self-design of additional peripherals (motor
control board s, sensor board s, wireless interfaces,
displays, input devices) - several dozen types, more than
300 versions.
3.
The programming environment that is fully adapted for the
end user and is suitable for the entire line of Arduino board
s and their clones, including software for programming
controllers for Android.
4.
The free license for devices and software.
5.
There is a full Russian translation of the Arduino language,
designed to overcome the language barrier in the
distribution of the platform in Russia.
Arduino Uno is a controller built on ATmega328. The platform
has 14 digital in/out (6 of which can be used as PWM outputs), 6
analog inputs, 16 MHz crystal oscillator, a USB connector, a
power connector, an ICSP connector and a reset button. For the
work it is necessary to connect the platform to a computer via a
USB cable or power it with adapter AC/DC or batteries.
Because of the technical equipment, the Arduino platform is
ideally suited for the educational process of designing various
mechatronic systems and robots (1) due to the clear
programming environment and the ability to observe physical
processes in real time. More powerful Arduino boards (Due) are
applicable for solving complex technical problems related to the
development of large projects and their complex automation (2).
When power is supplied to the Arduino controller, execution of
the program that was downloaded into it automatically begins,
and if the program is missing or written incorrectly, a failure
occurs, which either stops the execution of commands or causes
the program hang-up. The number of the on-going program is
stored in a special memory cell, which is called the command
counter.
The programming language used in Arduino projects is based on
C++. It is one of the most widely used programming languages,
which supports both low-level commands and the construction
of complex objects (3).
Electronic components, their operation, connection and
programming are studied on the Arduino platform. Programming
is carried out in the Arduino IDE in C++ (with some
modifications). Having received basic knowledge of electronic
components management, trainees implement creative projects,
the complexity and functionality of which are limited only by the
imagination of the author.
Arduino allows students to get acquainted with the world of
electronics, to understand the principles of electronic
components, to see many different sensors and devices unusual
for them. Projects created on this platform can be used at home
for the purpose intended (for example, automation of household
appliances), which is an additional motivation to study. Classes
in robotics based on Arduino contribute to the development of
polytechnic competencies that are necessary in modern
professional activities in the area of automation and IT (4).
Using this platform for educational institutions allows
developing the programming skills in practice, as well as learns
the basics of circuitry engineering (5).
A systematic review of the literature on this topic revealed the
strengths of the use of Arduino as an auxiliary tool in the
training of students of engineering profile of special disciplines
in the design of micro-robots.
The effectiveness of teaching the basics of robotics depends on
the organization of classes conducted using the following
methods: Explanatory and illustrative presentation of
information in various ways (explanation, narration,
conversation, instruction, demonstration, work with
technological maps, etc.); Heuristic method of creative activity
(formation of creative models, etc.) Problem method is the
formulation of the problem and the independent search for its
solution by students; Programmed method is a set of operations
- 344 -