Ph.D. Work

Time synchronization in heterogeneous sensor networks
Time synchronization is a critical component in many wireless sensor network applications. However, accurately synchronizing the clocks of all sensor nodes within a heterogeneous network is not a trivial task. Such networks consist of resource-constrained sensor nodes, as well as devices with more powerful sensors, such as cameras. Existing WSN time synchronization protocols perform well on the devices for which they were designed. However, these protocols tend to break down when applied to a network consisting of different devices, operating systems, and network media.  In addition, the communication pathway between a mote and PC is realized using a serial connection. Synchronization across this interface is essential when attempting to combine time-dependent sensor data from each device. Furthermore, it may be desirable to have several mote-PC gateways, since often it is not always possible to extract data fast enough through a single base station. In large networks, this also enables data packets to reach the base station in a fewer number of hops, thus minimizing delay and conserving energy. Although time synchronization across this interface has previously been explored, it has not been implemented in software.
We have developed a methodology for HSN time synchronization that utilizes a combination of existing synchronization protocols. Our methodology supports reactive data fusion, incurs little overhead of network resources, and has synchronization error on the order of microseconds. In addition, we have implemented a time synchronization service for reactive data fusion applications, which allows the application developer to focus on aspects of sensor fusion, and not the underlying aggregation mechanism. To achieve accurate cross-platform synchronization, we have developed a technique for synchronization between a mote and PC that is implemented completely in software, and remains effective when multiple mote-PC connections exist within the network.
Mobile sensor localization and navigation using RF Doppler shifts (dNav)
Typically, robotic mobile sensors employ optical encoders, sonar, or laser range-finders that can be used for localization and navigation. As mobile devices decrease in size and cost, these types of positioning sensors become difficult to implement. By using RF Doppler shifts as control feedback, we can design a navigation system using commercially available and inexpensive sensor nodes. Furthermore, we eliminate the need for additional hardware that may be bulky, expensive, and power-intensive.
For such a system, which we refer to as dNav, the mobile sensor node is a 2-wheeled mobile robot (WMR) with differential steering. Like dTrack, the mobile node transmits a sinusoidal signal, which becomes Doppler shifted based on the relative speed between transmitter and receiver.  Receiver nodes send their observed Doppler-shifted frequencies back to the mobile node, which uses this data to compute the current estimate of its position, speed, and heading. These values are then used to calculate the trajectory error, which enables the mobile node to stay on course.  This approach requires the navigation algorithm to be implemented on the mobile sensor node, within the control loop. One benefit of this is that the mobile node is aware of the angular velocity commands it sends to each wheel. This information can be used to arrive at a better position and velocity estimate, especially when sudden maneuvers take place.
Determining angular separation in mobile wireless sensor networks (dAngle)
One problem with dNav is the EKF is too large to fit on the mobile node. If we could eliminate the EKF, we would have a more compact and less time-consuming localization / navigation algorithm.  One possible solution is to only determine the angular separation between pairs of beacons, and not to determine the position and velocity of the mobile node.  Knowledge of the angular separation between pairs of anchor nodes at known positions provides a means for angle-based navigation.
The system works as follows. A mobile node, moving through the sensing region, records angular velocity readings from its wheel encoders. As the mobile node moves, it transmits an RF sinusoidal signal, which is observed by stationary receiver nodes. Because the mobile node is moving with respect to the receivers, the RF signal will be Doppler-shifted. The receivers report their observed frequencies to the mobile node. Knowledge of Doppler shift and instantaneous velocity are sufficient to derive bearing to each receiver, provided the carrier frequency and wavelength of the transmission signal are known. By computing receiver bearings, the mobile node can then take the pairwise difference of these bearings to determine the angular separation.
Radio Interferometric Angle of Arrival Estimation (TripLoc)
Several localization algorithms exist for wireless sensor networks that use angle of arrival measurements to estimate node position. However, there are limited options for actually obtaining the angle of arrival using resource-constrained devices. In this paper, we describe a radio interferometric technique for determining bearings from an anchor node to any number of target nodes at unknown positions.
The underlying idea is to group three of the four nodes that participate in a typical radio interferometric measurement together to form an antenna array. Two of the nodes transmit pure sinusoids at close frequencies that interfere to generate a low-frequency beat signal. The phase difference of the beat signal between the third array node and the node at an unknown location constrains the position of the latter to a hyperbola. The bearing of the node can be estimated by the asymptote of the hyperbola. The bearing estimation is carried out by the node itself, hence the method is distributed, scalable and fast. Furthermore, this technique does not require modification of the mote hardware because all measurements are performed using the radio.   Triangulation can be used to estimate position by using two or more bearing estimates.  Experimental results demonstrate that our approach can estimate node bearings with an accuracy of approximately 3 degrees in 0.5 second, and position accuracy of less than 1 meter in approximately 1 second.