《精通ROS机器人编程(原书第2版) 》 —2.3.2 编译ROS动作服务器和客户端
【摘要】
本节书摘来自华章计算机《精通ROS机器人编程(原书第2版) 》 一书中第2章,第2.3.2节,作者是[印度]郎坦·约瑟夫(Lentin Joseph)[意大利]乔纳森·卡卡切(Jonathan Cacace),张新宇 张志杰 等译 。
2.3.2 编译ROS动作服务器和客户端
在src文件夹中创建了这两个源码文件后,我们必须编辑package.xml和CMakeLists.txt才能编译生成这两个节点。
package.xml文件应该包含消息生成和运行时的软件包,就像我们在创建ROS服务和消息中所做的那样。
我们必须在CMakeLists.txt中包含Boost库才能编译生成这些节点。此外,我们也必须把为此示例编写的动作文件添加进去:
我们需要在find_package()中添加actionlib、actionlib_msgs和message_generation:
我们需要将Boost添加为系统依赖:
我们需要在add_action_files()中添加.action文件:
我们需要在generate_messages()中添加actionlib_msgs:
我们必须在include_directories中包含Boost:
在catkin_make编译后,我们需要使用下面的命令来运行这些节点:
运行roscore:
启动action server节点:
启动action client节点:
这些过程的输出如图2-7所示。
图2-7 运行ROS动作服务器和客户端
【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)