Book Image

BeagleBone Robotic Projects - Second Edition

By : Richard Grimmett
Book Image

BeagleBone Robotic Projects - Second Edition

By: Richard Grimmett

Overview of this book

BeagleBone Blue is effectively a small, light, cheap computer in a similar vein to Raspberry Pi and Arduino. It has all of the extensibility of today’s desktop machines, but without the bulk, expense, or noise. This project guide provides step-by-step instructions that enable anyone to use this new, low-cost platform in some fascinating robotics projects. By the time you are finished, your projects will be able to see, speak, listen, detect their surroundings, and move in a variety of amazing ways. The book begins with unpacking and powering up the components. This includes guidance on what to purchase and how to connect it all successfully, and a primer on programming the BeagleBone Blue. You will add additional software functionality available from the open source community, including making the system see using a webcam, hear using a microphone, and speak using a speaker. You will then learn to use the new hardware capability of the BeagleBone Blue to make your robots move, as well as discover how to add sonar sensors to avoid or find objects. Later, you will learn to remotely control your robot through iOS and Android devices. At the end of this book, you will see how to integrate all of these functionalities to work together, before developing the most impressive robotics projects: Drone and Submarine.
Table of Contents (18 chapters)
Title Page
Credits
Foreword
About the Author
About the Reviewers
www.PacktPub.com
Customer Feedback
Preface

Creating a Linux program to control your mobile platform


So you know that you can set your servos. In this section, you'll create a program that will let you talk to your servos a bit more intuitively. You'll issue commands that tell the set of servos to go to specific angles, and they will go to those angles. You can then add a set of such commands to allow your legged mobile robot to lean left, lean right, or even take a step forward.

Let's start with a simple program that will make your legged mobile robot's servos go to 90 degrees (which should be somewhere close to the middle of the 180 degrees we can set. You'll start with the rc_test_servos code and modify it. To do this, copy the code to its own directory, along with the Makefile for these types of programs. Here is the code:

   #include "/usr/include/rc_usefulincludes.h"
   #include "/usr/include/roboticscape.h"
   int main(int argc, char *argv[]){
   double servo_pos;
   int frequency_hz = 50; // default 50hz frequency to 
   send...