Keywords

1 Introduction

Underwater Sensor Networks(UWSN) have applications in various fields such as offshore surveillance, natural hazard detection, pollution monitoring, oceanographic data collection, oil field detection and so on. In mobile UWSN, sensor nodes can freely move with respect to the water wave motion in the deployed environment. Location tracking of a sensor node is one of the challenging issues because of the limitation of radio signaling and Global Positioning System(GPS) services in underwater environment. Sensed data with the exact location is highly desirable for correct interpretation of the environmental condition.

UWSNs are highly energy constraint since sensor nodes work on battery. Recharging or replacing of battery after deployment is very hard in the underwater domain [1, 2]. Moreover, in mobile UWSN, the mobility pattern of a sensor node is hard to predict and model. The localization techniques for UWSN are categorized into two: range based and range free [6]. Range free provides course position estimates with hop count or continuity measures. Range based schemes require distance or angle measurement as input parameters to estimate the location of a sensor node and offer more accuracy than range free techniques. High localization accuracy is essential for applications such as target tracking. Most of the range based position tracking systems follow trilateration, triangulation and multilateration based localization schemes [4, 9, 12, 16]. In trilateration and multilateration techniques, the position of a sensor node is estimated with the help of Time of Arrival(TOA) or Angle of Arrival(AOA) measurement from three or more anchor nodes. In triangulation technique, the location of a sensor node is estimated by AOA measures from three anchor nodes. In all these cases, a sensor node receives and processes at least three packets from three anchor nodes for its location estimation. In the case of dense, large UWSNs, these type of location tracking systems generate high packet reception rate, which result in high energy consumption. Even though these methods provide better localization accuracy, the high communication overhead severely affects the network lifetime. Moreover, localization time plays an important role in time critical applications. Localization time is the time required for a sensor node to estimate its location. It is the summation of the packet transferring time, the time required for location computation and delay. As sensor nodes are mobile in UWSN domain, the estimated location of a sensor node would be different from the actual value if the localization procedure requires too long time. This high localization time significantly affects localization accuracy. As localization time has a linear variation with packet transfer rate, localization time increases with the number of supporting anchor nodes. Overall, communication overhead and computational complexity of localization system should be minimized for guaranteeing accurate location tracking and extended network lifetime.

Table 1. Range based mobile localization schemes

In this paper, we proposed a localization scheme with single anchor node support (SAS). Location estimation of a sensor node requires only a single packet from an anchor node. TOA and AOA measurements are considered as input parameters. The location is estimated by projecting the geographical coordinates into a Cartesian plane using Equirectangular approximation. The network is enabled with mobile nodes by mapping the mobility pattern of particles in ocean waves. We simulated and tested the scheme with real geographic coordinate data of different locations in the Arabian ocean collected using Google Earth. Experimental results showed that SAS provided better performance for short range sensor nodes.

The rest of this paper is structured as follows. Section 2 summarizes the related works. Section 3 discusses the proposed localization scheme. Section 4 describes the experimental setup and results. Section 5 concludes the paper.

2 Related Work

As range free techniques provide course position estimates, we focus on range based schemes. Most localization techniques for Mobile UWSN work with the support of anchor nodes. To improve the accuracy of localization procedure, the majority of schemes require multiple anchor support. A brief summary of localization methods proposed for mobile UWSN is included in Table 1. In [9], Erol et al. addressed a localization scheme with the aid of dive and rose underwater vehicles. In [10], Mirza et al. introduced a motion aware self-localization for UWSN, which is free from anchor nodes, but requires frequent messaging for distance estimation. Their extended work, collaborative localization [4] requires more than one anchor support. Erol et al. [3] introduced a multistage localization, in which location is estimated with the help of three non coplanar anchor nodes. And more, localization procedure creates high communication overhead in the network. Liu et al. [8] proposed a multihop fitting approach for node localization which follows trilateration. Ojha and Misra [12] introduced a trilateration based technique, in which sensors predict its mobility pattern by observing neighboring nodes. In [16], Zhou et al. addressed a scalable localization scheme with mobility prediction, which leads to efficient localization in large scale UWSN, but requires multiple anchor support. One solution for minimizing the communication overhead in UWSN is following a localization technique with least number of anchor support.

