位置: IT常识 - 正文

ros(23):接收rviz中的2D Nav Goal、2D Pose Estimate消息(ros urdf)

发布时间:2024-01-11
ros(23):接收rviz中的2D Nav Goal、2D Pose Estimate消息 1 rviz 教程1.1 2D Nav Goal2D Nav Goal (Keyboard shortcut: g)

推荐整理分享ros(23):接收rviz中的2D Nav Goal、2D Pose Estimate消息(ros urdf),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:ros irq,ros subscribe 参数,ros subscribe 参数,ros接收发送节点信息,ros接收发送节点信息,ros接收发送节点信息,ros irq,ros接入ssr,内容如对您有帮助,希望把文章链接给更多的朋友!

This tool lets you set a goal sent on the "goal" ROS topic. Click on a location on the ground plane and drag to select the orientation:

二维导航目标(快捷键:g) 此工具允许您设置在“goal”ROS主题上发送的目标。单击地平面上的某个位置并拖动以选择方向:

即设置二维导航目标,并使用“goal”这个话题进行通讯(结合rviz的其他教程,话题名也可能是“/move_base_simple/goal”)

其消息类型为:geometry_msgs/PoseStamped

meng@meng:~/ideas/ros_ws$ rosmsg info geometry_msgs/PoseStampedstd_msgs/Header header uint32 seq time stamp string frame_idgeometry_msgs/Pose pose geometry_msgs/Point position float64 x float64 y float64 z geometry_msgs/Quaternion orientation float64 x float64 y float64 z float64 w1.2 2D Pose Estimate2D Pose Estimate (Keyboard shortcut: p)

This tool lets you set an initial pose to seed the localization system (sent on the "initialpose" ROS topic). Click on a location on the ground plane and drag to select the orientation:

二维姿势估计(键盘快捷键:p) 此工具允许您设置初始姿势以播种定位系统(发送至“initialpose”ROS主题)。单击地平面上的某个位置并拖动以选择方向:

即设置二维初始位姿并使用“initialpose”进行通讯

ros(23):接收rviz中的2D Nav Goal、2D Pose Estimate消息(ros urdf)

其消息类型为:geometry_msgs/PoseWithCovarianceStamped

meng@meng:~/ideas/ros_ws$ rosmsg info geometry_msgs/PoseWithCovarianceStampedstd_msgs/Header header uint32 seq time stamp string frame_idgeometry_msgs/PoseWithCovariance pose geometry_msgs/Pose pose geometry_msgs/Point position float64 x float64 y float64 z geometry_msgs/Quaternion orientation float64 x float64 y float64 z float64 w float64[36] covariance1.3 打开rviz查看

Panels--Tool Properties(勾选)

 

2 订阅话题

订阅起点位姿和终点话题并打印输出的c++文件:receive_2d_nav_goal.cpp

#include "ros/ros.h"#include "std_msgs/String.h"#include <geometry_msgs/PoseWithCovarianceStamped.h>#include <iostream>#include <geometry_msgs/PoseStamped.h>void chatterCallback(const geometry_msgs::PoseWithCovarianceStamped::ConstPtr& msg){ double x=msg->pose.pose.position.x; double y=msg->pose.pose.position.y; std::cout<<x<<y<<std::endl;}void chatterCallback1(const geometry_msgs::PoseStamped::ConstPtr& msg){ std::cout<<"1111"<<std::endl; double x=msg->pose.position.x; double y=msg->pose.position.y; std::cout<<x<<y<<std::endl;}int main(int argc, char **argv){ ros::init(argc, argv, "reveive_rviz"); ros::NodeHandle nh; ros::Subscriber sub = nh.subscribe("/initialpose", 1, chatterCallback);//队列长度:1000或1或其他 ros::Subscriber sub1 = nh.subscribe("/move_base_simple/goal", 1, chatterCallback1);//队列长度:1000或1或其他while(ros::ok()){ ros::spinOnce();} return 0;}

启动rviz和节点程序,用 2D Nav Goal、2D Pose Estimate 在rviz中做标记,即可打印输出:

订阅起点位姿和终点,并保持发布:

#include "ros/ros.h"#include "std_msgs/String.h"#include <geometry_msgs/PoseWithCovarianceStamped.h>#include <iostream>#include <geometry_msgs/PoseStamped.h>ros::Publisher initialpose_pub,goal_pub;geometry_msgs::PoseWithCovarianceStamped initialpose_tmp;//设置为全局变量,可以一直被发布出来geometry_msgs::PoseStamped goal_tmp;void initialpose_handler(const geometry_msgs::PoseWithCovarianceStamped::ConstPtr& msg){ double x=msg->pose.pose.position.x; double y=msg->pose.pose.position.y; std::cout<<"起点坐标:("<<x<<", "<<y<<")"<<std::endl; initialpose_tmp=*msg; // initialpose_tmp.header=msg->header; // initialpose_tmp.header=msg->header; initialpose_pub.publish(initialpose_tmp);}void goal_handler(const geometry_msgs::PoseStamped::ConstPtr& msg){ double x=msg->pose.position.x; double y=msg->pose.position.y; std::cout<<"终点坐标:("<<x<<", "<<y<<")"<<std::endl; goal_tmp=*msg; goal_pub.publish(*msg);}int main(int argc, char **argv){ ros::init(argc, argv, "reveive_rviz"); ros::NodeHandle nh; ros::Subscriber sub = nh.subscribe("/initialpose", 1, initialpose_handler);//1000改为1 ros::Subscriber sub1 = nh.subscribe("/move_base_simple/goal", 1, goal_handler);//1000改为1 initialpose_pub = nh.advertise<geometry_msgs::PoseWithCovarianceStamped>("initialpose_my", 1); goal_pub = nh.advertise<geometry_msgs::PoseStamped>("goal_my", 1); while(ros::ok()) { ros::spinOnce(); } return 0;}

参考链接:

2D Nav Goal和2D Pose Estimate功能介绍:rviz/UserGuide - ROS Wiki

2D Nav Goal和2D Pose Estimate的消息类型:navigation/Tutorials/Using rviz with the Navigation Stack - ROS Wiki 

本文链接地址:https://www.jiuchutong.com/zhishi/292298.html 转载请保留说明!

上一篇:一年一度的施瓦本哈尔圣诞市集,德国巴登-符腾堡州 (© sack/Getty Images Plus)

下一篇:阿拉斯加普拉德霍湾附近的雄性麝牛 (© Oliver Smart/Alamy)(阿拉斯给加拉普)

  • 苹果13日历怎么显示节假日(苹果13日历怎么显示节气和节日)

    苹果13日历怎么显示节假日(苹果13日历怎么显示节气和节日)

  • word如何调整行距大小(Word如何调整行间距统一)

    word如何调整行距大小(Word如何调整行间距统一)

  • 微信游戏中心在哪(微信游戏中心在线状态)

    微信游戏中心在哪(微信游戏中心在线状态)

  • 抖音团购活动怎么添加到视频(抖音团购活动怎么删除无法删除)

    抖音团购活动怎么添加到视频(抖音团购活动怎么删除无法删除)

  • 抖音9:16视频尺寸是多少(抖音9:16视频尺寸怎么拍)

    抖音9:16视频尺寸是多少(抖音9:16视频尺寸怎么拍)

  • 苹果手表充满电可以用多久(苹果手表充满电了能用多长时间)

    苹果手表充满电可以用多久(苹果手表充满电了能用多长时间)

  • WPS竖排文本框怎么设置(wps竖排文本框怎么从左到右)

    WPS竖排文本框怎么设置(wps竖排文本框怎么从左到右)

  • 手机软件闪退怎么修复?原因?(手机软件闪退怎么弄)

    手机软件闪退怎么修复?原因?(手机软件闪退怎么弄)

  • 小米画报可以删除吗(小米画报删了有事吗)

    小米画报可以删除吗(小米画报删了有事吗)

  • 淘宝没有换货选项(淘宝没有换货选项,直接寄过去)

    淘宝没有换货选项(淘宝没有换货选项,直接寄过去)

  • 支付宝没有网络访问权限是什么意思(支付宝没有网络怎么办)

    支付宝没有网络访问权限是什么意思(支付宝没有网络怎么办)

  • 钉钉入班申请已关闭是什么意思(钉钉同意入班申请系统繁忙)

    钉钉入班申请已关闭是什么意思(钉钉同意入班申请系统繁忙)

  • iphone8plus壁纸尺寸(iphone8p壁纸尺寸大小)

    iphone8plus壁纸尺寸(iphone8p壁纸尺寸大小)

  • 哔哩哔哩和哔哩哔哩hd有什么区别(哔哩哔哩和哔哩哔哩uwp区别)

    哔哩哔哩和哔哩哔哩hd有什么区别(哔哩哔哩和哔哩哔哩uwp区别)

  • 抖音太卡是什么原因(抖音非常卡是什么原因)

    抖音太卡是什么原因(抖音非常卡是什么原因)

  • 买家申请退款可以几次(买家申请退款可以报警吗)

    买家申请退款可以几次(买家申请退款可以报警吗)

  • 手机出现fastboot怎么办(手机出现fastboot会坏吗)

    手机出现fastboot怎么办(手机出现fastboot会坏吗)

  • apple store如何取消自动续费(applestore如何取消退货申请)

    apple store如何取消自动续费(applestore如何取消退货申请)

  • 苹果没有备份能恢复吗(苹果手机没有备份影响使用吗)

    苹果没有备份能恢复吗(苹果手机没有备份影响使用吗)

  • wifi智能遥控有什么用(无线智能遥控)

    wifi智能遥控有什么用(无线智能遥控)

  • 笔记本电池保养(笔记本电池保养注意事项)

    笔记本电池保养(笔记本电池保养注意事项)

  • 【博主推荐】html好看的个人主页(附源码)(良心推荐博主)

    【博主推荐】html好看的个人主页(附源码)(良心推荐博主)

  • 涅迪克角灯塔上的节日彩灯,缅因州 (© Walter Bibikow/Alamy)

    涅迪克角灯塔上的节日彩灯,缅因州 (© Walter Bibikow/Alamy)

  • JavaScript(WebAPI)+具体案例

    JavaScript(WebAPI)+具体案例

  • 缴纳增值税账务处理
  • 境外承包工程项下资金
  • 税友财务软件一年多少钱
  • 物业收电费有问题找谁解决
  • 个人所得税租赁费的计算
  • 礼品费如何报销
  • 网上银行回单是什么意思
  • 代开专用发票的企业如何享受小微免税优惠
  • 什么样的运输发动机最好
  • 企业间借款增值税税率
  • 手工做账流程图
  • 过期的食品退回去厂里怎么处理
  • 营业成本利润率是指
  • 现金存入银行会计摘要怎么写
  • 劳保统筹费用
  • 银行抵债资产怎么管理
  • 年终结账后,应当更换新账的有( )
  • 机器维修费的会计科目
  • 土地配套费如何缴纳
  • 机动车销售统一票据可以抵扣吗
  • 出口公司代理
  • 应付职工薪酬明细表怎么填写
  • Win10系统如何修改开机密码
  • linux使用docker
  • 记账凭证的摘要怎么填写
  • mxoaldr.exe - mxoaldr是什么进程 有什么用
  • php数组函数 菜鸟
  • 进口增值税公式计算公式
  • 注销库存股的会计分录怎么理解
  • HTML怎么设置文本框
  • 进销项抵扣规则
  • php fopen读取文件
  • three.js 教程
  • Web Spider Fiddler - JS Hook 基本使用
  • 毕业设计教程
  • c语音进阶
  • Ajax PHP JavaScript MySQL实现简易无刷新在线聊天室
  • 政府代建项目税收政策
  • sqlserver修改值
  • 无形资产收益额的具体测算方法有
  • 固定资产清理是三栏式还是多栏式
  • 施工企业的汇兑损失属于财务费用
  • sql server 2016 sp3
  • 个人所得税租房专项扣除标准
  • 租赁物品损坏赔偿金额标准
  • 所有者权益和负债的主要区别
  • 营改增清包工
  • 关于赠品的财务处理
  • 转出未交增值税最终怎么转平
  • 纳税期限与申报期限的区别
  • 查定征收在哪一章
  • 折扣方式销售如何确定销售额?
  • 企业用地手续办理流程
  • 亏损弥补的新旧不同
  • 投资款不属于收入吗
  • 生产成本和生产费用的关系
  • 将Reporting services的RDL文件拷贝到另外一台机器时报Data at the root level is invalid的解决方法
  • sql server使用的是什么逻辑模型
  • windows下mysql 5.7版本中修改编码为utf-8的方法步骤
  • SQL 导入导出Excel数据的语句
  • window8开机
  • xp系统如何设置
  • linux 添加swap
  • windows推送
  • cmd读取d盘
  • 基于jQuey实现鼠标滑过变色(整行变色)
  • jquery 鼠标
  • 七牛云和ucloud
  • JavaScript中的变量名不区分大小写
  • android DefaultHttpClient设置setCookieStore
  • unity的invoke
  • jquery插件是干什么的
  • unity3drpg游戏
  • Android ViewPager+Fragment滑动选项卡,tab点击选项卡
  • python安装包的命令
  • js设计模式有哪些
  • 税务开票系统对账流程
  • 厦门象屿正式员工招聘
  • 铁路检察院和普检哪个好
  • 李民基
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号