zoukankan      html  css  js  c++  java
  • 使用ROS节点——Node & Master——roscore、rosrun、rosnode

    1、Node

    ROS的世界里, 最小的进程单元就是节点( node) 。 一个软件包里可以有多个可执行文
    件, 可执行文件在运行之后就成了一个进程(process), 这个进程在ROS中就叫做节点。

    2、Master

    由于机器人的元器件很多, 功能庞大, 因此实际运行时往往会运行众多的node, 负责感知世
    界、 控制运动、 决策和计算等功能。 那么如何合理的进行调配、 管理这些node? 这就要利用
    ROS提供给我们的节点管理器master, master在整个网络通信架构里相当于管理中心, 管理着
    各个nodenode首先在master处进行注册, 之后master会将该node纳入整个ROS程序中。
    node之间的通信也是先由master进行牵线, 才能两两的进行点对点通信。 当ROS程序启动
    时, 第一步首先启动master, 由节点管理器处理依次启动node

    3、启动masternode

    当我们要启动ROS时, 首先输入命令:

    $ roscore

    此时ROS master启动, 同时启动的还有 rosout parameter server ,其中 rosout 是负责日
    志输出的一个节点, 其作用是告知用户当前系统的状态, 包括输出系统的errorwarning
    等, 并且将log记录于日志文件中, parameter server 即是参数服务器, 它并不是一个node
    而是存储参数配置的一个服务器

    启动node的语句是: 

    $ rosrun pkg_name node_name

    MasterNode之间以及Node之间的关系如下图所示:

    4、rosrunrosnode命令

    rosrun命令的详细用法如下:

    $ rosrun [--prefix cmd] [--debug] pkg_name node_name [ARGS]

    rosrun将会寻找PACKAGE下的名为EXECUTABLE的可执行程序, 将可选参数ARGS传入。
    例如在GDB下运行ros程序:

    $ rosrun --prefix 'gdb -ex run --args' pkg_name node_name

    rosnode命令的详细作用列表如下:

  • 相关阅读:
    液晶显示器分辨设置,显示器分辨率设置……
    如何显示语言栏
    查看一键Ghost的备份文件
    百度空间的变迁
    CentOS U盘安装
    Linux服务器系统选择
    博客一夜回到解放前
    spark常见的transformation和action算子
    二分查找
    9:两个栈实现一个队列
  • 原文地址:https://www.cnblogs.com/long5683/p/9941531.html
Copyright © 2011-2022 走看看