My Account Log in

3 options

ROS robotics by example : learning to control wheeled, limbed, and flying robots using ROS kinetic kame. / Carol Fairchild, Dr. Thomas L. Harman.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central College Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Fairchild, Carol, author.
Harman, Thomas L., Dr., author.
Language:
English
Subjects (All):
Robots--Programming.
Robots.
Personal robotics.
Physical Description:
1 online resource (1 volume) : illustrations
Edition:
Second edition.
Other Title:
Robot Operating System robotics by example
Place of Publication:
Birmingham, [England] ; Mumbai, [India] : Packt Publishing, 2017.
System Details:
text file
Biography/History:
Joseph Lentin: Lentin Joseph is an author and robotics entrepreneur from India. He runs a robotics software company called Qbotics Labs in India. He has 7 years of experience in the robotics domain primarily in ROS, OpenCV, and PCL. He has authored four books in ROS, namely, Learning Robotics using Python, Mastering ROS for Robotics Programming, ROS Robotics Projects, and Robot Operating System for Absolute Beginners. He is currently pursuing his master's in Robotics from India and is also doing research at Robotics Institute, CMU, USA. Fairchild Carol: Carol Fairchild is the owner and principal engineer of Fairchild Robotics, a robotics development and integration company. She is a researcher at Baxter's Lab at the University of HoustonClear Lake (UHCL) and a member of the adjunct faculty. Her research involves the use of Baxter for expanded applications. Ms. Fairchild has been involved in many aspects of robotics from her earliest days of building her first robot, a Heathkit Hero. She has an MS in computer engineering from UHCL and a BS in engineering technology from Texas A&M. Ms. Fairchild has taught middle-school robotics, coached FLL, and volunteered for FIRST Robotics in Houston. Harman Dr. Thomas L. : Dr. Thomas L. Harman is the chair of the engineering division at UHCL. His research interests are control systems and applications of robotics and microprocessors. Several of his research papers with colleagues involve robotic and laser applications in medicine. In 2005, he was selected as the UHCL Distinguished Professor. He has been a judge and safety advisor for the FIRST robotic contests in Houston. Dr. Harman has authored or coauthored 18 books on subjects including microprocessors, MATLAB and Simulink applications, and the National Electrical Code. His laboratory at UHCL has a Baxter two-armed robot and several TurtleBots as well as other robots.
Summary:
Learning how to build and program your own robots with the most popular open source robotics programming framework About This Book Get to know the fundamentals of ROS and apply its concepts to real examples Learn how to write robotics applications without getting bogged down in hardware problems Learn to implement best practices in ROS development Who This Book Is For This book is for robotic enthusiasts, researchers and professional robotics engineers who would like to build robot applications using ROS. It gives the robotics beginner and the ROS newbie an immensely practical introduction to robot building and robotics application coding. Basic knowledge of GNU/Linux and the ability to write simple applications is assumed, but no robotics knowledge, practical or theoretical, is needed. What You Will Learn Control a robot without requiring a PhD in robotics Simulate and control a robot arm Control a flying robot Send your robot on an independent mission Learning how to control your own robots with external devices Program applications running on your robot Extend ROS itself Extend ROS with the MATLAB Robotics System Toolbox In Detail ROS is a robust robotics framework that works regardless of hardware architecture or hardware origin. It standardizes most layers of robotics functionality from device drivers to process control and message passing to software package management. But apart from just plain functionality, ROS is a great platform to learn about robotics itself and to simulate, as well as actually build, your first robots. This does not mean that ROS is a platform for students and other beginners; on the contrary, ROS is used all over the robotics industry to implement flying, walking and diving robots, yet implementation is always straightforward, and never dependent on the hardware itself. ROS Robotics has been the standard introduction to ROS for potential professionals and hobbyists alike since the original edition came out; the second edition adds a gradual introduction to all the goodness available with the Kinetic Kame release. By providing you with step-by-step examples including manipulator arms and flying robots, the authors introduce you to the new features. The book is intensely practical, with space given to theory only when absolutely necessary. By the end of this book, you will have hands-on experience on controlling robots with the best possible framework. Style and approach ROS Robotics By Example, Second Edition give...
Contents:
Cover
Copyright
Credits
About the Authors
About the Reviewer
www.PacktPub.com
Customer Feedback
Table of Contents
Preface
Chapter 1: Getting Started with ROS
What does ROS do and what are the benefits of learning ROS?
Who controls ROS?
Which robots are using ROS?
Installing and launching ROS
Configuring your Ubuntu repositories
Setting up your sources.list file
Setting up your keys
Installing ROS Kinetic
Initialize rosdep
Environment setup
Getting rosinstall
Troubleshooting - examining your ROS environment
Creating a catkin workspace
ROS packages and manifest
ROS manifest
Exploring the ROS packages
rospack find packages
rospack list
ROS nodes, topics, and messages
ROS nodes
ROS topics
ROS messages
ROS Master
Invoking the ROS Master using roscore
ROS commands to determine the nodes and topics
Turtlesim - the first ROS robot simulation
Starting turtlesim nodes
rosrun command
Turtlesim nodes
Turtlesim topics and messages
rostopic list
rostopic type
rosmsg list
rosmsg show
rostopic echo
Move the turtle by publishing /turtle1/cmd_vel
Move the turtle using the keyboard or joystick
Parameter Server of Turtlesim
rosparam help
rosparam list for the /turtlesim node
Change parameters for the color of the turtle's background
ROS services to move turtle
rosservice call
ROS commands summary
Summary
Chapter 2: Creating Your First Two-Wheeled ROS Robot (in Simulation)
Introducing rviz
Installing and launching rviz
Getting familiar with rviz
Displays panel
Views and Time panels
Toolbar
Main window menu bar
Creating and building a ROS package
Building a differential drive robot URDF
Creating a robot chassis
Using roslaunch
Adding wheels
Adding a caster.
Adding color
Adding collisions
Moving the wheels
A word about tf and robot_state_publisher
Adding physical properties
Trying URDF tools
check_urdf
urdf_to_graphiz
Gazebo
Installing and launching Gazebo
Using roslaunch with Gazebo
Getting familiar with Gazebo
Environment toolbar
World, Insert and Layers panels
Joints panel
Simulation panel
Modifications to the robot URDF
Adding the Gazebo tag
Specifying color in Gazebo
A word about the &lt
visual&gt
and &lt
collision&gt
elements in Gazebo
Verifying a Gazebo model
Viewing the URDF in Gazebo
Tweaking your model
Moving your model around
Other ROS simulation environments
Chapter 3: Driving Around with TurtleBot
Introducing TurtleBot 2
Loading TurtleBot 2 simulator software
Launching TurtleBot 2 simulator in Gazebo
Problems and troubleshooting
ROS commands and Gazebo
Keyboard teleoperation of TurtleBot 2 in simulation
Setting up to control a real TurtleBot 2
TurtleBot 2 standalone test
Networking the netbook and remote computer
Types of networks
Network addresses
Remote computer network setup
Netbook network setup
Secure Shell (SSH) connection
Summary of network setup
Troubleshooting your network connection
Testing the TurtleBot 2 system
TurtleBot 2 hardware specifications
TurtleBot 2 dashboard
Moving the real TurtleBot 2
Using keyboard teleoperation to move TurtleBot 2
Using ROS commands to move TurtleBot 2 around
Writing your first Python script to control TurtleBot 2
Introducing rqt tools
rqt_graph
rqt message publisher and topic monitor
TurtleBot's odometry
Odom for the simulated TurtleBot 2
Real TurtleBot 2's odometry display in rviz
TurtleBot 2 automatic docking
Introducing TurtleBot 3.
Loading TurtleBot 3 simulation software
Launching TurtleBot 3 simulation in rviz
Launching TurtleBot 3 simulation in Gazebo
Hardware assembly and testing
Loading TurtleBot 3 software
Installing remote computer software
Installing SBC software
Loading Ubuntu MATE
Loading ROS packages
Loading TurtleBot 3 packages
Setting up udev rules for TurtleBot 3
Networking TurtleBot 3 and the remote computer
TurtleBot 3 network setup
SSH connection
Testing the SSH communication
Moving the real TurtleBot 3
Using keyboard teleoperation to move TurtleBot 3
Chapter 4: Navigating the World with TurtleBot
3D vision systems for TurtleBot
How these 3D vision sensors work
Comparison of 3D sensors
Microsoft Kinect
ASUS
PrimeSense Carmine
Intel RealSense
Hitachi-LG LDS
Obstacle avoidance drawbacks
Configuring TurtleBot and installing the 3D sensor software
Kinect
ASUS and PrimeSense
Camera software structure
Defining terms
Testing the 3D sensor in standalone mode
Running ROS nodes for visualization
Visual data using Image Viewer
Visual data using rviz
Navigating with TurtleBot
Mapping a room with TurtleBot 2
Building a map
How does TurtleBot accomplish this mapping task?
Autonomous navigation with TurtleBot 2
Driving without steering TurtleBot 2
rviz control
How does TurtleBot accomplish this navigation task?
Navigating to a designated location
Navigating to waypoints with a Python script using a map
Defining TurtleBot's position on a map
Defining waypoints on a map
Using Python code to move TurtleBot
TurtleBot at final goal point
SLAM for TurtleBot 3.
Autonomous navigation with TurtleBot 3
rqt_reconfigure
Exploring ROS navigation further
Chapter 5: Creating Your First Robot Arm (in Simulation)
Features of Xacro
Building an articulated robot arm URDF using Xacro
Specifying a namespace
Using the Xacro property tag
Expanding Xacro
Using roslaunch for rrbot
Using the Xacro include and macro tags
Adding mesh to the robot arm
Controlling an articulated robot arm in Gazebo
Adding Gazebo-specific elements
Fixing the robot arm to the world
Viewing the robot arm in Gazebo
Adding controls to Xacro
Defining transmission elements for joints
Adding a Gazebo ROS control plugin
Creating a YAML configuration file
Creating a control launch file
Controlling your robot arm with the ROS command line
Controlling your robot arm with rqt
Trying more things in rqt
Chapter 6: Wobbling Robot Arms Using Joint Control
Introducing Baxter
Baxter, the research robot
Baxter Simulator
Baxter's arms
Baxter's bend joints
Baxter's twist joints
Baxter's coordinate frame
Control modes for Baxter's arms
Baxter's grippers
Baxter's arm sensors
Loading Baxter software
Installing Baxter SDK software
Installing Baxter Simulator
Configuring the Baxter shell
Installing MoveIt!
Launching Baxter Simulator in Gazebo
Bringing Baxter Simulator to life
Warm-up exercises
Flexing Baxter's arms
Untucking Baxter's arms
Wobbling arms
Controlling arms and grippers with a keyboard
Controlling arms and grippers with a joystick
Controlling arms with a Python script
Recording and replaying arm movements
Baxter's arms and forward kinematics
Joints and joint state publisher
Understanding tf
A program to move Baxter's arms to a zero angle position.
Commanding the joint angles directly
rviz tf frames
Viewing a tf tree of robot elements
Introducing MoveIt!
Planning a move of Baxter's arms with MoveIt!
Adding objects to a scene
Position of objects
Planning a move to avoid obstacles with MoveIt!
Configuring a real Baxter setup
Controlling a real Baxter
Commanding joint position waypoints
Commanding joint torque springs
Demonstrating joint velocity
Additional examples
Visual servoing and grasping
Inverse kinematics
Moving Baxter's arms with IK
Using a state machine to perform YMCA
Chapter 7: Making a Robot Fly
Introducing quadrotors
Why are quadrotors so popular?
Defining roll, pitch, and yaw
How do quadrotors fly?
Components of a quadrotor
Adding sensors
Quadrotor communications
Understanding quadrotor sensors
Inertial measurement unit
Quadrotor condition sensors
Preparing to fly your quadrotor
Testing your quadrotor
Pre-flight checklist
Precautions when flying your quadrotor
Following the rules and regulations
Using ROS with UAVs
Introducing Hector Quadrotor
Loading Hector Quadrotor
Launching Hector Quadrotor in Gazebo
Flying Hector outdoors
Flying Hector indoors
Introducing Crazyflie 2.0
Controlling Crazyflie without ROS
Communicating using Crazyradio PA
Loading Crazyflie ROS software
Setting up udev rules for Crazyradio
Pre-flight check
Flying Crazyflie with teleop
Details of teleop_xbox360.launch
Flying with a motion capture system
Flying multiple Crazyflies
Introducing Bebop
Loading bebop_autonomy software
Testing Bebop communications
Flying Bebop using commands
Take off
Landing
Chapter 8: Controlling Your Robots with External Devices
Creating a custom ROS game controller interface.
Testing a game controller.
Notes:
Includes index.
Includes bibliographical references and index.
Description based on online resource; title from PDF title page (EBC, viewed January 3, 2018).
ISBN:
9781788474726
1788474724
OCLC:
1019128796

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account