Book Image

Arduino Essentials

Book Image

Arduino Essentials

Overview of this book

Table of Contents (17 chapters)
Arduino Essentials
Credits
About the Author
About the Reviewer
www.PacktPub.com
Preface
Index

Index

A

  • accounting
    • versus stopping / Stopping versus accounting
    • millis() function / Stopping versus accounting
    • micros() function / Stopping versus accounting
  • Adafruit
    • URL / Shields
  • ADC
    • about / Sensing analog values
  • alarm, greenhouse controller
    • manual alarm / Manual alarm
  • ambient light meter
    • about / An ambient light meter
    • code / An ambient light meter code
    • circuit / Calibrating sensors serially
  • ambient light meter circuit
    • about / An ambient light meter circuit
    • Breadboard connections / Breadboard connections
  • analog
    • signals / Dealing with analog signals
    • output circuit / The analog output circuit
    • connections diagram / Connections diagram
    • controlling, through code / Analog control through code
    • Write() function / The analogWrite() function
    • for loop / The for loop
    • fading LED code, completing / Complete the fading LED code
  • analog sensors / Sensing by using inputs
  • analog signals
    • versus digital signals / Digital versus analog signals
  • analog values
    • sensing / Sensing analog values
  • analogWrite() function / The analogWrite() function
  • Anti-lock Brake System (ABS) / The tachograph project
  • Arduino
    • about / A game changer
    • Integrated Development Environment (IDE) / A game changer
    • features / Common features
    • features, URL / Common features
    • store, URL / Arduino Uno
    • LilyPad Arduino / LilyPad Arduino
    • mini board / Arduino Mini, Micro, and Nano
    • micro board / Arduino Mini, Micro, and Nano
    • nano board / Arduino Mini, Micro, and Nano
    • family members / Other Arduino family members
    • Esplora / Esplora
    • unofficial boards / Unofficial boards
    • rules / Just one to rule them all
    • users, showing to users / Users teaching users
    • traditional forum, URL / Users teaching users
    • playground section, URL / Users teaching users
    • download section, URL / Downloading the package
    • package, downloading / Downloading the package
    • software, installing / Installing the software
    • Getting Started guide, URL / In case of trouble
    • drivers, installing / Installing the drivers
    • Playground tab, URL / Linux
    • development environment, running / Running the Arduino development environment for the first time
    • language / The Arduino language
    • variable resistor, connecting to / Connecting a variable resistor to Arduino
    • time control, functions / Time control functions
    • data, sending / Sending data to Arduino
  • Arduino Due
    • about / Arduino Due
  • Arduino Ethernet
    • about / Arduino Ethernet
    • URL / Arduino Ethernet
  • Arduino Mega 2560
    • about / Arduino Mega 2560
    • URL / Arduino Mega 2560
  • Arduino Robot
    • about / Arduino Robot
    • product page, URL / Arduino Robot
  • Arduino Uno
    • about / Arduino Uno
    • URL / Arduino Uno
  • Arduino Yún
    • about / Arduino Yún
    • URL / Arduino Yún
  • attachInterrupt() function / Our first interrupt and its ISR
    • Interrupt / Our first interrupt and its ISR
    • ISR / Our first interrupt and its ISR
    • Mode / Our first interrupt and its ISR

B

  • beats per minute (bpm)
    • URL / The metronome code
  • breadboard
    • using / Using a breadboard
    • URL / Using a breadboard
    • connections, diagram / Breadboard connections diagram
  • breadboard, digital input
    • connections, diagram / Breadboard connections diagram
  • breadboard, optical switch
    • connections, diagram / The breadboard connections diagram
  • Breadboard connections / Breadboard connections
  • breadboard connections diagram / The breadboard connections diagram
  • button
    • connecting, as digital input / Connecting a button as a digital input
    • released / Connecting a button as a digital input
    • pressed / Connecting a button as a digital input

