Ubuntu 20.04下配置VSCode以支持ROS开发

server/2025/3/5 7:16:14/

Ubuntu 20.04下配置VSCode以支持ROS开发

      • 1. 安装VSCode
      • 2. 安装ROS
      • 3. 安装VSCode ROS扩展
      • 4. 创建工作区
      • 5. 配置VSCode
      • 6. 配置`tasks.json`和`launch.json`
      • 7. 编写和调试ROS节点
      • 8. 安装其他有用扩展
      • 9. 运行ROS节点

在Ubuntu 20.04下配置VSCode以支持ROS开发,步骤如下:

1. 安装VSCode

首先,确保已安装VSCode。如果未安装,可以通过以下命令安装:

sudo apt update
sudo apt install code

2. 安装ROS

确保已安装ROS Noetic(Ubuntu 20.04对应的ROS版本)。如果未安装,参考ROS官方安装指南。

3. 安装VSCode ROS扩展

打开VSCode,安装ROS扩展:

  1. 打开VSCode。
  2. 进入扩展市场(Ctrl+Shift+X)。
  3. 搜索“ROS”并安装Microsoft提供的“ROS”扩展。

4. 创建工作区

创建一个ROS工作区并初始化:

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/
catkin_make

5. 配置VSCode

  1. 打开VSCode,选择“File” -> “Open Folder”,打开~/catkin_ws

  2. 在VSCode中打开终端(Ctrl+`),确保ROS环境变量已加载:

    source /opt/ros/noetic/setup.bash
    source ~/catkin_ws/devel/setup.bash
    

6. 配置tasks.jsonlaunch.json

  1. tasks.json:用于构建ROS包。在.vscode文件夹中创建tasks.json,内容如下:

    {"version": "2.0.0","tasks": [{"label": "catkin_make","type": "shell","command": "catkin_make","args": [],"group": {"kind": "build","isDefault": true},"problemMatcher": [],"presentation": {"reveal": "always","panel": "new"}}]
    }
    
  2. launch.json:用于调试ROS节点。在.vscode文件夹中创建launch.json,内容如下:

    {"version": "0.2.0","configurations": [{"name": "ROS: Launch","type": "ros","request": "launch","target": "path/to/your/launch/file.launch"}]
    }
    

7. 编写和调试ROS节点

  1. src目录下创建或导入ROS包。
  2. 编写代码后,使用tasks.json中的catkin_make任务构建。
  3. 使用launch.json调试ROS节点。

8. 安装其他有用扩展

建议安装以下扩展:

  • C/C++:提供C++支持。
  • Python:提供Python支持。
  • CMake Tools:用于CMake项目。

9. 运行ROS节点

在终端中运行ROS节点:

roscore
rosrun your_package your_node

或在VSCode中使用launch.json启动。


http://www.ppmy.cn/server/172538.html

相关文章

魔百盒CM311-1a_YST_晶晨S905L3A芯片_2+8G_安卓9.0_免拆卡刷固件包

魔百盒CM311-1a_YST_晶晨S905L3A芯片_28G_安卓9.0_免拆卡刷固件包 刷机教程: 3个刷机文件拷到U盘(优盘大小最好是8G以内,格式化为FAT32,为做过系统盘的),插上U盘,开机快速按左键,出…

慢SQL如何定位处理?

给你张表,发现查询速度很慢,你有那些解决方案 mysql的explain有什么作用? 如果Explain用到的索引不正确的话,有什么办法干预吗? MySQL | CS-Notes 面试笔记 对于索引,在开发中需要注意什么?_索…

C++发展

目录 ​编辑C 的发展总结:​编辑 1. C 的早期发展(1979-1985) 2. C 标准化过程(1985-1998) 3. C 标准演化(2003-2011) 4. C11(2011年) 5. C14(2014年&a…

【分享】网间数据摆渡系统,如何打破传输瓶颈,实现安全流转?

在数字化浪潮中,企业对数据安全愈发重视,网络隔离成为保护核心数据的重要手段。内外网隔离、办公网与研发网隔离等措施,虽为数据筑牢了防线,却也给数据传输带来了诸多难题。传统的数据传输方式在安全性、效率、管理等方面暴露出明…

一、数据类型

1.1 c 语言 中 数据类型 类型字节数取值范围int2- 32768 ~ 32767 (5位十进制数)int4- 2147483648 ~ 2147483647 (10位十进制数)unsignde int20 ~ 65535 (5位十进制数)unsignde int40 ~ 4294967295 &#xf…

P7使用pytorch实现马铃薯病害识别

🍨 本文为🔗365天深度学习训练营 中的学习记录博客🍖 原作者:K同学啊 我的环境 语言环境:python 3.7.12 编译器:pycharm 深度学习环境:tensorflow 2.7.0 数据:本地数据集 这次我们使…

初识Qt · 信号与槽(2)

目录 前言: 信号和槽初识 两个问题 前言: 本文我们正式开始介绍信号与槽这个概念,在谈及Qt中的信号与槽这个概念之前,我们不妨回顾一下Linux中的信号,比如发生了除0错误,OS就会给该进程发送一个信号&am…

Hive 3.1 在 metastore 运行的 remote threads

Remote threads 是仅当 Hive metastore 作为单独的服务运行是启动,请求需要开启 compactor。 有以下几种: 1. AcidOpenTxnsCounterService 统计当前 open 的事务数 从表 TXNS 中统计状态为 open 的事务。此事务数量可以再 hive metrics 中。 2. Acid…