The conceptual schematic of a 3D positioning system based on ultrasonic beacons is shown in Figure 6
. The transmitters are connected to an amplifier and timing circuit, which is configured to dispatch 200 microsecond (eight cycles) bursts. The transmitter circuit receives a trigger from the microcontroller, which initiates the timing of the ultrasonic signals being sent. The receiver circuit consists of an amplifier and sends a binary 1 value to the microcontroller upon receiving the ultrasonic signal. Errors due to multipath have been neglected in the positioning system.
An experimental setup was built in an indoor environment for testing of the 3D positioning system. The setup consisted of six 40 KHz transmitters mounted in a 2.4 m by 0.9 m grid on the ceiling (Figure 7
a) and a receiver circuit connected through a microcontroller to the computer (Figure 7
b). Initially, calibration of the Time-of-Flight measurements was conducted on a test bench. The conversion factor for converting the Time-of-Flight measurements to distance was obtained from the calibration process. This conversion factor was subsequently introduced in the positioning algorithms for post processing as well as for real time dynamic positioning algorithms. The microcontroller employed was QSK62P Plus [22
]. QSK62P Plus is a 16-Bit microcontroller that has Serial Input/Output (I/O) that supports Serial Peripheral Interface (SPI) bus to the computer. The QSK62P microcontroller was chosen specifically among the available options as it had the required number of I/O and SPI ports. The frequency of the microcontroller was 3 MHz for time-of-flight measurements. This allowed for very high-resolution distance measurements. However, there are certain offsets introduced, both constant and variable, due to the time delays in various stages of the 3D positioning circuitry, discussed further in Section 4.1
The timing data, which was in the form of unprocessed microcontroller ticks, was sent to the computer through the serial port interface. The data was received by MATLAB for further processing to calculate the receiver coordinates.
The 3D positioning system was tested in terms of its linear and angular range performances, effects of an obstruction in the path of the transmitter-receiver pair, and real time positioning of a moving receiver. The experimental setup consisted of an area of 3.6 by 2.4 m and a height of about 2.8 m.
Based on component characteristics, signal power, and on nominal background noise figures, the calculated nominal range of the ultrasonic system was about 3 m, though measurements up to 4 m were recorded. The range could be extended by improving the circuitry or procuring off the shelf commercially available hardware. With a higher range, a larger area could be covered with fewer anchors. The limited range helped to mitigate the effects of errors introduced due to multi-path reflections. The origin of the global coordinate system corresponded to a point on the floor with the Z
axis perpendicular and the X
axes parallel to the transmitter arrangement. A total of 256 points were measured and each point was an average of three readings. Eliminating the points where the coordinates could not be calculated due to range limitations, the number of points reduced to 196. The linear range distribution obtained is shown in Figure 9
The angular range of the ultrasonic sensors is an important parameter in determining the configuration of the transmitters for a given volume. Ultrasonic sensor datasheets normally state that the sensors have a conical range map, with an opening angle of about 45° [23
]. Due to its high relevance for operational implementations, the angular range of all six transmitters was thoroughly monitored during the entire experimental campaign of the 3D positioning system. Since all transmitters were of the same configuration, they were expected to behave similarly. Coordinate transformations from the global reference system to coordinate systems with the origin at the receiver were performed. Although there was no separate experimental investigation performed to assess the angular detection range of the ultrasonic sensors, the angular range data for all receiver positions from the experiments showed a coverage exceeding 45°, as shown in Figure 10
, which is in accordance with the sensor datasheet.
To analyse the effect of obstruction on the transmitter-receiver pair, a balloon with about a 22 cm diameter was used. The balloon was made to traverse a fixed path parallel to the X-axis of the global coordinate system at three different heights (Z coordinates), i.e., 0.9, 1.4, and 2.2 m, respectively. The transmitter ticks (raw microcontroller data for distance) for each of the transmitter-receiver pairs were measured at regular intervals. The ticks do show an effect as the balloon passes over the transmitter-receiver pairs. The impact of obstruction varies for the transmitters, owing to the dissimilar transmitter-receiver orientations and the distance of the obstruction from the transmitters. However, the transmitter ticks change for every transmitter when the obstruction comes above or near the transmitter-receiver line of sight, when visualized in the X-Z plane. The sensors, all being in range, should never give a zero tick. Hence, the ticks that were zero can solely be attributed to the obstruction. It is interesting to note that the ticks tended to increase in value before going to zero in most of the cases. This suggests some sort of bending of sound waves off the surface of the obstruction before they reach the receiver. There needs to be more extensive experiments before conclusive evidence can be provided about the impact of obstructions. However, obstructions can have an impact on system performance and their presence should be avoided for more efficient performance of the 3D positioning system.
shows the sample readings taken for static analysis of the 3D positioning system, with the transmitter arrangement depicted as well. The errors in calculated position with respect to the actual coordinates are also analysed. The error distribution is observed to be roughly Gaussian, as shown in Figure 12
. Table 1
lists the statistical data (mean and standard deviation) of the errors in all three axes. It is observed that the error in the Z
coordinate is considerably higher than in the X
coordinates, which is intuitive as the transmitter grid is arranged in an X
plane. Table 2
lists the position errors.
Dynamic tests were also performed on the receiver to evaluate the positioning system’s performance as the receiver moved within the test volume. The receiver was moved at a speed of about 3 cm/s in a straight line and in a circle, as shown in Figure 13
and Figure 14
, respectively, and the motion of the receiver was captured by the 3D positioning system in real time. Readings were taken for straight line motion and for motion in a circle. An outlier point was found to be erroneous in all X
, and Z
coordinates, as the coordinates were coupled. There was a latency of about 1.98 s between two successive position calculations, which was primarily due to the time lag introduced because of data transmission to the computer for the position computation. This explains the presence of about 15% outliers in dynamic tests.