【ROS进阶】一文讲清如何在VScode中配置ROS编程环境

使用VSCODE进行ROS编程,共有两种操作方式,分别:VScode图形界面、命令行。在使用中,我一般VScode编辑+命令行操作。
使用命令行进行:编译、包生成、节点运行等操作主要为了不同电脑之间操作的统一。
使用vscode进行编辑:主要是VSC提供高亮、跳转、补齐等操作,使得编程更加高效。

(1)打开工作空间:code .
(2)运行主节点:执行快捷键ctrl + shfit + p,再输入ROS:START

重要提示:
c_cpp_properties.json文件下需要添加如下指令,否则头文件会报错。

"configurationProvider": "ms-vscode.cmake-tools"

configurationProvider:这个配置是告诉VS code,让Cmake Tools插件根据CMakeLists.txt的配置来指定C/C++的代码环境,如在CMakeLists.txt中配置了
link_directories(dir_xx)命令,VS Code就能正确识别出
#Include<dir_xx/xxx.h>头文件。同时也就取代了上面的 includePath配置。


ROS编程有很多编辑器,与Vim、Gedit等相比,使用VS code进行ROS编程具有两大优势:一是为ROS编程提供较好的编辑环境,二是可以轻松地实现函数查看和文件跳转。本文提供两种ROS编译方法:终端编译和VScode编译。在实际测试过程中,作者使用的系统是ubuntu20.04版本,所有指令亲测可用。

由于vscode官网不稳定,提供ubuntu版本的vscode下载链接:
链接:https://pan.baidu.com/s/1qN5E-51QKnxgQLCsV7BelA?pwd=2q4l 提取码:2q4l

一、安装插件

1、ROS

在这里插入图片描述

2、catkin_tool

在这里插入图片描述

二、环境配置

1、创建工作空间

#创建并初始化工作空间
mkdir -p ~/test_ws/src 
cd ~/test_ws/src 
catkin_init_workspace
#编译工作空间
cd ~/test_ws/
catkin_make
#设置工作变量
source devel/setup.bash

在这里插入图片描述

2、vscode打开工作空间

在文件夹下,输入code . 可以直接打开工作空间。

code .

因为安装了ROS插件,VScode会直接识别catkin环境,并且自动生成.vscode文件夹,里面保含c_cpp_properties.json、settings.json 两个文件。

c_cpp_properties.json主要是includePath参数,当有自定义头文件时,需要在其内添加。
setting.json主要是ROS使用python编程,python相关配置,以及其它配置。我这里没有做出改动。

在这里插入图片描述

3、创建功能包

(1)终端方法

语法:catkin_create_pkg <package_name>[depend1][depend2][depend3]

#创建功能包
$ cd ~/catkin_ws/src
$ catkin_create_pkg test_pkg std_msgs rospy roscpp
#编译功能包
$ cd ~/catkin_ws
$ catkin_make

$ source ~/catkin_ws/devel/setup.bash

(2)vscode方法

在左侧资源管理器找到我们创建的工作区中的src文件夹,右键src选择create catkin package:

弹出的第一个框(package name)填写你的功能包名称,这个是自定义,我命名为test_pkg;
弹出的第二个框(dependencies)填写你用到的功能包名称,这里填roscpp rospy std_msgs;
在这里插入图片描述

4、创建配置json文件

(1)自动生成的json文件

c_cpp_properties.json和settings.json自动生成不需要修改。

(2)tasks.json

按下ctrl + shfit + p输入指令tasks: configure task,然后会下拉出许多,选择catkin_make: build 会自动生成tasks.json文件。

5、编写ROS节点文件进行测试

在test_pkg文件夹下src文件夹内创建helloworld.cpp 文件

#include "ros/ros.h"

int main(int argc, char *argv[])
{
    //执行 ros 节点初始化
    ros::init(argc,argv,"hello");
    //创建 ros 节点句柄(非必须)
    ros::NodeHandle n;
    //控制台输出 hello world
    ROS_INFO("hello world!");

    return 0;
}