C

  • circuit
    • about / Our first circuit
    • breadboard, using / Using a breadboard
    • LED circuit / The LED circuit
    • schematic / Circuit schematic
    • breadboard connections, diagram / Breadboard connections diagram
    • asymmetric blinking code / Asymmetric blinking code
    • C language, syntax considerations / C language syntax considerations
    • faults, troubleshooting / Troubleshooting faults in the circuit
    • multiple outputs, dealing with / Dealing with multiple outputs
    • limit per pin / Current limit per pin
  • circuit schematic
    • about / Complete circuit schematic
  • C language
    • syntax, considerations / C language syntax considerations
  • code
    • writing, to react to press / Writing code to react to a press
  • code editor
    • about / The code editor
  • coin detector
    • optocoupler, using as / Using an optocoupler as a coin detector
    • schematic / The schematic of the coin detector
  • conditional bifurcation / Writing code to react to a press
    • decisions, making with / Taking decisions with conditional bifurcations
  • Cooking Hacks
    • URL / Shields

D

  • DAC
    • code / Sensing analog values
  • data
    • sending, to Arduino / Sending data to Arduino
  • DC motor speed control
    • about / DC motor speed control revisited
    • potentiometer / The potentiometer
    • motor speed control schematic / The motor speed control schematic
    • breadboard connections diagram / The breadboard connections diagram
    • code / A simple code to control the motor speed
  • debouncing
    • about / Timing and debouncing
    • URL / Timing and debouncing
  • development environment, Arduino
    • running / Running the Arduino development environment for the first time
    • toolbar / The toolbar
    • code editor / The code editor
    • message area / The message area
  • dial tachograph
    • about / A dial tachograph
    • breadboard connections, diagram / Breadboard connections diagram
    • code / The complete tachograph code
    • modular development / Modular development
  • dial thermometer
    • computer connected / A computer connected dial thermometer
    • circuit / The thermometer circuit
    • code / The code for the thermometer
  • digital input
    • button, connecting as / Connecting a button as a digital input
    • breadboard connections, diagram / Breadboard connections diagram
    • configuring / Configuring and reading a digital input
    • pinMode(button,INPUT) / Configuring and reading a digital input
    • digitalRead(button) / Configuring and reading a digital input
    • reading / Configuring and reading a digital input
    • decisions, making with conditional bifurcations / Taking decisions with conditional bifurcations
    • example code / The complete example code
  • digital sensors
    • about / Sensing by using inputs
    • types / Other types of digital sensors
  • digital signals
    • versus analog signals / Digital versus analog signals
  • Digital to Analog Converter (DAC)
    • about / Dealing with analog signals
    • URL / Dealing with analog signals
  • drivers, installing
    • about / Installing the drivers
    • for Windows / Windows
    • for Mac OS X / Mac OS X
    • for Linux / Linux

E

  • EAGLE software
    • URL / Bigger power motors
  • Electromagnetic Force (EMF) / Motor driver
  • Esplora
    • about / Esplora
    • URL / Esplora
  • Examples command / Main menus and commands

F

  • for loop
    • about / The for loop
    • Initialization / The for loop
    • Condition / The for loop
    • Increment / The for loop
    • URL / The for loop
  • Fritzing
    • URL / Breadboard connections diagram
  • FTDI
    • manufacturer page, URL / Installing the drivers
    • Uno driver, URL / Windows

G

  • GardenBot project
    • URL / Final considerations
  • GND / The thermometer circuit
  • greenhouse controller
    • about / A greenhouse controller
    • requisites / The controller requirements
    • modular design / Modular design
    • temperature control / Temperature control
    • input and output devices / Input and output devices
    • circuit / The greenhouse controller circuit
    • breadboard connections, diagram / Breadboard connections diagram
  • greenhouse controller, code
    • about / The greenhouse controller code
    • libraries and constant definitions / Libraries and constant definitions
    • global variables / Global variables
    • interrupt ISR / The interrupt ISR
    • alarm routine / The alarm routine
    • initialization and board configuration / Initialization and board configuration
    • execution loop / The main execution loop
    • temperature control / Temperature subsystem
    • humidity control / Humidity subsystem
    • lighting control / Lighting subsystem
    • alarm control / Alarm subsystem
    • serial feedback and calibration / Serial feedback and calibration
    • project code / The complete project code
    • considerations / Final considerations

