This work addresses the problem of tracking mobile robots in indoor wireless sensor networks (WSNs). Our approach is based on a localization scheme with RSSI (received signal strength indication) which is used widely in WSN. The developed tracking system is designed for continuous estimation of the robot’s trajectory. A WSN, which is composed of many very simple and cheap wireless sensor nodes, is deployed at a specific region of interest. The wireless sensor nodes collect RSSI information sent by mobile robots. A range-based data fusion scheme is used to estimate the robot’s trajectory. Moreover, a Kalman filter is designed to improve tracking accuracy. Experiments are provided to assess the performance of the proposed scheme.

1. Introduction

Mobile robots have the capability of moving around in their environment and are able to perform tasks without being fixed to one physical location. Some examples of mobile robots are domestic robots and automatic guided vehicles (AGV), which are used today in the home, industry, the military, and security environments. In fact, there is a high demand for mobile robots to use in hard-to-reach and hazardous areas [1]. In such scenarios, mobile robots are often operated semiautonomously or remote-controlled from a safe distance. In order to ensure mobile robots operate correctly, system must ensure a constant monitoring in mobile robots’ motion parameters.

The problem of mobile robot tracking refers to the extraction, detection, identification, and tracking of the mobile robot from its environment to obtain motion parameters such as position, trajectory, velocity, and acceleration of the mobile robot. In many mobile robot applications, the robot should know its motion parameters in order to complete some typical tasks. For example, it is crucial for a traction control robot to know its motion parameters before changing its speed and moving direction in order to walk in a specified trajectory.

There are two solutions to tracking indoor mobile robots. One is to start at a known location and track the robot’s position locally using methods such as odometry or inertial navigation [1]. Although these methods have been proven to be efficient and provide good short term position estimates, they suffer from unbounded error growth due to the integration of minute measurements to obtain the final estimate [2]. The other is to estimate the robot position globally using external sensors. GPS provides a sufficient and reliable way to track mobile robots, but it cannot be used indoors. Wireless sensor networks (WSNs) are often used to track indoor mobile robots.

WSNs deploy a large number of wireless sensor nodes which can sense, process, and communicate in a specified field. WSNs are used in monitoring and detecting specific events in specific environments. In general, WSN nodes have some characteristics as follows: (1) limited power: most wireless nodes are equipped with a battery and it is difficult to change or charge the battery; (2) fault tolerance: WSN should complete its task even if some wireless nodes malfunction or leave and the network is under enemy intrusion and interference; (3) dynamic topology: wireless nodes are often deployed at random; WSN should autonomously form a network to transfer interested information effectively; (4) ability to withstand harsh environmental conditions: wireless sensor nodes are often deployed in harsh environments such as a battle field, a nuclear plant, and outdoor environments; (5) heterogeneity of nodes: in a WSN, there are often different nodes which have different sensor equipment, battery levels, communication ability, and so on; and (6) large scale of deployment: WSN often consists of millions of inexpensive sensor nodes.

Target tracking is a typical WSN application. For example, it is especially useful in such applications as tracking emergency rescue workers, tracking military targets in modern battlefield scenarios, and monitoring traffic in transportation systems. In addition to the general advantage of tracking indoor mobile robots, WSN is able to forward the gathered tracking data from the deployed sensors to a central observation point, which is needed in most scenarios. Target tracking in wireless sensor networks has received more and more attention in recent years [3]. The accuracy of localization and saving energy are always two critical issues because of the limited power and wireless bandwidth of sensor nodes.

The main contribution of this paper is to develop a realistic tracking scheme. We consider the problem of tracking a mobile robot moving through a particular indoor target region. In our system, wireless sensor nodes equipped with a wireless transceiver are deployed in the target region. The wireless sensor nodes keep listening. If they detect a tracking request from a mobile robot, they sample the signal strength of the tracking request and relay the measured samples to a central observation point. The moving robot periodically broadcasts a tracking request as it travels, which is captured by the wireless sensor nodes that are located near the robot. A location algorithm as well as a Kalman filter is used to track the mobile robot in the central observation point.

