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

Arduinoa Development Toolfor Embedded Systemand IOTChapter

The document discusses Arduino, an open source hardware and software platform used for building electronics projects. It describes the history and components of Arduino boards, the Arduino programming environment, applications of Arduino, and why Arduino is a useful platform for learning and hobbyist/professional projects.

Uploaded by

mythemyaseen6
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
10 views

Arduinoa Development Toolfor Embedded Systemand IOTChapter

The document discusses Arduino, an open source hardware and software platform used for building electronics projects. It describes the history and components of Arduino boards, the Arduino programming environment, applications of Arduino, and why Arduino is a useful platform for learning and hobbyist/professional projects.

Uploaded by

mythemyaseen6
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 16

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/357203278

Arduino a Development Tools for Embedded


System and IOT

Chapter · June 2020

CITATIONS READS

0 237

3 authors, including:

Manoj Kavedia Sahil s Shetye


Thadomal Sahani Engineering College Thadomal Sahani Engineering College
19 PUBLICATIONS 9 CITATIONS 1 PUBLICATION 0 CITATIONS

SEE PROFILE SEE PROFILE

All content following this page was uploaded by Manoj Kavedia on 21 December 2021.

The user has requested enhancement of the downloaded file.


Chapter

2
Arduino a Development Tools for Embedded
System and IOT
Er. Manoj S. Kavedia1 and Er. Snehal V. Bhambhure2
1
Thadomal Shahani Engineering College, Bandra, Maharashtra, India
Phd (EXTC) Reseach Scholar, Shri J.J.T University, Chudela, Rajasthan, India
E-mail: [email protected]
2
Samarth Group of Institution, Belhe, Maharashtra, India
Phd (MBA) Reseach Scholar, Shri J.J.T University, Chudela, Rajasthan, India
E-mail: [email protected]

ABSTRACT
The open sources provide free or low costs, highly reliable and
affordable technology. Today, with increasing number of people using
open source software and hardware devices day after day, technology
is forming a new dimension by making complicated things look
easier and interesting. Main advantages are fast processing and easy
interface. This chapter provides a glimpse of type of Arduino boards,
working principles, software implementation and their applications.
Also bring up the necessity of learning for adults along with the
development of programming skills for students, in order adults and
children to be competitive in a rapidly changing market and business
world.

These days many people try to use the Arduino because it makes
things easier due to the simplified version of C++ and the already
made Arduino Microcontroller (ATmega328 Microcontroller) that
you can programme, erase and reprogramme at any given time. In
this chapter we will discuss the hardware components used in the
Arduino board, the software used to programme it (Arduino board)
with the guide on how to write and construct your own projects, and
a couple of examples of an Arduino project, This will give you the
overall view of an Arduino Uno, that after reading this chapter you
will get the basic concept and use of an Arduino Uno.

Keywords: Arduino boards, learning, business world, Arduino project


18 Software Engineering and Its Applications

INTRODUCTION
Arduino is an open source Microcontroller. In 2005, building upon
the work of Hernando Barragán (creator of Wiring), Massimo Banzi
and David Cuartielles created Arduino, for interactive art design
projects, at the Interaction Design Institute Ivrea in Ivrea, Italy. David
Mellis developed the Arduino software, whose concept was based on
Wiring. Gianluca Martino and Tom Igoe joined the project, and the
five are known as the original founders of Arduino. This platform
was designed to provide an inexpensive and easy way for hobbyists,
students and professionals to create devices that interact with their
environment using sensors and actuators.
Generally many Arduino boards are designed with the AVR(Alf and
Vegard’s RISC) family of 8-bit Microcontroller (MCU or µC) devices
from Atmel Corporation of San Jose, California and designed a self-
contained circuit board with easy-to-use connections. They also
developed bootloader firmware for the Microcontroller, which was
included into a simple integrated development environment (IDE).
The program for Arduino is called as “sketches.” The most fascinating
things about Arduino is the runtime AVR-GCC library that comes
with the Arduino IDE, and the on-board bootloader firmware that
comes preloaded on the Microcontroller of every Arduino board.
This development board can also be used to burn (upload) a new code
to the board by simply using a USB cable to upload.
The Arduino boards entered the electronic market only a couple of
years ago, and were restricted to small scale projects only. People
associated with electronics are now gradually coming up and accepting
the role of Arduino for their own projects. Today Arduino along with
sensors, actuators and other modules is capable of developing projects
ranging from as small as LED pattern generation to complex project
like real time monitoring which can be connected to internet using
wifi or can controlled with Bluetooth, also can work with webpage,
app and send push notification on Twitter.
The first widely distributed Arduino board, the Diecimila, was released
Arduino a Development Tools for Embedded System and IOT 19

