zoukankan      html  css  js  c++  java
  • Ros规划主要结构体解析

    导航

    1.位姿PoseStamped

    Header_{
        uint32_t seq;
        ros::Time stamp;
        basic_string frame_id;
    }
    Quaternion_{
    double x; double y; double z; double w; } Pose_{ Point_ position; Quaternion_ orientation; } PoseStamped{ Header_ header; Pose_ pose; }

    2.栅格地图OccupancyGrid

    MapMetaData_{
        ros::Time map_load_time;
        float resolution;
        uint32_t width;
        uint32_t height;
        Pose_ origin;
    }
    
    
    OccupancyGrid_{
        Header_ header;
        MapMetaData_ info;
        vector<int8_t> data;
    }

    3.Path(nav_msgs::Path path;)

    Path_{
        Header_ header;
        vector<PoseStamped_> poses;
    }

    定位

    1.PoseWithCovarianceStamped

    表示带有时间标签和参考坐标的估计位姿。

    std_msgs/Header header;
    geometry_msgs/PoseWithCovariance pose;
    
    
    {
    //其中PoseWithCovariance: geometry_msgs/Pose pose; float64[36] covariance; //其中geometry_msgs/Pose: geometry_msgs/Point position; geometry_msgs/Quaternion orientation;
    }

    2.geometry_msgs/TwistStamped

    std_msgs/Header header
    geometry_msgs/Twist twist
    // Twist 速度(1)geometry_msgs/Vector3 linear 线速度
    //          (2)geometry_msgs/Vector3 angular角速度

    3.sensor_msgs/NavSatFix

    #include <sensor_msgs/NavSatFix.h>
    
    std_msgs/Header header;
    //head.stamp:指此测量的ROS时间
    //header.frame_id:是卫星接收器报告的参考帧,通常是天线的位置。
    
    sensor_msgs/NavSatStatus status; //# 卫星定位状态信息
    /*int8 STATUS_NO_FIX =  -1        # 无法确定位置
    int8 STATUS_FIX =      0        # 未能精准定位
    int8 STATUS_SBAS_FIX = 1        # with satellite-based augmentation
    int8 STATUS_GBAS_FIX = 2        # with ground-based augmentation
     
    int8 status
     
    # Bits defining which Global Navigation Satellite System signals were
    # used by the receiver.
     
    uint16 SERVICE_GPS =     1
    uint16 SERVICE_GLONASS = 2
    uint16 SERVICE_COMPASS = 4      # includes BeiDou.
    uint16 SERVICE_GALILEO = 8
     
    uint16 service
    */
    
    float64 latitude;//# 纬度[度],正赤道以北;
    float64 longitude;//# 经度[度],正数在本初子午线的东部,负的是西。
    float64 altitude;//高度# Altitude [m]. Positive is above the WGS 84 ellipsoid
    float64[9] position_covariance;  //#位置协方差
    
    uint8 position_covariance_type;
    uint8 COVARIANCE_TYPE_UNKNOWN=0
    uint8 COVARIANCE_TYPE_APPROXIMATED=1
    uint8 COVARIANCE_TYPE_DIAGONAL_KNOWN=2
    uint8 COVARIANCE_TYPE_KNOWN=3

    未完待续。。。

  • 相关阅读:
    汉诺塔
    排列算法
    线程的实现方式以及各自优缺点&lock比synchronized优势
    事务的隔离级别通俗演义
    JDBC 的Statement&preparedStatement&CallableStatement区别
    JVM工作原理浅析
    java中的超类是什么
    Java之构造器的作用
    Java构造器和方法的区别
    mybatis批量插入报错
  • 原文地址:https://www.cnblogs.com/yrm1160029237/p/12533854.html
Copyright © 2011-2022 走看看