原文:ROS2学习之旅(21)——创建一个动作服务和客户节点(C++)

动作是ROS中的一种异步通信形式,动作客户端向动作服务器发送目标请求,目标服务器向操作客户端发送目标反馈和结果。本文基于前一篇自定义动作博文。 .创建一个action turtorials cpp包 . 创建一个action turtorials cpp包 在终端运行: . 添加可见性控件 为了使包可以在Windows上编译和工作,我们需要添加一些 可见性控制 。有关为什么需要这样做的详细信息,请 ...

2021-07-16 11:52 1 270 推荐指数:

查看详情

ROS2学习之旅(15)——编写简单的服务客户节点C++

节点使用服务进行通信时,发送数据请求的节点称为客户节点,响应请求的节点称为服务节点。请求和响应的结构由.srv文件决定。 本文的例子是一个简单的整数加法系统:一个节点请求两个整数的和,另一个节点响应结果。 1.创建功能包 在开始之前,确保ROS2的环境变量正确配置。 其次,包应该在src ...

Thu Jul 15 18:28:00 CST 2021 0 266
ROS2学习之旅(10)——创建一个launch文件

当在具有较多节点同时运行的复杂的系统中,打开终端并重新输入配置细节将变得繁杂。 Launch文件允许同时启动和配置多个包含ROS2节点的可执行文件。 使用ros launch命令运行单个启动文件将立即启动整个系统——所有节点及其配置。 1.准备 创建一个新文件家以存放launch文件 ...

Thu Jul 15 07:16:00 CST 2021 0 185
ROS2学习之旅(13)——创建ROS2 功能包

一个功能包可以被认为是ROS2代码的容器。如果希望能够管理代码或与他人共享代码,那么需要将其组织在一个包中。通过包,可以发布ROS2工作,并允许其他人轻松地构建和使用它。 在ROS2中,创建功能包使用ament作为其构建系统,colcon作为其编译工具。可以使用CMake或Python来创建包 ...

Thu Jul 15 07:51:00 CST 2021 0 187
ROS2学习之旅(1)——初识ROS2

本系列用来记录ROS2学习过程,有错误或者不合理的地方请大家指正。由于博主具有ROS1的学习经历,会添加一些与ROS1的一些对比,当然这对于ROS2本身的学习内容没有丝毫影响,欢迎大家积极与我在评论区交流。如果给您带来帮助,希望能给点个关注,以后还会陆续更新有关机器人的内容,点个关注不迷路~欢迎 ...

Sun Jul 11 05:50:00 CST 2021 0 349
ROS2学习之旅(18)——在类中使用参数(C++

创建自己的节点时,有时需要添加可以从启动文件中设置的参数。 本文将向您展示如何在c++类中创建这些参数,以及如何在启动文件中设置它们。 1.创建功能包 在工作空间src目录下,运行: 更新package.xml信息: 2.编写C++节点 在dev_ws/src ...

Fri Jul 16 03:25:00 CST 2021 0 143
ROS2学习之旅(4)——理解ROS2 Graph中的节点(Node)

ROS(2)图(ROS(2) graph)是一个同时处理数据的基于ROS2元素的网络,它包含了所有的可执行文件以及它们之间的连接。图中的基本元素包括:节点(nodes)、话题(topics)、服务(services)、参数(parameters)以及动作(actions)。下面对ROS2中的节点 ...

Wed Jul 14 05:30:00 CST 2021 0 198
ROS2学习之旅(14)——编写简单的发布者和订阅者(C++

节点是通过ROS Graph进行通信的可执行进程。在本文中,节点将通过话题以字符串消息的形式相互传递信息。这里使用的例子是一个简单的"talker"和“listener”系统,一个节点发布数据,另一个节点订阅话题,以便接收该数据。 这些示例中使用的代码可以在这里找到。 1.创建一个功能包 ...

Thu Jul 15 07:59:00 CST 2021 2 333
ROS2学习之旅(16)——创建自定义ROS2 msg和srv文件

1.创建功能包 在本文中,将在自己的包中创建自定义的.msg和.srv文件,然后在另外的包中使用它们,这两个包应该在同一个工作空间中。 本文将使用在前面文章中创建的pub/sub和service/client包【可参考前几篇RO2学习之旅的文章】,请确保处在dev_ws/src目录下,然后运行 ...

Thu Jul 15 19:31:00 CST 2021 0 241
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM