ros学习笔记(1)

vim的退出方法http://jingyan.baidu.com/article/495ba8410ff14d38b30ede01.html


查看环境变量的方法

例如:查看EDITOR

$ echo $EDITOR


话题的类型是由发布在它上面的消息类型决定的。

rostopic type [topic]      查看话题类型,显示一个消息类型
$ rosmsg show [消息类型]    产看这个消息类型的具体元素和元素的存储类型(如:32位浮点)

程序包

我理解的程序包就是一个包含.xml和cmake文件还有一些其他的脚本(比如C++文件)的文件集合,他们被存放在一个目录下。例如,我的第一个程序包的.xml和cmake文件被放置在beginner_tutorials目录下。而beginner_tutorials的目录是~/catkin_ws/src/beginner_tutorials。

其中catkin_ws是我的工作空间,src是当时建工作空间时新建的文件,以后我所有的自己的包都被放在src这个文件夹下。


新建文件并写入

echo "int64 num" > msg/Num.msg

echo string
echo指令用于输出一个字符串

>的作用是将输出重定向到一个文件中

这句话的意思是将字符串“int64 num”重定向输出到目录msg下的Num.msg文件中,如果没有这个文件就新建一个


创建ROS消息和ROS服务

创建消息

在你的包下建一个msg文件夹,用来放消息。然后在这个文件夹下新建一个纯文本文档,命名为xx.msg即可。然后写入一些诸如

int64 num
string first_name
string last_name
uint8 age
uint32 score

的东西,即消息每一个元素的具体类型。我们就创建了一个消息。

下一步,我们要修改cmake文件使之适应我们新建的消息。

首先我们要修改find_package,利用find_packag函数,增加对message_generation的依赖

find_package(catkin REQUIRED COMPONENTS
   roscpp
   rospy
   std_msgs
   message_generation
)
然后我们还要配置运行依赖

catkin_package(
  ...
  CATKIN_DEPENDS message_runtime ...
  ...)
我们还要将我们的消息添加进来

add_message_files(
  FILES
  Num.msg
)
然后我们必须调用generate_message函数

generate_messages(
  DEPENDENCIES
  std_msgs
)

进一步,我们也要修改.xml文件,添加这两条标签

<build_depend>message_generation</build_depend>
<exec_depend>message_runtime</exec_depend>

这是两个包,第一个在build时起作用,第二个在run的时候起作用


创建服务

在你的包下建一个srv文件夹,用来放服务。然后在这个文件夹下新建一个纯文本文档,命名为xx.srv即可。然后写入一些诸如

int64 a
int64 b
---
int64 sum

的东西,即服务每一个元素的具体类型。我们就创建了一个服务。

然后修改cmake

find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
  message_generation
)
add_service_files(
  FILES
  AddTwoInts.srv
)
然后修改.xml

<build_depend>message_generation</build_depend>
  <exec_depend>message_runtime</exec_depend>


总结一下,主要是几步

1、要有srv和msg文件

2、.xml文件中必须添加两个标签

3、cmake中

      find_package函数中必须添加对message_generation的依赖

      catkin_package中必须添加对message_runtime的依赖

4、cmake中

      需要将我们创建的msg和srv添加到add_message_files和add_sevice_files下

5、cmake中

      最后,必须调用generate_messages函数。




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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值