3 Proposed Localization Scheme

The network architecture of the proposed system consists of two types of network elements: an anchor node and sensor nodes. Anchor node(AN) is the gateway node floating on the water surface. It is attached to a GPS receiver and has acoustic and radio frequency transceivers. Sensor nodes(SN) are mobile sensors randomly deployed in underwater environment. AN is time synchronized with all sensor nodes. There is an underlying assumption that each SN is attached to a directional antenna to measure AOA. All SNs and AN are equipped with depth sensors. The network model of proposed UWSN is shown in Fig. 1.

Fig. 1.
figure 1

UWSN model

AN periodically broadcasts its location information to the network. Once a sensor node senses a relevant environmental data, it accepts the packet transmitted by the AN. The received packet contains information about the location of anchor and time of transmission. Hence, the data available for the node of interest are:

  • AN geographic coordinates (\(\lambda _{AN},\phi _{AN} \))

  • Time of transmission (\(T_{Tr}\) )

  • AOA (\(\theta \))

  • Depth measurement (\(\delta \))

  • Time of arrival(\(T_{Arr}\))

Fig. 2.
figure 2

SAS localization scheme

Figure 2 shows the data flow diagram of SAS localization scheme. The latitude \(\lambda _{AN}\) and longitude \(\phi _{AN} \), of anchor node is mapped to a Cartesian plane using Equirectangular projection. The coordinates of the sensor node are calculated using geometrical principles. In the next step, the Cartesian coordinates are transformed back to spherical coordinates. Periodically, the location of SN is updated with the mobility pattern of particles in an ocean wave until the data aggregation procedure ends. After a particular data aggregation process ends, the sensor node resets and enters in sleep mode. Hence, the localization procedure in SAS is accomplished in five steps: range computation, transformation from Geographic coordinates to Cartesian coordinates, coordinate computation, transformation from Cartesian coordinates to Geographic coordinates and anchor node position update.

3.1 Range Computation

Distance between the SN and AN is calculated using TOA measurement based on the assumption that both AN and SN are time synchronized. Let \(T_{Arr}\) indicates time of arrival, \(T_{Tr}\) denotes time of transmission and \(S_{sound}\) denotes sound wave speed. The speed of sound signal in sea water depends on many factors such as water quality, pressure, temperature, and salinity. For a general noise free case, the speed of the sound wave is 1500m/s [1]. Range, \(d_{computed}\) is calculated using Eq. (1).

$$\begin{aligned} d_{computed}=(T_{Arr}-T_{Tr})\times S_{sound} \end{aligned}$$
(1)

3.2 Transformation from Geographic Coordinates to Cartesian Coordinates

Spherical coordinates are projected into a two-dimensional Cartesian coordinate plane. After the critical review on various cylindrical projection techniques, Equirectangular transformation method [7] was chosen for projecting geographic coordinates into the Cartesian plane because of its computational efficiency. Let the geographic coordinates of Anchor node(AN)in earth surface be \((\lambda _{AN},\phi _{AN})\), and then the corresponding Cartesian coordinates \((X_{AN},Y_{AN})\) is computed using Eqs. (2) and (3).

$$\begin{aligned} X_{AN}=\lambda _{AN}\times cos(s) \end{aligned}$$
(2)
$$\begin{aligned} Y_{AN}=\phi _{AN} \end{aligned}$$
(3)

where \(\varvec{s =}\) standard parallels (North and south of the equator where the scale of projection is true) and, \(\lambda _{AN}\) and \(\phi _{AN}\) are longitude and latitude respectively. The distance between AN and SN is transformed using Eq. (4).

