• Complain

Mahtani - Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS

Here you can read online Mahtani - Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS full text of the book (entire story) in english for free. Download pdf and epub, get meaning, cover and reviews about this ebook. City: Birmingham, year: 2016, publisher: Packt Publishing, genre: Home and family. Description of the work, (preface) as well as reviews are available. Best literature library LitArk.com created for fans of good reading and offers a wide selection of genres:

Romance novel Science fiction Adventure Detective Science History Home and family Prose Art Politics Computer Non-fiction Religion Business Children Humor

Choose a favorite category and find really read worthwhile books. Enjoy immersion in the world of imagination, feel the emotions of the characters or learn something new for yourself, make an fascinating discovery.

Mahtani Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS
  • Book:
    Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS
  • Author:
  • Publisher:
    Packt Publishing
  • Genre:
  • Year:
    2016
  • City:
    Birmingham
  • Rating:
    4 / 5
  • Favourites:
    Add to favourites
  • Your mark:
    • 80
    • 1
    • 2
    • 3
    • 4
    • 5

Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS: summary, description and annotation

We offer to read an annotation, description, summary or preface (depends on what the author of the book "Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS" wrote himself). If you haven't found the necessary information about the book — write in the comments, we will try to find it.

Creating transforms -- Creating a broadcaster -- Creating a listener -- Watching the transformation tree -- Publishing sensor information -- Creating the laser node -- Publishing odometry information -- How Gazebo creates the odometry -- Using Gazebo to create the odometry -- Creating our own odometry -- Creating a base controller -- Creating our base controller -- Creating a map with ROS -- Saving the map using map_server -- Loading the map using map_server -- Summary -- Chapter 6: The Navigation Stack - Beyond Setups -- Creating a package -- Creating a robot configuration -- Configuring the costmaps - global_costmap and local_costmap -- Configuring the common parameters -- Configuring the global costmap -- Configuring the local costmap -- Base local planner configuration -- Creating a launch file for the navigation stack -- Setting up rviz for the navigation stack -- The 2D pose estimate -- The 2D nav goal -- The static map -- The particle cloud -- The robots footprint -- The local costmap -- The global costmap -- The global plan -- The local plan -- The planner plan -- The current goal -- Adaptive Monte Carlo Localization -- Modifying parameters with rqt_reconfigure -- Avoiding obstacles -- Sending goals -- Summary -- Chapter 7: Manipulation with MoveIt! -- The MoveIt! architecture -- Motion planning -- The planning scene -- World geometry monitor -- Kinematics -- Collision checking -- Integrating an arm in MoveIt! -- Whats in the box? -- Generating a MoveIt! package with the Setup Assistant -- Integration into RViz -- Integration into Gazebo or a real robotic arm -- Simple motion planning -- Planning a single goal -- Planning a random target -- Planning a predefined group state -- Displaying the target motion -- Motion planning with collisions -- Adding objects to the planning scene -- Removing objects from the planning scene.;Using the GDB debugger with ROS nodes -- Attaching a node to GDB while launching ROS -- Profiling a node with valgrind while launching ROS -- Enabling core dumps for ROS nodes -- Logging messages -- Outputting logging messages -- Setting the debug message level -- Configuring the debugging level of a particular node -- Giving names to messages -- Conditional and filtered messages -- Showing messages once, throttling, and other combinations -- Using rqt_console and rqt_logger_level to modify the logging level on the fly -- Inspecting the system -- Inspecting the nodes graph online with rqt_graph -- Setting dynamic parameters -- Dealing with the unexpected -- Visualizing nodes diagnostics -- Plotting scalar data -- Creating a time series plot with rqt_plot -- Image visualization -- Visualizing a single image -- 3D visualization -- Visualizing data in a 3D world using rqt_rviz -- The relationship between topics and frames -- Visualizing frame transformations -- Saving and playing back data -- What is a bag file? -- Recording data in a bag file with rosbag -- Playing back a bag file -- Inspecting all the topics and messages in a bag file -- Using the rqt_gui and rqt plugins -- Summary -- Chapter 4: 3D Modeling and Simulation -- A 3D model of our robot in ROS -- Creating our first URDF file -- Explaining the file format -- Watching the 3D model on rviz -- Loading meshes to our models -- Making our robot model movable -- Physical and collision properties -- Xacro - a better way to write our robot models -- Using constants -- Using math -- Using macros -- Moving the robot with code -- 3D modeling with SketchUp -- Simulation in ROS -- Using our URDF 3D model in Gazebo -- Adding sensors to Gazebo -- Loading and using a map in Gazebo -- Moving the robot in Gazebo -- Summary -- Chapter 5: The Navigation Stack - Robot Setups -- The navigation stack in ROS.;Motion planning with point clouds -- The pick and place task -- The planning scene -- The target object to grasp -- The support surface -- Perception -- Grasping -- The pickup action -- The place action -- The demo mode -- Simulation in Gazebo -- Summary -- Chapter 8: Using Sensors and Actuators with ROS -- Using a joystick or a gamepad -- How does joy_node send joystick movements? -- Using joystick data to move our robot model -- Using Arduino to add sensors and actuators -- Creating an example program to use Arduino -- Robot platform controlled by ROS and Arduino -- Connecting your robot motors to ROS using Arduino -- Connecting encoders to your robot -- Controlling the wheel velocity -- Using a low-cost IMU - 9 degrees of freedom -- Installing Razor IMU ROS library -- How does Razor send data in ROS? -- Creating an ROS node to use data from the 9DoF sensor in our robot -- Using robot localization to fuse sensor data in your robot -- Using the IMU - Xsens MTi -- How does Xsens send data in ROS? -- Using a GPS system -- How GPS sends messages -- Creating an example project to use GPS -- Using a laser rangefinder - Hokuyo URG-04lx -- Understanding how the laser sends data in ROS -- Accessing the laser data and modifying it -- Creating a launch file -- Using the Kinect sensor to view objects in 3D -- How does Kinect send data from the sensors, and how do we see it? -- Creating an example to use Kinect -- Using servomotors - Dynamixel -- How does Dynamixel send and receive commands for the movements? -- Creating an example to use the servomotor -- Summary -- Chapter 9: Computer Vision -- ROS camera drivers support -- FireWire IEEE1394 cameras -- USB cameras -- Making your own USB camera driver with OpenCV -- ROS images -- Publishing images with ImageTransport -- OpenCV in ROS -- Installing OpenCV 3.0 -- Using OpenCV in ROS.;Cover -- Copyright -- Credits -- About the Authors -- About the Reviewer -- www.PacktPub.com -- Customer Feedback -- Table of Contents -- Preface -- Chapter 1: Getting Started with ROS -- PC installation -- Installing ROS Kinetic using repositories -- Configuring your Ubuntu repositories -- Setting up your source.list file -- Setting up your keys -- Installing ROS -- Initializing rosdep -- Setting up the environment -- Getting rosinstall -- How to install VirtualBox and Ubuntu -- Downloading VirtualBox -- Creating the virtual machine -- Using ROS from a Docker image -- Installing Docker -- Getting and using ROS Docker images and containers -- Installing ROS in BeagleBone Black -- Prerequisites -- Setting up the local machine and source.list file -- Setting up your keys -- Installing the ROS packages -- Initializing rosdep for ROS -- Setting up the environment in the BeagleBone Black -- Getting rosinstall for BeagleBone Black -- Basic ROS example on the BeagleBone Black -- Summary -- Chapter 2: ROS Architecture and Concepts -- Understanding the ROS Filesystem level -- The workspace -- Packages -- Metapackages -- Messages -- Services -- Understanding the ROS Computation Graph level -- Nodes and nodelets -- Topics -- Services -- Messages -- Bags -- The ROS master -- Parameter Server -- Understanding the ROS Community level -- Tutorials to practise with ROS -- Navigating through the ROS filesystem -- Creating our own workspace -- Creating an ROS package and metapackage -- Building an ROS package -- Playing with ROS nodes -- Learning how to interact with topics -- Learning how to use services -- Using Parameter Server -- Creating nodes -- Building the node -- Creating msg and srv files -- Using the new srv and msg files -- The launch file -- Dynamic parameters -- Summary -- Chapter 3: Visualization and Debugging Tools -- Debugging ROS nodes.;Visualizing the camera input images with rqt_image_view -- Camera calibration -- How to calibrate a camera -- Stereo calibration -- The ROS image pipeline -- Image pipeline for stereo cameras -- ROS packages useful for Computer Vision tasks -- Visual odometry -- Using visual odometry with viso2 -- Camera pose calibration -- Running the viso2 online demo -- Performing visual odometry with viso2 with a stereo camera -- Performing visual odometry with an RGBD camera -- Installing fovis -- Using fovis with the Kinect RGBD camera -- Computing the homography of two images -- Summary -- Chapter 10: Point Clouds -- Understanding the Point Cloud Library -- Different point cloud types -- Algorithms in PCL -- The PCL interface for ROS -- My first PCL program -- Creating point clouds -- Loading and saving point clouds to the disk -- Visualizing point clouds -- Filtering and downsampling -- Registration and matching -- Partitioning point clouds -- Segmentation -- Summary -- Index.

