热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

(五)ROS发布GPS数据

一、GPS数据格式从KITTI的readme文件中https:github.comyaniikitti-pclblobmasterKITTI_README.TXT可以看到GPS数

一、GPS数据格式

从KITTI的readme文件中https://github.com/yanii/kitti-pcl/blob/master/KITTI_README.TXT可以看到GPS数据的格式,KITTI中的IMUS数据文件存在oxts文件夹下,以txt格式保存。
  GPS数据在IMU文件中的前三组,分别是 lat(latitude)维度,lon(longitude)经度和alt(altitude) 海拔,只可以通过topic发布出去,但无法可视化。
  通过Jupyter可以查看其中的GPS数据:
在这里插入图片描述


二、ROS发布GPS Message消息

在ros中定义的GPS Meassage格式为:sensor_msgs/NavSatFix.msg
可通过以下链接了解详情:
http://docs.ros.org/api/sensor_msgs/html/msg/NavSatFix.html

在这里插入图片描述
使用ROS发布GPS Message需要以下结构:


  • 首先从sensor_msgs.msg 中引入NavSatFix
    将GPS定义为NavSatFix()类型的函数
  • 建立Header header
  • 纬度[度],正赤道以北;
    float64 latitude
  • 经度[度],正数在本初子午线的东部,负的是西。
    float64 longitude
  • 海拔高度[m]. WGS 84坐标系椭球面的上方为正.
    float64 altitude

Publish_utils.py

from sensor_msgs.msg import Imu,NavSatFixdef publish_gps(gps_pub,imu_data):
gps = NavSatFix()
gps.header.stamp = rospy.Time.now()
gps.header.frame_id = FRAME_IDgps.latitude = imu_data.lat
gps.longitude = imu_data.lon
gps.altitude = imu_data.alt gps_pub.publish(gps)kitti.py
gps_pub = rospy.Publisher('kitti_gps', NavSatFix ,queue_size=10)publish_gps(gps_pub,imu_data)

可以通过下面命令查看发布的GPS话题:
rosnode list
rostopic list
rostopic info /kitti_gps
rostopic echo /kitti_gps

在这里插入图片描述


推荐阅读
author-avatar
cang桑哥哥
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有