ros发布节点信息python_vscode开发ROS1(13)-python实现话题通信(msg)
写在最前面
1, ros也是可以使用python进行编程的, 而且相比c++来说, ros更加简单.
使用python创建第一个ROS程序
1, 在ros_test目录下, 新建一个scripts文件夹.
2, 修改CMakeLists.txt文件, 在find_package
中添加rospy
find_package(catkin REQUIRED COMPONENTS roscpp ... #其他的包 rospy )
3, 在vscode的终端中执行catkin_make
.
4, 在scripts文件夹中, 新建pyTalker.py文件.
5, 粘贴以下代码
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import rospy #导入rospy客户端
from std_msgs.msg import String #导入std_msg/string这个数据类型def talker():pub = rospy.Publisher('chatter', String, queue_size=10) #话题的名称chatterrospy.init_node('talker', anonymous=True) #初始化节点,节点的名称为talker,名字要唯一rate = rospy.Rate(10) # 10hz,创建rate对象,与sleep()函数结合使用,控制话题消息发布的频率while not rospy.is_shutdown():msg = "hello world "rospy.loginfo(msg)#函数在屏幕输出信息,这个信息存储在hello_str当中pub.publish(msg)rate.sleep()#用于控制发布的频率if __name__ == '__main__':try:talker()except rospy.ROSInterruptException:pass
6, 具体介绍请看注释, 这个比较简单.
7, 使用vscode的终端中cd命令,定位到pyTalker.py文件
cd src/ros_test/scripts/
8, 执行指令, 这一步是为了让pyTalker.py文件具有可执行权限, 不可缺少
chmod 0777 pyTalker.py
运行talker和listener
1, 使用快捷键Ctrl + Shift + T 弹出系统终端,输入roscore
,启用整个ROS总节点。
2, 使用快捷键Ctrl + Shift + T 弹出系统终端,输入rosrun ros_test pyTalker.py
,启用talker节点。
3, 使用快捷键Ctrl + Shift + T 弹出系统终端,输入rosrun ros_test listener
,启用listener节点, 此处的listener节点为c++节点。参照vscode开发ROS(3)-创建第一个ROS项目.
ros发布节点信息python_vscode开发ROS1(13)-python实现话题通信(msg)相关推荐
- ros发布节点信息python_ROS入门笔记(一): ROS简介
1 ROS是什么? 机器人操作系统(Robot Operating System, ROS)是一个应用于机器人上的操作系统,它操作方便.功能强大,特别适用于机器人这种多节点多任务的复杂场景. 说明:R ...
- ros发布节点信息python_ROS Twist和Odometry消息类型使用(Python)
消息类型: 1. Twist - 线速度角速度 通常被用于发送到/cmd_vel话题,被base controller节点监听,控制机器人运动 geometry_msgs/Twist geometry ...
- vscode编写python不能查看定义_vscode开发ROS1(14)-python实现自定义消息
写在最前 此篇为vscode开发系列ros第7篇python实现版本, 请对照进行查看. 穆士凝魂:vscode开发ROS1(7)-自定义消息zhuanlan.zhihu.com 自定义消息 此处是 ...
- python 蓝牙开发_基于python实现蓝牙通信代码实例
这篇文章主要介绍了基于python实现蓝牙通信代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 安装和示例 linux下安装 sudo apt ...
- ros 发布信息频率_ROS入门笔记二基础
1.创建工作空间 1.什么是工作空间 工作空间(workspace)是一个存放工作开发相关文件的文件夹 src:代码空间(Source Space) build:编译空间(Build Space) d ...
- ros 发布信息频率_ROS 消息发布器和订阅器Publisher, Subscriber
1.编写发布器节点 节点(Node) 是指 ROS 网络中可执行文件.接下来,将会创建一个发布器节点("talker"),它将不断的在 ROS 网络中广播消息.切换到之前创建的 b ...
- 译:在ROS上发布Odometry信息
在ROS上发布Odometry信息 描述: 这一教程提供了一个为Navigation Stack发布Odometry消息的例子,不仅包含了如何发布nav_msgs/Odometry消息,还包括一个&q ...
- php内核介绍及扩展开发指南,4.5. 发布扩展信息
发布扩展信息 扩展可以发布 phpinfo() 或反射API要求的信息.我们一起来看一下. 本章不会太长,因为真的很简单. MINFO( ) 挂钩 如果声明了,一切都在声明的 MINFO() 挂钩中进 ...
- 二手房屋信息发布交易小程序开发制作功能
很多的人是不是在为买房,租房,售房这些问题烦恼过? 的房产中介(经纪人)是不是为在哪里发布房源信息,想快速的找到买家而苦恼? 关于买房.租房,售房绝对是全人类的共同话题,无论是买房置业.租房安家.售房 ...
最新文章
- leetcode算法题--Flood Fill
- SpringBoot WebSocket Stomp
- 学习关于display :flex 布局问题!
- 关于fetch api这点事
- 一键自动生成数据库文档,炫!(告别CV大法)
- kubernetes创建yaml,pod服务一直处于 ContainerCreating状态的原因查找与解决
- 7-6 考试座位号 15 分 C语言代码,PAT Basic 1041. 考试座位号(15)(C语言实现)
- html5支付认证,html5实现微信支付宝接口
- CHARINDEX 连同 SUBSTRING 对字符串删除处理...
- c++图书馆管理系统
- P2854 [USACO06DEC]Cow Roller Coaster S(DP)
- 视频消重伪原创有用吗 视频md5修改器最新
- Windows上使用 OpenOCD 给 STM32 下载程序
- linux开发工具少_从设计到开发,我必不可少的10种工具
- java导出excel锁定状态_Java设置excel单元格锁定状态 | 学步园
- u3d mysql_学习笔记(1) mysql + kbengine-0.8.2+U3D_demo详细搭建过程个人记录_mysql
- 乔巴机器人 番外篇_乔巴机器人五只合体图+10个小乔巴+【附合体动图】
- scratch(图形化编程工具)做一个贪吃蛇的游戏(包含视频讲解+源码)!
- css选择第一个标签,倒数第二个标签,最后一个标签总结
- 电子计算机科学之父,电子计算机之父/历史的丰碑
热门文章
- .NET Framework 4.7正式发布
- 写给新手的WebAPI实践
- 3分钟看完 Day2 Keynote
- powershell /遍历/psobject/字符串转换Json/json数组操作
- php里面sql是什么意思,MySQL和SQL是什么?MySQL和SQL之间的区别有哪些
- 有人撸了个网页版win11,惊艳!
- [转].NET 开源项目 Anet 介绍
- 【专升本计算机】甘肃省专升本计算机C语言经典程序案例代码合集(持续更新)
- Android之提示错误Can not perform this action after onSaveInstanceState
- 剑指offer之求二叉树中两个节点的最低共同父节点