ECE 4901 Fall 2012 Underwater Network Localization: Final Written Proposal Team 170 Tausif Shaikh (EE) Johanna Thomas (EE) Patrick Lazar (EE) Kaleel Mahmood (EE) Advisor: Shengli Zhou Introduction Conventional localization is used on a daily basis to navigate to destinations, provide directions in real time and discover nearby attractions. Localization is traditionally achieved through Global Position System (GPS) technology. GPS works by using satellites to send out electromagnetic signals to a receiver whose position is unknown. Based on the propagation time required for the signal to reach the user, the user’s position can be computed geometrically using a method known as triangulation. GPS can accurately give your location on the surface of the Earth but implementing localization in aquatic environments comes with significant challenges. In commercial GPS electromagnetic waves are transmitted with a center frequency of 1575.42 MHz. Electromagnetic waves work well as a means of signal transmission because the conductivity of air is low varying from 3×10−15 to 8×10−15 Siemens per meter so signal degradation is negligible. Fresh water however has a conductivity of 2×10 −1 Siemens per meter and salt water has a conductivity of 4 Siemens per meter so electromagnetic waves quickly lose strength as they traverse through this type of medium. Additionally in water the absorption coefficient of a signal is directly proportional to its frequency. At high frequency such as those used by GPS, electromagnetic waves cannot propagate useful distances. To circumvent the problems faced by electromagnetic signals acoustic signals can be used as a means of transmission instead. Acoustic signal are better suited for use in aquatic environments because their signal strength does not depend on the conductivity of the medium that they propagate in. Using underwater sensor networks that transmit acoustic signals various transmission schemes can be used to implement localization. There are four main commercial based localization methods that have been developed for commercial use as well as two research based methods. The goal of our project is to study the research based localization topics and build working models so that they can be implemented for practical use in the field such as on AUVs and for sea floor navigation. To create the best possible positioning system we first studied all the localization set ups that are commercially available. In the next section we will discuss the advantages and disadvantages of each commercial method as well as the two research based methods. Hardware Our group needs six digital processing boards OMAP-L137 EVM, four anchor nodes, one tracking node and one active node. We also need six hydrophones of type Hong Zhi ST 50 with an operating frequency range: 100 Hz to 50 kHz and six transducers of type PT 25 Spherical with a resonance frequency: 25 kHz our project requires underwater housing for all components. We also need four GPS tracking devices. Figure 1. DSP Boards in Waterproof Housing. Research Based Underwater Localization Synchronous The synchronous localization system is one of the research methods which we will be testing in our design project. In this system, we have nodes placed at the surface of the water which are equipped with satellite-based GPS receivers. The clocks of the nodes are synchronized using the internal pulse provide by the GPS device. Once the clocks are synchronized, the nodes send signal to the AUV which is placed underneath the water surface. The nodes send the signals to the AUV after a certain delay. Figure 2 below shows the schematic of this system with its signal time diagram. Figure 2. Synchronous Localization schematic and signal time diagram. One of the biggest advantages of the synchronous localization system is that it is able to service multiple AUVs at once and it also does not require a continuous GPS signal to synchronize the clocks on the nodes. However, a disadvantage of this system is that the nodes must be on the surface of the water initially to receive GPS signal. Any missed node signal means that position cannot be computed if working with the minimum node schematic. Asynchronous The asynchronous localization system is other research method that we will be testing in our design project. In this system, we have the nodes at the surface of the water and the AUV underneath the water. Unlike the synchronous localization system, the GPS signal is not required in this system because the clocks do not need to be synchronized. In this system, the AUV sends a pinger signal to the nodes. Once all the nodes have received the signal, they send a signal back to the AUV which then computes the position. Figure 3 shows the schematic of this system with its signal time diagram. Figure 3. Asynchronous Localization schematic and signal time diagram The advantages of asynchronous localization system is that the clocks on the nodes do not need to be synchronized together and extra timing measurements sent from other nodes can be factored into calculations to provide better position accuracy. On the other hand, this system also has some disadvantages. The initiator signal must send out a delay factor long enough so no nodes send out signals at the same time. This system has also never been field tested so the actual accuracy improvement is unknown. Programming of Asynchronous Localization To start our programing we created a basic flow chart of how the system is going to be created. Each node as well as the AUV will have their own code. For the nodes when the scenario starts the modem code provided by the UWSN lab at UConn will be initialized. The purpose of this code is to set up the communication between the nodes and the AUV. For the Asynchronous localization method each node will then wait for a specific call from the AUV, when the call is received it will record the time it received the call and send a response. At the moment that is all the code for the nodes is going to do, later on we will look into the second half of the asynchronous localization which uses each nodes measurement to also calculate the position. In theory the extra calculations will yield a more accurate positioning. Figure 4 shows the flow charts for both the nodes and the AUV. Figure 4. The flow chart to be used for the node and AUV code implementation. The code for the AUV starts out similar to the node in that the first thing after the scenario starts is the initialization of the modem code to allow for communication throughout the Asynchronous localization system. After this we go into the localize block which consists of a series of call statements. Each call statement represents an (if) argument which goes through a list of the nodes. At each nodes call, the AUV will send its’ transmission and be prompt for a response. When the response is received by the AUV the (if) statement shifts to the next node and continues on in series. After all these responses are received and cataloged the localize block moves to the position algorithm. In this phase the times recorded by the AUV are used to calculate the position of the AUV. Programming of Synchronous Localization To start the programming we created a simple flow chart of how the system is going to be created. When the scenario starts, just as in Asynchronous the modem code is initiated allowing for communication between the nodes and the AUV. In Synchronous localization the node code is rather simple in that they are set up as pingers. Where each node (synched through GPS) will send its signal at a predetermined time, after sending its signal it will wait for the full rotation of the other nodes and send again. Figure 5 shows the flow diagrams for both the nodes and the AUV in this method. Figure 5. The flow diagrams for Synchronous localization. The code for the AUV starts out similar to the node in that the first thing after the scenario starts is the initialization of the modem code to allow for communication throughout the Synchronous localization system. In this scenario, the nodes are set up as pingers, constantly sending pulses at a known time interval. The code for the AUV just has to listen for the node calls, when this loop receives 4 node calls (one for each node) it can then take the information it receives and move it to the positioning algorithm. Range Test Our team will be implementing a range test to determine how fast the signal travels in the water. In order to determine the speed of the signal, we need to first solve for the speed of sound in water. The speed of sound travels at a faster rate in water than in air and it depends on water properties such as temperature, salinity, and pressure. On average, the speed of sound travels at approximately 1500 m/s under water. Below is a diagram of our set-up of the range test in the swimming pool with a graph which shows the speed of sound versus temperature and pressure. Figure 6. set-up of range test and graph showing sound of speed versus temperature and pressure If you observe the graph on the right side in figure 6, you can see that it shows the speed of sound versus the temperature and pressure. As the temperature of the water increases, the speed of sound also increases. The graph shows us this is the case in the shallow parts of the water because the temperature of the water has a higher effect on the speed of sound. On the other hand, as you go deeper, the pressure of the water starts to have a higher effect on the speed of sound which increases the speed of sound. Noise Test We will also implement a noise test to see how disturbance the signal will receive in the swimming pool. The noise interfering with the signal may reduce the strength of the signal and that is why we have to take into account the noise in our design. The signal may be affected by two types of noises; the ambient and man-made noises. The ambient noises are from the natural surrounding such as waves, tides, or marine animals. The man-made noises occur from disturbances by human beings such as construction or drillings. We calculate the variance from the noise test and use it to calculated the Time of Arrival (TOA) of the signal. The set-up for the noise test is the same as the set-up of the range test shown in figure 6. Future Work We still have a long way to go on our project, one of the first things we need to do is implement our pool test. Here we will test the nodes in hope to find the range of the equipment, determine the delay time we will need to prevent the signals from interfering with each other, and to determine if the pool will create interference due to its reflective siding and small size. We then will look at the modem initializing code supplied by the UWSN lab in hopes to understand and manipulate it as needed later in our project. Another task is to create the Algorithm code for both system methods (Asynchronous and Synchronous). Using the basic math required for these calculations we will try and find the best way of calculating the position in the fastest manner. Once all these goals are met, we will look deeper into the localization method and try and develop a way to speed up the system and make it useful for a moving object. At this stage in our project we are using a system that requires a minimum wait of 8 seconds between the first node’s call and the last nodes call being received by the AUV. In this scenario if the AUV is moving it will be 6 seconds farther from where it previously was when the final node sends its’ signal. When we do our testing we will look at how this impacts our results and if the lost accuracy can be compensated. Budget The Department of Electrical and Computer Engineering (ECE) at the University of Connecticut has provided us with a budget of $1000. We will be obtaining all hardware from the University of Connecticut Underwater Sensor Network Laboratory for designing and testing. In terms of software the version of Code Composer studio we use is a license free version provided by the company. At this time we have no plans to use the $1000 budget but in the future we may consider using funding to buy additional digital signal processing boards from Spectrum Digital if necessary. Timeline of Events September October • Project Statement. •Background research in existing Localization methods. January •Ranging and pool tests using two nodes. •Hardware setup of remaining nodes. •Field testing of algorithms . November •Project specifications. •Additional localization research. •Coding DSP C February •Field testing of algorithms. •Algorithm comparison analysis. December •Code composer studio setup and completion of tutorial on coding in DSP C. •Finalize implementation plans. March •Field testing of algorithms. •Algorithm comparison analysis. April •Integration of localization with other groups. •Algorithm comparison analysis. •Ranging and noise pool tests using two nodes. •Coding DSP C algorithms. May •Complete integration of localization with an AUV. Shown above is an overview of our progress so far and our future objectives for the project. We have already conducted extensive research on the commerical and research localization methods. This November we plan to learn how to code the main component of the sensor nodes, the digital signal processing board. In December and January we will conduct pool testing to establish the sound speed of the acoustic signal in the pool water and get variance measurements corresponding to the water conditions of the pool. In Jaunary we will set up the required nodes for testing and begin field testing in the pool and if results are favorable, possiblly in the lake. Finally at the end of our timeline we plan to have a working accurate localization solution that can be integrated with an AUV. Team Roles Our group is tasked with creating an underwater localization system. Based on this objective we have divided up the work and roles as follows. Tausif Shaikh and Johanna Thomas will be coding the synchronous and asynchronous localization algorithms in C based on the data delivered by the acoustic modems. Patrick Lazar and Tausif Shaikh will both be responsible for updating the senior design website with our current progress. Patrick Lazar and Kaleel Mahmood will study the existing acoustic modem code developed by the Underwater Sensor Network Laboratory and make modifications corresponding to the transmission schemes used in the different localization setups. Together all members will conduct range and noise tests. Kaleel Mahmood and Patrick Lazar will be responsible for hardware setup in these tests and Johanna Thomas and Tausif Shaikh will be responsible for the data analysis from the tests.