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

The general structure of an Arduino robot program

We have already gotten to know the general structure of an Arduino program, consisting of three main parts:

  • #include statements and declarations of global variables at the top.
  • The setup() function with all the necessary one-time initializations. It is called automatically at the start of the program execution.
  • The loop() function, which is executed in an infinite loop right after the setup() function has finished.

We can define many more functions that we can use inside the setup() and the loop() functions. This helps to keep these two main functions concise and readable, and it makes our program easier to maintain and modify. We usually write these functions at the end of the program, underneath the loop() function. An example of this is the mcp_read_channel() function that we developed in Chapter 2, Making Robots Perceive the World with Sensors.

This general structure is the same for every Arduino program...