ROS-5:ROS架构

ROS文件架构

ROS文件系统级指的是因硬盘上ROS源代码的组织形式,结构可以如下图所示:

catkin_workspace
src1
package1
package2
CMakelist.txt
package.xml
scripts
msg
srv
include
src2
launnch
*.py
*.sh
*.msg
*.srv
*.h
*.cpp
*.launch
build
devel

注意:上图中的src1和src2在ros文件系统中都叫src,这里用1、2只是进行区分工作空间中的文件夹以及运行包中的文件夹的区别,其实应该是两个文件夹只有一个名字(src)。

WorkSpace — 自定义的工作空间:

|--- build:编译空间,用于存放CMake和catkin的缓存信息、配置信息和其他中间文件。

|--- devel:开发空间,用于存放编译后生成的目标文件,包括头文件、动态&静态链接库、可执行文件等。

|--- src: 源码

    |-- package:功能包(ROS基本单元)包含多个节点、库与配置文件,包名所有字母小写,只能由字母、
    数字与下划线组成

        |-- CMakeLists.txt 配置编译规则,比如源文件、依赖项、目标文件

        |-- package.xml 包信息,比如:包名、版本、作者、依赖项...(以前版本是 manifest.xml)

        |-- scripts 存储python文件

        |-- src 存储C++源文件

        |-- include 头文件

        |-- msg 消息通信格式文件

        |-- srv 服务通信格式文件

        |-- action 动作格式文件

        |-- launch 可一次性运行多个节点 

        |-- config 配置信息

    |-- CMakeLists.txt: 编译的基本配置

ROS文件系统相关命令

1、增
cakin_create_pkg 自定义包名 依赖包 : 创建新的ROS功能包
sudo apt install xxx :安装ROS功能包
2、删
sudo apt purge xxx :删除某个安装包
3、查
rospack list :列出所有功能包
rospack find 包名 : 查找某个功能包是否存在,如果存在返回安装路径
roscd 包名 : 进入某个功能包
rosls 包名 : 列出某个包下的文件
apt search xxx : 搜索某个功能包
4、改
rosed 包名 文件名 : 修改功能包文件
5、执行
5.1roscore
roscore : 是ROS的系统先决条件节点和程序的集合,必须运行roscore才能使ROS节点进行通信
roscore将启动(ros master)(ros 参数服务器)(rosout 日志节点)

5.2rosrun
rosrun 包名 可执行文件名 : 运行指定的ROS节点
比如:rosrun turtlesim turtlesim_node

5.3roslaunch
roslaunch 包名 launch文件名 : 执行某个包下的launch文件

ROS计算图

1、计算图简介
ros 程序运行之后,不同的节点之间是错综复杂的,ROS 中提供了一个实用的工具:rqt_graph。rqt_graph能够创建一个显示当前系统运行情况的动态图形。ROS 分布式系统中不同进程需要进行数据交互,计算图可以以点对点的网络形式表现数据交互过程。rqt_graph是rqt程序包中的一部分。

2、计算图演示
首先要进行节点的运行
然后再启动新终端,键入:rqt_graph 或 rosrun rqt_graph rqt_graph ,可以最终看到网络拓扑图,可以显示出不同节点之间的关系。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值