6、修改编译规则

编译语法:

add_executable(节点名 src/文件名)
target_link_libraries(节点名  ${catkin_LIBRARIES})
## Declare a C++ executable
## With catkin_make all packages are built within a single CMake context
## The recommended prefix ensures that target names across packages don't collide
# add_executable(${PROJECT_NAME}_node src/test_pkg_node.cpp)

## Specify libraries to link a library or executable target against
# target_link_libraries(${PROJECT_NAME}_node
#   ${catkin_LIBRARIES}
# )

在test_pkg文件夹下CmakeLsit.txt文件内添加:

add_executable(hello src/helloworld.cpp)
target_link_libraries(hello ${catkin_LIBRARIES})

7、节点编译

(1)终端方法

catkin_make

(2)vscode方法

执行快捷键:ctrl+shift+b

8、运行ROS MASTER

(1)终端方法

roscore

(2)vscode方法

执行快捷键ctrl + shfit + p,再输入ROS:START
在这里插入图片描述

9、运行节点

(1)终端方法

source devel/setup.bash 
rosrun test_pkg hello

(2)Vscode方法

执行快捷键ctrl + shfit + p输入ROS:Run a Ros executable, 依次输入你创建的功能包的名称以及节点名称(即编译成功后二进制文件的名称)

三、VScode快捷键说明

ctrl+shift+p:调出用于执行命令的输入框
ctrl+shift+b:编译

参考: ROS支持的IDE:http://wiki.ros.org/IDEs VS
code编译ROS教程:https://marketplace.visualstudio.com/items?itemName=ms-iot.vscode-ros
博客:https://blog.csdn.net/g944468183/article/details/123759886

  • 29
    点赞
  • 80
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 31
    评论
以下是在VSCode配置ROS环境的步骤: 1. 安装VSCode:首先,你需要下载并安装VSCode编辑器。你可以从VSCode官方网站上下载适用于你的操作系统的安装程序。 2. 安装ROS:接下来,你需要安装ROSROS是一个机器人操作系统,提供了一系列工具和库,用于构建机器人应用程序。你可以从ROS官方网站上找到适用于你的操作系统的安装指南。 3. 安装ROS插件:在VSCode,你需要安装ROS插件以便与ROS进行集成。打开VSCode,点击左侧的扩展图标(四个方块组成的正方形),在搜索栏输入"ROS",然后选择"ROS"插件并点击安装。 4. 配置ROS工作区:在VSCode,你需要创建一个ROS工作区来管理你的ROS项目。在VSCode的菜单栏,选择"文件" -> "打开文件夹",然后选择一个文件夹作为你的ROS工作区。 5. 配置ROS环境变量:在VSCode,你需要配置ROS环境变量,以便VSCode能够正确地识别ROS命令和库。在VSCode的菜单栏,选择"文件" -> "首选项" -> "设置",然后在右侧的设置面板搜索"环境变量"。点击"编辑 in settings.json",然后在打开的settings.json文件添加以下代码: ```json "terminal.integrated.env.linux": { "ROS_DISTRO": "your_ros_distro", "ROS_PACKAGE_PATH": "/opt/ros/your_ros_distro/share", "ROS_MASTER_URI": "http://localhost:11311" } ``` 请将"your_ros_distro"替换为你正在使用的ROS发行版的名称(例如"melodic")。 6. 构建和运行ROS项目:在VSCode,你可以使用ROS插件提供的命令来构建和运行ROS项目。你可以在VSCode的终端使用ROS命令(例如"catkin_make")来构建你的ROS项目,并使用ROS插件提供的调试功能来调试你的ROS应用程序。 希望这些步骤能帮助你在VSCode成功配置ROS环境。如果你有任何进一步的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 31
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

后厂村路蔡徐坤

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值