您的位置:首页 > 其它

ROS学习手记12 -- ROS问题检测工具roswtf

2015-07-15 11:18 459 查看
roswtf - ros, what the fuck? 其实很好记~~


Getting started with roswtf

Description: Basic introduction to the
roswtf tool.

Keywords: roswtf

Tutorial Level: BEGINNER

Next Tutorial:
Navigating the wiki

目录

Checking your installation
Trying it online
Errors

Before you start this tutorial, please make sure your
roscore is NOT running
.

Checking your installation

roswtf examines your system to try and find problems. Let's try it out:
$ roscd
$ roswtf


You should see (detail of the output varies):

Stack: ros
================================================================================
Static checks summary:

No errors or warnings
================================================================================

Cannot communicate with master, ignoring graph checks


If your installation ran correctly you should output similar to the above. The output is telling you:

"Stack: ros":
roswtf uses whatever your current directory is to determine what checks it does. This is telling us that you started
roswtf in the ros stack.

"Static checks summary": this is a report on any filesystem issues. It's telling us that there were no errors.

"Cannot communicate with master, ignoring graph checks": the
roscore isn't running, so roswtf didn't do any online checks.

Trying it online

For this next step, we want a
Master to be up, so go ahead and start a roscore.

Now, try running the same sequence again:

$ roscd
$ roswtf


You should see:
Stack: ros
================================================================================
Static checks summary:

No errors or warnings
================================================================================
Beginning tests of your ROS graph. These may take awhile...
analyzing graph...
... done analyzing graph
running graph rules...
... done running graph rules

Online checks summary:

Found 1 warning(s).
Warnings are things that may be just fine, but are sometimes at fault

WARNING The following node subscriptions are unconnected:
 * /rosout:
   * /rosout


roswtf did some online examination of your graph now that your
roscore is running. Depending on how many ROS nodes you have running, this can take a long time to complete. As you can see, this time it produced a warning:

WARNING The following node subscriptions are unconnected:
 * /rosout:
   * /rosout


roswtf is warning you that the
rosout node is subscribed to a topic that no one is publishing to. In this case, this is expected because nothing else is running, so we can ignore it.

Errors

roswtf will warn you about things that look suspicious but may be normal in your system. It can also report errors for problems that it knows are wrong.

For this part, we are going to set your ROS_PACKAGE_PATH to a
bad value. We're also going to stop our roscore to simplify the output that you see.

$ roscd
$ ROS_PACKAGE_PATH=bad:$ROS_PACKAGE_PATH roswtf


This time we see:
Stack: ros
================================================================================
Static checks summary:

Found 1 error(s).

ERROR Not all paths in ROS_PACKAGE_PATH [bad] point to an existing directory: 
 * bad

================================================================================

Cannot communicate with master, ignoring graph checks


As you can see, roswtf now gives us an error about the
ROS_PACKAGE_PATH setting.

There are many other types of problems that
roswtf can find. If you find yourself stumped by a build or communication issue, try running it and seeing if it can point you in the right direction.

Now that you know how to use roswtf, take sometime to learn more about how ros.org is structured and
navigating the wiki.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: