SlideShare uma empresa Scribd logo
1 de 36
Baixar para ler offline
Arduino Development for
       Beginners
   By Richard Coombs and
   Przemyslaw Woznowski
Contents
Introduction
Board Types
Shields
Background
Software
Hardware
Programming Language/IDE Setup
Demo
Wireless
Arduino @ Cardiff Uni
Resources
Our Experience

What?
  Beginners Arduino Workshop.
Who?
  tinker.it - the UK's leading provider of Arduino training.
Aim?
  a basic introduction to the Arduino platform for artists,
  designers and hobbyists.
Introduction
What?

Open-source electronics prototyping platform
Hardware (circuit board)
   Micro-controller
   Memory to store code
   Pins for input/output to/from the CPU
   Connection for computer
Software (IDE)
   Written in Java
   Designed for novice programmers
Why?

Created in Italy 2005 to be:
   Inexpensive
   Cross-platform
   Easy to use
   Extensible

Arduinos are for Tinkering!
Tinkering

"Tinkering is what happens when you try something you don't
quite know how to do, guided by whim, imagination and
curiosity" [1]

   Patching
   Circuit bending
   Toy hacking
   Keyboard hacks
Arduino Development For Beginners
Starter Kit
Board Types
Duemilanove
Mega
Nano
LillyPad
Shields

Boards which can be mounted on an Arduino to add extra
functionality
Background

sensor - an electronic device used to measure a
physical quantity such as temperature, pressure
or loudness and convert it into an electronic signal
of some kind (e.g a voltage). [2]
actuator - a mechanism that puts something into
automatic action. [3]
The Interactive Device

Most of the objects build using Arduino follow, so
called “Interactive Device” pattern.




“It is an electronic circuit that is able to sense the
environment using components called “sensors” and
processing the information through ”
behaviour” implemented as software. The device will then
be able to interact back with the world using “actuators”.”[1]
“Ingredients” needed

Software/ Development Environment
Hardware
Program sketch
Often patience
Software

Cross platform - runs on Windows, Mac OS X and Linux
Written in Java and based on Processing programming
language, avr-gcc, and other open source software.
Arduino – IDE designed to introduce programming to
artists and other users unfamilair with software
development. Includes a code editor with brace matching,
automatic indentation, API lookup, capable of compiling
and uploading programs to the board with one click
Software cont.

Processing - Processing is an open source programming
language and environment for people who want to program
images, animation, and interactions. It is used by students,
artists, designers, researchers, and hobbyists for learning,
prototyping, and production. It is created to teach
fundamentals of computer programming within a visual
context and to serve as a software sketchbook and
professional production tool. [4]
Hardware

Arduino board
USB (standard A-B) cable
Broken (or not) toys, keyboards, etc.
Resistors, potentiometers, LEDs, buttons, etc.
Wires, breadboards
Program Sketch

Arduino IDE comes with a C/C++ library called “Wiring”,
which makes input/output operations easier.
Programs are written in C/C++ but user only has to define 2
functions to make a runnable program:
   setup() - called once at the start of a program. This is
   where you initialize things.
   loop() – called repeatedly until the board is powered off.
Programming Language

Code written in Arduino is translated into C
language.
Passed on to the avr-gcc compiler that makes the
translation into the language understood by the
microcontroller.
Uploaded to the board.
IDE Setup

Download and install Arduino (http://www.arduino.
cc/en/Main/Software) and Processing (http://processing.
org).
Connect the board to the USB port on your computer.
Run Arduino IDE.
Set the correct port your device is using
   Tools -> Serial Port -> select port beginning
   with “/dev/cu.usbserial-“
Set the Arduino board type your are using
   Tools -> Board -> select correct board type (printed on
   the chip)
Hello World

Open: File -> Examples -> Digital -> Blink
Before uploading the code, you can verify it (Sketch -
> Verify/Compile), however this is not compulsory, as if
there are errors while sending program to the board,
Arduino will abort the operation and print appropriate
warnings/exceptions.
Connect your LED to port 13 and GND (Ground)
LED

LEDs are directional components. That means if
you put it in backwards it will not work!
To help you put the LED in right, the LED factory
cuts the legs at different lengths.
The longer leg goes in the hole marked 13 and
the shorter one goes in the hole marked GND
Hello World cont.

Make sure your board is connected via USB cable
Click the “Upload” button or select File -> Upload to I/O
Board
Watch for any errors (if wrong board/port selected or bugs
in the code)
Hopefully it works – “Let there be light”
Button Demo

   Open: File -> Examples -> Digital -> Button
   Build the circuit as described in the file, or
   Look up the website address in this file, in order to see the
   picture of the circuit and its description: http://www.arduino.
   cc/en/Tutorial/Button
   Connect Arduino via USB
   Upload it to the board

IMPORTANT: Always disconnect the board while building the
circuit!!!
Analog Input

Open: File -> Examples -> Analog -> Analog Input
Build the circuit as described in the file, or
Look up the website address in this file, in order to see the
picture of the circuit and its description: http://arduino.
cc/en/Tutorial/AnalogInput
Connect Arduino via USB
Upload it to the board
Graph

Open: File -> Examples -> Communication -
> Graph
Circuit previously built can remain the same
Open Processing
Copy and paste code commented out in Arduino
to Processing
Run the program from Processing
Simple Paint App

In Arduino: Open: File -> Examples -> Firmata -
> StandardFirmata
Upload it to the board
In Processing open and run test program: File -
> Sketchbook -> Libraries -> arduino -> examples -
> arduino_input
In processing open and run: File -> Sketchbook -
> drawing_app
Wireless

Cardiff Sensor Network project (CaSeNet?)
CaSeNet to use Bluetooth sensors
Aduino is compatible with Pachube
Possible to use Arduinos for sensor nodes?
Arduino + Bluetooth shield
   Bluetooth shield could not discover devices
Arduino + ZigBee shield
   Some progress made
   Couldn't get it to work
   Couldn't keep shields to continue work
Arduino @ Cardiff University

Matthew Morgan is setting up a group for Arduino
developers
Held every fortnight
Undergraduate/Postgraduate students/Lecturers/Staff
Hopefully we can get some funding and buy couple of
boards
Aim: exchange experiences, share ideas, build something
funky that can be used/displayed in our department

Interested? On your way out put your name down on the
Arduino Cafe list.
Resources

Forum, tutorials, blog, useful links, software:
   http://arduino.cc
Shop:
   http://www.coolcomponents.co.uk
   http://www.skpang.co.uk
   http://www.robotbits.co.uk
Training:
   http://tinker.it
Questions? Comments?
      Feedback?
           
References

[1]. Banzi, M. , Getting Started with Arduino 3rd release
[2]. http://encyclopedia2.thefreedictionary.com/sensor
[3]. http://www.thefreedictionary.com/actuator
[4]. http://processing.org

Mais conteúdo relacionado

Mais procurados

Arduino technical session 1
Arduino technical session 1Arduino technical session 1
Arduino technical session 1Audiomas Soni
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduinoPreet Sangha
 
Lesson sample introduction to arduino
Lesson sample   introduction to arduinoLesson sample   introduction to arduino
Lesson sample introduction to arduinoBetsy Eng
 
Arduino Day 1 Presentation
Arduino Day 1 PresentationArduino Day 1 Presentation
Arduino Day 1 PresentationYogendra Tamang
 
Arduino and c programming
Arduino and c programmingArduino and c programming
Arduino and c programmingPunit Goswami
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduinovishal kumar
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduinoMohamed Essam
 
Arduino Microcontroller
Arduino MicrocontrollerArduino Microcontroller
Arduino MicrocontrollerShyam Mohan
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduinoavikdhupar
 
What are the different types of arduino boards
What are the different types of arduino boardsWhat are the different types of arduino boards
What are the different types of arduino boardselprocus
 
Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Sudar Muthu
 
Basics of arduino uno
Basics of arduino unoBasics of arduino uno
Basics of arduino unoRahat Sood
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to ArduinoYong Heui Cho
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino ProgrammingJames Lewis
 
Arduino Workshop @ MSA University
Arduino Workshop @ MSA UniversityArduino Workshop @ MSA University
Arduino Workshop @ MSA UniversityAhmed Magdy Farid
 

