知行合一

厚积薄发,格物致知。简单点,做事的动机简单点。

排序:
默认
按更新时间
按访问量
RSS订阅

航迹推演(Odometry)

做机器人底层程序的时候,经常用到航迹推演(Odometry),无论是定位导航还是普通的方向控制。航迹推演中除了对机器人位姿进行估计,另一个很重要的关系是移动机器人前进速度、转向角速度与左轮速度、右轮速度之间的转换。

2015-07-23 15:44:40

阅读数 17851

评论数 10

ROS 教程之 vision: 摄像头标定camera calibration

在上一个文章中,我们使用usb_cam包读入并发布了图像消息,但是图像没有被标定,因此存在畸变。ROS官方提供了用于单目或者双目标定的camera_calibration包。这个包是使用opencv里的张正友标定法,所以如果你有使用opencv标定的经验,可以直接标定,而不使用官方的程序。 ...

2015-06-02 21:25:27

阅读数 26794

评论数 19

ROS : 修改ROS源代码(overlaying package)

ROS官方或者其他个人提供了很多package供大家使用,但是随着学习的深入,很多人可能想去修改这些package的源代码,ROS提供了一种称之为overlaying的机制。它允许ROS原有安装的package和你修改的package共存,譬如安装ROS的时候已经安装了用于二维SLAM的gmapp...

2015-05-19 14:42:31

阅读数 11912

评论数 8

ROS 基础: 在同一个节点里订阅和发布消息

在一些应用中,可能有的人需要在同一个节点中实现订阅一个消息,然后在该消息的回调函数中处理一下这些数据后再发布到另一个topic上。

2015-05-07 21:52:38

阅读数 9332

评论数 4

ROS: global_planner 整体解析

在目前的ROS版本中,机器人全局路径规划使用的是navfn包,这在move_base的默认参数中可以找到base_global_planner (string, default: "navfn/NavfnROS")。而在navigation的源代码中还有一个global_pla...

2015-04-13 21:57:28

阅读数 12805

评论数 10

机器人局部避障的动态窗口法(dynamic window approach)

机器人局部路径规划方法有很多,ROS中主要采用的是动态窗口法(但是和原论文中的dwa方法不一样,具体见最后)。动态窗口法主要是在速度(v,w)空间中采样多组速度,并模拟机器人在这些速度下一定时间(sim_period)内的轨迹。在得到多组轨迹以后,对这些轨迹进行评价,选取最优轨迹所对应的速度来驱动...

2015-04-10 19:23:54

阅读数 42933

评论数 30

ROS 教程之navigation: 用程序设定导航目标点

在做导航的过程中,目的地都是通过RViz界面手动设置的,很麻烦。那么能否通过程序设置目标点,让机器人自动在几个目标点之间来回循环呢?答案是肯定的,《Ros by Example volumn1》8.5.3节中也给出了答案。但是,本文给出一个更简单的例子,在机器人前方1m处设定目标点,文章内容几乎来...

2015-03-18 11:26:43

阅读数 13825

评论数 16

ROS :为IDE配置环境变量

ROS hydro 自带安装好了opencv 2.4 为了在自己经常使用的开发环境Eric下调用,需要配置Eric的环境变量,好让它可以调用ROS的资源。 1. 在 /usr/share/applications/ 文件夹下找到 eric的 桌面快键方式文件eric.desktop , 可能一...

2015-01-07 09:42:38

阅读数 2610

评论数 0

ROS 教程之 navigation :在 catkin 环境下创建costmap layer plugin

在做机器人导航的时候,肯定见到过global_costmap和local_costmap。global_costmap是为了全局路径规划服务的,如从这个房间到那个房间该怎么走。local_costmap是为局部路径规划服务的,如机器人局部有没有遇到行人之类的障碍。costmap就是栅格图,每个栅格...

2014-12-29 21:34:20

阅读数 15374

评论数 31

ROS 教程之 vision : 用各种摄像头获取图像

可能有很多人想在ROS下学习视觉,先用摄像头获取图像,再用opencv做相应算法处理,可是ROS下图像的采集可不像平常的read一下那么简单,需要借助外部package的使用。而摄像头即可以用笔记本自带的摄像头,也可以用外部的kinect,当然还可以是外部接入的usb接口的摄像头。前两者照着《RO...

2014-12-27 18:46:50

阅读数 30919

评论数 14

ROS 教程之 network:多台计算机之间网络通信(2)

在上一篇文章中我们已经搭建好了两台计算机间通信的条件,但是每次都需要在新的终端里输入一长串export ROS_MASTER_URI之类的。实际弄起来的时候也不方便,因此在本文中,我们更进一步,简化两台计算机通信的操作。并通过两个例子,让你感受感受ROS这种分布式架构和网络通信的强大,使得你的两台...

2014-12-22 16:52:08

阅读数 9611

评论数 5

ROS 教程之 network:多台计算机之间网络通信(1)

LZ在实验室环境下要实现一台台式主机和移动机器人上的笔记本通信。台式机作为主机,用rviz监控和无线操作移动机器人,笔记本上通过ROS实现移动机器人的自主定位和路径规划等程序。主机上用的虚拟机装的ubuntu 12.04,通过有线连接一个无线路由,而笔记本端是通过这个路由的wifi上网,台式机和笔...

2014-12-22 11:33:02

阅读数 24753

评论数 9

ROS 教程之 navigation : 用 move_base 控制自己的机器人(1)

前言:     相信大家在用《ROS by example》学习ROS的过程中,基本上都是使用书本中的例程,在终端输入几行别人已经写好的代码,看看仿真效果。可是这样一来,笔者在跟着书本初略过了一遍后,却还是不知道如何通过ROS去具体操作实实在在的机器人,譬如想做导航和定位,自己的机器人该如何跟RO...

2014-12-10 14:49:48

阅读数 34673

评论数 38

ROS 教程之 navigation : 用 move_base 控制自己的机器人(2)

在这一篇文章中,将主要介绍如何将DSP上采集到的速度转化为Odom,让move_base可以订阅到这个信息。在wiki论坛上有一个很详细的例程是关于如何发布Odometry信息的。在这个程序里,它把转化好的Odom信息发布到了两个地方,第一个是广播了tf关系,即每次机器人移动以后,/odom坐标系...

2014-12-10 14:33:12

阅读数 13264

评论数 21

ROS:定制自己的消息类型msg

在实际应用中,我们可能想发布自己的消息类型,就像众所周知的Twist类型或者航向信息Ometroy一样,那么到底如何定制自己想要的消息类型?本文楼主以自己调试过程中监控机器人左右轮速度来进行演示。      文章内容包括:消息的定制和使用,以及使用rqt_plot来绘制曲线。

2014-12-10 11:23:53

阅读数 10102

评论数 6

提示
确定要删除当前文章?
取消 删除