BeagleBone: Creative Projects for Hobbyists

Learn to build amazing robotic projects using the powerful BeagleBone Black.

BeagleBone: Creative Projects for Hobbyists

Charles Hamilton, Rodolfo Giometti, Richard Grimmett

Learn to build amazing robotic projects using the powerful BeagleBone Black.
Mapt Subscription
FREE
$29.99/m after trial
eBook
$44.80
RRP $63.99
Save 29%
What do I get with a Mapt Pro subscription?
  • Unlimited access to all Packt’s 5,000+ eBooks and Videos
  • Early Access content, Progress Tracking, and Assessments
  • 1 Free eBook or Video to download and keep every month after trial
What do I get with an eBook?
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with Print & eBook?
  • Get a paperback copy of the book delivered to you
  • Download this book in EPUB, PDF, MOBI formats
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
What do I get with a Video?
  • Download this Video course in MP4 format
  • DRM FREE - read and interact with your content when you want, where you want, and how you want
  • Access this title in the Mapt reader
$0.00
$44.80
$29.99p/m after trial
RRP $63.99
Subscription
eBook
Start 30 Day Trial
Subscribe and access every Packt eBook & Video.
 
  • 5,000+ eBooks & Videos
  • 50+ New titles a month
  • 1 Free eBook/Video to keep every month
Start Free Trial
 
Code Files
Preview in Mapt

Book Details

ISBN 139781788395656
Paperback1020 pages

Book Description

BeagleBone is a microboard PC that runs Linux. It can connect to the Internet and run OSes such as Android and Ubuntu. You can transform this tiny device into a brain for an embedded application or an endless variety of electronic inventions and prototypes.

This Learning Path starts off by teaching you how to program the BeagleBone. You will create introductory projects to get yourselves acquainted with all the nitty gritty. Then we’ll focus on a series of projects that are aimed at hobbyists like you and encompass the areas of home automation and robotics. With each project, we’ll teach you how to connect several sensors and an actuator to the BeagleBone Black. We’ll also create robots for land, sea, and water. Yes, really!

The books used in this Learning Path are:

1. BeagleBone Black Cookbook
2. BeagleBone Home Automation Blueprints
3. Mastering BeagleBone Robotics

Table of Contents

Chapter 1: Setting Up for the First Time
Introduction
First boot up
Power requirements – basic guidelines
Display
Essential GNU/Linux commands – the command shell
Essential GNU/Linux commands – typical commands
Edit a text file from the command shell
Connectivity
Package management – Installing packages using apt-get
SSH / Remote access
System images
Chapter 2: Basic Programming Recipes
Introduction
Introduction to BoneScript
Toggle LED
Using the Cloud9 IDE
Node.js basic recipes
Adding a new module to Node.js
Using Node.js with Johnny-Five
Python basic recipes
Adding libraries
Running a Python script to control the LEDs
Chapter 3: Physical Computing Recipes Using JavaScript, the BoneScript Library, and Python
Introduction
Controlling external LEDs
Using buttons – button press function
Using analog sensors
Variable resistance sensor – photocell
Using motors
Chapter 4: Exploring GNU/Linux Recipes Using Bash, Autotools, Debugger, and systemd
Introduction
The basic shell script
Epoch Time shell script
Compile and install
Compile and install Git from source
Debugging
Debug a simple C-code application from the command line using GDB
Debug an application remotely from Eclipse and GDB server
systemd services
Basic commands for systemd services
Optimize boot time
Create a systemd service to run at boot time
Chapter 5: Basic Programming Recipes with the Linux Kernel
Introduction
Kernel application binary interface
Installing the latest kernel image
Installing and building a custom kernel
Interactions with the kernel – sysfs entries and controlling the GPIOs
Device Tree and its roots
Device Tree / basic build
Device Tree / advanced – adding DT overlay to run a custom cape
Universal cape overlay
Running a script to check DT usage on GPIO pins
Chapter 6: Run Faster, Run Real Time
Introduction
Installing a test tool
Modifying the kernel using RT-PREEMPT
Modifying the kernel using Xenomai
Programmable real-time units – an introduction
A simple PRU test with an assembler
Running an ultrasonic range sensor with the PRUs
Using Python with the PRUs
Chapter 7: Applied Recipes – Sound, Picture, and Video
Introduction
Wiring up a mini amp and speakers
Creating a high-quality audio platform with Volumio
Using videos and displays in projects
Testing a mini LCD cape
Making a video chat client prototype using Linphone
Chapter 8: The Internet of Things
Introduction
Location-based recipes – hooking up GPS
Location-based recipes – Bluetooth LE and Beacons
Using sensors and data with ThingSpeak
Making things smarter – building a wireless digital picture frame
Chapter 9: The Black in Outer Space
Introduction
Grabbing the International Space Station flyover data and visualizing it
Tracking using RTL-SDR
Airplane tracking with RTL-SDR
Satellite tracking using GPredict and RTL-SDR
Satellite tracking using the SatNogs Network client / ground station and RTL-SDR
Adding other interfaces – ISS tracking and text to speech
Chapter 10: Dangerous Gas Sensors
The basic of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 11: Ultrasonic Parking Assistant
The basic of functioning
Setting up the hardware
Setting up the software
The distance monitor
Final test
Summary
Chapter 12: Aquarium Monitor
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 13: Google Docs Weather Station
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 14: WhatsApp Laundry Room Monitor
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 15: Baby Room Sentinel
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 16: Facebook Plant Monitor
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 17: Intrusion Detection System
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 18: Twitter Access Control System with Smart Card and RFID
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 19: A Lights Manager with a TV Remote Controller
The basics of functioning
Setting up the hardware
Setting up the software
The final test
Summary
Chapter 20: A Wireless Home Controller with Z-Wave
The basics of functioning
Setting up the hardware
Setting up the software
The final test
Summary
Chapter 21: Preparing the BeagleBone Black
Unpacking and powering up
Installing additional core software packages
Making your BeagleBone Black speak
Adding additional hardware and software for a fully functional core system
Summary
Chapter 22: Building a Basic Tracked Vehicle
Choosing the tracked platform
Connecting a motor controller to control the speed of your tracked platform
Controlling your mobile platform programmatically using the BeagleBone Black and Python
Summary
Chapter 23: Adding Sensors to Your Tracked Vehicle
Basics of sensors
Adding distance sensors
Dynamic path planning for your robot
Summary
Chapter 24: Vision and Image Processing
Connecting a webcam to the BeagleBone Black
Using OpenCV
Finding colored objects in your vision system
Following colored objects with your vision system
Finding movement in your vision system
Following movement with your robot
Summary
Chapter 25: Building a Robot that Can Walk
Building robots that can walk
Working of servomotors
Building the quadruped platform
Using a servo controller to control the servos
Communicating with the servo controller via a PC
Connecting the servo controller to the BeagleBone Black
Creating a program on Linux to control your quadruped
Issuing voice commands to your quadruped
Summary
Chapter 26: A Robot that Can Sail
The BeagleBone Black and robots that can sail
Remote control of the sailboat
Summary
Chapter 27: Using GPS for Navigation
Beginning with a GPS tutorial
Connecting GPS to the BeagleBone Black
Parsing the GPS information
Calculating distance and bearing
Summary
Chapter 28: Measuring Wind Speed – Integrating Analog Sensors
Connecting an analog wind speed sensor
Getting sensor data from the wind speed sensor
Some basics of sailing
Summary
Chapter 29: An Underwater Remotely Operated Vehicle
Building the hardware for the ROV
Controlling brushless DC motors using the BeagleBone Black
Program to control DC motors using the BeagleBone Black
Connecting to the BeagleBone Black via a long LAN
Accessing a camera for your project
Summary
Chapter 30: A Quadcopter
Basics of quadcopter flight
Building the quadcopter
Connecting the BeagleBone Black to the quadcopter
Controlling the quadcopter using the BeagleBone Black
Summary
Chapter 31: An Autonomous Quadcopter
Controlling quadcopter flight wirelessly
Adding a game controller to your system
Adding a webcam for autonomous flight
Adding GPS for autonomous flight
Summary

What You Will Learn

  • t up and run the BeagleBone Black for the first time
  • Get to know the basics of microcomputing and Linux using the command line and easy kernel mods
  • Develop a simple web interface with a LAMP platform
  • Prepare complex web interfaces in JavaScript and get to know how to stream video data from a webcam
  • Find out how to use a GPS to determine where your sailboat is, and then get the bearing and distance to a new waypoint
  • Use a wind sensor to sail your boat effectively both with and against the wind
  • Build an underwater ROV to explore the underwater world
  • See how to build an autonomous Quadcopter

Authors

Table of Contents

Chapter 1: Setting Up for the First Time
Introduction
First boot up
Power requirements – basic guidelines
Display
Essential GNU/Linux commands – the command shell
Essential GNU/Linux commands – typical commands
Edit a text file from the command shell
Connectivity
Package management – Installing packages using apt-get
SSH / Remote access
System images
Chapter 2: Basic Programming Recipes
Introduction
Introduction to BoneScript
Toggle LED
Using the Cloud9 IDE
Node.js basic recipes
Adding a new module to Node.js
Using Node.js with Johnny-Five
Python basic recipes
Adding libraries
Running a Python script to control the LEDs
Chapter 3: Physical Computing Recipes Using JavaScript, the BoneScript Library, and Python
Introduction
Controlling external LEDs
Using buttons – button press function
Using analog sensors
Variable resistance sensor – photocell
Using motors
Chapter 4: Exploring GNU/Linux Recipes Using Bash, Autotools, Debugger, and systemd
Introduction
The basic shell script
Epoch Time shell script
Compile and install
Compile and install Git from source
Debugging
Debug a simple C-code application from the command line using GDB
Debug an application remotely from Eclipse and GDB server
systemd services
Basic commands for systemd services
Optimize boot time
Create a systemd service to run at boot time
Chapter 5: Basic Programming Recipes with the Linux Kernel
Introduction
Kernel application binary interface
Installing the latest kernel image
Installing and building a custom kernel
Interactions with the kernel – sysfs entries and controlling the GPIOs
Device Tree and its roots
Device Tree / basic build
Device Tree / advanced – adding DT overlay to run a custom cape
Universal cape overlay
Running a script to check DT usage on GPIO pins
Chapter 6: Run Faster, Run Real Time
Introduction
Installing a test tool
Modifying the kernel using RT-PREEMPT
Modifying the kernel using Xenomai
Programmable real-time units – an introduction
A simple PRU test with an assembler
Running an ultrasonic range sensor with the PRUs
Using Python with the PRUs
Chapter 7: Applied Recipes – Sound, Picture, and Video
Introduction
Wiring up a mini amp and speakers
Creating a high-quality audio platform with Volumio
Using videos and displays in projects
Testing a mini LCD cape
Making a video chat client prototype using Linphone
Chapter 8: The Internet of Things
Introduction
Location-based recipes – hooking up GPS
Location-based recipes – Bluetooth LE and Beacons
Using sensors and data with ThingSpeak
Making things smarter – building a wireless digital picture frame
Chapter 9: The Black in Outer Space
Introduction
Grabbing the International Space Station flyover data and visualizing it
Tracking using RTL-SDR
Airplane tracking with RTL-SDR
Satellite tracking using GPredict and RTL-SDR
Satellite tracking using the SatNogs Network client / ground station and RTL-SDR
Adding other interfaces – ISS tracking and text to speech
Chapter 10: Dangerous Gas Sensors
The basic of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 11: Ultrasonic Parking Assistant
The basic of functioning
Setting up the hardware
Setting up the software
The distance monitor
Final test
Summary
Chapter 12: Aquarium Monitor
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 13: Google Docs Weather Station
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 14: WhatsApp Laundry Room Monitor
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 15: Baby Room Sentinel
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 16: Facebook Plant Monitor
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 17: Intrusion Detection System
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 18: Twitter Access Control System with Smart Card and RFID
The basics of functioning
Setting up the hardware
Setting up the software
Final test
Summary
Chapter 19: A Lights Manager with a TV Remote Controller
The basics of functioning
Setting up the hardware
Setting up the software
The final test
Summary
Chapter 20: A Wireless Home Controller with Z-Wave
The basics of functioning
Setting up the hardware
Setting up the software
The final test
Summary
Chapter 21: Preparing the BeagleBone Black
Unpacking and powering up
Installing additional core software packages
Making your BeagleBone Black speak
Adding additional hardware and software for a fully functional core system
Summary
Chapter 22: Building a Basic Tracked Vehicle
Choosing the tracked platform
Connecting a motor controller to control the speed of your tracked platform
Controlling your mobile platform programmatically using the BeagleBone Black and Python
Summary
Chapter 23: Adding Sensors to Your Tracked Vehicle
Basics of sensors
Adding distance sensors
Dynamic path planning for your robot
Summary
Chapter 24: Vision and Image Processing
Connecting a webcam to the BeagleBone Black
Using OpenCV
Finding colored objects in your vision system
Following colored objects with your vision system
Finding movement in your vision system
Following movement with your robot
Summary
Chapter 25: Building a Robot that Can Walk
Building robots that can walk
Working of servomotors
Building the quadruped platform
Using a servo controller to control the servos
Communicating with the servo controller via a PC
Connecting the servo controller to the BeagleBone Black
Creating a program on Linux to control your quadruped
Issuing voice commands to your quadruped
Summary
Chapter 26: A Robot that Can Sail
The BeagleBone Black and robots that can sail
Remote control of the sailboat
Summary
Chapter 27: Using GPS for Navigation
Beginning with a GPS tutorial
Connecting GPS to the BeagleBone Black
Parsing the GPS information
Calculating distance and bearing
Summary
Chapter 28: Measuring Wind Speed – Integrating Analog Sensors
Connecting an analog wind speed sensor
Getting sensor data from the wind speed sensor
Some basics of sailing
Summary
Chapter 29: An Underwater Remotely Operated Vehicle
Building the hardware for the ROV
Controlling brushless DC motors using the BeagleBone Black
Program to control DC motors using the BeagleBone Black
Connecting to the BeagleBone Black via a long LAN
Accessing a camera for your project
Summary
Chapter 30: A Quadcopter
Basics of quadcopter flight
Building the quadcopter
Connecting the BeagleBone Black to the quadcopter
Controlling the quadcopter using the BeagleBone Black
Summary
Chapter 31: An Autonomous Quadcopter
Controlling quadcopter flight wirelessly
Adding a game controller to your system
Adding a webcam for autonomous flight
Adding GPS for autonomous flight
Summary

Book Details

ISBN 139781788395656
Paperback1020 pages
Read More

Read More Reviews

Recommended for You

BeagleBone Robotic Projects - Second Edition Book Cover
BeagleBone Robotic Projects - Second Edition
$ 31.99
$ 22.40
Using Yocto Project with BeagleBone Black Book Cover
Using Yocto Project with BeagleBone Black
$ 31.99
$ 22.40
BeagleBone Robotic Projects Book Cover
BeagleBone Robotic Projects
$ 26.99
$ 18.90
Android for the BeagleBone Black Book Cover
Android for the BeagleBone Black
$ 14.99
$ 10.50
BeagleBone for Secret Agents Book Cover
BeagleBone for Secret Agents
$ 14.99
$ 10.50
BeagleBone By Example Book Cover
BeagleBone By Example
$ 31.99
$ 22.40