With the development of Internet of Things, the position information of indoor objects becomes more important for most application scenarios. This paper presents an ultrasonic indoor positioning system, which can achieve centimeter-level precise positioning of objects moving indoors. Transmitting nodes, receiving nodes, and display control terminal are needed to constitute the entire system. The system is based on long-baseline positioning technology that uses code division multiplexing access mechanism. There is no limit to the number of receiving nodes as the system works in the up-transmit-down-receive mode. Positioning of a receiving node is found based on ultrasonic Time of Arrival ranging technology. To accurately determine the positioning, there must be at least four or five transmitting nodes. The working radius will not be less than 5 meters when the height is larger than 3 meters. The system uses wideband pseudorandom noise signal called Gold sequences for multiuser identification and slant range measurement. The paper first gives a brief introduction of popular indoor ultrasonic positioning methods and then describes the theory of proposed algorithm and provides the simulation results. To examine the correctness of the approach and its practicality, the practical implementation and experimental results are provided also in the paper.

1. Introduction

With the advent of Internet of Things (IoT) [1], most of the day-to-day objects (things) in the world will have computation and wireless communication capabilities with unique identity (ID) and Internet Protocol (IP) address. In most of the applications of IoT, we need to know the position (exactly or approximately) of the things joining the network [2, 3]. Getting the position information of things is highly important in many applications, and it is referred to as Location Based Service (LBS). In commercial applications, LBS describes a value-added service that provides an object’s position information with the support of Geographic Information System (GIS) platform. The position information can also be acquired through mobile telecommunications operator’s radio network or an external positioning method. LBS serves two purposes: first, to determine the location of a mobile device or user; secondly, to provide other information services related to location.

Global Positioning System (GPS) signal is typically unreachable in indoor environments, which makes it necessary to have an indoor positioning technology to accurately determine the position of an object indoors. The indoor positioning technology is used as an auxiliary or an alternative of GPS, where the GPS satellites’ signal is weak as it reaches the earth but cannot penetrate a building.

Indoor positioning is highly useful in many applications, such as public safety and emergency response, positioning guide, social demand, market promotion demand, and large data applications. For public safety and emergency response applications such as fire disaster and rescue workers would be highly effective if victims of the disaster can be accurately localized, within the building to the granularity of a floor or a room number. In day-to-day life, LBS can help in identifying the location of a person’s car in an underground parking lot or the location of milk in a supermarket. Indoor positioning can help in finding the nearest restaurant in a big shopping mall and the way to get there.

Indoor positioning refers to the process of determining the position of objects in an indoor environment. In many cases indoor positioning makes use of wireless communication, base station location, Inertial Navigation System, and a variety of similar techniques. Common indoor positioning technologies include [46] Wireless Fidelity (WiFi), Bluetooth, infrared, Radio Frequency (RF), Ultra Wide Band (UWB), Radio Frequency Identification (RFID), ZigBee, and Received Signal Strength (RSS) ultrasound. The authors in [4, 5] summarize these common indoor positioning methods and evaluate them with respect to positioning accuracy, coverage, cost, and complexity as shown in Table 1. These technologies are also important for the wireless sensor network research [79].

The technique proposed in [10] is based on a range-based positioning method using the physical layer of ZigBee. The authors studied a classic case which shows that the initial position accuracy plays an important role in accurate indoor positioning. Cotera et al. [11] applied trilateration algorithms that utilize radio frequency range estimation and their approach results in ±10 centimeters accuracy, with an overall of ±4.09 centimeters. The authors in [12] studied several Wireless Local Area Network (WLAN) indoor positioning methods based on RSS technology and studied appropriate selection criterion for grid size and Access Point (AP) reduction. Weighted Average Tracker (WAT) [13] method is also based on RSS where the accuracy is better than the traditional methods but is still of the order of one meter. The database sizes required both for the learning and for the estimation phases grow rapidly as the network coverage areas and the number of access points number increase. Spectral compression [14] approach has significantly reduced the database sizes for both the system learning and the estimation. Zheng et al. [15] proposed indoor 3D positioning system that utilizes low cost foot mounted MEMS (Micro Electro Mechanical System) sensors. In this approach, the range estimation deviation is about 1%, and the estimated coordinate errors are below one percent of the total transmission distance. Zhuang et al. [16] propose a two-filter integration approach for indoor positioning with MEMS sensors. The experiment results showed that the method has the accuracy of about several meters, despite the improvements in both the positioning accuracy and the computational efficiency.