$$\begin{aligned} d=d_{computed}\times cos(s) \end{aligned}$$
(4)

3.3 Coordinate Computation

Projected geographic coordinates of AN are graphically visualized in Fig. 3. Assume that, SN is located at the origin of a Cartesian coordinate system. AN may be in any of the four quadrants. Suppose, AN is at the first quadrant. In Fig. 3, point B \((X_{AN},Y_{AN})\) indicates the anchor node and A is the sensor node. Let the unknown coordinates of A be \((X_{SN},Y_{SN})\). BE is the line normal to the x-axis from B \((X_{AN},Y_{AN})\). The AOA measurement \(\theta \), is projected as the angle between lines BA and AE. Transformed distance between SN and AN is d. The slope of the line joining points B\((X_{AN},Y_{AN})\) and A\((X_{SN},Y_{SN})\), m is given in Eq. (5).

$$\begin{aligned} m= tan(\theta )=\frac{Y_{AN}-Y_{SN}}{X_{AN}-X_{SN}} \end{aligned}$$
(5)

Euclidean distance, D between \(B(X_{AN},Y_{AN})\) and \( A(X_{SN},Y_{SN})\) is

$$\begin{aligned} D=\sqrt{(X_{AN}-X_{SN})^{2}+(Y_{AN}-Y_{SN})^{2}} \end{aligned}$$
(6)

From Eqs. (5) and (6), the coordinates of SN are obtained as follows:

$$\begin{aligned} X_{SN}=X_{AN}-D\times cos(\theta ) \end{aligned}$$
(7)
$$\begin{aligned} Y_{SN}=Y_{AN}-D\times sin(\theta ) \end{aligned}$$
(8)
Fig. 3.
figure 3

Visualization of SN and AN in cartesian plane

3.4 Transformation from Equirectangular to Geographic Coordinates

The computed Cartesian coordinates of SN is transformed back to the spherical coordinate system using Eqs. (9) and (10).

$$\begin{aligned} \lambda _{SN}=\frac{X_{SN}}{cos(s)} \end{aligned}$$
(9)
$$\begin{aligned} \phi _{SN}=Y_{SN} \end{aligned}$$
(10)

where \(\lambda _{SN}\) and \(\phi _{SN}\) are latitude and longitude of the sensor node in the geographical coordinate system.

figure a

3.5 Anchor Position Update

Since, UWSN domain is mobile, both sensor nodes and anchor is free to move along with the water current. These two types of nodes have mobility pattern of particles in an ocean wave. Movement of particles along with water wave depends on factors such as depth, wind speed, and activities of underwater animals and vehicles. Wave speed or celerity considerably varies with respect to depth. In deep water environment, water wave could not interfere with ocean bottom and hence waves are generated only because of wind and other turbulences. Particles in deep water wave follow a circular orbital motion as shown in Fig. 4(a). After half wavelength depth, the wave motion is negligible. The wave speed \(V_{WAV}\), of a typical deep ocean wave above half wavelength depth, depends on the wavelength of the water wave. \(V_{WAV}\) is calculated using Eq. (11).

$$\begin{aligned} V_{WAV}=\sqrt{\frac{g\lambda _{WAV}}{2\pi }} \end{aligned}$$
(11)

where, g is the acceleration due to gravity and \(\lambda _{WAV}\) is the wavelength of the water wave, which varies with the behavior of tides in the deployment domain. In the case of shallow water environment, there is negligible wave current below \(\frac{1}{20}^{th}\) of wavelength depth. Particles follow an elliptical orbital motion, which is shown in Fig. 4(b). Speed of shallow water wave above \(\frac{1}{20}^{th}\) of wavelength depth is influenced by both gravity and depth, which is calculated using Eq. (12).

$$\begin{aligned} V_{WAV}=\sqrt{g\delta } \end{aligned}$$
(12)

