< >
Home » ROS与Bebop入门教程 » ROS与Bebop-读取信息

ROS与Bebop-读取信息

ROS与Bebop-读取信息

说明:

  • 介绍如何读取传感器数据,相机,里程计,GPS, TF,状态(Joint),状态(Navdata)

相机:

  • 前镜头的视频流发布在image_raw话题,采用sensor_msgs/Image消息类型。
  • bebop_driver兼容ROS摄像头接口规范,发布摄像头信息和校准数据到camera_info话题
  • 因为Parrot’s ARDroneSDK3的限制,只能发布 640 x 368 @ 30 Hz画质的视频流
  • 视觉范围是水平80度,和垂直50度。
  • v0.4之后,校准文件放在bebop_driver/data/bebop_front_calib.yaml,节点或nodelet启动方式都使用这个文件。

标准ROS消息

Odometery (里程)

  • version 0.5之后支持
  • ROS话题:odom
  • ROS消息类型:nav_msgs/Odometry
  • 驱动整合来自固件的视觉惯性速度评估来计算里程
  • 消息包含Bebop的速度和位置,在已校准ENU里程坐标系里,也叫odom.
  • 坐标系名称可通过配置来更换
  • 坐标系的变换兼容ROS REP 103 (ROS Standard Message Types (i.e Twist, Odometery) - REP 103)
  • 更新频率限制为5 Hz

GPS

  • version 0.5之后支持
  • ROS话题: fix
  • ROS消息类型: sensor_msgs/NavSatFix

相机的节点状态/云台

  • version 0.5之后支持
  • ROS话题: joint_states
  • ROS消息类型: sensor_msgs/JointState

TF

  • version 0.5之后支持
  • 驱动基于Bebop的简单运动学模型(来自bebop_description包),相机节点状态和计算的里程(publish_odom_tf)来更新TF树
  • 图示:
    请输入图片描述

状态(又叫Navdata)

  • 与Parrot ARDrone不同的是,Bebop并不是高频率传送到所有的车载数据返回到主机设备。
  • 只有设置好的每种状态变量,当它更改了的时候才会发送,更新的频率限制是5HZ
  • 驱动程序选择性地发布这些状态,并通过ROS参数显式启用
  • 设置方法,以~states/enable_pilotingstate_flyingstatechanged为例:
    • 如果设置为true,则发布改变的飞行状态到states/ARDrone3/PilotingState/FlyingStateChanged话题。
  • 可设置的状态参数列表:

纠错,疑问,交流: 请进入讨论区点击加入Q群

获取最新文章: 扫一扫右上角的二维码加入“创客智造”公众号


标签: ros与bebop