Mais procurados (20)

Aurdino presentation
Aurdino presentationAurdino presentation
Aurdino presentation
 
Arduino technical session 1
Arduino technical session 1Arduino technical session 1
Arduino technical session 1
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduino
 
Lesson sample introduction to arduino
Lesson sample   introduction to arduinoLesson sample   introduction to arduino
Lesson sample introduction to arduino
 
Arduino Day 1 Presentation
Arduino Day 1 PresentationArduino Day 1 Presentation
Arduino Day 1 Presentation
 
Arduino and c programming
Arduino and c programmingArduino and c programming
Arduino and c programming
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
Introduction to arduino
Introduction to arduinoIntroduction to arduino
Introduction to arduino
 
Arduino Microcontroller
Arduino MicrocontrollerArduino Microcontroller
Arduino Microcontroller
 
Arduino
ArduinoArduino
Arduino
 
Intro to Arduino
Intro to ArduinoIntro to Arduino
Intro to Arduino
 
What are the different types of arduino boards
What are the different types of arduino boardsWhat are the different types of arduino boards
What are the different types of arduino boards
 
Arduino: Arduino lcd
Arduino: Arduino lcdArduino: Arduino lcd
Arduino: Arduino lcd
 
Arduino Robotics workshop Day1
Arduino Robotics workshop Day1Arduino Robotics workshop Day1
Arduino Robotics workshop Day1
 
Basics of arduino uno
Basics of arduino unoBasics of arduino uno
Basics of arduino uno
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
Introduction to Arduino Programming
Introduction to Arduino ProgrammingIntroduction to Arduino Programming
Introduction to Arduino Programming
 
What is Arduino ?
What is Arduino ?What is Arduino ?
What is Arduino ?
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
Arduino Workshop @ MSA University
Arduino Workshop @ MSA UniversityArduino Workshop @ MSA University
Arduino Workshop @ MSA University
 

Destaque

Fermented fruit juice (organic products)
Fermented fruit juice (organic products)Fermented fruit juice (organic products)
Fermented fruit juice (organic products)PhilEASNet CAR
 
Nebosh Revision Mnemonics
Nebosh Revision   MnemonicsNebosh Revision   Mnemonics
Nebosh Revision MnemonicsPercoco H & S
 
How to install mnemosyne
How to install mnemosyneHow to install mnemosyne
How to install mnemosyneusch64
 
Personality Mapping, Conflict management and Team building
Personality Mapping, Conflict management and Team buildingPersonality Mapping, Conflict management and Team building
Personality Mapping, Conflict management and Team buildingD Dutta Roy
 
Data pribadi SURYANTO
Data pribadi SURYANTOData pribadi SURYANTO
Data pribadi SURYANTOlatunusa2
 
Thesis (Diaz, Baladjay, Tadle)
Thesis (Diaz, Baladjay, Tadle)Thesis (Diaz, Baladjay, Tadle)
Thesis (Diaz, Baladjay, Tadle)kiara045
 
Grammar Review Mnemonic
Grammar Review MnemonicGrammar Review Mnemonic
Grammar Review MnemonicGayla Keesee
 
Lactic Acid Bacteria Serum (LABS)
Lactic Acid Bacteria Serum (LABS)Lactic Acid Bacteria Serum (LABS)
Lactic Acid Bacteria Serum (LABS)Felix Valdez
 
Growth and yield performance of bush sitao to the different levels of chicken...
Growth and yield performance of bush sitao to the different levels of chicken...Growth and yield performance of bush sitao to the different levels of chicken...
Growth and yield performance of bush sitao to the different levels of chicken...Ariash Mae Bermudo
 
Previewing Occupational Personality Questionnaire Used In Selection
Previewing Occupational Personality Questionnaire Used In SelectionPreviewing Occupational Personality Questionnaire Used In Selection
Previewing Occupational Personality Questionnaire Used In Selectionnancykrauss
 
Psoriasis-The best Presentation
Psoriasis-The best PresentationPsoriasis-The best Presentation
Psoriasis-The best PresentationDr.Shahidul Islam
 
Improving the Production of Organically Grown Vegetables
Improving the Production of Organically Grown Vegetables Improving the Production of Organically Grown Vegetables
Improving the Production of Organically Grown Vegetables Bureau of Agricultural Research
 
12th CBSE Practical File
12th CBSE Practical File12th CBSE Practical File
12th CBSE Practical FileAshwin Francis
 
Introduction To Chemistry
Introduction To ChemistryIntroduction To Chemistry
Introduction To ChemistryOH TEIK BIN
 
Learn 90% of Python in 90 Minutes
Learn 90% of Python in 90 MinutesLearn 90% of Python in 90 Minutes
Learn 90% of Python in 90 MinutesMatt Harrison
 

Destaque (19)

Fermented fruit juice (organic products)
Fermented fruit juice (organic products)Fermented fruit juice (organic products)
Fermented fruit juice (organic products)
 
Nebosh Revision Mnemonics
Nebosh Revision   MnemonicsNebosh Revision   Mnemonics
Nebosh Revision Mnemonics
 
How to install mnemosyne
How to install mnemosyneHow to install mnemosyne
How to install mnemosyne
 
Personality Mapping, Conflict management and Team building
Personality Mapping, Conflict management and Team buildingPersonality Mapping, Conflict management and Team building
Personality Mapping, Conflict management and Team building
 
Brand Mnemonics
Brand MnemonicsBrand Mnemonics
Brand Mnemonics
 
Mnemonics
MnemonicsMnemonics
Mnemonics
 
Data pribadi SURYANTO
Data pribadi SURYANTOData pribadi SURYANTO
Data pribadi SURYANTO
 
Mnemonics unit 2
Mnemonics  unit 2Mnemonics  unit 2
Mnemonics unit 2
 
Thesis (Diaz, Baladjay, Tadle)
Thesis (Diaz, Baladjay, Tadle)Thesis (Diaz, Baladjay, Tadle)
Thesis (Diaz, Baladjay, Tadle)
 
Grammar Review Mnemonic
Grammar Review MnemonicGrammar Review Mnemonic
Grammar Review Mnemonic
 
Lactic Acid Bacteria Serum (LABS)
Lactic Acid Bacteria Serum (LABS)Lactic Acid Bacteria Serum (LABS)
Lactic Acid Bacteria Serum (LABS)
 
Growth and yield performance of bush sitao to the different levels of chicken...
Growth and yield performance of bush sitao to the different levels of chicken...Growth and yield performance of bush sitao to the different levels of chicken...
Growth and yield performance of bush sitao to the different levels of chicken...
 
Previewing Occupational Personality Questionnaire Used In Selection
Previewing Occupational Personality Questionnaire Used In SelectionPreviewing Occupational Personality Questionnaire Used In Selection
Previewing Occupational Personality Questionnaire Used In Selection
 
Psoriasis-The best Presentation
Psoriasis-The best PresentationPsoriasis-The best Presentation
Psoriasis-The best Presentation
 
BIOFERTILIZER
BIOFERTILIZERBIOFERTILIZER
BIOFERTILIZER
 
Improving the Production of Organically Grown Vegetables
Improving the Production of Organically Grown Vegetables Improving the Production of Organically Grown Vegetables
Improving the Production of Organically Grown Vegetables
 
12th CBSE Practical File
12th CBSE Practical File12th CBSE Practical File
12th CBSE Practical File
 
Introduction To Chemistry
Introduction To ChemistryIntroduction To Chemistry
Introduction To Chemistry
 
Learn 90% of Python in 90 Minutes
Learn 90% of Python in 90 MinutesLearn 90% of Python in 90 Minutes
Learn 90% of Python in 90 Minutes
 

Semelhante a Arduino Development For Beginners

Embedded L1_notes_unit2_architecture.pptx
Embedded L1_notes_unit2_architecture.pptxEmbedded L1_notes_unit2_architecture.pptx
Embedded L1_notes_unit2_architecture.pptxaartis110
 
Getting Started With Arduino_Tutorial
Getting Started With Arduino_TutorialGetting Started With Arduino_Tutorial
Getting Started With Arduino_TutorialNYCCTfab
 
Microcontroller arduino uno board
Microcontroller arduino uno boardMicrocontroller arduino uno board
Microcontroller arduino uno boardGaurav
 
