当前位置: 首页 > news >正文

第 3 课 ROS 常用术语及命令说明

1.ROS文件系统的组成

        ROS 文件是由 Packages Manifests package.xml )组成。
        Packages:功能包,是 ROS 软件中的基本单元,包含节点源码、配置文件、数据定义等。
        Manifest( package xml ):功能包的描述文件,用于定义功能包相关元信息之间的依赖关系,这些信息包括版本、维护者和许可协议等。

2.了解ROS的基本术语

下表是对 ROS 的部分基本术语的解释说明:

术语名称
说明
节点管理器
(ROSMaster
负责节点之间的连接与消息通信。
节点( Node
ROS 中运行的最小处理单元,通常是一个可执行文件。每 个节点可使用话题或服务与其它节点进行通信。
消息( Message
int float boolean 等数据类型的变量。
话题( Topic
一种单向异步通信机制。通过发布消息到话题或订阅话题的 形式,可以在节点之间实现数据的传输。话题的类型由对应 消息的类型决定。
发布( Publish
以与话题内容对应的消息类型发送数据。
发布者( Publisher
为执行发布,发布者节点在主节点上注册自己的话题等多种信息,并向希望订阅的订阅者节点发送消息。
订阅( Subscrib
以与话题内容对应的消息类型接收数据。
订阅者( Subscriber
为执行订阅,订阅者节点在主节点上注册自己的话题等多种信息,并从主节点接收所有发布了此节点需订阅话题的发布者节点的信息
服务( Service
一种双向同步通信机制。服务客户端请求对应于特定目的任务的服务,服务服务端进行服务响应。
服务服务器 (Service Server
以请求作为输入,响应作为输出的节点。
服务客户端
Service Client
以响应作为输入,请求作为输出的节点。

3.了解 ROS 的常用文件

下表是对 ROS 中部分常用文件的介绍说明:

术语名称
说明
urdf 文件
描述机器人所有元素的模型文件,包含连杆( link )、关节( joint )、 运动学参数(axis )、动力学参数( dynamics )、可视化模型( visual ) 和碰撞检测模型(collision )。
srv 文件
存放在 srv 文件夹下,用于定义 ROS 服务消息,包含请求和响应两个部分,请求与响应之间使用符号“ --- ”进行分隔。
msg 文件
存放在 msg 文件夹下,用于定义 ROS 话题消息。
package.xml
描述功能包的属性,包含功能包的名字、版本号、作者等。
CmakeLists.txt
编译配置文件,使用 Cmake 编译。
launch 文件
启动文件,包含系统性启动机器人所需的 node services

4.了解常用命令

        ROS 命令可以大致分为五个类型: ROS shell 命令、 ROS 执行命令、 ROS 信息命令、ROS catkin 命令、 ROS 功能包命令。下面是部分常用的基本命令,大家可简单学习一下:
  • ROS shell 命令

命令
命令释义
详细说明
roscd
ros+cd(changes directory)
移动到指定的 ROS 功能包目录
rosls
ros+ls(lists files)
显示 ROS 功能包的文件和目录
rosed
ros+ed(editor)
编辑 ROS 功能包的文件
roscp
ros+cp(copies files)
复制 ROS 功能包的文件
rospd
ros+pushd
添加目录至 ROS 目录索引
rosd
ros+directory
显示 ROS 目录索引中的目录
  • ROS 执行命令

命令
命令释义
详细说明
roscore
ros+core
启动 ROS Master 节点管理器
rosrun
ros+run
启动 ROS 节点
roslaunch
ros+launch
启动 launch 文件
rosclean
rosclean
检查或删除 ROS 日志文件
  • ROS 信息命令

命令
命令释义
详细说明
rostopic
ros+topic
确认 ROS 话题信息
rosservice
ros+service
确认 ROS 服务信息
rosnode
ros+node
确认 ROS 节点信息
rosparam
ros+param(parameter)
确认和修改 ROS 参数信息
rosbag
ros+bag
记录和回放 ROS 消息
rosmsg
ros+msg
显示 ROS 消息类型
rossrv
ros+srv
显示 ROS 服务类型
rosversion
ros+version
显示 ROS 功能包的版本信息
roswtf
ros+wtf
检查 ROS 系统
  • ROS catkin 命令

命令
详细说明
catkin_create_pkg
自动生成功能包
catkin_make
基于 catkin 构建系统,构建目录中所有的功能包
catkin_eclipse
修改以 catkin 构建系统生成的功能包,使其能在 Eclipse环境中使用
catkin_prepare_release
更新由命令“ catkin_generate_changelog ”生成的CHANGELOG.rst 文件
catkin_generate_changelog
在发布时生成或更新 CHANGELOG.rst 文件
catkin_init_workspace
初始化 catkin 构建系统的工作目录
catkin_find
搜寻所有正在使用的工作目录
  • ROS 功能包命令

命令
命令释义
详细说明
rospack
ros+pack(age)
查看与 ROS 功能包相关的信息
rosinstall
ros+install
安装 ROS 附加功能包
rosdep
ros+dep(endencies)
安装指定功能包的依赖性文件
roslocate
ros+locate
显示 ROS 功能包相关信息
roscreate-pkg
ros+create-pkg
自动生成 ROS 功能包(用于旧的 rosbuild 系统)
rosmake
ros+make
构建 ROS 功能包(用于旧的 rosbuild 系统)

http://www.lryc.cn/news/280158.html

相关文章:

  • 基于AidLux的智慧教育版面分析应用
  • Spring | Spring框架最基本核心的jar包、Spring的入门程序、依赖注入
  • [晓理紫]每日论文推送(有中文摘要,源码或项目地址)--大模型相关、扩散模型、视觉导航
  • 【软件项目管理_软件工程】软件项目管理课后相关习题
  • Docker-Compose:教你入门到精通
  • 软件设计不是CRUD(10):低耦合模块设计理论——业务抽象:从需求中提取业务维度
  • S1-08 流和消息缓冲区
  • Java重修第五天—面向对象3
  • 【征稿进行时|见刊、检索快速稳定】2024年经济发展与旅游管理国际学术会议(ICEDTM 2024)
  • 瑞_Java开发手册_(四)安全规约
  • Docker 安全必知:最佳实践、漏洞管理与监控策略
  • 【Flutter】多线程
  • STM32-实时时钟RTC-1
  • node(express.js创建项目)+连接mysql数据库
  • 【FLV】记录 H.264的解析
  • nodejs+vue+ElementUi音乐分享社交网站77l8j
  • 进销存+小程序商城:实现批发零售企业的互联网转型与管理升级
  • Tomcat解压打包文件和并部署
  • JDK17
  • 使用Docker运行SRS Stack
  • git安装教程 Windows 附安装包链接
  • TensorRT(C++)基础代码解析
  • 如何查询MySQL中的树型表
  • Programming Abstractions in C阅读笔记:p246-p247
  • 智能寻迹避障清障机器人设计(电路图附件+代码)
  • 设计模式-- 3.适配器模式
  • 设计一个简单的规则引擎
  • openssl3.2 - 官方demo学习 - digest - EVP_MD_stdin.c
  • 浅谈 Raft 分布式一致性协议|图解 Raft
  • 4_【Linux版】重装数据库问题处理记录