Nothing Special   »   [go: up one dir, main page]

Seminar Report

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 33

Narmada College of Science & Commerce,

Zadeshwar, Bharuch

Veer Narmad South Gujarat University, Surat.

A SEMINAR REPORT
ON
“<<ARDUINO>>”

As A Partial Requirement for Degree Of

Bachelor of Computer Application (B.C.A.)


Third Year (6th Semester)
YEAR 2019 - 2020

Submitted By:
<<Parmar Hetvi Ghanshyamsinh>>

Page 1 of 33
NARMADA COLLEGE OF SCIENCE AND COMMERCE
ZADESHWAR, BHARUCH (GUJARAT) 392011.
(Affiliated to Veer Narmada South Gujarat University, Surat)

CERTIFICATE

This is to certify that Parmar Hetvi Ghanshyamsinh ( Exam No: 77) student of
T.Y. B.C.A. - 6th Semester, Narmada College of Science and Commerce,
Zadeshwar, Bharuch have completed his/her seminar report on “Arduino” as
partial fulfillment of the degree of Bachelor of Computer Application from Veer
Narmada South Gujarat University for the academic year 2019-2020.The Seminar
was conducted under the guidance of Ms. Shreya jain.

Ms. Shreya jain (Ms. A.D. Prabhakumari)


H.O.D, Department of Computer Science,
Internal guide Narmada College Of Science Commerce,
Zadeshwar, Bharuch

Date:08-04-2020

Page 2 of 33
ABSTRACT

This is a seminar report about Arduino board and programming environment. It contains basic
working of Arduino, different types of Arduino boards, interfacing with Arduino programming
environment, how to program, basic instructions regarding that and interfacing of a few sensors
is shown in the content. Outcome of this seminar is learning to program in arduino environment
and understanding concepts behind its working, interfacing different sensor modules with
Arduino is also included. This seminar report will help you in making your project much easier
by using Arduino.

Arduino UNO is the most commonly used Microcontroller board designed by arduino.cc in Italy.
I really admired the idea as they have kept everything open source. You can design its libraries
for different sensors etc.

IDE stands for “Integrated Development Environment” :it is an official software introduced by
Arduino.cc, that is mainly used for editing, compiling and uploading the code in the Arduino
Device. Almost all Arduino modules are compatible with this software that is an open source and
is readily available to install and start compiling the code on the go. In this article, we will
introduce the Software, how we can install it, and make it ready for developing applications
using Arduino modules. we introduce some simulators for this interesting microcontrollers
development tools. It is easy to use and learn.

This seminar report will help you to understand that how machines and programmings are
complements of each other.

Page 3 of 33
ACKNOWLEDGEMENT

First of all, I am indebted to the GOD ALMIGHTY for giving me an


opportunity to excel in my efforts to complete this seminar on time.

I am extremely grateful to Dr. Bhaskar M Rawal, Principal, Narmada College


Of Science & Commerce and Ms. A.D Prabhakumari HOD, Head of
Department, Department of Information Technology, for providing all the
required resources for the successful completion of my seminar.

My deep sense of gratitude to my seminar guide Prof. Shreya Jain, for her
valuable suggestions and guidance in the preparation of the seminar report.

I express my thanks to Lecturers, Assistant Professor, and all staff memberss for all
the help and co-ordination extended in bringing out this seminar successfully in
time.

I will be failing in duty if I do not acknowledge with grateful thanks to the authors
of the references and other literatures referred to in this seminar.

Last but not the least; I am very much thankful to my parents who guided me in
every step which I took.

Thanking You Submitted by:


Hetvi Parmar

Page 4 of 33
TABLE OF CONTENTS

I Abstract 1
II Acknowledgment 2
III Table of Contents 3

Chapter Topic Page No


No
1 Introduction
1.1 Introduction to arduino
1.2 History Related to arduino
2 About the Arduino
2.1 Architecture Used
2.2 Technology Used
2.3 Topic Relevance with the Computer Field
3 Implementation Details
3.1 Implementation Details
3.2 Working of the technology used ( of Algorithm
if used)
3.3 Areas of Current Usage
3.4 Advantages of the arduino
4 Limitation if Any
5 Conclusion
6 References

1. INTRODUCTION
Page 5 of 33
1.1 INTRODUCTION TO ARDUINO:
 Arduino is  an Italian company that  designs and manufactures Open Source
Hardware (Microcontroller) and Open Source software or  IDE (Integrated
Development Environment).

Arduino is an open-source hardware and software company, project and user community that


designs and manufactures single-board microcontrollers and microcontroller kits for building
digital devices. Its products are licensed under the GNU Lesser General Public License (LGPL)
or the GNU General Public License (GPL),permitting the manufacture of Arduino boards and
software distribution by anyone. Arduino boards are available commercially in preassembled
form or as do-it-yourself (DIY) kits.

Arduino board designs use a variety of microprocessors and controllers. The boards are equipped
with sets of digital and analog input/output (I/O) pins that may be interfaced to various
expansion boards ('shields') or breadboards (For prototyping) and other circuits. The boards
feature serial communications interfaces, including Universal Serial Bus (USB) on some models,

Page 6 of 33
which are also used for loading programs from personal computers. The microcontrollers can be
programmed using C and C++ programming languages. In addition to using
traditional compiler toolchains, the Arduino project provides an integrated development
environment (IDE) based on the Processing language project.

The Arduino project started in 2005 as a program for students at the Interaction Design Institute
Ivrea in Ivrea, Italy, aiming to provide a low-cost and easy way for novices and professionals to
create devices that interact with their environment using sensors and actuators. Common
examples of such devices intended for beginner hobbyists include
simple robots, thermostats and motion detectors.

The name Arduino comes from a bar in Ivrea, Italy, where some of the founders of the project
used to meet. The bar was named after Arduin of Ivrea, who was the margrave of the March of
Ivrea and King of Italy from 1002 to 1014.
4

open source
software

Page 7 of 33
 Arduino hardware is such a programmable  computering plateform  , by working on
which the user can combine the hardware and software and prepare the electronic brain
according to his own and can control the electronic devices from that electronic brain. 

WHAT EXACTLY ARDUINO IS ?

 If you want to understand more easily, then we can say that  Arduino  microcontroller is


an empty brain, in which   you can upload memory by coding or programming
through arduino software, so these are called open source. 

 Arduino  works like a cpu of a board computer. Right now  the microcontroller of


the arduino of this time  that we can take up is like a small mobile phone, these old time
computers which needed a very big room to keep, Arduino  's small microcontroller
board is many times better than those computers.  Computering Plateform.

Page 8 of 33
 These microcontroller can read the sensor and write the same value i.e. we can tell it like
a thermometer which senses the temprature display on decimal display print
mirocontroller.

Arduino Software
A program for Arduino hardware may be written in any programming language with compilers
that produce binary machine code for the target processor. Atmel provides a development
environment for their 8-bit AVR and 32-bit ARM Cortex-M based microcontrollers: AVR Studio
(older) and Atmel Studio (newer).

Screenshot of Arduino IDE showing Blink program

Page 9 of 33
Written in Java, C, C++

Operating system Windows, macOS, Linux

Type Integrated development environment

IDE

The Arduino integrated development environment (IDE) is a cross-platform application


(for Windows, macOS, and Linux) that is written in the programming language Java. It
originated from the IDE for the languages Processing and Wiring. It includes a code editor with
features such as text cutting and pasting, searching and replacing text, automatic indenting, brace
matching, and syntax highlighting, and provides simple one-click mechanisms to compile and
upload programs to an Arduino board. It also contains a message area, a text console, a toolbar
with buttons for common functions and a hierarchy of operation menus. The source code for the
IDE is released under the GNU General Public License, version 2.

The Arduino IDE supports the languages C and C++ using special rules of code structuring. The
Arduino IDE supplies a software library from the Wiring project, which provides many common
input and output procedures. User-written code only requires two basic functions, for starting the
sketch and the main program loop, that are compiled and linked with a program stub main() into
an executable cyclic executive program with the GNU toolchain, also included with the IDE
distribution. The Arduino IDE employs the program avrdude to convert the executable code into
a text file in hexadecimal encoding that is loaded into the Arduino board by a loader program in
the board's firmware.

Pro IDE

On October 18th, 2019, Arduino Pro IDE (alpha preview) was released. The system still uses
Arduino CLI (Command Line Interface), but improvements include a more professional
development environment, autocompletion support, and Git integration.The application frontend

Page 10 of 33
is based on the Eclipse Theia Open Source IDE. The main features available in the alpha release
are:

 Modern, fully featured development environment


 Dual Mode, Classic Mode (identical to the Classic Arduino IDE) and Pro Mode (File
System view)
 New Board Manager
 New Library Manager
 Board List
 Basic Auto-Completion (Arm targets only)
 Git Integration
 Serial Monitor
 Dark Mode

Sketch

A sketch is a program written with the Arduino IDE. Sketches are saved on the development
computer as text files with the file extension .ino. Arduino Software (IDE) pre-1.0 saved
sketches with the extension .pde.

A minimal Arduino C/C++ program consists of only two functions:

 setup() : This function is called once when a sketch starts after power-up or reset. It is
used to initialize variables, input and output pin modes, and other libraries needed in the

sketch. It is analogous to the function  main() .

 loop() : After  setup()  function exits (ends), the  loop()  function is executed repeatedly in
the main program. It controls the board until the board is powered off or is reset. It is analogous
to the function  while(1) .

Page 11 of 33
Blink example

Most Arduino boards contain a light-emitting diode (LED) and a current limiting resistor
connected between pin 13 and ground, which is a convenient feature for many tests and program
functions. A typical program used by beginners, akin to Hello, World!, is "blink", which
repeatedly blinks the on-board LED integrated into the Arduino board. This program uses the

functions  pinMode() ,  digitalWrite() , and  delay() , which are provided by the internal libraries
included in the IDE environment.[64][65][66] This program is usually loaded into a new Arduino
board by the manufacturer.

Power LED (red) and User LED (green) attached to pin 13 on an Arduino compatible board

#define LED_PIN 13 // Pin number attached to LED.

void setup() {
pinMode(LED_PIN, OUTPUT); // Configure pin 13 to be a digital output.
}

void loop() {
digitalWrite(LED_PIN, HIGH); // Turn on the LED.
delay(1000); // Wait 1 second (1000 milliseconds).
digitalWrite(LED_PIN, LOW); // Turn off the LED.
delay(1000); // Wait 1 second.
}

Page 12 of 33
1.2 HISTORY OF ARDUINO

The Arduino project was started at the Interaction Design Institute Ivrea (IDII) in Ivrea, Italy. At
that time, the students used a BASIC Stamp microcontroller at a cost of $50, a considerable
expense for many students. In 2003 Hernando Barragán created the development
platform Wiring as a Master's thesis project at IDII, under the supervision of Massimo Banzi
and Casey Reas. Casey Reas is known for co-creating, with Ben Fry,
the Processing development platform. The project goal was to create simple, low cost tools for
creating digital projects by non-engineers. The Wiring platform consisted of a printed circuit
board (PCB) with an ATmega168 microcontroller, an IDE based on Processing and library
functions to easily program the microcontroller.[4] In 2005, Massimo Banzi, with David Mellis,
another IDII student, and David Cuartielles, added support for the cheaper ATmega8
microcontroller to Wiring. But instead of continuing the work on Wiring, they forked the project
and renamed it Arduino.

The initial Arduino core team consisted of Massimo Banzi, David Cuartielles, Tom Igoe,
Gianluca Martino, and David Mellis, but Barragán was not invited to participate.

