欢迎来到天天文库
浏览记录
ID:27872978
大小:263.00 KB
页数:11页
时间:2018-12-06
《如何利用ROS来设计移动机器人.doc》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、如何利用ROS来设计移动机器人 最近几年各种移动机器人开始涌现出来,不论是轮式的还是履带式的,如何让移动机器人移动都是最核心的工作。要让机器人实现环境感知、机械臂控制、导航规划等一系列功能,就需要操作系统的支持,而ROS就是最重要的软件平台之一,它在科研领域已经有广泛的应用。 不过有关ROS的书籍并不多,国内可供的学习社区就更少了。本文就带大家了解一下如何利用ROS来设计移动机器人。 移动机器人的三个部分 所谓的智能移动,是指机器人能根据周围的环境变化,自主地规划路线、避障,到达目标地。 机器人是模拟人的各种行为,想象一下,人走动需要哪些器官的配合?首先用眼睛观
2、察周围环境,然后用脑去分析如何走才能到达目标地,接着用腿走过去,如何利用ROS来设计移动机器人 最近几年各种移动机器人开始涌现出来,不论是轮式的还是履带式的,如何让移动机器人移动都是最核心的工作。要让机器人实现环境感知、机械臂控制、导航规划等一系列功能,就需要操作系统的支持,而ROS就是最重要的软件平台之一,它在科研领域已经有广泛的应用。 不过有关ROS的书籍并不多,国内可供的学习社区就更少了。本文就带大家了解一下如何利用ROS来设计移动机器人。 移动机器人的三个部分 所谓的智能移动,是指机器人能根据周围的环境变化,自主地规划路线、避障,到达目标地。 机器人是模
3、拟人的各种行为,想象一下,人走动需要哪些器官的配合?首先用眼睛观察周围环境,然后用脑去分析如何走才能到达目标地,接着用腿走过去,如何利用ROS来设计移动机器人 最近几年各种移动机器人开始涌现出来,不论是轮式的还是履带式的,如何让移动机器人移动都是最核心的工作。要让机器人实现环境感知、机械臂控制、导航规划等一系列功能,就需要操作系统的支持,而ROS就是最重要的软件平台之一,它在科研领域已经有广泛的应用。 不过有关ROS的书籍并不多,国内可供的学习社区就更少了。本文就带大家了解一下如何利用ROS来设计移动机器人。 移动机器人的三个部分 所谓的智能移动,是指机器人能根据
4、周围的环境变化,自主地规划路线、避障,到达目标地。 机器人是模拟人的各种行为,想象一下,人走动需要哪些器官的配合?首先用眼睛观察周围环境,然后用脑去分析如何走才能到达目标地,接着用腿走过去,周而复始,直到到达目标地址为至。机器人如果要实现智能移动,也需要眼、脑和腿这三部分的紧密配合。 腿 “腿”是机器人移动的基础。机器人的“腿”不局限于类人或类动物的腿,也可以是轮子、履带等,能让机器人移动起来的部件,都可以笼统地称为“腿”。 类人的腿式优点是:既可以在复杂路况(比如爬楼梯)下移动、也可以更形象地模仿人的动作(比如跳舞),缺点是:结构和控制单元比较复杂、造价高、
5、移动慢等。 所以大部分移动的机器人都是轮式机器人,其优势在于轮子设计简单、成本低、移动快。而轮式的也分为多种:两轮平衡车、三轮、四轮和多轮等等。目前最经济实用的是两个主动轮+一个万向轮。 眼睛 机器人的眼睛其实就是一个传感器。它的作用是观察周围的环境,适合做机器人眼睛的有激光雷达、视觉(深度相机、单双相机)、辅助(超声波测距、红外测距)等。 “脑” 机器人的大脑就负责接收“眼睛”传输的数据,实时计算出路线,指挥腿去移动。其实就是要把看到的东西转换为数据语言。针对如何描述数据,如何实现处理逻辑等一系列问题。ROS系统给我们提供一个很好的开发框架。
6、 ROS简介 ROS是建立在linux之上的操作系统。它的前身是斯坦福人工智能实验室为了支持斯坦福智能机器人而建立项目,主要可以提供一些标准操作系统服务,例如硬件抽象,底层设备控制,常用功能实现,进程间消息以及数据包管理。 ROS是基于一种图状架构,从而不同节点的进程能接受、发布、聚合各种信息(例如传感,控制,状态,规划等等)。目前ROS主要支持Ubuntu操作系统。 有人问ROS能否装到虚拟机里,一般来说是可以的,但是我们建议装个双系统,用Ubuntu专门跑ROS。 实际上,ROS可以分成两层,低层是上面描述的操作系统层,高层则是广大用户群贡献的实现不同功能
7、的各种软件包,例如定位绘图,行动规划,感知,模拟等等。ROS(低层)使用BSD许可证,所有是开源软件,并能免费用于研究和商业用途,而高层的用户提供的包则使用很多种不同的许可证。 用ROS实现机器人的移动 对于二维空间,使用线速度+角速度可以实现轮式机器的随意移动。 线些速度:描述机器人前后移动的速度大小 角速度:描述机器人转动的角速度大小 所以控制机器人移动主要是要把线速度角速度转换为左右轮的速度大小,然后,通过轮子直径和轮间距,可以把线速度和角速度转化为左轮和右轮的速度大小。 这里有一个关键问题就是编码器的选择和
此文档下载收益归作者所有