In this work, we have conducted experiments on this tracking system to study tracking performance. The metric that we have used to evaluate the performance of the system is track estimation error, that is, the distance between the estimated and the actual location of the mobile robot.

The rest of this paper is organized as follows. Section 2 summarizes related work. In Section 3, we propose a framework for tracking mobile robots and give a brief overview of our problem and the discrete-time linear state-space model of mobile robot. RSSI (received signal strength indication) based moving robot position estimation is presented in Section 4. Section 5 details the Kalman filter which is used to improve tracking accuracy. Section 6 introduces the experiment and results. Finally, Section 7 concludes the paper.

We address the data fusion algorithm in the indoor mobile robot tracking application of WSN. Mobile robot tracking is necessary when it does not follow a predictable path. Mobile robot tracking solutions require a real-time location estimation algorithm. Mobile robot tracking can be viewed as a sequential target location estimation problem. Therefore, most target localization approaches such as received signal strength (RSS), time of arrival (TOA), time difference of arrival (TDOA), signal angle of arrival (AOA), and their combinations [4, 5] are able to track mobile robots. Meanwhile, different filters such as the Kalman filter, the extended Kalman filter, and the particle filter were used to improve tracking accuracy.

Klančar et al. [6] proposed a vision system for mobile robot tracking. Ohmi et al. [7] implemented, tested, and compared different calibration techniques (linear and nonlinear methods, with and without lens distortion) in 3D-particle tracking velocimetry. Mazo Jr. et al. [8] presented a sensor fusion scheme that tracks the motion of a moving target by a team of mobile robots. Kuang and Morris [9] put forward an ultrasonic tracking system which can track high-speed robot motion. The ultrasonic tracking system estimates the frequency of the interference signal and a wavelet filter constructed with wavelet packet filter banks to improve tracking accuracy. All robots in the scheme have a directional sensor. Langerwisch and Wanger [10] proposed a system which tracks a mobile robot in a feature-based map using a 2D laser rangefinder and wheel odometry. Ramya et al. [3, 11] proposed a cooperative tracking method which each sensor node stores neighbor node identifier, intersection points of sensing circle of the node. Zhao [12] and Bhatti and Xu [13] used the detection duration of each sensor as a weight and performed line fitting in a time window to estimate target position. Astudillo et al. [14] presented an optimization method inspired on the chemical reactions to address the tracking problem for the dynamic model of a unicycle mobile robot by integrating a kinematic and a torque controller based on fuzzy logic theory. Cui et al. [15] proposed a stochastic Lagrangian model to describe the motion of a two-link planar rigid robot manipulator in random vibration environment. Moreover, they designed a state feedback controller such that the error system is 4th moment exponentially practically stable. Kim et al. [16] proposed Kalman filter (KF) based recursive algorithms for distributed state estimate based on the sign of innovations (SOI). In the scheme, each sensor is used to detect the target sound and compute the state and observation predicted estimate. Meanwhile, some authors [3, 12, 13, 1622] used the particle filters (PFs) for target tracking in WSN environments. However, though PF can have lower computational complexity [23, 24], it has the major drawback that the error propagates through the sensor network [1623]. In order to compensate, as an improvement over PF, Ristic et al. [24] present a variational filter (VF) for target tracking which is claimed to be able to track targets in near random motion with high accuracy. Su et al. [25] formulate WSN topology design, subject to random link failures and to a communication cost constraint, as a constrained convex optimization problem which improves significantly the convergence speed of the consensus algorithm and can achieve the asymptotic performance of a nonrandom network at a fraction of the communication cost. Wu et al. [26] proposed a sliding mode control law which is synthesized to drive the system trajectories onto the predefined sliding surface in a finite time. Zhang et al. [2730] proposed remote proportional-integral-derivative controller, controller, and robust observer-based controller for networked control systems which are subject to network-induced delays and missing data.

