vrpn_cient_ros发送频率无法调整提供解决思路

2023-05-16

最近写了节点来订阅ros_client_ros,但是发现在launch文件修改update_frequency不起作用,然而我又需要通过串口给下位机发送数据,频率一快,串口直接堵死了。怎么调都frequency都没用,对于我这种ros新手很无奈呀,只有下位机开发经验的我,第一反映是在订阅节点搞个定时器,这样就可以规律的发送数据了,但是具体了解到rostopic的通信后,望而却步,还好无意中看到了这位兄台的博文ROS改变发布者频率豁然开朗,官方参考请看这里,咋们先用roswiki上的talker和listener实验测试一番:
1、roscore 启动ros;
2、rosrun topic_tools throttle messages command 10.0
这里的command是我的话题,后面的数字10是我需要改变的频率;
3,运行talker节点,然后rostopic list
/command
/command_throttle
/rosout
/rosout_agg
发现多了一个command_throttle的topic,echo一下/command和/command_throttle
左边为command主题,右边为command_throttle主题
可以发现左图为连续的发送 右图为不间断的发送,更直观点咋们利用rostopic hz命令获取topic的频率,如下图所示,左图为command_throttle的发布频率,右边为command的发布频率
在这里插入图片描述
4、我们将talker的发送频率改为ros::Rate loop_rate(100);在roboware studio里添加一个cpp文件-listenner2.cpp,复制listenner的内容,将订阅的command主题换成/command_throttle,用roboware studio的好处是自动帮你添加依赖,在回调函数里添加个变量,每次进入回调函数里,变量加1,然后在打印出来,最后点击小石头编译一下。
5、最后我们运行listener以及listener2,验证发布频率(看进入多少次回调函数),如下图所示:
在这里插入图片描述
左图为listenner2,右图为listenner,其中real_count为进入回调函数的次数,发现左图大概是右图的1/10,验证成功!
6、但是发现,每次重新启动,/command_throttle主题便会消失,需要重新敲入rosrun topic_tools throttle messages command 10.0

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

vrpn_cient_ros发送频率无法调整提供解决思路 的相关文章

