原文: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