Closed marioney closed 5 months ago
base_link
frame and map
frame are directly connected.
Thanks for the response.
Can you please share your gnss_poser
configuration file?
I see a gnss_base_link
frame I your tf tree, is it configured in there?
Yes, I have configured gnss_base_link
, just like in the latest Autoware.
https://github.com/autowarefoundation/autoware.universe/blob/3683131483dfdfc14f1490cb061c3589701a53ea/sensing/gnss_poser/config/gnss_poser.param.yaml
But then I have two questions:
gnss_base_link
and base_link
?gnss_base_frame
to gnss_base_link
and not gnss_link
which is what's set on the sensor_kit_descriptionI think the tf between map
and gnss_base_link
is not needed, because gnss_base_link
should be on-board the vehicle, and therefore have a static tf to base_link
.
What's the relationship between gnss_base_link and base_link?
It's the estimated position of the base_link based on GNSS localization.
Why do you set the gnss_base_frame to gnss_base_link and not gnss_link which is what's set on the sensor_kit_description
"gnss_link" refers to the antenna position of the GNSS receiver.
@marioney Has your question been resolved?
@marioney There is no problem in this report. So I'll close it. Feel free to report anything else if needed.
base_link
frame andmap
frame are directly connected.
@YamatoAndo hello, in this tf tree figure, which component published the tf from gnss_base_link to base_link ? I have launched gnss_poser.launch.xml, but terminator displays that "Please publish TF gnss_base_link to base_link" Sincerely !
Checklist
Description
The
gnss_poser
package broadcasts a tf betweenmap_frame
andbase_frame
tf in https://github.com/autowarefoundation/autoware.universe/blob/b44fb2014d241e656a56c0cf8d848866b33bd8b3/sensing/gnss_poser/src/gnss_poser_core.cpp#L196 and https://github.com/autowarefoundation/autoware.universe/blob/b44fb2014d241e656a56c0cf8d848866b33bd8b3/sensing/gnss_poser/src/gnss_poser_core.cpp#L376When I use this package in combination with
ndt_scan_matcher
to give an initial position or to use theregularization
option, the result is a duplicate of the tf betweenbase_frame
andmap
, one published byndt_scan_matcher
and the other bygnss_poser
If I use a different value for the
map_frame
parameter ofgnss_poser
thenbase_frame
will have two parents and yield an unvalid tf tree structure.Expected behavior
gnss_poser
package should only broadcast this tf if explicitly required by the user via a ros param.Actual behavior
As describe above,
gnss_poser
package broadcast this tf all the time.Steps to reproduce
gnss_poser
ndt
as option for pose localization (Default)Versions
Possible causes
No response
Additional context
This is a duplicate of #6676 (now closed) which was created Originally created from a post in a discussion https://github.com/orgs/autowarefoundation/discussions/4088#discussioncomment-8875963