随机推荐

  • 无人机、无人车仿真器AirSim中激光雷达Lidar设置

    1 在车辆或无人机中激活激光雷达 默认情况下 xff0c 激光雷达是不开启的 xff0c 如果需要开启激光雷达 xff0c 则需要在settings jason文件中进行激活 xff0c settings jason 文件位于 Docume
  • 软件项目产品化之路

    软件项目产品化之路 2 产品化之路 2 1 困惑 软件项目产品化是大量软件企业 xff0c 特别是应用型软件研发企业所必须面临的问题 不论是小型的软件公司和中大型的软件企业 xff0c 在面对软件项目和软件产品 xff0c 都有诸多困惑 到
  • 软件产品化的一些见解

    软件产品化的定义 软件产品化 即客户无需为软件添加或调整代码和语句即能完成软件的安装配置 应用初始化 系统管理 用户使用的全过程 并且软件至少能满足80 以上的用户某一组应用需求 软件产品化只是完成了产品的生产环节 后面的产品销售 市场推广
  • 程序员与工匠精神

    前几天和一个朋友聊天时说 xff1a 我有强迫症 xff0c 每次看到不符合自己审美的代码时 xff0c 总想重构一下 朋友的观点与大多数人相仿 xff0c 程序只要满足要求 xff0c 运行正确就可以 在现实的工作中一样 xff0c 每当
  • linux 进程线程思维导图

  • 修改结构体中成员的值

    include lt iostream gt using namespace std struct student char name 10 float grade 更改student数据的grade成员 xff0c 参数形式为引用 voi
  • C++中冒号的用法

    1 冒号 xff08 xff09 用法 xff08 1 xff09 表示机构内位域的定义 xff08 即该变量占几个bit空间 xff09 typedef struct XXX unsigned char a 4 unsigned char
  • C/C++预处理指令

    本文主要记录了C C 43 43 预处理指令 xff0c 常见的预处理指令如下 xff1a 空指令 xff0c 无任何效果 include包含一个源代码文件 define定义宏 undef取消已定义的宏 if如果给定条件为真 xff0c 则
  • STM32F1常用外设介绍(超详细35000字介绍)

    STM32学习笔记 GPIO配置步骤 步骤 xff1a 第一步 xff0c 使用RCC开启GPIO的时钟 第二步 xff0c 使用GPIO Init 函数初始化GPIO 第三步 xff0c 使用输出或者输入的函数控制GPIO口 常用的RCC
  • MFC拷贝文件及进度条显示

    参考 xff1a 封装CopyFileEx函数 xff0c 实现文件复制中的暂停 xff0c 控速 xff0c 获取进度 http blog csdn net career2011 article details 6844513 实例讲解C
  • 什么是寄存器?(STM32)

    什么是寄存器 xff1f 我们现在在开发STM32时 xff0c 已经很少用到寄存器编程 xff0c 更多的使用ST公司所提供的标准库和最新的HAL库进行编程实现 xff0c 但是不管是标准库还是HAL库都是在原来的寄存器层面上进行了封装
  • 计算机网络——物理层(一)

    物理层 xff08 部分 xff09 机械特性 xff1a 指明接口所用接线器的形状和尺寸 引脚数目和排列 固定和锁定装置等 电气特性 xff1a 指明在接口电缆的各条线上出现的电压的范围 功能特性 xff1a 指明某条线上出现的某一电平的
  • 洛谷P5717-三角形分类

    洛谷P5717 三角形分类 题目 这道题更像是初中题 xff0c 但是怎么能完整的按照题目的意思来解决呢 xff0c 说实话这个题卡了我有一会儿 xff0c 要做一次性做出这个题 xff0c 我觉得需要搞清楚if if 和if else i
  • 洛谷P1424-小鱼的航程(改进版)

    洛谷P1424 小鱼的航程 xff08 改进版 xff09 这个题我第一次做的时候 xff0c 有两个没过 xff0c 后来检查的时候发现原来是没有考虑开始的时间是不是周六周日 xff0c 如果是周六要在原来的天数上 2 xff0c 如果是
  • freertos-简介(一)

    FreeRTOS 裸机 不带任何操作系统 只能先打完游戏回复信息 实时性差 xff0c 程序轮流执行delay空等待 xff0c CPU不执行其他代码结构臃肿 xff0c 实现功能都在while循环 RTOS 实时操作系统 会执行打游戏一个
  • PCB设计过程中AD使用流程详解(超详细)

    PCB设计过程中AD使用流程详解 xff08 超详细 xff09 1 设计前期部分 规则设定 xff1a Preference system file type关联文件 xff08 所有关联 xff09 PCB editor General
  • python面向对象编程

    符合python风格的对象 先来看一个向量类的例子 span class token keyword class span span class token class name Vector2d span span class token
  • DIY 一个树莓派无人机

    学习目标 xff1a DIY 一个树莓派无人机 这篇文章来源于DevicePlus com英语网站的翻译稿 提示 xff1a 这里可以添加学习目标 学习内容 xff1a 提示 xff1a 这里可以添加要学的内容 今天 xff0c 我们将利用
  • Linux开源杀毒软件CLamAV介绍

    Linux开源杀毒软件CLamAV介绍 很多用户可能不知道在Linux上会有计算机病毒 xff0c 虽然Linux上的病毒不像在Windows上那么常见 xff0c 但实际上 xff0c 很多重要系统均采用Linux系统作为服务器的操作系统
  • vrpn_cient_ros发送频率无法调整提供解决思路

    最近写了节点来订阅ros client ros 但是发现在launch文件修改update frequency不起作用 xff0c 然而我又需要通过串口给下位机发送数据 xff0c 频率一快 xff0c 串口直接堵死了 怎么调都freque