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
Copy file name to clipboardexpand all lines: rep-0105.rst
+70-5
Original file line number
Diff line number
Diff line change
@@ -54,6 +54,8 @@ The ``map`` frame is useful as a long-term global reference, but
54
54
discrete jumps make it a poor reference frame for local sensing and
55
55
acting.
56
56
57
+
It is recommended to align the map with east and north for easier viewing,
58
+
but is not required.
57
59
58
60
odom
59
61
''''
@@ -81,9 +83,31 @@ The coordinate frame called ``base_link`` is rigidly attached to the
81
83
mobile robot base. The ``base_link`` can be attached to the base in
82
84
any arbitrary position or orientation; for every hardware platform
83
85
there will be a different place on the base that provides an obvious
84
-
point of reference. Note that REP 103 [1] specifies a preferred
86
+
point of reference. Note that REP 103 [1]_ specifies a preferred
85
87
orientation for frames.
86
88
89
+
earth
90
+
'''''
91
+
92
+
The coordinate frame called ``earth`` is the origin of ECEF.
93
+
94
+
This frame is designed to allow the interaction of multiple robots in different map frames.
95
+
If the application only needs one map the ``earth`` coordinate frame is not expected to be present.
96
+
In the case of running with multiple maps simultaneously the ``map`` and ``odom`` and ``base_link`` frames will need to be customized for each robot.
97
+
If running multiple robots and bridging data between them, the transform frame_ids can remain standard on each robot if the other robots_frame_ids are rewritten.
98
+
99
+
If the ``map`` frame is globally referenced the publisher from ``earth`` to ``map`` can be a static transform publisher.
100
+
Otherwise the ``earth`` to ``map`` transform will usually need to be computed by taking the estimate of the current global position and subtracting the current estimated pose in the map to get the estimated pose of the origin of the map.
101
+
102
+
In case the ``map`` frame's absolute positon is unknown at the time of startup, it can remain detached until such time that the global position estimation can be adaquately evaluated.
103
+
This will operate in the same way that a robot can operate in the ``odom`` frame before localization in the ``map`` frame is innitialized.
This is an example of a tf tree with two robots using different maps for localization and having a common frame ``earth``.
157
+
158
+
The diagram above uses different frame ids for clarity.
159
+
However for maximum reusability it is recommended to use the canonical frame ids on each robot and use a script to forward information off of the robot.
160
+
When the information is forwarded the frame ids should be remapped to disambiguate which robot they are coming from and referencing.
161
+
162
+
163
+
105
164
Frame Authorities
106
165
-----------------
107
166
@@ -114,6 +173,12 @@ broadcast the transform from ``map`` to ``base_link``. Instead, it
114
173
first receives the transform from ``odom`` to ``base_link``, and uses
115
174
this information to broadcast the transform from ``map`` to ``odom``.
116
175
176
+
The transform from ``earth`` to ``map`` is statically published and
177
+
configured by the choice of map frame. If not specifically configured
178
+
a fallback position is to use the initial position of the vehicle as
179
+
the origin of the map frame.
180
+
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.
181
+
117
182
118
183
Exceptions
119
184
----------
@@ -122,19 +187,19 @@ The scope of potential robotics software is too broad to require all
122
187
ROS software to follow the guidelines of this REP. However, choosing
123
188
different conventions should be well justified and well documented.
124
189
125
-
126
-
127
190
Compliance
128
191
==========
129
192
130
-
This REP depends on and is compliant with REP 103 [1].
193
+
This REP depends on and is compliant with REP 103 [1]_.
131
194
132
195
References
133
196
==========
134
197
135
198
.. [1] REP 103, Standard Units of Measure and Coordinate Conventions
136
199
(http://www.ros.org/reps/rep-0103.html)
137
200
201
+
.. [2] Earth Centered, Earth Fixed Wikipedia article (https://en.wikipedia.org/wiki/ECEF)
0 commit comments