ROS下创建第一个节点工程
1、创建工作区
mkdir catkin_ws
cd catkin_ws
mkdir src
2、在src目录下创建包Myrobot,后面所跟roscpp rospy为依赖包
catkin_create_pkg Myrobot roscpp rospy
3、在Myrobot目录下创建src文件夹
mkdir src
4、进入上一步创建的src目录,创建程序文件hello.cpp,(此处文件名为hello)
vim hello.cpp
5、创建完成后编写hello world程序
#include <iostream>
int main()
{
std::cout<<"Hello World!"<<std::endl;
return 0;
}
6、修改配置文件,打开Myrobot包下面的CMkeLists.txt文件,如图所示去掉131、138、139、140行前的注释,粉色标注部分的文件名必须与src目录中得文件名相同,两处红色标注部分为节点名,必须前后一致。

7、编写完成后保存退出,命令为(:wq),回到catkin_ws目录输入以下命令进行编译
catkin_make
8、进入catkin_ws目录,输入以下命令
source ./devel/setup.bash
9、新建一个终端(ctrl+alt+t),输入以下命令
roscore //运行主节点
10、新建终端,执行以下命令
source catkin_ws/devel/setup.bash
rosrun Myrobot test1_node //Myrobot为包名,test1_node为节点名

ROS下创建第一个节点工程的更多相关文章
- 在ROS下编写自己的节点来订阅话题(C++)
参考 http://blog.csdn.net/u013453604/article/details/49102957 的博客,其实这些内容和 <开源机器人操作系统> 这本书差不多 ...
- premake在Ubuntu和GCC环境下创建简单的C++工程
由于premake基于lua脚本,为了方便编辑lua脚本,我在emacs24中利用package system安装了lua-mode. 然后创建config.lua文件,填入下面这段,主要来自:htt ...
- linux下自动创建设备文件节点---class
在驱动模块初始化函数中实现设备节点的自动创建 我们在刚开始写Linux设备驱动程序的时候,很多时候都是利用mknod命令手动创建设备节点,实际上Linux内核为我们提供了一组函数,可以用来在模块加载的 ...
- 【Android Developers Training】 1. 创建一个Android项目工程
注:本文翻译自Google官方的Android Developers Training文档,译者技术一般,由于喜爱安卓而产生了翻译的念头,纯属个人兴趣爱好. 原文链接:http://developer ...
- ROS笔记——创建简单的主题发布节点和主题订阅节点
在安装好ROS后,接着学习如何创建节点和节点之间的通信方式,以一个简单的主题发布节点和主题订阅节点说明. 节点是连接ROS网络等可执行文件,是实现某些功能的软件包,也是一个主要计算执行的进程. 一.创 ...
- Java-Maven(五):Eclipse&Maven下创建java工程&web工程
本章文章主要学习集成了maven插件的eclipse下,创建java project和web project的步骤. 创建java工程 第一步:使用使用maven project来创建java pr ...
- 用Firefly创建第一个工程
原地址:http://blog.csdn.net/uxqclm/article/details/10382097 安装完成之后,在python script包中就存在 firefly-admin的工具 ...
- ROS 教程之 navigation :在 catkin 环境下创建costmap layer plugin
在做机器人导航的时候,肯定见到过global_costmap和local_costmap.global_costmap是为了全局路径规划服务的,如从这个房间到那个房间该怎么走.local_costma ...
- js中创建html标签、加入select下默认的option的value和text、删除select元素节点下全部的OPTION节点
<pre name="code" class="java"> jsp 中的下拉框标签: <s:select name="sjx&qu ...
随机推荐
- 【转】PL/SQL Developer各个窗口的功能
源地址:http://www.codeweblog.com/pl-sql-developer%E5%90%84%E4%B8%AA%E7%AA%97%E5%8F%A3%E7%9A%84%E5%8A%9F ...
- 116、Android获取Manifest中<meta-data>元素的值
在AndroidManifest.xml中,<meta-data>元素可以作为子元素, 被包含在<activity>.<application> .<serv ...
- IE报错:模块"scrrun.dll"已加载,但对DllRegisterServer的调用失败,错误代码为0x80004005
在我的win10系统上打开某内部网页登录的时候弹出'模块"scrrun.dll"已加载,但对DllRegisterServer的调用失败,错误代码为0x80004005'报错信息, ...
- IE6 跟随滚动解决方法
position:fixed;_position:absolute; left:0px; top:350px;_top:expression(documentElement.scrollTop +do ...
- Python 之 装饰器的写法
普通装饰器 1. 不带参数的普通装饰器 from functools import wraps def use_logging(func): @wraps(func) # 使得装饰器函数和原函数有一样 ...
- 《C#编程》
第一天做C#,第一个C#.2016-11-11,周五 1.是用windowFormApp编程的代码. 2.下面是ConsoleApp编程的代码 例题1.主要是声明变量,1>使用变量,赋值语句 2 ...
- 阿里云CentOS6上配置iptables
参考:http://blog.abv.cn/?p=50 阿里云CentOS6默认没有启动iptables 1.检查iptables状态 [root@iZ94jj63a3sZ ~]# service i ...
- Redis 配置文件
# Redis configuration file example. # # Note that in order to read the configuration file, Redis mus ...
- Java判断Class变量是什么类型
public static void main(String[] args) { java.util.Date date_u = new java.util.Date(1); java.sql.Dat ...
- dialogfield
before ax2012: typeof() or extendedtype ax2012: extendedtypestr()