I

  • infrared light emitter / Other types of digital sensors
  • input and output devices, greenhouse controller
    • about / Input and output devices
    • thermistor / Input and output devices
    • photocell / Input and output devices
    • humidity resistive sensor / Input and output devices
    • push button / Input and output devices
    • Motor / Input and output devices
    • Servomotor / Input and output devices
    • Relay / Input and output devices
    • Buzzer / Input and output devices
    • relay, as mediator / The relay as a mediator
  • inputs
    • used, for sensing / Sensing by using inputs
  • Inter-Integrated Circuit (I2C)
    • about / Other types of serial communication
    • URL / Other types of serial communication
  • interruption
    • about / The concept of an interruption
  • interrupts / Timing and debouncing
  • ISR
    • LOW / The concept of an interruption
    • CHANGE / The concept of an interruption
    • RAISING / The concept of an interruption
    • FALLING / The concept of an interruption
    • about / The ISR

L

  • LED circuit
    • about / The LED circuit
  • LED code
    • fading LED code, completing / Complete the fading LED code
  • library sound functions
    • about / Arduino library sound functions
  • lighting control, greenhouse controller
    • about / Lighting control
  • LilyPad Arduino
    • about / LilyPad Arduino
  • LilyPad board
    • URL / LilyPad Arduino
  • LilyPad Simple board
    • URL / LilyPad Arduino
  • LilyPad SimpleSnap board
    • URL / LilyPad Arduino
  • LilyPad USB board
    • URL / LilyPad Arduino
  • Linux
    • package, downloading for / Linux
    • software, installing for / Linux
    • drivers, installing for / Linux
  • loop() function / Asymmetric blinking code

M

  • Mac OS X
    • package, downloading for / Mac OS X
    • software, installing for / Mac OS X
    • drivers, installing for / Mac OS X
  • map() function
    • about / The Arduino map function
  • map() function, parameters
    • value / The Arduino map function
    • fromLow / The Arduino map function
    • fromHigh / The Arduino map function
    • toLow / The Arduino map function
    • toHigh / The Arduino map function
  • Mechanical mice section
    • URL / Other types of digital sensors
  • menu
    • Help menu / Main menus and commands
  • menus
    • about / Main menus and commands
    • File menu / Main menus and commands
    • Edit menu / Main menus and commands
    • Sketch menu, commands / Main menus and commands
  • message area
    • about / The message area
  • metronome
    • about / A bigger project – a metronome
    • circuit / The metronome circuit
    • code / The metronome code
    • bpm variable / The metronome code
    • beatDuration variable / The metronome code
    • readButtons variable / The metronome code
  • micros() function / Stopping versus accounting
  • millis() function / Stopping versus accounting
  • modular design, greenhouse controller
    • temperature control / Modular design
    • watering / Modular design
    • lighting control / Modular design, Lighting control
    • manual alarm / Modular design, Manual alarm
    • humidity control / Humidity control
  • momentary push buttons
    • Printed Circuit Board (PCB) soldering / The momentary push button
    • Panel mounting / The momentary push button
    • about / The momentary push button
  • motor driver circuit
    • with transistor / Motor control with a transistor
    • about / Motor driver
    • Base / Motor driver
    • Collector / Motor driver
    • Emitter / Motor driver
    • transistor / Motor driver
    • resistor / Motor driver
    • diode / Motor driver
    • power source, considerations / Power source considerations
    • completed / The complete circuit
    • connections, diagram / Connections diagram
    • speed code, varying / Motor varying speed code
    • assembled / The assembled circuit
    • power motors / Bigger power motors
  • motor speed control schematic / The motor speed control schematic
  • multiplatform tool
    • about / A multiplatform tool
  • multiple outputs, circuit
    • dealing with / Dealing with multiple outputs
  • myActiveDelay() function / Coding without delays and blinking an LED while waiting

O

  • optical switch
    • breadboard connections, diagram / The breadboard connections diagram
  • optocoupler
    • infrared light emitter / Other types of digital sensors
    • phototransistor / Other types of digital sensors
    • about / Other types of digital sensors
    • using, as coin detector / Using an optocoupler as a coin detector
    / A simple interrupt tester

P

  • package, downloading
    • about / Downloading the package
    • for Windows / Windows
    • for Mac OS X / Mac OS X
    • for Linux / Linux
    • source code / Source code
  • panel mounting / The momentary push button
  • phototransistor / Other types of digital sensors
  • PIR motion detector
    • URL / Other types of digital sensors
  • potentiometer / The potentiometer
  • Power over Ethernet (PoE) module
    • URL / Arduino Ethernet
  • preflight checks
    • about / Preflight checks
  • Printed Circuit Board (PCB) soldering / The momentary push button
  • programming, for sensing light / Programming to sense the light
  • Pulse Width Modulation (PWM) / Arduino Uno, The LED circuit
    • URL / Dealing with analog signals

R

  • reed relay
    • URL / Other types of digital sensors
  • Reference page
    • URL / The code for the thermometer
  • Reference section
    • URL / Taking decisions with conditional bifurcations, Coding without delays and blinking an LED while waiting
  • relay
    • URL / The relay as a mediator
  • revolutions per minute (rpm) / The complete tachograph code

S

  • sensor
    • calibrating / Calibrating the sensor
  • serial communication
    • concepts / Serial communications concepts
    • baud rate / The baud rate
    • URL / The baud rate
    • types / Other types of serial communication
    • Serial Peripheral Interface (SPI) / Other types of serial communication
    • Inter-Integrated Circuit (I2C) / Other types of serial communication
  • Serial Monitor command / Main menus and commands
  • Serial Peripheral Interface (SPI)
    • about / Other types of serial communication
    • URL / Other types of serial communication
  • setup() function / Asymmetric blinking code
  • shields
    • about / Shields
    • URL / Shields
  • sketch
    • preflight checks / Preflight checks
    • uploading / Uploading our first sketch
  • Sketch menu
    • Verify / Compile / Main menus and commands
    • Show Sketch Folder / Main menus and commands
    • Add File… / Main menus and commands
    • Import Library… / Main menus and commands
  • software, installing
    • about / Installing the software
    • for Windows / Windows
    • for Mac OS X / Mac OS X
    • for Linux / Linux
  • sound
    • about / Making some noise
    • library sound functions / Arduino library sound functions
    • hardware connection / Sound hardware connection
    • connection, direct / Direct connection
    • connection, through transistor / Connection through a transistor
  • SparkFun
    • URL / Shields
  • stopping
    • versus accounting / Stopping versus accounting
  • switch / case control structure
    • syntax / The switch / case control structure
  • switches
    • URL / Timing and debouncing

T

  • tachograph project
    • about / The tachograph project
    • mechanical considerations / Mechanical considerations
    • interrupt tester / A simple interrupt tester
    • interrupt, and ISR / Our first interrupt and its ISR
  • temperature control, greenhouse controller
    • about / Temperature control
    • Visual indicator / Temperature control
    • Fan / Temperature control
    • Retractable roof / Temperature control
    • Watering pump / Temperature control
  • time control functions
    • about / Time control functions
  • timer
    • about / A simple timer
    • sketct, dividing into different files / Dividing your sketch into different files
    • coding, delays used / Coding a timer by using delays
    • coding, without delays / Coding without delays and blinking an LED while waiting
    • LED, blinking while waiting / Coding without delays and blinking an LED while waiting
    • myActiveDelay() function / Coding without delays and blinking an LED while waiting
    • tryToBlinkaLED() function / Coding without delays and blinking an LED while waiting
  • timing
    • about / Timing and debouncing
  • tone() function
    • pin parameter / Arduino library sound functions
    • frequency parameter / Arduino library sound functions
    • duration parameter / Arduino library sound functions
  • toolbar, buttons
    • Verify / The toolbar
    • Upload / The toolbar
    • New / The toolbar
    • Open… / The toolbar
    • Save / The toolbar
    • Serial Monitor / The toolbar
  • transistor
    • used, for connection / Connection through a transistor
  • tryToBlinkaLED() function / Coding without delays and blinking an LED while waiting

U

  • Universal Asynchronous Receiver/Transmitter (UART) / Serial communications concepts

V

  • variable resistor
    • connecting, to Arduino / Connecting a variable resistor to Arduino
  • voltage divider / Voltage divider

W

  • Windows
    • package, downloading for / Windows
    • software, installing for / Windows
    • drivers, installing for / Windows
    • URL / Windows