Mahtani: author's other books


Who wrote Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS? Find out the surname, the name of the author of the book and a list of all author's works by series.

Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS — read online for free the complete book (whole text) full work

Below is the text of the book, divided by pages. System saving the place of the last page read, allows you to conveniently read the book "Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS" online for free, without having to search again every time where you left off. Put a bookmark, and you can go to the page where you finished reading at any time.

Light

Font size:

Reset

Interval:

Bookmark:

Make
Effective Robotics Programming with ROS Third Edition

Effective Robotics Programming with ROS Third Edition

Copyright 2016 Packt Publishing

All rights reserved. No part of this book may be reproduced, stored in a retrieval system, or transmitted in any form or by any means, without the prior written permission of the publisher, except in the case of brief quotations embedded in critical articles or reviews.

Every effort has been made in the preparation of this book to ensure the accuracy of the information presented. However, the information contained in this book is sold without warranty, either express or implied. Neither the authors, nor Packt Publishing, and its dealers and distributors will be held liable for any damages caused or alleged to be caused directly or indirectly by this book.

Packt Publishing has endeavored to provide trademark information about all of the companies and products mentioned in this book by the appropriate use of capitals. However, Packt Publishing cannot guarantee the accuracy of this information.

First published: September 2013

Second edition: August 2015

Third edition: December 2016

