更新时间:2021-06-24 17:06:26
封面
Title Page
Copyright and Credits
Hands-On ROS for Robotics Programming
About Packt
Why subscribe?
Contributors
About the author
About the reviewers
Packt is searching for authors like you
Preface
Who this book is for
What this book covers
To get the most out of this book
Download the example code files
Download the color images
Code in Action
Conventions used
Get in touch
Reviews
Section 1: Physical Robot Assembly and Testing
Assembling the Robot
Understanding the GoPiGo3 robot
The robotics perspective
The programming perspective
Robot kit and resources
Getting familiar with the embedded hardware
The GoPiGo3 board
Raspberry Pi 3B+
Why does a robot need a CPU?
Deep diving into the electromechanics
The most useful sensors
Distance sensor
Line follower
IMU sensor
Pi Camera
Putting it all together
Quick hardware test
Resources
Getting started with DexterOS
Coding with Bloxter
Calibrating the robot
Driving the robot
Checking the sensors
Shutting down the robot
Summary
Questions
Further reading
Unit Testing of GoPiGo3
Technical requirements
Getting started with Python and JupyterLab
Launching JupyterLab for GoPiGo3
Hardware testing
Testing battery LEDs and motors/encoders
Battery level
Hardware information and current voltage levels
LEDs and blinkers
Motors and encoders test
Unit testing of sensors and drives
Quick start with sensors and motors
Driving around
Check port connections
Distance sensor unit test
GoPiGo3 API library
DI sensors API library
Servo package
Servo package unit test
Line follower unit test
Inertial Measurement Unit (IMU)
IMU unit test
Raspberry Pi
Pi unit test
GoPiGo3 projects
Getting Started with ROS
ROS basic concepts
The ROS graph
roscore
Workspaces and catkin
Configuring your ROS development environment
Installing ROS
Ubuntu and ROS in the Raspberry Pi
Integrated Development Environment (IDE)
Installing RoboWare Studio
Communication between ROS nodes – messages and topics
Creating a workspace
Creating a workspace and building it using RoboWare
Setting up the ROS package
Accessing package files and building the workspace using RoboWare
A node publishing a topic
A node that listens to the topic
Combining the publisher and subscriber in the same node
Using publicly available packages for ROS