ROS入门笔记(十一):编写与测试简单的Service和Client (Python)目录01 导读02 功能包的创建03 在功能包中创建自定义服务类型3.1 定义srv文件3.2 在package.xml中添加功能包依赖3.3 在CMakeLists.txt添加编译选项04 查看自定义的服务消息05 功能包的源代码编写5.1 编写Service节点(server.py)5.2 编写Clie
简言当前国内普遍的软件生态离不开Windows,而代码开发又依赖各类Linux环境,在多生态间的任务切换时总是显得力不从心,好在Vscode提供了强大的RemoteSSH,一个强大的远程开发插件,这就使得以此为基础实现在Windows上开发远端应用成为了触手可及的事情。(虔诚)于是就在这里记录一下打通环境的整个过程,免得以后忘记。为什么用Docker版本的ROS2开发环境稳定,不会因为一些误操作受
转载 2024-06-28 15:11:37
381阅读
《动手学ROS2》4.2话题通信实现(Python)本系列教程作者:小鱼公众号:鱼香ROSQQ交流群:139707339教学视频地址:小鱼的B站完整文档地址:鱼香ROS官网版权声明:如非允许禁止转载与商业用途。4.2.1 话题通信Python实现本节小鱼将带你一起,通过Python完成李四发布话题(sexy_girl)《艳娘传奇》。大家都知道白嫖是不对的(看了小鱼视频一定要一键三连),这里我们再加一个需求,让作家李四订阅一个话题来收稿费(sexy_girl_money),让王二发布(
原创 2022-01-17 17:01:53
491阅读
实现过程 发布者发布信息,通过话题(topic)传输,订阅者通过订阅得到数据并执行操作 发布者的数据结构为twist,订阅者为pose实现发布者创建话题功能包$ cd ~/catkin_ws/src $ catkin_create_pkg learning_topic roscpp rospy std_msgs geometry_msgs turtlesim在功能包的src文件夹建立velocit
转载 2024-09-10 13:00:29
235阅读
我们从ros wiki 上tf变换的第一个例子说起#!/usr/bin/env python import roslib roslib.load_manifest('learning_tf') import rospy import tf import turtlesim.msg def handle_turtle_pose(msg, turtlename): br = tf.Tr
转载 2024-09-10 18:58:22
31阅读
功能包的大致流程:setup.py进行注册然后在colcon build进行构建,然后source install/setup.sh 更新环境最后ros2 run 包名 注册名 进行运行 在 ROS2 中,话题(Topic) 是一种用于节点间 发布/订阅通信 的机制。 可以把话题理解为一个 命名的数 ...
转载 1月前
438阅读
接口本章将会提一个新概念:接口1.1 接口介绍接口是一种规范,在前面的话题中,li4和wang2分别用了两种数据类型来传递小说和钱std_msgs/msg/String std_msgs/msg/UInt32我们的功能包有着不同的编译方式,如ament_python,ament_cmake。不同语言对字符串的定义不同,但通过接口可以除去这种语言差异1.2 好处采用小鱼ros中的例子,机器人有时会替
写在前面:最近在用ROS2做机器人项目,在单独写好了两个python文件并测试完之后,我需要将python的包放到ROS2中并用ROS2运行 但是在运行的过程中出现了没有办法找到自己写的文件包的错误,具体的错误描述见后运行环境:ubuntu 22.04ROS2 humble问题描述在把我的代码放入到ROS2环境下之后,我的工作区目录如下src/ ├── package.xml ├── setup.
转载 2023-10-06 21:39:24
198阅读
前言本系列博文是本人的学习笔记,自用为主,不是教程,学习请移步其他大佬的相关教程。前几篇学习资源来自鱼香ROS大佬的详细教程,适合深入学习,但对本人这样的初学者不算友好,而且涉及python与C++混合编程内容,增加了学习成本,后续笔记将以@古月居的ROS2入门21讲为主,侵权即删。一、基础概念1. ...
转载 9天前
339阅读
本系列教程作者:小鱼公众号:鱼香ROSQQ交流群:139707339教学视频地址:小鱼的B站完整文档地址:鱼香ROS官网版权声明:如非允许禁止转载与商业用途。4.2.2 ROS2话题通信(C++实现)本节小鱼将带你一起实现C++版本话题通信功能,帮助单身汉王二拿到他最想看的艳娘传奇,并通过话题支付稿费给李四。最终实现像下图这样的计算图。1.订阅话题1.1 如何编写在C++中如何实现话题的订阅呢?其实做法和Python中差不多。还记得第三章中我们新建的SingleDogNode类的.
原创 2022-01-17 17:01:55
1204阅读
1点赞
前言本系列博文是本人的学习笔记,自用为主,不是教程,学习请移步其他大佬的相关教程。主要学习途径为@鱼香ROS大佬的教程,欢迎各位大佬交流学习,若有错误,轻喷。一、核心概念(零基础先了解)话题(Topic):ROS2 中节点间 “发布 - 订阅” 模式的通信方式。一个节点发布消息到话题,其他节点订阅该 ...
转载 5天前
388阅读
除了ROS内置消息外,我们还能自定义消息。这一次我们不再与海龟较劲,而是自定义一个订阅消息类型,让订阅者和发布者通过这个结构进行数据通信。一、如何自定义话题消息?话题消息是以.msg结尾的文件,是一个用于描述ROS话题信息简单文本文件,用于生成不同语言消息的源代码。msg文件一般存放在package下msg文件夹下,其数据类型可以是:int8, int16, int32, int64 (unit*
前言:    前段时间,学习了YOLO在Python下的实现,而且经过在原代码基础上添加部分简单函数,已经可以实现利用YOLO在Python实现(1)检测图片中的物体,(2)检测本地视频,(3)调用摄像头实时检测。后来又需要利用Kinect实时检测,所以要用的ROS进行各脚本之间的通信。而ROS Image是我写程序时遇到的一个难点,在此记录下来,以供后期查阅和网友
转载 2024-07-27 22:21:22
196阅读
一、ROS2 话题Topic 示意图 ROS2的Topic可以是一对一,一对多,多对一,多对多,同一个话题Topic可以被不同的节点Node订阅与发布二、与ros1区别topic下有多种命令,以下是ros1的topic命令: 可以看到和ros2的topic没有什么区别Commands: rostopic bw display bandwidth used by topic rostopic del
TF介绍(三)tf in pythontf中有C++接口,也有Python接口,tf在Python中的具体实现相对比较简单。数据类型:TF的相关数据类型,向量、点、四元数。矩阵的=都可以表示成类似于数组的形式(Tuple、List、Numpy Array表示)。 如:t = (1.0,1.5,1.0) #平移 q = [1,0,0,0] #四元数 m = numpy.identity(3) #旋转
# ROS2与Android的通信探索 随着物联网(IoT)和机器人技术的快速发展,ROS2(Robot Operating System 2)作为一种流行的机器人框架越来越受到关注。在ROS2与移动设备(例如Android)之间建立通信,可以实现机器人和智能设备之间的无缝集成。本篇文章将详细介绍如何在Android设备中与ROS2进行通信,并提供相应的代码示例,以及相关的甘特图和类图。 ##
原创 7月前
95阅读
ROS2入门教程—自定义话题及服务消息类型_拓展1 创建功能包2 创建msg文件3 编译msg文件4 设置多个接口5 编写发布者节点代码5.1 代码解释5.2 修改CMakeLists.txt5.3 链接接口6 运行功能包7 使用现有的接口定义   在前面的教程中,我们已经学习了如何在一个功能包中创建自定义msg和srv接口,然后在其他功能包中调用自定义的接口。虽然在专用接口功能包中声明接口是
转载 2024-03-18 15:27:11
177阅读
ros2 foxy版本的订阅接口create_subscription兼容性问题
原创 2023-12-01 13:57:15
272阅读
1点赞
文章目录一、工作空间1.创建一个名称为sor_ws的工作空间2.编译工作空间3.创建功能包二、自定义话题消息1.定义msg文件2.配置package.xml和CMakeLists.txt3.再次编译三、创建cpp文件1.发布者.cpp文件2.订阅者.cpp文件2.再次配置CMakeLists.txt四、运行总结 环境:Ubuntu18.04,ROS版本:melodic一、工作空间工作空间包括sr
转载 2024-06-20 09:15:59
153阅读
了解完话题,下一节小鱼就会带大家来动手写一写话题通信代码。
原创 2023-07-02 00:37:50
425阅读
  • 1
  • 2
  • 3
  • 4
  • 5