作者 |
伯纳多·朗奎洛·贾蓬 郎坦·约瑟夫乔纳森·卡卡切 |
丛书名 |
机器人设计与制作系列 |
出版社 |
机械工业出版社 |
ISBN |
9782108271042 |
简要 |
简介 |
内容简介书籍计算机书籍 ---------------------------8083413 - ROS机器人编程实践--------------------------- 本书首先介绍GoPiGo3及其配备的传感器和执行器。然后,通过从零开始创建3D模型并使用Gazebo在ROS中运行模拟机器人来使用GoPiGo3的数字孪生模型。接下来展示如何使用GoPiGo3构建和运行一个了解周围环境的自主移动机器人。还探索了机器人如何学习尚未在代码中编程但通过观察其环境而获得的任务。本书甚至还涵盖深度学习和强化学习等主题。在本书的末尾,读者将熟悉在机器人技术中构建特定用途应用程序的基础知识,并具备从零起步开发高度智能自主机器人的能力。本书适合机器人技术人员和业余爱好者阅读。 ---------------------------8058704 - 精通ROS机器人编程(原书第2版)--------------------------- 本书主要面向机器人开发人员和想充分利用ROS功能的研究人员,是一本侧重ROS框架高级概念的进阶学习指南。书中既介绍了ROS的基本概念,又系统讲解了使用ROS进行复杂机器人设计、建模、仿真和交互的实用技术、工具和编程技巧,包含大量示例,可以为你快速提升ROS实战技能提供翔实参考。 全书共15章,第1章简要介绍ROS基本概念;第2章解释如何使用ROS软件包;第3章讨论7-DOF机械臂和差速驱动机器人的设计;第4章和第5章通过示例详细讲解如何使用Gazebo和V-REP这两个著名的机器人仿真软件;第6章介绍如何使用ROS MoveIt!和导航软件包集的现有功能;第7章讨论ROS pluginlib、小节点和控制器等一些高级概念;第8章进一步讨论RViz插件和ROS控制器;第9章讨论一些硬件组件与ROS的接口;第10章讨论如何使用ROS连接各种视觉传感器,并利用开源计算机视觉库(OpenCV)和点云库(PCL)进行编程;第11章介绍如何构建差速驱动的自主移动机器人,并将其与ROS连接;第12章介绍MoveIt!的高级功能;第13章讨论如何将Matlab和Simulink软件与ROS连接;第14章介绍ROS-Industrial软件包;第15章讨论如何在ROS中安装集成开发环境,并介绍ROS实战技巧与调试方法。 |
目录 |
[套装书具体书目] 8058704 - 精通ROS机器人编程(原书第2版) - 9787111621997 - 机械工业出版社 - 定价 99 8083413 - ROS机器人编程实践 - 9787111689157 - 机械工业出版社 - 定价 89 ---------------------------8083413 - ROS机器人编程实践--------------------------- 译者序 前言 作者简介 审校者简介 第一部分 物理机器人组装与测试 第1章 组装机器人 2 1.1GoPiGo3机器人介绍 2 1.1.1机器人技术角度 3 1.1.2编程角度 3 1.1.3机器人套件和资源 4 1.2熟悉嵌入式硬件 7 1.2.1GoPiGo3开发板 7 1.2.2Raspberry Pi 3B+ 9 1.2.3为什么机器人需要CPU 10 1.3深入理解机电 10 1.4整合到一起 17 1.5快速硬件测试 18 1.5.1资源 18 1.5.2DexterOS入门 19 1.5.3用Bloxter编程 20 1.5.4校准机器人 20 1.5.5驱动机器人 22 1.5.6检查传感器 22 1.5.7关闭机器人 23 1.6总结 23 1.7习题 24 1.8进一步阅读 24 第2章 GoPiGo3的组件测试 25 2.1技术要求 25 2.2Python和JupyterLab入门 25 2.2.1为GoPiGo3启动JupyterLab 26 2.2.2硬件测试 29 2.3传感器和驱动的组件测试 32 2.3.1快速入门传感器和电动机 32 2.3.2机器人漫游 32 2.3.3距离传感器 35 2.3.4伺服软件包 40 2.3.5巡线跟随器 42 2.3.6IMU 43 2.3.7Raspberry Pi 43 2.3.8GoPiGo3项目 45 2.4总结 46 2.5习题 46 2.6进一步阅读 47 第3章 ROS入门 48 3.1技术要求 48 3.2ROS基本概念 49 3.2.1ROS图 50 3.2.2roscore 51 3.2.3工作空间和catkin 51 3.3配置ROS开发环境 52 3.3.1安装ROS 52 3.3.2集成开发环境 55 3.4ROS节点之间的通信—消息和主题 56 3.4.1创建工作空间 56 3.4.2设置ROS软件包 60 3.4.3发布主题的节点 62 3.4.4订阅主题的节点 65 3.4.5在同一节点中合并发布者和订阅者 67 3.5对ROS使用公开可用的软件包 69 3.6总结 69 3.7习题 70 3.8进一步阅读 70 第二部分 使用Gazebo进行 机器人仿真 第4章 创建虚拟两轮ROS机器人 72 4.1技术要求 72 4.2RViz机器人可视化入门 73 4.3使用URDF构建差动驱动机器人 74 4.3.1用于GoPiGo3的URDF概述 75 4.3.2机器人主体URDF 76 4.3.3左右轮的URDF模型 79 4.4使用RViz在ROS中查看GoPiGo3模型 81 4.4.1理解roslaunch命令 82 4.4.2通过RViz控制GoPiGo3机器人的车轮 84 4.5URDF模型中的机器人参考坐标系 86 4.6在构建时使用RViz查看模型 88 4.6.1在RViz窗口中更改模型的外观 88 4.6.2使用ROS工具进行检查 89 4.7总结 90 4.8习题 90 4.9进一步阅读 91 第5章 使用Gazebo进行机器人行为仿真 92 5.1技术要求 92 5.2Gazebo仿真器入门 93 5.3修改机器人URDF 96 5.3.1扩展URDF以生成SDF机器人定义 97 5.3.2碰撞和物理性质 97 5.3.3Gazebo标签 99 5.4验证Gazebo模型并查看URDF 99 5.5移动模型 102 5.6总结 105 5.7习题 105 5.8进一步阅读 106 第三部分 使用SLAM进行自主导航 第6章 在ROS中编程—命令和工具 108 6.1技术要求 109 6.2设置物理机器人 109 6.2.1下载并设置Ubuntu Mate 18.04 109 6.2.2访问自定义 110 6.2.3设置VNC服务器(x11vnc) 110 6.2.4Geany IDE 112 6.2.5安装GoPiGo3和DI传感器的驱动程序 112 6.2.6设置Pi Camera 114 6.2.7安装ROS Melodic 115 6.3ROS编程快速入门 116 6.3.1设置工作空间 116 6.3.2克隆ROS软件包 117 6.3.3第一次执行ROS节点 117 6.4案例研究1:编写ROS距离传感器软件包 118 6.4.1创建一个新软件包 119 6.4.2编写自己的源代码 119 6.5使用ROS命令 125 6.5.1Shell命令 125 6.5.2执行命令 126 6.5.3信息命令 127 6.5.4软件包和catkin工作空间 128 6.6创建并运行发布者和订阅者节点 129 6.7使用roslaunch自动执行节点 131 6.8案例研究2:ROS GUI开发工具—Pi Camera 133 6.8.1使用rqt_graph分析ROS图 134 6.8.2使用rqt_image_view显示图像数据 135 6.8.3用rqt_plot绘制传感器数据的时间序列 135 6.8.4使用rqt_bag播放录制的ROS会话 136 6.9使用ROS参数自定义机器人功能 138 6.10总结 140 6.11习题 140 6.12进一步阅读 141 第7章 机器人控制与仿真 142 7.1技术要求 142 7.2设置GoPiGo3开发环境 143 7.3案例研究3:使用键盘进行远程控制 146 7.3.1在机器人中运行gopigo3节点 146 7.3.2遥控软件包 149 7.3.3在笔记本电脑上运行远程操作 149 7.4使用ROS主题进行远程控制 151 7.4.1运动控制主题—/cmd_vel 151 7.4.2使用/cmd_vel直接驱动GoPiGo3 152 7.4.3检查GoPiGo3的X、Y和Z轴 154 7.4.4组合运动 154 7.5远程控制物理和虚拟机器人 155 7.5.1将ROS主节点还原到本地计算机 155 7.5.2用Gazebo仿真GoPiGo3 156 7.5.3同时在真实世界和仿真中运行 158 7.6总结 159 7.7习题 160 7.8进一步阅读 160 第8章 使用Gazebo进行虚拟SLAM和导航 162 8.1技术要求 162 8.1.1ROS导航软件包 163 8.1.2在本地计算机上运行ROS主节点 164 8.2使用Gazebo进行动态仿真 164 8.3导航组件 171 8.4机器人感知和SLAM 172 8.4.1添加LDS 172 8.4.2SLAM概念 176 8.5使用GoPiGo3练习SLAM和导航 178 8.5.1探索使用SLAM构建地图的环境 178 8.5.2使用导航沿着计划的轨迹行驶 180 8.6总结 182 8.7习题 182 8.8进一步阅读 183 第9章 用于机器人导航的SLAM 184 9.1技术要求 184 9.2为机器人准备LDS 186 9.2.1设置YDLIDAR 186 9.2.2与Raspberry Pi集成 188 9.2.3从远程笔记本电脑处理YDLIDAR数据 193 9.3在ROS中创建导航应用程序 195 9.4使用GoPiGo3练习导航 196 9.4.1绘制环境图 196 9.4.2在现实世界中导航GoPiGo3 198 9.5总结 199 9.6习题 199 9.7进一步阅读 199 第四部分 使用机器学习的 自适应机器人行为 第10章 在机器人技术中应用机器学习 202 10.1技术要求 202 10.2在系统中配置TensorFlow 203 10.2.1安装pip 203 10.2.2安装TensorFlow及其他依赖项 204 10.2.3使用GPU获得更好的性能 204 10.3机器人技术中的机器学习 205 10.3.1机器学习的核心概念 206 10.3.2机器学习线程 207 10.4从机器学习到深度学习 208 10.4.1机器学习算法 208 10.4.2深度学习和神经网络 210 10.5通过编程将机器学习应用于机器人技术的方法 213 10.5.1应用程序编程的一般方法 213 10.5.2集成机器学习任务 214 10.6深度学习应用于机器人技术—计算机视觉 215 10.6.1Gazebo中的目标识别 216 10.6.2现实世界中的目标识别 217 10.7总结 220 10.8习题 220 10.9进一步阅读 221 第11章 使用OpenAI Gym进行机器学习 222 11.1技术要求 223 11.2OpenAI Gym简介 224 11.2.1安装OpenAI Gym 224 11.2.2安装OpenAI ROS 226 11.2.3智能体、人工智能和机器学习 226 11.2.4倒立摆示例 227 11.2.5Q-learning说明—自动驾驶出租车示例 231 11.3运行环境 235 11.4配置环境文件 236 11.5运行仿真并绘制结果 237 11.6总结 240 11.7习题 240 11.8进一步阅读 241 第12章 通过强化学习实现目标 242 12.1技术要求 242 12.2使用TensorFlow、Keras和Anaconda配置环境 243 12.2.1TensorFlow后端 243 12.2.2使用Keras进行深度学习 244 12.2.3ROS依赖软件包 244 12.3了解ROS机器学习软件包 244 12.3.1训练场景 245 12.3.2用于运行强化学习任务的ROS软件包结构 245 12.4设置训练任务参数 246 12.5训练GoPiGo3避开障碍物到达目标位置 247 12.5.1如何运行仿真 249 12.5.2场景1—前往目标位置 249 12.5.3场景2—避开障碍物前往目标位置 251 12.6总结 255 12.7习题 256 12.8进一步阅读 256 附录 习题答案 257 ---------------------------8058704 - 精通ROS机器人编程(原书第2版)--------------------------- 译者序 前言 作者简介 译者简介 第1章 ROS简介 1 1.1 为什么要学习ROS 1 1.2 在机器人开发中,人们为什么更愿意选择ROS 2 1.3 为什么有些人不愿意选择ROS 3 1.4 理解ROS的文件系统 4 1.4.1 ROS软件包 5 1.4.2 ROS超软件包 7 1.4.3 ROS消息 7 1.4.4 ROS服务 9 1.5 理解ROS的计算图 9 1.5.1 ROS节点 11 1.5.2 ROS消息 12 1.5.3 ROS话题 13 1.5.4 ROS服务 13 1.5.5 ROS消息记录包 14 1.5.6 ROS节点管理器 14 1.5.7 应用ROS参数 16 1.6 ROS的社区 17 1.7 学习ROS需要做哪些准备 17 1.8 习题 20 1.9 本章小结 20 第2章 ROS编程入门 21 2.1 创建一个ROS软件包 21 2.1.1 学习ROS话题 23 2.1.2 创建ROS节点 23 2.1.3 编译生成节点 26 2.2 添加自定义的msg和srv文件 28 2.3 使用ROS服务 30 2.3.1 使用ROS动作库 34 2.3.2 编译ROS动作服务器和客户端 37 2.4 创建启动文件 39 2.5 话题、服务和动作库的应用 41 2.6 维护ROS软件包 41 2.7 发布ROS软件包 42 2.7.1 准备发布ROS软件包 43 2.7.2 发布软件包 43 2.7.3 为ROS软件包创建维基页面 45 2.8 习题 47 2.9 本章小结 47 第3章 在ROS中为3D机器人建模 48 3.1 机器人建模的ROS软件包 49 3.2 利用URDF理解机器人建模 50 3.3 为机器人描述创建ROS软件包 52 3.4 创建我们的第一个URDF模型 52 3.5 详解URDF文件 54 3.6 在RViz中可视化机器人3D模型 55 3.7 向URDF模型添加物理属性和碰撞属性 57 3.8 利用xacro理解机器人建模 58 3.8.1 使用属性 58 3.8.2 使用数学表达式 59 3.8.3 使用宏 59 3.9 将xacro转换为URDF 59 3.10 为7-DOF机械臂创建机器人描述 60 3.10.1 机械臂规格 61 3.10.2 关节类型 61 3.11 解析7-DOF机械臂的xacro模型 61 3.11.1 使用常量 61 3.11.2 使用宏 62 3.11.3 包含其他xacro文件 62 3.11.4 在连杆中使用网格模型 63 3.11.5 使用机器人夹爪 63 3.11.6 在RViz中查看7-DOF机械臂 63 3.12 为差速驱动移动机器人创建机器人模型 66 3.13 习题 70 3.14 本章小结 70 第4章 使用ROS和Gazebo进行机器人仿真 71 4.1 使用Gazebo和ROS仿真机械臂 71 4.2 为Gazebo创建机械臂仿真模型 72 4.2.1 为Gazebo机器人模型添加颜色和纹理 73 4.2.2 添加transmission标签来驱动模型 74 4.2.3 添加gazebo_ros_control插件 74 4.2.4 在Gazebo中添加3D视觉传感器 75 4.3 仿真装有Xtion Pro的机械臂 76 4.4 在Gazebo中使用ROS控制器 78 4.4.1 认识ros_control软件包 78 4.4.2 不同类型的ROS控制器和硬件接口 79 4.4.3 ROS控制器如何与Gazebo交互 79 4.4.4 将关节状态控制器和关节位置控制器连接到手臂 80 4.4.5 在Gazebo中启动ROS控制器 81 4.4.6 控制机器人的关节运动 83 4.5 在Gazebo中仿真差速轮式机器人 83 4.5.1 将激光雷达添加到机器人中 85 4.5.2 在Gazebo中控制机器人移动 86 4.5.3 在启动文件中添加关节状态发布者 87 4.6 添加ROS遥控节点 88 4.7 习题 89 4.8 本章小结 89 第5章 用ROS和V-REP进行机器人仿真 91 5.1 安装带有ROS的V-REP 91 5.2 理解vrep_plugin 95 5.2.1 使用ROS服务与V-REP交互 96 5.2.2 使用ROS话题与V-REP交互 98 5.3 使用V-REP和ROS仿真机械臂 101 5.4 在V-REP下仿真差速轮式机器人 107 5.4.1 在V-REP中添加激光传感器 109 5.4.2 在V-REP中添加3D视觉传感器 110 5.5 习题 112 5.6 本章小结 112 第6章 ROS MoveIt!与导航软件包集 113 6.1 安装MoveIt! 113 6.2 使用配置助手工具生成MoveIt!配置软件包 118 6.2.1 第1步:启动配置助手工具 118 6.2.2 第2步:生成自碰撞矩阵 120 6.2.3 第3步:增加虚拟关节 120 6.2.4 第4步:添加规划组 121 6.2.5 第5步:添加机器人姿态 122 6.2.6 第6步:设置机器人的末端执行器 122 6.2.7 第7步:添加被动关节 123 6.2.8 第8步:作者信息 123 6.2.9 第9步:生成配置文件 123 6.3 使用MoveIt!配置软件包在RViz中进行机器人运动规划 124 6.3.1 使用RViz运动规划插件 125 6.3.2 MoveIt!配置软件包与Gazebo的接口 128 6.4 理解ROS导航软件包集 133 6.4.1 ROS导航硬件的要求 133 6.4.2 使用导航软件包 134 6.5 安装ROS导航软件包集 136 6.6 使用SLAM构建地图 136 6.6.1 为gmapping创建启动文件 137 6.6.2 在差速驱动机器人上运行SLAM 138 6.6.3 使用amcl和静态地图实现自主导航 141 6.6.4 创建amcl启动文件 141 6.7 习题 144 6.8 本章小结 144 第7章 使用pluginlib、小节点和Gazebo 插件 145 7.1 理解pluginlib 145 7.2 理解ROS小节点 151 7.3 理解Gazebo插件 156 7.4 习题 160 7.5 本章小结 160 第8章 ROS控制器和可视化插件编程 161 8.1 理解 ros_control软件包集 162 8.1.1 controller_interface软件包 162 8.1.2 控制器管理器 164 8.2 使用ROS编写一个基本的关节控制器 164 8.2.1 第1步:创建控制器软件包 165 8.2.2 第2步:创建控制器头文件 165 8.2.3 第3步:创建控制器源文件 166 8.2.4 第4步:控制器源文件解析 166 8.2.5 第5步:创建插件描述文件 167 8.2.6 第6步:更新package.xml文件 168 8.2.7 第7步:更新CMake-Lists.txt文件 168 8.2.8 第8步:编译控制器 168 8.2.9 第9步:编写控制器配置文件 168 8.2.10 第10步:编写控制器的启动文件 169 8.2.11 第11步:在Gazebo中运行控制器和7-DOF机械臂 169 8.3 理解ROS可视化工具(RViz)及其插件 171 8.3.1 Displays面板 172 8.3.2 RViz工具栏 172 8.3.3 Views面板 172 8.3.4 Time面板 172 8.3.5 可停靠面板 172 8.4 编写用于遥控操作的RViz插件 172 8.5 习题 178 8.6 本章小结 178 第9章 将ROS与I/O开发板、传感器、执行机构连接 179 9.1 理解Arduino-ROS接口 179 9.2 Arduino-ROS接口是什么 180 9.2.1 理解ROS中的rosserial软件包 181 9.2.2 理解Arduino中的ROS节点API 185 9.2.3 ROS-Arduino发布者和订阅者实例 187 9.2.4 Arduino-ROS接口实例——LED灯闪烁/按按钮 190 9.2.5 Arduino-ROS接口实例——ADXL 335加速度计 192 9.2.6 Arduino-ROS接口实例——超声波测距传感器 194 9.2.7 Arduino-ROS接口实例——里程计发布者 197 9.3 非Arduino开发板与ROS接口 199 9.3.1 在Odroid-XU4和树莓派2上配置ROS 199 9.3.2 用ROS控制树莓派2 上的LED灯闪烁 206 9.3.3 在树莓派2上使用ROS测试按钮和LED灯闪烁 208 9.3.4 在树莓派2上运行示例 211 9.4 将DYNAMIXEL驱动器连接到ROS 212 9.5 习题 212 9.6 本章小结 212 第10章 用ROS对视觉传感器编程、OpenCV、PCL 213 10.1 理解ROS-OpenCV开发接口软件包 213 10.2 理解ROS-PCL开发接口软件包 214 10.3 在ROS中连接USB相机 216 10.4 ROS与相机校准 218 10.4.1 使用cv_bridge在ROS和OpenCV之间转换图像 221 10.4.2 使用ROS和OpenCV进行图像处理 221 10.5 在ROS中连接Kinect与华硕Xtion Pro 225 10.6 将英特尔Real Sense相机与ROS连接 228 10.7 在ROS中连接Hokuyo激光雷达 232 10.8 处理点云数据 233 10.8.1 如何发布点云 234 10.8.2 如何订阅和处理点云 235 10.8.3 将点云数据写入点云数据(PCD)文件 236 10.8.4 从PCD文件中读取并发布点云 237 10.9 物体姿态估计与AR标记检测 239 10.10 习题 243 10.11 本章小结 244 第11章 在ROS中构造与连接差速驱动移动机器人 245 11.1 Chefbot DIY移动机器人及其硬件配置 246 11.1.1 使用Energia IDE来烧写Chefbot固件 248 11.1.2 讨论Chefbot的ROS软件包接口 249 11.1.3 从编码器计数计算里程计信息 254 11.1.4 根据ROS twist消息计算马达转速 256 11.1.5 为Chefbot机器人配置导航软件包集 257 11.1.6 配置gmapping节点 257 11.1.7 配置导航软件包集 259 11.1.8 理解AMCL 264 11.1.9 在RViz中使用导航功能 267 11.1.10 导航软件包中避障 272 11.1.11 Chefbot机器人仿真 273 11.1.12 从ROS节点向导航软件包集发送一个目的地 276 11.2 习题 278 11.3 本章小结 278 第12章 探索ROS-MoveIt!的高级功能 279 12.1 使用move_group的C++接口进行运动规划 279 12.1.1 使用MoveIt! C++ API规划随机路径 280 12.1.2 使用MoveIt! C++ API规划自定义路径 281 12.2 使用MoveIt!进行机械臂的碰撞检测 283 12.2.1 向MoveIt!添加碰撞对象 283 12.2.2 从规划场景中移除碰撞对象 286 12.2.3 向机器人连杆上添加一个碰撞对象 286 12.2.4 使用MoveIt! API检查自碰撞 287 12.3 使用MoveIt!和Gazebo处理视觉 288 12.4 使用MoveIt!执行拾取和放置任务 294 12.4.1 使用GPD计算抓握姿态 297 12.4.2 在Gazebo和真实机器人上执行拾取和放置动作 300 12.5 理解用于机器人硬件接口的DYNAMIXEL ROS伺服控制器 300 12.5.1 DYNAMIXEL伺服舵机 300 12.5.2 DYNAMIXEL-ROS接口 301 12.6 7-DOF机械臂与ROS MoveIt! 302 12.6.1 为COOL机械臂创建一个控制器软件包 303 12.6.2 COOL机械臂的MoveIt!配置 306 12.7 习题 308 12.8 本章小结 308 第13章 在MATLAB和Simulink中使用ROS 309 13.1 学习使用MATLAB与MATLAB-ROS 309 13.1.1 机器人系统工具箱和ROS-MATLAB接口入门 310 13.1.2 ROS话题和MATLAB回调函数 313 13.1.3 为Turtlebot机器人设计一个避障系统 317 13.2 学习使用ROS与Simulink 321 13.2.1 在Simulink中创建波形信号积分器 321 13.2.2 在Simulink中使用ROS消息 323 13.2.3 在Simulink中发布ROS消息 323 13.2.4 在Simulink中订阅ROS话题 327 13.3 用Simulink开发一个简单的控制系统 328 13.4 习题 332 13.5 本章小结 332 第14章 ROS与工业机器人 333 14.1 理解ROS-Industrial软件包 333 14.1.1 ROS-Industrial的目标 334 14.1.2 ROS-Industrial简史 334 14.1.3 ROS-Industrial优点 334 14.2 安装ROS-Industrial软件包 334 14.3 ROS-Industrial软件包框图 335 14.4 为工业机器人创建URDF 336 14.5 为工业机器人创建MoveIt!配置 337 14.5.1 更新MoveIt!配置文件 340 14.5.2 测试MoveIt!配置 341 14.6 安装UR机械臂的ROS-Industrial软件包 341 14.7 理解UR机械臂的MoveIt!配置 343 14.8 使用真实的UR机器人和ROS-I 345 14.9 ABB机器人的MoveIt!配置 346 14.10 ROS-Industrial机器人支持软件包 349 14.11 ROS-Industrial 机器人客户端软件包 351 14.12 ROS-Industrial 机器人驱动软件包 352 14.13 理解MoveIt! IKFast插件 354 14.14 为ABB IRB 6640机器人创建MoveIt! IKFast插件 354 14.14.1 开发MoveIt! IKFast插件的前提条件 354 14.14.2 OpenRave和IKFast模块 354 14.15 为使用OpenRave,创建机器人的COLLADA文件 357 14.16 为IRB 6640机器人生成IKFast CPP文件 358 14.17 习题 361 14.18 本章小结 361 第15章 调试方法与最佳实战技巧 362 15.1 在Ubuntu中安装RoboWare Studio 362 15.1.1 安装和卸载RoboWare Studio 363 15.1.2 RoboWare Studio入门 363 15.1.3 在RoboWare Studio中创建ROS软件包 364 15.1.4 在RoboWare Studio中编译ROS工作区 366 15.1.5 在RoboWare Studio中运行ROS节点 367 15.1.6 在RoboWare界面启动ROS工具 368 15.1.7 处理活动的ROS话题、节点和服务 369 15.1.8 使用RoboWare工具创建ROS节点和类 370 15.1.9 RoboWare Studio中的ROS软件包管理器 371 15.2 ROS的最佳实战技巧与经验 372 15.3 ROS软件包中的最佳实战技巧与经验 374 15.4 ROS中的重要调试技巧 374 15.5 习题 377 15.6 本章小结 378 |