You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Oct 23, 2025. It is now read-only.
Copy file name to clipboardExpand all lines: rep-0105.rst
+8-8Lines changed: 8 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,9 +18,9 @@ coordinate frames of mobile platforms used with ROS.
18
18
Motivation
19
19
==========
20
20
21
-
Developers of drivers, models, and libraries need a share convention
21
+
Developers of drivers, models, and libraries need a shared convention
22
22
for coordinate frames in order to better integrate and re-use software
23
-
components. Shared conventions for coordinate frames provides a
23
+
components. Shared conventions for coordinate frames provide a
24
24
specification for developers creating drivers and models for mobile
25
25
bases. Similarly, developers creating libraries and applications can
26
26
more easily use their software with a variety of mobile bases that are
@@ -85,7 +85,7 @@ acting.
85
85
**Map Conventions**
86
86
87
87
Map coordinate frames can either be referenced globally or to an application specific position.
88
-
A example of an application specific positioning might be Mean Sea Level [#MSL]_ according to EGM1996 [#EGM96]_ such that the z position in the map frame is equivalent to meters above sea level.
88
+
An example of an application specific positioning might be Mean Sea Level [#MSL]_ according to EGM1996 [#EGM96]_ such that the z position in the map frame is equivalent to meters above sea level.
89
89
Whatever the choice is the most important part is that the choice of reference position is clearly documented for users to avoid confusion.
90
90
91
91
When defining coordinate frames with respect to a global reference like the earth:
@@ -106,7 +106,7 @@ The conventions above are strongly recommended for unstructured environments.
106
106
**Map Conventions in Structured Environments**
107
107
108
108
In structured environments aligning the map with the environment may be more useful.
109
-
An example structured environment such as an office building interior, which is commonly rectilinear and have limited global localization methods, aligning the map with building is recommended especially if the building layout is known apriori.
109
+
An example of a structured environment is an office building interior, which is commonly rectilinear and has limited global localization methods, where aligning the map with the building is recommended especially if the building layout is known apriori.
110
110
Similarly in an indoor environment it is recommended to align the map at floor level.
111
111
In the case that you are operating on multiple floors it may make sense to have multiple coordinate frames, one for each floor.
112
112
@@ -170,7 +170,7 @@ The basic topology should stay the same, however it is fine to insert additional
170
170
**Pressure Altitude**
171
171
172
172
An example of a potential additional coordinate frame is one to represent pressure altitude for flying vehicles.
173
-
Pressure altitude is an approximation of altitude based on a shared estimate of the atmospheric barometric pressure. [#pressure_altitude]_
173
+
Pressure altitude is an approximation of altitude based on a shared estimate of the atmospheric barometric pressure [#pressure_altitude]_ .
174
174
In flying applications pressure altitude can be measured precisely using just a barometric altimeter.
175
175
It may drift in time like odometry but will only drift vertically.
176
176
To be useful a ``pressure_altitude`` frame could be inserted between the inertially consistent ``odom`` frame and the ``map`` frame.
@@ -215,7 +215,7 @@ this information to broadcast the transform from ``map`` to ``odom``.
215
215
216
216
The transform from ``earth`` to ``map`` is statically published and
217
217
configured by the choice of map frame. If not specifically configured
218
-
a fallback position is to use the initial position of the vehicle as
218
+
a fallback option is to use the initial position of the vehicle as
219
219
the origin of the map frame.
220
220
If the map is not georeferenced so as to support a simple static transform the localization module can follow the same procedure as for publishing the estimated offset from the ``map`` to the ``odom`` frame to publish the transform from ``earth`` to ``map`` frame.
221
221
@@ -227,7 +227,7 @@ In an outdoor context map coordinate frame is a euclidian approximation of a vic
227
227
In an indoor context this can be transitioning between two buildings where each has a prior map in which you are navigating or the robot is on a new floor of a building.
228
228
229
229
It is the responsibility of the localization frame authority to reparent the ``odom`` frame appropriately when moving between maps.
230
-
The common implementation of computing the ``map`` to ``odom`` frame as the results of subtracting the ``odom`` to ``base_link`` from the localization fix ``map`` to ``base_link`` will take care of this implicitly when the choice of which ``map`` frame changes.
230
+
The common implementation of computing the ``map`` to ``odom`` frame as the results of subtracting the ``odom`` to ``base_link`` from the localization fix ``map`` to ``base_link`` will take care of this implicitly when the choice of the ``map`` frame changes.
231
231
232
232
**odom Frame Consistency**
233
233
@@ -245,7 +245,7 @@ If the vehicle travels a long enough distance that the distance from the ``odom`
245
245
This is especially true of 32-bit floating point data used in things like pointclouds.
246
246
If distances on this order are encountered a systematic reset of the ``odom`` frame origin may be required.
247
247
If centimeter level accuracy is required the maximum distance to the ``odom`` frame is approximately 83km. [#floating_point]_
248
-
There is not a standard solution to this, systems with this issue will need to work around it.
248
+
There is not a standard solution to this; systems with this issue will need to work around it.
249
249
Potential solutions include additional coordinate frames in which to persist obstacle data or to store obstacle data, or using higher precision.
0 commit comments