zoukankan      html  css  js  c++  java
  • ROS分布式控制的节点配置

      首先在终端中输入下面的指令查看ROS主节点主机的IP和远程控制端的IP:

    ifconfig  

      比如机器人控制器中运行着ROS主节点,其IP地址为192.168.1.111,hostname为xubuntu;远程控制端电脑IP为192.168.1.138,hostname为ubuntu. 首先要确保两台电脑能相互ping通。

      然后在主节点和远程控制端的配置文件 /etc/hosts 中分别添加对方的IP地址和hostname信息(Add entries to your /etc/hosts file so that the machines can find each other)。在xubuntu中的 /etc/hosts文件中加入下面这一行:

    192.168.1.138   ubuntu

      在ubuntu中的 /etc/hosts文件中加入下面这一行:

    192.168.1.111   xubuntu

      如果主机的hosts文件中没有添加从机的信息,从机只能接收到从主机发来的信息,而无法向主机发送信息。建议主机和从机都要将对方的IP hostname添加到自己的 /etc/hosts 中

      整个系统只需要一个master,选择一个机器来运行master提供topic寻址、参数服务器等功能。所有的节点必须通过环境变量ROS_MASTER_URI配置为使用同一个master在远程控制端电脑ubuntu的 ~/.bashrc文件中加入下面环境变量,用于连接ROS主节点:

    export ROS_MASTER_URI=http:/xubuntu:11311

      

      下面来进行一个测试,在xubuntu中输入roscore运行ROS 主节点,然后执行下面命令打开海龟仿真节点:

    rosrun turtlesim turtlesim_node 

      在ubuntu中输入rosnode list查看当前节点,可以看到正运行着ros主节点和turtlesim节点:

      可以在ubuntu中用键盘远程控制xubuntu中的海龟运动,输入下面的指令:

    rosrun turtlesim turtle_teleop_key

       在xubuntu中打开另一个键盘控制节点,重命名为teleop2:

    rosrun turtlesim  turtle_teleop_key  __name:=teleop2

      然后在ubuntu中输入下面指令查看海龟速度信息:

    rostopic echo /turtle1/cmd_vel

      在xubuntu中用键盘控制海龟运动,可以看出从节点(ubuntu)也能接收到正确的信息:

    参考:

    ROS-NetworkSetup

    ubuntu永久修改主机名

    ROS-EnvironmentVariables

    ROS中配置主从机需注意的几点

    ROS机器人操作系统分布式控制的节点 配置方法

  • 相关阅读:
    每日总结2021.9.14
    jar包下载mvn
    每日总结EL表达语言 JSTL标签
    每日学习总结之数据中台概述
    Server Tomcat v9.0 Server at localhost failed to start
    Server Tomcat v9.0 Server at localhost failed to start(2)
    链表 java
    MVC 中用JS跳转窗体Window.Location.href
    Oracle 关键字
    MVC 配置路由 反复走控制其中的action (int?)
  • 原文地址:https://www.cnblogs.com/21207-iHome/p/8289186.html
Copyright © 2011-2022 走看看