博客
关于我
QtCreator与catkin命令两种方式开发ROS程序(图示加代码)
阅读量:688 次
发布时间:2019-03-17

本文共 2218 字,大约阅读时间需要 7 分钟。

Qt Creator与catkin命令两种方式开发ROS程序

最近在学习无为斋主的《机器人ROS开发实践》中的ROS编程部分时,遇到了编译运行的麻烦。为了便于记录和后续学习,决定详细梳理两种开发ROS程序的方法。


一、Qt Creator安装及开发ROS

1. 安装Qt Creator

在Ubuntu 18.04 LTS或20.04 LTS系统上安装带有ROS插件的Qt Creator。推荐使用18.04版本,因为20.04尚未正式支持ROS插件。

安装方法:

  • 使用Ubuntu的下载工具uGet+aria2下载线下安装文件qtcreator-ros-bionic-latest-offnline-installer.run
  • 运行安装脚本:
  • mkdir /opt/QtCreator && cd /opt/QtCreatorsudo ./qtcreator-ros-bionic-latest-offnline-installer.run

    按照安装界面指引完成安装。

    2. 使用Qt Creator开发ROS

    创建工作空间:

  • 打开Qt Creator,选择“New Project”。
  • 选择“ROS Workspace”模板,项目名为catkin_ws,工作空间路径为~/ros/catkin_ws
  • ROS版本选择Melodic,编译系统选CatkinMake。
  • 创建程序包:

  • 右键点击工作空间的src目录,选择“New File”。
  • 选择ROS->Package模板,设置包名及路径,默认依赖roscpprospystd_msgs
  • 创建节点:

  • 右键点击新建的程序包example_01下的src目录,选择“Add New”。
  • 选择“Basic Node”模板,设置文件路径为hello.cpp
  • 手动编辑hello.cpp文件,发布ROS信息。
  • 编译:

  • 在Qt Creator中点击左侧栏的锤子按钮,编译工作空间。
  • 查看编译输出窗口,确认无误。
  • 运行:

  • 右键点击项目号,选择“Run 外挂步骤”。
  • 在运行窗口中设置包名example_01和目标文件hello
  • 在终端启动roscore,运行rosrun example_01 hello命令。

  • 二、使用catkin命令开发ROS程序

    1. 创建工作空间

  • 在终端中运行命令:
  • mkdir -p ~/ros/catkin_ws/src && cd ~/ros/catkin_ws/srccatkin_init_workspace

    2. 创建程序包

  • 运行命令:
  • cd ~/ros/catkin_ws/srccatkin_create_pkg example_01 rospy roscpp std_msgs

    3. 添加程序文件

  • example_01/src目录下创建hello.cpp文件:
  • #include 
    int main(int argc, char **argv) {
    ros::init(argc, argv, "hello");
    ros::NodeHandle nh;
    ROS_INFO("Hello world!");
    return 0;
    }

    4. 编译配置

  • 修改example_01/CMakeLists.txt
  • cmake_minimum_required(VERSION 2.8.3)
    project(example_01)
    find_package(catkin REQUIRED COMPONENTS roscpp rospy std_msgs)
    include_directories(${catkin_INCLUDE_DIRS})
    add_executable(hello src/hello.cpp)
    target_link_libraries(hello ${catkin_LIBRARIES})

    5. 程序包配置

  • 修改example_01/package.xml
  • example_01
    0.1.0
    Example package
    simon
    Apache 2.0
    simon
    catkin
    roscpp rospy std_msgs
    roscpp rospy std_msgs

    6. 编译安装

  • 运行命令:
  • cd ~/ros/catkin_ws/export ROS_PARALLEL_JOBS='-j8 -l8' catkin_make
    1. 安装命令:
    2. catkin_make -D CMAKE_INSTALL_PREFIX=/home/simon/melodic install

      7. 运行

      1.启动节点管理器:

      roscore

      2.运行节点:

      cd ~/ros/catkin_ws/devel/setup.sh && rosrun example_01 hello

      总结

      两种方法各有优势,Qt Creator提供了更直观的开发体验,而catkin命令则适合脚本化和大规模项目。选择取决于个人的开发环境和需求。

    转载地址:http://xkvhz.baihongyu.com/

    你可能感兴趣的文章
    nginx 后端获取真实ip
    查看>>
    Nginx 学习总结(16)—— 动静分离、压缩、缓存、黑白名单、性能等内容温习
    查看>>
    Nginx 学习总结(17)—— 8 个免费开源 Nginx 管理系统,轻松管理 Nginx 站点配置
    查看>>
    Nginx 常用配置清单
    查看>>
    nginx 常用配置记录
    查看>>
    Nginx 我们必须知道的那些事
    查看>>
    Nginx 的 proxy_pass 使用简介
    查看>>
    Nginx 的配置文件中的 keepalive 介绍
    查看>>
    Nginx 负载均衡与权重配置解析
    查看>>
    Nginx 负载均衡详解
    查看>>
    nginx 配置 单页面应用的解决方案
    查看>>
    nginx 配置https(一)—— 自签名证书
    查看>>
    nginx 配置~~~本身就是一个静态资源的服务器
    查看>>
    Nginx 配置解析:从基础到高级应用指南
    查看>>
    nginx+Tomcat性能监控
    查看>>
    Nginx下配置codeigniter框架方法
    查看>>
    nginx报错:the “ssl“ parameter requires ngx_http_ssl_module in /usr/local/nginx/conf/nginx.conf:128
    查看>>
    nginx添加模块与https支持
    查看>>
    Nginx用户认证
    查看>>
    Nginx的Rewrite正则表达式,匹配非某单词
    查看>>