Book Image

Practical Arduino Robotics

By : Lukas Kaul
Book Image

Practical Arduino Robotics

By: Lukas Kaul

Overview of this book

Every robot needs a “brain,” and the Arduino platform provides an incredibly accessible way to bring your Arduino robot to life. Anyone can easily learn to build and program their own robots with Arduino for hobby and commercial uses, making Arduino-based robots the popular choice for school projects, college courses, and the rapid prototyping of industrial applications! Practical Arduino Robotics is a comprehensive guide that equips you with the necessary skills and techniques that can be applied to various projects and applications, from automating repetitive tasks in a laboratory to building engaging mobile robots. Building on basic knowledge of programming and electronics, this book teaches you how to choose the right components, such as Arduino boards, sensors, and motors, and write effective code for your robotics project, including the use of advanced third-party Arduino libraries and interfaces, such as Analog, SPI, I2C, PWM, and UART. You'll also learn different ways to command your robots wirelessly, such as over Wi-Fi. Finally, with basic to advanced project examples, this book illustrates how to build exciting autonomous robots like a self-balancing telepresence robot. By the end of this book, you'll be able to design and create your own custom robots for a wide variety of applications.
Table of Contents (21 chapters)
1
Part 1: Selecting the Right Components for Your Robots
6
Part 2: Writing Effective and Reliable Robot Programs for Arduino
10
Part 3: Building the Hardware, Electronics, and UI of Your Robot
15
Part 4: Advanced Example Projects to Put Your Robotic Skills into Action

What this book covers

Chapter 1, Introducing Robotics and the Arduino Ecosystem, gets us on the same page about what we mean by robotics, explains in detail what an Arduino board is, and walks you through setting up the Arduino IDE. By the end of this chapter, your first Arduino program will be running on your Arduino Uno.

Chapter 2, Making Robots Perceive the World with Sensors, introduces various sensors that are commonly used in DIY robotics and the electrical interfaces they use to provide their data to the Arduino board. The chapter includes detailed code examples that demonstrate their use.

Chapter 3, Making Your Robot Move and Interact with the World with Actuators, gives you a broad overview of the different electrical actuators that you can choose from for your robotics projects. Example setups and code show you how to use them with Arduino.

Chapter 4, Selecting the Right Arduino Board for Your Project, packs in a lot of information about the distinct characteristics of Arduino boards and teaches you all you need to know to choose the right board for your project.

Chapter 5, Getting Started with Robot Programming, introduces important concepts and best practices specific to robot programming that make your code performant, useful, and reusable. Using these concepts from the beginning will save you a lot of time in debugging and troubleshooting, and you will instead develop high-quality robot programs.

Chapter 6, Understanding Object-Oriented Programming and Creating Arduino Libraries, teaches you how to use one of the most powerful features of the C++ language: object orientation. Using this new skill, the chapter walks you through the process of turning your Arduino program into a cleanly packaged library so that you can effortlessly reuse its functionalities in future projects without having to duplicate any code.

Chapter 7, Testing and Debugging with the Arduino IDE, is a detailed user guide to the Arduino IDE’s most powerful tools for debugging and creating interactive programs, the Serial Monitor, and the Serial Plotter. It also sums up important lessons and best practices that help you avoid common pitfalls and streamline your development process.

Chapter 8, Exploring Mechanical Design and the 3D Printing Toolchain, switches gears from software to hardware. This chapter introduces you to various techniques that you can use to build your physical robots, with a special emphasis on 3D printing.

Chapter 9, Designing the Power System of Your Robot, is our excursion into the world of power electronics. It will introduce you to the key considerations when it comes to designing a power system that is the backbone of your robot’s safe and reliable operation.

Chapter 10, Working with Displays, LEDs, and Sound, helps you make your robots truly interactive. Learning how to change the brightness and color of lights, make a variety of sounds, and display text on an LCD screen allows you to add a lot of personality to your robots.

Chapter 11, Adding Wireless Interfaces to Your Robot, introduces you to different types of wireless interfaces that are suitable for and easy to use in DIY robotics projects, including Bluetooth and Wi-Fi. It teaches you about their specific pros and cons so you can decide which interface is best for your own projects.

Chapter 12, Building an Advanced Line Following Robot Using a Camera, is a complete case study that puts a lot of what we have learned in the previous chapters to use. At the end of this chapter, you will have a fully functioning, sturdy, and capable mobile robot with a camera and a Bluetooth interface that you can use for many more experiments beyond line following.

Chapter 13, Building a Self-Balancing, Radio-Controlled Telepresence Robot, is another case study that takes the line follower and turns it into a self-balancing robot. It highlights additional aspects of robot programming, with an emphasis on feedback control and systematic parameter tuning.

Chapter 14, Wrapping Up, Next Steps, and a Look Ahead, recaps what we learned in the previous chapters and puts it in the larger context of the vast field of robotics. It illustrates different options to keep learning about robotics, helps you choose your focus, and offers advice for those who wish to make robotics their career.