Indoor positioning and navigation
Create Your First Project
Start adding your projects to your portfolio. Click on "Manage Projects" to get started
01 ROS
Our lodge employs a variety of sensors like Lidar, UWB, odometry, and IMU, leading to complex message exchanges within the system. To manage this, I selected ROS, a universal robot operating system. The ROS platform allows us to assign different independent nodes to handle specific tasks and facilitates easy message exchange between nodes.
02 Trilateration
Trilateration is a mathematical method used to calculate the lodge's position relative to the origin anchor. We calculate the distance between the tags and three other anchors. As there will be some error, the calculated point will not exactly match the real position. To minimize this error, we employ the least squares method to refine the calculated result, thus generating more reliable data.
03 Move Base
a) Positioning:
Determining the current and target positions requires at least three coordinate frames: Map, Odom, and Base link. These provide the simplest positioning and are further refined by two additional frames, UWB and IMU, which reduce error.
Map:
This is a fixed coordinate frame that serves as the world coordinate frame.
Odom:
This represents the difference and drift between the position calculated by odometry and the position calculated by the sensor.
Base link:
This represents the position relative to the robot's center.
Sensor:
This provides the sensor-calculated position, which is more accurate than the one calculated by odometry.
These coordinate frames are linked to form a transformation tree, enabling coordinate transformations within the system.
b) Map
To ensure our lodge moves safely through the shopping mall without colliding with obstacles or customers, I have inflated the boundaries in the map. Different costs are assigned to the inflation area based on distance from the boundaries. This informs the robot's path planning, encouraging it to choose the safest and most optimal path.