An ENU tangential plane ROS Transformations package for navigation stacks and planners utility that solves curvature and ellipsoid behavior-based inaccuracies caused by planning in linearised standard geodetic data.
This package is a geodetic conversion package created for the AUVSI SUAS navigation stack. It runs various conversions between GPS, ECEF, NED and ENU co-ordinate frames.
This linearises the co-ordinate frame of any arbitrary map or data structure used by a planner while maintaining the appropriate references to geodetic curvature with a return to the first-order model of the earth as being flat. This Local Tangent Plane(LTP) serves as a local reference direction for representing vehicle attitude and velocity for operation on or near the surface of the earth.
To change the different geodetic systems, functions in include/transforms/geodetic_conv.h can be used:
enu-ros-tf/include/transforms/geodetic_conv.h
Lines 158 to 159 in 5e9cbfe
enu-ros-tf/include/transforms/geodetic_conv.h
Lines 75 to 76 in 5e9cbfe
This package includes an implementation of an Inverse haversine function that provides a GPS/ENU endpoint(as an Eigen Vector2d) given a GPS/ENU start point and a bearing angle clockwise from north.
ENU Frame local GridMap | GPS Points generated by Path Planner |
---|---|