in 2007, designed with various types of Atmel AVR MCU devices.


The Due, released in 2012, designed with 32-bit ARM Cortex-M3
processor. Due was not pin and power compatible with Diecimila.
Other boards, like the LilyPad and the Nano, also do not have the
same pinout as the other members of the family, and are intended for
a different range of applications—wearables in the case of the LilyPad;
handheld devices for the Esplora; and compact size in the case of the
Mini, Micro, and Nano.
All Arduino boards are completely open-source, empowering
users to build them independently and eventually adapt them to
their particular needs. The software, too, is open-source, and it is
growing through the contributions of users worldwide. A worldwide
community of makers - students, hobbyists, artists, programmers, and
professionals - has gathered around this open-source platform, their
contributions have added up to an incredible amount of accessible
knowledge that can be of great help to novices and experts alike.

Why Arduino?
1. Active User Community: Arduino user community is very big
which include people from fresher to researcher. These group of
people share their experience work done and those are highly
experience help in solving the problems.
2. Simple, clear programming environment: The Arduino
Software (IDE) is easy-to-use for beginners, and can also be
used at advanced level. Since programming is in c/c++ even
teacher find esay to explain and student who are learning can
write program for Arduino.
3. Growth of Arduino: As the resources, developed libraries
and guidance are shared freely, project development become
economical for hobbyists, students and professionals. Also
freshers and newcomer find easy and perfect for development.
4. Open source and extensible software: The Arduino software
is published as open source tools, available for extension by
experienced programmers. The plans of the Arduino boards are
published under a Creative Commons license, so experienced
20 Software Engineering and Its Applications

circuit designers can make their own version of the module,


extending it and improving it
5. Inexpensive Hardware: Since Arduino is an open source
platform there is no needed to pay for software and only the
cost of buying the board or its modules is incurred, these makes
development cost effective.
6. Arduino Board as a Programmer: To make Arduino board
function easy and also making it available everywhere these
boards come with a USB cable for power requirements as well
as functioning as a programmer.
7. Libraries to do everything: There are huge libraries from simple
to complex are developed which help in writing Arduino sketch
(Program). These libraries range from as simple as handling
relay to complex which can interface Arduino with Bluetooth,
GSM and WIFI.
8. Cross platform Environment: The Arduino IDE is capable of
running on a number of platforms including Microsoft, Linux
and Mac OS X making the user community even larger.
9. Arduino Variants: There are many variety and types of Arduino
boards available, hence developer has flexibility in selecting
board to get perfect solution.
10. Strong Community: There is a big community of smart people
using and working on the IDE to keep it going strong. This is all
because of its affordability and quality.

Arduino Family
Since 2005 with the development of Arduino board have came up
with new versions, different processors, with increased memory,
multiple feature I/O and many of them have same pinout. Also with
the same pinout Shields i.e. add-on boards developed for sensor, relay,
GSM etc. to make development more easier and versatile. Table 1 lists
the Arduino types that have appeared since 2005. The newer versions
of the Arduino will also run most of the sketches created for older
models, with minor tweaks and newer libraries, but sketches written
for the latest versions may or may not work with older models.
Arduino a Development Tools for Embedded System and IOT 21

As you can see, the years 2007 and 2008 saw the introduction of the
LilyPad; the small form-factor boards like the Nano, Mini, and Mini
Pro; These development some refinements in the power supply, also
automatic switch over between USB power and an external DC (direct
current) power supply.
Table 1: Type of Arduino

Board name Year Microcontroller Board name Year


Diecimila 2007 ATmega168V Mega 2560 2010
ATmega168V/
LilyPad 2007 Uno 2010
ATmega328V
Nano 2008 ATmega328/ATmega168 Ethernet 2011
Mini 2008 ATmega168 Mega ADK 2011
Mini Pro 2008 ATmega328 Leonardo 2012
Duemilanove 2008 ATmega168/ATmega328 Esplora 2012
Mega 2009 ATmega1280 Micro 2012
Fio 2010 ATmega328P Yún 2013

Comparison of Mostly Used Arduino Board


Table 2: Comparison of Arduino Board
22 Software Engineering and Its Applications

Arduino Shields
Arduino Shields are add-on board with complex hardware developed
on board which reduces the complexity and problems associated
with interfacing. These make development easy and faster. Other
than reducing burden of interfacing, these shields are also have
programming libraries associated with them. These libraries allow
you to easily implement the hardware features available on the shield.
There are shields for all types of things – LCD shields, LED matrix
shields, wifi and bluetooth shields, motor shields, power supply
shields, GSM. GPRS shields, stepper motor Shield, SD card Shield and
many more. May be if you need to do something different, there may
bea shield exists to get it done. Shields plug right into the top of an
Arduino. The black plastic rows of holes along the sides of an Arduino
are called headers, and on the bottom of a shield, there male header
of metal, called as called pins. The pins on a shield line up with the
header rows on an Arduino and fit in to it.

Arduino Uno Board


The Uno is a great for beginners who are experimenting with Arduino
and also experience developer enjoy development with Arduino. It
also works with almost every shield available. It has 14 digital input/
output, 6 analog inputs, a USB connection, a power jack, a reset button,
supports for I2C and SPI communication, Arduino Uno has 32 KB of
memory. It comes with 2 KB of SRAM and 1 KB of EEPROM and
more. It contains everything needed to support the Microcontroller;
simply connect it to a computer with a USB cable or power it with an
AC-to- DC adapter or battery to get started.

Board Details
Description of Components on Arduino Board and it functions.
Shown in Fig. 1.
1. Reset Button – To restart any code that is uploaded to the
Arduino board.
Arduino a Development Tools for Embedded System and IOT 23

2. AREF – “Analog Reference” for setting an external reference


voltage used for ADC.
3. Ground Pin – Ground pins on the Arduino and all are working
in same way.

Fig. 1. Arduino Board Fig. 2: Power Source

4. Digital Input/Output – Pins 0-13 can be used for digital input


or output.
5. PWM – The pins marked with the (~) symbol can simulate
analog output, Pulse Width Modulation.
6. USB Connection – For supplying power to your Arduino and
uploading sketches.
7. TX/RX – Transmit and receive data indication LEDs.
8. ATmega Microcontroller – This is the brains and is where
the programs are stored and processed. It Operates at 16Mhz
Frequency.
9. Power LED Indicator – Indicate that proper supply is available
to Arduino Board.
10. Voltage Regulator – Controls the amount of voltage going into
the Arduino board.
11. DC Power Barrel Jack – Used for powering your Arduino with
a power supply
12. 3.3V Pin – Supplies 3.3 volts of power to your projects like
WIFI.
24 Software Engineering and Its Applications

13. 5V Pin – This pin can be used to supply 5 volts of power to


projects.
14. Ground Pin – Ground pins on the Arduino and all are working
in same way.
15. Analog Pins – These pins can read the signal from an analog
sensor and convert it to digital.

Powering Arduino Uno Board


Arduino Uno Boards can be powered up in variety of ways using USB
cable, 9V battery pack and Using AC Adapters shown in Fig. 2.

