Sign In Start Free Trial
Account

Add to playlist

Create a Playlist

Modal Close icon
You need to login to use this feature.
  • Book Overview & Buying Hands-On Robotics Programming with C++
  • Table Of Contents Toc
  • Feedback & Rating feedback
Hands-On Robotics Programming with C++

Hands-On Robotics Programming with C++

By : Lentin Joseph, Tavasalkar
2.5 (2)
close
close
Hands-On Robotics Programming with C++

Hands-On Robotics Programming with C++

2.5 (2)
By: Lentin Joseph, Tavasalkar

Overview of this book

C++ is one of the most popular legacy programming languages for robotics, and a combination of C++ and robotics hardware is used in many leading industries. This book will bridge the gap between Raspberry Pi and C/C++ programming and enable you to develop applications for Raspberry Pi. You'll even be able to implement C programs in Raspberry Pi with the WiringPi library. The book will guide you through developing a fully functional car robot and writing programs to move it in different directions. You’ll then create an obstacle-avoiding robot using an ultrasonic sensor. In addition to this, you’ll find out how to control the robot wirelessly using your PC or Mac. This book will also help you work with object detection and tracking using OpenCV, and guide you through exploring face detection techniques. Finally, you will create an Android app and control the robot wirelessly with an Android smartphone. By the end of this book, you will have gained experience in developing a robot using Raspberry Pi and C/C++ programming.
Table of Contents (16 chapters)
close
close
Free Chapter
1
Section 1: Getting Started with wiringPi on a Raspberry Pi
4
Section 2: Raspberry Pi Robotics
8
Section 3: Face and Object Recognition Robot
12
Section 4: Smartphone-Controlled Robot

What this book covers

Chapter 1, Introduction to the Raspberry Pi, covers different modes of Raspberry Pi and GPIO pin configuration. Then, we will set up Raspberry Pi B+ and Raspberry Pi Zero and install the Raspbian OS on it. We will also learn how to connect a Raspberry Pi to a laptop wirelessly via a Wi-Fi network.

Chapter 2, Implementing Blink with wiringPi, covers the installation of the wiringPi library. In this chapter, we will understand the wiringPi pin connections for the Raspberry Pi. Then, we will write two C++ programs and will upload them onto our Raspberry Pi.

Chapter 3, Programming the Robot, covers the criteria for selecting a robot chassis. After that, we will construct our car, connect the motor driver to the Raspberry Pi, and understand the workings of an H-bridge circuit. Finally, we will write programs to move the robot forward, backward, left, and right.

Chapter 4, Building an Obstacle-Avoiding Robot, looks at how an ultrasonic sensor works, and we will write a program to measure distance values. Next, we will program the 16 x 2 LCD to read the ultrasonic distance value. We will also look at the I2C LCD, which takes the 16 LCD pin as an input and provides four pins as an output, thus simplifying the wiring connections. Finally, we will fit the ultrasonic sensor on our robot to create our obstacle-avoiding robot. This robot will move freely when there are no obstacles near it, and if it approaches an obstacle, it will avoid it by taking a turn.

Chapter 5, Controlling a Robot Using a Laptop, looks at two different techniques for controlling the robot using a laptop. In the first technique, we will use the ncurses library to take input from the keyboard to move the robot accordingly. In the second technique, we will use the QT Creator IDE to create GUI buttons, and then use these buttons to move the robot in different directions.

Chapter 6, Accessing Rpi Cam with OpenCV, focuses on the installation of OpenCV on the Raspberry Pi. You will also be introduced to the Raspberry Pi camera module and, after setting up the Pi camera, you will take pictures and record a short video clip using the Pi camera.

Chapter 7, Building an Object-Following Robot with OpenCV, covers some of the important functions inside OpenCV libraries. After that, we will put these functions to the test and attempt to recognize an object from an image. Then, we will learn how to read a video feed from the Pi camera, how to threshold a colored ball, and how to place a red dot on top of it. Finally, we will use the Pi camera and the ultrasonic sensor to detect the ball and follow it.

Chapter 8, Face Detection and Tracking Using Haar Classifier, uses the Haar face classifier to detect a face from a video feed and draw a rectangle around it. Next, we will detect eyes and a smile on the given face and create a circle surrounding the eyes and mouth. After using this knowledge of face and eye detection, we will first turn the LED on/off when the eyes and smile are detected. Next, by creating a white dot in the center of the face, we will make the robot follow the face.

Chapter 9, Building a Voice-Controlled Robot, starts with creating our first Android application, called Talking Pi, in which text written inside the textbox will be displayed in a label and also read out by the smartphone. We will then develop a voice-controlled Android app for the bot, which will recognize our voice and send text to the RPi via Bluetooth. After this, using the terminal window, we will pair the Android smartphone's Bluetooth with the RPi's Bluetooth. Finally, we will look at socket programming and write the VoiceBot program to establish a connection with the Android smartphone's Bluetooth in order to control the robot.

Unlock full access

Continue reading for free

A Packt free trial gives you instant online access to our library of over 7000 practical eBooks and videos, constantly updated with the latest in tech

Create a Note

Modal Close icon
You need to login to use this feature.
notes
bookmark search playlist download font-size

Change the font size

margin-width

Change margin width

day-mode

Change background colour

Close icon Search
Country selected

Close icon Your notes and bookmarks

Delete Bookmark

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete

Delete Note

Modal Close icon
Are you sure you want to delete it?
Cancel
Yes, Delete

Edit Note

Modal Close icon
Write a note (max 255 characters)
Cancel
Update Note

Confirmation

Modal Close icon
claim successful

Buy this book with your credits?

Modal Close icon
Are you sure you want to buy this book with one of your credits?
Close
YES, BUY