zoukankan      html  css  js  c++  java
  • ROS入门笔记(十三):分布式通信

    ROS入门笔记(十三):分布式通信

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

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

    1.1 设置IP地址,确保底层链路的连通

    步骤一,树莓派和电脑必须在同一个局域网

    步骤二,输入ifconfig,查看两台计算机(ggk-pc,raspi2)的IP地址;

    步骤三,IP地址分别设置在对方的hosts文件中,保存、退出;

    $ sudo vi /etc/hosts
    

    步骤四,在两台计算机上分别使用ping命令测试网络是否连通。

    $ ping raspi2       #在ggk-pc电脑上 
    
    $ ping ggk-pc       #在raspi2上
    

    1.2 在从机端设置ROS_MASTER_URI,让从机找到ROS Master

    ROS Master 只能在一台计算机上运行,在另外一台计算机上设置环境变量,找到ROS Master在哪运行;

    在树莓派上

    步骤一,启动终端,输入以下命令:

    $ vi .bashrc
    

    步骤二,拉到结尾,按小写字母o,不是零;

    步骤三,在结尾输入以下命令,保存、退出即可;

    ROS Master:默认端口号 11311

    export ROS_MASTER_URI=http://hcx-pc:11311     #(当前终端有效)保存,退出
    
    或者
    echo"export ROS_MASTER_URI=http://hcx-pc:11311">>~/.bashrc     # (所有终端有效)保存、退出
    

    02 实战操作

    步骤一,主机端启动ROS Master与海龟仿真节点;

    $ roscore
    $ rosrun turtlesim turtlesim_node
    

    步骤二,从机端发布一个速度控制消息;

    $ rostopic pub -r 10 /turtlel/cmd_vel
    geometry_msgs/Twist "linear:
    x:0.5
    y:0.0
    z:0.0
    angular: 
    x:0.0
    y:0.0
    Z:0.5"
    

    微信公众号:喵哥解说
    公众号介绍:主要研究机器学习、计算机视觉、深度学习、ROS等相关内容,分享学习过程中的学习笔记和心得!期待您的关注,欢迎一起学习交流进步!同时还有1200G的Python视频和书籍资料等你领取!!!

  • 相关阅读:
    第11次作业
    第十次实验
    第九次作业
    第八次实验
    第七次作业
    第六次作业
    作业
    JAVA实验三
    JAVA实验二
    JAVA实验一
  • 原文地址:https://www.cnblogs.com/IT-cute/p/12990038.html
Copyright © 2011-2022 走看看