ros下的python代码的编写与回调函数
在做的一个项目有用到pytorch,然后需要利用rviz来进行显示,因此只能是在ros下编写python的功能包,在此做一下记录。
1 ROS下的python代码的编写
实际一个scripts的文件夹,然后在里面定义想要执行的py文件,最后将文件添加到可执行。
mkdir scripts #新建文件夹
cd scripts #进入文件夹
touch talker.py #生成文件
chmod +x talker.py #设置可执行
rosed beginner_tutorials talker.py #自己输入代码
运行代码的方法:
rosrun maze train.py
py文件不需要编译,会自动添加到包的node中,直接执行
2. 回调函数
在我自的代码中,是会需要接收回调函数,对地图进行更新,但是之后还需要进行其他的处理,也就是处理完回调函数A后还需要进行B的处理,但是ros的python代码中,并没有rosspinonce的机制,但是其rosspin并不会占用主线程,因此可以编写一个while函数来执行需要执行的操作,然后在while函数后添加rosspin,实际测试该方法有效。之后每秒打印一个loop,每10秒接收一个data信息,打印一个callback
def callback_pointcloud(data):print("callback")map[0][0] = map[0][0]+1def main():rospy.init_node("maze",anonymous=True)rospy.Subscriber("/map",PointCloud2,callback_pointcloud)rate = rospy.Rate(1);while not rospy.is_shutdown():print("loop")rate.sleep()rospy.spin()print("hello")if __name__ == '__main__':main()
ros下的python代码的编写与回调函数相关推荐
- Python代码的编写运行方式介绍
Python代码的编写运行方式介绍 python官方运行环境可到网站https://www.python.org/downloads/找到合适版本下载安装. 安装比较容易,特别强调,安装过程建议勾选& ...
- Python代码的编写运行方式
Python代码的编写运行方式介绍 python官方运行环境可到网站https://www.python.org/downloads/找到合适版本下载安装. 安装比较容易,特别强调,安装过程建议勾选& ...
- linux下通过Python代码实现获取硬件接口信息
linux下通过Python代码实现获取硬件接口信息 1.CPU架构 Python中,platform模块给提供了很多方法去获取操作系统的信息. touch cpu.py vi cpu.py #编辑内 ...
- Visual Studio Code(VS code) python代码无法进行变量和函数跳转
Visual Studio Code python代码无法进行变量和函数跳转 今天早上打开VC code发现竟然无法进行跳转,同时报下面这个错误 The Python Tools server cra ...
- python手机编程调试_在Linux下调试Python代码的各种方法
这是一个我用于调试或分析工具概述,不一定是完整全面,如果你知道更好的工具,请在评论处标记. 日志 是的,的确,不得不强调足够的日志记录对应用程序是多么的重要.您应该记录重要的东西,如果你的记录足够好的 ...
- Linux下安装Python,并在Linux下运行python代码文件
CentOS配置源 1.查看本地yum源 ll /etc/yum.repos.d/ 2.把默认yum源备份 mkdir /opt/centos-yum.bak mv /etc/yum.repos.d/ ...
- vim python 代码提示_linux下vim python代码自动补全
一.vim python自动补全插件:pydiction 可以实现下面python代码的自动补全: 1.简单python关键词补全 2.python 函数补全带括号 3.python 模块补全 4.p ...
- python ctypes 回调函数_如何用Python中的ctypes创建回调函数?
我为海盗工具引擎SDK编写了一个包装器,但是有一个函数我还没有包装好.它是一个接受回调函数的异步函数,但我似乎不知道如何给它这个回调函数.在 函数如下所示:bool CorsairSetLedsCol ...
- numpy的基本使用 附python代码详细讲解(numpy函数,创建数组,常用属性,索引切片,数组的复制,修改维度,数组的分割、拼接、转置)
目录 使用array创建数组 使用arange创建数组 Numpy中的随机数创建 ndarray对象的常用属性 其他方式创建数组 索引和切片(一位数组.二维数组) 数组的复制 修改数组的维度 数组的拼 ...
最新文章
- Form学习入门系列(一)
- 用化学的方法分类键盘和鼠标
- 华为鸿蒙备胎转正,华为鸿蒙是备胎系统,但已经实现上网随时能转正?
- Node.js从零开发Web Server博客项目笔记
- 计算高斯混合模型的可分性和重叠度(Overlap Rate, OLR)
- Java网络爬虫该如何学习
- CSS 制作下拉导航
- STM32工作笔记0051---NVIC中断优先级管理
- JAVA语言程序设计(基础篇)第四章——课后习题解
- linux 烧录树莓派镜像,Linux命令行烧录树莓派镜像至SD卡
- Oracle EBS之把自定义concurrent加入Pick Release Document Set(All Pick Release Documents)的几个注意点...
- 代码管理仓库项目任务计划
- HDU6383 p1m2
- Win8系统 界面大放送(Win8 抢先版)
- pi/4QPSK调制解调原理
- C++ 中如何区分std::endl、std::ends、std::flush的差异性
- 沃尔玛跨境智星的介绍与用法
- 第二节 LwIP简介
- 19年 GSoC 中 Jenkins 的七个项目
- 报错:NoSuchAlgorithmException: Algorithm HmacSHA1 not available