欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

古月ROS课程(二)

程序员文章站 2022-03-12 16:58:32
...

创建工作空间

工作空间内容

1.src: 代码空间,放置源码。
2.bulid 编译空间。
3.devel 开发空间,编译后的文件,脚本等。
4.install 安装空间,作用与devel相似。

创建工作空间

古月ROS课程(二)
注意: 设置的环境变量只会在当前终端生效,不会在新开的终端生效,因此需要将这条命令放置到bash的根目录中。具体操作如下:

vi ~/.bashrc

在文件的最后添加上

source ~/catkin_ws/devel/setup.bash

保存退出后在终端输入

source ~/.bashrc

创建功能包

古月ROS课程(二)

功能包环境变量的覆盖

原则上,同一个工作空间不能存在两个同名的功能包,但是可以创建不同名字的工作空间,在不同工作空间中创建同名字的功能包,这时候存在功能包的环境变量的覆盖问题。
使用

env | grep ros

这条指令可以查看现在的环境变量,主要关注功能包的环境变量地址,位置越靠前优先级越高。
古月ROS课程(二)

ROS通讯编程

1.话题编程

古月ROS课程(二)
1.Talker:
古月ROS课程(二)
具体理解详见视频30分左右。
2.Listener:
古月ROS课程(二)
具体理解详见视频36分左右。

3.编译
古月ROS课程(二)
在CmakeLists.txt中添加编译和链接库,然后进行编译(python由于直接是可执行的不需要编译。)
4.运行可执行文件
先运行roscode然后分别rosrun 两个 文件。

注:如果要自定义msg文件。
古月ROS课程(二)

2.服务编程

古月ROS课程(二)
定义一个srv文件:
古月ROS课程(二)
实现服务端:
古月ROS课程(二)
实现客户端:
古月ROS课程(二)
编译:
古月ROS课程(二)
执行:
古月ROS课程(二)

3.动作编程

动作编程定义

古月ROS课程(二)

定义动作编程

古月ROS课程(二)

定义服务端:

古月ROS课程(二)

定义客户端:

古月ROS课程(二)

编译代码:

古月ROS课程(二)

运行动作编程:

古月ROS课程(二)

相关标签: ROS