ubuntu20.04中vscode使用ROS的详细方法

2022-11-13 18:11:54 方法 详细 Ubuntu20

ubuntu20.04 vscode使用ROS(c++

1.在vscode安装扩展

ROS的安装较为麻烦,需要的@我,我单独出一份教程

在vscode的左边中的拓展(快捷键Ctrl+Shift+X)中搜索并添加以下拓展

· C/C++

· CMake

· ROS

2. 创建工作文件夹

2.1 快捷键打开终端 ctrl+alt+t

2.2 新建文件夹 mkdir -p test_ros/src

2.3 进入新建的文件夹 cd test_ros

2.4 编译catkin_make

如果有多个版本 python, 输入:

catkin_make -DPython_EXECUTABLE=/usr/bin/python3

2.5 输入code打开vscode,点击文件-打开文件夹,选择刚刚新建的test_ros文件夹

3.新建ros工程

3.1 右键点击src文件夹,选择Create Catkin Package

3.2 Package name是自定义的,在运行时用到,这里命名为ros_test

3.3 Dependecies中输入std_msgs rospy roscpp

以上两步等同于在命令行中输入

catkin_create_pkg ros_test std_msgs rospy roscpp

4.修改配置文件

4.1 c_cpp_properties.JSON

快捷键Ctrl+Shift+p, 找到C/C++: 编辑配置 或者 C/C++: Edit configurations(jsON)

修改如下

// 指定C/C++类库和包含路径以及配置
{
  "configurations": [
    {
      "browse": {
        "databaseFilename": "${default}",
        "limitSymbolsToIncludedHeaders": false
      },
      "includePath": [
        "/opt/ros/noetic/include/**", //注意要跟所安装的ROS路径一致
        "/usr/include/**"
      ],
      "name": "ROS",
      "intelliSenseMode": "GCc-x64",
      "compilerPath": "/usr/bin/gcc",
      "cStandard": "gnu11",
      "cppStandard": "c++14",
      "compileCommands": "${workspaceFolder}/build/compile_commands.json"
    }
  ],
  "version": 4
}

4.2 tasks.json

快捷键Ctrl+Shift+p, 找到任务:配置任务 或者 Tasks: Configure task,选哪项都可以,因为要修改

// 指定catkin_make编译参数
{
    "tasks": [
        {
            "label": "catkin_make: build",
            "type": "shell",
            "command": "catkin_make",
            "args": [
                "--directory",
                "/home/jawenos/project/test_ros",// 注意文件路径
                "-DCMAKE_BUILD_TYPE=Debug" // 注意这里是debug
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher":"$catkin-gcc"
        }
    ],
    "version": "2.0.0"
}

4.3 launch.json

在vscode的左边栏中运行与调试(快捷键Ctrl+Shift+D)创建launch.json,
修改如下:

{
    // 使用 IntelliSense 了解相关属性。 
    // 悬停以查看现有属性的描述。
    // 欲了解更多信息,请访问: https://Go.microsoft.com/fwlink/?linkid=830387
    "version": "0.2.0",
    "configurations": [
        {
            "name": "ros_test",
            "type": "cppdbg",
            "request": "launch",
            //表示可执行文件所在路径。workspaceFolder表示vscode所加载文件根目录
            "program": "${workspaceFolder}/devel/lib/ros_test/ros_test",
            "args": [],
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "setupCommands": [
                {
                    "description": "Enable pretty-printing for gdb",
                    "text": "-enable-pretty-printing",
                    "ignoreFailures": false
                }
            ],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            
        }
    ]
}

5.cpp文件

5.1 首先在ros_test文件夹中的src文件夹中新建一个C++文件 ros_test.cpp,在其中写入

#include<iOStream>
#include"ros/ros.h"
using namespace std;
int main(int argc, char** argv){
    ROS_INFO("hello");
    return 0;
}

5.2 修改ros_test中的CMakeList文件

cmake_minimum_required(VERSION 3.0.2)
project(ros_test)
find_package(catkin REQUIRED COMPONENTS
  roscpp
  rospy
  std_msgs
)
catkin_package(
 CATKIN_DEPENDS roscpp rospy std_msgs
)
include_directories(
# include
  ${catkin_INCLUDE_DIRS}
)
add_executable(ros_test src/ros_test.cpp)

target_link_libraries(ros_test
  ${catkin_LIBRARIES}
)

5.3 点击vscode上方终端,新建终端,catkin_make重新编译一次文件,再输入roscore启动ROS,最后到ros_test.cpp中F5开始调试即可

到此这篇关于ubuntu20.04 vscode使用ROS的文章就介绍到这了,更多相关ubuntu vscode使用ROS内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!

相关文章