MasteringROSforRoboticsProgramming
Mastering ROS for Robotics Programming 是一本ROS编程的进阶书籍。Mastering Ros for Robotics ProgrammingCopyright o 2015 Packt PublishingAll rights reserved. No part of this book may be reproduced, stored in a retrievalsystem, or transmitted in any form or by any means, without the prior writtenpermission of the publisher, except in the case of brief quotations embedded incritical articles or reviewsrt has been made in the preparation of this book to ensure the accuracyof the information presented However the information contained in this book issold without warranty, cither express or implied. Neither the author nor PaclPublishing and its dealers and distributors will be held liable for any damagescaused or alleged to be caused directly or indirectly by this bookPackt Publishing has endeavored to provide trademark information about all of thecompanies and products mentioned in this book by the appropriate use of capitalsHowever, Packt Publishing cannot guarantee the accuracy of this informationFirst published: December 2015Production reference: 1141215Published by Packt Publishing ltdLivery place35 Livery streetBirmingham b3 2PB UKISBN978-1-78355-1798www.packtpub.comCreditsAuthorProject CoordinatorLentin JosephHarsha|∨edReviewersProofreaderJonathan CacaceSafis EditingRuixiang DuIndexerAcquisition EditorTejal Daruwale SoniVivek AnantharamanProduction CoordinatorContent Development EditorMelwyn D'saAthira LajiCover workTechnical editorMelwyn D'saRyan KocheryCopy EditorMerilyn PereiraAlpha SinghAbout the authorLentin Joseph is an author, entrepreneur, electronics engineer, robotics enthusiast,machine vision expert, embedded programmer, and the founder and ceo of QboticsLabs(http://www.qboticslabs.com)fromIndiaHecompletedhisbachelorsdegreen electronics and communication engineering at the Federal Institute of Scienceand Technology(FISaT), Kerala. For his final year engineering project, he made asocial robot that can interact with people. The project was a huge success and wasmentioned in many forms of visual and print media. The main features of this robotwere that it can communicate with people and reply intelligently and has some imageprocessing capabilities such as face, motion, and color detection The entire project wasimplemented using the Python programming language. His interest in robotics, imageprocessing and python started with that projectAfter his graduation, for 3 years he worked in a start-up company focusing on roboticsand image processing. In the meantime he learned famous robotic software platformssuch as Robot Operating System(ROS), V-REP, Actin(a robotic simulation tool), andimage processing libraries such as OpenCV, OpenNl and PCL. He also knows robot3D designing and embedded programming on Arduino and Tiva LaunchpadAfter 3 years of work experience, he started a new company called QboticsLabs which mainly focuses on research to build up some great products indomains such as robotics and machine vision he maintains a personal website(http://www.lentinjoseph.comandatechnologyblogcalledtechnolabsz(http://www.technolabsz.com).HepublisheshisworksonhistechblogHe was also a speaker at Py Con2013, India, on the topic Learning roboticusing pythoLentinistheauthorofthebooklearningroboticsusingPython(refertohttp://learn-robotics com to know more) by Packt Publishing. The book was aboutbuilding an autonomous mobile robot using ROS and OpenCV. The book waslaunched in ICRA 2015 and was featured in the ros blog, robohub, OpenCV,the Python website, and various other such forumsLentin was a finalist in the Icra 2015 challenge, IIRATC(http://www2.isr.uc.pt/embedded/events/hratc2015/welcome.htmi)I dedicate this book to my parents because they gave me theinspiration to write this book. I also convey my regards to my friendswho helped and inspired me to write this bookAbout the reviewersJonathan Cacace was born in Naples, Italy, on December 13, 1987. He received hasa bachelors and master's degree in computer science from the university of naplesFederico II. Currently, he is attending a PhD Scholar Course in Information andAutomation Engineering at the Department of Electrical Engineering and InformationTechnology (Diett) in the same institution. His research is focused on autonomousaction planning and execution by mobile robots, high-level and low-level controlof uav platforms and human-robot interaction with humanoid robots in servicetask execution. He is the author and coauthor of several scientific publications in therobotics field, published at international conferences and scientific journalsJonathanisamemberofthePrisMaLaboratory(http://prisma.dieti.uninait/)of the University of Naples Federico ll. With his research group, he is involvedin different eu-funded collaborative research projects focused on several topics, suchas the use of unmanned aerial vehicles for search and rescue operations or servicetaskexecution(http://www.sherpa-prcject.eu/sherpa/andhttp://www.arcasproject. eu/)and the dynamic manipulation of elastic objects using humanoid roboticplatforms(http://www.rodyman.eu/)Ruixiang du is currently a PhD student studying Robotics at Worcester PolytechnicInstitute(WPl). He received his bachelor's degree in Automation from North ChinaElectric Power University in 2011 and a master's degree in Robotics Engineering fromWPIin 2013Ruixiang has worked on various robotic projects with robot platforms ranging frommedical robots UaV/UGV, to humanoid robots. Ile was an active member of TeamWPI-CMU for the DaRPa Robotics ChallengeRuixiang has general interests in robotics and in real-time and embedded systemsHis research focus is on the control and motion planning of mobile robots incluttered and dvnamic environmentsWww.Packtpub.comSupport files, eBooks, discount offersand moreFor support files and downloads related to your book,pleasevisitwww.Packtpub.com.Did you know that Packt offers ebook versions of every book published, with PdF and ePubfilesavailableYoucanupgradetotheebooKversionatwww.Packtpub.comandasaprintbook customer, you are entitled to a discount on the e book copy get in touch with us atservice@packtpub com for more detailsAtwww.Packtpub.comyoucanalsoreadacollectionoffreetechnicalarticlessignupforarange of frcc newsletters and rcccivc exclusive discounts and offers on Packt books and eBooksPACKTLIBhttps://www2.packtpub.com/books/subscription/packtlibDo you need instant solutions to your It questions? PacktLib is Packt's online digital booklibrary. Here, you can search, access, and read Packt's entire library of booksWhy subscribe?Fully searchable across every book published by packtCopy and paste, print, and bookmark contentOn demand and accessible via a web browserFree access for Packt account holdersIfyouhaveanaccountwithPacktatwww.packtpub.comyoucanusethistoaccessPacktLib today and view 9 entirely free books. Simply use your login credentials forimmediate accessTable of contentsPrefaceChapter 1: Introduction to ROS and Its Package ManagementWhy should we learn Ros?Why we prefer Ros for robotsWhy some do not prefer Ros for robots245Understanding the ros file system levelROS packagesROS meta packagesROS messagesThe ros services12Understanding the Ros computation graph levelUnderstanding ROs nodes902256ROS messagesROS topics16ROS services17ROS bags18Understanding ros masterUsing the ROs parameter20Understanding ROs community level22What are the prerequisites to start with ros?22Running ros Master and Ros parameter server23Checking the roscoe command output25Creating a ros package26Working with Ros topics28Creating ROS nodes28Building the nodesAdding custom msg and srv files34Working with ros servicesWorking with ROs actionlib[i]
暂无评论