Search icon CANCEL
Arrow left icon
Explore Products
Best Sellers
New Releases
Books
Videos
Audiobooks
Learning Hub
Conferences
Free Learning
Arrow right icon
Arrow up icon
GO TO TOP
Learn Robotics Programming

You're reading from   Learn Robotics Programming Build and control autonomous robots using Raspberry Pi 3 and Python

Arrow left icon
Product type Paperback
Published in Nov 2018
Publisher Packt
ISBN-13 9781789340747
Length 472 pages
Edition 1st Edition
Languages
Concepts
Arrow right icon
Author (1):
Arrow left icon
Danny Staple Danny Staple
Author Profile Icon Danny Staple
Danny Staple
Arrow right icon
View More author details
Toc

Table of Contents (21) Chapters Close

Preface 1. Introduction to Robotics 2. Exploring Robot Building Blocks - Code and Electronics FREE CHAPTER 3. Introducing the Raspberry Pi - Starting with Raspbian 4. Preparing a Raspberry Pi for a Robot - Headless by Default 5. Backing Up the Code with Git and SD Card Copies 6. Building Robot Basics - Wheels, Power, and Wiring 7. Drive and Turn - Moving Motors with Python 8. Programming Line-Following Sensors Using Python 9. Programming RGB Strips in Python 10. Using Python to Control Servo Motors 11. Programming Distance Sensors with Python 12. Programming Encoders with Python 13. Robot Vision - Using a Pi Camera and OpenCV 14. Voice Communication with a Robot Using Mycroft 15. Programming a Gamepad on Raspberry Pi with Python 16. Taking Your Robot Programming Skills Further 17. Planning Your Next Robot Project - Putting It All Together 18. Assessments 19. Other Books You May Enjoy Appendix

Competitive, educational, and hobby robots

The most fun robots can be those built by amateur robot builders. This is an extremely innovative space.

Robotics always had a home in education, with academic builders using them for learning and experimentation platforms. Many commercial ventures have started in this setting. University robots tend to be group efforts, with access to increasingly hi-tech academic equipment to create them, as shown in the following picture:

Kismet and OhBot

Kismet was created at MIT in the late 90s. There are a number of hobbyist robots that are derived from it. It was groundbreaking at the time, using servo motors to drive face movements intended to mimic human expressions. This has been followed in the community with OhBot, an inexpensive hobbyist kit using servo motors, which can be linked with a Raspberry Pi, using voice recognition and facial camera processing to make a convincing display.

Hobby robotics is strongly linked with open source and blogging, sharing designs, and code, leading to further ideas. Hobbyist robots can be created from kits available on the internet, with modifications and additions. The kits cover a wide range of complexity from simple three-wheeled bases to drone kits and hexapods. They come with or without the electronics included. An investigation of kits will be covered in Chapter 6, Building Robot Basics - Wheels, Power, and Wiring. I used a hexapod kit to build SpiderBot to explore walking motion. Refer to the following photo:

Spiderbot - built by me, based on a kit. Controller is an esp8266 + Adafruit 16 Servo Controller

Skittlebot was my Pi Wars 2018 entry, built using toy hacking, repurposing a remote control excavator toy into a robot platform. Pi Wars is an autonomous robotics challenge for Raspberry Pi-based robots, which has both manual and autonomous challenges. There were entries with decorative cases and interesting engineering principles. Skittlebot uses three distance sensors to avoid walls, and we will investigate this kind of sensor in Chapter 11, Programming Distance Sensors with Python. Skittlebot uses a camera to seek out colored objects, as we will see in Chapter 13, Robot Vision - Using A Pi Camera And OpenCV. Here is a photo of Skittlebot:

Skittlebot - My PiWars 2018 Robot - based on a toy

Some hobbyist robots are built from scratch, using 3D printing, laser cutting, vacuum forming, woodwork, CNC, and other techniques to construct the chassis and parts. Refer to the following set of photos:

Building Armbot

I built the robot from scratch, for the London robotics group the Aurorans, in 2009. The robot was known as eeeBot in 2009, since it was intended to be driven by an Eee PC laptop. The Aurorans were a community who met to discuss robotics. The robot was later given a Raspberry Pi, and a robot arm kit seemed to fit it, earning it the name Armbot. In the current market, there are many chassis kits and a beginner will not need to measure and cut materials in this way to make a functioning robot. This was not built to compete, but to inspire other robot builders and kids to code. Towards the end of the book, we will cover some of the communities where robots are being built and shared, along with starting points on using construction techniques to build them from scratch.

The television series Robot Wars is a well known competitive robot event with impressive construction and engineering skills. There is no autonomous behavior in Robot Wars though; these are all manually driven, like remote control cars. Washing machines, although less exciting, are smarter, so they could be more strictly considered robots.

lock icon The rest of the chapter is locked
Register for a free Packt account to unlock a world of extra content!
A free Packt account unlocks extra newsletters, articles, discounted offers, and much more. Start advancing your knowledge today.
Unlock this book and the full library FREE for 7 days
Get unlimited access to 7000+ expert-authored eBooks and videos courses covering every tech area you can think of
Renews at $19.99/month. Cancel anytime