ros1中python3包调用自定义.py文件

news/2024/9/24 7:23:58/

rospython包相互import不成功问题

  • 问题
  • 解决办法

问题

ros工程中,运行python文件难以直接import自己写的py文件,相互之间无法import,但是在python3虚拟环境python *.py文件就可以正常运行!
在这里插入图片描述
注意这里还有个问题,我们的这个auboi5_moveitServer.py明明是在下面的路径下,为什么rosrun运行会跑到aubo_ws/devel/lib/cxh这下面去呢
在这里插入图片描述
这是因为你在cxh文件夹下的CMakeList.txt文件添加了catkin_install_python(PROGRAMS
scripts/auboi5_moveitServer.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)这样式的修改,所以在aubo_ws下执行编译就会把cxh下的文件复制到devel/lib文件夹里面导致Python导的包重名了!!!

解决办法

如果你的CMakeList.txt文件添加了像下面这样的catkin_install_python(PROGRAMS scripts/HelloWorld.py
DESTINATION ${CATKIN_PACKAGE_BIN_DESTINATION}
)这样式的修改,请立即全部删除或者注释掉!!!
因为不管用!!!
在这里插入图片描述

然后重新编译,编译前把之前编译出来的文件都删掉,如图红色框里就是之前编译出来的文件:
在这里插入图片描述
删掉后,执行命令

catkin_make
source devel/setup.bash

然后在需要创建成ROS节点的.py文件,给予权限即可在source后,通过rosrun运行python文件
权限命令

chmod +x *.py

如图在python虚拟环境grcnngrasp下,执行命令后,变绿就是命令生效了:
在这里插入图片描述
在终端里,先source一下再rosrun命令

source devel/setup.bash
rosrun cxh run_mono_grasp_real.py

http://www.ppmy.cn/news/1424946.html

相关文章

软件公司就要小组化管理,好处多多哦

软件公司采用小组化管理优点: 1. **提高效率**:大多数软件产品由一个专业人员在有限时间内很难单独完成,因此需要将工作分配给一组专业人员,形成一个高效的团队来共同完成项目。 2. **专业化分工**:软件项目通常涉及多…

【Linux系统】地址空间 Linux内核进程调度队列

1.进程的地址空间 1.1 直接写代码&#xff0c;看现象 1 #include<stdio.h>2 #include<unistd.h>3 4 int g_val 100;5 6 int main()7 {8 int cnt 0;9 pid_t id fork();10 if(id 0)11 {12 while(1)13 {14 printf(&…

vue3 reactive

在Vue 3中&#xff0c;reactive是一个用于创建响应式数据对象的函数。它可以将一个普通的JavaScript对象转换为一个响应式的数据对象&#xff0c;使得当对象的属性发生变化时&#xff0c;相关的组件可以自动地进行更新。 使用reactive的步骤如下&#xff1a; 1首先&#xff0…

前端正则表达式js和测试工具

一、校验数字的表达式 1. 数字&#xff1a;^[0-9]*$2. n位的数字&#xff1a;^\d{n}$3. 至少n位的数字&#xff1a;^\d{n,}$4. m-n位的数字&#xff1a;^\d{m,n}$5. 零和非零开头的数字&#xff1a;^(0|[1-9][0-9]*)$6. 非零开头的最多带两位小数的数字&#xff1a;^([1-9][0-9…

JVM之初识垃圾收集器

JDK 8&#xff1a;Parallel Scavenge&#xff08;新生代&#xff09; Parallel Old&#xff08;老年代&#xff09;JDK8以后&#xff1a;G1收集器 什么是串行回收和并行回收&#xff1f; Serial收集器&#xff1a;串行收集器 新生代使用标记复制算法&#xff0c;老年代使用标记…

【随笔】Git 高级篇 -- 获取远程分支数据 git fetch(二十七)

&#x1f48c; 所属专栏&#xff1a;【Git】 &#x1f600; 作  者&#xff1a;我是夜阑的狗&#x1f436; &#x1f680; 个人简介&#xff1a;一个正在努力学技术的CV工程师&#xff0c;专注基础和实战分享 &#xff0c;欢迎咨询&#xff01; &#x1f496; 欢迎大…

汽车IVI中控开发入门及进阶(十五):AUTOSAR

前言: 随着汽车四化的进行,汽车电子系统standard标准化和coperation互操作性变得重要, AUTOSAR(AUTomotive Open System Architecture 汽车开放系统架构)框架已成为汽车行业的基础支柱。 AUTOSAR始自2000年,当时认识到标准化是有必要

【若依前后端分离】登录页面背景加入轮播视频

轮播图&#xff1a;【若依前后端分离】登录页面背景加入轮播图_vue 轮播图登入页-CSDN博客 1.Vue 组件的模板部分 视频容器&#xff1a;使用一个 div 元素作为视频的容器&#xff0c;具有样式 video-container。 <div class"video-container"><video :sr…