ros将参数文件上传到服务器,ros学习(三)从编写发布器和订阅器到服务器和客户端...

编写发布器和订阅器

已经在src文件夹下写好了发布者和订阅器 talker.cpp和listener.cpp

include_directories(include ${catkin_INCLUDE_DIRS})

add_executable(talker src/talker.cpp)

target_link_libraries(talker ${catkin_LIBRARIES})

add_executable(listener src/listener.cpp)

target_link_libraries(listener ${catkin_LIBRARIES})

这会生成两个可执行文件, talker 和 listener, 默认存在~/catkin_ws/devel/lib/ 中

为可执行文件添加对生成的消息文件的依赖:

add_dependencies(talker beginner_tutorials_generate_messages_cpp)

这样就可以确保自定义消息的头文件在被使用之前已经被生成

可以直接调用可执行文件,也可以使用 rosrun 来调用他们

catkin_make

如果你是添加了新的 package,你需要通过 --force-cmake 选项告诉 catkin 进行强制编译

测试发布器和订阅器

在调用catkin_make后,在运行你自己的程序前,需要source catkin工作空间下的setup.sh文件:

cd ~/catkin_ws

source ./devel/setup.bash

编写服务器和客户端

服务器:执行服务的节点

在包中创建src/youname.cpp文件

在包中创建src/add_two_ints_client.cpp文件

回放数据

mkdir ~/bagfiles

cd ~/bagfiles

rosbag record -a

运行rosbag record命令,并附加-a选项,该选项表示将当前发布的所有话题数据都录制保存到一个bag文件中。

使用rosbag info检查看它的内容,使用rosbag play命令回放出来

rosbag record -O subset /turtle1/command_velocity /turtle1/pose

-O参数告诉rosbag record将数据记录保存到名为subset.bag的文件中,同时后面的话题参数告诉rosbag record只能录制这两个指定的话题

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值