ROS2节点使用vscode debug

这篇具有很好参考价值的文章主要介绍了ROS2节点使用vscode debug。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Ubuntn22.04 6 + ROS2 Humble

首先安装 gdbserver

sudo apt-get -y install gdbserver

创建工作空间及src文件夹 ws/src,用colcon编译(ros1 是 catkin,ros2是colcon)

创建功能包

ros2 pkg create your_package_name

source setup.bash文件,与ros1不同,ros2的setup.bash文件在工作空间的install文件夹下

source install/setup.bash

修改功能包的cmakelist.txt,加入

set(CMAKE_BUILD_TYPE Debug)

可以打断点暂停

# find dependencies
find_package(ament_cmake REQUIRED)
find_package(rclcpp REQUIRED)
find_package(pcl_ros REQUIRED)
find_package(pcl_conversions REQUIRED)
find_package(sensor_msgs REQUIRED)

加入相关的依赖项

# 生成可执行文件
add_executable (executable_file_name src/your_file_name.cpp)

# 配置可执行文件的依赖项
ament_target_dependencies(executable_file_name 
  rclcpp 
  pcl_ros 
  pcl_conversions 
  sensor_msgs)  

# 将可执行文件写入路径
install(TARGETS
  executable_file_name
  DESTINATION lib/${PROJECT_NAME})  

运行gdbserver

ros2 run --prefix 'gdbserver localhost:3000' package_name executable_name

用vscode打开工作空间

创建一个launch.json文件

写入如下内容

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "C++ Debugger",
            "request": "launch",
            "type": "cppdbg",
            "miDebuggerServerAddress": "localhost:3000",
            "cwd": "/",
            "program": "你的可执行文件的路径"
        }
    ]
}

然后就可以打上断点debug了文章来源地址https://www.toymoban.com/news/detail-578699.html

到了这里,关于ROS2节点使用vscode debug的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • ROS2从入门到精通0-3:VSCode 搭建 ROS2 工程环境

    本专栏旨在通过对ROS2的系统学习,掌握ROS2底层基本分布式原理,并具有机器人建模和应用ROS2进行实际项目的开发和调试的工程能力。 🚀详情:《ROS2从入门到精通》 步骤如下: 通过国内源下载VSCode 将压缩包解压并移动到 usr/local 目录 获取运行权限: 安装VSCode,注意此处只

    2024年03月24日
    浏览(40)
  • ROS2系统学习番外篇2---用VSCode开发ROS2程序

    在ROS2系统学习3—第一个“Hello World”程序—即工作空间创建与包创建中已经介绍了如何创建ROS的工作空间以及包。在开发大型工程时,往往需要在IDE下面进行开发,因此本篇介绍使用VSCode来搭建ROS2开发环境的方法。 首先用VSCode打开ROS2的工作空间。 按Ctrl+shift+P进入命令模式

    2024年02月13日
    浏览(43)
  • ROS学习笔记(四)---使用 VScode 启动launch文件运行多个节点

    ROS学习笔记文章目录 01. ROS学习笔记(一)—Linux安装VScode 02. ROS学习笔记(二)—使用 VScode 开发 ROS 的Python程序(简例) 03. ROS学习笔记(三)—好用的终端Terminator 一、什么是launch文件 虽然说Terminator终端是能够比较方便直观的看运行的节点,但有时候节点一多,输入的rosrun指令也会

    2024年02月09日
    浏览(41)
  • ros2 foxy创建一个包和节点-ubuntu20.04

    我们创建了两个目录,ros2_ws和在他下面的子目录,运行编译的目录在ros2_ws目录下,src目录下是我们生成的ros的包,我们自己编写的代码也都早src目录下,colcon build编译之后会在ros2_ws目录下生成一下文件,运行程序也是在ros2_ws这个目录下。 使用 ros2 pkg create 来创建包和节点,

    2024年02月02日
    浏览(53)
  • 【ROS】 在VScode中 ROS Debug 配置方法非常详细版

    本篇主要描述如何在ROS下进行C++ debug断点调试功能,本部分基本完全参考官方文档实验: https://github.com/ms-iot/vscode-ros 官方gif展示图示意: 以下为静态图片展示区及解释区: 需要以debug type进行编译吼! BUILD_TYPE如果不写的话 一般默认是Relese(如果没记错的话) 注意词典(不是

    2024年02月02日
    浏览(34)
  • 【ROS2】为什么要使用ROS2?《ROS2系统特性介绍》

    2010年,ROS1首次发布正式版本,其研发的初衷是为设计PR2(个人服务型机器人)共用的软件架构。但随着ROS1技术的普及,ROS1开始广泛融入各领域无人系统的研发,陆续暴露了系统的诸多问题。为了适应新时代机器人研发的需要,2022年5月,ROS开发者团队推出新版本ROS2。 2007年

    2024年02月09日
    浏览(40)
  • ros2 基础教程-使用ROS 2进行相机标定

    相机(摄像头)是一种非常精密的光学仪器,对外界环境的感知非常敏感。由于摄像头内部和外部的一些原因,摄像头采集的图像常常会发生一定的畸变。如果直接将采集到的图像拿来进行图像处理,会产生很大的问题。为了避免图像数据源造成的误差,需要对摄像头的相关

    2024年01月21日
    浏览(52)
  • (一)ROS2中OPENCV的使用步骤

    打开终端运行,即可得到自己的opencv版本 2.1、创建工作环境 2.2、创建ros2包的时候,添加opencv依赖项 这里在创建包的时候增加了–node-name 因此不需要自己添加依赖项 在这里可以看到运行结果,一个经典的图像处理领域使用的lenna的图片。 到这里说明你ros2下的opencv库已经可以

    2024年02月05日
    浏览(50)
  • ROS2 Humble如何使用串口驱动?(Serial)

    目录 1. 串口库(Serial Library)简介: 2.  源码及主页 3.  国内git仓库(ROS2 humble已测试可用) 4. 可能出现的问题

    2024年02月16日
    浏览(42)
  • STM32 使用microros与ROS2通信

    本文主要介绍如何在STM32中使用microros与ROS2进行通信,在ROS1中标准的库是rosserial,在ROS2中则是microros,目前网上的资料也有一部分了,但是都没有提供完整可验证的demo,本文将根据提供的demo一步步给大家进行演示。 1、首先如果你用的不是STM32F4的话,则需要自己去生成 micro_r

    2024年02月08日
    浏览(45)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包