All the previously mentioned studies use the power law which excludes the Doppler effect so that their detection model and track results are applicable only for very low speed targets. Moreover, the computational complexity, especially for PF and VF, is so high that their trackers may be costly for real world WSN system.

3. System and Model

3.1. Robot Tracking Framework in Indoor Wireless Sensor Network

The framework proposed in this study is used to track mobile robots in an indoor wireless sensor network environment. As shown in Figure 1, there are some key network entities in the framework.(1)Wireless sensor nodes. This is designed to realize three functions as follows. First, it gathers RSSI information of moving objects. Second, it realizes information fusion about position information of moving objects from different wireless sensor nodes in order to get more accurate position information and decrease the wireless sensor network load. Last, all of them cooperate to transfer position information of moving objects to sink. All of them are equipped with a Zigbee module.(2)Sink. It is a specialized wireless sensor node. It not only has the functions as other wireless sensor nodes, but also it can transfer information to tracker.(3)Tracker. It is designed to gather position and path information of moving objects and show them to interested people.(4)Mobile Robot. It is a wireless sensor node located at a robot such as vehicle. It sends information frequently through a Zigbee module in order that wireless sensor nodes can receive its RSSI information.

It should be noticed that if moving objects leave track area as shown in Figure 1, the wireless sensor network may not receive RSSI information of moving objects, and the tracker will not show its position.

3.2. Problem Statement

We consider a sensor network of anchored nodes at the positions denoted by a set of 2-dimensional vectors. The anchor nodes are deployed in known locations to provide RSSI information. A moving robot travels nearby, whose maneuver is not known in advance. The moving robot is equipped with a signal emitter whose signal transmission is measured by the anchor sensor nodes out of all anchored nodes. The RSSI information acquired by the anchor nodes is sent to a central observation point. The central observation point executes the tracking algorithm and produces the estimates.

In order to describe the moving robot’s kinematics and its dynamical behavior, the mobile robot tracking problem is formed in a discrete-time linear state-space approach.

3.3. Discrete-Time Linear State-Space Model

The state equation describes the time evolution of the state-vector. The system is considered to run for a total amount of time denoted as , which is divided into several time steps in terms of the sampling period. The state vector represents all the relevant information required to describe the system. Hence, at each time step , the state vector to be estimated comprises of the planar coordinates and the two axis velocities of the mobile robot. At each time step an integer regime variable indicates which model is in use during the sampling period from , .

The model can be written as a standard discrete-time linear Gaussian state-space equation for continuous robot movement: where is state matrix and is the time interval between samples.

is the disturbance transition vector defined as a two-dimensional random speed vector with covariance matrix being while .

The measurements vector contains the measurements that are made available to the system. The observations in this case correspond to the position of the mobile robot. Thus, at each time step , the measurements equation provides the mathematical association between the observations vector and the state-vector : where is the observation vector of the moving robot position. is the time-invariant measurement matrix mapping the state of the system to observation vector where is the output matrix and is a noise vector sampled from a known distribution that represents the additive measurements noise.

In order to get an estimation of , a RSSI-based moving robot position estimation algorithm is used in this study.

4. RSSI-Based Moving Robot Position Estimation

There are two categories of algorithm to estimate target position in wireless sensor networks. The former is range-based algorithms that use absolute point-to-point distance estimates (range) or angle estimates for calculating location. The latter is range-free algorithms that make no assumption about the availability or validity of such information. In general, range-based algorithms are more accurate but also more complicated. Because accuracy is very important in tracking a mobile robot, a range-based algorithm is adopted in this study.

