-
Notifications
You must be signed in to change notification settings - Fork 17.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add /tf_static publisher of the home position (world->map transform) #28085
Comments
It would be nice to disambiguate, but I assume you don't actually want the Earth center to HOME transformation, but the Earth center to EKF ORIGIN transformation. These two are not the same. you want the transformation (translation, rotation) from Is it then this what you're looking for? https://en.wikipedia.org/wiki/Geographic_coordinate_conversion#From_geodetic_to_ECEF_coordinates I don't know why you would need that, but yeah, I think it can be done. |
One use case is if you want to reference objects between UAV's that do not share a HOME position, while also using a cartesian coordinate system (handy for robotics algorithms due to homogonous transforms between frames make the vector math easier than geodetic). DDS currently uses the Home position to give its cartesian pose relative to it, which is a call to As you hinted, the other origin in AHRS is the EKF origin,, and can be found with a call to I just got some great related info from @srmainwaring . |
I think it would be easier to create a transform from each vehice's
Does that mean that you want to provide lat/lon coordinates from SITL to Gazebo to drive the transformations? Again, probably using the local frame calculated by AP is better suited to a Cartesian world such as Gazebo. |
If you have two vehicles across the globe sharing information, then sharing a home will lead to inaccuracies in the lower level positions of things each relative to each vehicle's
Yes, this works well in either coordinate system. When certain algorithms are written in geodetic space, then it's handy to be able to interface through the simulator through either interface. By supplying the static TF, it would allow simulator users to pick which coordinate system they want for their application, also allow them to have accurate global WGS-84 coordinates of simulator objects even if they do everything else in local cartesian which is handy for debugging against tools such as Google Earth that can read KML. |
Agreed. One thing I don't understand still: |
I haven't figured that out yet, but can share some details when I do. It doesn't need to block this PR. |
Feature request
Is your feature request related to a problem? Please describe.
As a ROS user, I want to know the transform from "world" to "map" in ECEF. This is the location of "home" in ECEF, in other words the transform from the world origin to the local tangent plane that Ardupilot got a home position.
Describe the solution you'd like
Describe alternatives you've considered
When integrating Ardupilot with other systems in DDS, you don't know where home is unless you snapshot the geopose data against the local filtered pose and calculate it. Back-calculating from these two topics is clunky.
Platform
[ ] All
[ ] AntennaTracker
[ ] Copter
[ ] Plane
[ ] Rover
[ ] Submarine
Additional context
Add to the same interface of #23393
The text was updated successfully, but these errors were encountered: