1. Do it yourself !!!
Submitted by,
Jerin K John
[ jerinisready@gmail.com]
S7 CS - 12141009
- An Open Source Hardware
2. KEY- WORDS
Open Source Hardware
Micro Controller
Programmable Devices
Sensors and Actuators
IDE- Integrated Development Environment
3. Arduino – an Open Source Hardware
How Arduino?
Programming environment
Features of Arduino
Applications of Arduino
Arduino v/s other environment
Final thought
References
This Session Includes…
4. What is an Arduino ?
1
• A board for anyone to build basic level
of intelligence into an object
5. The Arduino is a …
Single-board microcontroller, intended to make the application of
interactive objects or environments more accessible
Designed to make the process of using electronics multidisciplinary
projects more accessible
Circuitry which executes instructions in programmable Integrated
Circuit
6. Blinking LED
Line Follow Car
Obstacle Avoiding Robot
Simple Working…
8. Arduino can…
Sense the environment by receiving input from variety of
sensors.
Affect its surroundings by controlling lights, motors, and other
actuators.
Support Standalone Applications
Integrate with Computer / other process
9. Brief History of Arduino
In 2005, a project was initiated to make a device for controlling student-
built interactive design projects that was less expensive than other
prototyping systems available at the time.
Founders Massimo Banzi and David Cuartielles named the project after
Arduino of Ivrea and began producing boards in a small factory located in
Ivrea.
“…we started to figure out how could we make the whole platform even
simpler, even easier, even cheaper, even easier to use.. And then we started
to essentially re-impliment the whole thing as an open source project.”
10. Programming Environment
The Arduino Uno can be programmed with the Arduino software
IDE(integrated development environment).
The ATmega328 on the Arduino Uno comes pre-burnt with a Boot
loader that allows you to upload new code to it without the use of an
external hardware programmer.
You can also bypass the Boot loader and program the microcontroller
through the ICSP (In-Circuit Serial Programming) header.
Arduino IDE works on Windows, Linux as well as Mac Lion X
platforms.
21. Blinking LED | Arduino
/* Blink Turns on an LED on for one second, then off for one second,
repeatedly. */
// the setup function runs once when you press reset or power the
board
void setup() { // initialize digital pin LED_BUILTIN as an
output.
pinMode(LED_BUILTIN, OUTPUT);
}
void loop() { // the loop function runs over and over
again forever
digitalWrite(LED_BUILTIN, HIGH); // turn the LED on
(HIGH is the voltage level)
delay(1000); // wait for a second
22. Line Following Robot| Arduino
/*-------definning Inputs------*/
#define LS 2 // left sensor
#define RS 3 // right sensor
/*-------definning Outputs------*/
#define LM1 4 // left motor
#define LM2 5 // left motor
#define RM1 6 // right motor
#define RM2 7 // right motor
void setup()
{
pinMode(LS, INPUT);
pinMode(RS, INPUT);
pinMode(LM1, OUTPUT);
pinMode(LM2, OUTPUT);
pinMode(RM1, OUTPUT);
pinMode(RM2, OUTPUT);
}
void loop() {
if(digitalRead(LS) &&
digitalRead(RS))
// Move Forward
{
digitalWrite(LM1, HIGH);
digitalWrite(LM2, LOW);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, LOW);
}
if(!(digitalRead(LS)) &&
digitalRead(RS)) // Turn right
{
digitalWrite(LM1, LOW);
digitalWrite(LM2, LOW);
digitalWrite(RM1, HIGH);
digitalWrite(RM2, LOW);
}
if(digitalRead(LS) &&
!(digitalRead(RS))) // turn left
{
digitalWrite(LM1, HIGH);
digitalWrite(LM2, LOW);
digitalWrite(RM1, LOW);
digitalWrite(RM2, LOW);
}
if(!(digitalRead(LS)) &&
!(digitalRead(RS))) // stop
{
digitalWrite(LM1, LOW);
digitalWrite(LM2, LOW);
digitalWrite(RM1, LOW);
digitalWrite(RM2, LOW);
}
}
24. Other prototyping platforms
Raspberry pi
Beagle board
Panda board
Cotton candy
Cubie Board
APC Rock
Hackberry
Gooseberry
25. Arduino v/s other environments
Support for analog input
Limited Computing power
Comparatively cheap
No GPU unit
Limited memory
Open source
26. Why Arduino?
Open source
Simplified and user-friendly programming language
No additional programmer/burner hardware required for
programming board
Portable
Low power consumption
Economic
Availability of Shields
27. Applications of Arduino
Home Automations
Robotics
ISP programming
Easy Wi-Fi,
GSM,
Ethernet,
Bluetooth,
GPS and much more
a
w e r t y u i o p ⌫
s fd g h j k l ‘ Enter
q
z x c v b n m ., ?
Ctrl
&12
3 < > ⌨
28. Final thoughts…
Arduino is a cheap and versatile open source prototyping
environment
It is basically designed as for common non technical people
Programming language is simple and similar to basic C syntax.
Has a terrific community support and documentation
Technical people can use Arduino for testing sensors or other
prototyping work
29. Where to get Started ? [:Referrals]
http://www.arduino.cc/download/ - Arduino Dev. Manual
http://learn.adafruit.com/category/learn-arduino
http://playground.arduino.cc/ - Arduino Code Repository
http://circuitdigest.com/microcontroller-projects/line-follower-robot-
using-arduino - Source codes
Recommended books - Making Things Talk (by Tom Igoe),
- Getting Started With Arduino (by
Massimo Banzi )