2.ROS基础(分布式通信,ROS中的关键组件)

3.分布式通信

ROS是一种分布式软件框架,节点之间通过松耦合的方式进行组合。

如何实现分布式多机通信:

1.设置IP地址,确保底层链路的联通:

可以用ssh命令在终端远程操控另一台计算机。首先ifconfig查看计算机的ip地址,然后用sudo vim etc/hosts,将另一台计算机的ip地址放入hosts文件中,例如:192.168.1.1 pc-name。可以用ping pc-name,查看是否配置成功。

2.在机端设置ROS_MASTER_URI,让从机找到ROS MASTER:

因为ROS系统只能有一个ROS MASTER,所以要在从机上设置环境变量,告诉从机谁是ROS MASTER。sudo vim ~/.bashrc进入环境变量配置文件,加入export ROS_MASTER_URI=http://pc-name:11311,使得所有终端都有效。(11311是ROS MASTER的端口号)

4.ROS中的关键组件

4.1 Launch文件

通过XML文件实现多节点的配置和启动(可自动启动ROS MASTER),这样就比rosrun方法好很多了,还可以不用roscore来运行ROS MASTER。

 

4.2TF坐标变换

 这些坐标是以树形结构存储的。若想要得到一个节点的坐标数据,就要缓冲整个树形结构的坐标数据。

 如何实现一个TF广播器:

  • 定义TF广播器(Transformer Broadcaster);
  • 创建坐标变换值;
  • 发布坐标变换(sendTransform)。

如何实现一个TF监听器:

  • 定义TF监听器(Transform Listener);
  • 查找坐标变换(waitForTransform、lookupTransform)。

如何编译代码:

  • 设置编译的代码和文件;
  • 设置链接库。

4.3Qt工具箱

用来看debug信息。

显示当前系统的节点关系。

 可以绘制一些简单直观的图。

用可视化的界面来配置参数。

4.4Rviz可视化平台

ROS当中使用最为频繁的工具。将数据可视化显示出来,方便开发者理解。

 

 

 rviz的插件机制,十分适合人机交互,可以利用Qt编程来达到以可视化的效果来实现机器人控制。

4.5Gazebo物理仿真环境

 

 

  •  创建仿真环境;
  • 配置机器人模型;
  • 开始仿真

总结

 http://wiki.org.org/ROS/Tutorials

http://wiki.ros.org/APIs

http://wiki.ros.org/roslaunch/XML

《机器人学导论(第三版)》

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值