基于vscode的ros开发

这篇具有很好参考价值的文章主要介绍了基于vscode的ros开发。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

Part1前言

ROS(机器人操作系统)是一个开源的机器人软件平台,旨在提供一套通用的工具和库,帮助开发人员创建机器人应用程序。ROS提供了用于构建机器人系统的库、工具、驱动程序、通信协议和软件包管理系统。

以下是ROS的一些主要特点和组件:

分布式计算:ROS支持分布式计算,允许多个节点(程序)在不同的计算机上运行,并通过ROS通信机制进行交互。这种分布式架构使得ROS非常适合于构建复杂的机器人系统。

软件包管理:ROS使用软件包管理系统来组织和分享代码。开发人员可以创建、安装和共享ROS软件包,以便在不同的项目中重用代码和功能。ROS社区提供了大量的开源软件包,涵盖了各种机器人应用领域。

消息传递:ROS使用基于发布-订阅模式的消息传递机制,允许不同的节点之间通过发布和订阅消息进行通信。节点可以发布消息到特定的主题(Topic),并可以订阅感兴趣的主题来接收消息。这种松耦合的通信方式使得节点之间的通信更灵活和可扩展。

服务和动作:除了消息传递,ROS还提供了服务(Service)和动作(Action)机制,允许节点提供和调用服务以及执行复杂的动作序列。服务和动作允许节点之间进行请求-响应和执行-反馈的交互。

工具支持:ROS提供了一系列的工具来辅助开发和调试机器人应用程序。这些工具包括命令行工具(如roscd、rosls、rosrun等)、可视化工具(如rviz、rqt等)以及调试工具(如rosbag、rqt_console等)。

ROS具有广泛的应用领域,包括工业机器人、服务机器人、自主驾驶车辆、无人机等。它被广泛使用于机器人研究、教育和工业应用中。ROS的开源性质和活跃的社区使得开发人员能够共享经验、解决问题和推动ROS的不断发展和改进。

本文主要研究基于ros的vscode开发。

Part2插件安装

安装ROS、catkin_tool两个插件

基于vscode的ros开发,vscode,ide,编辑器基于vscode的ros开发,vscode,ide,编辑器

Part3创建目录

mkdir -p ros_test/src
cd ros_test/
catkin_make

之后整个ros目录就会创建完成

基于vscode的ros开发,vscode,ide,编辑器

Part4创建功能包

1步骤一:ctrl+shift+p

输入roshello

基于vscode的ros开发,vscode,ide,编辑器

2步骤二:添加依赖包

这里在步骤一之后,的页面输入下面的依赖包

roscpp rospy

3步骤三:添加roshello

#include <iostream>
#include <string>
#include <sstream>
using namespace std;

#include "ros/ros.h"
#include "std_msgs/String.h"

int main(int argc, char** argv)
{
 ros::init(argc, argv, "talker");
 ros::NodeHandle n;
 ros::Publisher chatter_pub = n.advertise<std_msgs::String>("chatter", 1000);
 ros::Rate loop_rate(10);
 int count = 0;
 while(ros::ok())
 {
  std_msgs::String msg;
  std::stringstream ss;
  ss << "hello world " << count;
  msg.data = ss.str();
  ROS_INFO("%s", msg.data.c_str());
  chatter_pub.publish(msg);
  ros::spinOnce();
  loop_rate.sleep();
  count++;
 }
 return 0;
}

4步骤五:配置CMakeLists

需要修改地方,其他保持默认

include_directories(
  include
  ${catkin_INCLUDE_DIRS}
)
add_executable(${PROJECT_NAME}_node src/roshello_node.cpp)
target_link_libraries(${PROJECT_NAME}_node
  ${catkin_LIBRARIES}
)

5步骤六:编译

按住Ctrl+Shift+B编译该程序,就可以看到与catkin_make一样的编译过程

6步骤七:调试节点

添加launch.json文件 需要将program里面需要调试的包进行修改 这里只需要将program修改为自己的节点名称

{
    "version": "0.2.0",
    "configurations": [
        {
            "name": "ROS: Launch",
            "type": "cppdbg",
            "request": "launch",
            "program": "${workspaceFolder}/devel/lib/roshello/roshello_node",
            "args": [],
            "stopAtEntry": false,
            "cwd": "${workspaceFolder}",
            "environment": [],
            "externalConsole": false,
            "MIMode": "gdb",
            "miDebuggerPath": "gdb",
            "preLaunchTask": "build",
            "postDebugTask": "clean"
        }
    ]
}

配置调试任务tasks.json 这里需要在args中将roshello修改为之前创建的包名称,其他保持默认

{
    "version": "2.0.0",
    "tasks": [
        {
            "label": "build",
            "type": "shell",
            "command": "catkin_make",
            "args": [
                "--pkg",
                "roshello",
                "--cmake-args",
                "-DCMAKE_BUILD_TYPE=Debug"
            ],
            "group": {
                "kind": "build",
                "isDefault": true
            },
            "problemMatcher": "$catkin-gcc",
            "presentation": {
                "reveal": "silent",
                "panel": "shared"
            }
        },
        {
            "label": "clean",
            "type": "shell",
            "command": "catkin clean -y",
            "presentation": {
                "reveal": "silent",
                "panel": "shared"
            }
        }
    ]
}

另外,还需要增加一下环境变量,命令如下,这样才可以编译通过 追加环境变量

echo "source /opt/ros/noetic/setup.bash" >> ~/.bashrc

7vscode进行调试

运行rosmaster

roscore

订阅节点

rostopic echo /chatter

之后F5调试即可

Part5总结

本文主要记录了使用vscode进行ros开发调试的步骤。文章来源地址https://www.toymoban.com/news/detail-551502.html

到了这里,关于基于vscode的ros开发的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • IDE /Qt Creator 文本编辑器之文件编码设置

    在 Qt Creator 工具 - 选项 - 文本编辑器 - 行为选项卡中,存在一个叫作 “文件编码” 的配置项。其默认配置如下, 我是栽了不少坑之后,才理解到它的用途和作用方式的。这是一个有用的配置项,尤其是在使用 Qt Creator + MSVC 组成的集成开发环境时。我是在整理 《IDE/warning:

    2024年02月13日
    浏览(55)
  • 轻量级 IDE & 文本编辑器 Geany 发布 2.0

    导读 Geany 是功能强大、稳定、轻量的开发者专用文本编辑器,支持 Linux、Windows 和 macOS,内置支持 50 多种编程语言。 2005 年Geany 发布首个版本 0.1。上周四刚好是 Geany 诞生 18 周年纪念日,官方发布了 2.0 正式版以表庆祝。 下载地址:https://www.geany.org/download/releases/ Geany 2.0 主

    2024年02月07日
    浏览(40)
  • 如何使用Mac终端给树莓派pico构建C/C++程序进行开发,以及遇到各种问题该怎么处理,不使用任何IDE或编辑器(例如VS Code)

    写本文的原因是官方的教程已经过时了,如果你现在按照官方教程来在 Mac 上进行配置,那么会遇到一堆问题,比如我几乎把能踩的“雷”都踩了。所以这里记录了完整过程,以及各种错误的原因和处理方法,不然以后换 Mac 了或者在其他平台遇到同样的问题,忘记怎么处理的

    2024年02月13日
    浏览(61)
  • 基于QT4的GPX文件编辑器开发

    GPX文件是记录地理点的文件,本质是一种xml文件。GPX文件目前没有很好的编辑器,因此作者决定开发一款无需安装的绿色编辑器。 在QT4开发中,XML可以用DOM来实现,但其逻辑并不是很清晰。使用模型视图反而会更加可读。因此在开发中,使用model-view模式来实现数据读写。

    2024年02月12日
    浏览(47)
  • IDE + ChatGPT,这款编辑器真的做到可以自动写代码了

    介绍 Cursor 是集成了 GPT-4 的 IDE 工具,目前免费并且无需 API Key,支持 Win、Mac、Linux 平台,可以按要求生成代码,或者让 AI 帮助优化代码,分析代码。Cursor目前已经集成了openai的GPT-4,它或将彻底改变我们写代码的方式。 以前程序员被调侃是“CV”工程师,以后我们恐怕要成

    2023年04月25日
    浏览(50)
  • 如何使用基于GPT-4的Cursor编辑器提升开发效率

    程序员最恨两件事情:一是别人代码不写文档,二是要让自己写文档。随着 GPT-4 的到来这些都不是问题了,顺带可能连程序员都解决了。。。 之前一直觉得 AI 生成的代码也就写个面试题的水平,小打小闹,现在时代可变了。Cursor 编辑器是 GPT-4 驱动,对接了 GitHub 的 Copilot。

    2023年04月08日
    浏览(43)
  • 【Linux应用部署篇】在CSDN云IDE平台部署Etherpad文档编辑器

    官网网址:CSDN开发云IDE平台 CSDN云IDE平台是一个在线的集成开发环境,可用于编写、测试和部署代码。CSDN云IDE平台支持多种语言和框架,包括Java、Python、Node.js等,提供了丰富的编辑器、调试器和版本管理工具,帮助开发者快速创建和部署应用程序。CSDN云IDE平台在云端运行,

    2024年02月11日
    浏览(48)
  • 基于Android Studio编辑器上开发的一款看点新闻App

    完整资料进入【数字空间】查看——baidu搜索\\\"writebug\\\" 1 系统需求分析 1.1 引言 1.1.1 开发目的 看点新闻App的开发是为了实时查看最新消息以了解社会动态,增长知识,增广见闻,顺便娱乐一下内心世界来放松自己。 1.1.2 开发背景 随着新媒体的崛起,纸媒遭受到重大打击,纸媒

    2024年02月16日
    浏览(37)
  • Vscode编辑器C/C++环境配置

            VSCode(全称:Visual Studio Code)是一款由微软开发且跨平台的免费源代码编辑器。该软件支持语法高亮、代码自动补全(又称 IntelliSense)、代码重构、查看定义功能,并且内置了命令行工具和 Git 版本控制系统。用户可以更改主题和键盘快捷方式实现个性化设置,也

    2024年02月08日
    浏览(59)
  • 使用VSCode作为Unity的代码编辑器

                    Unity在选择IDE 的时候其实也有很多选择,在 Windows 上我会选择 Visual Studio 或者是 VS Code ,在编程体验上来讲我更喜欢 Visual Studio 。但是在 Mac OS 可能 Visual Studio Mac 版本并非是一个靠谱的选择,它和 Rider 一样都过于笨重,编程体验比较卡顿,于是我还是

    2024年02月08日
    浏览(61)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包