作者 |
[印]郎坦·约瑟夫(Lentin Joseph) |
丛书名 |
智能系统与技术丛书 |
出版社 |
机械工业出版社 |
ISBN |
9787111691341 |
简要 |
简介 |
内容简介书籍计算机书籍 本书解释了如何从零开始构建一个自主移动机器人,并使用Python对其进行编程。本书从机器人的基础概念开始,然后介绍机器人的3D建模和仿真。在对机器人成功进行仿真之后,讨论了建立机器人原型所需的硬件组成。在本教程结束时,你将清楚地了解如何将所有东西集成到机器人中,以及如何将打包软件。 |
目录 |
前言 第1章ROS入门1 11技术要求1 12ROS概述1 121ROS框架3 122在Ubuntu上安装ROS6 123什么是catkin9 124创建ROS软件包10 125什么是Gazebo14 13本章小结17 14习题17 第2章差分驱动机器人的基础知识18 21数学建模18 22正向运动学20 23逆向运动学23 24本章小结24 25习题24 26扩展阅读25 第3章差分驱动机器人的建模26 31技术要求27 32服务机器人的设计要求27 33机器人的传动装置27 331选择电机和轮子27 332设计小结29 333机器人底盘设计29 34安装LibreCAD、Blender和MeshLab30 341安装LibreCAD31 342安装Blender31 343安装MeshLab32 35用LibreCAD生成机器人的二维CAD图32 351底座设计33 352底座连接杆设计35 353轮子、电机和电机夹具设计36 354脚轮设计37 355中间层设计37 356顶层设计39 36用Blender制作机器人的三维模型40 361在Blender中编写Python脚本40 362Blender Python API41 363机器人模型的Python脚本42 37创建机器人的URDF模型47 38本章小结53 39习题53 310扩展阅读53 第4章利用ROS模拟差分驱动机器人54 41技术要求54 42开始使用Gazebo仿真器55 43结合TurtleBot 2进行仿真工作59 44创建ChefBot仿真62 441深度图像到激光扫描的转换65 442Gazebo仿真的URDF标签和插件65 45可视化机器人传感器数据70 451即时定位与地图构建72 452使用SLAM创建地图73 453自适应蒙特卡罗定位75 454在Gazebo环境中实现AMCL76 455ChefBot在酒店中使用Gazebo进行自主导航78 46本章小结79 47习题79 48扩展阅读80 第5章设计ChefBot的硬件和电路81 51技术要求81 52ChefBot硬件规格82 53机器人框图82 531电机和编码器83 532电机驱动器84 533嵌入式控制器板86 534超声传感器87 535惯性测量单元89 536Kinect/Orbbec Astra90 537中央处理单元91 538扬声器和麦克风92 539电源和电池92 54ChefBot硬件的工作原理93 55本章小结95 56习题95 57扩展阅读95 第6章将执行器和传感器连接到机器人控制器96 61技术要求97 62直流减速电机接入TivaC开发板97 621差分驱动轮式机器人99 622安装Energia IDE99 623电机接口代码104 63正交编码器接入TivaC开发板107 631编码器数据的处理108 632正交编码器接口代码111 64使用Dynamixel执行器114 65使用超声测距传感器117 66使用红外接近传感器123 67使用惯性测量单元125 671惯性导航125 672将MPU 6050与TivaC开发板连接126 673在Energia中编写接口代码129 68本章小结131 69习题132 610扩展阅读132 第7章视觉传感器接入ROS133 71技术要求133 72机器人视觉传感器和图像处理库134 721Pixy2/CMUcam5134 722罗技C920网络摄像头135 723Kinect 360135 724英特尔RealSense D400系列136 725Orbbec Astra深度传感器137 73OpenCV、OpenNI和PCL概述138 731OpenCV138 732OpenNI143 733PCL144 74使用ROS、OpenCV和OpenNI进行Kinect的Python编程144 741启动OpenNI驱动程序的方法145 742OpenCV的ROS接口145 75连接Orbbec Astra与ROS150 76使用Kinect、ROS、OpenNI和PCL处理点云150 77将点云数据转换为激光扫描数据151 78使用ROS和Kinect实现SLAM算法153 79本章小结154 710习题154 711扩展阅读155 第8章ChefBot硬件构建和软件集成156 81技术要求156 82构建ChefBot硬件157 83配置ChefBot PC并设置ChefBot ROS软件包160 84连接ChefBot传感器和TivaC161 85编写ChefBot的ROS Python驱动程序164 86了解ChefBot ROS启动文件169 87使用ChefBot Python节点和启动文件170 871使用SLAM在ROS上绘制房间地图175 872使用ROS定位和导航177 88本章小结179 89习题179 810扩展阅读179 第9章使用Qt和Python开发机器人GUI180 91技术要求180 92在Ubuntu 1604 LTS中安装Qt181 93在Qt中使用Python绑定进行开发181 931PyQt181 932PySide182 94使用PyQt和PySide进行开发182 941Qt设计器183 942Qt信号与槽机制184 943将UI文件转化为Python代码185 944向PyQt代码中添加槽定义186 945Hello World GUI应用程序的操作方法188 95使用ChefBot的控制GUI进行开发189 96在Ubuntu 1604 LTS中安装和使用rqt195 97本章小结197 98习题197 99扩展阅读197 习题解答198 |