ROS通用目录定义

问题描述 投票:0回答:1

我正在处理将包含在主节点文件中的可执行文件。但是问题是,尽管我可以在PC中定义路径并使用打开文本文件或执行该文件,但是它对于团队中其他团队成员并不通用。从git拉出后必须更改代码。

我有以下命令:

    os.chdir( "/home/user/epsilon/epsilon_catkin_ws/src/knowledge_source/sense_manager/pddl_files/")

    os.system("./ff -p /home/user/epsilon/epsilon_catkin_ws/src/knowledge_source/sense_manager/pddl_files/ -o domain.pddl -f problem.pddl >

    solution_path = "/home/user/epsilon/epsilon_catkin_ws/src/knowledge_source/sense_manager/pddl_files/solution.txt" solution_detail.txt")

由于该路径在我的笔记本电脑中是唯一的,因此每个人都需要进行更改。有没有办法使路径定义通用? (命令是该节点中存在的服务调用的一部分)。我正在使用rosrun运行节点

我尝试了以下模式,但不起作用:

    os.chdir( "$(find knowledge_source)/sense_manager/pddl_files/")


我需要做一些额外的事情来使这项工作吗?knowledge_source是程序包的名称

有什么建议吗?

python git directory ros universal
1个回答
0
投票

我认为您正在寻找rospkg和os组合以获取ros软件包中文件的路径。

© www.soinside.com 2019 - 2024. All rights reserved.