Production reference: 1231216

Published by Packt Publishing Ltd.

Livery Place

35 Livery Street

Birmingham B3 2PB, UK.

ISBN 978-1-78646-365-4

www.packtpub.com

Credits

Authors

Anil Mahtani

Luis Snchez

Enrique Fernndez

Aaron Martinez

Reviewer

Lentin Joseph

Commissioning Editor

Kartikey Pandey

Acquisition Editor

Narsimha Pai

Content Development Editor

Abhishek Jadhav

Technical Editor

Gaurav Suri

Copy Editors

Safis Editing

Dipti Mankame

Project Coordinator

Judie Jose

Proofreader

Safis Editing

Indexer

Pratik Shirodkar

Graphics

Kirk D'Penha

Production Coordinator

Shantanu N. Zagade

Cover Work

Shantanu N. Zagade

About the Authors

Anil Mahtani is a computer scientist who has dedicated an important part of his career to underwater robotics. He first started working in the field with his master thesis, where he developed a software architecture for a low-cost ROV. During the development of his thesis, he also became the team leader and lead developer of AVORA, a team of university students that designed and developed an autonomous underwater vehicle for the Students Autonomous Underwater Challenge Europe (SAUC-E) in 2012. That same year, Anil Mahtani completed his thesis and his MSc in Computer Science at the University of Las Palmas de Gran Canaria and then became a Software Engineer at SeeByte Ltd, a world leader in smart software solutions for underwater systems. In 2015, he joined Dell Secureworks as a Software Engineer, where he applies his knowledge and skills toward developing intrusion detection and prevention systems.

During his time at SeeByte Ltd, Anil Mahtani played a key role in the development of several semi-autonomous and autonomous underwater systems for the military and oil and gas industries. In those projects, he was heavily involved in the development of autonomy systems, the design of distributed software architectures, and low-level software development and also contributed in providing Computer Vision solutions for front-looking sonar imagery. At SeeByte Ltd, he also achieved the position of project manager, managing a team of engineers developing and maintaining the internal core C++ libraries.

