Practical Arduino Robotics: A hands-on guide to bringing your robotics ideas to life using Arduino
- Length: 334 pages
- Edition: 1
- Language: English
- Publisher: Packt Publishing
- Publication Date: 2023-03-17
- ISBN-10: 1804613177
- ISBN-13: 9781804613177
- Sales Rank: #407963 (See Top 100 Books)
Build your hardware, electronics, and programming skills, and use them to realize your advanced robotics projects with this powerful platform
Purchase of the print or Kindle book includes a free PDF eBook
Key Features
- Become an expert in selecting sensors, motors, and Arduino boards for any robotics project
- Discover how to write effective and reusable code for your Arduino robotics projects
- Learn to build a camera-based line follower and a self-balancing telepresence robot on your own
Book Description
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.
What you will learn
- Understand and use the various interfaces of an Arduino board
- Write the code to communicate with your sensors and motors
- Implement and tune methods for sensor signal processing
- Understand and implement state machines that control your robot
- Implement feedback control to create impressive robot capabilities
- Integrate hardware and software components into a reliable robotic system
- Tune, debug, and improve Arduino-based robots systematically
Who this book is for
If you’re excited about robotics and want to start creating your own robotics projects from the hardware up, this book is for you. Whether you are an experienced software developer who wants to learn how to build physical robots, a hobbyist looking to elevate your Arduino skills to the next level, or a student with the desire to kick-start your DIY robotics journey, you’ll find this book very useful. In order to successfully work with this book, you’ll need basic familiarity with electronics, Arduino boards and the core concepts of computer programming.
Practical Arduino Robotics Contributors About the author About the reviewers Preface Who this book is for What this book covers To get the most out of this book Download the example code files Download the color images Conventions used Get in touch Share Your Thoughts Download a free PDF copy of this book Part 1: Selecting the Right Components for Your Robots Chapter 1: Introducing Robotics and the Arduino Ecosystem Technical requirements The main components of a robot What different types of robots are there? What is an Arduino microcontroller board? What is a microcontroller? What exactly is Arduino? The Arduino ecosystem The Arduino IDE The Arduino Uno How to program your Arduino board Installing the Arduino IDE Writing your first Arduino program Compiling the code for your Arduino board Transmitting the code to your Arduino board and running it Examples of Arduino robot technology Summary Further reading Chapter 2: Making Robots Perceive the World with Sensors Technical requirements Understanding common sensor characteristics Commonly used sensor types for Arduino robots Switches and buttons Distance sensors Encoders (rotary and linear) Temperature sensors Pressure sensors Light sensors Sound sensors GPS IMU Common sensor interfaces and code examples GPIO – great for simple sensors Analog is simple Serial interfaces Additional peripherals for working with sensors Summary Further reading Chapter 3: Making Your Robot Move and Interact with the World with Actuators Technical requirements Understanding electric motors and motor drivers Brushed DC motors Brushless DC motors Different motor types and how to use them Using RC servo motors Using brushed DC motors Using BLDC motors ESCs for BLDC motors Driving a BLDC motor with a sensorless ESC Using stepper motors Dedicated robot actuators and servo controllers Summary Further reading Chapter 4: Selecting the Right Arduino Board for Your Project Technical requirements Important characteristics of Arduino boards Input voltage and operating voltage Interfaces CPU Memory Additional hardware Size Cost An introduction to selected official Arduino boards Arduino Nano and Nano Every Arduino Mega A brief overview of third-party Arduino-compatible boards Adafruit Feather and Trinket M0 SparkFun RedBoard Teensy Summary Further reading Part 2: Writing Effective and Reliable Robot Programs for Arduino Chapter 5: Getting Started with Robot Programming Technical requirements The general structure of an Arduino robot program Cooperative multitasking Running two tasks asynchronously Task execution with variable frequency State machines Blocking and non-blocking function calls Feedback control What is feedback control? Examples of feedback control systems The PID control algorithm Building a DC servo motor Summary Chapter 6: Understanding Object-Oriented Programming and Creating Arduino Libraries Technical requirements The OOP paradigm Writing and using the Blinker class Public and private class members Using our class definition The power of OOP Turning your class into an Arduino library The header file The source file Using the library in the Arduino IDE Adding examples Working with third-party Arduino libraries Adding library files manually Using the IDE’s Library Manager Summary Further reading Chapter 7: Testing and Debugging with the Arduino IDE Technical requirements Building modular robot hardware Mechanical components Electrical components Writing testable robot programs Using the Arduino IDE for testing and debugging Using the Serial Monitor as input Using the Serial Plotter for live visualization Summary Further reading Part 3: Building the Hardware, Electronics, and UI of Your Robot Chapter 8: Exploring Mechanical Design and the 3D Printing Toolchain Technical requirements Principles of mechanical design for DIY robots Keep it simple Make it modular Make a plan Exploring materials and manufacturing techniques Permanent connections Temporary connections Wood Acrylic Aluminum Other materials CAD 3D printing What is a 3D printer? 3D printers for DIY robotics Slicing Printing Additional tips for 3D printing Summary Further reading Chapter 9: Designing the Power System of Your Robot Technical requirements Fundamentals of electrical power systems Voltage, current, and power Understanding the power demands of your robot Safety considerations and hazards when working with high-power batteries Electric shock Arcing Excessive temperature Overvoltage Components and design of a robot power system Power distribution Monitoring Control and safety Putting it all together Summary Further readings Chapter 10: Working with Displays, LEDs, and Sound Technical requirements Advanced use of LEDs Dimming LEDs LED circuits Multicolor LEDs Other LEDs Using different types of displays Character displays Graphical displays Adding sound output to your robot Digital sound Analog sound Summary Further reading Chapter 11: Adding Wireless Interfaces to Your Robot Technical requirements What is a wireless interface When to use wireless interfaces The structure of a wireless interface Controlling your robot with a hobby remote control Decoding the receiver output Replacing the USB cable with a Zigbee module Hardware Software Using your XBee modules Other uses Controlling a robot from your phone via Bluetooth Hardware Bluetooth chat Bluetooth Plotter Bluetooth controller Connecting to your robot over Wi-Fi Hardware Setup Wi-Fi Next steps with Wi-Fi Summary Further reading Part 4: Advanced Example Projects to Put Your Robotic Skills into Action Chapter 12: Building an Advanced Line-Following Robot Using a Camera Technical requirements Line following – the “Hello, World!” of robotics Building a reliable mobile base Building the frame Adding motors and wheels Electronic components Wiring up the robot Battery and motor connections On-breadboard connections Inter-board connections Integrating the camera Electrical integration Mechanical integration Software Overview Motor control Bluetooth interface Line following Battery monitoring Hardware compatibility Tuning and testing Summary Further reading Chapter 13: Building a Self-Balancing, Radio-Controlled Telepresence Robot Technical requirements Building the robot Integrating motors and encoders Integrating the RC receiver Integrating the IMU Phone holder Writing the control software Driving the motors Encoder library Wheel velocity estimation Namespaces Pitch estimation with the IMU Controlling the robot Balance control Remote control Motor deadband compensation Auto on/off Parameter tuning Testing and practice Telepresence Summary Further reading Chapter 14: Wrapping Up, Next Steps, and a Look Ahead Technical requirements A quick recap The bigger picture Your next steps Becoming a DIY robotics master Focusing on mechanical engineering Focusing on electrical engineering Focusing on computer engineering and computer science Focusing on data-driven methods ML Trends in robotics ML/AI Cloud robotics Human/robot collaboration Soft robotics Robots as consumer products Robots for autonomous data acquisition Robots in logistics Humanoids as multi-purpose robots How to start your career in robotics Summary Index Why subscribe? Other Books You May Enjoy Packt is searching for authors like you Share Your Thoughts Download a free PDF copy of this book
Donate to keep this site alive
How to download source code?
1. Go to: https://github.com/PacktPublishing
2. In the Find a repository… box, search the book title: Practical Arduino Robotics: A hands-on guide to bringing your robotics ideas to life using Arduino
, sometime you may not get the results, please search the main title.
3. Click the book title in the search results.
3. Click Code to download.
1. Disable the AdBlock plugin. Otherwise, you may not get any links.
2. Solve the CAPTCHA.
3. Click download link.
4. Lead to download server to download.