机器人云实践平台学习笔记——篇目二

111
0
2020年9月15日 09时46分

也许你在学习各类计算机编程语言的时候,第一个程序就是Hello World! 延续传统,在本次机器人云实践平台的测试中,官方也为我们提供了示教例程,本文将讲述基于官方示教例程实验云平台的过程。

前文回顾


在上一篇的文章中,笔者介绍对机器人云实践平台进行了简要的介绍,并对相关功能界面进行了分析与讲解,本文将基于前篇文章的内容进行展开,通过官方提供的示教例程Hello world进一步认识机器人云实践平台的工作原理与操作机制。

示教例程

Hello world 模拟作业介绍


通过侧边栏选择示例应用程序:

在这里插入图片描述
可以看到官方提供了两个示例应用程序,分别为Hello world和机器人监控,我们选择Hello world示例:

在这里插入图片描述
点击下方的启动模拟作业:
可以看到右上角提示模拟作业状态为正在准备。

在这里插入图片描述
当模拟作业启动完成后状态显示正在运行,我们可以看到如下图所示的一些选项:

在这里插入图片描述
从图中我们可以看到页面上有GZClient、Terminal属于模拟应用程序工具,Rviz、Rqt、Terminal属于机器人应用程序工具。如果你对ROS具有一定的认识,你一定知道他们分别代表着什么

  • GZClient——启动Gazebo仿真
  • Terminal——启动终端
  • Rviz——启动Rviz可视化
  • Rqt——启动基于Qt编写的ROS工具箱

此外解释一下模拟应用程序工具以及机器人应用程序工具

模拟应用程序工具:AWS RoboMaker GUI 工具提供了一种使用命令行或图形应用程序探索模拟的简便方法。这些工具在云中运行,并且可从浏览器访问。每个模拟应用程序工具都包含模拟应用程序捆绑包,可供您设置 ROS 应用程序工作区。

机器人应用程序工具:AWS RoboMaker GUI 工具提供了一种使用命令行或图形应用程序探索模拟的简便方法。这些工具在云中运行,并且可从浏览器访问。每个 Robot 应用程序工具都包含 Robot 应用程序捆绑包,可供您设置 ROS 应用程序工作区。


模拟作业

Gazebo模拟仿真

点击GZClient模块下的connect按键启动Gazebo仿真,将弹出一个窗口显示Gazebo:

在这里插入图片描述
从画面中我们可以看到有一个小车在做原地旋转运动。点击侧边栏选择Insert我们可以为Gazebo仿真环境添加物体,此处添加一个Beer对象进入仿真世界中。

在这里插入图片描述
Gazebo作为带有物理引擎的仿真软件,能够一定程度的模拟机器人及相关物体在真实世界下的状态以及数据信息,此时启动Rqt插件,通过Rqt插件内置的功能来获取机器人相机传感器的视觉信息。

在这里插入图片描述
选择Rqt上方工具栏中的plugins->Visualization->Image view:

在这里插入图片描述
在image view的左上角选择Gazebo仿真环境,下方区域将开始显示相机拍摄的画面,随着机器人原地旋转,我们可以看到添加在世界环境中的物体出现在画面中。

在这里插入图片描述

Rviz可视化

点击Rviz下方的按键建立与云端运行的Rviz的链接

在这里插入图片描述
页面相对较小,可能由于仍处于内测阶段,后续应该会提供更好的交互环境。初次启动的Rviz并未显示机器人模型

在这里插入图片描述
点击下方Add按键

在这里插入图片描述
在弹窗页面中选择RobotModel并进行添加

在这里插入图片描述
Rviz可视化环境中出现白影,模型提示错误,这是因为没有选择合适的世界坐标导致的,在Fixed Frame中选择合适的坐标系,模型显示正常

在这里插入图片描述
当然你也可以通过添加Camera在Rviz中显示视觉信息,需要注意的是要选择正确的话题才能获得想要的结果。

终端

点击Terminal的启动按键分别启动模拟应用程序和机器人应用程序的终端如下

在这里插入图片描述
通过输入指令

rostopic list

我们可以从终端得到相同的的数据回显,因此可以大胆假设两者其实并没有太大的区分,但是两者在用户名上存在异同,鉴于笔者对于Linux的知识并未有很深的造诣,因此不能予以解释。

示教例程测试总结


基于官方提供的Hello world示教例程我们可以感受到,机器人云实践平台具有我们在电脑上进行ROS开发的相关工具,Gazebo、Rviz、Rqt、终端等。如果仔细观察还可以发现在运行Gazebo或者Rviz时,可以看到右下角的帧率显示,数值是不错的,这意味着相关程序在云服务器上运行是流畅的。

但笔者在进行云平台使用的过程中具有以下几点用户体验不好的地方:

  • 操作过程中Gazebo、Rviz等画面大小无法随网页进行调整
  • 操作过于卡顿
  • 画面仿佛无法对焦,时而清晰时而模糊

当然相信这些问题都可以随着进一步的优化而得到解决,从长远来看,基于机器人云实践平台进行机器人开发是具有一定优势,举例如下:

  • 减免环境配置问题,专注开发
  • 提供极大的容错率
  • 云端服务器计算能力强,运行快
  • 随时随地进行ROS开发

笔者也是第一次接触机器人云实践平台,上述内容为笔者自己的学习心得以及官方提供的一些解释,如有错误,欢迎指正。后续将进行更加深入对于机器人云实践平台的介绍与使用分享,敬请关注。

发表评论

后才能评论