His professional interests lie mainly in software engineering, algorithms, data structures, distributed systems, networks, and operating systems. Anil's main role in robotics is to provide efficient and robust software solutions, addressing not only the current problems at hand but also foreseeing future problems or possible enhancements. Given his experience, he is also an asset when dealing with Computer Vision, machine learning, or control problems. Anil has also interests in DIY and electronics, and he has developed several Arduino libraries, which he has contributed back to the community.

First of all, I would like to thank my family and friends for their support and for always being there when I needed them. I would also like to thank my girlfriend Alex for her support and patience, and for being a constant source of inspiration. Finally, I would like to thank my colleagues Ihor Bilyy and Dan Good, who have taught me a lot, both personally and professionally, during these new steps in my career as a software engineer.

Luis Snchez has completed his dual master's degree in electronics and telecommunication engineering at the University of Las Palmas de Gran Canaria.

He has collaborated with different research groups as the Institute for Technological Development and Innovation (IDETIC), the Oceanic Platform of Canary Islands (PLOCAN), and the Institute of Applied Microelectronics (IUMA) where he actually researches on imaging super-resolution algorithms.

His professional interests lie in Computer Vision, signal processing, and electronic design applied on robotics systems. For this reason, he joined the AVORA team, a group of young engineers and students working on the development of Underwater Autonomous Vehicles (AUV) from scratch. Inside this project, Luis has started developing acoustic and Computer Vision systems, extracting information from different sensors such as hydrophones, sonar, or camera.

With a strong background gained in marine technology, Luis cofounded Subsea Mechatronics, a young start-up, where he works on developing remotely operated and autonomous vehicles for underwater environments.

Here's what Dario Sosa Cabrera, a marine technologies engineer and entrepreneur (and the cofounder and maker of LPA Fabrika: Gran Canaria Maker Space) has to say about Luis:

"He is very enthusiastic and an engineer in multiple disciplines. He is responsible for his work. He can manage himself and can take up responsibilities as a team leader, as demonstrated at the euRathlon competition. His background in electronics and telecommunications allows him to cover a wide range of expertise from signal processing and software, to electronic design and fabrication."

Luis has participated as a technical reviewer of the previous version of Learning ROS for Robotics Programming and as a cowriter of the second edition.

First, I have to acknowledge Aaron, Anil, and Enrique for inviting me to participate in this book. It has been a pleasure to return to work with them. Also, I want to thank the Subsea Mechatronics team for the great experience working with heavy underwater robots, we grew together during these years. I have to mention LPA Fabrika Gran Canaria Maker Space for the enthusiasm preparing and teaching educational robotics and technological projects; sharing a workspace with kids can be really motivating.

Finally, I will have to thank my family and my girlfriend for the big support and encouragement in every project where I'm involved. I want to dedicate my contribution in this book to them.

Enrique Fernndez has a PhD in computer engineering and an extensive background in robotics. His PhD thesis addressed the problem of Path Planning for Autonomous Underwater Gliders, but he also worked on other robotics projects, including SLAM, perception, vision, and control. During his doctorate, he joined the Center of Underwater Robotics Research in the University of Girona, where he developed Visual SLAM and INS modules in ROS for Autonomous Underwater Vehicles (AUVs), and participated in the Student Autonomous Underwater Challenge, Europe (SAUC-E) in 2012, and collaborated in the 2013 edition; in 2012, he was awarded a prize.

Next page
Light

Font size:

Reset

Interval:

Bookmark:

Make

Similar books «Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS»

Look at similar books to Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS. We have selected literature similar in name and meaning in the hope of providing readers with more options to find new, interesting, not yet read works.


Reviews about «Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS»

Discussion, reviews of the book Effective robotics programming with ROS find out everything you need to know to build powerful robots with the most up-to-date ROS and just readers' own opinions. Leave your comments, write what you think about the work, its meaning or the main characters. Specify what exactly you liked and what you didn't like, and why you think so.