发表于2024-11-16
《机器人仿真与编程技术》主要分为三篇,第一篇介绍了基于MATLAB机器人工具箱的机器人仿真,第二篇介绍了三款常用的机器人仿真软件,第三篇介绍了机器人操作系统(Robot Operating System,简称ROS)的基础和应用。
《机器人仿真与编程技术》中所使用的工具包括了MATLAB/SIMULINK、几款常用的机器人仿真软件、机器人操作系统(ROS)。这些工具一方面可以用于机器人学的理论知识进行实际验证与研究,另一方面用于对机器人的设计、仿真与测试。同时,这些工具大多具有开源的特点,而且它们相互之间有方便快捷的接口,能够发挥各自的优势,实现更强大的仿真、编程功能。如今,这些仿真工具都已广泛应用于机器人设计、研发和科学研究等方面,尤其是机器人操作系统越来越成为机器人领域中重要的应用系统。
第一篇基于MATLAB工具箱的机器人仿真
第1章机器人学与MATLAB机器人工具箱
1.1MATLAB机器人工具箱的下载与安装
1.2机器人学的数学基础
1.2.1三维空间中的位置与姿态
1.2.2坐标变换
1.2.3姿态的其他表示方法
1.2.4具体例子的应用
1.3机器人运动学
1.3.1机械臂及运动学
1.3.2DH参数法
1.3.3机器人正运动学
1.3.4机器人逆运动学
1.3.5机器人的瞬态运动学
1.3.6具体例子的应用
1.3.7机器人工具箱的Link类
1.3.8机器人工具箱的SerialLink类1
1.4机器人动力学
1.4.1机器人动力学概述
1.4.2机器人动力学方程的建立方法
1.4.3状态空间方程
1.4.4正向动力学
1.4.5机器人工具箱的SerialLink类2
1.5机器人的运动轨迹
1.5.1运动轨迹问题
1.5.2关节空间的规划方法
1.6机械臂关节控制
1.6.1机器人控制系统的构成
1.6.2Simulink机器人模块
1.6.3机器人的单关节控制
1.6.4机器人的多关节控制
1.7其他基于MATLAB的机器人工具箱
1.7.1Kuka控制工具箱(KCT)的介绍与测试
1.7.2其他机器人工具箱
本章小结
参考文献
第2章MATLAB机器人工具箱的应用
2.1基于学习算法的机器人触觉识别算法研究
2.1.1引言
2.1.2背景
2.1.3算法设计
2.1.4实验设计
2.1.5实验与结果
2.2基于波动变量和神经网络的远程控制系统
2.2.1引言
2.2.2远程操作系统的数学模型
2.2.3基于波动变量的神经控制设计
2.2.4实验设计
2.2.5仿真实验
2.3开发混合运动捕捉方法使用MYO手环应用于远程操作
2.3.1引言
2.3.2设计方法
2.3.3仿真系统设计
2.3.4仿真实验
2.4基于自适应参数识别的GeomagicTouchX触觉装置运动学建模
2.4.1引言
2.4.2建模步骤
2.4.3仿真设计
2.4.4实验和仿真
2.4.5可视化运动学模型与工作空间识别
2.5复杂扰动环境中的新型机械臂混合自适应控制器
2.5.1引言
2.5.2控制问题
2.5.3自适应控制
2.5.4仿真
2.5.5实验设计
2.5.6实验与结果
本章小结
参考文献
第二篇机器人仿真软件的基础与应用
第3章V�睷EP在机器人仿真中的应用
3.1V�睷EP简介及安装
3.1.1V�睷EP的简介
3.1.2V�睷EP的特性
3.1.3V�睷EP的安装
3.2V�睷EP的用户界面及位姿操作
3.2.1控制台窗口
3.2.2对话框
3.2.3应用程序窗口
3.2.4自定义用户界面
3.2.5页面与视图
3.2.6对象/项目位置和方向操作
3.3V�睷EP的场景与模型
3.3.1场景与模型的关系
3.3.2V�睷EP的场景
3.3.3V�睷EP的模型
3.3.4V�睷EP的环境
3.4实体
3.4.1V�睷EP的场景对象
3.4.2场景对象的性质
3.4.3常用的场景对象——形状
3.4.4常用的场景对象——关节
3.4.5V�睷EP的集合
3.5V�睷EP的六种计算模块
3.5.1碰撞检测模块
3.5.2最小距离计算模块
3.5.3逆向运动学模块
3.5.4几何约束求解模块
3.5.5动力学模块
3.5.6路径规划模块
3.6V�睷EP中控制机器人仿真的方法
3.6.1嵌入式子脚本
3.6.2插件
3.6.3附加组件
3.6.4远程客户端应用程序接口
3.6.5通过ROS的节点
3.6.6自定义解决方案
3.7V�睷EP的API框架
3.7.1常规API
3.7.2远程API
3.7.3ROS接口
3.7.4辅助API
3.7.5其他接口
3.8仿真模型的搭建
3.8.1从模型浏览器中加载现有模型
3.8.2从菜单栏中添加场景对象
3.8.3从Import命令中导入/导出其他软件的CAD模型
3.9机器人的仿真
3.9.1物理引擎的选择
3.9.2仿真参数的设置
3.9.3仿真的控制
3.10V�睷EP的具体例子
3.10.1机械臂模型的构建
3.10.2逆运动学建模
3.10.3V�睷EP与MATLAB连接的例子
3.11V�睷EP在人机交互中的应用(一)
3.11.1触觉学与TouchX
3.11.2TouchX的相关软件在人机交互中的作用
3.11.3CHAI3D在人机交互中的作用
3.11.4V�睷EP模块
3.11.5TouchX控制V�睷EP中KUKA机器人的实现
3.12V�睷EP在人机交互中的应用(二)
3.12.1体感技术与Kinect
3.12.2交互相关软件的作用
3.12.3交互相关软件的安装与测试
3.12.4OpenNI/NITE中的人体骨架分析
3.12.5V�睷EP与Kinect接口的安装与测试
3.12.6Kinect与V�睷EP交互的设计与实现
本章小结
参考文献
第4章Gazebo在机器人仿真中的应用
4.1Gazebo的介绍与安装
4.1.1Gazebo的初步介绍
4.1.2Gazebo的安装
4.1.3Gazebo与V�睷EP的比较
4.2Gazebo的结构
4.2.1Gazebo的运行方法
4.2.2Gazebo的组成部分
4.2.3Gazebo的结构
4.3创建机器人
4.3.1模型结构和要求
4.3.2模型的上传
4.3.3制作一个模型
4.3.4制作移动机器人模型
4.3.5导入网格
4.3.6附加网格物体
4.3.7给机器人添加传感器
4.3.8做一个简单的夹持器
4.3.9在机器人上构建夹持器
4.3.10嵌套模型
4.3.11模型编辑器
4.3.12盒子的动画
4.3.13三角网格的惯性参数
4.3.14图层可见性
4.4Gazebo中的模型编辑器
4.4.1模型编辑器
4.4.2SVG文件
4.5场景文件的创建
4.5.1创建一个场景
4.5.2修改场景
4.5.3如何在Gazebo中使用DEM
4.5.4模型群
4.5.5建筑编辑器
4.6插件的编写
4.6.1一个简单的插件:HelloWorldPlugin!
4.6.2插件的使用
4.6.3模型插件
4.6.4世界插件
4.6.5程序化场景控制
4.6.6系统插件
4.7传感器
4.7.1传感器噪声模型
4.7.2接触式传感器
4.7.3摄像头失真
4.8Gazebo的其他功能
4.8.1数学库的使用
4.8.2用户输入
4.8.3连接到Player
本章小结
参考文献
第5章OpenRAVE在机器人仿真中的应用
5.1OpenRAVE简介
5.1.1OpenRAVE的应用
5.1.2OpenRAVE的特性
5.1.3OpenRAVE的下载与安装
5.2OpenRAVE概观
5.2.1OpenRAVE基本架构
5.2.2关于OpenRAVE中的一些说明
5.2.3OpenRAVE公约与准则
5.2.4OpenRAVE中机器人概述
5.2.5插件与接口说明
5.2.6网络协议和脚本
5.3OpenRAVE的基础
5.3.1开始使用OpenRAVE
5.3.2OpenRAVE的命令行工具
5.3.3写OpenRAVE文档
5.3.4环境变量
5.4OpenRAVE运用与展望
5.4.1OpenRAVE的运用项目举例
5.4.2OpenRAVE的展望
本章小结
参考文献
第三篇机器人操作系统基础与应用
第6章机器人操作系统的基础
6.1ROS的安装与测试
6.1.1虚拟机与Ubuntu的安装
6.1.2ROS的安装
6.1.3turtlesim例子的测试
6.2ROS的基本概念与命令
6.2.1程序包(packages)
6.2.2节点(Nodes)和节点管理器(Master)
6.2.3消息(Messages)和主题(Topics)
6.2.4其他ROS的相关概念
6.2.5ROS的一些常用工具
6.3ROS的程序包的创建与编译
6.3.1创建工作区和功能包
6.3.2ROS程序的编译过程
6.4ROS与MATLAB集成
6.4.1RST的ROS功能介绍
6.4.2MATLAB与ROS通信的介绍
6.5ROS与V�睷EP之间的集成
6.5.1V�睷EP中的ROS程序包
6.5.2在ROS中安装V�睷EP
6.5.3在ROS中创建相关的V�睷EP程序包
6.5.4使用ROS节点控制V�睷EP模型的例子
6.5.5V�睷EPROSBridge的简介及安装
6.6ROS与Gazebo
6.6.1ROS集成概述
6.6.2安装Gazebo_ros_pkgs
6.6.3ROS/Gazebo版本组合的选择
6.6.4使用roslaunch
6.6.5ROS通信
6.6.6Gazebo中的URDF
6.7实时系统ROS2.0的介绍
本章小结
参考文献
第7章机器人操作系统的应用
7.1Baxter机器人与ROS
7.1.1Baxter机器人
7.1.2Baxter机器人的控制系统总体框架
7.1.3相关的ROS代码
7.2基于神经网络实现对摇操作机器人进行高性能控制
7.2.1控制系统的架构
7.2.2实验设计与实现
7.2.3实验及结果
7.3规定全局稳定性和运动精度的双臂机器人的神经网络控制
7.3.1实验设计与实现
7.3.2实验结果
7.4基于人体运动捕获对Baxter机器人的远程操作控制
7.4.1远程操作控制系统
7.4.2实验的设计与实现
7.4.3实验及结果
本章小结
参考文献
第5章OpenRAVE在机器人仿真中应用
5.1OpenRAVE简介
5.1.1OpenRAVE的应用
OpenRAVE(英文全称为OpenRoboticsAutomationVirtualEnvironment)是一款开源的机器人仿真软件。OpenRAVE提供了机器人的测试环境,它的主要功能是运动规划运动学和几何信息的模拟和分析。在应用方面,OpenRAVE主要用于开发和部署机器人的运动规划算法,而这些算法能够应用于实际中的机器人。由于OpenRAVE具备有独立运行的性质,这些算法可以很容易地集成到现有的机器人系统。它为机器人开发者和机器人提供了许多命令行工具,核心运行时足够小,因此可用于内部控制器和更大的框架。
OpenRAVE是一个开放源码跨平台软件架构,即开放的机器人和动画虚拟环境。OpenRAVE针对真实世界自动机器人应用程序,包括3�睤模拟、可视化、规划、脚本和控制的无缝集成。它的插件架构允许用户轻松地编写自定义的控制器和进行扩展功能。通过使用OpenRAVE插件,任何设计的算法、机器人控制器或感测子系统都可以在运行时进行分布和动态加载,从而使开发人员免于使用单片代码库。这样OpenRAVE的用户可以专注于问题的规划和脚本方面的开发,而无须明确管理机器人运动学和动力学、碰撞检测、世界更新和机器人控制的细节。OpenRAVE架构也提供了一个灵活的接口,可以与其他流行的机器人软件包(如Player和ROS)结合使用,因为它专注于自动运动规划和高级脚本,而不是低级控制和信息协议。OpenRAVE还支持强大的网络脚本环境,使得在运行时控制和监视机器人以及更改执行流程变得更加简单。开放组件架构的一个关键优势是它们使机器人研究团体能够轻松地共享和比较算法。
下文将主要对OpenRAVE的原理以及运用进行简单介绍。
5.1.2OpenRAVE的特性
OpenRAVE具有许多功能用于分析机器人场景的几何结构,然后把它们用于在整个工作区中使机器人运动。
OpenRAVE在两方面上具有良好的应用:
(1)对于每个机器人,使用IKFast能够针对某种机器人的结构专门地生成逆运动学程序。这允许所有奇点配置和除以零条件的处理。而且,这种处理的速度特别快,生成大多数解决方法只需运行5μs。
(2)可以很容易地结合多个约束条件,例如避免碰撞、把握对象、保持传感器能见度。然后,在这些约束条件下把一个机器人的初始和目标配置连接在一起。
OpenRAVE是一个开放机器人和3�睤动画虚拟环境。相比于其他仿真工具,OpenRAVE具有它的独特优势:
(1)能用于机器人的实时控制和执行监控的集成设计。
(2)提供运动学操作和物理模拟的核心功能。
(3)有允许诸如Octave和MATLAB之类的解释性脚本语言与其进行交互的网络协议(当然还支持其他脚本语言,例如Python和Perl是计划开发的)。
(4)内置核心工具和插件界面,用于机器人的操作规划和抓取。
(5)标准插件,允许测试不同的规划算法和传感系统,而只需做最少的代码修改。
OpenRAVE架构模块化了机器人系统的执行和计划层,使自主系统的开发变得更容易,组件变得更可重用于其他项目。一个基本做法是在特定组件的实现与从其他组件的使用这个特定组件之间创建一个接口层。许多以前的架构已经为基本级别组件做到这一点。
5.1.3OpenRAVE的下载与安装
OpenRAVE提供了可以用于Ubuntu和Windows的版本。下面介绍在Ubuntu上安装OpenRAVE的步骤。
1.安装依赖库
首先保证已安装了下面的项目,从命令行输入:
01.sudoapt-getinstallcmakeg++gitqt4-dev-toolszlib-bin
02.sudoapt-getinstallipythonpython-devpython-h5pypython-numpypython-scipypython-sympy
安装依赖库:
01.sudoapt-getinstalllibassimp-devlibavcodec-devlibavformat-devlibavformat-devlibboost-all-devlibboost-date-time-devlibbullet-devlibfaac-devlibglew-devlibgsm1-devliblapack-devlibmpfr-devlibode-devlibogg-devlibopenscenegraph-devlibpcre3-devlibpcrecpp0libqhull-devlibqt4-devlibsoqt-dev-commonlibsoqt4-devlibswscale-devlibswscale-devlibvorbis-devlibx264-devlibxml2-devlibxvidcore-dev
唯一从OpenRAVEppa上可以安装的包是collada�瞕om:
01.sudoadd-apt-repositoryppa:OpenRAVE/release
02.sudosh-c'echo"deb-srchttp://ppa.launchpad.net/OpenRAVE/release/ubuntu'lsb_release-cs'main">>/etc/apt/sour 机器人仿真与编程技术/清华开发者书库 下载 mobi epub pdf txt 电子书 格式
机器人仿真与编程技术/清华开发者书库 下载 mobi pdf epub txt 电子书 格式 2024
机器人仿真与编程技术/清华开发者书库 下载 mobi epub pdf 电子书机器人仿真与编程技术/清华开发者书库 mobi epub pdf txt 电子书 格式下载 2024