Clones of Arduino
A “clone” is sometimes called counterfeit and vice versa, but since
the two words are sometimes interchanged. Although there are many
official Arduino Microcontrollers, lots of Arduino IDE-compatible
devices exist. But its still it’s worth using an Arduino clone. Essentially,
these Microcontrollers retain compatibility with the open-source
Arduino IDE, or integrated development environment. Diavolino,
Lilypad Arduino, Freeduino, Node MCU, Teensy, SunFounder,
SainSmart, Eleego, Netduino and list is endless.

Arduino Installation and Testing


The Arduino programming language is based on a very simple
hardware programming language called processing, which is similar
to the C language. Arduino program is called as Sketch. After the
sketch is written in the Arduino IDE, it should be uploaded on the
Arduino board for execution. Following are the steps in development.

™™ STEP 1 - Select appropriate Arduino for the projects.


™™ STEP 2 - Download the Arduino IDE from official site
(https://www.Arduino.cc/en/main/software)
Arduino a Development Tools for Embedded System and IOT 25

Fig. 3: Downloading and Unzipping Arduino Software

™™ STEP 3 – Installation and Launch of IDE: Install the Arduino


Programmer, aka the integrated development environment
(IDE).

Fig. 4: Launching Arduino IDE

™™ Step 4 - Open your first project.


26 Software Engineering and Its Applications

Fig. 5: Creating New File for Sketch

™™ STEP 5 – Connecting Arduino Uno to Port: Connect your


Arduino to the USB port of your computer with a specific
USB cable.

Fig. 6: Serial Port Setting

™™ STEP 6 – Board Setting: Set the board type and the serial
port in the Arduino Programmer. It is available in Tools->
Board type and Tools->Port Menu.
Arduino a Development Tools for Embedded System and IOT 27

Fig. 7: Board setting

™™ STEP 7 - Testing of Arduino: Testing of Arduino board can


be done with the help of Preloaded LED blinking program.
Open blink sketch from example in file menu. Press the
upload button to load it. With the LED connected to pin 13
of Arduino will start blinking.

Fig. 8. Testing Code for Arduino


28 Software Engineering and Its Applications

™™ STEP 8 - Uploading New Sketch: To upload new code to the


Arduino, you can write fresh new code or it may modified
version of the codes available from examples.

Fig. 9: Tool Bar of Arduino IDE

™™ A − Used to check if there is any compilation error.


™™ B − Used to upload a program to the Arduino board.
™™ C − Shortcut used to create a new sketch.
™™ D − Used to directly open one of the example sketch.
™™ E − Used to save your sketch.
™™ F − Serial monitor used to receive serial data from the board
and send the serial data to the board.
Now, simply click the “Upload” button in the environment. Wait a few
seconds; you will see the RX and TX LEDs on the board, flashing. If
the upload is successful, the message “Done uploading” will appear in
the status bar.
Note − If you have an Arduino Mini, NG, or other board, you need
to press the reset button physically on the board, immediately before
clicking the upload button on the Arduino Software.
STEP 9 - Operate as Independent project once you’ve uploaded the
new sketch to your Arduino, disconnect it from your computer and
integrate it into your project as needed and it can powered by the
sources discussed above.
Arduino a Development Tools for Embedded System and IOT 29

Section in Arduino Sketch


An Arduino sketch usually has five parts:
1. A header describing the sketch and its author;
2. A section defining variables;
3. A setup routine that sets the initial conditions of variables and
runs preliminary code;
4. A loop routine, which is where you add the main code that will
execute repeatedly until you stop running the sketch; and
5. A section where you can list other functions that activate during
the setup and loop routines. All sketches must include the setup
and loop routines.

Tools for Development with Arduino


Other than Arduino IDE following are the tools that can be used for
project development with Arduino.
1. Firitzing: In the spirit of the development of processing and
Arduino microcontroller, University of Potsdam has developed
a very interesting platform called Fritzing. Fritzing is open-
source EDA software for people who are not engineers. The
perfect tool for designers, inventors, hobbyists and educators
for creating a prototype or even making PCB.
2. Visiuno: Visuino is the latest innovative software from Mitov
Software. A visual programming environment allowing you to
program your Arduino boards.
3. XOD: XOD is a designed to simplify programming. It takes
common Arduino hardware, control structures, and logic and
represents them with blocks called nodes. These nodes can then
be linked together to design projects to control hardware such
as LEDs, servos, motors, and much more
4. Tinkercad: Tinkercad is a free, easy-to-use app for 3D design,
electronics, and coding. It›s used by teachers, kids, hobbyists,
and designers to imagine, design, and make anything!
5. Scratch: Arduino. Arduino is a small prototyping board used
to bring your ideas to life. Using Arduino, one can make a
30 Software Engineering and Its Applications

robot, an electronic gadget, and many other things. One such


program is mBlock, which allows one to use the Scratch visual
programming language with an Arduino.

Advantages of Arduino Technology


™™ It is cheap
™™ It comes with an open supply hardware feature that permits
users to develop their own kit
™™ The software of the Arduino is well-suited with all kinds of in
operation systems like Linux, Windows, and Macintosh, etc.
™™ It also comes with open supply software system feature that
permits tough software system developers to use the Arduino
code to merge with the prevailing programming language
libraries and may be extended and changed.
™™ For beginners, it is very simple to use.

Applications
Arduino Uno R3 is most widely used controller along with its vast
community who have created thousands of projects and libraries.
Arduino Uno is used in Do-it-Yourself projects prototyping. Arduino
Uno can be used in code based control, Automation, Healthcare,
agricultural, wireless sensor network for collecting data etc.

CONCLUSION
In this chapter we have studies about Arduino, variation, types, clones
of Arduino. We understood the working principle of an Arduino Uno
along the hardware and software of the Arduino. We have studies
how install Arduino software, interface Arduino hardware and how
to test the Arduino with built in code. We saw the application are of
Arduino and different tool which can help development on Arduino
from simple hobbyist who don’t know coding till person who can
write complex code using IDE. Applications are from wearable
fashion to space research, the possibilities of using an Arduino to
learn and develop new ideas is infinite. Hence Arduino can be used
Arduino a Development Tools for Embedded System and IOT 31

as development tool from simple project to applications based on


embedded system and IOT.

REFERENCES
1. Minns, P. D. 2013. C Programming for the PC the MAC and
the Arduino Microcontroller System. Author House.
2. Margolis, M. 2011. Arduino cookbook. “O’Reilly Media,
Inc.”.
3. Mellis, D., Banzi, M., Cuartielles, D. and Igoe, T. “Arduino:
An open electronic prototyping platform,” in Proc. CHI, vol.
2007, 2007.
4. “Intro to arduino,” January 2014.
5. Banzi, M. 2009. Getting Started with arduino. “O’Reilly
Media, Inc.”.
6. ARDUINO.CC, “Arduino – Introduction”, 2015 [Online]
Available: http://arduino.cc/en/Guide/Introduction.
[Accessed: 25- Feb - 2015].
7. Brodkin, J. 2015. ‘11 Arduino projects that require major
hacking skills—or a bit of insanity’, ArsTechnica, 2013.
[Online]. Available: http://arstechnica.com/information-
technology/2013/05/11-arduino projects-that-require-major-
hacking-skills-or-a-bit-of-insanity/2/.
8. Badamasi, Y.A. 2014. “The working principle of an Arduino,”
in Electronics, Computer and Computation (ICECCO), 2014
11th International Conference on, vol., no., pp.1-4, Sept. 29
2014-Oct. 1.
9. Arduino. 2017. Site oficial. Disponívelem: <https://www.
arduino.cc>acessoem 28/09/2017
10. Gibb, A.M. 2010. New media art, design, and the Arduino
microcontroller: A malleable tool. PhD thesis, Pratt Institute.

View publication stats

You might also like