通常而言,通过ROS进行机器人开发设计,需要查阅C++或Python等文档,也需要时常翻阅ROS wiki和GitHub。

Zeal和Dash在各自的官网都有详细的安装和使用说明,不做具体说明了。这里以Zeal为例做些简单介绍一下。

软件安装成功后,打开界面如下,windows和Linux基本完全一样:

离线ROS API文档(Zeal或Dash)_android

在Edit--Preferences中,可以配置如下一些内容:

离线ROS API文档(Zeal或Dash)_ROS_02

在Tools--Docsets中,可以进行离线文档的安装:

离线ROS API文档(Zeal或Dash)_应用程序_03

ROS离线文档点击Add feed,使用(https://raw.githubusercontent.com/famalgosner/ros.org.docset/master/ROS.xml

在Available中可以看到有非常丰富的文档资源:

离线ROS API文档(Zeal或Dash)_android_04

离线ROS API文档(Zeal或Dash)_android_05

安装完成后,就可以看到ROS离线文档了。

离线ROS API文档(Zeal或Dash)_android_06

离线ROS API文档(Zeal或Dash)_android_07

 

离线ROS API文档(Zeal或Dash)_应用程序_08

但是如果网络卡壳怎么办?famalgosner给出了解决方案:

 

遇到一个API的问题,但互联网连接或ROS服务器连接不上或不稳定,无法查找正在使用的API函数的信息。

这种情况不会再出现了!现在有针对此问题的解决方案!

使用Zeal (Linux,OSX,Windows)或Dash (OSX)。
这两个软件都是具有搜索功能的脱机文档浏览器,超方便快捷,即使在最偏远的实验室,也可以随时随地使用。

之前,还没有ROS的版本的“docset”,但现在终于有了。
目前它包含这些ROS包:

  • actionlib
  • geometry
  • geometry2
  • image_common
  • ROS
  • ros_comm
  • ros_control
  • roscpp_core
  • vision_opencv

当然,通常添加所有的 ROS软件包是没有问题的,但是它会变得相当大,很多软件包不能提供一个好的API文档。
但核心软件包包含在当前的文档集中。

docset可以在这里找到:https//github.com/famalgosner/ros.org.docset 
安装Zeal或Dash,并按照README的说明在github存储库中,然后就可以开始了。

如果您发现任何问题,或者想要将其他优秀软件包添加到上面的列表中,请通知我,例如在存储库中打开一个问题。

 

----

 

ros.org.docset

 

该存储库包含机器人操作系统(ROS)的docset。它可以与Zeal或Dash一起使用

用法

这里解释了如何将ROS文档添加到您的docset中

网址(离线文档)

https://raw.githubusercontent.com/famalgosner/ros.org.docset/master/ROS.xml

Zeal

启动Zeal并打开Docsets设置(Tools --> Docsets...)。
所有文档更新完毕后,点击添加 feed 按钮。
添加这个网址(离线文档),文档将被下载。未来的更新将自动安装。

Dash

开始Dash并打开首选项(preferences)。
导航到 下载(Downloads ),然后单击底部的加号。
添加Feed网址,您就可以开始了。

包括文件
  • actionlib
  • geometry
  • geometry2
  • image_common
  • ROS
  • ros_comm
  • ros_control
  • roscpp_core
  • vision_opencv
贡献
  • ROS的所有贡献者及其文档
  • Ved Vyas为doxytag2zealdb
建立自己的文档集

在这里的官方页面上有一些很好的文档来构建你自己的docset Dash - Docset Generation Guide

要构建一个包含ROS包的文档集,您可以按照以下步骤操作。

  1. 查看您想要添加到文件夹中的所有存储库
  2. doxygen Doxyfile在文件夹中运行。Doxyfile可以在这个仓库中找到。放置在所有ros软件包旁边的相同文件夹中
  3. 转到html目录
  4. 跑 make
  5. 现在,doxygen构建了一些东西,并且由于某些OSX依赖关系丢失而导致错误结束。但一切都很好
  6. 跑 python -m doxytag2zealdb --tag ../ROS.tag --db ROS.docset/Contents/Resources/docSet.dsidx --include-parent-scopes --include-function-signatures
  • 这将根据doxygen创建的标签创建并填充SQLite3数据库
  1. 可选:您可以通过将一些徽标复制到docset的根目录来添加一个logo.png。
  2. 将该ROS.docset文件夹复制到文档浏览器库。Zeal和Linux就是这样~/.local/share/Zeal/Zeal/docsets
  3. 你完成了:-)

 

----

 

我目前正在开发一个监视正在运行的ROS系统的Android应用程序。目前它的测试非常非常好,功能有限,只是rosnode list和info,rostopic list和info的等价物。我制作这个应用程序是因为我的学生经常在我们的先驱P3-DX机器人外面运行ROS项目,在那里运行ROS命令行工具并不是很舒服。在智能手机或平板电脑上运行的应用程序可以检查ROS图形,显示特定主题上的消息内容等将更为方便。

该工具是免费的,将很快发布到开源社区(一旦版本1.0.0已经推出)。它目前在0.9.1版本,但我可能会在未来几周内提供一些更新。期待改进的稳定性,错误处理,布局等,我会很感激,如果你试试看,并确认它实际上(我只有一些Android设备/模拟器可用),理想情况下,我想这个测试尽可能多的人。

你可以在这里找到应用程序:https//play.google.com/store/apps/details?id = nl.joostvanstuijvenberg.introspect 19

感谢您尝试我的应用程序!Android 4.4是我开发的最低版本的Android版本(API 19),因为我拥有一个拥有4.4版本的“复古”三星平板电脑,并且有97%的Android版本能够在该平台上运行应用程序。

我决定既不使用rosjava也不使用rosandroid,而是开发自己的类与ROS主人进行沟通。这真的不是那么复杂,我想我不会使用这些库提供的大部分功能。另外,rosjava和rosandroid似乎是用来开发Java中的ROS节点,而我的应用程序需要查询ROS主控的功能。不知道这是否由这些图书馆提供; 将尽管检查它。

一旦我添加了一些更多的功能,做了很多重构并写了一些文档,我就会打开它。我正在考虑为它打开一个专用的GitHub.io页面。

同时,如果您愿意,可以在Google Play商店中留下评分。由于这是我第一次将应用程序部署到GPS,我很好奇这些评分是如何在Google Play控制台中显示的。而且由于我必须说服这里的一些人给我一些时间来致力于这个项目,有正面的反馈可能有助于说服他们离线ROS API文档(Zeal或Dash)_应用程序_09

 

----

 

ROS 10岁了! 作者:Tully Foote时间:201711月7日上午9:41

更多文章请关注《万象专栏》