In addition, to optimize the cover range and positioning accuracy, Domingo-Perez et al. [17] proposed an optimal sensor deployment method for indoor localization. Authors in [18] proposed a passive positioning method by adopting special characteristics of MIMO (Multiple Input Multiple Output) system where the target does not need to carry a positioning device. The system can reach accuracy about 1 meter. In a hospital environment, Haute et al. [19] evaluated a system with one anchor node in every two rooms. By adopting fingerprinting approach, the research points out that the positioning accuracy is about 1.21 meters and room determination accuracy is about 98%.

The above-mentioned positioning technologies take into account the interior structure of the indoor environment. The positioning accuracy between different methods has large variance. To achieve high precision in positioning, three ranging technologies such as ZigBee and ultrasonic are the most appropriate. Normally, ZigBee technology and RF technology keep the positioning accuracy up to meter scale, while ultrasonic technology can provide accuracy within centimeter range.

The rest of this paper is organized as follows: Section 2 gives a brief introduction of popular indoor ultrasonic positioning methods. The theory of proposed algorithm is described in Section 3 and the simulation results are provided in Section 4. To examine the correctness of the approach and its practicality, Section 5 describes the practical implementation and experimental results. Finally, Section 6 provides the conclusion and some remarks for future work.

Compared with the nonacoustic methods discussed above, acoustic or ultrasonic methods can get higher accuracy in indoor positioning with lower cost. Ultrasonic positioning system is similar to radar and sonar systems, mainly including three parts: a transmission module, a transmission channel, and a receiver module. The frequency of the ultrasonic wave used in the indoor positioning system is mainly about 40 kHz [20], which can be narrow-band signal or wide band signal. Typical ultrasonic location systems mainly include: active bat method, cricket method, and dolphin method. Among these, the cricket method possesses lower cost. This method was developed by the Massachusetts Institute of Technology of United States.

Lindo et al. [21] introduce two multiband waveform synthesis methods for ultrasonic indoor positioning systems. The horizontal error of their results is below 35 cm. With a portable grid of beacons and a few fixed anchors, De Angelis et al. [22] proposed an ultrasonic positioning system, which, in a system of 7 beacons, exhibits subcentimeter positioning accuracy in a range of up to 4 m. The approach proposed in [23] uses near-ultrasonic sound (17 kHz) with the errors less than about 2 cm in a noisy environment. The range of the positioning is within one meter square. To increase the accuracy of range estimation, the authors in paper [24] applying cross correlation technique use the receive signal and the reference stored in memory. Taking into account the possibility of loss of the ultrasonic positioning signal, based on Inertial Units measuring (IMUs), the literature [25] proposed a combined moving target location method, which utilizes extended Kalman filter (EKF) and Least Squares Support Vector Machine (LS-SVM). In the research of indoor positioning system, the energy strategy [2628] is also important. This is mainly because the nodes used in the system can only be supplied by battery in most of the cases.

Ultrasonic indoor positioning system (IPS) can be classified using the following different criteria:(i)Based on signal transmission and reception, IPS can be up-transmit-down-receive or up-receive-down-transmit;(ii)Based on distance measurement techniques, IPS can be classified as Time of Arrival (TOA) systems and Time Difference of Arrival (TDOA) system;(iii)Based on node synchronization, there are transceiver synchronization system and transceiver asynchronization system.

In general, ultrasonic positioning system not only has better positioning accuracy than radio frequency system but also has lower cost.

For the up-transmit-down-receive system, the ceiling nodes transmit ultrasonic signal, the ground nodes received ultrasonic signal, similar to the functioning of GPS positioning system; for the up-receive-down-transmit system, the ceiling nodes receive the ultrasonic signal transmitted by the ground node, similar to the Beidou satellite positioning system. TOA method needs to add the special time stamp into the transmit signal and use the signal arrival time to calculate the target space coordinates. On the other hand, TDOA method does not need the time stamp; it can directly calculate the space position of the target through the time difference of subsequent transmissions.

3. Theory of the System

Our proposed ultrasonic positioning system adopts TOA ranging technology to find the position of the receiving node. Our system consists of three types of nodes: control node, transmitter node, and receiver node, as shown in Figure 1.

