Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
I didn't find a standard representation for data coming from an AHRS sensor, so here's a first draft for how we could use some messages from
common_interfaces
.I'm not sure about the frame of reference for the IMU values, it would be good to document them.
Another thing to consider is to break this message apart and publish each standard message on a separate topic. The advantage of that is to have immediate access to all the existing tooling around the standard messages, like visualizing IMU data on RViz, plotting lat/lon to a map, and so on.
Let me know what you think, @andermi !
This is the mapping from the previous fields to the new ones:
header
header
(no change}roll_angle
,pitch_angle
yaw_angle_true
imu.orientation
(this is a quaternion, not RPY)x_rate_corrected
imu.angular_velocity.x
(stays as rad/s)y_rate_corrected
imu.angular_velocity.y
(stays as rad/s)z_rate_corrected
imu.angular_velocity.z
(stays as rad/s)x_accel
imu.linear_acceleration,x
(the message documentation recommends m/s^2 instead of g)y_accel
imu.linear_acceleration.y
(the message documentation recommends m/s^2 instead of g)z_accel
imu.linear_acceleration.z
(the message documentation recommends m/s^2 instead of g)n_velocity
ned_velocity.x
e_velocity
ned_velocity.y
d_velocity
ned_velocity.z
latitude
gps.latitude
longitude
gps.longitude
altitude
gps.altitude
x_rate_temp
x_rate_temp.temperature
(still in Celsius)