eclipse 搭建 ROS 工作空间

目的

在 Eclipse 上搭建 Ros 开发环境

环境

ubuntu18.04 
Eclipse IDE for C/C++ Developers (includes Incubating components) Version: 2020-09 (4.17.0) 
ROS2 melodic

步骤:

创建工作空间

mkdir -p ~/catkin_ws/src
cd ~/catkin_ws/src
catkin_init_workspace
cd ~/catkin_ws
catkin_make

在这里插入图片描述

创建工作包

cd ~/catkin_ws/src
catkin_create_pkg base_controller std_msgs rospy roscpp

在这里插入图片描述

利用catkin_make命令,建立一个eclipse的项目

cd ~/catkin_ws
catkin_make --force-cmake -G"Eclipse CDT4 - Unix Makefiles"
awk -f $(rospack find mk)/eclipse.awk build/.project > build/.project_with_env && mv build/.project_with_env build/.project

导入项目

(参考下图)
双击启动 Eclipse -> Workspace: 选择对应的工作空间 -> Launch
选择File --> Import --> General --> 双击 Existing Projects into Workspace -> Select root directory: 选择根目录 -> Finish

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

创建代码文件

右击上图中的 src -> New -> Source File -> Source file: 填入 hello.cpp -> Finish

添加代码

在生成的文件 hello.cpp 中添加如下代码
#include "ros/ros.h"

int main(int argc, char **argv) {

    ros::init(argc, argv, "hello");    

    ros::NodeHandle nh;    

    ros::Rate loop_rate(10);    

    int count = 0;    

    while (ros::ok()) {

        ROS_INFO_STREAM("hello world" << count);        

        ros::spinOnce(); // Allow ROS to process incoming messages        

        loop_rate.sleep(); // Sleep for the rest of the cycle        

        count++;

    }

 return 0; 
}

在 CMakeLists.txt 中的 ## Bulid ## 部分添加如下代码
## Declare a cpp executable

add_executable(hello src/hello.cpp)

## Specify libraries to link a library or executable target against

target_link_libraries(hello ${catkin_LIBRARIES})

加入环境变量

终端中输入:source ~/catkin_ws/devel/setup.bash

在这里插入图片描述

编译节点

快捷键:ctrl+b    

在这里插入图片描述

在Eclipse中运行节点

(参考下图)
终端中键入:
		echo $LD_LIBRARY_PATH,得到 LD_LIBRARY_PATH 的路径(待会儿要用,一般为 /opt/ros/melodic/lib)
		roscore
Run -> Run Configurations -> 双击:C/C++ Application -> 此时进入了 bulid Configuration -> C/C++Application: 键入 /home/fei/catkin_ws/devel/lib/base_controller/hello
点击进入 Environment 页面 -> Add -> 输入如图所示 Name、Value(为上上行所得的路径)->(古月居书中让输入环境变量:ROS_ROOT、ROS_MASTER_URI,但是不输入发现也没影响) -> Apply -> Run
此时,程序成功运行

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

Console 窗口中显示乱码( ROS输出编码和Eclipse控制窗口编码不同)

安装ANSI escape sequences插件:
help->Install New Software->点击 Add -> 输入:ANSI escape sequences;http://www.mihai-nita.net/eclipse ->Finish

在这里插入图片描述

调试程序

参考

https://jingyan.baidu.com/article/08b6a59199a3a714a80922ae.html
《ROS机器人开发实践(机器人设计与制作)》- 古月居

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值