In the ultrasonic location system, the most important nodes are anchor nodes and mobile nodes. Anchor nodes are generally fixed on the roof, while mobile nodes move with the target. When system is working, the transmit signals can be emitted from either the anchor node or the mobile node, corresponding to the receiver can be either the mobile node or the anchor node. The first situation is called up-transmit-down-receive mode and the second situation is called up-receive-down-transmit mode. Both the two modes can achieve the positioning function. The system mentioned here uses up-transmit-down-receive pattern. The transmitter nodes are mounted on the ceiling at preset positions, and they transmit ultrasonic signals. While the receiver node receives the ultrasonic signals from the transmitter nodes, and calculates the position itself. It then sends the position information to the console node through WiFi module.

The positioning algorithm uses spherical intersection method to determine the coordinates of the mobile receiver node. Assume that the system has transmitter nodes where the coordinates of each transmitter node are , where . To calculate the coordinates of the receiver node, , we form the following spherical equation set (equation (1)) with the position and the slant distance between each transmitter and receiver node:where are the calculated distance with the TOA technique.

We can then estimate the position of the receiver node by using the least squares method, as shown in (2):where are the estimated values of () and the intermediate parameters are as follows:where and .

In addition, the estimated value should be given by the following equation (4), and the choice of positive and negative values should be according to the actual situation.

The accuracy of positioning is closely related to the geometry of the transmitter nodes and the receiver node. The error in positioning due to the geometry is called Position Dilution of Precision (PDOP). PDOP is a three-dimensional position precision factor. For a better positioning accuracy, the PDOP value should be small.where VDOP means Vertical Dilution of Precision and HDOP means Horizontal Dilution of Precision. HDOP is the square root of Latitude DOP (LaDOP) square plus longitude DOP (LoDOP) square:

In up-transmit-down-receive system the number of receiver nodes is not restricted and the positioning operation is done by the receiver nodes, so the resource demand is more for receiver nodes compared to the transmitter nodes. The system is suitable for location and navigation integration services.

Velocity of ultrasonic waves is dependent on the ambient temperature. It is necessary to correct for the velocity of sound with respect to the temperature in order to ensure high precision in slant range measurement (centimeter to subcentimeter level).where is the environment temperature (°C); the sound speed is about 344 m/s at 20°C.

The console node can be any equipment (mobile phones or computers) which can access the WiFi network. After installing the indoor positioning software, user can view the spatial coordinate position of the moving object in real time and even realize the planning and management of the target trajectory.

4. Simulation

Multiple access to a medium can only be successful if the signals transmitted by different users are orthogonal to each other in the signal space: Frequency Division Multiple Access (FDMA) is orthogonal in the frequency domain; Time Division Multiple Access TDMA is orthogonal in the time domain; and Code Division Multiple Access CDMA is orthogonal in the users’ characteristic waveforms. With orthogonal codes, the CDMA can achieve the multiuser positioning in the same time while using the same frequency band; the positioning efficiency is the highest. Gold sequence is the most common code used in CDMA system.

In our simulation and our implementation, the system uses wideband pseudorandom noise (PRN) signal, Gold sequence for multiuser identification (CDMA) and slant distance measurement. This helps in handling more users and improving the positioning accuracy.

Our typical application simulation scenario is shown in Figure 2: at least four transmitter nodes are installed on the ceiling, distributed evenly on the circumference of a circle of radius of 0.5 meters, and coordinates are (0, 0.5, 3), (0, −0.5, 3), and (0.5, 0, 3), (−0.5, 0, 3), respectively. The coordinates have a standard deviation (STD) of 1 cm, and the receiver node is at the coordinate (0.1, 0.2, 0).

The simulation results of 1000 times of Monte-Carlo experiments are shown in Figures 3 and 4. The red asterisk “” in the plots marks the actual position of the receiver node, the green dots represent the results from 1000 simulations, and the blue plus sign represents the mean of the 1000 times’ estimated position. The four simulation results correspond to the range estimation with standard deviations of 1 cm, 2 cm, 5 cm, and 10 cm.

It is evident from Figure 4 that with an increase in the range estimation standard deviation, the positioning error increases. When the range measurement standard deviation is in the order of one centimeter, a good positioning result can be achieved. In addition, the location error is large when the range error is large. As shown in Table 2, when the range estimate standard deviation is about 1 centimeter, statistics show that the coordinates of the estimated standard deviation is about 2.2 cm and standard deviation is about 2.7 cm.

PDOP from the above simulations is 2.17, 4.12, 10.86, and 21.86 corresponding to range estimation standard deviations 1 cm, 2 cm, 5 cm, and 10 cm, respectively.

