参考: 链接: https://blog.csdn.net/ganbaoni9yang/article/details/50060343.
官方文档:http://docs.ros.org/en/api/geometry_msgs/html/index-msg.html
节点之间仅支持使用消息通讯
### Message types
Accel
AccelStamped
AccelWithCovariance
AccelWithCovarianceStamped
Inertia
InertiaStamped
Point
Point32
PointStamped
Polygon
PolygonStamped
Pose
Pose2D
PoseArray
PoseStamped
PoseWithCovariance
PoseWithCovarianceStamped
Quaternion
QuaternionStamped
Transform
TransformStamped
Twist
TwistStamped
TwistWithCovariance
TwistWithCovarianceStamped
Vector3
Vector3Stamped
Wrench
WrenchStamped
float64 x
float64 y
float64 z
geometry_msgs/Point position # 调用的上面的Point
float64 x
float64 y
float64 z
geometry_msgs/Quaternion orientation #调用的下面的Quarternion
float64 x
float64 y
float64 z
float64 w
float64 x
float64 y
float64 theta
Header header
uint32 seq
time stamp
string frame_id
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] covariance
#这表示具有不确定性的自由空间中的姿势。
#6x6协方差矩阵的行主要表示
#方向参数使用固定轴表示。
#按顺序,参数为:
# (x,y,z,绕X轴旋转,绕Y轴旋转,绕Z轴旋转)
# geometry_msgs/Pose pose #这个又用的是Pose的消格式
# float64[36] covariance #表示协方差
以四元数形式表示自由空间中的方向
float64 x
float64 y
float64 z
float64 w
这表示从坐标框架header.frame_id到坐标框架child_frame_id的转换
此消息主要由tf软件包使用。
包含内容:
std_mags/Header header
uint32 seq #存储原始数据类型
time stamp #存储ROS中的时间戳信息
string frame_id #用于表示和此数据关联的帧,在坐标系变化中可以理解为数据所在的坐标系名称
string child_frame_id # the frame id of the child frame
geometry_msgs/Transform transform
geometry_msgs/Vector3 translation # x,y,z 位置
float64 x
float64 y
float64 z
geometry_msgs/Quaternion rotation #四元数
float64 x
float64 y
flaot64 z
float64 w
*/
以后用一点补一点吧 真题内容太多了 官网里都有
官方文档:http://docs.ros.org/en/api/geometry_msgs/html/index-msg.html
支持节点之间服务和消息通讯
### Message types
Path
MapMetaData
OccupancyGrid
GridCells
Odometry
### Service types
GetPlan
GetMap
Header header
uint32 seq
time stamp
string frame_id
string child_frame_id
geometry_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] covariance
geometry_msgs/TwistWithCovariance twist
geometry_msgs/Twist twist
geometry_msgs/Vector3 linear
float64 x
float64 y
float64 z
geometry_msgs/Vector3 angular
float64 x
float64 y
float64 z
float64[36] covariance
很多消息都是用的geometry里面的msg
比如这句话
nav_msgs::Odometry odom;
odom.pose.pose.position.x = x_pos_;
odom的消息包含:
Header header
string child_frame_id
geometry_msgs/PoseWithCovariance pose
geometry_msgs/TwistWithCovariance twist
官网: http://wiki.ros.org/navigation/Tutorials/RobotSetup/Odom#The_nav_msgs.2FOdometry_Message
第一个.pose用的 geometry_msgs/PoseWithCovariance pose
第二个.pose用的 geometry_msgs/Pose pose
第三个.position用的 geometry_msgs/Point position
第四个.x用的geometry_msgs/Point position中的float64 x
需要一层层耐心查看
节点通讯支持消息和服务
## Message types
DiagnosticArray
DiagnosticStatus
KeyValue
## Service types
AddDiagnostics
SelfTest
std_msgs/Header header
uint32 seq ##序列id
time stamp ##秒和纳秒计时
string frame_id ##TF_frame
diagnostic_msgs/DiagnosticStatus[] status
byte OK=0
byte WARN=1
byte ERROR=2
byte STALE=3
byte level
string name
string message
string hardware_id
diagnostic_msgs/KeyValue[] values
## 与状态关联的值数组
string key
string value
节点通讯支持消息和服务
### Message types
NavSatStatus
JointState
CameraInfo
PointCloud2
Imu
NavSatFix
LaserScan
PointCloud
Range
PointField
Image
RegionOfInterest
CompressedImage
ChannelFloat32
### Service types
SetCameraInfo
Header header
uint32 seq
time stamp
string frame_id
geometry_msgs/Quaternion orientation
float64 x
float64 y
float64 z
float64 w
float64[9] orientation_covariance
geometry_msgs/Vector3 angular_velocity
float64 x
float64 y
float64 z
float64[9] angular_velocity_covariance
geometry_msgs/Vector3 linear_acceleration
float64 x
float64 y
float64 z
float64[9] linear_acceleration_covariance
持续补充中