Search icon CANCEL
Subscription
0
Cart icon
Your Cart (0 item)
Close icon
You have no products in your basket yet
Save more on your purchases now! discount-offer-chevron-icon
Savings automatically calculated. No voucher code required.
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 AI-enabled autonomous robots using the Raspberry Pi and Python

Arrow left icon
Product type Paperback
Published in Feb 2021
Publisher Packt
ISBN-13 9781839218804
Length 602 pages
Edition 2nd 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 (25) Chapters Close

Preface 1. Section 1: The Basics – Preparing for Robotics
2. Chapter 1: Introduction to Robotics FREE CHAPTER 3. Chapter 2: Exploring Robot Building Blocks – Code and Electronics 4. Chapter 3: Exploring the Raspberry Pi 5. Chapter 4: Preparing a Headless Raspberry Pi for a Robot 6. Chapter 5: Backing Up the Code with Git and SD Card Copies 7. Section 2: Building an Autonomous Robot – Connecting Sensors and Motors to a Raspberry Pi
8. Chapter 6: Building Robot Basics – Wheels, Power, and Wiring 9. Chapter 7: Drive and Turn – Moving Motors with Python 10. Chapter 8: Programming Distance Sensors with Python 11. Chapter 9: Programming RGB Strips in Python 12. Chapter 10: Using Python to Control Servo Motors 13. Chapter 11: Programming Encoders with Python 14. Chapter 12: IMU Programming with Python 15. Section 3: Hearing and Seeing – Giving a Robot Intelligent Sensors
16. Chapter 13: Robot Vision – Using a Pi Camera and OpenCV 17. Chapter 14: Line-Following with a Camera in Python 18. Chapter 15: Voice Communication with a Robot Using Mycroft 19. Chapter 16: Diving Deeper with the IMU 20. Chapter 17: Controlling the Robot with a Phone and Python 21. Section 4: Taking Robotics Further
22. Chapter 18: Taking Your Robot Programming Skills Further 23. Chapter 19: Planning Your Next Robot Project – Putting It All Together 24. Other Books You May Enjoy

Exploring advanced and impressive robots

Now that you have an overview of robots in general, I'll introduce some specific examples that represent the most remarkable robots around, and what they are capable of. Except for the Mars robots, human and animal forms have been favored by these robot makers for their adaptability, contrasting with robots designed for industrial use and intended for single repeated use.

Figure 1.3 shows the similarities between these robots and humans/animals:

Figure 1.3 – A selection of human and animal-like robots. [Image credits: Image 1: This image can be found at https://commons.wikimedia.org/wiki/File:Cog,_1993-2004,_view_2_-_MIT_Museum_-_DSC03737.JPG, and is in the public domain; Image 2: This image can be found at https://commons.wikimedia.org/wiki/File:Honda_ASIMO_(ver._2011)_2011_Tokyo_Motor_Show.jpg, by Morio, under CC BY-SA 3.0, at https://creativecommons.org/licenses/by-sa/3.0/deed.en; Image 3: This image can be found at https://commons.wikimedia.org/wiki/File:Nao_Robot_(Robocup_2016).jpg and is in the public domain; Image 4: This image can be found at https://commons.wikimedia.org/wiki/File:Atlas_from_boston_dynamics.jpg, by https://www.kansascity.com/news/business/technology/917xpi/picture62197987/ALTERNATES/FREE_640/atlas%20from%20boston%20dynamics, under CC BY-SA 4.0, at https://creativecommons.org/licenses/by-sa/4.0/deed.en; Image 5: This image can be found at https://commons.wikimedia.org/wiki/Commons:Licensing#Material_in_the_public_domain and is in the public domain

What these robots have in common is that they try to emulate humans and animals in the following ways:

  1. Robot 1 is Cog from the Massachusetts Institute of Technology. Cog was an attempt to be human-like in its movements and sensors.
  2. Robot 2 is the Honda ASIMO, which walks and talks a little like a human. ASIMO's two cameras perform object avoidance, as well as gestures and face recognition, and have a laser distance sensor to sense the floor. It follows marks on the floor with infrared sensors. ASIMO accepts voice commands in English and Japanese.
  3. Robot 3 is the Nao robot from Softbank Robotics. This cute 58 cm tall robot was designed as a learning and play robot for users to program. It has sensors to detect its motion, including if it is falling, and ultrasonic distance sensors to avoid bumps. Nao uses speakers and a microphone for voice processing. It has multiple cameras to perform similar feats to the ASIMO.
  4. Robot 4 is Atlas from Boston Dynamics. This robot is fast on two legs and has natural-looking movement. It has a laser radar (LIDAR) array, which it uses to sense what is around it so as to plan its movement and avoid collisions.
  5. Robot 5 is the Boston Dynamics BigDog, a four-legged robot, or quadruped. It can walk and run. It's one of the most stable four-legged robots, staying upright when being pushed, shoved, and walking in icy conditions.

You'll add some features like these in the robot you'll build. We'll use distance sensors to avoid obstacles, using ultrasonic sensors in the same way as Nao, and discussing laser distance sensors like ASIMO. We'll explore a camera for visual processing, line sensors to follow marks on the floor, and voice processing to work with spoken commands. We'll build a pan and tilt mechanism for a camera like the head of Cog.

The Mars rovers

The Mars rover robots are designed to work on a different planet, where there is no chance of human intervention if it breaks. They are robust by design. Updated software can only be sent to a Mars rover via a remote link as it is not practical to send up a person with a screen and keyboard. The Mars rover is headless by design:

Figure 1.4 – NASA's Curiosity rover at Glen Etive, Mars (Image Credit: NASA/JPL-Caltech/MSSS; https://mars.nasa.gov/resources/24670/curiosity-at-glen-etive/?site=msl)

Mars rovers depend on wheels instead of legs, since stabilizing a robot on wheels is far simpler than doing it for one that uses legs, and there is less that can go wrong. Each wheel on the Mars rovers has its own motor. The wheels are arranged to provide maximum grip and stability to tackle Mars's rocky terrain and lower gravity.

The Curiosity rover was deposited on Mars with its sensitive camera folded up. After landing, the camera was unfolded and positioned with servo motors. The camera is pointed using a pan and tilt mechanism. It needs to take in as much of the Mars landscape as it can, sending back footage and pictures to NASA for analysis.

Like the Mars robots, the robot you'll build in this book uses motor-driven wheels. Our robot is also designed to run without a keyboard and mouse, being headless by design. As we expand the capabilities of our robot, we'll also use servo motors to drive a pan and tilt mechanism.

You have been reading a chapter from
Learn Robotics Programming - Second Edition
Published in: Feb 2021
Publisher: Packt
ISBN-13: 9781839218804
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