As a range-based positioning system, RSSI can be read from almost every transceiver of a wireless sensor network. This makes RSSI-based systems be of low cost and power economic since no extra hardware is needed. While ‘‘low-cost” and ‘‘power economical” are two key factors for wireless sensor network applications, however, it is difficult for RSSI-based systems to obtain accurate and high resolution position estimation. In wireless sensor networks, RSSI values are normally expressed in dBm. If the distance is very large, small variation of the RSSI value causes a large bias of distance estimation. Moreover, increasing RSSI from one quantized level to another level requires a long distance movement. Therefore, RSSI-based position systems have a good resolution at a near distance while having a bad resolution at a far distance.

As mentioned in Section 3, the m anchor nodes receive a tracking request from the moving robot at time step . They measure RSSI and send it to a central observation point. The central observation point executes the RSSI-based localization algorithm to estimate the moving robot position.

Transmitted signals of wireless sensor networks are attenuated in the communication channel between sender and receiver. Thus, the RSSI at the receiver is lower than the emitted signal by the sender. This dependency can be described with the log-normal-shadowing model [31]: where is the signal strength measured at receiver (dBm), is the reference distance between transmitter and receiver, is the received power strength at a reference point (dBm), and is the normal random variable with a standard deviation of . The value of depends on building construction and the number of partitions the signal has to travel. The range of is 3 dBm up to 20 dBm. is the path loss exponent, between 2.5 and 3.0 in the indoor environment.

In order to get the reference distance between the transmitter and the receiver, (5) can be rewritten as

Therefore, all the distances between transmitter (moving robot) and receiver ( anchor sensor nodes) can be calculated by (6) if signal strength measured at receiver is measured.

However, RSSI measurements are highly error-prone due to the following reasons. First, several reflections of radio waves at obstacles cause multipath propagation. Second, other electrical fields in the environment interfere with the transmitted radio waves. Third, the resolution of the RSSI can be limited by the transceiver hardware. Finally, the required line of sight between transmitter and receiver cannot be guaranteed.

In order to improve location accuracy, an ML (maximum likelihood) algorithm is used to minimize the differences between the measured and estimated range between the moving robot and the anchor node.

The difference between the measured and estimated distance is formed by where is the difference between measured and estimated distance between moving robot and anchor node , , is the estimated distance between moving node and anchor node and can be calculated by (6). is the position of the moving robot, and is the position of anchor nodes .

When , (7) can be rewritten as

We can use the first equations to subtract the th equation as follows:

Equation (9) can be rewritten in matrix form as follows: where

Therefore, the position of the moving robot can be calculated by

5. Kalman Filter

Because the algorithm mentioned before is easily subject to errors due to the RSSI measurements which are highly error-prone, a Kalman Filter is introduced to improve tracking accuracy. The Kalman Filter has made a dramatic impact on linear estimation because of its adaptivity for implementation on a digital computer for on-line estimation and usefulness of the state-space approach. It is widely applied in the fields of navigation too.

The Kalman Filter uses a form of feedback control to estimate the state of the system. The process through which we obtain the th state is divided into two main parts, the predictor and the corrector. The predictor is responsible for letting the current state and error covariance estimates advance in time, to calculate the a priori estimates for the next time step. The corrector is the feedback and thus introduces a new measurement into the a priori estimate to obtain an improved a posteriori estimate.

The predictor is used to calculate the a priori state by (1) and the a priori estimation error covariance matrix with

The corrector is used to calculate the a posteriori state estimate and the a posteriori error covariance estimate as follows:

A detailed derivation of algorithm can be found in [32].

6. Experiment

In this section, we present and analyze the experiment results of our scheme.

The moving robot tracking system is tested in a chamber. The chamber is 20 meters × 20 meters (length × width). There are 40 anchor nodes spread over the tracking area at random. The topology of anchor nodes is shown in Figure 2.