Up and running with Arduino
Up and running with Arduino Up and running with Arduino
Up and running with Arduino KUET
 
Unit6_P7_luciablazquez
Unit6_P7_luciablazquezUnit6_P7_luciablazquez
Unit6_P7_luciablazquezLucaBlzquez2
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to ArduinoDamien Magoni
 
Arduino presentation by_warishusain
Arduino presentation by_warishusainArduino presentation by_warishusain
Arduino presentation by_warishusainstudent
 
Smartphone++
Smartphone++Smartphone++
Smartphone++mharkus
 
Taller IoT en la Actualidad
Taller IoT en la ActualidadTaller IoT en la Actualidad
Taller IoT en la ActualidadLaurence HR
 
Arduino Full Tutorial
Arduino Full TutorialArduino Full Tutorial
Arduino Full TutorialAkshay Sharma
 
WORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCH
WORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCHWORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCH
WORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCHijdpsjournal
 
Arduino Programming Software Development
Arduino Programming Software DevelopmentArduino Programming Software Development
Arduino Programming Software DevelopmentSanjay Kumar
 
Winter traning arduino report final
Winter traning arduino report finalWinter traning arduino report final
Winter traning arduino report finalGovind Jha
 
Arduino and Circuits.docx
Arduino and Circuits.docxArduino and Circuits.docx
Arduino and Circuits.docxAjay578679
 

Semelhante a Arduino Development For Beginners (20)

Embedded L1_notes_unit2_architecture.pptx
Embedded L1_notes_unit2_architecture.pptxEmbedded L1_notes_unit2_architecture.pptx
Embedded L1_notes_unit2_architecture.pptx
 
Arduino
ArduinoArduino
Arduino
 
Report on arduino
Report on arduinoReport on arduino
Report on arduino
 
Getting Started With Arduino_Tutorial
Getting Started With Arduino_TutorialGetting Started With Arduino_Tutorial
Getting Started With Arduino_Tutorial
 
Microcontroller arduino uno board
Microcontroller arduino uno boardMicrocontroller arduino uno board
Microcontroller arduino uno board
 
Up and running with Arduino
Up and running with Arduino Up and running with Arduino
Up and running with Arduino
 
Unit6_P7_luciablazquez
Unit6_P7_luciablazquezUnit6_P7_luciablazquez
Unit6_P7_luciablazquez
 
Arduino 123
Arduino 123Arduino 123
Arduino 123
 
Introduction to Arduino
Introduction to ArduinoIntroduction to Arduino
Introduction to Arduino
 
notes about Arduino
notes about Arduinonotes about Arduino
notes about Arduino
 
Arduino presentation by_warishusain
Arduino presentation by_warishusainArduino presentation by_warishusain
Arduino presentation by_warishusain
 
Arduino
ArduinoArduino
Arduino
 
Smartphone++
Smartphone++Smartphone++
Smartphone++
 
Taller IoT en la Actualidad
Taller IoT en la ActualidadTaller IoT en la Actualidad
Taller IoT en la Actualidad
 
Arduino Full Tutorial
Arduino Full TutorialArduino Full Tutorial
Arduino Full Tutorial
 
WORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCH
WORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCHWORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCH
WORKING PRINCIPLE OF ARDUINO AND USING IT AS A TOOL FOR STUDY AND RESEARCH
 
arduino uno.pptx
arduino uno.pptxarduino uno.pptx
arduino uno.pptx
 
Arduino Programming Software Development
Arduino Programming Software DevelopmentArduino Programming Software Development
Arduino Programming Software Development
 
Winter traning arduino report final
Winter traning arduino report finalWinter traning arduino report final
Winter traning arduino report final
 
Arduino and Circuits.docx
Arduino and Circuits.docxArduino and Circuits.docx
Arduino and Circuits.docx
 

Último

Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024SkyPlanner
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?IES VE
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7DianaGray10
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationIES VE
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfAijun Zhang
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsSeth Reyes
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfDaniel Santiago Silva Capera
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding TeamAdam Moalla
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1DianaGray10
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioChristian Posta
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfDianaGray10
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfinfogdgmi
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsSafe Software
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXTarek Kalaji
 

