ROS机器人编程零基础入门与实践_第1页
ROS机器人编程零基础入门与实践_第2页
ROS机器人编程零基础入门与实践_第3页
ROS机器人编程零基础入门与实践_第4页
ROS机器人编程零基础入门与实践_第5页
已阅读5页,还剩67页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

ROS机器人编程零基础入门与实践读书笔记模板01思维导图目录分析读书笔记内容摘要作者介绍精彩摘录目录0305020406思维导图编程实践读者机器人机器人书培训学校开发人员机器人节点系统激光雷达结构环境底盘计算机功能文件通信关键字分析思维导图内容摘要内容摘要本书是针对ROS(机器人操作系统)初学者的入门教程,内容聚焦于ROS的使用和开发。以Ubuntu操作系统安装和使用为起点,依次介绍了ROS安装、实体/仿真机器人搭建、机器视觉、SLAM建图、导航、多机器人系统等知识,终引导读者独立完成机器人应用开发的任务。本书中的实验环境和代码基于ROS的Noetic版本。本书为读者提供了全部案例源代码和学习资料,读者可以直接扫描二维码下载。本书适合ROS用户及其编程开发人员使用,也可以作为高等学校或培训学校相关专业的参考教材。目录分析1.1Linux操作系统介绍1.2Ubuntu环境搭建1.3Ubuntu桌面使用1.4shell和常用命令第1章学习ROS必备的Linux知识1.5Ubuntu安装和卸载软件1.6vim编辑器使用1.7Linux文件系统1.8root用户和权限管理1.9嵌入式单板计算机和Linux12345第1章学习ROS必备的Linux知识1.1Linux操作系统介绍1.1.1Linux的诞生1.1.2Linux、UNIX、系统、内核和发行版1.2Ubuntu环境搭建1.2.1VMWare的安装使用1.2.2安装Ubuntu系统1.3Ubuntu桌面使用1.3.1Ubuntu的桌面布局1.3.2安装VMwareTools工具1.4shell和常用命令1.4.1shell、终端和命令1.4.2常用shell命令1.5Ubuntu安装和卸载软件1.5.1使用国内软件源提升下载速度1.5.2通过apt管理软件1.5.3通过应用商店安装卸载软件1.7Linux文件系统1.7.1Linux文件系统结构1.7.2目录内容存放规则1.8root用户和权限管理1.8.1Linux中的权限概念1.8.2文件/目录权限查看和修改1.8.3启用root用户2.1ROS是什么2.2如何安装ROS2.3ROS通信结构2.4ROS常用shell命令第2章认识ROS2.5ROS常用图形工具2.7ROS工作空间2.6ROS坐标系和tf变换第2章认识ROS2.1ROS是什么2.1.1ROS从何而来2.1.2为什么要使用ROS2.3ROS通信结构2.3.1节点和主节点2.3.2话题(Topic)2.3.3服务(Service)2.3.4动作(Action)2.3.5参数服务器2.5ROS常用图形工具2.5.1rqt工具箱2.5.2rviz2.6ROS坐标系和tf变换2.6.1ROS中的坐标定义2.6.2ROS中的tf变换2.7ROS工作空间2.7.1ROS工作空间是什么2.7.2创建并使用一个工作空间3.1ROS开发环境搭建3.2新建一个ROS功能包3.3编写一对发布订阅节点(C++)3.4编写一对发布订阅节点(Python)第3章ROS编程基础3.5编写launch文件用于启动节点3.6创建新消息类型并编写节点发布消息3.7创建一个服务类型并编写服务端/客户端节点3.8tf变换编程入门第3章ROS编程基础3.1ROS开发环境搭建3.1.1Ubuntu下安装VSCode3.1.2VSCode常用插件安装3.3编写一对发布订阅节点(C++)3.3.1编写发布节点(C++)3.3.2编写订阅节点(C++)3.4编写一对发布订阅节点(Python)3.4.1编写发布节点(Python)3.4.2编写订阅节点(Python)3.5编写launch文件用于启动节点3.5.1通过launch文件启动C++编译的节点3.5.2通过launch文件启动Python节点3.5.3在launch文件中调用launch文件3.6创建新消息类型并编写节点发布消息3.6.1编写自定义消息3.6.2验证消息正常产生3.6.3编写节点发布自定义消息类型(C++)3.6.4编写节点订阅自定义消息类型(Python)3.7创建一个服务类型并编写服务端/客户端节点3.7.1定义并编写一个自定义服务3.7.2通过rossrv验证服务产生3.7.3编写自定义服务的服务端(C++)3.7.4编写自定义服务的服务端(Python)3.7.5编写自定义服务的客户端(C++)3.7.6编写自定义服务的客户端(Python)3.8tf变换编程入门3.8.1通过static_transform_publisher发布静态坐标变换3.8.2编写节点实现动态tf变换(Python)3.8.3编写节点实现动态tf变换(C++)4.1机器人系统的典型构成4.2几种常见的机器人底盘运动学模型4.3驱动和电池系统4.4控制系统—底盘控制器4.5控制系统—车载计算机4.6机器人上常用的传感器010302040506第4章ROS机器人平台搭建4.7远程连接车载计算机4.8底盘启动和控制4.9机器人底盘ROS节点源码解析4.10ROS分布式通信配置第4章ROS机器人平台搭建4.2几种常见的机器人底盘运动学模型4.2.1差速转向结构4.2.2阿克曼转向结构4.2.3全向运动结构4.3驱动和电池系统4.3.1驱动系统——电动机4.3.2电池系统4.5控制系统—车载计算机4.5.1车载计算机需要实现的功能4.5.2车载计算机的选择4.5.3将车载计算机和底盘控制器连接起来4.6机器人上常用的传感器4.6.1获取机器人运动状态——编码器和IMU4.6.2让机器人看见世界——摄像头4.6.3让机器人感知世界的“深浅”——立体相机4.6.4让机器人具备全向感知能力——激光雷达4.7远程连接车载计算机4.7.1路由模式和WiFi模式4.7.2SSH远程登录4.7.3使用远程桌面连接机器人4.8底盘启动和控制4.8.1启动底盘驱动节点4.8.2控制机器人运动4.8.3向launch文件中传入变量4.9机器人底盘ROS节点源码解析4.9.1base_control功能包文件结构4.9.2base_control.launch文件解读4.9.3base_control.py源码解读4.9.4bash脚本与udev规则4.10ROS分布式通信配置4.10.1分布式通信配置条件检查4.10.2分布式通信配置和测试验证5.1为什么要有机器人仿真环境5.2在Stage仿真器中创建机器人5.3在Gazebo仿真器中创建机器人5.4机器人模型和URDF文件第5章机器人仿真环境搭建5.1为什么要有机器人仿真环境5.1.1机器人仿真主要解决的问题5.1.2仿真环境中的机器人和真实机器人的5.2在Stage仿真器中创建机器人5.2.1Stage仿真器简介5.2.2创建Stage仿真器地图和机器人模型5.2.3控制Stage仿真器中的机器人5.3在Gazebo仿真器中创建机器人5.3.1Gazebo仿真器简介5.3.2Gazebo仿真器中的环境模型5.4机器人模型和URDF文件5.4.1URDF文件5.4.2xacro文件和Gazebo插件5.4.3通过Solidworks创建机器人模型6.1摄像头的驱动和图像话题订阅6.3实例—基于OpenCV的机器人巡线6.2连接ROS和OpenCV第6章ROS中的OpenCV和机器视觉6.1摄像头的驱动和图像话题订阅6.1.1启动摄像头6.1.2订阅摄像头图像并显示6.1.3摄像头参数标定6.2连接ROS和OpenCV6.2.1ROS图像话题和OpenCV图像格式差异6.2.2运行OpenCV官方ROS例程6.2.3opencv_apps的二进制包和源码包6.3实例—基于OpenCV的机器人巡线6.3.1机器人巡线环境搭建和应用启动6.3.2机器人巡线代码分析6.3.3调整机器人的巡线颜色7.1启动激光雷达和数据查看7.2机器人运行激光SLAM7.3机器人运行激光雷达导航和避障7.4机器人导航的应用第7章激光雷达SLAM建图和自主导航7.1启动激光雷达和数据查看7.1.1启动机器人上的激光雷达7.1.2rviz中查看激光雷达数据7.1.3激光雷达使用注意事项7.2机器人运行激光SLAM7.2.1启动机器人激光SLAM应用7.2.2控制机器人进行建图7.2.3切换其他SLAM算法7.3机器人运行激光雷达导航和避障7.3.1启动激光雷达导航应用7.3.2环境中新增障碍物条件下的导航7.3.3路径规划算法的切换7.4机器人导航的应用7.4.1工厂AGV—多目标点导航7.4.2巡逻机器人—多点全自动巡航7.4.3无地图条件下导航8.2ROS多机器人系统搭建8.1ROS多机器人系统概述第8章ROS多机器人系统8.4多机器人导航8.3多机器人系统的控制第8章ROS多机器人系统8.1ROS多机器人系统概述8.1.1多机器人系统概述8.1.2ROS和多机器人系统8.2ROS多机器人系统搭建8.2.1ROS多机器人系统通信和时间配置8.2.2实体机器人多机器人系统测试8.2.3Gazebo仿真环境中的多机器人8.3多机器人系统的控制8.3.1独立控制系统内的任一机器人8.3.2同步控制系统内的所有机器人8.4多机器人导航8.4.1多机器人导航问题分析8.4.2运行多机器人导航9.1机器人控制例程开发9.3将编写的代码传输到机器人上9.2激光雷达跟随功能开发第9章自己编写程序控制机器人9.1机器人控制例程开发9.1.1控制机器人做圆周运动9.1.2实现机器人前进1m-后退1m循环动作9.1.3在

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论