机器人操作系统ROS学习实战篇之——让小乌龟画矩形


分为两步,一个是建立ROS的可以编译的工作空间,第二个是小乌龟画矩形实战

一、建立ROS的工作空间

1 确认ROS环境变量

之前,在ROS的安装过程中,我们执行了如下命令:(此命令就是向当前用户添加ROS的环境变量)

确认环境变量添加成功:printenv | grep ROS,结果如下,即说明环境变量设置成功:

2 创建ROS工作空间

[1]在Home下打开终端,分别输入以下命令,创建并初始化一个catkin工作空间。

catkin_init_workspace命令把当前目录初始化为一个ROS工作空间。

可通过来ls -l查看一下初始化之后的工作空间的内容。发现:catkin_ws目录下仅仅有一个刚才创建的src目录,src目录下只有一个指向一个cmake文件的符号连接文件。

[2]编译该工作空间。

进入到catkin_ws2目录下,使用catkin_make对工作空间进行编译。

终端结果:

【catkin_make命令是catkin工作空间非常有力的一个工具。】

此时再查看catkin_ws目录,发现多了两个文件夹build,devel:

可以看到在devel目录下,有很多setup.*sh文件,读取这些文件中的任何一个都会将当前工作空间的环境变量置于所有环境变量的最上层。如果我们打开这些文件会发现,最终都是要读取setup.sh文件,这个文件中

[3]定义了catkin_ws空间所需要的环境变量。

[4]确认已经加载catkin工作空间环境变量:

结果:/home/happyjess/catkin_ws2/src:/opt/ros/kinetic/share
这时ROS的环境变量已经创建好了。

3 总结

初始化ROS的catkin工作空间:catkin_init_workspace
编译ROS的catkin工作空间:catkin_make
读取当前catkin工作空间的环境变量:source devel/setup.sh
验证ROS工作空间的环境变量加载成功:echo $ROS_PACKAGE_PATH

二、小乌龟画矩形实战

1进入工作空间

2节点代码

在打开的新文件中代码如下:

在terminal中继续输入下面的命令:

用gedit打开CMakeLists.txt文件,然后找到##Declare a C++ executable,在这一行的前面或者后面添加如下内容:

添加完以上内容后我们保存并退出CMakeLists.txt文件。然后在terminal中继续输入如下命令进行编译:

一切顺利的话就会编译成功,接下来就可以让小乌龟来画矩形了。

3:启动节点

打开第一个terminal终端,启动ros

打开第二个terminal终端,启动rosnode

打开第三个terminal终端,启动my_turtle_package节点

此时我们可以看到小乌龟已经在画矩形了,如果按下Ctr+C退出节点,小乌龟也停止了。

声明:疯人峰语|版权所有,违者必究|如未注明,均为原创|本网站采用BY-NC-SA协议进行授权

转载:转载请注明原文链接 - 机器人操作系统ROS学习实战篇之——让小乌龟画矩形


做你想做的,不必管别人