Último (20)

Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024Salesforce Miami User Group Event - 1st Quarter 2024
Salesforce Miami User Group Event - 1st Quarter 2024
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?How Accurate are Carbon Emissions Projections?
How Accurate are Carbon Emissions Projections?
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7UiPath Studio Web workshop series - Day 7
UiPath Studio Web workshop series - Day 7
 
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve DecarbonizationUsing IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
Using IESVE for Loads, Sizing and Heat Pump Modeling to Achieve Decarbonization
 
Machine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdfMachine Learning Model Validation (Aijun Zhang 2024).pdf
Machine Learning Model Validation (Aijun Zhang 2024).pdf
 
Computer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and HazardsComputer 10: Lesson 10 - Online Crimes and Hazards
Computer 10: Lesson 10 - Online Crimes and Hazards
 
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdfIaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
IaC & GitOps in a Nutshell - a FridayInANuthshell Episode.pdf
 
9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team9 Steps For Building Winning Founding Team
9 Steps For Building Winning Founding Team
 
Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1Secure your environment with UiPath and CyberArk technologies - Session 1
Secure your environment with UiPath and CyberArk technologies - Session 1
 
Comparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and IstioComparing Sidecar-less Service Mesh from Cilium and Istio
Comparing Sidecar-less Service Mesh from Cilium and Istio
 
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdfUiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
UiPath Solutions Management Preview - Northern CA Chapter - March 22.pdf
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
Videogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdfVideogame localization & technology_ how to enhance the power of translation.pdf
Videogame localization & technology_ how to enhance the power of translation.pdf
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration WorkflowsIgniting Next Level Productivity with AI-Infused Data Integration Workflows
Igniting Next Level Productivity with AI-Infused Data Integration Workflows
 
VoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBXVoIP Service and Marketing using Odoo and Asterisk PBX
VoIP Service and Marketing using Odoo and Asterisk PBX
 

Arduino Development For Beginners

  • 1. Arduino Development for Beginners By Richard Coombs and Przemyslaw Woznowski
  • 3. Our Experience What? Beginners Arduino Workshop. Who? tinker.it - the UK's leading provider of Arduino training. Aim? a basic introduction to the Arduino platform for artists, designers and hobbyists.
  • 5. What? Open-source electronics prototyping platform Hardware (circuit board) Micro-controller Memory to store code Pins for input/output to/from the CPU Connection for computer Software (IDE) Written in Java Designed for novice programmers
  • 6. Why? Created in Italy 2005 to be: Inexpensive Cross-platform Easy to use Extensible Arduinos are for Tinkering!
  • 7. Tinkering "Tinkering is what happens when you try something you don't quite know how to do, guided by whim, imagination and curiosity" [1] Patching Circuit bending Toy hacking Keyboard hacks
  • 12. Mega
  • 13. Nano
  • 15. Shields Boards which can be mounted on an Arduino to add extra functionality
  • 16. Background sensor - an electronic device used to measure a physical quantity such as temperature, pressure or loudness and convert it into an electronic signal of some kind (e.g a voltage). [2] actuator - a mechanism that puts something into automatic action. [3]
  • 17. The Interactive Device Most of the objects build using Arduino follow, so called “Interactive Device” pattern. “It is an electronic circuit that is able to sense the environment using components called “sensors” and processing the information through ” behaviour” implemented as software. The device will then be able to interact back with the world using “actuators”.”[1]
  • 18. “Ingredients” needed Software/ Development Environment Hardware Program sketch Often patience
  • 19. Software Cross platform - runs on Windows, Mac OS X and Linux Written in Java and based on Processing programming language, avr-gcc, and other open source software. Arduino – IDE designed to introduce programming to artists and other users unfamilair with software development. Includes a code editor with brace matching, automatic indentation, API lookup, capable of compiling and uploading programs to the board with one click
  • 20. Software cont. Processing - Processing is an open source programming language and environment for people who want to program images, animation, and interactions. It is used by students, artists, designers, researchers, and hobbyists for learning, prototyping, and production. It is created to teach fundamentals of computer programming within a visual context and to serve as a software sketchbook and professional production tool. [4]
  • 21. Hardware Arduino board USB (standard A-B) cable Broken (or not) toys, keyboards, etc. Resistors, potentiometers, LEDs, buttons, etc. Wires, breadboards
  • 22. Program Sketch Arduino IDE comes with a C/C++ library called “Wiring”, which makes input/output operations easier. Programs are written in C/C++ but user only has to define 2 functions to make a runnable program: setup() - called once at the start of a program. This is where you initialize things. loop() – called repeatedly until the board is powered off.
  • 23. Programming Language Code written in Arduino is translated into C language. Passed on to the avr-gcc compiler that makes the translation into the language understood by the microcontroller. Uploaded to the board.
  • 24. IDE Setup Download and install Arduino (http://www.arduino. cc/en/Main/Software) and Processing (http://processing. org). Connect the board to the USB port on your computer. Run Arduino IDE. Set the correct port your device is using Tools -> Serial Port -> select port beginning with “/dev/cu.usbserial-“ Set the Arduino board type your are using Tools -> Board -> select correct board type (printed on the chip)
  • 25. Hello World Open: File -> Examples -> Digital -> Blink Before uploading the code, you can verify it (Sketch - > Verify/Compile), however this is not compulsory, as if there are errors while sending program to the board, Arduino will abort the operation and print appropriate warnings/exceptions. Connect your LED to port 13 and GND (Ground)
  • 26. LED LEDs are directional components. That means if you put it in backwards it will not work! To help you put the LED in right, the LED factory cuts the legs at different lengths. The longer leg goes in the hole marked 13 and the shorter one goes in the hole marked GND
  • 27. Hello World cont. Make sure your board is connected via USB cable Click the “Upload” button or select File -> Upload to I/O Board Watch for any errors (if wrong board/port selected or bugs in the code) Hopefully it works – “Let there be light”
  • 28. Button Demo Open: File -> Examples -> Digital -> Button Build the circuit as described in the file, or Look up the website address in this file, in order to see the picture of the circuit and its description: http://www.arduino. cc/en/Tutorial/Button Connect Arduino via USB Upload it to the board IMPORTANT: Always disconnect the board while building the circuit!!!
  • 29. Analog Input Open: File -> Examples -> Analog -> Analog Input Build the circuit as described in the file, or Look up the website address in this file, in order to see the picture of the circuit and its description: http://arduino. cc/en/Tutorial/AnalogInput Connect Arduino via USB Upload it to the board
  • 30. Graph Open: File -> Examples -> Communication - > Graph Circuit previously built can remain the same Open Processing Copy and paste code commented out in Arduino to Processing Run the program from Processing
  • 31. Simple Paint App In Arduino: Open: File -> Examples -> Firmata - > StandardFirmata Upload it to the board In Processing open and run test program: File - > Sketchbook -> Libraries -> arduino -> examples - > arduino_input In processing open and run: File -> Sketchbook - > drawing_app
  • 32. Wireless Cardiff Sensor Network project (CaSeNet?) CaSeNet to use Bluetooth sensors Aduino is compatible with Pachube Possible to use Arduinos for sensor nodes? Arduino + Bluetooth shield Bluetooth shield could not discover devices Arduino + ZigBee shield Some progress made Couldn't get it to work Couldn't keep shields to continue work
  • 33. Arduino @ Cardiff University Matthew Morgan is setting up a group for Arduino developers Held every fortnight Undergraduate/Postgraduate students/Lecturers/Staff Hopefully we can get some funding and buy couple of boards Aim: exchange experiences, share ideas, build something funky that can be used/displayed in our department Interested? On your way out put your name down on the Arduino Cafe list.
  • 34. Resources Forum, tutorials, blog, useful links, software: http://arduino.cc Shop: http://www.coolcomponents.co.uk http://www.skpang.co.uk http://www.robotbits.co.uk Training: http://tinker.it
  • 35. Questions? Comments? Feedback?  
  • 36. References [1]. Banzi, M. , Getting Started with Arduino 3rd release [2]. http://encyclopedia2.thefreedictionary.com/sensor [3]. http://www.thefreedictionary.com/actuator [4]. http://processing.org