where, g is acceleration due to gravity and \(\delta \) is the water depth [14].

Fig. 4.
figure 4

Particle motion (picture taken from [14])

Once a sensor node estimates its location, it can act as an anchor node. Hence, the status of SN is changed to AN. The location of anchor node is predicted and periodically updated according to this mobility pattern. Since the particles follow circular motion, there would be negligible vertical variation in their position. Hence, we consider only horizontal displacement with respect to wave motion. The X coordinate and corresponding latitude is updated as follows:

$$\begin{aligned} x_{var}=t_{count}\times V_{wav} \end{aligned}$$
(13)
$$\begin{aligned} X_{AN}=X_{AN}+x_{var} \end{aligned}$$
(14)
$$\begin{aligned} \lambda _{AN}=\frac{X_{AN}}{cos(s)} \end{aligned}$$
(15)

where \(\lambda _{AN}\) is the updated latitude.

4 Experimental Results and Discussion

The performance of proposed localization technique was evaluated using MATLAB. Real geographic coordinates of different locations in the Arabian sea were collected using Google Earth for testing localization accuracy. Figure 5 shows the details of different locations chosen for testing. In Fig. 5(b), the central indicator is sensor node Z, which is located at (10.50672, 73.36807). All other indicators show anchors at different locations. Blue line is the reference line through SN. Anchors are located at \(45^{\circ }, 135^{\circ }, 225^{\circ }\), and \(315^{\circ }\) with the reference line and at different ranges. Table 2 lists out the geographic coordinates of anchor nodes and corresponding range from Z.

Fig. 5.
figure 5

Different locations in arabian sea collected using google earth for testing

Table 2. Geographic data collected using google earth

For testing the estimated location of sensor nodes, the following performance metrics were used.

4.1 Latitude Error

Latitude error is the deviation of estimated SN’s latitude values from the actual value [5]. Let \(\lambda _{SN}^{R}\) and \(\lambda _{SN}^{E}\) were the real and estimated latitude of sensor node respectively. Then the latitude error percentage \(\lambda _{error}\), was calculated using Eq. (21).

$$\begin{aligned} \lambda _{error} =\frac{\varDelta \lambda }{180}\times 100 \end{aligned}$$
(16)

where, \(\varDelta \lambda =\lambda _{SN}^{R}-\lambda _{SN}^{E}\). Latitude error percentage with localization range for different AOA values were plotted (Fig. 6). Latitude error was accumulating when AN moves far away from SN. When range between SN and AN was below 50 Km, latitude error percentage was less than 0.1 for all corresponding AOA values. Accumulation of error was due to the noise factor affecting in range computation.

Fig. 6.
figure 6

Latitude error percentage with localization range for different AOA values

4.2 Longitude Error

Longitude error is the deviation between real and estimated SN’s longitude values. Let \(_{SN}^{R}\) and \(\phi _{SN}^{E}\) were the real and estimated longitude of sensor node respectively. The longitude error percentage \(\phi _{error}\) was calculated using Eq. (22).

$$\begin{aligned} \phi _{error}=\frac{\varDelta \phi }{360}\times 100 \end{aligned}$$
(17)

where \(\varDelta \phi =\phi _{SN}^{R}-\phi _{SN}^{E}\). Longitude error percentage with localization range was plotted for different AOA values (Fig. 7). For localization range, up to 50 Km, estimated longitude values showed a very small deviation. Figure 9(a) shows the area graph of latitude error against longitude error of different test cases for anchor range up to 100 Km. Similarly, Fig. 9(b) shows area graph for anchor range beyond 100 Km. For anchor range up to 100 Km, the area was concentrated around the zero error value.

Fig. 7.
figure 7

Longitude error percentage with localization range for different AOA values

4.3 Localization Error

Localization error was calculated as the great circle distance between the real and estimated locations of sensor nodes.

Localization error\(=\)Great circle distance between\((\lambda _{SN}^{R},\phi _{SN}^{R})\) and \((\lambda _{SN}^{E},\phi _{SN}^{E})\)

Great circle distance between two points on a sphere can be calculated using Haversine principle [15]. Hence, distance \(d_{GC}\), between locations \((\lambda _{SN}^{R},\phi _{SN}^{R})\) and \((\lambda _{SN}^{E},\phi _{SN}^{E})\) was calculated using Haversine principle as follows:

$$\begin{aligned} P=sin^{2}(\frac{\varDelta \lambda _{SN}}{2}) \end{aligned}$$
(18)
$$\begin{aligned} H= P+cos(\lambda _{SN}^{R})\times cos(\lambda _{SN}^{E})\times sin^{2}(\frac{\varDelta \phi _{SN}}{2}) \end{aligned}$$
(19)
$$\begin{aligned} H1=2\times atan2(\sqrt{H},\sqrt{1-H}) \end{aligned}$$
(20)
$$\begin{aligned} d_{GC}=R\times H1 \end{aligned}$$
(21)
$$\begin{aligned} \varDelta \phi _{SN} = \phi _{SN}^{R}-\phi _{SN}^{E} \end{aligned}$$
(22)

where R is the radius of Earth, \(\varDelta \lambda _{SN}\) =\(\lambda _{SN}^{R}-\lambda _{SN}^{E}\) and

figure b

. The localization error, which is the Haversine distance between real and estimated location in kilometer was plotted against localization range for different AOA values (Fig. 8). For short range anchors, localization error was very less.

Fig. 8.
figure 8

Localization error with localization range for different AOA values

Fig. 9.
figure 9

Area graph of latitude error against longitude error of different test cases

Fig. 10.
figure 10

Communication cost with number of localized nodes

4.4 Communication Cost

Communication cost was calculated as the number of packets required for a single sensor node to localize. Communication cost required for localization against the number of localized sensor nodes was analyzed. In Fig. 10, the communication cost for SAS was compared with Trilateration, Bilateration, and Triangulation. SAS requires only one packet from one anchor node for location estimation, whereas, in trilateration, TOA measurements from three anchor nodes are essential. Bilateration requires distance measurement and coordinate information from two anchors. In the case of triangulation technique, location estimation is achieved with the help of AOA measurement from three anchor nodes [11]. The communication cost of SAS showed a lesser linear variation with respect to number of localized nodes compared with existing techniques. Hence, SAS can be applied as an energy efficient position tracking technique for medium range UWSNs.

Latitude error, longitude error, and localization error for different AOA values were analyzed for various localization ranges. Results indicated that the localization accuracy was declined with the increase in localization range. However, effect of direction of AN in localization accuracy is negligible. Since UWSN has acoustic communication channel, the maximum transmission range of the signal depends on the frequency of transmission and signal attenuation in water. Table 3 shows the bandwidth requirement of acoustic communication in underwater [13]. Bandwidth in the range of 6 to 10 KHz is practically reliable and offers transmission range from 1 to 10 Km. Very low bandwidth transmission is essential for transmission range greater than 100 Km. Hence, a medium bandwidth acoustic transmission provides maximum transmission range up to 10 Km. SAS offers good localization accuracy up to 50 km range. Hence, SAS is well appropriate for localization in small and medium range UWSNs. Moreover, SAS requires least communication cost when comparing with other existing techniques.

Table 3. Acoustic transmission in underwater

5 Conclusion and Future Work

Single anchor node based localization scheme was proposed and analyzed. It generates only minimum communication overhead in a network since a sensor node localizes itself by receiving a single packet from an anchor node. The proposed method is applicable for a UWSN domain, where both sensors and anchors are mobile. Even though all sensor nodes are required to be equipped with directional antennas to measure AOA, from the experimental results, it is clear that SAS is well suitable for small and medium area UWSNs. In future, we are planning to enhance SAS by integrating secure communication protocols.