ROS(indigo)当中的破事-实机操作

电脑上运行得好好的代码,复制到新电脑就catkin_make不了。

原因:

复制到新电脑后,权限可能没有设置好。

解决方法:

检查包中文件权限,确认都更改为777,或r(可读)/w(可写)/e(可执行)。

若问题仍然存在,考虑删除编译出错的包(如果不是必要的包)。

将电脑上编好的代码复制到包内,但rosrun无法识别文件(即使文件名和原本存在的文件一致)

可能原因:

ros好像编译了以后会认文件?它只会识别原本存在的文件。可能是编译文件中某些代码指定了包中可运行的文件。

解决方法:

备份原文件(就地复制黏贴一份),将原文件的代码全删掉,复制新文件的代码到旧文件中,运行原文件。

程序成功运行,无报错,但一直卡在某一步不继续进行

原因:

由于实现不同功能的代码的topic的名称声明存在差别,导致程序中使用了错误的topic名称,使得函数一直等待错误/不存在的topic发出信息。

解决方法:

使用rosrun rqt_graph rqt_graph查看正在运行的topic和数据流,找到文件中wait_for_message()函数真正等待的topic,将topic的名称改对。

发表评论

您的电子邮箱地址不会被公开。 必填项已用 * 标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据