Clion ROS开发环境设置技巧

 更新时间:2020年08月18日 11:38:46   作者:FlyingGod  
这篇文章主要介绍了Clion ROS开发环境设置技巧,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下

在源环境中启动CLion

需要告知CLion ROS特定的环境变量。通过运行来源工作空间时,将在当前shell中检索这些变量

source ./devel/setup.bash

为CLion提供ROS环境变量的最简单方法是从同一个shell启动IDE。在获取工作空间后,您可以键入同一终端:

在CLion中打开一个ROS项目

在源环境中启动CLion后,执行以下操作之一以打开ROS项目:

  • 单击文件|打开并选择ROS工作区的src目录中的CMakeLists.txt,然后选择Open as Project。
  • 单击文件|来自Sources的新CMake项目,并选择工作区的src目录以从中导入项目。

该CMake的工具窗口会显示该项目加载的状态:

设置catkin工作空间的构建路径

默认情况下,CLion将构建输出放在自动创建的cmake-build-debug或cmake-build-release目录中。对于ROS开发,这意味着您将在CLion和运行的控制台中拥有两个不同的版本catkin_make。

要在IDE和控制台上进行单一构建,需要将CLion构建路径设置为catkin工作区目录。为此,请转到文件|设置Ctrl+Alt+S|构建,执行,部署|CMake并更改两个字段:

  • 在生成路径中,设置workspace_folder/build。
  • 在CMake选项中,添加-DCATKIN_DEVEL_PREFIX:PATH=workspace_folder/devel。

使用启动文件

您可以在CLion中将ROS节点作为常规应用程序运行和调试。

启动文件无法直接执行,但您可以使用XML语法突出显示和完成编辑它们,并将调试器附加到正在运行的节点。

将调试器附加到正在运行的节点

1、从命令行运行.launch文件。例如

您可以通过该rosnode list命令检查当前运行的节点列表。在我们的示例中,列表将包含talker和listener:

2、呼叫运行|从主菜单附加到处理或按Ctrl+Alt+F5。

3、通过其PID或名称连接到所需节点:

示例:创建基本ROS节点,在CLion中编辑并运行它

在这个例子中,我们将创建一个简单的ROS包,编辑源代码,并从CLion运行节点。我们将在Ubuntu 18.04上使用ROS Melodic,并在ROS wiki上使用编写简单发布者和订阅者(C ++)教程的基本发布者节点。

创建一个基本的ROS包

创建和构建ROS工作区:

mkdir -p ros_workspace/srccd ros_workspace
catkin_make

在工作区中,创建一个名为my_package的包:

cd src
catkin_create_pkg my_package roscpp rospy std_msgs

启动CLION

来源工作区:

cd ../../../source ./devel/setup.bash

并在同一终端启动CLion

sh /opt/clion-2018.2/bin/clion.sh

在CLion中打开包作为项目

在CLion中,转到File |打开并选择位于包文件夹内的CMakeLists.txt文件,然后选择将其作为项目打开:

添加源文件并编辑CMakeLists.txt

向项目添加新的源文件:右键单击Project树中的src,选择New |C / C ++源文件并将其命名为my_package.cpp。

将整个talker.cpp文件从Publisher和Subscriber教程复制到my_package.cpp中。

新创建的源添加到的CMakeLists.txt和链接其对应程序库:

add_executable(my_package src/my_package.cpp)
target_link_libraries(my_package ${catkin_LIBRARIES})

之后,重新加载CMake项目,并注意运行/调试配置列表中的my_package:

运行ROS节点

1、在从CLion运行节点之前,在新终端中打开ROS主站:

roscore

2、在CLion,运行的my_package配置。运行工具窗口将显示节点输出:

3、在单独的终端中,检查当前活动的ROS主题。如果我们打印消息chatter,输出将类似于我们在CLion中看到的内容:

现在,如果我们在CLion中停止应用程序,该rostopic echo /chatter命令将没有输出。

总结

到此这篇关于Clion ROS开发环境设置技巧的文章就介绍到这了,更多相关Clion ROS开发环境设置内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Fiddler Everywhere 4.0.1的破解及禁止更新的方法(最新推荐)

    Fiddler Everywhere 4.0.1的破解及禁止更新的方法(最新推荐)

    Fiddler Everywhere是个好东西,无论抓包还是调试接口都很好用,只是现在收费了,为了白嫖就决定折腾一下,如果一开始通过设置文件夹权限禁止更新,也会导致进不了使用界面而无法使用,下面说一下具体的解决过程
    2023-11-11
  • 如何使用 Merklized 抽象语法树压缩智能合约

    如何使用 Merklized 抽象语法树压缩智能合约

    Merklized 抽象语法树 MAST(又名 Merklized 替代脚本树)是一种使用 Merkle 树压缩比特币智能合约的技术,这篇文章主要介绍了使用 Merklized 抽象语法树压缩智能合约,需要的朋友可以参考下
    2023-12-12
  • 12种最常用的网页编程语言简介(值得收藏)

    12种最常用的网页编程语言简介(值得收藏)

    随着网站的越来越普及,与Web相关的开发技术持续热门,从开始简单的html到复杂的web开发语言asp、asp.net、php、jsp等等,在此,我就借助SEO马龙博客的平台跟大家简单的介绍一下常见的12种网页编程语言
    2017-01-01
  • Git Submodule使用完整教程(小结)

    Git Submodule使用完整教程(小结)

    这篇文章主要介绍了Git Submodule使用完整教程(小结),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-08-08
  • 大前端时代搞定PC/Mac端开发,我有绝招(收藏版)

    大前端时代搞定PC/Mac端开发,我有绝招(收藏版)

    这篇文章主要介绍了大前端时代搞定PC/Mac端开发,我有绝招,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-07-07
  • IDEA+Git+Gitlab使用详细教程

    IDEA+Git+Gitlab使用详细教程

    这篇文章主要介绍了IDEA+Git+Gitlab使用详细教程,本文通过图文实例相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-11-11
  • 音视频基本概念和FFmpeg的简单入门教程详解

    音视频基本概念和FFmpeg的简单入门教程详解

    FFmpeg是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。可以轻易地实现多种视频格式之间的相互转换,这篇文章主要介绍了音视频基本概念和FFmpeg的简单入门,需要的朋友可以参考下
    2022-04-04
  • Apifox Echo学习curl httpie 命令使用详解

    Apifox Echo学习curl httpie 命令使用详解

    这篇文章主要为大家介绍了通过Apifox Echo学习curl httpie 命令使用,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-09-09
  • 如何使用clion中配置ROS工程

    如何使用clion中配置ROS工程

    这篇文章主要介绍了如何使用clion中配置ROS工程,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • 快速解决eclipse中注释的代码依然会执行的问题

    快速解决eclipse中注释的代码依然会执行的问题

    下面小编就为大家带来一篇快速解决eclipse中注释的代码依然会执行的问题。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2016-12-12

最新评论