第一章:ROS_入门了解

系列文章目录

系列知识点参考赵虚左老师的课程进行总结
第一章:ROS_入门了解



前言

入门了解主要以:ROS的起源、文件结构、使用方法为主,使其对ROS开发有个大致了解

一、ROS是什么?

ROS全称Robot Operating System(机器人操作系统)
= 通信机制 + 开发工具 + 功能包 + 生态系统
在这里插入图片描述
具体来说:
通信机制:信息传输的原理,即控制机器人之间的信息如何传输,是ROS开发的基础。其最后通信落脚点是:Node——节点上。
开发工具:ROS也提供一些软件进行仿真开发。
功能包: 即ROS是一个开源平台,大家将一些功能封装成为模块,就是功能包,使用ROS开发即是调用功能包下面的节点进行组装开发。
生态系统:提供开源生态平台,给大家进行交流以及分享。

二、ROS的文件系统

ROS开发环境是在工作空间下,以节点为基础的开发方式.具体流程如下

1.创建工作空间并初始化
mkdir -p 自定义空间名称/src
cd 自定义空间名称
catkin_make

2.进入 src 创建 ros 包并添加依赖
cd src
catkin_create_pkg 自定义ROS包名 roscpp rospy std_msgs

3.进入 ros 包添加 scripts 目录并编辑 python 文件
cd ros包
mkdir scripts

4.为 python 文件添加可执行权限
chmod +x 自定义文件名.py

5.编辑 ros 包下的 CamkeList.txt 文件
catkin_install_python(PROGRAMS scripts/自定义文件名.py
  DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)

6.进入工作空间目录并编译
cd 自定义空间名称
catkin_make

7.进入工作空间目录并执行
roscore
cd 工作空间
source ./devel/setup.bash
rosrun 包名 自定义文件名.py

最后得到如下图这样类似的目录结构:
在这里插入图片描述
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进行开发前,首先对其工作环境,文件目录有初步了解,学会识别什么是功能包、什么是工作空间等

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值