Above simulation results show that the positioning accuracy is dependent on range estimation. The following simulation takes into account the radius of the transmitter nodes. In this situation, we set the range estimation standard deviation at one centimeter and then observe the positioning accuracy with the radius of the transmit nodes at 50 cm, 100 cm, 200 cm, and 400 cm, respectively. The positioning results are shown in Figure 5, and we can see that the positioning standard deviation reduces with the increase in the radius of transmitter nodes. The positioning accuracy increases until the radius reaches four meters, but the coordinate STD still remains at about 1 centimeter regardless of any further increase in the transmitter node radius.

The coordinate standard deviation versus the radius of transmit nodes is shown in Table 3.

5. System Implementation

The system module block function setting, the transmitter and receiver circuit implementation, the transducer selection, and so on, all should be carefully considered to achieve high accuracy in an ultrasonic indoor positioning system.

The transmission signal has a decisive influence on the performance of the system. According to the transmitting signal ambiguity function theory, the measurement accuracy is mainly affected by signal frequency bandwidth and SNR (signal-to-noise ratio). Higher transmission signal bandwidth and higher received SNR typically help in achieving higher positioning accuracy. In fact, due to the limitation of ultrasonic transducer’s transmitting response and the channel response, emission signal is limited to a narrow-band signal with bandwidth less than 4 kHz. Received SNR depends on the sound source level, transmission loss and the background noise level, and several other factors. SNR can be estimated by the sonar equation. In general, higher transmitter’s sound level, smaller propagation loss, and lower background noise would result in higher SNR.

Figure 6 shows the block diagram of an ultrasonic signal transmitter node. The digital part includes three modules: (a) generation of the baseband signal, (b) coding pulse shaping, and (c) modulation of the coded signal. The resulting digital waveform can be stored in a register to be transmitted by the controller at regular time intervals. Having a signal amplifier and a band pass filter, before passing the digital waveform to a high quality analog converter, ensures better signal fidelity.

Receiver node is a key technology of the system, which is responsible for Doppler compensation, quadrature demodulation, and sliding correlation of the received signal. It also provides pseudorange measurement input for the positioning module. A block diagram of the receiver node is shown in Figure 7.

After several iterations of design and debugging, the transmitter nodes’ and receiver nodes’ circuits were made, as shown in Figure 8; Figure 8(a) is transmit node and Figure 8(b) is receiver node. This system has a center frequency at 40 kHz and bandwidth of about 4 kHz. The effective working distance can reach up to 10 meters. Receiver nodes are also equipped with a WiFi module to communicate with the console.

The system uses Gold sequence as transceiver signal to complete the CDMA encoding. Figure 9 shows the signals received by the receive node and the corresponding estimated Time of Arrival. In Figure 9(a), the vertical axis means the amplitude of the receive signal corresponds to the A/D transform output range from 0 to 4096, which means 0 refers to −3.3 V, 2048 refers to 0 V, and 4096 refers to +3.3 V, respectively. The horizontal axis corresponds to the sample points, which can be transferred to the time in accordance with the corresponding relationship. Figure 10 shows the positioning result of the system. When the Receiver node is stationery at (0.23, 0.13), we can see that the estimated standard deviation of both and coordinates is less than 2 cm.

Both the simulation result and the field test result show that the method this paper proposed can provide high accuracy in case of indoor positioning. The positioning accuracy from our system is compared with other techniques as shown in Table 4.

6. Conclusion

Position information is important for most of the IoT applications. In this paper, an indoor positioning method is presented and the hardware and software are developed, which includes three kinds of basic nodes: transmitter nodes, receiver nodes, and console node. Transmitter nodes’ spatial position are preset when mounting them onto the ceiling; receiver nodes receive the ultrasonic signal emitted by the transmit nodes and calculate its 3D coordinates. The console node displays the nodes’ positioning results in real time. Our simulation setup and prototype system show that this method can achieve the accuracy of about several centimeters in an indoor positioning system.

Competing Interests

The authors declare that there are no competing interests regarding the publication of this paper.


This work is sponsored by “Qing Lan Project,” Natural Science Foundation of Jiangsu Province of China (no. BK20161195), Open fund of State Key Laboratory of Acoustics (no. SKLA201504), National Natural Science Foundation of China (Grants nos. 61572172, 61571007, and 61273170), Fundamental Research Funds for the Central Universities (2013B18514, 2015B25214, and 2016B10714), “Changzhou Sciences and Technology Program, (nos. CE20165023 and CE20160014),” and “Six Talent Peaks Project in Jiangsu Province, no. XYDXXJS-007.”