Ros的脚本加入到.bashrc

执行一次即可,这样每次启动终端都会识别到ros2命令

# 添加
echo "source /opt/ros/humble/setup.sh" >> ~/.bashrc
# source一遍
source ~/.bashrc

编译指令

在工作空间目录下执行以下命令:

# 编译
colcon build --symlink-install
# 传入cmake编译类型参数用于调试
colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Debug

source install/setup.bash

在工作空间目录下执行source命令:

source install/setup.bash

运行cpp编写的可执行程序

ros2 run cpp_pubsub publisher

运行python编写的可执行程序

ros2 run py_pubsub talker 

调试配置文件和方法

在工作空间目录下创建.vscode文件夹,然后创建以下三个文件用于配置工作区和调试的启动文件:

c_cpp_properties.json

{
    "configurations": [
        {
            "name": "ROS",
            "includePath": [
                "${workspaceFolder}/**",
                "/opt/ros/humble/include/**"
            ],
            "defines": [],
            "compilerPath": "/usr/bin/g++",
            "cStandard": "gnu17",
            "cppStandard": "c++17",
            "intelliSenseMode": "linux-gcc-x64",
            "configurationProvider": "ms-vscode.cmake-tools"
        }
    ],
    "version": 4
}

tasks.json

该文件用于定义运行的自动化脚本任务,比如执行编译命令等。这里使用以下配置项定义一个用于编译所有功能包的任务:

{
  "version": "2.0.0",
  "tasks": [                                                            
    {
      "type": "shell",                                                  
      "label": "colcon build",                             
      "command": "colcon build --symlink-install --cmake-args -DCMAKE_BUILD_TYPE=Debug",               
      "args": [], 
      "options": {
        "cwd": "${workspaceFolder}"                                     
      },
      "problemMatcher":"$msCompile"                            
    }
  ]
}

launch.json

该文件用于启动一项调试任务,每项任务可以在侧边栏的调试选项卡中自由选择,这里配置了两项调试任务,一个是具有复用性的Python程序调试项,另一个是C++可执行程序的调试项,其中preLaunchTask选项可以在启动调试前自动调试tasks.json中定义的编译指令进行编译:

{
    "configurations": [
        {
            "name": "Python: ${fileBasenameNoExtension}",
            "type": "python",
            "request": "launch",
            "program": "${file}",
            "console": "integratedTerminal",
            "justMyCode": true,
            "preLaunchTask": "colcon build"
        },
        {
            "name": "调试ros节点-publisher(cpp)",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/build/cpp_pubsub/publisher",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "/usr/bin/gdb",
            "preLaunchTask": "colcon build"
        }
    ]
}

启动调试的方法

Python文件打开需要调试的源文件,然后调试中选择label为Python: ${fileBasenameNoExtension}的调试选项,打断点后启动对当前Python文件的调试;cpp可执行程序,在源文件中打断点然后启动对应文件的调试选项调试ros节点-publisher(cpp),可以创建多个cpp的调试配置项以调试多个可执行程序。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值