Following the completion of the Wiring platform, lighter and less expensive versions were
distributed in the open-source community.

It was estimated in mid-2011 that over 300,000 official Arduinos had been commercially
produced,[5] and in 2013 that 700,000 official boards were in users' hands.

In October 2016, Federico Musto, Arduino's former CEO, secured a 50% ownership of the
company. In April 2017, Wired reported that Musto had "fabricated his academic record.... On
his company's website, personal LinkedIn accounts, and even on Italian business documents,
Musto was until recently listed as holding a PhD from the Massachusetts Institute of
Technology. In some cases, his biography also claimed an MBA from New York University."
Wired reported that neither university had any record of Musto's attendance, and Musto later
admitted in an interview with Wired that he had never earned those degrees.

Around that same time, Massimo Banzi announced that the Arduino Foundation would be "a
new beginning for Arduino." But a year later, the Foundation still hasn't been established, and
the state of the project remains unclear.

Page 13 of 33
The controversy surrounding Musto continued when, in July 2017, he reportedly pulled
many Open source licenses, schematics, and code from the Arduino website, prompting scrutiny
and outcry.

In October 2017, Arduino announced its partnership with ARM Holdings (ARM). The


announcement said, in part, "ARM recognized independence as a core value of Arduino ...
without any lock-in with the ARM architecture.” Arduino intends to continue to work with all
technology vendors and architectures.

Trademark dispute

In early 2008, the five co-founders of the Arduino project created a company, Arduino LLC,
[12]
 to hold the trademarks associated with Arduino. The manufacture and sale of the boards was
to be done by external companies, and Arduino LLC would get a royalty from them. The
founding bylaws of Arduino LLC specified that each of the five founders transfer ownership of
the Arduino brand to the newly formed company.

At the end of 2008, Gianluca Martino's company, Smart Projects, registered the Arduino
trademark in Italy and kept this a secret from the other co-founders for about two years. This was
revealed when the Arduino company tried to register the trademark in other areas of the world
(they originally registered only in the US), and discovered that it was already registered in Italy.
Negotiations with Gianluca and his firm to bring the trademark under control of the original
Arduino company failed. In 2014, Smart Projects began refusing to pay royalties. They then
appointed a new CEO, Federico Musto, who renamed the company Arduino SRL and created the
website arduino.org, copying the graphics and layout of the original arduino.cc. This resulted in
a rift in the Arduino development team.

In January 2015, Arduino LLC filed a lawsuit against Arduino SRL.

In May 2015, Arduino LLC created the worldwide trademark Genuino, used as brand name
outside the United States.

At the World Maker Faire in New York on 1 October 2016, Arduino LLC co-founder and CEO
Massimo Banzi and Arduino SRL CEO Federico Musto announced the merger of the two
companies.

Page 14 of 33
By 2017 Arduino AG owned many Arduino trademarks. In July 2017 BCMI, founded by
Massimo Banzi, David Cuartielles, David Mellis and Tom Igoe, acquired Arduino AG and all
the Arduino trademarks. Fabio Violante is the new CEO replacing Federico Musto, who no
longer works for Arduino AG.

Page 15 of 33
2. ABOUT THE ARDUINO
2.1 ARDUINO ARCHITECTURE

Basically, the processor of the Arduino board uses the Harvard architecture where the program
code and program data have separate memory. It consists of two memories such as program
memory and data memory. Wherein the data is stored in data memory and the code is stored in
the flash program memory. The Atmega328 microcontroller has 32kb of flash memory, 2kb of
SRAM  1kb of EPROM and operates with a 16MHz clock speed.

Arduino Architecture

The processor of the Arduino Board uses Harvard Architecture for which the program code and
program data have separate memory. The memory of it is divided into two namely program
memory and data memory. The data will be stored in the data memory whereas the programme
code will be stored in the flash program memory.

For ex; The Atmega328 microcontroller has 32kb of flash memory, 2kb of SRAM, 1kb of EPROM
and operates at 16MHz clock speed. Some of the other basic functions of Arduino are:

Page 16 of 33
 Digital read pin reads the digital value of the given pin.
 Digital write pin is used to write the digital value of the given pin.
 Pin mode pin is used to set the pin to I/O mode.
 Analog read pin reads and returns the value.
 Analog write pin writes the value of the pin.
 Serial. Begins pin sets the beginning of serial communication by setting the rate of bit.

Pirinted Board-

 It converts all the circuit part of the arduino into a circuit board. All the componets are
made together to make the arduino printed circuit board. USB connection-

 Through this Arduino software can upload the code / program written in the computer to
the arduino board and it works to give power to the arduino board. 

Page 17 of 33
GND Pin-

 This pins is a short form of GND Ground, it reduces the ground for external circuit for
another terminal.

5volt power supply -

 This pin is used to provide power supply to the entire circuit and another similar pin is
3.3volt which gives power supply of 3.3 volt to the circuit.

Page 18 of 33
Analog pin-

 These pins are from A0 to A5 in Arduino uno i.e. total six pins, these are analog analog
input pins like an analog sensor like potentiometer, temprature sensor etc. Can read or
sense and convert the received value to digital value or signal 

Digital pin-

 The digital pin outputs from the arduino board ranges from 0 to 13 from which it outputs
and outputs to all output components such as servo motor, lcd display, led etc.  15

Page 19 of 33
PWM pin-

 pwm ie pulse width modulation pin this pin is pwm sign (~) in arduino uno it is
3,5,6,10,11 this is a type of output that is received after input from analog sensor Comes.

Page 20 of 33
Reset button-

 This is a very usefull button of arduino which when pressed or pushed, our uploaded code
or program is reset and run / start again if we have written our code / program in the void
loop then the arduino board gets power only. Once run, but after reset button press, the
program will run once again, in such a situation, we will not need to give power cut to
check / test the program again and remove the usb cable and re-install it.     

Page 21 of 33
2.2 Arduino Technology

A typical example of the Arduino board is Arduino Uno.It includes an ATmega328


microcontroller and it has 28-pins

The pin configuration of  the Arduino Uno board is shown in the above. It  consists of 14-digital
i/o pins. Wherein 6 pins are used as pulse width modulation o/ps and 6 analog i/ps, a USB
connection, a power jack, a 16MHz crystal oscillator, a reset button,  and an ICSP header.
Arduino board can be powered either from the personal computer through a USB or external
source  like a battery or an adaptor. This board can operate with an external supply of 7-12V by
giving voltage reference through the IORef pin or through the pin Vin.

Page 22 of 33
3. Implementation Details
3.1 IMPLEMENTATION DETAILS

The Arduino Nano is the driving element of all the sensors in the transmitter section. It controls
the functioning of the other elements, gathers the data from them, processes the data and also
transmits it to the receiver section. The Arduino acts like the brain of the entire circuit. Now let’s
see how the other components are configured to the Arduinonano on the transmitter section. Pin
Configuration of the transmitter section Battery The Arduino and the other components are
powered by the battery source, which is connected to the Vin(+ve terminal of battery) and GND
of the Arduino respectively Capacitive switch The capacitive switch is powered by connecting
the Vccto the common Vcc of the transmitter circuit andGND pin to the common GND of the
circuit. The digital data out pin of the capacitive switch is connected to the DIGITAL pin D3.

Fig 1.Capacitive switch

Alcohol Sensor The alcohol sensor is powered by connecting the Vccto the common Vcc of the
transmitter circuit and GND pin to the common GND of the circuit. The analog data out pin of
the alcohol sensor is connected to the ANALOG pin A0.

Page 23 of 33
Fig.2. Alcohol Sensor

NRF24L01
The NRF24L01 wireless module of the transmitter section is connected to the Arduino Nano by
connecting the following respective pins of both boards.

S.NO PINS OF ARDUINO PINS OF NRF24L01


1 3.3V VCC
2 Common GND GND
3 7 CE
4 8 CSN
5 11 MOSI
6 12 MISO
7 13 SCK
Table 1. Pin configuration of the NRF24L01 connected with the Arduino NANO/UNO

The common ground of the entire circuit is connected to the remaining GND pin on the Arduino
board and the common Vcc of the entire circuit is connected to the 5V pin of the Arduino board.

Receiver Configuration
Arduinouno controls the operation of the motor, which we show to mimic the operational state
of the bike.

Page 24 of 33
Fig.3. Arduino Uno

Battery
The Arduinouno is powered by the battery source, wherein the +ve terminal of the battery goes
to the Vin of the Arduino board and the –ve terminal of the battery goes to the GND of the
Arduino board.

D.C.Motor
The DC motor is connected to Arduino using the motor driver IC L293D.The controller input to
the motor from the Arduino is sent from the DIGITAL pin D4.

Fig4. Receiver section

Programming Arduino:
Step 1: Downloading the Arduino environment. We downloaded and installed the latest version
of the Arduino IDE from the official website and it is opensource.

Step 2: Installing the required libraries and driver files For our necessity we installed the RF24.
hand nRF24L01.h libraries as we used for the smooth operation of the NRF24L01 wireless
module. Also the drivers are updated.

Step 3: Launch the Arduino application, write the code on the editor and save it.

Page 25 of 33
Fig.5. Editor

Step 4: Connect the Arduino: The Arduino UNO/NANO is connected to the PC via USB cable and select
the same from the TOOLS tab.

Fig.6. Connecting the arduino

Page 26 of 33
Step 5:Select your Serial port. Select the serial device of the Arduino board from the Tools |
Serial Port menu.

Fig 7. Serial Port

Page 27 of 33
Step 6: Compile the program to know whether there are any errors in the program and if you get
any errors debug them to proceed.

Fig.8. Compilation

Page 28 of 33
Step 7:Upload the program. Now, simply click the "Upload" button in the environment. Wait a
few seconds - you should see the RX and TX led’s on the board flashing. If the upload is
successful, the message "Done uploading." will appear in the status bar.

Fig.9. Uploading the program

Step 8:Result. The final result can be obtained after running this program.

Step 9: Observing the Output The output can be observed on the serial monitor depending on the
given algorithm and instructions.

Page 29 of 33
3.4 ADVANTAGES OF ARDUINO

 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 programing
language libraries and may be extended and changed.
 For beginners, it is very simple to use.

Page 30 of 33
4. LIMITATIONS OF ARDUINO

 Arduino uses C/C++ with a few small extensions of its own (misleadingly called the
"Arduino language" where it is really C++). The Arduino libraries are optimized
towards easy usage, but not computational efficiency.
 Lot of the libraries of Arduino  are needs to address issues like ethernet,zigbee,.....
which are not optimized well and needs a lot of improvement.
 Although there have been some use of arduino at commercial level still it is far from
competing to industrial hardware.
 Language of arudino have been ported to a lot of microcontroller but still mere
knowledge of arduino would never leverage you proper hardware level expertise which
is required very much as embedded engineer/enthusiast.
 And finally arduino strips your hardware level acesss barring you from many
functions.

Page 31 of 33
5. CONCLUSION
Over the years, Arduino has went out to become a huge success and a common name among
students With google deploying it, people's imagination has went out to much higher level than
before A developer in the annual GOOGLE IO conference said "when Arduino and Android
coming together, this really proves "INFINITY EXISTS" in the future"I think a study on arduino
and practical experiments on arduino must be added for UG courses of information technology to
help students to leverage their talents and imagination.

Page 32 of 33
6. References
1. https://en.wikipedia.org/wiki/Arduino
2. https://opensource.com/resources/what-arduino
3. https://ieeexplore.ieee.org
4. https://www.ijitee.org
5. https://www.edgefxkits.com/blog/arduino-technology-architecture-and-applications
6. https://www.halvorsen.blog

Page 33 of 33

You might also like