文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)3.1.4 设置ROS节点core文件转储

3.1.4 设置ROS节点core文件转储 虽然ROS节点实际上就是一般的可执行文件,但在设置gdb的core文件转储(core dump)时仍有一些棘手的问题需要注意。首先要取消core文件大小限制,当前值可以通过ulimit -a查看。请注意这适用于任何可执行文件,不只是ROS节点:   然后,为了能够创建core文件转储,必须将core文件名设置为默认使用的进程pid,否则无法创建...

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)3.1.2 ROS节点启动时调用gdb调试器

3.1.2 ROS节点启动时调用gdb调试器 我们需要一个启动文件(launch)去启动节点,如下:   想要在节点启动时调用gdb调试器,需要添加launch-prefix="xterm -e gdb --args",如下:   类似地,也可以添加output="screen",使节点在终端显示。这个启动前缀会创建一个调用gdb节点的新xterm终端。依据需要设置断点,按C键...

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)3.1.3 ROS节点启动时调用valgrind分析节点

3.1.3 ROS节点启动时调用valgrind分析节点 此外,我们可以使用相同的属性把节点附加到诊断工具上。例如,可以启动valgrind来检测我们程序的内存泄漏情况,并执行性能分析。你可以访问http://valgrind.org获取详细信息。与调用gdb的方式相反,现在我们无需重新启动xterm,只需如下设置:  

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)3.1.1 使用gdb调试器调试ROS节点

3.1.1 使用gdb调试器调试ROS节点 为了使用gdb调试器调试一个C/C++节点,唯一要知道的是可执行节点的路径。在ROS hydro和catkin功能包中,节点的可执行文件在工作空间的devel/lib/<package>文件下。例如,为了在gdb中运行chapter3_tutorials功能包中的example1节点,我们需要按如下步骤进行,首先到工作空间文件夹下(~/de....

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)3.1 调试ROS节点

3.1 调试ROS节点 ROS节点可以像正常程序一样调试。调试程序在系统中运行时有一个进程号(PID)。你可以用任何标准工具(如gdb)进行调试。同样可以用valgrind检查内存泄漏,或者用callgrind分析算法性能。请记住使用下面的命令运行一个节点:   很遗憾,你不能通过下面的方式启动命令:   在接下来的部分中,我们将解释如何调用这些工具调试ROS节点,以及如何在代...

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)2.5 本章小结

2.5 本章小结 本章介绍了ROS系统的架构及其工作方式的基本信息。学习了一些基本概念、工具及如何同节点、主题和服务进行交互的示例。一开始,所有这些概念可能看起来有些复杂且不太实用,但在后面的章节中,你会逐渐理解这样的应用。 各位读者最好在继续后续章节的学习之前,对这些概念及示例进行练习,因为在后面的章节里,我们将假定你已经熟悉所有的概念及其用途。 请注意如果想查询某个名词或功能的解释,且无法.....

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)第3章 可视化和调试工具

第3章 可视化和调试工具 ROS附带了大量功能强大的工具,帮助用户和开发人员可视化和调试代码,以便检测并解决软硬件问题。其中包括消息日志系统(类似log4cxx)、诊断消息、可视化以及检测工具。这些工具展示了哪些节点正在运行和它们是如何连接的。   本章我们还会展示如何用GDB调试器调试ROS节点,介绍用于日志记录的API,以及如何设置日志记录级别。接着,我们将解释如何用ROS工具集检测...

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)2.4.14 动态参数

2.4.14 动态参数 ROS的另一个功能是动态重配置应用。通常情况下,当你正在编写一个新节点,你只能以数据初始化节点内的变量。如果你想从外部节点动态地改变这些值,你可以使用参数服务器、服务或主题。如果你使用一个PID节点来控制一个电动机,则应该使用动态重配置 应用。 在本节中,你将学习如何配置一个包含此功能的基本节点。添加必要的内容到CMakeLists.txt和package.xml文件。 ....

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)2.4.13 启动文件

2.4.13 启动文件 启动(launch)文件是ROS中一个非常有用的功能,可以启动多个节点。在之前的小节中,我们已经学习了创建了节点,并且在不同的命令行窗口执行,想象一下,如果在每一个命令行窗口启动20个节点会是多么恐怖的一件事情! 通过启动文件我们可以在命令行窗口方便地实现以上任务,只需要运行后缀名为.launch的配置文件来启动多个节点。 为了练习这个例子,我们在功能包中创建一个新文件夹....

文章 2017-05-02 来自:开发者社区

ROS机器人程序设计(原书第2版)2.4.12 使用新建的srv和msg文件

2.4.12 使用新建的srv和msg文件 首先,我们将会学习如何创建一个服务并且在ROS中使用。该服务将会对三个整数求和。我们需要两个节点,一个服务器一个客户端。 在chapter2_tutorials功能包中,新建两个节点并以example2_a.cpp和example2_b.cpp为名称。别忘了要在src文件夹下创建这两个文件。 在第一个文件example2_a.cpp中,添加以下代码: ....

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

云服务器ECS

做技术先进、性能优异、稳如磐石的弹性计算!

+关注
相关镜像