Position Subsystem

Navigation System Overview

To achieve the task of autonomous grooming of the ski hill, our Groomba needs a position and orientation reference in real time. The Groomba needs to know its current location in respect to the area it has to groom, as well as the orientation (direction) that its facing. The navigational system provides both the position and orientation references for the Groomba. The navigational system is divided into 2 sub-systems, the positional sub-system and the orientation- sub-system. The output of the positional sub-system is a set of (x,y) coordinates that serve as a reference for the Groomba's location inside the grooming area in real time. The output of the orientation sub-system is an angle with respect to the Earth's magnetic North pole (more on this later), serving as a reference to the orientation of the Groomba in real time.

Positioning

The positional sub-system employs Bluetooth Low Energy (BLE) Beacons or transmitters placed in key locations, which transmit packets of data constantly to a Scanner or receiver inside of the Groomba. The strength of the Beacon's signal is measured at the Scanner in decibels (dB), ranging from 0 as the strongest signal to -120 as the weakest signal. This Radio Signal Strength Indicator (RSSI) can then be used to estimate the distance between the Beacon and Scanner (more on this later)

The positional reference is calculated using geometry to find the height of a triangle (more on this later). The red lines in the image to the left are the distances from the Groomba to the Beacons estimated using the RSSI measured for each Beacon. This gives us the two sides of the triangle, the third side is a known parameter, the distance between each beacon.

Heron's Formula

Previously we determined the two sides of the triangle on the left, a and c, by estimating the distance between Beacon and Scanner with the measured RSSI value. We stablished that the third side, the base b, is a known parameter and it's the distance between each Beacon. Given a triangle with three different sides, Heron's formula can be used to calculate the area, then solve the area formula for the height of said triangle.

There are two important concepts to understand about this method. Those are the importance of the base of the triangle being the distance between each Beacon, and the importance of calculating the height of said triangle. The base of the triangle being the distance to each beacon is important because, since the Beacons are placed on each corner of the 10-foot by 10-foot grooming area, the line between one Beacon and another is a straight line hence the height of this triangle will be a line perpendicular to the base of the triangle. In other words, the height of the triangle is a line that represents the distance from the base to the point where the sides a and c intersect, which is the point where the Groomba sits, making the height the distance from the Groomba to the base.

By using three beacons, we can create two distinct triangles. One triangle's height is a line that represents the distance in the x-axis and the other triangle's height represents the distance in the y-axis. Hence, we produced a (x,y) coordinate for the Groomba.


Positioning System Output

To the left you can see the respective calculations to generate the (x,y) coordinates of the positional sub-system for the values given in the first diagram above (Positioning).


Bluetooth Low Energy to Ultrawide Band

Following the completing of the design and implementation of the positioning subsystem described above, it became evident that the output of the system was unreliable. The reasons for this are extensive and testing or troubleshooting lead to no improvements in the response of the system. The issue is that the RSSI value generated from the BLE Beacon signals received by the Scanner jumps between a wide range of values very frequently, resulting in inquorate distance estimations by a factor of 2, 3, and even bigger orders of magnitude. My suspicion is that this issue is due to the Bluetooth technology, the Beacon/Scanner hardware, or a combination of both. Determining what is the main cause of this fluctuation on the output would require more time on testing and troubleshooting, as well as better equipment and resources, two things I do not have access to. 

My professor became aware of an Ultra-Wide Band (UWB) module that is used in much the same way that the BLE modules.