【ROS】初识ROS

ROS

  • 是什么?
    • 一款开源机器人操作系统
    • 提供包括硬件抽象, 底层设备控制, 进程间的数据交互, 功能包管理, 各种工具和库
    • 实现几种不同风格的通信: 通过服务进行的同步RPC式通信, 通过主题进行的异步数据流, 参数服务器上的数据存储
    • 非实时框架

工作空间

catkin

  • catkin工作空间文件夹中, 可定义,编译,安装cantkin包
    • 工作空间中包括
    • SOURCE SPACE
      • catkin包的源码, 在此可对源码进行提取,检查,克隆将要编译的代码
      • source space的每个文件夹含1或多个catkin包
      • space应在配置,构建,安装时保持不变
      • space根部含指向CMakeLists.txt的符号链接, 文件在配置catkin工程时被CMake调用
    • BUILD SPACE
      • space是Cmake用于编译catkkin包, 保存缓存信息和其他中间文件
      • 不一定包含在工作空间内/源空间之外
    • DEVELOPMENT SPACE
      • 安装前放置已建目标的地方, 提供安装步骤之外的测试开发环境
      • 位置由CMake参数CATKIN_DEVEL_PREFIX决定, 默认<build space>/develspace
    • INSTALL SPACE
      • 编译后可被安装在install space
      • 不含于工作空间
      • CMAKE_INSTALL_PREFIX配置, 默认/usr/local
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make # 创建和编译catkin workspace

source devel/setup.bash # 将当前工作空间设置在ROS工作环境的最顶层
$ echo $ROS_PACKAGE_PATH /home/<youruser>/catkin_ws/src:/opt/ros/indigo/share:/opt/ros/indigo/stacks # 确保环境变量包含工作空间目录

rosbuild

  • rosws: 提供各种版本控制系统(git,svn)统一接口, 管理所有软件包的工具
    • 非自带 sudo pt-get install python-rosinstall
  • 旧版编译工具, 已被catkin替代

文件系统

  • Packages: ROS代码中的软件组织单元, 每个package包含libraries库, executables可执行文件, scripts脚本, other artifacts
  • Manifests(package.xml): 一个pakcage的说明, 定义包之间的依赖, 捕捉包的元信息(version, maintainer, license)

文件系统工具

rospack

  • 获取packages的信息
  • find: 返回package的路径
    • rospack find [package_name]
rospack find roscpp

roscd

  • rosbash套件的一部分, 改变路径到一个pckage/stack
    • roscd <package-or-stack>[/subdir]
roscd roscpp
  • 只能找到ROS_PACKAGE_PATH包含的目录
    • 查看PATH中有什么echo $ROS_PACKAGE_PATH
  • roscd log: 进入ROS存放log的地方

rosls

  • rosbash套件的一部分, 允许以名字ls
    • rosls <package-or-stack>[/subdir]
rosls roscpp_tutorials
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值