当前位置:   article > 正文

Ros2第一个节点程序调试(C++)_ros2 c++ 远程调试

ros2 c++ 远程调试

Ros2第一个节点程序调试(C++

  1. 1创建功能包

Ros2 pkg create –build-type ament-cmake 功能包名称

Ros2 pkg create --build-type ament_cmake  --node-name 节点名称 功能包名称

  1. 2编译功能包

Colcon bulid  编译功能包

  1. 3打开VSCODE,打开功能包目录

  1. 4编辑文件内容

//头文件

#include <chrono>

#include <iostream>

#include <functional>

#include <memory>

#include <string>

     //ROS2的头文件

#include "rclcpp/rclcpp.hpp"

#include "std_msgs/msg/string.hpp"

    //两个using

using namespace std::chrono_literals;

using namespace std;

    //定义新的类文件,进行功能定义

class MyPublisher :  public rclcpp::Node{

  private:

  size_t count_;    //私有变量

  rclcpp::TimerBase::SharedPtr timer_;

  rclcpp::Publisher<std_msgs::msg::String>::SharedPtr publisher_;

  public:

    MyPublisher():Node("my_publisher") //类的构造函数

  {

    count_=0;

    publisher_=this->create_publisher<std_msgs::msg::String>("topic",10);

    timer_=this->create_wall_timer(500ms,std::bind(&MyPublisher::timer_callback,this));

  }

  private:

    void timer_callback()

    {

      auto message = std_msgs::msg::String();

      message.data="Hello world!" + std::to_string(count_++);

      RCLCPP_INFO(this->get_logger(), "Publishing:'%s'",message.data.c_str());

      publisher_->publish(message);

    }

};

int main(int argc, char ** argv)

{

  rclcpp::init(argc,argv);

  rclcpp::spin(std::make_shared<MyPublisher>());

  rclcpp::shutdown();

  return 0;

}

  1. 5修改package.xml文件,添加依赖项

<depend>rclcpp</depend>

<depend>std_msgs</depend>

  1. 6修改CMakeLists.txt文件

要添加find_package(rclcpp REQUIRED)

      Find_package(std_msgs REQUIRED)

和XML文件中添加的相对应

要添加ament_target_dependencies(cpp_node rclcpp std_msgs)告诉编译器该节点的cpp文件在编译时要依赖的系统库。其中第一个cpp_node为所创建的节点名称;后面两项是依赖的库的名称。

  1. 7编译运行

在终端中运行colcon build命令进行编译

  1. 8运行程序     

添加运行的路径

.  install/setup.sh

或者source install/setup.sh,

运行节点 ros2 run cpp_package cpp_node  //功能包的名称和节点名称

2. 终端中常用命令

Mkdir    //创建目录

Ls       //列出目录下的文件

Clear     //清除终端运行的结果

Ctrl+C   //结束程序运行

Cd ..    //返回上级目录

3. 如果新建工作区的话,就需要修改配置文件,添加相应的目录

修改完配置文件之后,要保存相应的配置,并重启VSCODE软件,使配置生效。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/weixin_40725706/article/detail/496673
推荐阅读
相关标签
  

闽ICP备14008679号