You are previewing Open-Source Robotics and Process Control Cookbook.
O'Reilly logo
Open-Source Robotics and Process Control Cookbook

Book Description

In this practical reference, popular author Lewin Edwards shows how to develop robust, dependable real-time systems for robotics and other control applications, using open-source tools. It demonstrates efficient and low-cost embedded hardware and software design techniques, based on Linux as the development platform and operating system and the Atmel AVR as the primary microcontroller. The book provides comprehensive examples of sensor, actuator and control applications and circuits, along with source code for a number of projects. It walks the reader through the process of setting up the Linux-based controller, from creating a custom kernel to customizing the BIOS, to implementing graphical control interfaces. 

Including detailed design information on:
· ESBUS PC-host interface
· Host-module communications protocol
· A speed-controlled DC motor with tach feedback and thermal cut-off
· A stepper motor controller
· A two-axis attitude sensor using a MEMS accelerometer
· Infrared remote control in Linux using LIRC
· Machine vision using Video4Linux

The Accompanying companion site contains a wealth of design materials, including:
· Full schematics and source code for the projects described
· Ready-made disk images for the miniature Linux distribution uses as the basis for the PC-side software
· Distribution archives of source code for all GNU software used, along with application-specific patches where appropriate
· A free version of the schematic capture and PCB CAD software used
· Atmel AVR Studio

* The first-ever book on using open source technology for robotics design! 
* Immensely valuable source code and design tools provided on a com,panion website
* Covers hot topics such as GPS navigation, 3-D sensing, and machine vision, all using a Linux platform!

Table of Contents

  1. Cover image
  2. Title page
  3. Table of Contents
  4. Copyright
  5. Dedication
  6. About the Author
  7. What’s on the CD-ROM?
  8. Chapter 1: Introduction
    1. 1.1 History of this Book and What You’ll Get From Reading It
    2. 1.2 Target Readership and Required Skills and Tools
    3. 1.3 Conventions Used in the Text
  9. Chapter 2: Microcontrollers, Single-Board Computers and Development Tools
    1. 2.1 The Division of Labor
    2. 2.2 Candidate Microcontrollers for ‘Hard’ Tasks
    3. 2.3 The Atmel AVR and its Development Hardware Up Close
    4. 2.4 Candidate x86-based SBCs for ‘Soft’ Tasks
    5. 2.5 The Advantech PCM-5820 Single-Board Computer Up Close
    6. 2.6 Selecting an Inter-Module Communications Protocol
  10. Chapter 3: Some Example Sensor, Actuator and Control Applications and Circuits (Hard Tasks)
    1. 3.1 Introduction
    2. 3.2 E2BUS PC-Host Interface
    3. 3.3 Host-to-Module Communications Protocol
    4. 3.4 Stepper Motor Controller
    5. 3.5 Speed-Controlled DC Motor with Tach Feedback and Thermal Cutoff
    6. 3.6 Two-Axis Attitude Sensor using MEMS Accelerometer
    7. 3.7 RS-422–Compatible Indicator Panel
  11. Chapter 4: The Linux-Based Controller (A Soft Task)
    1. 4.1 A Brief Introduction to Embedding Linux on PC Hardware
    2. 4.2 Configuring the Development System and Creating Our Custom Kernel
    3. 4.3 The Linux Boot Process–Creating a Bootable CompactFlash Card
    4. 4.4 Creating a Root Filesystem for our Embedded System
    5. 4.5 Creating a Bootable Linux System-Restore CD-ROM Disc
    6. 4.6 Using the Parallel Port as a General-Purpose I/O Interface in Linux
    7. 4.7 Implementing Graphical Control Interfaces
    8. 4.8 Infra-Red Remote Control in Linux Using LIRC
    9. 4.9 Introduction to Machine Vision Using Video4Linux
    10. 4.10 Customizing Your BIOS—The Structure of a Modern BIOS
  12. Chapter 5: Encryption and Data Security Primer
    1. 5.1 Introduction
    2. 5.2 Classes of Algorithm
    3. 5.3 Protecting One-Way Control Data Streams
    4. 5.4 Protecting One-Way Telemetry
    5. 5.5 Protecting Bidirectional Control/Data Streams
    6. 5.6 Protecting Logged Data
    7. 5.7 Where to Obtain Encryption Algorithms
  13. Chapter 6: Expecting the Unexpected
    1. 6.1 Introduction
    2. 6.2 Dangerous Exception Conditions and Recovering From Them
    3. 6.3 On-Chip vs. Off-Chip Watchdog Hardware
    4. 6.4 Good Power-On Reset Practices
    5. 6.5 A Few Additional Considerations for Battery-Powered Applications
  14. Chapter 7: Contents of the Enclosed CD-ROM
  15. Index