O'Reilly logo

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Distributed Network Data

Book Description

Build your own distributed sensor network to collect, analyze, and visualize real-time data about our human environment—including noise level, temperature, and people flow. With this hands-on book, you’ll learn how to turn your project idea into working hardware, using the easy-to-learn Arduino microcontroller and off-the-shelf sensors.

Authors Alasdair Allan and Kipp Bradford walk you through the entire process, from prototyping a simple sensor node to performing real-time analysis on data captured by a deployed multi-sensor network. Demonstrated at recent O’Reilly Strata Conferences, the future of distributed data is already here. If you have programming experience, you can get started immediately.

  • Wire up a circuit on a breadboard, and use the Arduino to read values from a sensor
  • Add a microphone and infrared motion detector to your circuit
  • Move from breadboard to prototype with Fritzing, a program that converts your circuit design into a graphical representation
  • Simplify your design: learn use cases and limitations for using Arduino pins for power and grounding
  • Build wireless networks with XBee radios and request data from multiple sensor platforms
  • Visualize data from your sensor network with Processing or LabVIEW

Table of Contents

  1. Preface
    1. Bill of Materials
    2. Who Should Read this Book?
    3. What You Should Already Know?
    4. What Will You Learn?
    5. What’s In This Book?
    6. Conventions Used in This Book
    7. Using Code Examples
    8. Safari® Books Online
    9. How to Contact Us
    10. Acknowledgments by Alasdair Allan
    11. Acknowledgments by Kipp Bradford
  2. 1. Introduction to Arduino
    1. Saying Hello in the Old World
    2. The Arduino
      1. The Board
      2. Powering the Board
      3. Input and Output
      4. Communicating with the Board
      5. Installing the Software
      6. Connecting to the Board
    3. Blinking an LED
      1. Uploading the Sketch
    4. Making a Serial Connection
    5. Summary
  3. 2. Getting Started
    1. The Breadboard
    2. The Sensor
      1. The DHT-22
    3. Wiring the Breadboard
    4. Writing the Software
      1. The DHT Library
      2. Arduino Sketch
    5. Running the Software
    6. Summary
  4. 3. Adding Another Sensor
    1. The Sensor
      1. PIR Sensor
    2. Wiring the Breadboard
    3. Modifying the Software
    4. Running the Software
    5. Summary
  5. 4. Finishing the Breadboard
    1. The Sensor
      1. Electret Microphone
    2. Wiring the Breadboard
    3. Modifying the Software
    4. Running the Software
    5. Adding Some LEDs
      1. Modifying the Software
      2. Running the Software
    6. Making the Output Machine-Readable
      1. Communicating with Python
    7. Summary
  6. 5. Moving from Breadboard to Prototype
    1. The Prototype
    2. Fritzing
      1. Installing the Software
      2. Building a Fritzing Circuit
        1. Adding Wires to the Diagram
      3. Cleaning up the Fritzing Diagram
    3. Dropping Breadboard Crumbs
      1. Making the Board Permanent
      2. Solder
      3. Soldering Irons
      4. The Protoboard
      5. Octopus Arms or Helping Hands
    4. Let the Solder Flow
    5. Summary
  7. 6. Simplifying the Design
    1. Arduino Proto Shields
    2. Fritzing Revisited
    3. Power and Ground
    4. Cleaning up the Fritzing Diagram
    5. Rules for Pin Power and Ground
    6. Saving Power
    7. Summary
  8. 7. Building Point-to-Point XBee Networks
    1. XBee Modules
      1. Series 1 or Series 2?
      2. Regular vs Pro?
      3. 802.15.4 or Zigbee?
      4. Which Antenna?
    2. How to Configure an XBee Series 1 Radio
      1. Connecting the XBee to your Mac
      2. XBee Addressing
    3. Configuring Two XBee Radios
    4. Connecting an XBee to an Arduino
    5. Going Wireless with XBees
    6. Summary
  9. 8. Building Many-to-Point XBee Networks
    1. Addressing for Multiple XBees
    2. Addressing the Arduino
    3. Individual Call and Response
    4. Switching to Mesh Networks
    5. Summary
  10. 9. Visualizing with Processing
    1. Processing
      1. Installing the Software
    2. Reading Data From a File
    3. Reading Data Directly From the Serial Port
      1. Plotting Temperature in Real Time
    4. Summary
  11. 10. Visualizing with LabVIEW
    1. LabVIEW
      1. Installing the Software
    2. Simple LabVIEW with Arduino
    3. Graphing the Data
    4. Summary
  12. 11. Going Further
    1. Arduino
    2. XBee Networking
    3. Fritzing
    4. EAGLE
    5. Processing
      1. ProcessingJS
        1. Quick Start
    6. LabVIEW
    7. Data Visualization
  13. About the Authors
  14. Colophon
  15. Copyright