ROS实践01 C++ Python基本实现

文章目录

    • 运行环境:
    • 1.1 vscode 环境配置:
      • 1)ctrl+shift+X 添加扩展插件:
      • 2)ctrl+shift+B 配置中更换为以下代码
    • 1.2 C++代码实现
      • 1)工作空间创建和编译
      • 2)功能包创建和添加依赖
      • 3)新建.cpp文件
      • 4)修改CMakeList
      • 5)运行 C++ 节点
    • 2.1 python代码实现
      • 1)在 功能包 下新建 scripts 文件夹
      • 2)添加 python 文件
      • 3)修改CMakeList
      • 4)运行 Python 节点

运行环境:

ubuntu20.04 noetic
宏基暗影骑士笔记本

1.1 vscode 环境配置:

1)ctrl+shift+X 添加扩展插件:

C/C++、Python 、ROS、CMake Tools

2)ctrl+shift+B 配置中更换为以下代码

在这里插入图片描述

{
    // 有关 tasks.json 格式的文档,请参见
        // https://go.microsoft.com/fwlink/?LinkId=733558
        "version": "2.0.0",
        "tasks": [
            {
                "label": "catkin_make:debug", //代表提示的描述性信息
                "type": "shell",  //可以选择shell或者process,如果是shell代码是在shell里面运行一个命令,如果是process代表作为一个进程来运行
                "command": "catkin_make",//这个是我们需要运行的命令
                "args": [],//如果需要在命令后面加一些后缀,可以写在这里,比如-DCATKIN_WHITELIST_PACKAGES=“pac1;pac2”
                "group": {"kind":"build","isDefault":true},
                "presentation": {
                    "reveal": "always"//可选always或者silence,代表是否输出信息
                },
                "problemMatcher": "$msCompile"
            }
        ]
    }

1.2 C++代码实现

1)工作空间创建和编译

mkdir -p time_syn_ws/src
cd time_syn_ws
catkin_make

# 打开vscode
code .

2)功能包创建和添加依赖

在这里插入图片描述

在工作空间src目录下创建功能包

time_syn
roscpp rospy std_msgs

3)新建.cpp文件

在功能包src目录下新建.cpp文件
ROS实践01 C++ Python基本实现_第1张图片

#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;
}

4)修改CMakeList

# 将源文件 src/demo01_pub.cpp 编译成可执行文件 demo01_pub.cpp
add_executable(demo01.cpp src/demo01.cpp)

target_link_libraries(demo01.cpp
  ${catkin_LIBRARIES}
)

5)运行 C++ 节点

ctrl+shift+B

source ./devel/setup.bash

# rosrun 包名 + 可执行文件名
rosrun time_syn demo01.cpp 

ROS实践01 C++ Python基本实现_第2张图片

设置永久环境变量(不用每次打开一个终端都要source ./devel/setup.bash)

gedit ~/.bashrc
# source 工作空间路径/devel/setup.bash
source /home/duduzai/time_syn_ws/devel/setup.bash

2.1 python代码实现

1)在 功能包 下新建 scripts 文件夹

2)添加 python 文件

ROS实践01 C++ Python基本实现_第3张图片

3)修改CMakeList

catkin_install_python(PROGRAMS
  scripts/demo02.py
  DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)

4)运行 Python 节点

source ./devel/setup.bash
rosrun time_syn demo01.cpp 

⭐⭐⭐ 嘟嘟崽 ⭐⭐⭐
⭐⭐⭐ 祝你成功 ⭐⭐⭐

你可能感兴趣的:(ROS机器人实践,c++,开发语言)