You are previewing Make an Arduino-Controlled Robot.

Make an Arduino-Controlled Robot

Cover of Make an Arduino-Controlled Robot by Michael Margolis Published by O'Reilly Media, Inc.
  1. Make an Arduino-Controlled Robot
  2. SPECIAL OFFER: Upgrade this ebook with O’Reilly
  3. A Note Regarding Supplemental Files
  4. Preface
    1. Who This Book Is For
    2. How This Book Is Organized
    3. What Was Left Out
    4. Code Style (About the Code)
    5. Arduino Hardware and Software
    6. Conventions Used in This Book
    7. Using Code Examples
    8. Safari® Books Online
    9. How to Contact Us
    10. Acknowledgments
  5. 1. Introduction to Robot Building
    1. Why Build a Robot?
    2. How Robots Move
    3. Tools
  6. 2. Building the Electronics
    1. Hardware Required
    2. Construction Techniques
      1. Soldering
      2. Building the Motor Controller
      3. Soldering the Reflectance Sensors
      4. Making a Line Sensor Mount
      5. Next Steps
  7. 3. Building the Two-Wheeled Mobile Platform
    1. Hardware Required
    2. Mechanical Assembly
      1. Lay Out the Chassis Parts
      2. Motor Assembly
      3. Assemble the Chassis Components
      4. Attaching the Control Electronics
    3. Mounting the IR sensors
      1. Mounting the IR Sensors for Edge Detection
      2. Mounting the IR Sensors for Line Following
    4. Next Steps
  8. 4. Building the Four-Wheeled Mobile Platform
    1. Hardware Required
    2. Mechanical Assembly
      1. Lay Out the Chassis Parts
      2. Motor Assembly
      3. Assemble the Chassis Components
      4. Solder the Power and Motor Connections
      5. Connecting the Battery Pack and Power Switch
      6. Building the Optional Trickle Charger
      7. Assemble the Chassis
      8. Mounting Arduino and Connecting Wires to the Shield
    3. Mounting the IR sensors
      1. Mounting the IR Sensors for Edge Detection
      2. Mounting the IR Sensors for Line Following
    4. Next Steps
  9. 5. Tutorial: Getting Started with Arduino
    1. Hardware Required
    2. Arduino Software
    3. Arduino Hardware
    4. Installing the Integrated Development Environment (IDE)
      1. Installing Arduino on Windows
      2. Installing Arduino on OS X
      3. Installing Arduino on Linux
      4. Driver Installation
    5. Connecting the Arduino Board
    6. Using the IDE
    7. Uploading and Running the Blink Sketch
    8. Using Tabs
    9. Installing Third-Party Libraries
  10. 6. Testing the Robot's Basic Functions
    1. Hardware Required
    2. Software Prerequisites
    3. Sketches Used in This Chapter
    4. Load and Run helloRobot.ino
    5. About the Sketch
    6. Troubleshooting
    7. Making the Sketch Easy to Enhance
  11. 7. Controlling Speed and Direction
    1. Hardware Required
    2. Sketches Used in This Chapter
    3. Types of Motors
    4. Motor Controllers
    5. Controlling Motor Speed
      1. How Motor Speed Is Controlled
      2. Code for Motor Control
      3. Calibrating Rotation and Tracking
    6. Software Architecture for Robot Mobility
    7. Functions to Encapsulate Robot Movements
      1. Core Movement Code
      2. Additional Core Functions
      3. Functions to Rotate the Robot
      4. Higher-Level Movement Functions
  12. 8. Tutorial: Introduction to Sensors
    1. Hardware Discussed
    2. Software
    3. Infrared Reflectance Sensors
    4. Sonar Distance Sensors
    5. Maxbotix EZ1 Sonar Distance Sensor
    6. Sharp IR Distance Sensor
    7. Proximity Sensor
    8. Sound Sensor
    9. Arduino Cookbook
  13. 9. Modifying the Robot to React to Edges and Lines
    1. Hardware Required
    2. Sketches Used in This Chapter
    3. The Look Code
    4. Edge Detection
    5. Line Following
    6. Seeing Sketch Data
  14. 10. Autonomous Movement
    1. Hardware Required
    2. Sketches Used in This Chapter
    3. Mounting a Ping Distance Sensor
      1. Making a Mount for the Ping Sensor
      2. Mounting the Ping Sensor in a Fixed Position
      3. Mounting the Ping Sensor on a Servo
    4. Letting the Robot Wander
    5. Adding Scanning
  15. 11. Remote Control
    1. Hardware Required
    2. Sketches Used in This Chapter
    3. Design of the Remote Control Code
    4. Controlling the Robot with a TV Type IR Remote
      1. Installing the IR Decoder Chip
      2. The IR Remote Software
  16. A. Enhancing Your Robot
    1. Planning
      1. Think Before You Code
      2. Avoid Feature Bloat
      3. Don't Reinvent the Wheel
      4. Structure to Reflect Functionality
      5. Use Clear Names for Functions and Variables
    2. Implementing a Complex Project
      1. Test Often
      2. Simplify
      3. If It Is Awkward, Start Over
      4. Don't Confuse Activity with Progress
      5. Experiment
      6. Be Tenacious
      7. Have Fun
  17. B. Using Other Hardware with Your Robot
    1. Alternative Motor Controllers
      1. Ardumoto
      2. Continuous Rotation Servos
  18. C. Debugging Your Robot
    1. Identify the Symptoms and Localize the problem
      1. Seeing What the Robot Is Doing
  19. D. Power Sources
    1. Monitoring Battery Voltage
    2. Trickle Charging
  20. E. Programming Constructs
    1. Digital I/O
    2. Analog I/O
    3. Math functions
    4. Other Functions and Constructs
  21. F. Arduino Pin and Timer Usage
    1. Handling Resource Conflicts
      1. Modifying a Library to Change Timer Allocation
      2. Writing Code That Avoids the Use of a Timer
    2. Pin and Timer Tables
  22. About the Author
  23. SPECIAL OFFER: Upgrade this ebook with O’Reilly
  24. Copyright
O'Reilly logo

Chapter 3. Building the Two-Wheeled Mobile Platform

This chapter provides advice on the construction of a Two Wheel Drive (2WD) chassis with front caster, as shown in Figure 3-1. Construction is straightforward; you can follow the detailed steps or improvise if you want to customize your robot. The chapter also shows how you attach and connect sensors used in the projects covered in later chapters.

If you prefer to build a two wheeled robot of your own design, you should read the sections on attaching control electronics and sensors; this will prepare you to use the code for the projects in the chapters to come. Information in this chapter my also provide some ideas to help with the design of your own robot.

2WD Robot Chassis

Figure 3-1. 2WD Robot Chassis

Hardware Required

See http://shop.oreilly.com/product/0636920028024.do for a detailed parts list.

  • Tools listed in Tools

  • The assembled electronics (see Chapter 2, Building the Electronics

  • 2WD Mobile Platform (two wheeled robot kit made by DFRobot)

  • Two 0.1uF ceramic capacitors

  • Two lengths of 3 conductor ribbon cable, two 3 way 0.1" headers for edge sensors

  • Optional: charging circuit resistors and diode, see detailed parts list

Mechanical Assembly

Lay Out the Chassis Parts

Figure 3-2 shows all of the parts contained in the 2WD chassis package. The three black brackets to the left of the figure are not needed for any of the projects in this book.

Figure 3-2. 2WD Chassis ...

The best content for your career. Discover unlimited learning on demand for around $1/day.