Skip to content

Commit 7089657

Browse files
author
Felix Exner
committed
Added FAQ section about why calibration is extracted separately
1 parent b466518 commit 7089657

File tree

1 file changed

+15
-0
lines changed

1 file changed

+15
-0
lines changed

README.md

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -246,3 +246,18 @@ This is a known issue and unfortunately we don't have a solution for this. The N
246246
seems to not compile with every kernel. We recommend to use a multi-machine ROS setup in this
247247
situation where a realtime-system is running the robot driver and a separate machine is performing
248248
the computations requiring the graphics card.
249+
250+
### Why can't the driver use the extracted calibration info on startup?
251+
This is mainly because parameters are loaded onto the parameter server before any nodes are started.
252+
253+
The `robot_description` concept inside ROS is not designed to be changed while a system is running.
254+
Consumers of the urdf/`robot_description` will not update the model they have been loading
255+
initially. It's not the driver that needs/benefits from this calibrated urdf, it's the rest of the
256+
ROS application.
257+
258+
Additionally: it's good to have this sort of things done in an off-line fashion, as that makes it
259+
predictable. If/when, for whatever reason, the calibration data changes, it's almost always better
260+
to have the files updated because of a conscious decision to do that, instead of automatically,
261+
invisible. Having to run the calibration extraction/transformation as a separate step makes this
262+
possible. If the calibration doesn't match the expected one, there's a reason for that and it should
263+
better be explicitly handled by a human.

0 commit comments

Comments
 (0)