EffectiveRoboticsProgrammingwithROS
ThirdEdition
TableofContents
EffectiveRoboticsProgrammingwithROSThirdEdition
Credits
AbouttheAuthors
AbouttheReviewer
www.PacktPub.com
eBooks,discountoffers,andmore
Whysubscribe?
CustomerFeedback
Preface
Whatthisbookcovers
Whatyouneedforthisbook
Whothisbookisfor
Conventions
Readerfeedback
Customersupport
Downloadingtheexamplecode
Downloadingthecolorimagesofthisbook
Errata
Piracy
Questions
1.GettingStartedwithROS
PCinstallation
InstallingROSKineticusingrepositories
ConfiguringyourUbunturepositories
Settingupyoursource.listfile
Settingupyourkeys
InstallingROS
Initializingrosdep
Settinguptheenvironment
Gettingrosinstall
HowtoinstallVirtualBoxandUbuntu
DownloadingVirtualBox
Creatingthevirtualmachine
UsingROSfromaDockerimage
InstallingDocker
GettingandusingROSDockerimagesandcontainers
InstallingROSinBeagleBoneBlack
Prerequisites
Settingupthelocalmachineandsource.listfile
Settingupyourkeys
InstallingtheROSpackages
InitializingrosdepforROS
SettinguptheenvironmentintheBeagleBoneBlack
GettingrosinstallforBeagleBoneBlack
BasicROSexampleontheBeagleBoneBlack
Summary
2.ROSArchitectureandConcepts
UnderstandingtheROSFilesystemlevel
Theworkspace
Packages
Metapackages
Messages
Services
UnderstandingtheROSComputationGraphlevel
Nodesandnodelets
Topics
Services
Messages
Bags
TheROSmaster
ParameterServer
UnderstandingtheROSCommunitylevel
TutorialstopractisewithROS
NavigatingthroughtheROSfilesystem
Creatingourownworkspace
CreatinganROSpackageandmetapackage
BuildinganROSpackage
PlayingwithROSnodes
Learninghowtointeractwithtopics
Learninghowtouseservices
UsingParameterServer
Creatingnodes
Buildingthenode
Creatingmsgandsrvfiles
Usingthenewsrvandmsgfiles
Thelaunchfile
Dynamicparameters
Summary
3.VisualizationandDebuggingTools
DebuggingROSnodes
UsingtheGDBdebuggerwithROSnodes
AttachinganodetoGDBwhilelaunchingROS
ProfilinganodewithvalgrindwhilelaunchingROS
EnablingcoredumpsforROSnodes
Loggingmessages
Outputtingloggingmessages
Settingthedebugmessagelevel
Configuringthedebugginglevelofaparticularnode
Givingnamestomessages
Conditionalandfilteredmessages
Showingmessagesonce,throttling,andothercombinations
Usingrqt_consoleandrqt_logger_leveltomodifythelogginglevelonthefly
Inspectingthesystem
Inspectingthenode'sgraphonlinewithrqt_graph
Settingdynamicparameters
Dealingwiththeunexpected
Visualizingnodesdiagnostics
Plottingscalardata
Creatingatimeseriesplotwithrqt_plot
Imagevisualization
Visualizingasingleimage
3Dvisualization
Visualizingdataina3Dworldusingrqt_rviz
Therelationshipbetweentopicsandframes
Visualizingframetransformations
Savingandplayingbackdata
Whatisabagfile?
Recordingdatainabagfilewithrosbag
Playingbackabagfile
Inspectingallthetopicsandmessagesinabagfile
Usingtherqt_guiandrqtplugins
Summary
4.3DModelingandSimulation
A3DmodelofourrobotinROS
CreatingourfirstURDFfile
Explainingthefileformat
Watchingthe3Dmodelonrviz
Loadingmeshestoourmodels
Makingourrobotmodelmovable
Physicalandcollisionproperties
Xacro–abetterwaytowriteourrobotmodels
Usingconstants
Usingmath
Usingmacros
Movingtherobotwithcode
3DmodelingwithSketchUp
SimulationinROS
UsingourURDF3DmodelinGazebo
AddingsensorstoGazebo
- 1
- 2
- 3
前往页