The anchor node is a CC2530 module as shown in Figure 3. CC2530 is a system-on-chip (SoC) solution for IEEE 802.15.4, Zigbee applications. The CC2530 combines the excellent performance of a leading RF transceiver with an industry standard enhanced 8051 MCU, in-system programmable flash memory, 8 KB RAM, and many other powerful features. CC2530 is also featured in its low power and supports short range wireless communication such as Zigbee [11]. The PHY layer and MAC layer of CC2530 comply with IEEE 802.15.4. Moreover, its work spectrum located in 2.4 GHz. It supports data rates as high as 250 kbps and multipoint to multipoint communication. It is also featured by hardware encryption, reliability, flexible networking, and high destroy-resistance. The anchor node is composed of processor, wireless transceiver, and power module as shown in Figure 4. Each module of this platform is described in Figures 3 and 4.

The moving robot is a remote programmable tracked mobile robot as shown in Figure 5. It is equipped with three wheels which are driven by three direct motors. Moreover, it is controlled by a STC11F32XE MCU which is featured in ultralow power. The MCU is connected to a CC2530 module; therefore, it can be manipulated via Zigbee to move forward, backward, turn left, and turn right. The robot is powered by 2 1.5 v batteries. It can be controlled by a touch screen control. The moving robot is moving from the start point (−10 m, 0 m) to end point (10 m, 0 m) across the tracking area.

Figure 6 is RSSI measured in an anchor node whose coordinate is (1.1, 1.2). As can be seen in Figure 6, RSSI is added by noises. Meanwhile, the peak point of RSS is −40 dBm in 21 seconds where the distance between anchor node and moving robot approaches the least. The low point of RSS is −82 dBm in 4 seconds where the distance between anchor node and moving robot approaches the largest.

In order to save computation resources, five nearest anchor nodes’ RSSIs are used to estimate mobile robot locations according to (12). The result of tracking moving nodes is shown in Figure 6. The true trajectory and the positional estimates before and after applying the Kalman filter are described.

As can be seen in Figure 7, as the robot moves, the estimate with Kalman Filter converges towards the correct trajectory and ends very close to the true position compared to the estimate without Kalman filter. Moreover, the tracking accuracy with Kalman filter improves. For example, the biggest tracking estimation error without Kalman filter is 10 meters while the biggest tracking estimation error after applying Kalman filter is 7.3 meters. Therefore, the biggest tracking estimation error improves about 27%.

The tracking estimation error is shown in Figure 7 which shows the performance of estimate with and without Kalman filter. The mean tracking estimation error after applying Kalman filter is 1.10 while the mean tracking estimation error without Kalman filter is 2.23.

The true velocity of the robot and the velocity estimates before and after applying the Kalman filter are described in Figure 8. It can be seen from Figure 8 that the performance of velocity estimation improves greatly with the use of Kalman filter comparing to those without Kalman filter. Figure 9 shows the velocity estimation comparison.

The GUI of tracker is shown in Figure 10. Position and velocity are shown in the status bar.

7. Conclusion

In this study, an indoor moving robot tracking system implemented on a Zigbee WSN has been proposed. The experimental results prove that it is able to obtain good results at low speeds, which are typical in indoor robot tracking applications.

In fact, tracking accuracy in WSN presents several tradeoffs. If higher accuracy is desired, one has to deploy more anchor nodes or use more samples. However, a large number of anchor nodes and samples may increase energy consumption and communication payloads which may lead to shortening the WSN’s lifetime. Therefore, we should deploy anchor nodes or use samples according to application requirements.

Conflict of Interests

The authors declare that there is no conflict of interests regarding the publication of this paper.


The projects have been supported by the Innovation Program of Shanghai Municipal Education Commission ‘‘Vehicle Collision Avoidance System Based on Vehicle Wireless Communication’’ (no. 12YZ151), ‘‘Discipline Comprehension Construction on Control Science and Engineering’’ (no. 13XKCZ07), and ‘‘First Class Discipline Cultivation-Mechanical Engineering’’ (no. YLJX12-7) and Shanghai University of Engineering Science’s project ‘‘Vehicle Tracking System Based on VANET’’ (no. 2011XY18).