ROS lesson 1
ROS ROS官网
ROS 简介
- ROS 是 Robot Operation System 的简写,并且 他诞生在2000年后,至今有10余年了,运行在 Linux(Ubuntu) 上
- ROS 不是 真正意义上的 OS(操作系统)
- 类似Java 的 JVM 只是运行在操作系统上的一个软件来管理 Robot 的操作。 因为在过去 需要做很多事情。 机器人架构,底层算法,激光感应器Draw Mapping, 算法。
ROS 安装
- 在 Github 上搜索 重德智能
- 在 重德智能 上找到 ROS-Academy-for-Beginners(是开源的项目,里有介绍,以及下载 与 安装 教程)
ROS IDE推荐
- 软件名称: RoboWare
- 软件安装: 见 roboware
ROS 编译工具
- ** catkin ** 编译工具 基于CMake 开发的
- ** catkin_make ** 初始化 并 建立 工作空间
mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make
编译
cd ~/catkin_ws #回到工作空间
catkin_make
source ~/catkin_ws/devel/setup.bash
#编译完成后要source刷新环境
- 执行后会在当前目录下生成 build 和 devel 两个文件夹
build 里是CMake 和 catkin 缓存的中间文件
build 里是 目标文件,一些生成的头文件
或者代码文件
,这里不需要管。
src 就是写代码的 地方 ,不需要去** build & devel** 文件夹
package
- ROS 软件的基本组织形式
- catkin 编译的基本单元
- 一个package可以包含多个可执行文件(节点)
package 包含 CMakeList.txt 和 package.xml 这是 最精简结构
CMakeList.txt 规定catkin编译的规则
例如:源文件、依赖项、目标文件
package.xml 定义package的属性
例如: 包名、版本号、作者、依赖等
<?xml version="1.0" encoding="UTF-8"?>
<package><!--根标签-->
<name/><!--包名-->
<version/><!--版本号-->
<description/><!--包描述-->
<maintainer/><!--维护者-->
<license/><!--软件许可-->
<buildtool_depend/><!--编译工具-->
<build_depend/><!--编译时的依赖-->
<run_depend/><!--运行时的依赖-->
</package>
ROS 开发 常用命令
- rospack
- 查找某个pkg的地址
rospack find package_name
- 列出本地所有的pkg
rospack list
- roscd
- 跳转到某个pkg路径下
roscd package_name
- rosls
- 列举某个pkg下的文件信息
rosls package_name
- rosed
- 编辑pkg种的文件
rosed pakage_name file_name
- catkin_create_pkg
- 创建一个pkg
catkin_create_pkg <pkg_name>[deps]
- rosdep
- 安装某个pkg所需的依赖
rosdep install [pkg_name]
ROS lesson 1的更多相关文章
- ROS知识(6)----基于Eclipse开发
可以利用Eclipse集成开发环境进行ROS开发,从而提高研发效率.以色列巴尔伊兰大学的Mr. Roi Yehoshua开设了一门ROS课程,课程2( Lesson 2)讲解了如何利用Eclipse在 ...
- Lesson 18 He often does this!
Text After I had had lunch at a village pub, I looked for my bag. I had left it on a chair beside th ...
- 阿里云VPS服务器,ROS内网穿透
Aliyun Windows Server 2008 R2中建立vpn服务器,ros中使用pptp拨号连接 2.在Aliyun服务器中,修改hosts,将内网分配的ip映射到指定的域名,在Aliyun ...
- QT下调试基于ros的catkin项目
1.首先告诉qt ros的搜索路径,通过修改qt creator 桌面启动程序来实现 sudo gedit ~/.local/share/applications/DigiaQtOpenSour ...
- ROS学习(三)—— ROS文件系统
一.预备工作 使用ros0tutorials程序包,先下载: sudo apt-get install ros-<distro>-ros-tutorials 其中<distro> ...
- ROS学习(二)—— 配置ROS环境
一.管理环境 p { margin-bottom: 0.25cm; line-height: 120% } a:link { } 如果你在查找和使用ROS软件包方面遇到了问题,请确保你已经正确配置了脚 ...
- ROS学习(一)—— 环境搭建
一.配置Ubuntu软件仓库且选择ROS正确版本 二.添加source.list sudo sh -c 'echo "deb http://packages.ros.org/ros/ubun ...
- [ROS] Studying Guidance
Reference: https://www.zhihu.com/question/35788789 安装指南:http://wiki.ros.org/indigo/Installation/Ubun ...
- ros::spin() 和 ros::spinOnce() 区别及详解
版权声明:本文为博主原创文章,转载请标明出处: http://www.cnblogs.com/liu-fa/p/5925381.html 博主提示:本文基于ROS Kinetic Kame,如有更(g ...
随机推荐
- 【POJ 1364】 King
[题目链接] 点击打开链接 [算法] 差分约束系统 [代码] #include <algorithm> #include <bitset> #include <cctyp ...
- 21 WPF数据视图
视图对象 当你绑定集合到ItemsControl,在幕后数据视图被安静地创造.视图位于数据源和绑定控件之间.数据视图是通往数据源的一个窗口.它跟踪当前项目,它支持诸如排序,过滤,和分组特征.这些特征独 ...
- springmvc 用fasterxml.jackson返回son数据
一,引入fasterxm.jackson包 <dependency> <groupId>com.fasterxml.jackson.core</groupId> & ...
- centos6之前版本的启动流程
centos6 之前的系统启动: linux启动流程: 1)加电自检 2)读取MBR,引导加载程序grub,完成grub的三个阶段. 3)加载系统内核kernel,执行系统初始化信息. 4)启动用户空 ...
- bzoj 1700: [Usaco2007 Jan]Problem Solving 解题【dp】
很像贪心的dp啊 这个定金尾款的设定让我想起了lolita和jk制服的尾款地狱-- 设f[i][j]为从j到i的付定金的最早月份然后从f[k][j-1]转移来,两种转移f[i][j]=min(f[i] ...
- bzoj 1578: [Usaco2009 Feb]Stock Market 股票市场【背包】
参考:https://blog.csdn.net/mars_ch/article/details/53011234 我背包真是好不熟练啊-- 第一天买了第三天卖相当于第一天买了第二天卖第二天再买第三天 ...
- (前缀和 内存分配)51NOD 1081 子段求和
给出一个长度为N的数组,进行Q次查询,查询从第i个元素开始长度为l的子段所有元素之和. 例如,1 3 7 9 -1,查询第2个元素开始长度为3的子段和,1 {3 7 9} -1.3 + 7 + 9 ...
- 论文翻译-SELF TRAINING AUTONOMOUS DRIVING AGENT
文献地址 链接:https://pan.baidu.com/s/1gHrpnOf1FXLp9u8OJ2-oCg 提取码:y2w6 作者 Shashank Kotyan, Danilo Vasconce ...
- http升级https(转)
让你的网站免费支持 HTTPS 及 Nginx 平滑升级 为什么要使用 HTTPS ? 首先来说一下 HTTP 与 HTTPS 协议的区别吧,他们的根本区别就是 HTTPS 在 HTTP 协议的基础上 ...
- python自动化测试学习笔记-8单元测试unittest模块
官方参考文档:http://docs.python.org/2.7/library/unittest.html unittest是一个python版本的junit,junit是java中的单元测试框架 ...