localization.proto 2.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081
  1. /******************************************************************************
  2. * Copyright 2017 The Apollo Authors. All Rights Reserved.
  3. *
  4. * Licensed under the Apache License, Version 2.0 (the "License");
  5. * you may not use this file except in compliance with the License.
  6. * You may obtain a copy of the License at
  7. *
  8. * http://www.apache.org/licenses/LICENSE-2.0
  9. *
  10. * Unless required by applicable law or agreed to in writing, software
  11. * distributed under the License is distributed on an "AS IS" BASIS,
  12. * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. * See the License for the specific language governing permissions and
  14. * limitations under the License.
  15. *****************************************************************************/
  16. syntax = "proto2";
  17. package apollo.localization;
  18. import "modules/common_msgs/basic_msgs/header.proto";
  19. import "modules/common_msgs/basic_msgs/geometry.proto";
  20. import "modules/common_msgs/basic_msgs/pnc_point.proto";
  21. import "modules/common_msgs/localization_msgs/localization_status.proto";
  22. import "modules/common_msgs/localization_msgs/pose.proto";
  23. message Uncertainty {
  24. // Standard deviation of position, east/north/up in meters.
  25. optional apollo.common.Point3D position_std_dev = 1;
  26. // Standard deviation of quaternion qx/qy/qz, unitless.
  27. optional apollo.common.Point3D orientation_std_dev = 2;
  28. // Standard deviation of linear velocity, east/north/up in meters per second.
  29. optional apollo.common.Point3D linear_velocity_std_dev = 3;
  30. // Standard deviation of linear acceleration, right/forward/up in meters per
  31. // square second.
  32. optional apollo.common.Point3D linear_acceleration_std_dev = 4;
  33. // Standard deviation of angular velocity, right/forward/up in radians per
  34. // second.
  35. optional apollo.common.Point3D angular_velocity_std_dev = 5;
  36. // TODO: Define covariance items when needed.
  37. }
  38. message LocalizationEstimate {
  39. optional apollo.common.Header header = 1;
  40. optional apollo.localization.Pose pose = 2;
  41. optional Uncertainty uncertainty = 3;
  42. // The time of pose measurement, seconds since 1970-1-1 (UNIX time).
  43. optional double measurement_time = 4; // In seconds.
  44. // Future trajectory actually driven by the drivers
  45. repeated apollo.common.TrajectoryPoint trajectory_point = 5;
  46. // msf status
  47. optional MsfStatus msf_status = 6;
  48. // msf quality
  49. optional MsfSensorMsgStatus sensor_status = 7;
  50. }
  51. enum MeasureState {
  52. OK = 0;
  53. WARNNING = 1;
  54. ERROR = 2;
  55. CRITICAL_ERROR = 3;
  56. FATAL_ERROR = 4;
  57. }
  58. message LocalizationStatus {
  59. optional apollo.common.Header header = 1;
  60. optional MeasureState fusion_status = 2;
  61. optional MeasureState gnss_status = 3 [deprecated = true];
  62. optional MeasureState lidar_status = 4 [deprecated = true];
  63. // The time of pose measurement, seconds since 1970-1-1 (UNIX time).
  64. optional double measurement_time = 5; // In seconds.
  65. optional string state_message = 6;
  66. }