{tiat . I .1. 3.15. x. x ..... 7 .n. .1, x :3 3 .1». =51 . . .v +ummmwb ilk» PM i z 4.3... . . rag.“ 3.1“}. "sun fits-ha anh.i3.:i...m .Hqfluuv ; Ebwfil $25.0.» Eh. a. 9.3:... {‘fiu in .5” , ti .3 19 .. urn}: afltmi 1.4.: .5...- 3...v . :9 v8.11 , .. ... lazygxi. ..«71..I|Iilu,..11" 11% l LIBRARY it";58‘{*:'t State Ui'iiife retty y—.’ ' 4‘“ I This is to certify that the thesis entitled DEVELOPMENT OF SMALL BIOMIMETIC ROBOTIC FISH WITH ONBOAFID FINE-GRAINED LOCALIZATION presented by STEPHAN W. SHATARA has been accepted towards fulfillment of the requirements for the MS. degree in Electrical Engineering Major Professor’s Signature /o/a7/Zoof Date MSU is an Affirmative Action/Equal Opportunity Employer uo-n—v-0-.-o-O---0-o-t-v-o-c-u-o-I-n--uo-.--—A- — PLACE IN RETURN BOX to remove this checkout from your record. TO AVOID FINES return on or before date due. MAY BE RECALLED with earlier due date if requested. DATE DUE DATE DUE DATE DUE 5108 K1/Prog/Acc8PresIClRC/DateDue.indd DEVELOPMENT OF SMALL BIOMIMETIC ROBOTIO FISH WITH ONBOARD FINE-GRAINED LOCALIZATION By Stephan W. Shatara A THESIS Submitted to Michigan State University in partial fulfillment of the requirements for the degree of MASTERS OF SCIENCE Electrical Engineering 2008 ABSTRACT DEVELOPMENT OF SMALL BIOMIMETIC ROBOTIC FISH W’ITH ONBOARD FINE-GRAINED LOCALIZATION By Stephan W'. Shatara The recent interest in migrating dense wireless sensor networks to aquatic environ- ments has challenged the existing protocols that once were sufficient in ground—based networks. One challenge is achieving decimeter-scale localization resolution under- water, for use in dense aquatic wireless sensor networks. Firstly, this thesis presents the development of a mobile platform in the form of a small biomimetic robotic fish, meeting node constraints for building a scalable and dense aquatic mobile sensing network. Secondly, this thesis investigates inter-node ranging using time-of—fiight of underwater acoustics. Four methods of estimating signal arrival time is investigated, with emphasis on a recursive algorithm (SDF T) based on the discrete Fourier trans— form and capable of joint time-frequency analysis. Analytical and empirical study of the SDFT method reveals signal transients to be the root cause of detection latency. A method for compensation is outlined and implemented online, allowing for detec- tion within 1.4 wavelengths of the ranging signal. Finally, the robotic fish is tracked, demonstrating onboard fine—grained localization capabilities of the platform. ACKNOWLEDGMENTS I would like to thank: God, my family. my graduate advisor and director Of the Smart Microsystems Laboratory Dr. Xiaobo Tan, members Of the Smart Microsystems Lab- oratory including Stephan Henneberger, Nathan Gingery and Bryan Thomas. who have worked directly on this project, Mr. John Thon from Holt Junior High School for pool access and construction of the fish body, employees of Holt Junior High School, Assistant to the Dean for Recruitment and K-12 Outreach Mr. Andrew Kim, the Department of Electrical and Computer Engineering, the College of Engineering, and finally Michigan State University. iii TABLE OF CONTENTS List of Tables ............................................. vii List of Figures ............................................ viii List of Symbols ........................................... xi List of Acronyms .......................................... xii 1 Introduction 1 1.1 Motivation ................................. 1 1.2 Aquatic Wireless Sensor Networks .................... 3 1.2.1 Underwater Acoustic Channels ................. 3 1.2.2 Position Awareness ........................ 5 1.2.3 Node Mobility ........................... 6 1.2.4 Distributed Time Synchronization ................ 7 1.2.5 Proposed Architectures ...................... 7 1.3 State of the Art .............................. 8 1.3.1 Acoustic-Based Modems ..................... 8 1.3.2 Underwater Vehicle Navigation ................. 9 1.4 Localization and Ranging ........... V ............. 11 1.5 Range and Angle Estimation ....................... 13 1.5.1 Angle of Arrival (AOA) ..................... 14 1.5.2 Received Signal Strength Indicator (RSSI) ........... 15 1.5.3 Time Difference of Arrival (TDOA) ............... 16 1.5.4 Time of Flight (TOF) ...................... 17 1.6 Localization ................................ 18 1.6.1 Triangulation ........................... 19 1.6.2 Trilateration ............................ 20 1.6.3 Multilateration .......................... 21 1.6.4 Localization Error ........................ 22 1.7 Coordinate Systems ............................ 24 1.7.1 Absolute Positioning ....................... 24 1.7.2 Relative Positioning ....................... 25 1.7.3 Absolute Coordinates in CPS-free Networks .......... 25 1.8 Biomimetic Aquatic Robots ....................... 27 1.8.1 Electroactive Polymers (EAP) .................. 29 1.8.2 Smart Materials and Swimming Robots ............. 30 1.9 Contribution ................................ 32 1.9.1 Acoustic Signal Detection .................... 32 iv 2 Development of the Platform 35 2.1 History of Robotic Fish at MSU ..................... 35 2.2 Platform Constraints ........................... 36 2.3 Platform Hardware ............................ 37 2.3.1 Power Module ........................... 39 2.3.2 Actuation Module ......................... 42 2.3.3 Sensing Module .......................... 47 2.3.4 Wireless Communication l\v'Iodule ................ 48 2.3.5 Buzzer Module .......................... 49 2.3.6 Microphone Module ........................ 51 2.3.7 Processing Module ........................ 56 2.3.8 Programming Module ...................... 60 2.4 Platform Software ............................. 62 2.5 Waterproof Packaging .......................... 63 2.6 Base Station ................................ 64 2.7 Graphical User Interface: Fish Debugger ................ 66 Range Estimation 69 3.1 Acoustics ................................. 69 3.1.1 Medium Characteristic Impedance ............... 70 3.1.2 Signal Pressure in Air and Underwater ............. 71 3.1.3 Acoustic Propagation ....................... 71 3.1.4 Characterization of Acoustic Signal ............... 74 3.1.5 Root Mean Square of Signal Pressure .............. 75 3.1.6 Reverberation, Absorption and Backseattering ......... 76 3.2 Threshold Method ............................ 84 3.2.1 Threshold Method Performance in Air ............. 85 3.2.2 Threshold Method Performance in Water ............ 87 3.3 Tone Detection Method ......................... 88 3.3.1 Experimental Results ....................... 89 3.3.2 Tracking with Tone Detection Method ............. 90 3.4 Correlation Integration Method ..................... 91 3.4.1 Experimental Results ....................... 93 3.5 Sliding Window DFT (SDF T) Method ................. 94 3.5.1 Short—Time Fourier Transform .................. 96 3.5.2 Derivation of SDFT Algorithm ................. 99 3.5.3 Effect of Signal on SDFT ..................... 102 3.5.4 Compensation Function ..................... 110 3.5.5 Implementation of SDFT Algorithm ............... 112 3.5.6 Experimental Results ....................... 118 3.5.7 Tracking of the Robotic Fish ................... 120 \f 4 Conclusion and Future Work 122 4.1 Conclusion ................................. 122 4.2 Future Work ................................ 125 4.2.1 Power Supply ........................... 125 4.2.2 RF-Independent Underwater Ranging .............. 126 4.2.3 Three-Dimensional Movement .................. 127 4.2.4 Signal Sequencing ......................... 128 4.2.5 Ranging Signal Frequency .................... 129 4.2.6 IPMC Related Performance Improvement ........... 130 4.2.7 Energy Harvesting ........................ 130 Appendix 132 A Thermal Considerations of MIC29300 .................. 132 B Platform Power Consumption ...................... 133 C Cruising Speed Experimental Results .................. 134 D Extended SDFT Ranging Results .................... 135 E dSPIC30F3012 Pin Connections ..................... 139 F PCB Layouts ............................... 140 G Acoustic Propagation Speed ....................... 142 Bibliography ............................................. 144 vi LIST OF TABLES 2.1 Comparison of Knowles Acoustics’ WP and MR waterproof microphone series . .51 2.2 Specifications of Microchip’s dsPIC3OF3012 ............................. 56 3.1 Absorption coefficients (at 2.8 kHz) corresponding to surface areas ........... 76 3.2 Cycle breakdown of SDF T algorithm using standard arithmetic operations ..... 111 3.3 Cycle breakdown of SDFT algorithm using MAC/MSC operations ........... 111 3.4 Example of fractional ‘1.15’ data format ................................ 115 4.1 Comparison of implemented detection methods ........................... 123 B-l Current consumption - component breakdown ........................... 132 D-l Dimensions of investigated passive fins ................................ 133 D-2 Attainable cruising speed of robotic fish ................................ 134 F-l Pin out connection of dsPIC .......................................... 138 vii LIST OF FIGURES 1.1 Anticipated scenario of AWSN implementation .......................... 8 1.2 Active ranging system ............................................... 14 1.3 Passive ranging system .............................................. 14 1.4 Determining signal angle of arrival ..................................... 15 1.5 Two dimensional localization in a bounded plane ......................... 19 1.6 Computing node position using AOA ................................... 20 1.7 Locating a node using trilateration ..................................... 21 1.8 Locating a node using multilateration ................................... 22 1.9 Absolute versus relative coordinate systems .............................. 24 1.10 Principle of actuation behind an IPMC material .......................... 31 1.11 Characterization of the acoustic signal ................................. 33 2.1 Various modules of G3 .............................................. 38 2.2 Comparison of battery technologies .................................... 40 2.3 Power module and battery status indicator ............................... 41 2.4 Actuation module and IPMC control signal .............................. 43 2.5 Speed improvement with passive fin .................................... 44 2.6 Onboard generated IPMC signals ...................................... 45 2.7 IPMC clamp construct used on the robotic fish ............................ 46 2.8 HMC6352 2-Axis digital compass ...................................... 48 2.9 Wireless module .................................................... 49 2.10 Buzzer module .................................................... 50 2.11 Omnidirectional performance of WP-series microphone .................... 53 2.12 Microphone Module ................................................ 54 2.13 Bode plot of the microphone module ................................... 55 2.14 Peripheral connections to the DSC ..................................... 60 2.15 Schematic of the DSC .............................................. 61 2.16 Schematics of ICSP and switch ....................................... 61 2.17 Current experimental setup ........................................... 62 2.18 Waterproof casing for G3 robotic fish .................................. 65 viii 2.19 Built prototype of G3 biomimetic robotic fish ............................ 65 2.20 Base station and programming unit .................................... 66 2.21 Screen capture of SML’s Fish Debugger ................................ 68 3.1 Underwater recording of the acoustic signal ............................... 74 3.2 Plot of p2rms of buzzer signal versus distance r ............................ 77 3.3 Illustration of experimental enclosure ................................... 78 3.4 Recorded reverberation in test enclosure ................................ 81 3.5 Backseattering volume of reflected acoustic pulse .......................... 82 3.6 Comparators configured for threshold method ............................. 85 3.7 Ranging results in air of the threshold method ............................. 86 3.8 Ranging results underwater using the threshold method ..................... 87 3.9 Tone detection circuit ................................................ 89 3.10 Underwater ranging results using the tone detection method ................. 89 3.11 Tracking of the robotic fish using tone detection for ranging ................ 91 3.12 Analysis of correlation integration method in air .......................... 93 3.13 Underwater ranging results using the correlation integration method .......... 94 3.14 Linear chirp signals in time domain .................................... 95 3.15 Chirp signals in frequency domain ..................................... 96 3.16 Joint time-frequency analysis of chirp signals ............................ 97 3.17 Example of the DF T on a sinusoid .................................... 98 3.18 Short-time Fourier transform ......................................... 99 3.19 Block diagram of SDFT algorithm ................................... 102 3.20 Frequency response of a CIC filter .................................... 102 3.21 Analysis window with arriving signal ................................. 104 3.22 Analytical results of SDFT method ................................... 107 3.23 Effect of amplitude on proposed SDF T algorithm ........................ 109 3.24 Experimental results verifying effect of amplitude ....................... 110 3.25 Effect of parameter modification on spectral leakage ..................... 115 3.26 Effect of prescaler gain g on background noise ......................... 118 3.27 Range estimation using the proposed SDF T algorithm .................... 119 3.28 Tracking of robotic fish using SDF T algorithm .......................... 121 ix 4.1 Li-Ion battery pack balancing PCB ..................................... 126 4.2 Localization using mobile nodes as anchors .............................. 128 4.3 Pulse sequence used for ranging, to reduce false signal detection ............. 129 C-1 Investigation of tail dimensions on cruising speed ........................ 136 D-l Range estimation over 22 m using the proposed SDFT algorithm ............ 137 F-l G3 printed circuit board layout ....................................... 140 F-2 G2 printed circuit board layout ....................................... 141 F-3 G2 robotic fish .................................................... 141 F-4 Base station printed circuit board layout ................................ 142 LIST OF SYMBOLS FSymbolJJ Description [Value I Units J A Steady state amplitude of ranging signal V cw Speed Of sound underwater 1485 ms—1 Fcy Instruction cycle frequency 14.74 MIPS Fosc DSC Oscillator frequency 7.37 MHz F3 DSC Sampling frequency Hz f0 Buzzer Signal frequency Hz N Fourier sequence length p Acoustic Signal pressure Pa 7" Node separation distance In F Estimated range m Vmic Output of microphone module V V3 Regulated power supply voltage 3.3 V A Signal wave length m 7' Signal rise constant. S xi LIST OF ACRONYMS AOA AVVS N DSC EAP IPMC J TFA MAC MIPS MSC RSSI SDFT SPL STF T TDOA TOF Angle Of arrival Aquatic \Virelcss Sensor Network Digital Signal Controller Electro—active Polymer Ionic Polymer Metal Composite Joint Time-Frequency Analysis Multiply Accumulate operations Million Instructions Per Second Multiply Subtract operations Received Signal Strength Indicator Sliding Window Discrete Fourier Transform Sound Pressure Level Short-Time Fourier Transform Time Difference of Arrival Time of Flight xii tn. CHAPTER 1 INTRODUCTION 1 . 1 Motivation \Vireless sensor networks have the potential for numerous applications throughout areas of industry, government, science, and even in the commercial world. The placement of small devices (or nodes) around critical points for continuous real-time sensing and monitoring of physical phenomenon brings many new Opportunities. AS an example, monitoring of seismic or sea. storm activity can be used as early warn- ing indicators, curbing potentially disastrous Situations. More recently, research advancement has emphasized dense and mobile fine-grained networks, with small, low-cost, power-efi‘icz'ent nodes. Ultimately, this can achieve pervasive yet unobtru- sive monitoring solutions, an unimaginable feat merely a. decade ago. The introduction of node mobility transform these networks to ones capable of adapting to their environment (self configuring), changing formation or position on command, and moving to new locations of interest without the need of retrieving or wasting deployed resources. Node position awareness, both within the network, and geographically, is necessary for achieving the aforementioned capabilities. Equally important is the association Of spatial information with sensed data for analysis purposes. Thus, mobile networks require localization capabilities. In the past decade, interest in migrating ground-based wireless sensor networks to aquatic environments emerged, Shifting from primarily military use to commercial and scientific use. The potential application of mobile aquatic wireless sensor net- works (AWSN) for exploration of the vastly unknown depths of the Earths oceans, seas and lakes, in addition to monitoring of (non)drinking water quality, is acceler- .‘.‘1 A w ‘ ~. .. I V . . , .. V v A .‘ - l K. by r .1. ating research in this field. Research in the fields of marine biology, oceanography and geophysics also have the potential of benefiting from such networks. While some design concepts can be successfully migrated from research in its ground-based counterpart, many challenges remain fundamentally different when dealing with aquatic environments. Ground—based wireless sensor networks typically rely on radio waves for communication, and on existing infrastructures such as the global positioning system (GPS) to provide crucial position information. In contrast, the limited propagation of radio underwater (less than 1 m) makes it ill-suited in AWSNS. While advances in acoustic telemetry are proving to be a promising alternative to radio, commercially available modems are typically designed for sparse, long-range, expensive systems - contrary to the desired implementation of AWSNS. Subsequently, the shift to underwater acoustics introduces its own set of unique problems such as propagation delays, limitation on data transfer bandwidth, and bounds on carrier frequencies. Current technological setbacks on commercially available products, and constraints due to the nature of aqueous environments have hindered a true large- scale realization of AWSNS. While problematic in network synchronization, propagation delays of underwater acoustic signals are ideal for inter-node ranging methods, a prerequisite for localiza- tion. Ranging is achieved by timing propagation delays of an acoustic signal between two points of interest. While the concept is not new, the implementation of onboard, underwater, acoustic-based, ranging capabilities while adhering to node constraints is a challenging one, particularly in reference to cost and Size. In addition, due to the longer wavelength of underwater acoustics, every missed cycle of the ranging signal will add Significant errors. Thus, achieving decimeter-scale localization resolution onboard resource-constraint nodes is a challenging problem. The motivation of this thesis is two-fold. Firstly, the development of a mobile .,~ l"' r , .‘.'.. . . t H r4 V. .. .. . . \ . ‘. , .. 7.. . N I .. . ‘> t. t .‘ ‘I l. .. , . ‘ I ._.-..‘- ' I .. ” r .i ,. ‘ a —. W .. ‘ -t.. , . .7 a; . \ ll..}_ V r , ”L \ I; t: —, I \ P “L L" | platform in the form of a small biomimetic robotic fish propelled by an electro—active polymer (EAP), meeting node constraints for building a scalable and dense aquatic mobile sensing network. Secondly, this thesis investigates four methods of estimating signal arrival time, with emphasis on a recursive algorithm (SDFT) based on the discrete Fourier transform, and capable of joint. time-frequency analysis. Analytical and empirical study of the SDFT method reveals signal transients to be the root cause of detection latency. A method for compensation is outlined and implemented online, allowing for detection within 1.4 wavelengths of the ranging signal. Finally, the robotic fish is tracked in an experimental testbed, demonstrating onboard fine- grained localization capabilities Of the platform. 1.2 Aquatic Wireless Sensor Networks While not a main focus, the platform and ranging techniques developed and presented in this thesis are intended for eventual use in fine-grained mobile AWSNS. AS such, there is a need to briefly introduce AW SN 5 and further identify applications, research challenges, proposed architectures, etc. It should be noted that successful and optimal realization of AVVSNS requires extensive inter—disciplinary efforts, from oceanographers, to digital signal processing engineers, and even field biologists. W'hile research from its ground-based counterpart offer rich insight into aquatic wireless networking, fundamental differences between the environments prevents a direct migration of the developed protocols, algorithms, etc. A few of the research challenges are outlined below. 1.2.1 Underwater Acoustic Channels VVhIle electromagnetic waves have limited range underwater, acoustics are capable Of long-range propagation due to the properties of the medium and the physical nature Of the Signal. Unlike wireless links in air, underwater acoustic channels are temporally and spatially variable due to the physical nature of the enviromnent, and exhibit high bit error rates. A few characteristics of underwater channels are outlined below. 0 Acoustic Propagation - While the Speed of sound cu, underwater is approxi- mately 1.485 X 103 IDS—1, it is dependent 011 salinity Sm, depth Dm, and water temperature Tm [9]. This causes acoustic Signals to propagate along curved paths, consequently creating Silent zones where the transmitter is inaudible. o Bandwidth - Acoustic links underwater are bandwidth limited, depending heav- ily on the transmission range and frequency. Both research and commer— cial systems typically cannot exceed 40 kmxkbps as the maximum attainable rangexdata rate [8]. It should be recognized however that in some applications, any form of communication (albeit. being at low bandwidth) is more important than high data rate transmission. The former is sufficient for use in platform and network control, while the latter is necessary for eg. live video feeds. 0 Transmit Power - Out of the four functions of sensor nodes (sensing, transmit- ting, receiving, computing), transmission can consume Significant power, play- ing a major role on the system’s energy budget. In dense networks, minimal transmission power is desirable, helping to reduce interference with neighboring nOdes. This comes at the cost. of higher receiver signal-to-noise (SNR) ratios and Shorter effective ranges. 0 Signal Attenuation - Both radio and acoustic attenuate in relation to r_2 due to spherical spreading. Unlike radio, underwater absorption losses is Signifi- cant and highly dependent on frequency, introducing a practical upper limit of around 100 kHz. Multipath reflection from the water surface, bottom, hard Obstacles and Sides (in case Of an enclosure), and scattering from rough water ,. \ . n u . “in. i 'I a , lY . , \ A“ ,, I .‘ I‘ro r u 1. inf. ‘i ' .t , a p .l I 4 a-.. l l A H l. l surface, all add to transmission losses. Many of the aforementioned points, such as surface scattering and temperature ef- fects, are more prominent at longer distances. By targeting Short-range acoustic links, the only significant losses are due to spreading and absorption. Analogous to Short-range radio communication in wireless sensor networks, multihop acoustic communication can be utilized to relay data and commands across the network. 1.2.2 Position Awareness In static sensor networks, node positions are either known (and hence localization is not necessary) or requires a one-time setup. However, that is not the case in dynamic systems, which require constant position update. The process of identifying node position within the network is also critical as the use of sensed data is limited without Spatial information. A recent technological launch was GPS in 1993, which gave mobile objects the ability to determine their absolute position anywhere on planet Earth. While GPS might seem like an obvious solution to node localization, a few key points are worth mentioning. 0 Position is determined by triangulation between the receiver and satellites or- biting Earth. Communication is done using radio frequency (RF) and assumes a direct line of sight (LOS). Consequently, GPS fails indoors and in thick veg- etation. Due to high frequency absorption in water, CPS will also fail if units are submerged. 0 Current commercial-grade absolute error of GPS systems is 10 - 20 m. W'hile Impressive in its own sense, the goal of fine-grained localization is to achieve decimeter scale resolution in positioning. More specifically, resolution has to be Comparable to the separation distance between neighboring nodes. Fri; 0 Power consumption of GPS units can reduce node lifetime, and consequently the effective network lifetime. 0 In large networks, cost of GPS units can amount to a significant percentage of total network cost. 0 Finally, a GPS unit along with its antenna can increase the Size of the node, taking volume and space away from more important functionalities. In conclusion, GPS is not effective in high density, fine-grained networks. In addition, the aquatic environment does not favor GPS. Therefore, CPS-free methods have to be used in the localization process. Ideally, the alternative CPS-free solution will be low cost, will not rely heavily on infrastructure, is rapidly deployable, scalable, and can achieve decimeter-scale ranging resolution. 1 .2.3 Node Mobility In many applications, fixed nodes are sufficient for monitoring and detecting local events. However, the aquatic environment is highly dynamic, and many occurring processes will disperse across large areas. Therefore, dynamic observation utiliz- ing mobile (or floating) nodes coincides with the ever-changing environment. The advantages of node mobility are two—fold: 0 VVith monitoring and tracking, four dimensional (spatial and time) data sam- pling can be retrieved from the field. Alternatives include repeated measure- ments while towing sensors on boats. ' Dynamic systems offer ease in changing or updating observation areas, tracking certain processes, and increasing system reusability. PI“Posed network protocols not. considering node mobility will therefore most likely fail if applied directly to mobile AW SNS. 1.2.4 Distributed Time Synchronization \Vithout CPS as a source for system timing, developed protocols and applications rely heavily on distributed time synchronization. Assuming near instantaneous inter- node communication, Timing-sync Protocol for Sensor Networks (TSPN) [3] demon- strates the capability of a radio-based network of achieving an accuracy of tens of microseconds. The protocol however does not consider large latencies as present in underwater acoustic—based wireless links, which is a dominating source of error. A high latency protocol, such as Time Synchronization for High Latency Acoustic Net- works (TSHL) [4], is designed to reduce such errors. With TSHL protocol, nodes first compare their time to a centralized timebase, and secondly Swap their clock skew with communicating nodes. The first phase is unaffected by propagation delays, while the second phase allows post-communication synchronization. 1.2.5 Proposed Architectures While authors in [1] anticipate an AW SN as a combination of static and dynamic nodes, with the latter being the less dominant, Cui et al. focused solely on mobile nodes [2]. Applications include oceanography, marine biology, pollution detection, seismic monitoring, and oil/ gas field monitoring to name a few. AS illustrated in Fig. 1.1, the network can take advantage of dense deployment (anticipated inter- node separation distances range from 1 in to 100 m) of sensor nodes and use mul- tihop communication. Data is relayed to buoys (or platforms) equipped with radio communication, allowing data transmission back to command centers on the ground. Buoy/Platform \.._ -.. WW ‘ - i ...... Mobile Node Acoustic m 1:32. .2. “4°de i ‘\(((&;<( Acoustic Channel / /\ 16* a; re. Figure 1.1: Anticipated scenario of an aquatic-based wireless sensor network [1]. 1.3 State of the Art In this section, advances in acoustic-based modems for underwater communication and ranging are covered. While some are intended for sensor networks, others are built to support existing technologies such as autonomous underwater vehicles (AUV). 1 .3.1 Acoustic-Based Modems Recent research efforts have motivated the development of relatively compact and cheap acoustic-based modems for communication and ranging use in sensor networks. Aquanodes [53] are capable of dual optical and acoustic underwater communica- tion. Built around a 600 MHz digital signal processor (DSP), implementation Of the acoustic modem is based on frequency-shifted keying (FSK) modulated signals using 30 kHz carrier frequency, providing 300 bps up to 400 m, with 10 W transmission power. In a similar work, the software-based acoustic modems [54] also uses FSK mod— ulated acoustic signals. The difference however is the carrier frequency of around 3 kHz, the significantly lower transmission power of 0.8 \V, and the processing core is a microcontroller. Experimental results for 24 bps transmission rates shows the symbol decoding reliability averaging 88% up to a range of 10 m. The research department Of Acoustic Communications at “foods Hole Oceano- graphic Institute (WHOI) [55] have also developed an acoustic-based modem [56], built around a 160 MHz DSP. Depending on the modulation technique, the pmodem is capable of over 2000 bps. However, these nodes are targeted to support. au- tonomous underwater vehicles, providing telemetry, control and positioning capa- bilities. The pmodems transmit with less than 50 W of power, and is capable of communication ranges reaching well above a few kilometers. 1.3.2 Underwater Vehicle Navigation Autonomous underwater vehicles are essentially unmanned robots operating in sub— surface aqueous environments, set to perform various scientific research and military tasks. AUVS are considered cost-effective alternatives to manned submersibles and remote operated vehicles. Unlike true sensor nodes however, these vehicles are large and expensive. While research has produced numerous prototypes in the past. couple decades, only a few companies such as WHOI manufacture commercial-grade AUVS. Three primary methods are identified for navigation of autonomous underwater vehicles [29], outlined below. 0 Dead—Reckoning and Inertial Navigation Systems - The integration of vehicle velocity and heading with respect to time is applied to estimate vehicle position. One fundamental problem of such navigation is the unbounded error as travel distance of the AUV increases. 0 Geophysical Navigation - Assuming an accurate a priori map of the environ- ment is available to the AUV. location awareness is possible through sensing 9 of environmental physical parameters, mainly bathymetry, magnetic fields and gravitational anomalies. Such methods are expensive to implement, both mon- etarily and computationally. Extensive field study is required, and parameter matching onboard the AUV is far from a simple task. In addition, one assump- tion is that sufficient spacial variation exists for accurate parameter matching. 0 Acoustic Navigation - Acoustic transceiver arrays, or beacons, are utilized for vehicle guidance. Common implemented systems are grouped into either long baseline (LBL) or ultra—short baseline (USBL). Long Baseline (LBL) In these systems, an infrastructure of acoustic transceivers are deployed in the field, fixed at known positions. Upon reception of acoustic pulses transmitted by the AUV, beacons reply with their own pulses. The AUV can then estimate ranges by measur— ing acoustic propagation time from each beacon. By inferring range estimates from at least four beacons and knowing their geometry, the AUV is capable of computing its position in three dimensional space. The primary technique for positioning is locating the intersection of spheres with radii based on signal propagation time, a process known as trilateration. A passive variant of LBL is hyperbolic navigation, where AUVS are only fitted with receivers, thus decreasing its power consumption. Instead, the fixed beacons transmit acoustic pulse in a sequence relative to each other, each at a certain frequency. The vehicle reconstructs its position knowing the sequence, frequencies, and measured arrival time of different pulses corresponding to each beacon. LBL systems, such as from Hydro International [31] boast a depth—independent. accurate subsurface positioning, with applications for the offshore oil/ gas industry. Demonstrated range accuracy is less than 0.5 In over ranges below 5 km. High accu- racy 1n Signal detection is achieved by a combination of spread-spectrum signaling 10 [57] (which also increases effective range) and frequencies in the ranges Of 10 kHz to 45 kHz. In addition high acoustic source levels of over 200 dB re. 1 pPa @ 1 m, with transmission powers as high as 50 W are used. These values greatly exceed the system specifications of the hardware implemented in this thesis. Ultra Short Baseline (USBL) USBL systems are characterized by a multi-element receiver array attached to the vehicle. The reference to ultra—short is derived from the small Spatial separation distances between the receivers in the array, which are typically on the order of ten centimeters. These arrays are mounted on dynamic platforms such as surface vessels, where it can track the bearing of the AUV by measuring phase difference of the arriving signal. Following similar procedures as with LBL systems, position in three dimensional Space can also be computed. Although not a USBL system in nature, [30] provides implementation of an AUV capable of acoustic-based angle and range estimation using multiple receivers. Although LBL and USBL positioning methods are successfully utilized in the field, they are not directly applicable to true mobile AWSNS. The involved hardware is typically large, expensive, and exceed in computation power than what is desired. The vision set forth in this thesis is more consistent with the work presented in the software-based acoustic modems. In that sense, nodes are resource limited to reduce overall Size, cost and power consumption, while still achieving communication and ranging capabilities. 1.4 Localization and Ranging T' ' . - W Ithln the wireless sensmg commumty, It 18 well est ablished that spatial information 13 JUSt as important as the sensed data. After all, once an event is observed. a natural fOllow up question is where? III addition, knowledge of node position has been used 11 in routing protocols [5] and even determining possible coverage [6] of a network. Positioning has been demonstrated as early as 1923 by W'oods et al. [15], where a Ship was located with an accuracy of half mile radius over a maximum range of 40 miles. The method, which would later be coined the term time-of-flight (TOF), measured the propagation time of an acoustic signal, created by detonation of ex- plosives underwater. An underwater infrastructure of acoustic receivers with known positions was then used to solve for the location of the ship using the time of arrival at each receiver array. Over ninety years have passed since the publication by VVOOds et al., and TOP— based ranging remains a key method for locating nodes within a wireless sensor network. The difference, however, is the available technology. Since then, the world has seen the introduction of integrated circuits in the mid 19608 and more recently the advances in MEMS technology, allowing sophisticated and accurate sensing, storage, processing and communication to be embedded in inexpensive and unobtrusive sensor nodes. Both GPS and the mentioned TOP—based method perform several distance mea— surements with reference to different anchor points (with known locations), before applying the data to identify node position. This is in fact central to all localizing Systems. Two phases are necessary to achieve location awareness in a network. The first is distance or angle estimation between neighboring nodes (or fixed beacons). The second is combining these estimates to locate the node within the network. III 1; his thesis, a distinction is made (terminology-wise) between the two phases. Range or angle estimation refers to the first phase, while localization is reserved for the t'srpically geometric methods of identifying node position. 12 1.5 Range and Angle Estimation Various methods are used to estimate distance or angle between a node and either its neighbors, a fixed beacon, or baselinel. Common range estimation methods can be categorized into angle of arrival (AOA), received signal strength indicator (RSSI), time-of-flight, and time difference of arrival (TDOA). The methods are applicable to a variety of Signals, including RF, acoustic (audible or ultrasonic), infra—red, or their combination. Central to all ranging techniques, however, is the requirement for positive identification of the ranging signal, for accurate range estimates. In underwater acoustic-based ranging methods, such a point is critical as detection latency can add Significant errors due to the larger wavelength underwater compared to air. The most common Signal detection methods and protocols are outlined in further detail below. Active Ranging Systems All ranging systems can be divided into active or passive systems. In active ranging SY stems, as depicted in Fig. 1.2, a single node not only transmits a Signal but also listens for a reply (either through echoing or signal transmission upon reception by d1 St ant nodes), while timing the difference between transmission and reception. The estimated range F between the two nodes is computed as half of the time of flight ITIl‘Llltiplied by the speed of the signal c in the medium of Operation, \ ~ g r=c 2 1 . . The vector formed between two anchor nodes used as a ranging reference on the mobile node (1.1) 13 1' , ‘ '\\ A.‘ l l, . . . . A' \ 4 d a. K" x. -. ,H .r .' ~ V ., .. “‘ a. \ n .‘ Dm E ‘ .. I ‘l L ‘ ' \ , r,‘ .l . l t. 7M1 . f1__|_L|—L_J—|_ ’ —' l—' U '32 (D < Figure 1.2: Active ranging system involves bidirectional signal transmission. G f1__l—l_l—l_l—l_ >@ Figure 1.3: Passive ranging system involves unidirectional signal transmission. Passive Ranging Systems In passive ranging systems, as depicted in Fig. 1.3, node 1 transmits a signal f1 to a. distant receiving node 2. Upon reception of the signal, node 2 computes the range 57 between the two nodes as the time of flight multiplied by the speed of the signal 0 in the medium of operation, 7‘ = c - At. (1.2) In both ranging systems, transmitted signals can either be periodic with known frequencies, or a series of accurately timed pulses. The task of the receiving node is t- hus detection of the signal through either frequency-domain or time—domain analysis, r e"81)ectively. 1 - 5.1 Angle of Arrival (AOA) Tllese systems estimate the angle at which signals are received. With such informa— t’ 1011, triangulation is used to determine the position of the node by solving a set of t’ r i genometric equations. Built around Mica motes [22], authors from [25] measure the time of arrival of t’ 11I‘ee optical pulses, originating at. generators fixed at known locations. The optical geallerators are rotating at some constant arbitrary (but known) angular velocity w’, 14 ® Q) . Received Pulse 0k, Tim:> Figure 1.4: Determining ranging signal angle of arrival, using optical pulses [25]. with known phase difference 0. Using the difference in arrival time 7' from consec— utively received optical pulses, the angle a between the two optical generators, as seen from the sensor node (Fig. 1.4), can be computed, oz=wT—6. (1.3) 1 -5.2 Received Signal Strength Indicator (RSSI) RSSI methods measure the transmission loss between a transmitter-receiver pair, and applies propagation models to translate the loss to a range estimate. RF is com— monly used in RSSI ranging methods, which amongst other, exhibit 7“"2 transmission l()SSes due to spherical spreading. One critical issue with RSSI-based ranging is the uncertainty in RF signal propagation in cluttered environments such as indoors or 1J~3[“t)an areas. To obtain fine-grained localization, environment-specific propagation 111()dels have to be determined a priori. Such is the case in RADAR. RADAR [19], which is described as an indoor user locating and tracking system, is Carried out with respect to fixed base stations. In an offline phase, RSSI data are t abulated every 14 m2 in a 43.5x22.5 In office space, with which an empirical-based IIlodel can be derived to be used in conjunction with signal propagation models. 15 During real—time operation, RSSI measurements from three base stations are used to look up data from the offline phase to determine user location through triangulation. RADAR is able to achieve a median resolution in the range of 2 to 3 m, enough to distinguish between different office spaces. An obvious disadvantage of the RADAR system is the necessary preplanning effort, which increases preparation time before deployment, and cost due to running of the offline phase. It should be noted that. the mobile node and the base stations are Pentium—based computers. A similar system is demonstrated onboard smaller nodes in the PicoRadio project from UC Berkeley. PicoRadio [20] is a another RSSI-based localization system to be used in mixed indoor and outdoor environments. PicoRadio is targeting small (3 1 cm3), low power nodes with RF communication at fairly low bit rates over short distances, capable of creating a simple communication network. Equipped with sensors, PicoRadio is transformed into a sensing network. Possible applications outlined are uses in indoor smart home environments, industrial sensing, and in locating people, with the possibility of having both static and dynamic nodes. Similar to RADAR, PicoRadio requires an environment-specific propagation model for accurate range estimation. 1 - 5-3 Time Difference of Arrival (TDOA) Time difference of arrival occurs when a common signal arrives at spatially separated receivers. In these systems, both range and angle estimation can be inferred from t’ he setup, of which is key for locating node position within the network. In acoustic-based TDOA systems such as [32] (Fig. 1.5), the signals arriving at. 116 receivers are given as, 7'1(t) = s(t)+n(t) 7‘1(t) = as(t — A) + n(t) (1.4) 16 where s(t) is the transmitted signal, 71(t) recorded background noise, A some un- known time difference of arrival, and a an attenuation factor. The angle 6 between the baseline and the transmitter is estimated by means of computing the cross- spectral density between the signals arriving at the two receivers. Locating the transmitter in [32] is based on constructing hyperbolic lines corresponding to the time difference of arrival, and finding their intersection [33]. 1.5.4 Time of Flight (TOF) AS outlined in the example of locating a ship, this method is based on measuring propagation time of a signal. Typically RF signals are used in conjunction with a slower moving signal such as acoustic (or ultrasonic) signals. RF signals travel at or = 3 x 108 ms"1 while e.g. acoustic signals in water travel at roughly cw = 1485 ms‘l. W’ith a difference of over five orders of magnitude, it is assumed that the RF signal is received almost instantaneously, and the time difference of arrival is roughly equal to the time of propagation of the acoustic signal. Note that even at an inter-node separation distances of 100 in, the error induced by such an assumption is Only 4.93x10_4 m. For a similar scenario in air, computed error is over four times SIIlaller. Being a form of passive ranging, the distance between the transmitter- I‘€?Ceiver pair can be estimated by equation (1.2). Implementation of TOF-based localization is done in BAT [24], Cricket [21] and AHLOS [23]. Cricket [21], designed for the Oxygen Project at MIT, uses fixed bea- QOTIS mounted on ceilings and walls to transmit RF packets and an ultrasonic pulse C 40 kHz) concurrently. Range is computed passively by a mobile listener, which uses a“ tone decoder IC to detect the arrival of the ultrasonic pulse. Determining the I)QSition of the listener is done through geographic information embedded in the RF Signals transmitted by the beacons, which include a unique ID and a programmable String identifier. While the ranging error is less than a few inches, Cricket achieves 17 location granularity of 4x4 feet. The second system, BAT [24], which is intended for use in an active office en- vironment, can locate users with an accuracy of a few centimeters. Triggered by a central PC over RF, a mobile node activates an onboard ultrasonic transducer. On the receiving end, a fixed array of ultrasonic detectors on the ceiling, time the interval between the triggering RF signal and the ultrasonic pulse. h'lultilateration method is used to compute the position of the user based on the range estimation. Detection of the ultrasonic pulse is done by monitoring the signal level digitally, after it is amplified, rectified, smoothed and digitized. Commercially available Mica motes [22] come optional with radio-acoustic based ranging electronics (RSSI-based ranging is also possible on the platform). The acous- tic signal is generated using a 4 kHz pieozelectric buzzer, while a tone decoder IC (tuned to 4 kHz) on the receiving end detects the pulse arrival. 1 - 6 Localization 111 this section, phase two of localization is investigated. Given range and angle estimates, it is possible for a node to determine its position within a network using Simple geometric relations. This section covers three primary methods used to locate 11CDCIes within a network: triangulation, trilateration and multilateratz'on. As it turns out, every range or angle measurement reduces the positioning prob- lelh by one degree of freedom. Thus locating a. mobile node (MN) uniquely in n- CiiII‘lensions generally requires (72 + 1) such measurements. While the introduced 10Qalization methods are described for two dimensional positioning, as applicable to t’he proposed system, they are readily expandable to the third dimension. Before proceeding, we describe a simple system for two dimensional localization in a bounded space as illustrated in Fig. 1.5. In an unbounded space, three range or a’Iigle measurements are necessary to uniquely locate a node. With only two mea- 18 Figure 1.5: Two dimensional localization in a bounded plane. surements, the solution is a 2X1 vector, where the entries are mirrors of one another along the baseline (vector AB in Fig. 1.5). However, by introducing boundaries in space, one of these locations can be ruled out, thus being able to uniquely locate a node in two dimensions with only two fixed nodes (FNi, 2' E {1, 2}). With both angle and range measurements from the baseline to the mobile node 1V1 N , one can determine its position using the law of sines and cosines, Law of Sines: A?) BC .413 sin to sin 6 sin "y Law of Cosines: .4222 = Bahm‘z—mmbcom (1.5) 1 - 6.1 Triangulation hiangulation is the process commonly used to determine node position when angle 1116‘c‘isurements are provided with respect to a fixed baseline. To determine a unique the position in two dimensional space, three angle measurements are needed, hence three arbitrary reference points are required. The system presented in [25] uses three fixed nodes FNZ- with known locations (512,531,), 2' E {A, B, C}, and angle mea- 19 Figure 1.6: Computing position P using angles of arrival [25]. surements a and [3 (Fig. 1.6) formed between ZAPB and ABPC, to compute the position of node MN at some point. P, $1, = :rb + Rcos('y — 7}) yp = 315 — RCOSH - n) (1.6) vvhere R : Lsin(oz + ’7’) Sin (1 7 = tan—1 7%] sin ,6 — sin ,6 cos6 — cos ,6 sin 6 (1.7) sin ,6 sin 6 — cos ,6 cos 6 - 76% 1 ~ 6.2 Trilateration 111 systems where angle measurements are unavailable, localization purely relies on r aJflge estimates. In two dimensional positioning, trilateration uses the intersection of t11I‘ee circles (Fig. 1.8), and spheres for three dimensional localization. Determining I)(Dsition is based on constructing right-angled triangles and using the Pythagorean theorem to compute for node location. 20 ’ ‘s ” \ \ l’ ............ ‘\ ‘ ’ I \ ‘\ ’I I \ ‘ I I \ I l ‘ ‘ I I " W\\ I, I ' “‘ ’1’ '. 'I ........... “ I ‘ I ‘ I \ I \ I I 2 l \\ I \ I \ I I Figure 1.7: Locating a node using trilateration, based on range estimation. Applying the method to the bounded two dimensional scenario illustrated in Fig. 1.5, we assume the baseline distance d =2 A2? is known, and range measurements provide estimates for 7‘1 2 AC and r2 2 BC. Angle measurements 6 and tp are unknown. The geometric coverage of ABC can be divided into two right-angled triangles, thus to locate node MN at point. C, Pythagorean theorem is applied, (7‘? -— 7%) + (12 2d yc = T? — 1% z \/'r% — (d — Ia)2 (1.8) Tc 1 . 6.3 Multilateration TI‘ilateration and triangulation methods use range and angle estimates, respectively, alOng with geometric relations to locate a dist ant node. Multilateration, on the other hand, uses the time difference of arrival of a ranging signal at multiple receivers FN, With known location. With two receiving nodes, the transmitting node is located on a hYperbola. The introduction of a third receiving node provitiles a total of two TDOA measurements. Node MN is then located at the intersection of the two hyperbolas. 21 Figure 1.8: Locating a node using multilateration, based on time difference of arrival. The curves represent constant differences in distance to the mobile node with respect to FNI. For FNz- and FNJ- (z 75 j), the equation of the hyperbola Pi,j (Fig 1.8) is given as, my = C Difl’S) 2 “1522-358”: (19) where 332' is the position of FNi, and 1175 the position of the unknown node MN. 1.6.4 Localization Error With zero error measurements, the described localization techniques are based on the intersection of lines (or circles) and geometrically computing position. In practice, range and angle measurements are noisy and lines of position do not intersect, leading tO localization errors. A quantitative method is necessary to compare the actual Variance in a measuring system to a theoretical value, derived using the Cramer-Rao 1Ower bound (CRLB) rule. First we consider a vector of noisy range estimates, (1.10) ‘3? II + Q) 22 where r : .M X 1 is the true range and 6 : Al x 1 is noise assumed to have zero mean. One common approach for estimating F from a noisy set. of measurements is the least squares (LS) method, which aims at. fitting approximate curves to noisy data curves. The resulting approximation vector 7‘3 minimizes the cost function, Q(r3) = [s—rsz - [IT—rs]. (111) Note that with Gaussian noise, the least squared method achieves the maximum likelihood (ML) estimate. A common quantitative approach for performance evaluation is the Cramer-Rao lower bound, which computes a lower bound on the variance of an unbiased estimator of a deterministic parameter. The application of CRLB allows us to compare the mean-square error (MSE) of a certain ranging system with a theoretical minimum MSE [17], or the CRLB. The MSE is given as, MSE = (/E [(7‘ — 7‘3)T - (r — 73)] (1.12) Where E [] is the expectation, 7‘ the actual distance, and 7‘s the approximation vector derived from the LS method. The CRLB is defined as the inverse of the Fisher information matrix J, Jo) = E (1.13) (-——-><——-—>J Which is a means of quantifying the difference between the observable random variable 7'=T3 ? and the unknown parameter 7*. According to [18], the CRLB of time variance 0 D of a passive system reduces down to a =—————— 1.14 D SNR ( ) 23 Pij "1 o" 'gv" ’5' ' “"" p y / / Figure 1.9: Node position in absolute and relative coordinate systems. when the signal-to—noise ratio is high (S NR >> 1), as is the case with the experi- mental test enclosure used in this project. The theoretical value given in (1.14) can be used for true performance evaluation and comparison. 1.7 Coordinate Systems Once a node is located, its position can either be defined in an absolute or relative coordinate system. 1.7.1 Absolute Positioning Positioning in this coordinate system (also referred to as global coordinate sys- tem) is done with respect to some global frame, where all disjunct nodes within the defined geometric space are referenced to this particular frame. The absolute position of any node n,- = (32,, 62'.» 2,7) in common three dimensional space with re- SDect to a reference frame 0(5130, yo, :0), can be defined by its corresponding vector pi = (($2- -— 1230), (y,- — yo), (3,: — 20)) extending from origin 0 to itself (Fig. 1.9). Em- phasis is placed on the uniquenes of vector p,- due to referencing to some global frame. 24 LI fl...» 1.7 .2 Relative Positioning Unlike absolute coordinate systems where node position is defined relative to a fixed frame, a relative coordinate system lacks a fixed origin, and must define node po- sitions with respect to some other point. If we consider nodes 71,: and nj (where z' 7Q j), we can define vector Pij = ((-;r,j + .177), (—y,: + yj), (—z,: + 23)) linking the two nodes (Fig. 1.9). Due to the lack of a reference frame, vector p, j is only fixed in itself and not to a reference frame, thus the solution is not. unique. With relative positioning, every node provides a solution of its neighbor’s location, only unique to itself. In other words, every node creates its own coordinate system where its neighbors are assigned a position with respect to itself at the origin. With- out the use of an infrastructure for location referencing, nodes can only be located relativistically. To deal with conversion from a relative coordinate system to one that is global, [35] introduces information-exchange methods in CPS-free networks. In [34], the Absolute Positioning System uses both inter-node range information and GPS signals available to sporadic nodes to produce such a global reference frame. 1.7 .3 Absolute Coordinates in GPS-free Networks Before proceeding with techniques used to locate a node within a network, it is desirable to investigate how construction of absolute coordinate systems are proposed in GPS-less networks such as AWSNS. Three fundamentally different methods are investigated. Authors of [37] present a coarse-grained2 localization system, capable of providing Proximity information of a mobile node. Their proposed network involve beacons Capable of short-range (S 10 m) RF communication, placed strategically such that their coverage overlap. A mobile node then listens to radio signals transmitted by 2Coarse-grained systems only provide proximity information, while fine-grained localization deals Wlth computing accurate positions 25 the beacons, which contain its position and unique ID. The mobile node can then localize itself by means of determining areas of signal overlap, and associating it to a physical region. Authors of [36] present. a different. perspective on constructing a global coordi- nate system, one that is independent of inter-node range estimation. Their proposed scenario involves highly dense networks, with randomly dispersed static sensor nodes in a two dimensional plane, each with some known maximum attainable communi- cation range d. Their equivalence of range estimation is a gradient algorithm, where upon selecting a ‘seed’ node, sensor nodes lying on consecutive rings with radius d are assigned an incremental integer value. Thus sensor nodes lying on the ith ring outward from the ‘seed’ node will have a range of dxz'. Upon sharing gradient in- formation, sensor nodes can use three gradient measurements (including one to the ‘seed’), to compute its position relative to the ‘seed’ node. This algorithm allows a network to define positions in the global sense with the ‘seed’ node as its origin. It is also possible to track a mobile node placed within the static sensor nodes, by inferring its neighbors for their position with respect to the ‘seed’, thus computing its global position. So far, the mentioned systems depend on static nodes, a notion that. the proposed System is avoiding. In a third paper [35] the introduced method is referred to as Self-Positioning Algorithm (SPA). For use of SPA, it is assumed that the network iS infrastructure-less, where nodes have low mobility (S 20 IDS—1), are capable of bidirectional wireless communication between neighboring nodes, and are all identical in computing power. These requirements are all applicable to the proposed system. Initially nodes construct their local (or relative) coordinate system, by placing themselves at the origin and locating neighboring (defined as one-hop) nodes with respect to themselves through e. g. time of flight. At this point, each node will have defined an :1: and y axis in different directions. The next step is to rot ate (and possibly 26 mirror) local coordinate systems to match a common direction, thus constructing an absolute reference frame. In a simpler case, this common direction is chosen as the local coordinate system of some arbitrary node i. The position of remaining nodes are computed with respect to the origin of the chosen local coordinate system, the point where node 2' resides. In mobile networks however, it is expected that. node 2' will move, at which point common network direction and positions of all nodes have to be updated to reflect the change. A more stable method (albeit being communication demanding) for determining network origin is based on the geometrical center of all nodes, with the common direction computed as the mean of all local coordinate systems. 1.8 Biomimetic Aquatic Robots Engineers and scientists are increasingly turning toward nature for inspiration, lead— ing to innovations far superior to what humans alone could have designed. Over billions of years, natural selection has produced effective solutions to complex prob— lems, where inefficiency and waste of resources are intolerable. Biomimetics is defined as the transfer of technology from biological systems to a synthetic form. Amongst many others, biomimetics has led to the development of nanopin films, a highly wa- ter repelling material. This superhydrophobicity characteristic was developed based 011 the complex microscopic structure found on leaves of the lotus plant. Dr. Julian Vincent, the director of the Center for Biomimetic and Natural Technologies at the University of Bath, estimates that. “at present there is only a 10% overlap between biology and technology in terms of the mechanisms used”. Thus, the potential for further research and development in biomimetics is staggering. 27 The application of biomimetics to robotics has followed the same 1‘)rinciples, de- signing robots to not only look and move life—like, but to be just as efficient in their sensing and actuating capabilities as their biological counterpart. The idea of biologically-inspired robots is not. new in the field of underwater robotics, allowing e. g. a less intrusive approach to marine research. With the advancement of electron- ics and introduction of novel materials, such as electro—active polymers, researchers have rushed to produce fish-like swimming robots. This section presents current advancements in the field. Different research groups have approached the development of robotic fish in dif- ferent manners, all however attempt to reproduce life-like motion and hydrodynamic forms. Propulsion of these robots come through direct biological observations of different. locomotions, mainly using the tail end of the robot: 0 Carangz'form - These fish use their body to direct undulating waves toward their caudal fin, which may or may not oscillate. This locomotion is commonly described as the undulation of the last third of the fish’s body. 0 Thunnz'fovm - These fish strictly rely on oscillatory motion of their caudal fins, and typically have bodies lacking lateral motion. SUbsequently, most. common development of biomimetic fish have followed as either single-link robots to produce thunniform locomotion, or multi—link robots for carangi- forrn locomotion [43]. The use of pectoral fins as either a main source of propulsion 01‘ as an aid to the caudal fin has also been investigated [48, 49]. An interesting development in this field is the coordination of multiple robotic fish to perform simple underwater tasks. In [42] three robotic fish are used to transport a box from an initial point to some goal location. Using their heads, the robotic fish are required to push the box only on one of its sides. It. should be pointed out that location and orientation of both fish and the box are recorded using an overhead camera. Connected to a personal etmiputer, data from the. camera are processed and 28 applied to control algorithms, which are finally transmitted back to the fish through RF in air. So far, these introduced systems have relied on servo motors for achieving propul- sion, with weights in the kilogram range and lengths on the order of feet. A newer class actuating systems come through the use of smart materials, which include elec- troactive polymers (EAP), piezoelectric actuators, and shape memory alloys (SMA). Smart materials are capable of producing mechanical motion through electrical acti- vation, and vice versa. Unlike motor-driven robots, robots using smart materials are designed smaller and lighter, partly to compensate for the reduced thrust capabilities of these novel materials. Before proceeding, EAPs are discussed in more detail. 1.8.1 Electroactive Polymers (EAP) Electro—active polymers are materials capable of undergoing deformation under acti- vation of an external voltage across its two surface electrodes. EAPs are categorized as one of either types: 0 Electronic - Actuation is based on squeezing the polymer, resulting from elec- trostatic forces between two electrodes. High voltages (on the order of kV) are required for actuation, making them hard to integrate in small robotics. O Ionic - These rely on ionic displacement within the polymer for actuation. Unlike dialectric types, these only require few volts for large deformation. Ex- amples of such materials are ionic polymer metal composites (IPMC) and con- jugated polymers. Actuation properties of IPMCs were first. reported in literature in 1992. Over the years, the applications of IPMCs in robotic systems have grown, mainly as an alternative to using traditional motors for actuation. This is primarily due to their higher energy conversion efficiency, extremely quiet operations, and significant weight. 29 reduction. Additionally, they are capable of large shape deformation (on the order of few tens of millimeters) at fairly low voltages (from 1 to 5 V). Since the i1‘1troduction of IPMCS, these materials have been explored in millimeter to centimeter scale robots [44, 45, 46, 50]. Working Principle behind IPMCS Ionic polymer metal composite materials are an important class of electro-active polymers, and are capable of both actuation and sensing. IPMCS are made up of a thin ion-exchange membrane (eg Nafion) that is chemically plated on both surfaces to produce two electrodes. Noble metals, such as platinum or gold are typically used for the surface plating. When a voltage is applied across an IPMC, the motion of ionized molecules within the membrane along with associated electrostatic interactions lead to a bending motion (Fig. 1.10). Inverting the polarity of the applied voltage will also invert the bending motion, and so continuous polarity switching of the applied voltage will create a oscillatory motion of the IPMC. Well documented in literature [38] is their ability to produce a voltage across the Inaterial’s electrodes under external mechanical stresses, providing opportunities in self-sensing actuators. Work done in [40] implements such a system through actuator- sensor integration of EAPS. Performing and monitoring open—loop micro-injection of living Drosophila embryos was successfully demonstrated as one application. Feed- back control has also been demonstrated [39]. 1 ~82 Smart Materials and Swimming Robots Ile to material effic1ency, low voltage actuatlon requirements, and flex1b111ty, EAPS 11 . . . ave eXcelled as compared to other types of smart materlals 1n actuation systems. In [44, 45], authors present an IPMC-propelled robotic fish using thunniform locomo- t. ‘ . . . . Ion. In [44], the produced prototype (w1th dnnensions of 98x45><20 nun) achieves 3O Metal layers on surfaces .m\- a .. 9‘ f 5. 93‘s: 9 '9 .5 ‘2‘ 8' g, Giltfiiio Polymrerlayer G o a 1%: fixed anion mobile cation water hydrated cation Figure 1.10: Principle of actuation behind an IPMC material. a cruising speed of around 24 mms—1 with an 8X10 nun IPMC strip. Tadpole—like [46] robots have also been investigated using IPMCS as undulating fins. The built prototype is 96x24 mm wide, weighs less than 35 g, and reaches a cruising speed of 23.6 nuns-1. Despite their seemingly advantageous constructs in terms of lighter weight and smaller Size, the aforementioned prototypes achieve con’iparable cruising speed results as the ones presented in this thesis and developed previously by the Smart Microsys— terns Laboratory [27]. Unlike the presented prototype hmvever, these systems are limited by lack of onboard ranging, computation power, and battery power. 1PMIC-propelled biomimetic aquatic robots have focused mostly on single-linked t hunniform locomotion. Work done in [41] investigates a dual link manipulator with IPMC joints, while authors in [51] have developed a swinnning robotic snake with Similar link configurations. To the best of our knowledge. it is noted that IPMC- based multi-link biomimetic robotic fish. with an IPMC oscillating caudal fin for 31 achieving true carangiform locomotion, has not yet been reported in literature. The use of shape memory alloys (SMA) for actuating fins has also been investi- gated in biomimetic robotic fish. A particularly interesting example is demonstrated in [47], where the simultaneous contraction and relaxation of SMA wire strips on either side of the caudal fin create an oscillatory motion. The robotic fish is 14.6 cm in length, weighing only 30 g, and reaches a maximum velocity of 112 Innis—1. 1 . 9 Contribution The contribution of this thesis is two fold, the first being the development of a plat- form, meeting node constraints set forth for implementing fine-grained, mobile sensor networks. The mobile platform is designed in the form of a biomimetic robotic fish, propelled by an ionic polymer—metal composite (IPMC), a type of smart material. The second contribution is inter-node range estimation based on timing of acoustic signal propagation underwater. Emphasis is placed on small, cheap, readily avail- able and non—ideal acoustic transducers, while achieving fine—grained localization. F our methods for detecting the arrival of the acoustic signal are implemented online, onboard the robotic fish. 1 -9.1 Acoustic Signal Detection The implemented ranging method is based on acoustic time of flight, where the protocol [26] is given as follows (Fig 1.11), 0 Step I - Node 1 transmits an RF packet to Node 2 to indicate it. is ready; ' Step 2 - Node 2 simultaneously transmits an RF packet and an acoustic pulse; ' Step 3 — Node 1 receives the RF packet and starts onboard timer; ‘ Step 4 - Node 1 receives the acoustic pulse and stops onboard timer; 32 0 Step 5 - Distance between receiver and transmitter is estimated from the timer reading. M —) Buzzer MW" Microphone Vmic Figure 1.11: Characterization of the acoustic signal. While the protocol seems straight forward, determining the precise time of arrival of the acoustic signal underwater is a challenging problem. Firstly, background noise can cause false detection, and transmission losses result in reduced effective ranges and lower receiver SNR. Hardware constraints limit prestorage of the arriving ranging signal for post computation, rather range estimation has to be done on—the-fiy. In addition, accurate ranging underwater is more challenging due to the larger signal wavelength. As an example, every missed cycle of a 5 kHz acoustic wavelength will accumulate around one foot of error underwater, compared to around 7 cm in air. Thus, a stringent requirement for the proposed detection method is immediate signal identification. Four signal detection techniques are investigated, two of which rely on hardware, Vvhile the remaining two are based on digital filtering techniques, ' Threshold method - A hardware comparator compares the incoming acoustic Signal with some voltage threshold. Detection of the acoustic pulse is achieved upon a threshold crossing. ' Tone detection method - The output of a tuned tone decoder circuit. signals the presence of the corresponding frequency within its passband. 33 0 Correlation Integration method - As the first. of presented digital detection methods, the incoming signal is correlated with a reference sinusoid with iden- tical frequencies. The result is integrated over time to produce an accumulating variable in the presence of the signal frequency. 0 Sliding window discrete Fourier transform method (SDFT) - A recursive algo- rithm based on joint time-frequency analysis is used to detect the presence of the frequency corresponding to the ranging acoustic signal. 34 CHAPTER 2 DEVELOPMENT OF THE PLATFORM I' This chapter explains the development of the plat form, covering both the hardware and software involved in producing a biomimetic, IPh‘lC—propelled robotic fish, with onboard ranging. The platform has been designed with the goal of use in a mobile aquatic wireless sensor network. The chapter starts with an overview of the platform at the board level, grouped in modules, each responsible for certain functionalities of the robotic fish. Following is the waterproof packaging method of the circuit and the production of the outer shell. On the software side, the embedded program is briefly covered along with communication protocols to and from the graphical user interface. Finally, the graphical user interface used for functioning and controlling the fish is described. 2.1 History of Robotic Fish at MSU The robotic fish project was initiated by the Smart ht'licrosystems Laboratory (SML) in 2005, with the goal of building small mobile platforms to be used in aquatic Wireless sensor networks. Naturally, the intended aquatic environment motivated the development of these platforms as biomimetic robotic fish actuated by EAPs. EAPS have great potential in the field of biomimetics, as these novel materials are Capable of energy—efficient, quiet actuation, and large displacements at low voltages. Since Angust of 2005, SML has developed three generations of robotic fish. 1- Auyust 2065, G] - The first robotic fish developed by a senior design team. GI iS equipped with a microcontroller and wireless connnunication, and was con- trolled through a graphical user interface. The outer shell was a commercially 35 available toy fish, modified to accommodate the circuitry. 2. August 2666, C1 - This version greatly improved the main issues facing C1, such as space optimization and waterproofing of the circuit. As a result, the size and weight of the node is greatly reduced. The circuit is also fitted with a temperature sensor, giving C1.1 true mobile sensing capabilities. However, the circuit was still confined to a toy fish shell. 3. August 2667, C2 - The first platform with ranging capabilities. Two ranging methods are implemented onboard C2, the threshold method and the tone de— tection method, the results of which are presented in this thesis. This platform is also the first with custom build outer shell, and hence has a potential to optimize the shape and size. New methods are also used for waterproofing the circuit and clamping the EAP. 4. August 2668, C3 - An upgraded version of C2 and the main focus of this thesis. The main upgrade is the computation capabilities, from a microcontroller to a digital signal controller (DSC), allowing the implementation of two more complex ranging algorithms, the correlation integration method and the sliding window DFT method. Onboard sensors include ambient temperature sensing, battery status indicator, and digital compass for heading information. The EAP electrodes are also upgraded to solve corrosion issues. Onboard battery Power is significantly increased to provide hours of run time. 2.2 Platform Constraints When it comes to designing hardware, it is important to consider such things as he application, the envnonment of operation, and the desired performance. Sensmg ) . . . . . . I lat~f01‘rns are no exception and typically have stringent constraints and specifications that, need to be met. Further, the addition of mobility transform these platforms 36 from mere fixed sensing circuits to mobile robots. At the very least, this introduces the need for node and network control, node position tracking within the network, and higher power requiremei‘its due to the electro-mechanical components involved in mobility. In dense, fine-grained, mobile sensing networks, constraints on the network and node are either introduced intentionally or arise naturally. As with any standalone electronic device, power-awareness is a major design factor. For the purpose of iii- creasing run time, a constraint is typically introduced 011 how much power the node can consume. Consequently, the trend that high computational electronics demand more power, limits the onboard resources available to the node. This constraint on the computational capability of the node has a few advantages. Firstly, it helps keep node cost down, which is important when deploying large and dense networks. See- ondly, a limit on computational capability forces collective behavior on the network, a major advantage when dealing with mobile networks and node interchangeability. In the case of a node malfunction, node interchangeability and low cost avoid po- tential network break down and large financial losses. The constraint» on node size and weight arises from mobility and power limitations. The smaller and lighter the node, the less power is required for moving. In addition, node size is an important constraint when trying to achieve high ranging resolution. Decimeter ranging reso- lUtiOIl means that the node size has to be comparable. The platform introduced in this thesis is designed such that it meets the aforementioned constraints. 2 -3 Platform Hardware While the ranging results presented in this thesis involve both C2 and C3, the descrip- t. ' . . . . 10“ 0f the platform only covers the latter. Technical information. such as schematics 11d chtures of C2, are given in the Appendix. Iii order to gain a clear understai‘iding f the platform’s hardware. a brief description of each module is given. 37 l—l 5° .4 a FIT OE] .- run 2 in, M icrosystems a ) Robotic Fish Figure 2.1: Board layout of C3 showing the various modules. Power Module — The main power source for the platform, along with the voltage regulation for powering the complete platform. Actuation Module — Using EAPs for achieving fish mobility, along with the power HEXFETS. The EAP electrode construction is also covered in this section. Sensing Module — Temperature sensor for sensing ambient temperature, battery status indicator, and digital compass used for platform heading. Wireless Communication Module - Using lV’Iaxstream’s XBee wireless commu— nication chip, a ZigBee compliant system-on-chip. - Processing Module - The processor responsible for running the robotic fish, along with processing sensed data. C3 is built around a digital signal controller (DSC). - Microphone Module — The module responsible for amplifying the acoustic signal Used for ranging purposes. - Buzzer Module — The module responsible for generating an acoustic signal, used for ranging purposes. 38 J *vr v—nx 8. Programming Module - Iii-circuit serial programming capabilities of the plat.- form. The master switch is also part of this module. 2.3.1 Power Module Ideally, sensor networks deployed in the field are designed to run unmanned for periods of time. The period of deployment is application specific. and can range from days to years. Regardless of the networks’ lifespan, it is important that nodes have access to a reliable power source to avoid interruptions in data acquisition. Options include a permanent onboard power source (battery), the ability to extract energy from renewable sources, or a combination of both. While the field of energy harvesting has been around for decades, the efficiency of current technologies does not permit it to be used in the robotic fish. Consequently, only battery sources have been explored. While numerous battery technologies exist, only a. few stand out as being suitable for standalone platforms such as the robotic fish. In accordance to node constraints, the battery needs to be light, cheap, and preferably hold a high charge density to prolong run time. A few battery technologies worth mentioning are Nickel Cadmium, Nickel Metal Hydride, Lithium Ion, and Lithium Polymer. Nickel Cadmium (NiCd) and Nickel Metal Hydride (NiMH) While being a standard power source for hand-held electrical devices for years, N iCd technology is somewhat outdated. N iCd batteries are heavier than newer technologies and suffer from the memory effect. This describes the gradual decline of maximum Charge capacity of the battery when repeatedly recharged after being only partially discharged. As a direct consequence, this significantly reduces the lifetime of the battery. NiCd batteries also have special disposal requirements due to their toxic COrnposition. NiMH batteries on the other hand are not toxic, do not. suffer from 39 the memory effect, are lighter, and have a higher charge density. A serious downfall of both NiCd and NiMH is their low terminal voltage of 1.2 V. Since most. standard electronics run at 3.3 V or higher, a. few of these batteries are required to achieve a higher terminal voltage, increasing the weight and size of the node. Lithium Ion (LiOn) and Lithium Polymer Out of commercial batteries, lithium ion and lithium polymer have the highest charge density to weight ratio and do not suffer from the memory effect. In addition Li- based batteries have a terminal voltage of 3.6 V, and so fewer cells are required to provide the unregulated voltage to a circuit. While lithium polymer batteries have a. slightly higher charge density to weight. ratio, they come at a higher price. LiOn batteries make a good choice for many stand alone electronic devices as they offer a good balance between charge density to weight ratio, and price. A comparison of various battery technologies is illustrated in Fig. 2.2. 300 *3" in . .. ,4 . Li-ion ' Li-ion Polymer g 200 __ , 100 ® . Lead Ac‘d Smaller—b 0 100 200 300 400 500 W Figure 2.2: Comparison of energy density of various battery systems [60]. Onboard the robotic fish, two LiOn batteries are used in series to produce a terminal voltage of 7.2 V with a full capacity of 2600 mAh, which from here on is referred to as the battery pack. Each battery weighs 46.5 g, and is 18.3 mm in diameter with a height of 64.9 mm. While in certain applications such dimensions and weight would be considered small and light, in comparison to the robotic fish, 40 that is not the case. The weight of the battery pack accounts for almost 5000 of the onboard electronics. In addition, the printed circuit board (PCB) width is designed around that of the battery pack to minimise overall volume. Voltage Regulation and Thermal Consideration The voltage from the battery pack is regulated down to 3.3 V, with which the onboard components use for power. The linear voltage regulator (Micrel’s MIC29300) shown in Fig. 2.3, is chosen for its high continuous output current of up to 2.5 A, lack of radiation of RF interference, and low dropout voltage (350 mV). Although the board’s average current consumption is well below this upper limit, peak current consumption can surge to over 750 mA each time the EAP is required to change its deformation (actual value of surge current depends on EAP dimensions). MIC293OO 3.3 Figure 2.3: Power module and battery status indicator. While the voltage regulator is designed to provide high continuous output current, thermal considerations including the use of heat sinks are necessary for high currents such as what we are dealing with. Relying on the package’s rate of heat dissipation alone can cause overheating of the regulator, leading to thermal shutdown, which necessitates built-in control to avoid component damage. A few simple calculations are made (see Appendix) to get a sense of the thermal resistance 65 A required for heat sink selection. 41 Battery Status Indicator A serious drawback of LiOn batteries is their susceptilnlity to enter a state of deep discharge, which mainly occurs when they are fully discharged so often. To avoid such a situation, it is recommended that the terminal voltage on LiOn batteries do not drop below 3 V (6 V for the battery pack), and so monitoring battery status becomes necessary. Shown in Fig. 2.3 is a voltage divider, with input. as the voltage from the battery pack, and output going to the DSC for monitoring purposes (refer to Sensing Module). 2.3.2 Actuation Module A few options are available for achieving mobility of the robotic fish, the most obvious choice being DC or servo motors. The effectiveness of servo motors is evident. in a very popular robotic fish developed by University of Essex [52], which is used to achieve an undulation motion of the back end of the body and tail. On the other hand, commercially available robotic toy fish such as from Swimways use DC motors along with gears to achieve a flapping motion of the caudal fin alone. Regardless of the method of motion, using motors pose some issues, such as efficiency of energy conversion (through dissipation to thermal energy), risk of me- chanical breakdown, and noisy operation. Instead, the built prototype uses an IPMC material as a caudal fin to achieve thunniform locomotion. Control of Caudal Fin In order to achieve a. oscillatory motion of the IPMC material, a square wave is generated onboard the DSC, and is routed through two HEXFETS (International Rectifier’s IRF7307) to provide the power directly from the voltage regulator. The drain of each HEXFET is connected to each surface of the IPMC through an IPMC Clamp construction. Each HEXFET outputs a square wave with frequency fa. = 42 1/Ta, with a 1800 phase shift from one another, creating a differential voltage of i3.3 V (Fig. 2.4). Right FET Lefi FET Differential T a Voltage IPMC 90 Orientation \ OC2-p15 Figure 2.4: (a) Standard square wave for straight motion, (b) actuation module. The main form of forward speed control comes through varying the actuation frequency fa. Further, the addition of a rigid passive fin to the IPMC piece to increase the effective surface area, improves the forward speed of the robotic fish (Fig.2.5). A mathematical model of the robotic fish [27] for with and without a passive fin, reveals an optimum actuation frequency where maximum velocity occurs. The shape of the current passive fin, a symmetrical homocercal common to burst swimmers, is chosen based on its efficiency for acceleration. Likewise, the dimensions of the IPMC material are chosen based on certain con- siderations. Most of the bending of the IPMC occurs around the clamp, and so the angle of deformation 60 (Fig. 2.4) can be assumed almost constant past that inter— face. With this, the length :1: of the IPMC material can be reduced, and the rigid passive fin acting as a mere extension, will also displace an equal angle of deforma- tion. The main interest in reducing the length :r is for power conservation. The Width y on the other hand affects the force produced by the IPMC, with a general trend of one being proportional to the other within certain limits. 43 20 _A U! 0" Speed [mm/s] O = D =’ — LO- Without passive fin — With passive fin 1 1.5 2 Frequency [Hz] Figure 2.5: (a) IPMC material fitted with passive fin, (b) speed comparison with and without passive fin [27]. A second form of speed control comes from the amount of power supplied to the IMPC piece, to change the angle of deformation 6a, while keeping the actuation frequency fa fixed. Pulse width modulation (PWM), a technique commonly used in robotics to control the power output to a load, is implemented onboard the robotic fish. PWM is based on a high frequency square wave whose duty cycle da (given as a percentage) controls the average of the waveform, in this case voltage. da Output Voltage[V] = 3.3 V- 100% (2.1) Clearly, setting da = 100% will produce a 3.3 V square wave signal, while da = 0% will disable the HEXFETs. PWM can therefore provide voltages to the IPMC in the range of 0 — 3.3 V in increments of 1 percent. The output voltage to the IPMC is proportional to 6a, and consequently the amount of water being displaced by each Stroke of the fin. This leads to a linear relationship between the speed of the robotic fiSh and da, with the maximum speed occurring at da 2 100%. PWM can also be used to generate a sinusoid. Fig. 2.6 shows the different signals generated onboard the robotic fish. While PWM is capable of achieving a high resolution in speed 44 control, high frequency switching used in generating a PWM signal also consumes more power than a pure square wave, and is therefore not favored. 4 l I O 0.5 1 1.5 & w T A .3 l Voltage I V] N O L-——-—- E o 0.5 1 1 5 4 f , 3 _ 'l 2 - u 1 _ A 0 - n . ii 0 0.5 1 1.5 Time [s] Figure 2.6: IPMC control signals generated onboard the robotic fish (a) square wave, (b) pulse width modulated square wave (c) sinusoidal signal. IPMC Electrode Construction Transferring the charge from the HEXFETS to the IPMC surface with the least resistance is important. Hindering the charge transfer will result in less deformation 0f the material. Therefore, a few points are critical in the IPMC clamp construction. 0 Electrode Material - The material has to have high conductivity and must be very stable. Gold-plated copper is a good choice due to the stability of the gold and high conductivity of both materials. The IPMC is also plated with a noble 45 Gold-plated % Copper Electrodes we.“ . Figure 2.7: IPMC clamp construct used on the robotic fish. metal (either gold or platinum), reducing the amount of surface reactions at the interface. Electrode Dimensions - Currently the electrode width matches that of the IPMC. The length on the other hand is limited to 5 mm. Assuming that the IPMC has equal conductivity along its entire surface, varying the contact area should not have an effect on the amount of deformation. The thickness of the copper piece is 1 mm, chosen for its rigidity and malleability, giving it the ability to shape into a perfectly flat surface. Clamp - A hair clip is used, with its tongues cut short as shown in Fig. 2.7. The back surface of the electrodes are fixed to the inside of each tongue such that when the clamp is in its natural position, the electrodes’ front surfaces are in contact. In this configuration, the EAP is clamped between the two electrodes. Wires from the HEXFETs are soldered directly to the back surface of the electrodes. 46 y, I ._ a i F f‘uu r Y‘ i\.i ‘N‘ .-. I . W'l l." A . - r >Vl r Y‘ I K. 2.3.3 Sensing Module While the robotic fish is designed for environment. monitoring purposes, potential sensors to be used in end applications were not considered in the design process. It is assumed that the platform can be modified to accommodate required sensors based on demand and application, leading to more efficient. usage of DSC pins, available space, etc. The purpose of the sensing module is for the control and status check of the robotic fish, and as such is considered to be essential in its basic operation. The following is a list of the current sensing capabilities of the robotic fish. 0 Temperature sensor - Placed inside the circuit casing, this sensor (National Semiconductor’s LMGI) is used for monitoring the ambient temperature within the waterproof compartment. Its main purpose is to detect high temperatures in the case of technical faults. The output voltage, connected to an A/ D pin of the DSC, is linearly proportional to temperature (+10 mV/OC), with a +600 mV DC offset. Upon user request, the voltage on the A/ D pin is read and converted to temperature onboard the DSC. Voltage — 600 mV 10 mV/OC Teinperature[OC] = (2.2) 0 Battery Status Indicator - Using a. voltage divider, the voltage level of the battery pack is normalized to the 0 - 3.3 V range, and fed into an A/ D pin of the DSC. The voltage read on the A/ D pin is converted to a percentage indicating the voltage level of the battery pack. Worst case values are assumed for the maximum and minimum voltages of the battery pack; Vi-nmar = 8.4 V (100%) when fully charged (open circuit voltage) and Hum)" = 6 V (0%) when recharging is recon'imended. Refer to Fig. 2.3 for a schematic of the voltage 47 divider. kT '. . - _ - - Normalized Voltage Vznnyzn Battery status indicator[%] = ( ) - 100% (2.3) n __ ,- l/H? 77? (1.17 L In The values for R1 and R2 are chosen based on l/mnnjn and Vinmaas- Equipped with this sensor, the robotic fish can seek charging stations in future imple- ment ations. 0 Digital Compass - This sensor (Honeywell’s HMC6352) returns the two-dimensional orientation of the robotic fish with respect to magnetic north, with a tenth of a degree in resolution. By placing the compass perpendicular to the force of gravity, the error due to tilt remains negligible. The sensor is connected to the DSC via the inter-integrated circuit (12C) bus, requiring only a serial data and clock line from the DSC. Using the 12C bus, the compass can be configured, calibrated, and read from. Used in closed-loop feedback sensing, data from 3.3 v Si 5 14 2 _ VDD E ¢SDA 7 D1 0 GND N Figure 2.8: Hl\v’IC6352 2-Axis digital compass. the compass is used to control the caudal fin such that the platform follows a. desired heading. 2.3.4 Wireless Communication Module Wireless capabilities of the robotic fish give it the ability of a closer realization to full autonomous control. The wireless chip utilized is l\xIaxstream's XBee, chosen 48 3.3 V / \ Q 2 vcc ADO fig U1ARX-p9 DOUT '3 J— “ AD2 as D UlATX- 8o-—3 DIN °’ '3 p :14 D08 23 AD3 17 .5. RESET g RTS E5 _6_ RSSI 0 ADS 1.5 .‘L PWM] a VREF M 15. NC {3 ON .12 RC15-p7<,_2 DTR 2 crs .1.2 t—I g—A 5—1QGND AD4 Figure 2.9: Wireless module. for its complete system-on-chip (SOC) solution, low pin requirements, and relatively low price. The chip operates at 2.4 GHz, in the unlicensed industrial, scientific and medical (ISM) band. The XBee is capable of 40 m communication range in urban environments, and 120 m in outdoor LOS situations, and can be configured to a maximum of 250 kbps. In idle mode, the XBee can consume up to 35 mW, and is capable of sleep mode through a single pin. The XBee is interfaced to the DSC through the standard universal asynchronous receive/ transmit (UART) port, and requires only an additional power and ground pin connection. In this system, the XBees are configured to a. baud rate of 38.4 kbps. 2.3.5 Buzzer Module Ranging amongst the robotic fish is based on time of flight of an acoustic signal, with the addition of RF packets for time synchronization. Since the robotic fish utilizes wireless communication, the RF packet is generated by the existing hardware on command from the DSC. The acoustic signal on the other hand requires both generation and detection hardware. The robotic fish generates an acoustic signal using a piezoelectric buzzer, and a microphone to detect the arrival of the signal. Due to RF attenuation underwater, the current platform deals with RF signals in air while the acoustics are left for subsurface propagation. 49 v Buzzer Figure 2.10: Buzzer module. Acoustic Generation Hardware The piezoelectric buzzer used onboard the robotic fish generates a single tone acoustic signal with a resonant frequency of 2.8 :l: 0.5 kHz. The main advantage of having a resonant frequency in the audible range (as opposed to ultrasonic range) is its omni-directionality. This avoids blind spots on the fish and hence arrays of buzzers or microphones are not required. The buzzer used onboard the robotic fish (CUI Inc., CPE267) comes in a water— proof package and is fitted with an internal driving circuit. At a rated voltage of 12 V, the sound pressure level (SPL) of the buzzer is around 92 dB, measured from a distance of 30 cm in air. To operate the buzzer at a higher voltage than the regu- lated 3.3 V available onboard the robotic fish, a. switched-mode DC—DC converter is used. Compared to linear voltage regulation, switched-mode regulation methods are more power efficient (above. 90%), and hence beneficial for battery operated devices. Maxim’s MAX761 integrated circuit is used with few additional external components to provide an output of 12 V, and a maximum *of 150 mA. The 12 V output of the DC-DC converter is used to power a non-inverting am- plifier circuit with a gain of 3.2. The input to the amplifier is the control signal from the DSC, while the output is connected to the buzzer. A signal from the DSC will trigger the buzzer for the specified pulse length. 2.3.6 Microphone Module Microphones are transducers that are capable of sensing pressure fluctuations in the medium and converting them to an electrical signal. While the quality of a. microphone plays a. significant role. in the accuracy of a measurement system, price is a factor that has to be considered. Three principal types of microphones are typically used in measurement systems, ceramic, dynamic, and electret condenser microphones. 0 Dynamic microphones - These use an inductive coil attached to a diaphragm, where the coil is placed within a permanent magnetic field. Any vibration in the diaphragm will induce a current in the coil. Dynamic microphones cannot be used in the vicinity of devices emitting magnetic fields, and have a limited frequency response. 0 Ceramic microphones - These utilize a piezoelectric (ceramic) element attached to the rear of a diaphragm. The vibration of the diaphragm exerts a varying force on the ceramic element, generating an electrical signal. These micro— phones are rugged, relatively inexpensive, and do not require a polarizing volt- age that electret and condenser microphones need. 0 Electret (or electrct-condenser) microphones - These consist of a self-polarized metal—coated plastic diaphragm. Vibrations of the diaphragm vary the sepa- ration between itself and a charged back plate, hence varying the capacitance and producing a signal. These devices have relatively low capacitance, posses long-term stability, and are insensitive to vibrations, making them ideal for 51 Table 2.1: Comparison of Knowles Aconstics’ \VP and MR waterproof microphone series. Series Immersion Depth[m] Sensitivity (Q 2.8 kHz) Dimension[mm] MR < 15 -57 dB re 1V/0.1 Pa 22.22 Dia x 7.6 H WP < 1 -53 dB re 1V/0.1 Pa 5.59 L x 4.01 W x 2.26 H precision measurements. While the term ‘microphone’ is used to refer to any sensor detecting sound pres— sure, the term ‘hydrophone’ is typically reserved for ones designed for underwater applications. The main design difference between the two comes in the acoustic impedance matching of microphones to air, and hydrophones to water. Hydrophones are commonly used for marine life research, and in recreation such as whale watch- ing. Their low demand have driven the few commercially available hydrophones to offer high quality systems at a high price, and sizes considerably large compared to the robotic fish. Aquarian Audio Products offer hydrophones at comparably cheap prices, small size and low weight. More specifically, the H1A model costs around 120 USD, with diameter of 25 mm and a height of 46 mm, weighing in at 105 g. However, such weight, size, and price still exceed our desired node constraints. On the other hand, Knowles Acoustics manufactures electret condenser micro- phones that come in waterproof packaging (WP and MR series), resistant to vibra- tions, omnidirectional, relatively cheap (less than 40 USD), and consume less than 50 MA. A comparison of both WP and MR series is given in Table 2.1. For verification purposes, the response of the WP series microphone is tested in air, with the incoming signal arriving at different angles. The sliding window DF T method is used for range estimation, providing information about algorithm performance with angle of arrival. The steady-state amplitude A is also recorded, providing similar results. The mean of three measurements were made at each angle, at a constant transmitter-receiver separation distance of 180 cm. From Fig. 2.11, the microphone is capable of detecting the incoming signal at all angles of arrival, verify— 52 270 270 Estimated Distance [cm] Amplitude [V] Figure 2.11: Estimated range and onboard computed steady-state amplitude A, for varying signal angle of arrival. ing its horizontal omnidirectionality. It is highly likely that the measured steady-state amplitude A is corrupted with room reverberation and echoing, introducing ampli- tude modulation, and hence inaccurate determination of the parameter. Despite this fact, the SDFT algorithm output is consistent, and independent of angle of arrival of the ranging signal. Dealing with analog signals, it is beneficial to estimate the voltage output Eout of the microphone when it detects the signal from the buzzer. The sensitivity L3 of a microphone is a measure of how much electrical output. is produced for a certain SPL input Lp. The WP23502 microphone has a flat frequency response, with sensitivity of —53 :t: 3 dB re 1V abar—l, while the CPE267 buzzer produces 92 dB SPL at a distance of 30 cm and input voltage of 12 V. Note that these values are based on operation in air. Eout = p ’10(I§8) p = P0'10(§g) (2.4) 53 Reference pressure level in air p0 = 20 pPa. Combining both equations, ECU, = p0-10(Lp+Ls)/20 = 2 x 10‘4 - 10(92—53V2O = 17.8 mV (2.5) Comparing this operation to underwater, where both the sensitivity of the micro- phone and SPL output of the buzzer drop, a significant drop in output voltage is expected. The output of the microphone needs to be amplified and filtered in order to produce a clean signal with considerable amplitude at greater distances. Am- plification and filtering can be achieved by a multiple feedback second-order active bandpass filter using operational amplifiers. An added advantage of op—amps is their high input and output impedance, making them ideal to isolate the load of the microphone from the rest of the circuit. 0.01 E 3.3 v 00 \O 470 :2 T ”-01,”: 7 h—W I _ AD865 E 3'3 V + Mp2 8 1 m 4 Figure 2.12: Multiple feedback bandpass filter used in the microphone module. The Laplace transfer function for this filter is given in (2.6), where too is the center angular frequency, G is the gain at too, and Q0 is the quality factor, —a-s 32+ (5%) -s+w8. For the values chosen, Q0 2 6.0503, “’0 = (2800 Hz)-(27r) and G = 72.3404. Note H(s) = (2.6) that the strict inequality Q0 > V05 - G has to be met during the design process to avoid negative values for R2. The output of the filter is DC-biased by half of V5. 54 This is to avoid non—symmetrical clipping of the microphone signal at the positive and negative power supply rails. For the purpose of increasing the gain even further, the above system is cascaded with an identical circuit. The Bode plot below is for both the single filter and the cascaded system. The phase plot indicates that the output of a single filter is phase shifted by negative 180°. Cascading two of these filters removes the phase shift and doubles the gain from 36.6 dB to 74.3 dB. 100 T ...44... e D. ....-. , s E — Cascaded Filter ' % 50f -- Single Filter. 3 V > ,, .3 g. o —50 200 ' fifiTTT'Im v f: vvrrufi a , ,fi,,i a 1oo~ .. a 0. - _ r.- ------ -------------—--.--.. a g 100 ‘ —200t ' ‘ \. — _ s-___,___. -300 A - . . .m.ii A . 1 . ..i+l - ‘ _, 102 103 104 10 Frequency [rad/sec] Figure 2.13: Bode plot of the microphone module. The calculation made in (2.5) shows an output of 17.8 mV when both the micro- phone and buzzer are in air, and the buzzer operated at the rated voltage. While the microphone and the buzzer are waterproof, operating them both underwater reveals a dip in performance of both devices. Loss in sensitivity and a drop in the SPL of the microphone and buzzer respectively come due to acoustic impedance mismatch between itself and water. Compensation for a performance drop underwater comes in the form of the large gain in the microphone circuitry. 2.3.7 Processing Module While the choices for a processing core are numerous, two major groups exist, micro- controllers (aC) and microprocessors (MP), and digital signal processors (DSP) and digital signal controllers (DSC). Generally, system requirements, constraints, and overall desired performance guide the choices made. Microprocessors and Controllers l\’Iicroprocessors, also known as central processing units (CPU), are integrated cir- cuits that are at the heart of all computation power in electronics. The first micro— processors were introduced in 1971 with Intel’s 4004. Although the 4004 was only capable of 4—bit addition and subtraction, the fact that it was integrated on a single chip was a huge step. Since then the advances in integrated circuits have been fol- lowing Moore’s Law, which suggests that the number of transistors in an integrated circuit doubles every two years, leading to phenomenal performance in smaller die area. While microprocessors have high computation capability, they typically have to be interfaced with additional external components for functionality, such as memory for programs. Microcontrollers 011 the other hand are designed to include the CPU and any additional hardware required for running programs and interfacing it to other devices. h’Iicrocontrollers typically come with builtin hardware for using standard protocols, such as I2C bus, UART communication, serial peripheral interface (SPI) bus, etc. Due to their integration of these standard protocols. microcontrollers are preferred when trying to save design time and space. 56 Digital Signal Processors and Controllers As the name suggests, digital signal processors are aPs designed specifically for use with digital signal systems. Their high processing power and speed make them ideal for running complex signal processing algorithms in real time. A common operation which DSPs support is the multiplication and accumulation operation (MAC), which perform both mathematical operands in one instruction cycle. MAC operations help reduce the computation time for the signal processing algorithms. While the robotic fish uses some form of signal processing for two of its ranging methods, DSPs offer more than the requirements in processing power and capabilities, and come at high unit prices. Digital signal controllers on the other hand, are a new hybrid cross between microcontrollers and digital signal processors. They are considered to be microcon- trollers with modified architectures, giving it the additional capability of performing basic signal processing for real time operations. DSCs are an ideal choice for the processing core onboard the robotic fish platform. h-"Iicrochip’s dsPIC30F3012 offers the advantages of a DSC on a small, power efficient, 18-pin package. Configuring the dsPIC30F3012 Table 2.2 provides some insight into the onboard computing resources. A block diagram of the DSC connected to the various modules and peripherals is shown in Fig. 2.14. A description of the specific configurations of each module is presented. 0 Clock Frequency and Instruction Cycle Frequency - In an effort to save space, the internal oscillator is selected as the main clock source, where F030 2 7.37 MHz. The instruction cycle frequency Fey, however, differs from F036 and is further configured by an additional PLL parameter (set to 8 in this case). The parame- ter Fey 2 1 /Tcy is often referred to with units of 1\’IIPS. or million instructions 57 Table 2.2: Specifications of Microchips dsPIC30F3012. [dsPIC30F3012 Parameter Name J1 Value Architecture 16-bit CPU Speed 14.7 MIPS Memory Type Flash Program Memory 24 kBytes RAM 2 kBytes Operating Voltage Range 3.3 V I/ O Pins 12 Pin Count 18 Internal Oscillator 7.37 MHz Digital Communication Peripherals l-UART, 1-SPI, 1—12C Analog Peripherals 1-A/ D 8x12-bit @ 200 ksps Capture-Compare/PW’RI Peripherals 2/ 2 Timers 3 x 16-bit per second, which is analogous to MHz. Fey = ——4—— = 14.74 MIPS (2.7) With the current configuration. the DSC is capable of executing an instruction cycle every 67.84 ns. Universal Asynchronous Receiue/ Transmit (UART) - This bus is connected directly to the XBee. and is responsible for the control of the wireless data transfer to and from the platform. Data transfer rate is set to 38.4 kbps, matching that. of the XBee connected to it and the destination node. UART uses two pins. one for each direction of data transfer (receive and transmit). 16-bit Timers (TMRJS) - Each of the three timers is responsible for various functionalities. TMRl is used for ranging purposes. TMR2 for configuring the PWM high frequency signal, while TMR3 is used as a general timer. To configure the maximum time Tynal; before the timer resets itself, both the TMRx prescale and PRx parameters are set to a value in the range of 0 to 58 216 — 1. Tr‘n.a1:[S] = Toy - TMRx prescale - (PRx + 1) (2.8) Output Capture (CC-r) - Responsible for generating the P\N.\I signals for actu- ation, OC1 and OC2 are configured to varying output based on specified duty cycle. The period of the high frequency signal is set in software, by selecting PRx values and TMRx prescale values accordingly. PWM Periodls] = 41-710,, . TMRx prescale . (PRx + 1) (2.9) Unsigned Integer A /D Conversion — This output data format has 12—bit res- olution, and set to a sampling rate of 100 ksps. It is used for sampling the normalized terminal voltage of the battery pack (used in the battery status i11- dicator), reading the ambient temperature from the sensor, and computing the signal steady-state amplitude used for ranging post-compensation purposes. The sampled value is converted to a. voltage prior to performing any computa- tion. Sampled Value Voltage[V] = 212 _ 1 3.3 v (2.10) Signed Fractional A /D Conversion - This data format has 11-bit resolution, and set to a sampling rate of 100 ksps. It. is used for sampling the incoming acoustic signal for use in the ranging algorithms. The sampled value is converted to a decimal in the range of -1 to 1 - 2‘15. For more details on fractional data. formats, refer to Section 3.5.5. Inter-Integrated Circuit (12 C ) - This standard bus is used to connect peripher- als to each other in master / slave configurations such as the digital compass to the DSC. Based on the software set parameter I2CBRG, the master (DSC in this case) generates the system clock F 9d used for data transfer rate between the two devices: 1 1 = . __ _ 2.11 I2CBRG Fey (F1 1,111,111) 1 ( ) SC Digital I / 0 Lines — Certain pins can be set as general digital input or output. In the case of the platform, a pin configured to digital output is used to control the buzzer module. Digital high on the pin turns on the buzzer, digital low turns it off. In-circuit Serial Programming ( I CSP ) - No internal configuration is necessary. Three pin connections are required for ICSP, the control pin, the programming clock pin (PGC) and the programming data pin (PGD). i O a Integer .,,, A/D Figure 2.14: Peripheral connections to the DSC. 2.3.8 Programming Module In instances where the embedded program needs to be updated, either for bug fixes or for customizing the platform to suit the end application, reprogramming capa- bilities of the DSC is necessary. Since the DSC will be sealed within the robotic fish, refiashing the chip has to be performed while soldered in circuit. Fortunately, 60 Fli'ilé "“h- a .. ‘ ‘ “E l'i‘fl‘li l ‘ ‘. v _ A, ‘ll‘l‘llL TI 3.3 V ICSP3¢ 1 MCLR N AVDD 18 9 Microphone Module<—-;- ANO é AVSS 17 Temperature Sensorq__§_ AN] g AN6/RB6—— ‘6 NC i7 Battery Status Indicator<1—4—- AN2 9, oc2 li—opWMl 3.3 v Buzzer Madmen-i R33 98‘ VDD ‘4 9 NC 6 OSCl/CLKI vss ‘3 XBee Sleep Control¢ 7 RCIS SDA/PGC ‘2 F XBee DIN<)——8—- UlATX SCUPGD ‘1 XBee DOUT¢LU1ARX OCI'J-o—DPWMZ 1i 1c P4 1c P5 Figure 2.15: Schematic of the DSC. Microchip offers hardware support for ICSP. To program the DSC, an in-circuit de- 33 v Regulator VIN VDD ICSP] see A A -p ..... MCLR-pl LA attery 7. 4 v t 4 PGD-pll SDA/PGC-plZ 3‘“ Ch PD CL/PGD-pll PGC-p12 ..... GND ICSPSi iii-$8}; ompass Compass~ SCL SDI Figure 2.16: Schematic of (a) ICSP header, (b) four-pole double-throw switch. bugger (ICD) from Custom Computer Services, Inc. [28] is used, connected in series between the platform and a computer with the compiled .HEX file. This connection is done through the base station. Since the ICD connects serially to the PC, it has no way of obtaining power otherwise. Thus, the main purpose of the base station when programming the platform is to provide 5 V power to the ICD. The executable accompanying the ICD is used to download the program to the platform. In order to program the DSC, the PGC and PGD lines have to be disconnected from any external components, and the DSC should be disconnected from power. A closer look at the schematics of the processing module (Fig. 2.15) shows the compass connected to the 12C bus through these two pins. The switch therefore has a few 61 RF Antenna Mobile Receiver yo c I Base Station r1 r2 PC Fixed Transmitter 0' xc Figure 2.17: Current ex1:)erimental setup. main functions. In the OFF position, other than disconnecting the voltage from the voltage regulator, it connects PGC and PGD to the ICSP header, and disconnects the DSC from regulated power, allowing the DSC to be reprogrammed. In the ON position, it connects the DSC back to the regulated power, the compass to the I2C bus and of course the battery pack to the volt age regulator. 2.4 Platform Software With eventual use in a mobile sensing network involving multiple platforms, the current setup is designed around that specific goal. The experimental setup involves a mobile platform, two static nodes (simulating what eventually will be other mobile nodes), and a base station connected to a PC, along with a graphical user interface. Put together, these three components (Fig. 2.17) communicate with each other via RF for basic ranging and tracking operations. The embedded software in the robotic fish is written in C language using Mi- crochip’s MPLAB IDE v7.60 and its accompanying C30 compiler. Once the program is compiled, the created .HEX file is downloaded onto the robotic fish using the ICSP header via the base station. The embedded program is divided into separate modules and functions, each re- 62 ‘ 11' “A8- - l. l‘ ‘..l‘.| ‘\t T. 1L.\. 1 1 wt ., . . a}; r ¥l\ .. r. , . a.“ 4 sponsible for different subroutines of the robotic fish. These allow users to call certain functions without the need for reconfiguring parameters or ports for operation. In addition, it reduces the amount of code used within the main environment. The main program is responsible for the DSC setup which include the internal oscillator, interrupts, and digital and analog pin assignments and directionality. Ini- tialization of global varial;)les and definition of interrupt service routines (ISR) are also done in the main program. Two interrupts are enabled, the UART and TMRI, used in deciphering received commands and actuation, respectively. In the idle state, the robotic fish continuously polls a variable responsible for ranging initiation. This ensures the program is in a known state at all times, and that ranging is set as its highest priority. 2.5 Waterproof Packaging Since the beginning of this project, an ongoing issue has been the waterproofing of the circuit. Constant improvements of packaging have lead to different methods. Generally speaking, the circuit along with the batteries need to be protected from the elements, and capable of submersion for extensive periods. The programming header, switch, RF antenna and certain signals, are required to be available external to the casing. Ideally, circuit extraction would also be possible in cases where hardware changes need to be made. 1. Silicone Sealant - This method involves applying a layer of silicone sealant directly to the board. It is an effective form of waterproofing, requiring almost. no overtime (other than the full cure time of the sealant), and taking up the least of bulk space. The sealant is almost permanent, however. making circuit extraction a time consuming process. The sealant. is not recommended for continuous underwater use and the curing process releases acetic acid, which 63 can corrode PCB traces and other surfaces. In addition, the batteries require a separate watertight compartment. 2. Waterproof Pouch - This method uses a commercially available pouch with a single clip capable of transforming it to a watertight and airtight pouch. Both the circuit and batteries can slide in and out of the pouch. Puncture holes are required for reaching the programming header, switch, and other wires. Due to the nature of the pouch material, traditional solutions are incapable of sealing these punctures with definite guarantee. Also, the pouch can have varying volume, and hence varying buoyancy, requiring individual balancing of the plat forms. 3. Polypropylene Tubing - This final method customizes a commercially available polypropylene plastic tube, providing a hard casing for both the circuit and batteries. Sealing holes and joints can be done with epoxy, super glue, or even traditional candle wax. The air-filled container provides an added means of buoyancy to the platform (almost constant), and compared to silicone sealant provides a more efficient way of dispersing heat from the electronic components. Circuit extraction is also possible, however, at the cost. of destroying the casing. Fig. 2.18 shows the circuitry of C3 packaged into a watertight container, with diameter 48 mm and length 82 mm. This tube is then placed in a custom-made fiberglass outer shell (Fig. 2.19), which is also watertight. The complete platform weighs less than 300 g, and excluding the tail, is 20.7 cm long with a maximum diameter of 6.1 cm. 2.6 Base Station The base station is responsible for data. conversion between wireless data (bidirec— tional communication with the robotic fish) and serial data (bidirectional communi- 64 - ~ m.) 0 0 RF Antenna Header Charging Wire Waterproof Case > Programming 0 Figure 2.18: Waterproof casing for G3 robotic fish. 0 /. IPMC Charging / /- - '1- ' Programming 0 Header | . . \ / Fiberglass shell .. ,r "A 1 f r '1',’ .1 . I , i V, Figure 2.19: Built prototype of G9 biomimetic robotic fish. 65 cation with the PC). It is built to support wireless data transmission and reception of 2.4 GHz radio signals using the ZigBee protocol. In addition, the programming unit supports most of Microchip’s microcontrollers and DSCs. Written in Ctl, the graph— ical user interface is used along with the base station, either to display received data or to transmit commands to the robotic fish. An added function of the base station is the programming unit, which allows in—circuit re—flashing of the DSC. A jumper selects either functionality. Fig. 2.20 shows the base station and programming of the robotic fish, respectively. 1’" Figure 2.20: Base station used for (a) communication between robotic fish and graph- ical user interface, (b) re—flashing the platform using in—circuit serial programming via the ICD unit. 2.7 Graphical User Interface: Fish Debugger The graphical user interface (referred to as Fish Debugger) is an executable designed by members of SML, responsible for controlling the bidirectional serial communica- tion between a PC and the base station. The Fish Debugger is divided into five main panels, each one responsible for various functions onboard the robotic fish. 1. Serial COM Panel - This panel connects/ disconnects the serial communication link between the Fish Debugger and the base station. Once open, the address of the robotic fish with which the Fish Debugger will communicate with is 66 ft)“: :l 1111’ selected. The addresses of two static nodes are also specified. Error messages are displayed in this panel too. . Sensing Panel - The sensing panel displays the data readout from the onboard sensors, with an option of either a single reading or continuous readings at a specified time interval. . Motion Control Panel - Control of the IPMC actuation comes from this panel. Users can select either square or sine waves, with frequency control of both in the range of 0.25 Hz to 5.0 Hz. Square waves have the added option of output voltage variation through pulse width modulation. Either straight or turning motion is also selected through this panel. . Ranging Panel - Users select between the two onboard ranging algorithms and set their corresponding parameters through this panel. Qualitative results such as the microphone signal and the algorithm output are displayed in the main screen, while quantitative results such as estimated range are displayed on the right. Data logging is also done through this panel, allowing the user to record data to an external file. . Tracking Panel - This panel is responsible for displaying tracking results of the robotic fish. The separation distance between the two static nodes is specified. Users also select the wait period between consecutive positioning computation. 67 Serial (OM Panel Ranging Panel Figure 2.21: Screen capture of SML’s Fish Debugger. 68 CHAPTER 3 RANGE ESTIMATION This chapter presents four methods investigated for onboard ranging amongst the robotic fish, spanning C2 and G3. Underwater range estimation results are presented for each of the methods, with emphasis placed on the Sliding window DFT (SDFT) algorithm as a potential ranging method for SML’S future robotic fish. Analytical investigation on signal dependency of the SDFT leads to the implementation of a compensation function, for purpose of reducing ranging error accumulated by the algorithm due to non-ideal signal effects. Tracking results are also presented for the tone detection and the SDFT method. The four ranging methods described in this chapter are grouped into either hard- ware or software-based ranging techniques. In the hardware-based ranging methods, signal detection is predominantly left as a hardware task, requiring minimal computa- tion in software. The threshold method and tone detection method are implemented onboard 02, which is fitted with an 8-bit microcontroller. In comparison, software- based methods rely heavily on embedded software algorithms to detect the arrival of the Signal. The correlation integration and sliding window DF T methods are imple- mented onboard C3’s 16—bit DSC, a hybrid between a digital signal processor and a microcontroller. Due to the use of acoustic signals in all four ranging methods, a. brief introduction to acoustics pertaining to this project is first given. 3.1 Acoustics In order to fully understand the results produced by the four ranging methods, the need to characterize the incoming acoustic signal is necessary. This section covers the 69 basics of acoustic propagation through water, and introduces the effects of non—ideal phenomenon such as reverberation and echoing in tank acoustics. 3.1.1 Medium Characteristic Impedance When dealing with acoustic generation and detection hardware, the characteristic impedance of the medium Z0 becomes an important factor to consider. The param- eter Z0 2 p - 0 depends on the medium density p, and the acoustic speed through 2 the medium 0. The characteristic impedance of air equals around 42 gem" s, while for water this value is closer to 1.5 x 105 gem—ZS. To understand the importance of Z0 on acoustic hardware, consider some mech- anism attempting to drive a piston. The low density and light weight of air means that the driving mechanism can produce a large displacement with little force. Water on the other hand is denser and heavier, and so the driving mechanism must provide more force to generate even a small displacement. The main design difference in acoustic hardware intended for use in water or air comes in the impedance matching between the device and the medium. Analogous to electrical circuitry, impedance matching results in maximum power transfer from the source to the medium (and vice versa), with minimum reflection back to the source. For hardware designed to operate in air, underwater operation translates to loss in sensitivity for a microphone and decrease in output sound pressure level for a buzzer. While buzzers and microphones can be designed to be waterproof, impedance matching to water is not implied, as is the case with the acoustic hardware utilized in this system. Compensating for degraded performance however is done by large amplification gains in the microphone circuitry. 70 3.1.2 Signal Pressure in Air and Underwater In Chapter 2, we determined the output voltage of the microphone based on its sen- sitivity and Signal pressure level of the buzzer ((2.4)—(2.5)). The values used in the computation, however, is specific to air, and cannot be directly applied to underwater operations. In particular, the loss in buzzer SPL and microphone sensitivity under- water, a consequence of operation in a medium different than its original design, is not reflected in the computation. As a side note, it is more common to use reference pressure p0 = 1 ,uPa in water, instead of po = 20 ,aPa as done in air, in which case 100 dB in air is not the same underwater. For pressure conversion from air to water, and assuming no transmission losses from switching mediums, p0(air) p0(u1ater) dB = 20 log = +26dB. (3.1) 3.1.3 Acoustic Propagation Acoustic signals propagate through gases and liquids as compression waves, which results in alternating pressure deviations from the ambient pressure in the medium. This fluctuation is known as sound pressure. Microphones are designed to detect sound pressure with a moving diaphragm, converting this mechanical movement to electrical signals. Since microphones rely on detecting sound pressure, it is of interest to study the change in sound pressure as the signal propagates through the medium. In order to simplify the analysis, wave propagation is considered in an infinite loss-less homogeneous medium, where the following four assumptions are made. 1. The omni directional buzzer onboard the robotic fish is an idealized monopole source, which is described as a Single point generating a spherical sound wave. 2. The acoustic signal encounters no boundaries as it propagates through the 71 medium, and the recorded signal by the microphone is free of echoes and re— verberation. 3. The unperturbed medium parameters (pressure, density, temperature, velocity) are definite and independent of time. 4. There is no transfer of heat, i.e. the process of sound transmission through the medium is considered to be an adiabatic process. The derivation of the general three dimensional wave equation for uniform spherical propagation is well documented in literature and is therefore omitted here (the reader is referred to [10]). The wave equation in spherical coordii'iates, without angular dependence, can be expressed as, 821) 2 82p 2 Up —= » - — —— .2 (it2 C (972 7‘07‘ (3 ) where p is the Signal pressure, c the sound velocity, 7‘ the range and t continuous time. Using the method of separation of variables to solve the wave equation, the general solution p(r, t) is given as. 1 p(r, t) = ,— [F1 (ct — r) + F2 (ct + r)] (3.3) where components F1 and F2 represent diverging and converging waves respectively. Note the inverse dependence of sound pressure on distance r. In fact p QC 1/ r is the basis of the “inverse square law” in (3.6) of energy spreading. Dealing with passive ranging systems, we can discard F2 which describes sound waves traveling toward the source. The general solution to the wave equation can therefore be represented with a cosine function, p(r, t) = g - cos [1; (ct — r)] (3.4) 72 . . A 2* . . w1th steady-state amplitude A, and angular wave number I: = 4 With Signal frequency f. Knowing the relationship between signal pressure and range (3.4), a similar relationship can also be derived for the microphone voltage output and range. Sound intensity, defined as sound power per unit area (\V 111—2), is related to the root mean square (RMS) of sound pressure p and the characteristic acoustic iinpedance 20 of the medium. P2 1 = _, (3.5) 20 The inverse-square law associated with energy spreading of spherical waves in an infinite medium, is best illustrated with the following, 2 12 = 11 T—1 (3.6) r2 “there 11 and 12 is the measured sound intensity of a sound source at distances r1 and 7‘2 respectively. In practice, the medium is bounded (as in the case of a swimming [>00], and even the ocean), and the inverse-square law does not always apply. The relationship is commonly modified, .,.1 n 12 = 11 —— (3.7) 7‘2 VVhere n is a non-integer numerical exponent of value less than two. The purpose of mentioning the non-ideal spreading loss in this context is solely to make the reader a-Ware of practice versus theory. It is recognized that determining an exact value f 01‘ n is impractical, mainly due to the extensive empirical modeling of acoustic propagation required every time enviromncntal parameters are changed. 73 3.1.4 Characterization of Acoustic Signal The investigated ranging methods are based on Signal detection. An obvious source of error is latency in positive identification from the time of the signal’s exact arrival. Thus, this thesis stresses immediate detection of the arriving Signal, which occurs well before the signal reaches steady state. Consequently, the transient behavior of the signal affects the detection and hence estimated range. In this section, we characterize the acoustic. Signal as a means for quantifying range error. The buzzer and microphone are grouped into a single system as shown in Fig. 1.11, with Vm-ic being the amplified microphone Signal. Experimental investigation of Vmic underwater is carried out at different separa- tion distances r between the transmitter-receiver pair. A 12—bit A/ D card mounted on a PC is used to capture Vmic, with the sampling frequency F9 = 88.888 kHz se— lected to closely match, the onboard DSC. A sample Signal is depicted in Fig. 3.1 for r = 731.52 cm, recorded at a depth of 57 cm from the water line. The rise dynamics ll l l‘lll [ll lllll 1.5- A 1 [ill l i iiiilllllllh il ili‘ll MW Hi,“ llll‘ ‘1 l 1 Mil i ll“ (will llllll iili ljllllll Signal Envelope .0 on ll m Amplitude I V] O I O 01 I .3 0 0.005 0.01 0.015 0.02 0.025 Time [s] Figure 3.1: Recorded V,,,_,-C for r = 731.52 cm, at a depth of 57 cm. of the signal can be approximated with an amplitude—mod’ulated envelope function, E(t) = 1 — (rt/T (3.8) 74 where 7' is the signal rise time. Being a function of the buzzer-transmitter pair, the signal rise time can be determined through empirical study. To do so, the normal- ized envelope h(t) is computed in MATLAB using the magnitude of the Hilbert- transformed incoming acoustic signal, and using (3.8), solving for the exponent, J ; = — ln [1 — h(t)]. (3.9) First order linear regression can be applied to fit the left hand side of (3.9) to t, after which 7' is given as the reciprocal of the highest order coefficient. More importantly, the captured data reveals that. 7' and E (t) are constant over the tested range 7‘ (less than 25 m), with the only variation being the steady-state amplitude A. This allows us to proceed with complete characterization of the arriving acoustic signal, by combining the general solution to the wave equation (3.4) and the envelope function (3.8). Note the conversion from the cosine to sine, and the introduction of some unknown phase 96, 0, ift < r/c Vmic 2 (3°10) A - E(t — r/c) - sin [1: (ct + 7‘) + c5], ift Z r/c While the steady-state amplitude A is not denoted with explicit dependency on range, i.e. A(r), previous discussion should point otherwise and so is implicitly assumed. It is also pointed out that doubling the range r results in halving the voltage output. 3.1.5 Root Mean Square of Signal Pressure For a monotonic signal with frequency f0, we can calculate the mean square of sound pressure p2,”, over one period T0 of the signal, 1 T0 Pig‘ms : F] Pth- (3.11) 0 0 75 By evaluating the integral. an expression can be derived for the p3,,” of a signal characterized by (3.10), in relation to range 7‘. . 2 _ A , ) ‘_ _ 2 _ _ l .' . _ .' Prms —- 2710—712 [ 0 +2T(ca 1) E(e a 1) 23 (s1n(2wT0 + 26) s1n(26)) +m2__1_ (2w (ea sin(2wT() + 26) — sin(29)) — %(ea cos(2wT0 + 29) — cos(26))) +2 —E2—1+—‘2— (2a.) (620 Slll(2w‘n) + 26) — Slll(26)) — ;2 ‘Hto where or g __£TQ, w 2 kc, and 9 TA— 137‘ + Q. The remaining parameters are as given in (3.10). For a monotonic signal with steady-state amplitude, the integration time T0 can be chosen as one period of the fundamental frequency. A simulation comparing the mean square pressure (Fig. 3.2) of the signal in (3.10) and the general solution to the wave equation in (3.4), reveal similarities and differences between the two. As expected, either reducing T —> 0, or increasing TO —+ 00 will produce a curve that approaches the pgms of the general solution. For simulation purposes, the integration time T0 was chosen to equal 10 wavelengths, as detection within this frame is a good target. The parameter 7' = 0.004. The curve in Fig. 3.2 reveals a. reduction in signal pressure as compared to the ideal case. This adds even more strain 011 the detection methods, since the actual arriving signal has less power contained in it. while still requiring to detect the signals immediately. 3.1.6 Reverberation, Absorption and Backseattering In the previous sections, we assumed that sound propagates through an infinite, loss-less homogeneous medium. With the addition of bounds, sounds no longer propagate in a spherical fashion. and recorded signals are prone to interference due to reverberation and echoing. In this section we briefly explore reverberaticm. which is an important factor to 76 (620‘ cos(2wT0 + 26) — cos(26))) ] , (3.12) consider since the experiment is carried out in a finite enclosure. we also consider absorption of the signal, although as we shall see, is not a dominant phenomenon 5000 4ooor 3000-~-7 NE Q. 2000» 1000- — pins (transient A) przms (constant A) 0: c102 47104 0.06 0.08 0.1 Distance [m] over the test ranges (less than 25 m) of our system. Before we proceed, the reader is familiarized with the experimental enclosure, a 22. 5 x 13 m swimming pool. A break down of the different surfaces are approximated as following (refer to Fig. 3.3), Table 3.1: Absorption coefficients at 2.8 kHz corresponding to different surface areas 0f the test enclosure. Figure 3.2: Plot of 10,2ng of buzzer signal versus distance r. Surface Description Area S [m2] Material Absorption Composition Coefficient a A 'Water surface 292.5 - 0.0182 B Deep end (side) 26.25 Glazed Tile 0.02 C Middle section (side) 20.625 Glazed Tile 0.02 D Shallow end (side) 7.5 Glazed Tile 0.02 - Deep end 45.5 Glazed Tile 0.02 - Shallow end 13 Glazed Tile 0.02 - Bottom 297.2 Glazed Tile 0.02 77 22.5 m fl: ¢ 13m A A A D 1m 3.5m B C " ‘4 ‘4 ‘4 k ‘7.5m " 7Tm " 7.5m ' Figure 3.3: Illustration of experimental enclosure. Absorption: Volume and Boundaries As sound transfers its fluctuation in pressure to particles in the medium, friction causes energy loss in the form of heat. This embodies a true loss of energy within the propagation medium. Sound absorption in water depends on three effects, the first two is the presence of shear viscosity, and volume or bulk viscosity. The combination of both [12] is given in the following relationship, with the intensity absorption coefficient (10 with units cm—1 defined as, 167T2 3 2 do = 870;: (#3 + gab) f (3.13) and shear viscosity Ms 2: 0.01 poises, bulk viscosity rib = 2.81p8, medium density p = 1 cgcm—3, c = 148,500 cms‘1 and f = 2.8 kHz. According to the values for water, we find that (10 is approximately 2.31X10_13 - f2 dBm’l, Where an interesting observation is the frequency-dependent absorption coefficient. At the buzzer frequency of f = 2800 Hz, 00 = 1.811 x 10’6 dBrn‘l, which fortunately is negligible absorption, and so we can ignore this phenomenon during the design process. The expression in (3.13) is applicable to distilled water (and in sea water above 1 MHz) [11]. The third absorption factor, present only in seawater, is predominantly due to the ionic relaxation of magnesium sulphate (l\r"lgSO4) molecules, however, 78 experimental study suggests that below 5 kHz the boron-borate relaxation process is the dominant factor. Being inapplicable in our case, we omit any form of expression characterizing seawater absorption, instead referring the reader to literature. Combining spreading and absorption, the transmission loss (TL) in dB can be expressed as. TL 2 v log 7‘ + 007‘ (3.14) where v is as follows: v = 20 : spherical spreading (free field propagation) v = 10 : cylindrical spreading (waveguide propagation between two plates) 1) = 15 : combines spherical, cylindrical spreading (known as ‘practical’ law). All boundaries of an enclosure will reflect. and absorb sound. The degree of either phenomenon, however, is dependent on surface material, signal frequency and even angle of incidence. A fraction (Ii of the incident energy is absorbed, and the remaining (1 — 01,-) is reflected back. The average absorption coefficient (1 (of reflecting signals) is given as, ————-——— where 0,- denotes the absorption coefficients of materials corresponding to surface areas Si- Based on the provided information on the test enclosure (Table. 3.1), we compute the average absorption coefficient (1- to be around 0.0193 - over 98% of signal energy is reflected back to the source. The low absorption at the boundries of the enclosure is a. disadvantage to us. In a. ranging system involving consecutive pulsing, accumulated reverberation will be a factor to consider. 79 Reverberation: Decay of Sound We begin With a scenario to help explain reverl‘)eration. Consider the buzzer operat- ing continuously until the enclosure reaches its maximum acoustic intensity. “7 hen the buzzer suddenly ceases to operate, the signal perceived by the microphone 7" meters away will consist of a direct (free field) sound lasting until r/c. The sound level, however, will not drop immediately to zero, instead, the indirect (reverberant) sound will persist for some time after. Unless the reverberant sound drops 5-10 dB below its original level, it. can mask the arrival of newer signals. To reduce the effect of reverberation from a previous pulse on the ranging algo- rithm, a method for approximating the reverberation time Tr is required. In enclosed spaces in air, the Sabine equation [12] is considered a good approximation. This is de- fined as the time it takes for the reverberation to drop 60 dB below original intensity level, 0.0368 - V 0.0368 x 706.875 T7. : -—————— 2 = Z aiSi 14.6125 3 1.78 s (3.16) where V is the enclosed volume in m , and values for o»,- and S,- can be found in Table. 3.1. Note that the constant in (3.16) is modified from the original Sabine equation for sound propagation in water. Using the estimated reverberation time, we can set the wait period between consecutive pulses to exceed Tr, thus ensuring minimal interference due to reverberation. In all practicality, theory offers valid estimates while experiments provide more accurate information, as with the case of reverberation time. A sample recording at r = 731.52 cm in the test enclosure, after a 100 ms pulse ceases, gives us more insight into T r- As illustrated in Fig. 3.4, an estimate for a 60 dB intensity level drop occurs in less than 200 ms, much less than computed value based on the Sabine equation. Open water reverberation has been studied in detail as it relates to sonar systems. In comparison, theory on tank reverberation is not as well defined. This is mainly 80 ’1: Amplitude [V] -1.5 0 0.05 0.1 0.15 0.2 Time [s] Figure 3.4: Reverberation after a 100 ms pulse, recorded at r = 731.52 cm. due to the variables and unknowns associated with each tank construction, and hence theoretical treatment of the problem is impractical. Instead, experimental data of tank reverberation appears to be the leading force in design considerations, as provided in [13, 14]. Reflection: Backscattering Since we are dealing with pulsed acoustics, we can examine its temporal and spatial characteristics for the specific case when it encounters a reflective boundary. A pulse of length T will correspond to a pressure perturbation of length cT meters. Now consider the pulse front edge as it becomes incident upon some layer boundary, hence proceeding backwards toward the transmitter. With the pulse being half way into the layer, the rear edge will be aligned with the returning front edge of the pulse, where its contribution will be power additive. At that instance, a layer depth of half of the spatial length of the pulse CT / 2 is contributing, power additively, to form the backscatter wavefront about to proceed back the the transmitter (Fig. 3.5). Backscattering is an issue to consider when the receiver is placed within this volume, in which case it will be recording the original signal in addition to interference 81 Backscattered Volume Buzzer / - Reflective Surface \ I cT/2 , Figure 3.5: Backscattering of a pulse of length T seconds from a reflective surface. in the form of the returning wave front. W'l‘iile placing the microphone away from any reflective surfaces with distance CT/ 2 will guarantee avoiding interference, we realize than in a small enclosure and long pulses, that is not. a practical option. Instead, by computing the highest number of wavelengths in required for signal detection, we can place the microphone short of distance w)‘ / 2 from reflective surfaces. As an example, the backscatterng length of a 20 ms pulse underwater (using cT/ 2) is 15 meters. However, if signal detection is done within 6 wavelengths, for /\ = 50 cm, we can place the microphone 1.5 meters away from reflective boundaries. We have shown that reverberation and backscattering are real problems that need to be considered in the design process. This is especially true in the case where signal recordings are used for certain measurements, such as range in this scenario, where corruption can introduce serious errors. However, immediate detection of the signal as it arrives alleviates effects of reverberation and backscattering. Doppler Shift The Doppler effect is introduced in systems with dynamic receivers relative to the sound source, characterized by a shift of signal wavelength as detected by the ob- server, fl) f’ = f+ 7 (3.17) 82 where f is the transmitted frequency, v the velocity of the receiver relative to the sound source, and (3 signal propagation speed. The velocity is positive when the transmitter is moving toward the receiver, and negative otherwise. An example used to illustrate this phenomenon is the sound of a whistling train as it. approaches and departs from a static listening point, where the shift in sound frequency is clearly distinguishable. Fortunately, the mobile platform has to be traveling with significant speed for a non-negligible frequency shift. To produce a shift of even 1 Hz, the platform has to travel almost three times its body length every second, which in its current state is not achievable; the Doppler effect can thus be completely ignored. Non-Linear Efl'ects Non-linear propagation of underwater acoustics has been known since it was first recorded. There are two main sources for such non linearities [58], which affect. acoustic propagation speed: 0 Particle velocity vectorially adds to the nominal acoustic propagation speed, either increasing it or decreasing it. In this case, the sound frequency remains the same, however, the change in propagation speed results in a change in wavelength. 0 Propagation velocity is given as the ratio of medium bulk modulus to density, both of which are a function of instantaneous sound pressure. For larger sound pressures, the propagation speed increases, while for lower sound pressures, the propagation speed decreases. 0 Temperature, salinity and depth also affect. propagation velocity, with the tem- perature being a cubic power in the expression. Increasing temperature by even one degree Celsius (in room temperature ranges), results in an almost 3 ms—1 increase in speed of sound. In all cases, acoustic propagation speed is affected. and hence errors are induced in the estimated range. However, in our tested range (less than 25 in), particle velocity has to be comparable to the underwater acoustic velocity to produce sig- nificant errors. Secondly, with an ideally constant SPL produced by the buzzer, variation in acoustic velocity will also be constant, adding a constant offset. to the estimated range. Lastly, it is assumed that, temperature is constant throughout the test enclosure. 3.2 Threshold Method The threshold method is the least complex ranging method investigated in this thesis. Identification of signal arrival occurs when the voltage of the incoming signal crosses a certain threshold, a variant of which is utilized in the BAT [24] system. Using 40 kHz ultrasonics in air, the BAT system is capable of achieving 14 cm absolute error in localization - results which are comparable to the demonstrated performance of the threshold method (in air) in this thesis. Implemented onboard GE, this method uses two hardware comparators internal to the microcontroller. The threshold method compares the incoming acoustic signal with a software—set threshold voltage :tVt. The comparators are configured such that the output changes from a digital low to high when [Vmici > Vt, as illustrated in Fig. 3.6. Positive identification of signal arrival is based on polling the output of either comparator for a digital level change, at which point the onboard timer is immediately stopped. Estimated range ? is then computed by converting the recorded timer value TMR to real time, and multiplying by speed of sound underwater cw, ~ -2F6+TMR T : [<12 1J>< 106 ) _7i “Cw (3'18) 84 Vmic + . I i ‘N E}, g + > ‘ "‘ V! _ _ .. Voltage Threshold V, uC _2 - , . 0 2 4 T1me[s] x 10'3 Figure 3.6: (a) Internal comparators configured to detect a threshold crossing, (b) an illustration of Vt imposed on an arriving acoustic signal. where p is the timer overflow counter and 7' some detection latency in seconds. \IVe point out that. 7 arises from the rise dynamics of the signal as given in (3.10). For signals with steady—state amplitude A > Vt, it is possible to estimate the detection latency (from the true arrival of the signal) if given A. Referring to the signal envelope (3.8) and equating it to the selected voltage threshold, one can solve for the latency, Lt = A- (l — e-fl/T) [t l __ —- 1 — —l . .019 q T n( ) (3 ) In the ideal case where A cc 1 /r, we expect that. the detection latency '7 to exponen- tially increase with range (assuming a static threshold Vt). 3.2.1 Threshold Method Performance in Air Ranging experiments using the threshold method was initially carried out. in air, for purposes of verifying the concept of TOF-based ranging. while providing a compar— ison of the performance between the two media. Data in air were collected in an 85 ‘L—u. 2 -a- Median based estimate K 200 ’ -O- Average based estimate 3 - Ideal ,\ 3‘ ‘ g 1.5- Q 150 ' \l 50 L g E I. 9: Ln 1 + '3 100 -' u N N u R G \ 3 .§ ‘ 3 o 5 N to 50 ~ \ ' Lu i V t i 0 a 1 A L 4. 0 A 1 4 n 0 50 1 00 1 50 200 0 50 100 1 50 200 Actual Distance [cm] Actual Distance [cm] Figure 3.7: (a) Ranging results in air using threshold method, (b) Absolute error. 8x8 m room with concrete walls, cluttered with laboratory equipment and other lab members. The ranging experiment was carried out with a single transmitter-receiver pair set on the ground and facing upwards, with LOS between the two. The mi- crophone was fixed to an arbitrary reference point, while the separation distance 7‘ between the transmitter-receiver pair was changed in 20 cm increments over a range of 40-200 cm. At each point, 20 acoustic pulses were sent to the microphone, each lasting 20 ms with 30 ms silent interval between consecutive pulses. Multiple read- ings at each data point ensure that any erroneous results will have a minimum effect. The threshold Vt was set to :l:100 mV from V3/ 2. Results are presented in Fig. 3.7. Due to the large number of outliers present within each data set, taking the median as opposed to the mean reduces their effect on the overall estimated range, producing the expected linear curve. The demonstrated absolute error in air is less than 2 cm over a range of 200 cm. These results are consistent with current state of the art ranging accuracy reported in literature. 86 . X 500 -3- Median based estimate ‘5‘ -0— Average based estimate ~ i E £400- is $0300 N § 3 200 . 5.. V: Lu 100- 0 78‘ J . . -. I, . 0 . . 0 100 200 300 400 500 0 200 400 600 Actual Distance [cm] Actual Distance [cm] Figure 3.8: (a) Ranging results underwater using threshold method, (b) absolute error. 3.2.2 Threshold Method Performance in Water As a performance comparison, the experiment is carried out underwater in the test enclosure. Swimmers were not present during the collection of the data, however, running of the filtration system contributed to background noise. In fact, the thresh- old Vt was raised to i600 mV to avoid immediate stopping of the onboard timer. Data from the experiment is presented in Fig. 3.8. Data collected in air is more consistent compared to water, where the variance of the data at each distance is much larger. This larger variance is associated with increased presence of ambient noise in the environment. While increasing the voltage threshold V} can reduce outliers, the effective detection range is also reduced, and as demonstrated experimentally, past 500 cm the signal was undetectable. While proven effective in air, the threshold method fails underwater, mainly due to the range-limiting method for increasing noise robustness. We point out the far from ideal non-linearity of the produced curve underwater, compared to air. The source of such a. curve can be explained by a few factors. the first being the number of outliers in each data. set. we point out the lack of 87 a relationship between error in estimated range and distance, which is contrary to what is expected in an ideal case. Referring back to (3.19), the only variable is the steady state amplitude A. This suggests that A of the incoming signal (as detected over the test range) is also random. Also associated with the error is the non-linear propagation of acoustics underwater, mainly due to the variation in propagation velocity (introduced by the filtration system) and tenmerature (also introduced by the filtration system, and underwater lights) throughout the test enclosure. 3.3 Tone Detection Method This second method investigated for signal detection utilizes a. circuit. built around a tone decoder IC (National Semiconductor, LM567C). The circuit (which includes the IC and additional external passive components) is tuned so its output provides a transistor switch to ground when the buzzer signal is present within its passband. The onboard timer is stopped once the output of the circuit switches to ground. In existing systems (in air) signal detection based on a tone decoder is a popular choice, mainly for its simplicity, low cost, and accuracy. Cricket [21] and AHLoS [23] are two systems that. utilize tone decoder circuits for signal detection. From Fig. 3.9, the external passive components Cl — C3 and the resistive combi- nation between pins 5 and 6 (R1) are used to set the circuit"s center frequency (fc), bandwidth (BVV) and output delay. The purpose of the 500 k9 variable resistor is to allow fine tuning of the center frequency fC independent of C1. Center frequency and bandwidth (% of f(_.) are calculated as f(_)llows, l 1.1-[1’1 -C1 IIZ fc BW = 1070- 88 3.3 V Vmic —2[HOW g our 8 1.8m V5 filth—“PF 3...7_,7 T 3 1N TMRC 6 33V 4 v+ TMRR—-15 IMF—47V; _[_Cl Figure 3.9: Tone detection circuit. 1000M. .. .. . . .. X _ 200 , 7 f -3- Median based estimate 3: X. N -0- Average based estimate >3 3 ‘ 800 ° Ideal ;. E - , .\ g a"? ‘ g x E 150 ' \. X - - _ at x - &‘ Q X x 2 50 § )‘I I vs .:. X f 8 g 600 .X éX/Xfi‘xwxl § t °= ‘ "ltisrxf‘ “1100* “i .8 400.. xx o 52 3 xx ‘X " ' 3 ° x 3 E “335 X ' x x g '4: sex/xx "‘ 3 50 - Vi _ , . . x V: [ Lu 200 ‘ . o X 0 o A 1 i m M 0 a . i i 0 200 400 600 800 1 000 0 200 400 600 800 1 000 Actual Distance [cm] Actual Distance [cm] Figure 3.10: Underwater ranging results using the tone detection method. where Vmic is the microphone signal, and C2 is capacitance on pin 2 (,uF). The circuit is tuned to match the buzzer frequency (fc = 2800 Hz), and its BW set to its maximum of 14% of fc, or 392 Hz. The chosen values are 01 = 1 nF, C2 = C3 = 10 nF and R1 tuned to 325 kQ. 3.3.1 Experimental Results Range estimates were collected underwater starting at 91.7 cm and ending at 946.6 cm, in increments of 24.3 cm. Twenty readings were collected at each distance, with ranging pulses lasting 20 ms with 30 ms silent interval between consecutive pulses. Experimental data is presented in Fig. 3.10. 89 h‘ 0". Compared to the threshold method the tone decoder circuit reduces the number of outliers since detection is based on signal frequency (rather than signal amplitude). Consequently, the lack of a voltage threshold results in a larger detection range. We note that the mean and median curves are almost identical, suggesting a. Gaussian distribution for the measurements at each distance. Such a. distribution can be explained by the lock-on time of the PLL internal to the tone decoder IC. The standard deviation of each data set shows an uncertainty in the lock-on time of around 1.75 periods, or a = 93.1353 cm. In addition, experiments reveal that the center frequency of the buzzer is not constant, but itself has a standard deviation of 90.4 Hz, affecting the lock-on time of the PLL. The absolute error is mostly below 130 cm over a range of 946 cm, and percentage-wise, this is comparable to that of the threshold method. More importantly, the results confirm the non—linearity of the produced underwa- ter ranging curve (as observed with the threshold method), explained by non—linear propagation of sound underwater. 3.3.2 Tracking with Tone Detection Method Motivated by its robustness to noise and longer range of detection (compared to the threshold method), the robotic fish was tracked using tone detection, as it was pulled across the test enclosure in a straight trajectory. It was decided not to have the fish move itself as the current from the filtration system would push it off-track, making it difficult to validate the tracking method. The test bed consisted of two fixed nodes, each fitted with a buzzer and separated by a distance of 10 m. The buzzers were attached to the wall of the enclosure, 60 cm below water line and facing the microphone. The robotic fish was tracked at 3.5 m away from the baseline created by the two fixed nodes. For each location, 10 pulses were sent by the first buzzer, and repeated by the second buzzer. Each pulse lasted 20 ms, with 30 ms wait period 90 3.1:- __ _-_. _ 500— . 450 ~ 400 - E350 — a a 300 — § ._§ 250 - , '5 200 _ Beacon #1 8 Beacon #2 L150 '0' Run #1 F -D- Run #2 100 _ ' 0- Actual Trajectory 50 - 4 ' g}? 1 1 L 1 1 1 1 1 1 1% 100 200 300 400 500 600 700 800 900 0 x-coordinate [cm] Figure 3.11: Tracking of the robotic fish using tone detection for ranging. between consecutive pulses. Results are shown in Fig. 3.11. The plots in F ig. 3.11 shows two runs of tracking the robotic fish, with the error at. each point conforming to the absolute error shown in Fig. 3.10. Overall, the tone detection method is capable of tracking the robotic fish as it passes across the pool. 3.4 Correlation Integration Method The previous two ranging methods outlined are fairly simple to implement and re- quire almost no computational power, making them ideal for hardware constrained platforms. While they have been successfully used in ranging and localization in air, experimental results reveal their downfalls underwater. More specifically, the threshold method had no frequency filtering of the input signal, making it prone to false triggering due to background noise. While an increase in the voltage threshold reduced outliers, it seriously limited detection range. The tone decoder circuit. was based on frequency detection. thus making it more robust against background noises. However, the unpredictable variation in PLL lock-011 time resulted in large ranging 91 ,V. ‘l‘\: errors. The correlation integration algorithm is the first of the digital-filtering based methods. Positive identification of the buzzer signal is achieved by correlating the input signal sz-C with a reference sinusoid of the same frequency and integrating. The goal of this method is to detect the presence of the frequency component corre- sponding to the buzzer as the signal arrives. Qualitatively speaking, the algorithm output grows (and deviates away from zero) when the frequency of the incoming signal and that of the reference sinusoid are matching. The onboard timer is stopped upon detection of a deviation of the algorithm output from zero. The algorithm is based on the following integral, t g(t) = // Vm,jC-si11(w£)-d§, t Z r/c (3.21) T C where Vm-ic is the incoming ranging signal in (3.10), and w = 27rf0 is the reference frequency chosen to match the buzzer frequency (g is a dummy variable). Evaluation of the integral begins after the arrival of the signal, since for t < r/c, Vmic = 0 and hence g(t) = 0. Substitution of Vinm. into (3.21) and evaluation of the integral leads to the following expression, ‘ A A t—r/C g(t) = geos6 (t — 1;) — E sin(2wt + 6) + 7Tcos6 (e- T — 1) A 2w 2w” _t_.—_r_/_(_? . + 4—“3 sin (_C_r + 6) + We T [s1n(2wt + 6) — % cos(2wt + 6)] 2w . 2w?“ 7' Qwr — m [8111 (T + 6) — Zeos< c + 6)] (3.22) A . . . where 6 2- kr + 96 and u} = kc. Due to exponential decay as t —> co, the complicated looking expression in (3.22) reduces to the following, A A g (f) = — -cos6 - t — — - sin(2wt + 6) + 6 (3.23) 2 4a) 92 1 __.-__- . . 2 1 E " ,5, S I N: g :‘llllllgl‘l 8" t l , 1 g 1 W l s -1 i ‘. l -2 A o 0.005 0.01 0.015 0.02 o . 1 0.02 Time [s] Tim [S] Figure 3.12: Analysis of correlation integration method in air (a) input signal Vmic: (b) algorithm output g(t). Where 6 is the constant introduced by the remaining time-independent expressions. The expression for g(t) is a linearly growing term, with a low amplitude sinusoidal signal superimposed on it. Experimental analysis of this method in air is demon- strated in Fig. 3.12. 3 - 4- 1 Experimental Results Ranging results are collected at various transmitter-receiver pair separation dis- tanCes, at each point collecting 10 range estimates using 20 ms pulses. The absolute error of the data (Fig. 3.13) is less than 120 cm, where each point is computed as the mean of the set of range estimates at each distance. At each distance, there is a large Va‘riaation in the measurement results. Other than the non linear acoustic propaga- tion that is used to explain the non-ideal curve, errors in the correlation integration method arises from two main sources. One weakness of the correlation integration method is the 6 parameter, which inclll'flezs the phase (15 of the incoming signal and the actual range 7', both of which are uIlknown to the robotic fish. Referring back to (3.23), the growth rate of g(t) is 93 , .53 ‘ 140- ' i 1000- 16:- Actual distance ~ + Estimate range A . g 800 x .3120 t X’ $.100» be ‘ A a: x E 80 3 600- a. » 9: Lu '3 X a; Q) X ‘ 60 > ‘5 400- 3 5 E a 40. "3 x I '° m 200» g V 20- 0 A A i 4 A 0 A A . 1 L 0 200 400 600 800 1000 0 200 400 600 800 1000 Actual Distance [cm] Actual Distance [cm] Figure 3.13: Underwater ranging results using the correlation integration method. dependent on cos 6. One extreme case occurs when cos 6 is equal to 0. In this case, g(t) will be a purely periodic signal with amplitude 21%. Setting a threshold larger than this amplitude will fail to detect the incoming signal. It should also be noted that the rate of rise of g(t) is also dependent on cos 6. For a fixed distance 7‘ but varying phase of the incoming signal, the algorithm output g(t) detects the signal W’ith introduced uncertainty. The second weakness is the choice of frequency of the reference sinusoid. In deriving g(t), it is assumed that both the reference sinusoid and incoming signal freQUency are an exact match. This is neither alight or realistic assumption. Previous “fork done in [26] shows the buzzer signal frequency has a standard deviation of 31‘0qu 90 Hz. This variation will also affect the rise of the output g(t), introducing detection latencies. 3-5 Sliding Window DFT (SDFT) Method Si .. . . . gndls encountered in our everyday life commonly have changmg frequency content 0"7 . o o o o . er tlrne, an obv10us example being speech. To Visualize these Signals, we have the O _) ,' . . . . . . . I tlon 0f usmg e1ther time-domain or freqi1ency-don'1a1n representatlon. An inherent 94 problem, however, is that plots in either domain lack information that is present in the other. This is best demonstrated using linear chirp signals (Fig. 3.14), whose frequency content are either increasing or decreasing with time. By approximating the period using the time axis, it is possible to estimate the frequency for different sections of the signal. For true frequency representation however, some variant of the 1 1 ll “I!” SHHH‘J M 0.5 MIN) ‘l l‘lll 0.5 . ,lll, ~‘ih‘1‘l‘i‘ Q) N '3 'fi = 0 .5, 0 = .lll lll‘ , E 5"“ lll‘um g V V- ‘ “l .__0_5 l l ‘ llllll _1 I 0 0.1 0.2 0.3 0.4w 0.1 0.3 0.4 0.5 Time [s] T tme [s] F i gme 3.14: Time domain visualization of (a) chirp—up signal, (b) chirp-down signal. FOIJIieI‘ transform is applied to the signal, such as the discrete Fourier transform, and the resulting sequence is plotted as a function of frequency (Fig. 3.15). While chirp- up and chirp—down signals are distinguishable from one another in the time domain, the result of frequency transformation is an identical signal when plotted as a function of frequency. In Fig. 3.15, we gain spectral information about the frequency content (0 — 300 Hz) of the chirp signals, but lose temporal information such as whether the frequency is linearly increasing or decreasing. To solve this problem, joint time- frequency analysis (J TFA) is instead used, which allows monitoring spectral evolution OVer time. In Fig. 3.16, the time—frequency plot provide us with information if the Slgnal is Chirp—up or chirp-down. Colors represent the energy content present at the corresponding frequency, with darker colors implying more energy. One algorithm commonly used in JTFA is the short—time Fourier transform 95 012 f - v - 012 454* f .f OJ- ‘V"}“‘ .'.,. .. . . . 01* 0.08~~- ~ 2 ,» » « 0.08~ Eis l i 5‘ “10.06" ._ .. ., ., .g ,. “-0.06' G g . Q (104‘~‘ _' - - ‘ 004* 002 .. . . , ' . . . , . . 0.02 0 . i L . 0 1 i . i 0 100 200 300 400 500 0 100 200 300 400 500 Frequency [Hz] Frequency [Hz] Figure 3.15: Frequency domain visualization of (a) chirp-up signal, (b) chirp-down signal. ( ST F T), favored for its simplicity and ease of computation. This final method of signal detection is based on a modified STFT algorithm, which provides a means for identifying frequency content of the arriving acoustic signal. Once the algorithm determines that the arriving signal has the same frequency as the buzzer, it is au- tomatically stopped. Range is estimated based on elapsed time before detection multiplied by the speed of sound underwater. Frequency domain analysis is partic- 111 arly advantageous in acoustic—based ranging as the detection algorithm can search for frequencies corresponding to the transmitter while ignoring other components, malcing it robust to background noises. 3 - 5 - 1 Short-Time Fourier Transform er begin with the definition of the discrete Fourier transform (DFT) of some input sequence In, (2Wk:) XDFle =54; mlmlé’i— ‘ CD 3 k g (N — 1) (3.24) 96 250 250 N N N N 200 200 E E s s Q) 150 u 150 = 3 g 0 V. v a a. 1 0 , ' u. 100 _, Ln *. » k. . .1 fl -_ I“ 50 ‘ o 3, 5. 50 f ‘ ”P. A r ‘ 6"" 5"“. 11",“ ,- 0 E d I"- OL A‘ 0 - ,r . 0 0.1 0.3 0.4 0 0.1 0.4 0.2 03 Time [s] F i g‘ure 3.16: Joint time-frequency analysis of (a) chirp-up signal, (b) chirp-down s i gnal. 0:2 Time [s] Where index 1: identifies the frequency bins f = US$517, N is the Fourier sequence length, and PS the sampling frequency of $[.]. For periodic signals, plotting the magnitude of the resulting complex sequence X D FT versus frequency (also known as a frequency spectrum) will produce a pulse with width zero (line spectra) at the frequencies present in :r[.]. As an example, we consider the following discrete input si gn a], :1:[m]= Asin (%m), 0 S m S N — 1 (3.25) where 1) represents the number of periods in the window N, and A the steady-state Si gnal amplitude. Note that a sampling frequency or signal frequency is not explicitly defined, however, the frequency spectrum will produce a pulse at m = p. A property 0f the Fourier transform when applied to purely real signals is its symmetry along (JV/2) e 1. For p = 2 and N = 32 as shown in Fig. 3.17, we find that there are two periods in the window N, and that two pulses appear in the spectrum, one at m = p and the other at m = N — p. The height of the individual line spectra is related to the energy of these frequency Com . . . . . . . p Onents. Line spectra are specral cases representing ideal periodic Signals, ex- 97 1 16 o o u o 14' 0.5..... , ... . , 12L, K E- 10 j % j ‘L 3:: 04) o o r, 0- ~ i NT 8) ‘5: o _05L . 4L , 2' 1 40 a . «bin _-_----r---_-----; AAAAAAAAA 0 10 2o 30 b """" 1 '0 """"" 2 '0 """"" 3 0' m m Figure 3.17: A sinusoid with A = l in (a) time domain, (b) frequency domain after applying the DFT, p = 2 and N = 32. t; ending forever. Signals encountered in nature are never truly periodic. Most sounds are bounded in time, and many periodic only within certain temporal bounds. The i mpact of having temporal bounds on the spectrum is the spreading (or ‘leaking’) of t he sound energy to frequencies around the true frequency of the signal. Compared to line spectra, the resulting pulse will have nonzero width and reduced height. Sounds ext ending for longer times have narrower frequency profiles, while sounds with brief temporal extent exhibit broader frequency profiles. Energy spreading increases fur- ther when z[.] does not contain an integer number of periods within N samples. As already pointed out, the DFT lacks time information and thus we have to rely on J TF A instead for extracting signal arrival time. The definition of the short-time Fourier transform is based on the DFT with the addition of time dependency, R—l _ - 27rk XSTFT[k7n] = Z :r[n — m]w[m]e 3mm, 0 g k g (N — 1) (3.26) nu=0 Where n is a general diScrete time variable, and k and N Z R hold as before. At any instance 72, it, should be evident that X ST FTika n] is the standard DFT definition of the windowed seQUence 1?[.]w[.]. Temporal analysis is achieved by shifting the 98 input sequence 3:[.] at. each instance n, to include newer sections for spectral analysis (Fig. 3.18). xini‘ ‘\ I: f.“ : .'—_0" 76 '—-o C . O b \‘ _=I-—0-_--_-‘--‘ STFT e r n Figure 3.18: Short-time Fourier transform of an input sequence :5[.,] with window 10 I: -] . The purpose of the window sequence w[.] is to extract a portion of x[.] of finite length R, such that the signal is approximately stationary over the specified section. B y stationary, we mean constant in its parameters with emphasis on frequency in this particular analysis. The requirement for stationarity follows from poor performance of the DFT to resolve frequencies otherwise. Taking the non-stationary chirp signal 3.8 an example, the DFT produces heavy spectral leakage. More than likely, applications require monitoring the magnitude of the STFT al- gorithm. Being a function of two variables, time n and frequency bin index k, display Of lX ST Fle: n]| results in a three dimensional plot, referred to as a spectrogram. More Commonly, the plot is done in two dimensions with the magnitude of the STFT represented by color intensity, as depicted in Fig. 3.16. 3- 5. 2 Derivation of SDFT Algorithm The proposed algorithm is derived from the STFT, with certain modifications that ake 1t- effiCIent in real—time implementation. With the buzzer producmg a mono- 99 tonic signal with known center frequency f0. analysis in (3.26) can be limited to . . f (N—l) . . a. Single frequency b1n k = p = -0—F;—— , where the result 111 H is rounded to the nearest integer. The lack of information present at frequencies other than f0 Incans that inclusion in the proposed algorithm will only add extra computation time and hardware memory requirements. We can further simplify the STFT by Llsing a. rectangular window sequence (u[.] = 1) with length R = N, er—l XMH] = Z 9 - I[n — m]e_jw0m (3.27) m=0 xxfllere wO 9- (73% and 0 < 9 < 1 some software selectable gain. This reduces the t- ransformed sequence to two dimensions, representing the change of signal energy at. fI-equency f0 over time. Also associated with the STFT algorithm is the overlapping of the samples in 1,- [ _ ] within the window of analysis N, at each time instance 71. For an almost total overlap, where all but one sample from sequence I[.] overlap, (3.27) can be written 31.8 t. he following, Xp[n — 1] = g- [1“[714 — 1] + I[-n. — 2%:ij + + I[n — N]e—jw0(N—1)] Xp[n] = g- [.I‘[II]+.T[72—1]€—jw0 + + :1?[‘71.— (N — 1)]e_jw0(N_1)] . (3.28) A recursive algorithm can now be derived where for every instance 72.. a new sample frOIn :L‘ [.j is added while the oldest sample from the previous step ('n. — 1) is removed, thus Shifting the analysis window by one sample. we refer to this recursive algorithm as the S DFT, X1) [71] = Xp['n — 1]e_jw0 — g ~;17[n — N](,——jw0(]\7—1)€—jw0 + g - I[n]. (3.29) 100 (N—l) to e’fim’. Applying Euler’s Using the definition of .120, we can simplify e’ij identity, this expression can further be simplified to [cos(27rp) — j - sin(27rp)] = 1. \Ve can rewrite (3.29) in a more compact form, Xp[n] = g ' I[n] — a - g - I[n — N] + (1~Xp[n— 1] (3.30) vvhere a = 6"on. The resulting sequence X p[] is complex, for which the algorithm Il€€dS to compute the magnitude for monitoring purposes. Due to the complexity of i mplementing square root functions onboard the DSC, the algorithm instead monitors ]2 13116 magnitude squared ]X1)[.] , which defines the power density at f0, with an additional factor of 27r. From here 011, the term power density is used interchangeably ‘Vith lXp[.]|2. Being a. function of time and frequency, the algorithm monitors the pOVver density of frequency f0 as it changes over time. Upon arrival of the signal, t. he power density increases and crosses a software selectable threshold 6, ]X [72]]2 > e (3 31) p _ u at. xvhich point the algorithm is immediately stopped and the time 72. recorded. The recorded value corresponds to the propagation time between the transmitter—receiver pair, and hence range can be computed by multiplying by the speed of sound under- W'ater- SDFT Frequency Response Apply ing the z-transform to (3.30), we get the following transfer function, Xp(z) . (1 — (1.2—N) (l — (1.3-1) (3.32) 101 ma} 1““ _ “"1 . V '2.) . '3’” VN ~6on €on "1 g Le— ~at: Figure 3.19: Block diagram of SDF T algorithm. Normalized Amplitude .0 .0 .0 f C) CD .0 N —0.5 0 0.5 Normalized Frequency Figure 3.20: Frequency response of a CIC filter. for which can be represented using the block diagram in Fig. 3.19. The transfer function of the proposed FIR filter resembles that. of a cascaded integrator-comb (CIC) filter [63]. The frequency response of a general CIC filter [64] is illustrated in Fig. 3.20. Like the implemented active bandpass filters, the CIC filter attenuates frequencies outside its passband. An added advantage is the ability to tune its center frequency to match that of the buzzer, which in the implemented system, is done through the Fish Debugger. 3.5.3 Effect of Signal on SDFT We recognize that. there is a relationship between the power density and the steady- state amplitude of the signal. This claim can be proved with the simplest case, by substituting a periodic signal with amplitude A as given in (3.25) into the general 102 .— .9. :3“..- u an! SDF T summation in (3.27). For simplification purposes, the gain is omitted (g=1) in the analysis. We limit our analysis to a single window N and thus removing time dependency. Note that the analysis window N includes p cycles at all times. Using Euler’s expansion and applying trigonometric identities we can write the resulting expression as follows, N—1 . Xp : A 8111(000711) . (fill-410771. m=0 A N‘1 N —1 X1) = 5 Z sin(am) —j. Z (1_ cos(am)) (3.33) 772.20 772:0 where a é 2w0 = (73%. Knowing that the sum of a sinusoid over integer periods p is equal to zero, the expression can be simplified to the following, A] N -—1 A X=— 0—"- 10 ='-—N .4 p 2 J 2 + 2 2 <3 3 ) m=0 where the relationship between the power density and the amplitude can be derived as, 2 A ]2 = TN2. (3.35) IXp [TI] This relationship is for the case where the signal is already present within the anal- ysis window, which is trivial in our case. No time information is extracted and in fact it. represents the DF T of a. sinusoid. For N = 32 and A = 1, |X D FT is equal to 16, which is illustrated in Fig. 3.17. Nevertheless, it. provides a definite relation- ship between signal amplitude and the power density. The true importance of this relationship is demonstrated in cases where the signal is arriving. We present ana- lytical results for two cases: an ideal case where the signal arrives with steady-state amplitude, and a non-ideal case where we consider the rise dynamics of the arriving signal. Through analysis we reveal that in both cases errors are introduced in the 103 final estimated range, and compensation is necessary to reduce absolute errors. Before we proceed with analysis, we require an expression for the sequence I[.]. We define (N — s) as the first. sample of the arriving signal within the analysis window N. With the input sequence I[.] shifted at every instance 71, (N — s) eventually reduces to zero at which point there are p cycles within the analysis window N. Refer to Fig. 3.21 for an illustration. 1 0 p ' p 0 p 0.5» . g A- S. ooooooooooooobr ol ”0 R <——>:¢ , F (N—s) - s l l '1 0 4i | = _1 . E ; ole . 0 10 20 30 n Figure 3.21: Arriving signal I[.] with steady-state amplitude A = 1, and (N —s) = 12 samples for N = 32. The arriving signal can be expressed as, 0, if n < (N — s) I[n] = (3.36) A - E[n — (N — 9)] - sin(w0(n — (N —— s))), if n _>_ (N — s) where A is the steady—state amplitude dependent on range I, and the amplitude- modulated envelope function E [] represents the signal transients. Ideal Case: Steady-State Amplitude This first case assumes that the signal I[.] arrives with steady-state amplitude A. Since we are ignoring signal rise dynamics, the envelope function E [] = 1. The pur- 104 pose of this investigation is to derive an analytical ex1_)ression for the power density as function of s, in other words, find a relationship to the arriving signal. Explicit. dependency on time is removed since this analysis holds for any arbitrary window N in time n, as long as the signal is arriving within that window. Time is implicitly defined with the shifting signal, or as 8 changes. We start by substituting the ex- pression for the arriving signal in (3.36) into the general SDFT summation in (3.27). Following the same procedure as done for the trivial case, we apply Euler’s identity and expand the expression, N—l Xp = Z Asin(w0(m — (N — s)))e—jw0m ImzNFp _ A N—l Xp = e_]w0(N_8) - 5- Z sin(a(m — (N — s))) ]_m=N—s N—l 1 — j - Z (1 — cos((r(m — (N — s))))J (3.37) m=N—3 We perform the following change of variables I é m — (N — s). \Nith this change in notation, l = 0 defines the first sample of the arriving signal within window N. On the other hand the signal has not yet arrived for l < 0 (Fig. 3.21). An expression for the power density can then be derived, 8—1 3—1 XP 2 e_]w0(N_s):24: Z sin(al) — j - Z (1 — cos(0zl)) l=0 [=0 A2 s—1 2 3—1 2 IXP]2 = T . Zsinhfl) + s— Zcosml) . (3.38) After evaluation of the summations. the power density can be expressed in a closed form, 2 l2 = L [,2 _ 5 _ 29(5) (3.39) I ‘Xp 4 105 where for 0 _<_ l S (s — 1) the function 9(a) is given as, g(s) = 4—(—1—)—2- [—2 + 2cosa — (3s — 2) cos (so) + (s — 1) cos ((9 +1)a) l—cos a +(3s — 1) cos ((9 — 1)a‘) — scos ((8 — 2)(r)] (3.40) while I Z s, s = N in (3.39). The expression for the power density, being a function of s, can determine how it changes as the signal progresses across the window. We remind the reader that time. is implicitly defined with l, and as it. increases, (N — 9) goes to zero, at. which point the signal has completely arrived in the window and includes p cycles. The value for the power density also saturates at this point. From simulation results in Fig. 3.22, we observe that. a static threshold 6 introduces error in the estimated range due to detection latency. The algorithm detects the signal at t1 > to, where to is the true signal arrival time. As an example, for e = 2000, positive detection is made at l = 83 samples, which for sampling frequency F3 = 200 kHz translates to 62.25 cm of error underwater. Next, we consider the rise dynamics of the signal. Non-deal Case: Signal Rise Dynamics The analysis for the non-ideal case is carried out similarly, with the difference of a non—unity envelope function to account for the rise dynamics. The envelope function used in the analysis is given as a discretized form of (3.8), where we define 8 3 —IE, with T3 being the sampling rate and 7' the signal rise time. Once again, the analysis explicitly removes dependency 011 time 72, while leaving it. implicitly defined with the index I (or increasing 3'). We substitute the expression for the arriving signal into 106 1 01 (15 E E 00 . 5- % 3 .§ 0 g N N E s V V -0'5 -o.05» -1 ‘ A g . -O.1 i .l... . ...._l . . 0 50 100 150 0 50 100 150 .Sanqueslfll .Sanqpleslll 10000 . :_ . - - fldeal Case — Non Ideal Case 8000- ~3 1 ; , . l I N_ 6000* I , => l a . 4000» ‘l l I 2000-IV]! o -’ . . 0 200 400 600 .Sbmnpleslll Figure 3.22: Illustration with N = 200, p = 2, (N — s) = 160 (a) ideal signal, (b) non-ideal signal, 7' = 0.003 s, (c) analytical expression for power spectral density for both cases. the general SDFT summation in (3.27), 3—1 — Xp = e_3wO(N_3)§ Z (1 — em) )sin( (al) j-Z( (1-— efi )(1— cos(al)) [201:0 (3.41) 107 The power density is given as the magnitude squared of the resulting expression, 2 A2 3—1 . 3—1 ,, 2 IXP|2 = T [2% (1 — (2’31) sin(al) + [2%) (1 — elfl)(1 — cos((.rl)) (3.42) A closed form analytical expression for the power density can be determined by evaluating the summations. The final expression is left as, 2 442 1 _ 6’38 1 _ 82,33 7 )X.) =—-2 2 , + __,,_ 4 1 — a3 1 ... 820 1 — cos a — cos(so-) + cos ((3 —1)a)' 1 — cosa ] — 1 —- 623 cos (1' —— €231 cos(s(i) + 623(3+1) cos ((9 -— 1)(r) 1 + 64:3 — 26.23 cos a —2 q +4 [1 ~—— 6'3 cos a — e733 COS(.S(17') + 813(s+1) cos ((3 —— 1)a') 1 + 82-3 — 2et3 cos a 2 (1 _ 8,3)2 1 + 2 cos a —— 3s — 2 cos sa- 2(1—cosa)2[ ( ) ( ) 2 [3(3 - 1) e13 —- 863-8 + (3 — 1)e(3+1),31 l. .1 +(33 — 1) cos((s —1)a)+(s —1)COS((S +1)a) —2 — scos ((8 — 2)O')] 2 3 x 2 (3“; (1 + 62:5 — 2ch} cos a) +(s —1)c(8+1)(3 cos ((5 —1)o)— 2e2’3 + cos oz — ses'£3 cos(sa) +23e<8+1>t3 cos ((3 — 1)o’) — 2(8 — 1)c(3+2)f3 cos(sa) 33 +6 cosa — se8+213 cos ((9 — 2)o) +(s — 1)e(s+3)f3 cos ((8 — l)a)] . Similar to the ideal case, simulation results (Fig. 3.22) reveal a detection latency arising from the rise dynamics. Unlike the ideal case however, the latency t2 > t1 > 108 l 1 Figure 3.23: Experimental verification of signal amplitude on SDFT algorithm (a) input signal with large amplitude (g = 0.125), estimated F = 57 cm, (b) small amplitude (g = 0.0156), F: 101 cm. to associated with the non—ideal case is greater than that of the ideal case. Following the example for a comparison, with 6 = 2000 and sampling frequency F S = 200 kHz, a detection occurs after I = 416 samples, or 312 cm of absolute error underwater. Through analytical investigation, we can clearly see that compensation is neces- sary in order to reduce the absolute error. Correction of the estimated range based on empirical characterization of the acoustic pulse is done using a compensation function, which is implemented onboard and applied on-the-fly. Experimental veri- fication of signal effect on the proposed SDFT algorithm is illustrated in Fig. 3.23. The data is collected in air using the Fish Debugger with a transmitter-receiver separation distance of 40 cm. The gain 9 is used in the measurements to simulate varying amplitude at. a fixed distance. For large gain 9, or large steady-state signal amplitude A, the latency detection of the SDFT algorithm is lower than for a. small gain, and thus small A. A more complete relationship is shown in Fig. 3.24, where the gain is varied from 0.5 to 0.0312, while holding the distance fixed at 7‘ = 180 cm. The experiment was run in air, and five readings were taken for each gain. 109 Estimated Distance / cm] N on O 0 0.1 0.2 0.3 70.4 0.57 Gain Figure 3.24: Effect of signal amplitude on experimental range estimation, at 7‘ = 180 cm. 3.5.4 Compensation Function Experimental results have shown that T and E [] are independent of the range I, with the only variation being the steady—state amplitude A. Referring back to (3.43), we observe that for a known A, solving for index I (or t2 from Fig. 3.22) gives the required time for the power density to cross the threshold 6. Knowing the relationship between A and t2, a compensation function can be determined. Due to the complexity of solving for l and hardware limitations, we instead resort to computing (3.43) in MATLAB using the experimental T and 6 values. By varying the voltage of 0 g A S 1.65 V and recording the index I at the occurrence of a threshold crossing, compensation onboard the platform is done in the form of a look—up table rather than performing additional computation. Steady-State Signal Amplitude Application of the compensation function requires knowledge of A, for which a method for computation is necessary onboard the platform. Prior to ranging, the buzzer transmits a 100 ms pulse, which the receiving node records after a specified 110 amount of time (to ensure steady-state amplitude is reached). To compute A, the receiving node takes the sum of absolute values of N samples of the incoming signal, ~ 1 N—l A = [17V— 2:0 llTl'II-H (3.43) n: where N is the value used in computation of the power density. Knowing that I[.] is defined as in (3.36) with E [] = 1 due to the steady—state amplitude, direct. substitution gives the following relationship. S/2—1 sin [mg 72] (3.44) n20 ~ 1 A=2A-—- g p N where S 2 % is the samples per signal period. Note that. we have limited the summation to only one half cycle of the sinusoid (rather than p cycles in N) to remove the H requirement. Next, we decompose the sinusoid to exponentials, 4 1 S/2—1 ~ 9‘ p , _-. , A = —. . (er0" -— (3 1W0") 3.45 ,- N Z < > 7220 . _ . . . [v-1 1 1_aN . . and apply finite summation identity leO a = _a . The resulting express10n provides a relationship between A and A, - . - . S - . S ~ 1 sum; — sm to + sm ' — 1 A=g-A-—- 0 ( 02) (web; )) (3.46) S 1 — cos wo thus allowing us to derive A, ~ S A = A— (3.47) gs, where K, is the multiplicative factor in (3.46) involving the trigonometric expressions. For fixed Lao, It will be a constant. 111 Table 3.2: Cycle breakdown of SDFT algorithm using standard arithmetic opera— tions. MUL ADD SUB Div Cycles (Tcy) Re{Xp} 2 3 1 0 6 Im{Xp} 2 1 1 0 4 |Xp].|X,,] 2 2 0 0 4 3.5.5 Implementation of SDFT Algorithm To avoid dealing with complex computation onboard the DSC, the recursive SDFT algorithm in (3.30) is separated into two entities, one real and the other imaginary, X p = X1526 + j ~Xgm. This separation is valid since the final result naturally removes any complex attributes of the algorithm. The complex exponentials are converted to trigonometric functions using Euler’s identity, and the resulting real and imaginary parts can be implemented as follows, ngn] = (Xfiefn. — 1] — g - I[n — N]) comm + Xlgmhz. — 1] sinwo + g - I[n] ngmhi] = Xémhi — 1] cost — (ngehi — 1] — g - I[n — N]) sinwO. (3.43) Due to the real-time application of (3.30) in the ranging algorithm, we are concerned with the overall computation time. Considering that the DSC has capabilities of implementing the four basic arithmetic operations in one cycle time (Tcy) for each, we can derive the algorithm computation time based on the required cycles, given in Table 3.2. Note that (X5602. — 1] — g ' I[n —— N]) in (3.48) is computed only once. The recursive SDFT algorithm requires a total of 14 cycles, or 949.77 ns (as mentioned in Chapter 2, the DSC is configured for Toy = 67.84 115). The recursive SDF T algorithm can further be optimized in terms of computation cycles by utilizing the DSC’s built. in hardware architecture for single cycle multiply— accumulate (MAC) and multiply—subtract (MSC) operations, characterized by I <— 112 Table 3.3: Cycle breakdown of SDFT algorithm using MAC and MSC operations. MUL ADD SUB DIV MAC MSC Cycles (Icy) Re{Xp} 0 1 1 0 2 0 4 Im{Xp} 0 0 0 0 1 1 2 [XPI-jxp] 0 0 0 0 2 0 2 I :l: y - z. Cycle breakdown for implementing the SDF T algorithm with MAC and MSC operations is given in Table 3.3. Utilizing built in MAC and MSC operations, the SDFT algorithm is reduced to 10 cycles, or 678.4 ns. This translates to an acoustic propagation distance of just. over 1 min per algorithm update. W liile this defines the algorithm resolution, hardware and software limitations (namely sampling rates and memory space onboard the DSC) reduces the effective resolution. With the sampling frequency Fs set. to 88.76 kHz, the system resolution is closer to 1.67 cm. In addition, being recursive, the proposed SDFT algorithm fixes the computation time to 678.4 ns per input sample, independent of Fourier sequence length N. Unlike the STFT algorithm, frequency resolution can be increased (or decreased), without subsequent effects on time resolution. The recursive SDF T algorithm presented is a causal system, depending on both present and past. terms. From (3.29). the algorithm needs to wait until 72 = N to have the input sample I[n — N] available. For N = 256, this means that 256x10x(67.84x10_9) = 173.67 ,us will pass before the recursive algorithm can be applied. This latency is unacceptable as it introduces a blind area surrounding the robotic fish of radius 25.8 cm. To avoid this problem, I[n] is initialized to a zero array with length N, thus the application of the recursive algorithm is possible St arting from the first acquired sample (where I[n — N] = 0 for n. < N). Leakage Reduction Through Parameter Modification In practical application of the DF T, leakage plays an important. role as it leads to algorithm performance degradation. A result of leakage is the spreading of input 113 energy over frequencies around the true signal frequency. For a sinusoidal signal, the spectrum results in a wider base and shorter pulse. In monitoring a single frequency component (as with the SDFT algorithm), leakage is particularly undesirable since it is reflected in the output. with a slower rise, hence larger detection latency. One method to reduce spectral leakage is to include integer periods in the input signal. Slight. adjustments are made in the SDF T parameters to meet such a requirement. The DFT is computed at uniform intervals (or frequency bins) f = (fofi' Unless the Fourier sequence length N equals infinity (and 0 S k _<_ 00), there will always be a finite length (of frequency) between consecutive bins. As an example, for F3 = 100 kHz and N = 256, two consecutive bins will be separated by 351.6 Hz along the frequency axis. If we are interested in monitoring a certain frequency f0 = 3300 Hz, we can compute its corresponding index k, (3.49) where for this particular example, a better choice for It: will be 8. This translates to frequency f = 3125 Hz, which is different. than the original f0. Without parameter modification, the SDFT algorithm could be monitoring a different frequency than the buzzer, resulting in additional detection latency. From (3.49), modifying values of N and F 3 will result in an integer index k corresponding to the specific frequency f0, which in turn corresponds to an integer number of periods within the window of length N. These modifications are made in the following order, where computed values are based on updates done in the previous step. 0 Step 1 - Compute S = [$5] 0 0 Step 2 - Update F5 = S ‘ f0 0 Step 3 - Compute k7 = [@7129] 114 '( 11 T1 {1‘ ‘5 it" I 8‘ .1 f. " l'r'f S r- r. ,- 5;! I' ”s 0'5? t!'- !i ,Efii !! !' it P- !‘.!‘!i_,,1,!i!!!' ‘5 :.i'-r',"ri--!i!!n' Q Ohukvrva'il-E'liflli'!Il'lli' = t'-"-I°'-'.ii‘!--- T ‘4'i-I'i-JIII' 3 i'..°i,!!!i!ii,i :3: l; i- 'J hL-ii “—05' '-- Incoming signal . | E - - Before parameter modification! . g - After parameter modification I 'j i l 0 100 200 300 400 Sample [I] Figure 3.25: Effect of parameter modification on spectral leakage. 0 Step 4 - Update N = k - S The expressions in H are rounded to the nearest integer. Applying these steps to the provided example, the modified values are F3 = 99 kHz, k = 9 and N = 270. These modifications are performed automatically onboard after the user selects the desired parameters through the Fish Debugger. For a true comparison, Fig. 3.25 is a simulation illustrating the effect of parameter modification on leakage. Without modification (and with c = 100), the algorithm detects the signal (A = 0.25 V, 7' = 3 ms) after 299 samples. W'ith parameter modification, the detection latency reduces to 248 samples, a difference of roughly 75 cm underwater. Fractional ‘1.15’ Data Format The choice of data. types is important when it comes to certain computations, such as the proposed ranging algorithm methods. Using integer-type variables in perform- ing the ranging algorithms is problematic for two reasons. Due to the accumulating nature of the algorithms, a risk lies in having the variables saturate (due to the maximum value registers can hold) before any useful data is extracted. In addi- tion, decimal resolution required by trigonometric functions is not possible, resulting 115 b instead in rounding to either 0 or 1. A second choice would be floating-point data representation. While this will solve decimal representation of the variables, computation time increases. Since we are dealing with real—time algorithms, computational demand is a deciding factor, and thus such data formats are ruled out. A different number formatting is therefore necessary. Fortunately, the DSC has support for fractional ‘1.15’ data formats. an example of fixed-point arithmetic. The data type is capable of decimal representation, with a full range of -1 to 1 — 2’15. The most significant. bit is the sign, while the lower 15 bits represents the data. Table 3.4 demonstrates the fractional ‘1.15’ data format. An advantage of using fractional data formats in the proposed SDFT algorithm is its capability in produce accurate computation, free of rounding errors. A disadvantage however is the limited range of the algorithm output. Through application, we found that using fractional variables in the SDF T algo- rithm results in a maximum sampling frequency of around 30 kSps. This translates to an acoustic propagation distance of around 5 cm between two consecutive updates of the SDFT algorithm. In addition, the upper bound of the buzzer frequency of 3300 Hz produces nine samples per period. While the Nyquist criterion is met, re- production of the signal by the proposed algorithm can still introduce slight shifts in the fundamental frequency. A combination of C and. assembler language, while using fractional data formats, produces the most optimum results, mainly by boosting the sampling frequency up to 90 kSps. At these rates. both the system resolution and samples per period are improved by three—fold. Higher sampling frequencies also allow for using the algorithm (and system) with higher frequency signals if needed. 116 <) Table 3.4: Example of fractional ‘1.15’ data. format. ] ]] Positive Entries ] Negative Entries ] Hexadecimal 0 x 0888 0 x 8888 Binary 0000, 1000, 1000, 1000 1000, 1000, 1000, 1000 Conversion 2’4 + 2’8 + 2‘12 _1 + 2-4 + 2—8 + 2—12 Decimal 0.066650390625 -0.33349609375 Automatic Gain Control (AGC) Signal detection with the SDF T algorithm is based on frequency content, and with the addition of a compensation function, detection becomes independent of signal steady—state amplitude A. The input. to the algorithm can be multiplied with some factor 0 < 9 < 1 , which can then be compensated with the appropriate amplitude. The SDFT algorithm is linear, and a constant factor 9 at the input will only have a linear affect on the output. Selecting a small gain will damp both the signal and noise. Assuming that the signal level is greater than background noise, the signal can still be detected by the algorithm, since the gain will have no affect on the frequency content. As a demonstration of the damping capabilities of the prescaling gain 9, background noise in air is recorded and passed through the SDFT algorithm. As illustrated in Fig. 3.26, a small gain can suppress background noise, while a large gain will amplify it. In addition, apparent improved noise immunity is observed with small gains, possibly due to rounding input samples to discrete quantization levels. Still in the experimental stages is an algorithm for selecting 9 based on measured incoming signal levels. This dynamic selection of the gain will attempt to select values such that background noise has a minimal effect on the algorithm output. However, implementation of an AGC algorithm is based on initial observations, as such further study is required on that front to validate the results. 117 Figure 3.26: Effect of prescaler gain 9 on background noise (a) g = 0.125, (b) g = 0.9921. 3.5.6 Experimental Results As a true measure of performance, the experiment. is run underwater in the test enclosure, at a depth of 57 cm below water line. Ranging is performed between a fixed transmitter and a mobile receiver. Ranging sequence for a single measurement involves a 100 ms pulse for computing steady state amplitude A, followed by a 35 ms pulse for actual range estimation, with 500 ms wait period between the two. Consecutive range sequences have a wait period of 1500 ms to reduce reverberation in the recorded signal. At each distance increment of 91.44 cm, amplitude, compensated range estimate, and compensations value were recorded ten times, and the mean is taken of each data. set for display purposes. In accordance to the analytical results for the non-ideal case, Fig. 3.27 shows that the uncompensated data produces errors of over 300 cm. After compensation, absolute error reduces to less than 1.4 wavelengths (74.3 cm) over a range exceeding 10 m, which is an improvement in detection latency in TOP-based ranging in air using 40 kHz ultrasonic signals. We observe the relationship between the 1.1ncompensated data and the recorded signal amplitude. As the amplitude drops with range, the absolute error of the uncompensated estimated range increases, which follows from (3.43). 118 Esimtated Range [cm] 1400 ' 1200 ~ 1000 ’ 800 * 600 > 400 r 200 * ., With compensation -9- Without compensation Ar Actual Distance Q A 200 400 600 800 1000 Separation Distance [cm] 1400- 1200- . 1000» 800 * 600 * Signal Amplitude 400 . 200 350* Absolute Error [cm] 00 O O 01 O O + With compensation - -0- Without compensation N 01 O N O O _L 01 O —L O O l‘ t‘. A o ' 500 0 1 000 Separation Distance [cm] 1 500 1 000 Separation Distance [cm] 1 500 Figure 3.27: (a) Range estimation using the SDFT algorithm, (b) absolute error with and without compensation, (c) measured steady state amplitude A. 119 A few sources of error in the presented results are identified. Difference in the implemented envelope function E [] from the actual function produces inaccurate compensation values. Offline examination of compensation leans toward the choice of E [] as being a. bigger source of error in comparison to 7'. A second source comes from the measured amplitude. Inaccurate values for A occurring from signal distortion, will lead to wrong compensation selection from the look—up table. Thirdly, variation in buzzer frequency identified as 90.4 Hz [26] in a previous study, affects the rate of rise of the power density. as the algorithm will not be monitoring the center peak of the main lobe. Finally, other unpredictable and non-linearities due to propagation of tank acoustics will affect the 1.11‘1compensated data, leading to errors even after compensation. 3.5.7 Tracking of the Robotic Fish As a demonstration of an application using the SDFT algorithm, the robotic fish is tracked as it proceeds in a straight trajectory across the test enclosure. The buzzers are fixed to two static nodes placed at the corners of the test bed, while the microphone is fitted to the mobile platform. Based on range estimation between the two static nodes and itself, the robotic fish computes its position every 100 cm, while placed 400 cm away from the baseline formed by the static nodes. The error in tracking results match that. of the SDFT algorithm. In both experimental tries, the computed trajectory of the robotic fish coincide with the actual trajectory, and the general direction of the fish can be followed. 120 A 01 O) O O O O O O l l I y-coordinate [cm] N (A) O O O O l l Beacon #1 Beacon #2 + Run #1 -D- Run #2 ' 0- Actual Trajectory l 200 400 l 600 x-coordinate [cm] I 800 1 1 000 Figure 3.28: Tracking of robotic fish using SDFT algorithm. 121 CHAPTER 4 CONCLUSION AND FUTURE WORK 4.1 Conclusion A working prototype of an IPMC-propelled biomimetic robotic fish, utilizing thunni- form locomotion as its propulsion method, is introduced in this thesis. The complete platform weighs less than 300 g, and excluding the tail is 20.7 cm long with a max- imum diameter of 6.1 cm. The achieved cruising speed of around 21 mms‘l, is comparable to what has been reported in literature for similar swimming robots, despite them being smaller lengthwise (< 10 cm) and lighter (< 50 g). The fundamental difference between the presented prototype and similar IPMC- propelled robots, is not size or weight, but rather the integration of onboard and online fine-grained ranging capability. Ultimately, the purpose of onboard ranging is to aid in swarm control of a school of biomimetic robotic fish. By equipping the platforms (or nodes) with various sensors, this controllable swarm is transformed into a mobile aquatic wireless sensor network. Range estimation between two nodes is based on measuring propagation time of an acoustic signal underwater, implemented as a passive ranging system. One node concurrently transmits an RF packet in air and acoustic pulse underwater. Due to the difference in propagation speeds of both signals, a second node starts and stops an onboard timer upon reception of the RF packet and acoustic pulse, respectively. Range is estimated as the measured time multiplied by the speed of sound underwater. The platform is designed with onboard acoustic detection and transmission hard- ware. Emphasis is placed on small, cheap, readily available and non-ideal acoustic 122 transducers, while achieving fine—grained localization. The center frequency of the buzzer is selected in the audible range to utilize its omnidirectional properties, subse- quently eliminating the need for multiple transducers to compensate for blind spots. Due to an almost five-fold increase in speed of sound underwater to air, acoustic signals in water have larger wavelengths. Latency in detection of the ranging signal therefore becomes more critical underwater, where for every missed wavelength of an incoming signal with frequency e.g. 5 kHz, can add almost one foot of error in the estimated range. In addition, the limitation of onboard hardware eliminates the option of prerecording the incoming acoustic signal for post analysis. Immediate and online signal detection methods are therefore necessary. Four methods for detecting the arrival of the acoustic signal are implemented online, onboard a robotic fish plat- form spanning two generations of prototyping. Two of the methods are considered computationally simple, relying on hardware for signal detection. The remaining two utilize algorithms for signal detection and are based on digital filtering techniques. Ranging results using the threshold method and tone detection method are demon- strated onboard a previous prototype, built around an 8-bit microcontroller. These hardware-driven signal detection methods are similar to what is commonly reported in literature, used for fine-grained localization of nodes within a ground-based net- work. The threshold method compares the incoming signal with some preset voltage threshold, while the tone-detection method uses a chip specifically designed for de- tecting certain frequencies. As demonstrated underwater, the lack of spectral analysis in the threshold method leads to false detection in noisy environments. Increasing noise robustness by increasing voltage threshold also means reducing its effective detection range. The large uncertainty of positively identifying the signal frequency using the tone-detection method led to large errors in the range estimates. The remaining two detection methods are implemented onboard the presented prototype, which amongst others, is upgraded to a 16-bit digital signal controller 123 (DSC). Considered a hybrid, DSCs are microcontrollers with some builtin functional- ities of traditional DSPs. Implemented digitally, the correlation integration method uses temporal analysis to correlate the incoming signal with a reference sinusoid, while the sliding window discrete Fourier transform (SDFT) algorithm applies joint time-frequency analysis for accurate signal detection. Despite their increased com- plexity compared to the previous two, these methods improve accuracy and noise robustness. This thesis, however, focuses on the SDFT algorithm since the corre- lation integration method depends on unknown parameters, potentially leading to detection latencies that cannot be characterized. The SDFT algorithm is derived from the short-time Fourier transform (STFT), commonly used in joint time-frequency analysis of acoustic signals. The STFT al— gorithm is customized to produce a recursive algorithm for detection of monotonic acoustic signals. With the arrival of a signal with a software selectable frequency, the SDFT output rises, at which the onboard timer is stopped once a threshold is crossed. Using a mixture of assembler and C language, while utilizing the DSCs builtin multiply-accumulate operations and two 40-bit accumulators, the SDFT al— gorithm requires only 678.4 ns for each update, independent of Fourier length N. This translates to an acoustic propagation distance of around 1 mm, thus loss of range information between consecutive updates is minimal. Analysis of the SDF T reveals latency in detection arises from the following sources: steady-state signal amplitude, envelope function of the incoming signal (defining the rise dynamics of the signal), and the aperiodic nature of the incom- ing signal. Experiments reveal that the signal envelope is constant over the tested range (< 25 m), leading to the derivation of a compensation function. Due to the complexity of implementing the compensation function onboard the platform, values are instead tabulated and stored in an internal look—up table. When performing ranging, the robotic fish first measures the steady—state signal amplitude, performs 124 the ranging, and then corrects the estimated range. The application of the compen- sation function reduces detection from a maximum of 6.5 wavelengths to within 1.5 wavelengths. Table 4.1: Comparison of implemented detection methods. [ Methods H Range lAbsolute Error (cm)] Complexity 1 Threshold Small < 90 cm Low Tone-detect Large < 180 cm Low Integral Medium < 120 cm Medium/ High SDFT Large < 75 cm High 4.2 Future Work In this section, areas requiring further work is covered. Listings follow an order of immediate attention. 4.2. 1 Power Supply Currently, the serial combination of two individual LiOn cells without a balancing PCB is potentially dangerous. After extensive use, the maximum charge capacity of LiOn batteries reduces. With a difference in maximum charge capacity of either battery, one cell will be under more strain, potentially leading to failure. A balancing PCB considers the differences in charge capacity during the battery pack charging process. Fortunately, the use of a balancing PCB is easy, and can either be purchased separately, or presoldered to the cells (Fig. 4.1). In addition, the circuit size does not exceed the footprint of the two cells used in the current prototype, thus requiring no special space accommodation. Balancing PCB Figure 4.1: 7.4 V LiOn battery pack with balancing PCB [59]. 4.2.2 RF-Independent Underwater Ranging In its current passive form, the system is dependent on radio frequency (RF) for its time-of-fiight (TOF) ranging protocol. While this is acceptable for a two dimensional surface network, the need for subsurface (and hence three dimensional) operations will result in blind nodes once submerged. Performing surface ranging operations and relying on velocity information for computing updated positions once submerged, can lead to the following. 0 Position error will grow unbounded as the node travels further underwater, o Unnecessary energy will be wasted in efforts to resurface for ranging and re— submerging, o Locating one node will require three additional nodes - all which need to resur- face for the ranging operation. An alternative to RF in the TOF ranging is the use of optical sources, which have better propagation underwater. The use of the infrared (IR) spectrum will reduce interference from visible light occurring naturally in the environment. Compared to acoustics however, underwater optics is more prone to losses from suspended particles, creating shadow zones, thus limiting its effective range. In addition, IR fails in direct sunlight, creating potential failure at surface (or close to) operations. 126 An alternative to passive TOF ranging is its active form, such as used in LBL and USBL systems. These systems require the distant receiving node to repeat (receive followed by transmit) the ranging signal,’while the primary nodes measures its round trip propagation time. The active TOF ranging protocol between two nodes is similar to the one implemented in the proposed system (F ig.1.11), 0 Step 1 - Node 1 transmits an acoustic pulse to Node 2, simultaneously starts onboard timer; 0 Step 2 - \Iode 2 receives the acoustic pulse, estimates detection latency, and transmits an acoustic pulse immediately along with compensation value; 0 Step 3 - Node 1 receives the acoustic pulse, estimates detection latency, and stops onboard timer; 0 Step 4 - Distance between receiver and transmitter is estimated from half the difference of timer reading and detection latencies. Rather than using fixed transducer arrays deployed on the seabed, the robotic fish can use neighboring nodes as anchors, thus locating its position with respect to them. As illustrated in Fig. 4.2, the ranging system uses trilateration for unique positioning of any mobile node within the network. 4.2.3 Three-Dimensional Movement Currently the proposed system is limited to two dimensional surface motion, primar- ily due to the RF-dependency of the ranging method. Achieving motion in the third axis is necessary for true replication of fish, which achieve buoyancy control through a gas bladder. The gas bladder is a sac that can store (or expel) oxygen through diffusion processes from blood vessels in the sac wall. Controlling the amount of oxygen stored in the sac allows fish to ascend or descend without using energy on swimming. 127 Si Anchor Node Anchor Node Mobile Node Anchorm Node Figure 4.2: Localization using mobile nodes as anchors. Authors in [61] mimic the idea of a gas bladder with an open-ended buoyancy tank, with retractable screws on either end to control fluid displacement, and hence buoyancy. One advantage of a buoyancy tank is its ability to change depth without the need for much actuation, however, such a construct requires much space. On the other hand, authors in [62] rely on angle variation of the robot’s pectoral fins to change its depth, while the caudal fin of the fish produces the driving force. Another method for depth control utilizes neutral buoyancy of the submerged platform. A neutrally buoyant object is one where the force of buoyancy acting on it is equal to the force of gravity, remaining at equilibrium, and even appearng to be weightless. An introduced perturbation with vectorial components along the directions representing depth will therefore either ascent or descent the robotic fish. 4.2.4 Signal Sequencing Compared to temporal methods of signal detection, the proposed SDF T algorithm is comparatively robust to background noises. Designed for detection of monotonic signals, the recursive algorithm has minimal computation requirements. However, the presence of ambient noise with frequencies matching, or close to, the ranging signal will have an additive effect on the algorithm output, subsequently leading 128 Acoustic Pulse Sequence ”'1 . l . Signal Amp trude > Time Figure 4.3: Pulse sequence used for ranging, to reduce false signal detection. to earlier detection. In extreme cases, false detection is possible even before the signals arrival at the receiver. One method for reducing false detection is to encode the ranging signal in a sequence known to the receiver. Positive detection of the ranging signal lies not only in its frequency content, but to matching with some known sequence. 4.2.5 Ranging Signal Frequency The implemented SDFT algorithm is capable of positive signal detection within 1.5 wavelengths, thus the choice of acoustic frequency plays a role in the accuracy of the overall system. With the current buzzer (CUI Inc. OPE—267), the system produces errors of less than 75 cm after compensation, approximating the signal wavelength at around /\ = 0.5 m. Converting to a 5 kHz signal, such as the CPE-243 also from CUI Inc. will produce less than 45 cm error, an overall error reduction of 40%. With 40 kHz ultrasonics, this error will drop to below 10 cm. To some, an obvious decision would be to use higher frequency signals. In fact, LBL and USBL systems typically use anywhere between 10 kHz and 30 kHz acoustics. However, reducing system error using higher frequency signals come at the price of directionality. The lower the signal frequency, the more omnidirectional the sound source becomes. In the case of the Medusa nodes used in the AHLos [23] system which rely on ultrasonics for ranging, multiple transmitter-receiver pairs are used to 129 increase directional coverage. 4.2.6 IPMC Related Performance Improvement In the development of robotic fish, researchers have focused on carangiform or thunni- form locomotion, and more recently, on the undulation of long anal fins to mimic e. g. motion of electrogenic fish [61]. DC motors or servos are typically used to achieve the mechanical motion of the fins, however, IPMCS are starting to find their way into biomimetics as a way for achieving more efficient, smaller and lighter actuation systems. IPMC-propelled swimming robots have remained primarily as thunniform loco- motion, and further study should be undertaken to replicate carangiform locomotion. Such investigation could lead to better performance in the cruising speed and turning of the robot. During IPMC fabrication process, the electrodes are deposited on the whole sur— face of the polymer. This limits IPMCS to a single degree of freedom. While it is sufficient for applications as simple joints, manipulators, and actuators, it is not enough to mimic complex motion of e. g. pectoral fins on fish. The idea of introducing patterns onto the surface electrode is to achieve higher controllability of the robotic fish. 4.2.7 Energy Harvesting Recently, there has been an increased interest. in developing efficient methods for extracting energy from renewable sources. This interest has been fueled by promises of a cleaner energy source, long—run cost reduction, and by its vast availability all around us. In sensor networks, energy extraction from the environment means that deployed nodes do not have to be recharged. The most prominent renewable energy sources currently used are based on the sun and water - solar energy and hydroelec- 130 tricity. Out of these two, solar energy is easier to utilize as advancement in solar panel technologies permit its small size, low cost and weight to be installed on robots. On the other hand, extracting energy from water requires large electrical generators and significant. water motion. One application of solar cells onboard sensing platforms is MIT’s solar-powered autonomous underwater vehicle. Solar energy in underwater applications is limited by water depth, with a rapid decrease in light intensity. As a quantitative example, 73% of surface light reaches a depth of 1 centimeter, 44.5% at a depth of 1 meter, and 22.5% at 10 meters. Commercially available solar cells, or conventional cells, are roughly 20% efficient. Coupled with light absorbption in water, significant power extraction means an increase in solar panels and hence the size of the node. While solar panel technologies with efficiency of above 45% exist, they are expensive and not commercially available. In this case, size reduction comes with a price of cost. A recent technology developed by Pelamis Wave Power Ltd. uses the motion of waves on the ocean surface to create electricity. The device consists of sections linked by hinged joints, giving it the ability to move once in contact with waves. This movement is resisted by a hydraulic oil system that forces a motor to run, and in turn drives an electrical generator. While this concept is intended for large wave farms, this concept has the potential of translating into smaller technology that can be used onboard mobile platforms. Due to the downfall and limitation of current energy extraction technologies, a more realistic approach would use batteries in conjunction with those devices. The energy extraction device / battery can be used in a primary / secondary fashion (or vice versa) when one source is running low. On the other hand, stations (whether fixed or mobile) that extract. energy from the environment can be set up as a recharging dock for nodes. Mobile nodes can seek them when in need, charging themselves wirelessly using inductive methods. 131 APPENDIX A Thermal Considerations of MIC29300 In this section, we calculate the required power dissipation Pd of the voltage regula- tor, the value of series resistance R3 for external power dissipation, and finally the thermal resistance 93a of which a heat sink can be selected. Worst case values are used for all parameters, P d 2 [(anar — Vout'm'i'n.) [outmaatl + Vinmaa: ' Ignd : 5-25 W- (A'I) Vimnar 2 Highest input voltage, 8.4 V Voutmin 2 Lowest regulated output voltage, 3.234 V Ioutmaat 2 Highest. steady-state current, 1.0 A I gnd = Regulator biasing current, 10 mA To reduce the load of power dissipation on the regulator, we take advantage of the regulators’ low dropout voltage, and use a series resistance to dissipate power externally. To calculate the value of this resistance R3, R9 ___ Vinm'in _ (Voutmar + Vdo) 2 1.347 {2, (A-2) L [out + Ignd Vimmjn 2 Lowest. input voltage, 6.0 V Vommam 2 Maximum regulated output voltage, 3.366 V Vdo 2 Worst case dropout voltage, 600 mV I outpeak 2 Peak load current, 1.0 A 132 19m) = Regulator biasmg current. 10 mA This resistor is placed in series such that it does not impede the desired peak load current of the board, while creating a voltage drop across it. (and hence power dissi— pation). The power dissipated P3 externally across R3 is computed as follows, 2 7 PS 2 (Iozlfpeak + Ignd) ' R8 = 3'07 W' (A'3) By having 3.07 W dissipated externally, Pd is reduced to 2.18 W. Next we calculate the thermal resistance 63¢, a parameter used in the selection of an appropriate heat sink, 650. = 3% — (6,6 + 6C3) = 31.40 OCW‘l. (A-4) Tj = l\laximum die temperature, 125 OC Ta = h'laximum ambient temperature, 50 CC Hjc = Package (TO-263) junction resistance, 2 OC\V -1 603 = Mounting resistance, 1 OCVV—1 Based on the calculated thermal resistance (93a, we can select a heat sink. Thermal grease can also be used to increase the thermal conductivity of the component and heat sink interface. B Platform Power Consumption Presented is a. break down of the continuous current consumption of the robotic fish, with all its components running at full power. While this situation will rarely be encountered, we are interested in computing the worst case run time before the battery needs to be recharged. Table. B-1 gives a breakdown of power consumption 133 of the main components onboard the robotic fish. Table B-1: Current consumption of components. [ Component [[ Descpription ] Current [mA] ] Voltage[V] [ Power[VV] ] DSC Digital signal controller 10 3.3 0.033 XBee Wireless chip 50 3.3 0.165 AD8652 l\vlicrophone amplifier 20 3.3 0.066 CPE267 Buzzer 30 12 0.36 IPMC Actuator 750 3.3 2.475 Total 860 mA 3.099 W At full charge, the battery pack has a terminal voltage of 8.4 V rated at 2600 mAh. To avoid possible battery damage or degradation in its charge density, we limit the terminal voltage to a minimum of 6 V. With a potential difference of 2.4 V, the battery pack is capable of providing 6.24 Wh. At full operation, this translates to just over 2 hours of continuous operation. In the case that certain modules are not needed, sleep states prolong run time of the platform. C Cruising Speed Experimental Results In this section, results pertaining to the cruising speed of the current robotic fish platform is presented. As a comparison, three different passive fins are used with three IPMCS of different lengths and widths, refer to Tables C—1 and C-2. \Ne refer the reader back to Fig. 2.5 for notation regarding IPMC and tail dimensions. Table C-1: Dimensions of investigated passive fins. [ Identifier [[ a.[mm] ] b[mm] ] D[mm] [ Fin 1 20 50 30 Fin 2 20 40 40 Fin 3 20 65 25 While the passive fin significantly improves forward speed, the configurations vary performance-wise with frequency. From Table C—2, the top achievable cruising speed is around 21 mills—1. Interestingly, we find that, within certain limits, increasing the 134 Table C-2: Attainable cruising speed of robotic fish. [ IPMC Dimensions[mm] [] Passive F in? Frequency[Hz] [Speed[mms"1] ] :r = 28, y = 15 Fin 1 0.8 19.31 :1: =18, y =15 Fin 1 1.0 21.03 :r = 18, y = 20 Fin 1 1.099 21.47 passive fin’s height b while decreasing its length D, results in faster cruising speed. Work done in [27] implies that thrust is proportional to b. Graphical results display- ing cruising speed versus frequency for the different tail configurations is presented in Fig. C-1. D Extended SDFT Ranging Results Ranging results are collected over an extended range of 22 m, in increments of 90 cm, with 10 range estimates at each interval. The ranging sequence is identical as the case covering the ten meter range, where a single measurement involves a 100 ms pulse for computing steady state amplitude A, followed by a 35 ms pulse for actual range estimation, with 500 ms wait period between the two. Consecutive range sequences have a wait period of 1500 ms to reduce reverberation in the recorded signal. At each distance increment, amplitude, compensated range estimate, and compensation value are recorded ten times, and the mean is taken of each data set for display purposes. Ranging is performed between a. fixed transmitter and a mobile receiver, both 57 cm below water line. The presented ranging results are similar to what is presented in Chapter 3, mainly that. the compensation function reduces the absolute error. Up to a distance of 15 m, the absolute error is less than 100 cm. At a distance greater than 15 m, however, the ranging results become more erroneous. While the compensation function is correcting the signal, the uncompensated data is far too non linear to reduce the error to below 100 cm. 135 N 01 25- 20» 20 N N h ‘4 E 15 ' E 15 s ‘fi 8 10- E10 :3" tr: -e- Fin1 -6- PM 5- ~ Fin2 5 . Fin2 ->- Fin 3 '9' Fin 3 o a o - . 0.5 1 1.5 0.5 1 1.5 Frequency [Hz] Frequency [Hz] 25 20. A w E 15- E a: § 10 a} -6- Fin 1 5 Fin 2 ->- Fin 3 o 0.5 1 1.5 Frequency [Hz] Figure C—1: IPMC with dimensions (a) :17 = 28 mm, y = 15 mm, (b) x = 18 mm, y=15mm, (c)r=18mm,y=20mm. Referring to the layout of the test enclosure (Fig. 3.3), it is pointed out that for this experiment, the fixed transmitter is placed in the deep end, while the mobile receiver is moved toward the shallow end. This increased non linearity in the ranging estimates starts at roughly 15 m, when the mobile receiver is in the shallow end of the test enclosure. The acoustic signal has to channel from the deep end, into a shallow body of water with depth of 1 m. This places the receiver within the range of backscattering signals from the surface and ground, corrupting the arrived signal. In Chapter 3. it is argued that for guaranteed clean detection of the signal using the 136 2500 r 600 -A— Actual Distance With compensation 0 I; 32000 _ -e— Without compensation if E500 ' U \ A u A \. g; A k 400 g 1500 - e L g Lil 300 'E \i S 1000 - ‘5 g E 200 - .5 ] Q “4 500 V 100 - 0 g i . 0 . ' . AU 0 500 1000 1500 2000 0 500 1000 1500 2000 Separation Distance [cm] Separation Distance [cm] 1600 - 1400 - g 1200 - 5. 'a 1000 [ s V 800 '3 600 l = £0 ‘0 400 200 ’ 0 x 0 500 1000 1500 2000 Actual Distance [m] Figure D—l: (a) Range estimation using the SDFT algorithm, (b) absolute error with and without compensation, (c) measured steady state amplitude A. 137 SDFT algorithm, a 1.5 m backscattering range can be assumed. Further experiments in a larger body of water, with depth exceeding 3 111, should be sufficient to capture the true performance of the system. 138 E dsPIC30F3012 Pin Connections A description of the DSC pin connections is given in Table E-1. Table E—l: Pinout connection of the DSC. [ Pin Name Description 1 Connection 1 MCLR Programming pin ICSP 2 AN 0 Analog input Microphone module 3 AN 1 Analog input Temperature sensor 4 AN 2 Analog input Battery status indicator 5 RB3 Digital output Buzzer control 6 OSCl N / C - 7 RC15 Digital output XBee sleep control 8 UlATX UART Transmit XBee data IN 9 UlARX UART Receive XBee data OUT 10 OC1 PWM output Left IPMC electrode 11 SCL/PGD 12C clock, Programming data Compass, ICSP 12 SDA/PGC 12C data, Programming clock Compass, ICSP 13 V33 Ground - 14 Vdd Power supply Regulated voltage 15 OC2 PWM output Right IPMC electrode 16 OSCl N / C — 17 AVSS Analog Ground - 18 AVdd Analog power supply Regulated voltage 139 F PCB Layouts GB is used in the implementation of the SDFT and Correlation Integration algo- rithms. G2 is used in the implementation of the threshold method and tone detection method. The base station PCB layout is also shown here. - sans a i i Eng L] E E Illlll;|:| FEED? 525E 3} E E =oooooouoo I 2.1-i] Micfdggems I: E Lab,MSU I _ '21 - Robotic 3Fish = Eng Figure F—1: G3 printed circuit board layout. 140 [a I ”ML Figure F—3: G2 robotic fish. 141 EEJ 9 I0 I .Smm Microsystems ] '0 Lab, MSU lo' -- ' Figure F—4: Base station printed circuit board layout. G Acoustic Propagation Speed Propagation speed can be computed using the expression derived by Medwin [9]. cm = 1449.2 + 4.6 - Tm - 5.5 x 10'2 - T3, + 2.9 x10‘4-T3, + (1.34 —10_2-Tm)- (Sm — 35)+1.6 x10‘2-Dm (G—1) 142 Dm = Depth, 0 S D S 4000 m Sm, = Salinity, 0 S S S 45 ppt Tm = Temperature, 0 S T S 35 0C For computing cw in swimming pools, we can approximate Sm = 3 ppt, Tm = 20 0C, Dm = 0.5 111 corresponding to the experimental configuration. With these values, cw a: 1485.2 HIS—1. W hile an accurate cw is desirable, error in this value causes a linear offset in range estimation, which can be accounted for in post. facto correction. 143 BIBLIOGRAPHY [ll [8] J. Heidemann, W. Ye, J. Wills, A.A. Syed and Y. Li, “Research Challenges and Applications for Underwater Sensor Networks”, in Proceedings of IEEE Wireless Communications and Networking Conference, vol. 1, pp. 228-235, 2006 J.H. Cui, J. Kong, M. Gerla and S. Zhou, “Challenges: Building Scalable Mobile Underwater Wireless Sensor Networks for Aquatic Applications”, in IEEE Network, vol. 20, no. 3, pp. 12—18, 2006 S. Ganeriwal, R. Kumar and MB. Srivastava, “Timing-Sync Protocol for Sensor Networks”, in Proceedings of ACM International Conference on Embedded Networked Sensor Systems, pp. 138—149, 2003 A.A. Syed and J. Heidemann, “Time Synchronization for High Latency Acoustic Networks”, in Proceedings of IEEE International Conference on Computer Communications, pp. 1-12, 2006 J. Li, J. Jannotti, D.S.J. De Couto, D.R. Karger and R. Morris, “A Scalable Location Service for Geographic Ad Hoc Routing”, in Proceedings of ACM In- ternational Conference on Mobile Computing and Networking, pp. 120-130, 2000 S. Meguerdichian, F. Koushanfar, M. Potkonjak and MB. Srivastava, “Cover- age Problems in Wireless Ad-Hoc Sensor Networks”, in Proceedings of Joint Conference of IEEE Computer and Communications Societies vol. 3, pp. 1380-1387, 2001 A. Mainwaring, J. Polastre, R. Szewczyk, D. Culler and J. Anderson, “Wireless Sensor Networks for Habitat Monitoring”, in Proceedings of ACM Interna- tional Workshop on Wireless Sensor Networks and Applications, pp. 88-97, 2002 DB. Kilfoyle and AB. Baggeroer, “The State of the Art in Underwater Acoustic Telemetry”, in IEEE Journal of Oceanic Engineering, vol. 25, no. 1, pp. 4-27, 2000 H. Medwin, “Speed of Sound in Water: A Simple Equation for Realistic Parameters”, in Journal of Acoustical Society of America, vol. 58, no. 6, pp. 1318-1319, 1975 144 [10] [11] [12] [13] [14] [16] [17] [18] [19] [20] DC. Tucker and BK. Gazey, “Applied Underwater Acoustics”, Elseuicr, pp. 65-67, 1966 R.F.\V. Coates, “Underwater Acoustic Systems”, Halsted Press, pp. 19-20, 1989 DR. Raichel, “The Science and Applications of Acoustics”, AIP Press, AIP Series in Modern Acoustics and Signal Processing, pp. 395-397, 2000 GD. Curtis, “Reverberation Characteristics of 4 kHz and 20 kHz Tone Bursts in a Water Filled Tank and Their Effect on Experimental Design”, in IEEE Transactions on Acoustics, Speech and Signal Processing, vol. 28, no. 3, pp. 324-327, 1980 T. Akamatsu, T. Okumura, N. Novarini and H.Y. Yan, “Empirical Refinements Applicable to the Recording of Fish Sounds in Small Tanks”, in Journal of Acoustical Society of America, vol. 112, no. 6, pp. 3073-3082, 2002 AB. Wood and HE. Browne, “A Radio—Acoustic Method of Locating Positions at Sea: Application to Navigation and to Hydrographical Survey”, in Proceed- ings of Physical Society of London, vol. 35, no. 1, pp. 183-193, 1923 L. Girod and D. Estrin, “Robust Range Estimation Using Acoustic and Multimodal Sensing”, in Proceeding of IEEE/RSJ International Conference on Intelligent Robots and Systems, vol. 3, pp. 1312-1320, 2001 J. Gibson, “The Mobile Communications Handbook”, IEEE Press, 1999 All. Quazi, “An Overview on the Time Delay Estimate in Active and Passive Systems for Target Localization”, in IEEE Transactions on Acoustics, Speech and Signal Processing, vol. 29, no. 3, pp. 527-533, 1981 P. Bahl and V.N. Padmanabhan, “RADAR: A11 In-Building RF-Based User Location and Tracking System”, in Proceedings of Joint Conference of IEEE Computer and Communications Societies, vol. 2, pp. 775-784, 2000 J. Beutel, “Geolocation in a PicoRadio Environment”, Diploma Thesis, UC Berkeley, 1999 145 [21] [22] [23] [24] [25] [26] [27] [30] NB. Priyantha, A. Chakraborty and H. Balakrislman, “The Cricket Location- Support System”, in Proceedings of ACM International Conference on Mobile Computing and Networking, pp. 32-43, 2000 J .L. Hill and DE. Culler, “.\-'lica: A Wireless Platform for Deeply Embedded Networks”, in IEEE Micro, vol. 22, no. 6, pp. 12-24, 2002 A. Savvides, C. Han and MB. Strivastava, “Dynamic F ine—Grained Localiza- tion in Ad-Hoc Networks of Sensors”, in Proceedings of ACM International Conference on Mobile Computing and Networking, pp. 166-179, 2001 A. Ward, A. Jones and A. Hopper, “A New Location Technique for the Active Office”, in IEEE Personal Communications, vol. 4, no. 5, pp. 42-47, 1997 A. Nasipuri and R. El Najjar, “Experimental Evaluation of an Angle Based Indoor Localization System”, in Proceedings of IEEE International Symposium on Modeling and Optimization in Mobile, Ad Hoc and Wireless Networks, pp. 1-9, 2006 S. Shatara, X. Tan, E. Mbemmo, N. Gingery and S. Henneberger, “Experimen- tal Investigation on Underwater Acoustic Ranging for Small Robotic Fish”, in Proceedings of IEEE International Conference on Robotics and Automation, pp. 712-717, 2008 E. Mbemmo, Z. Chen, S. Shatara and X. Tan, “Modeling of Biomimetic Robotic Fish Propelled by An Ionic Polymer-Metal Composite Actuator”, in Proceedings of IEEE International Conference on Robotics and Automation, pp. 689-694, 2008 http: / /www.ccsinfo.com / J .J . Leonard, A.A. Bennett, C.M. Smith and H.J.S. Feder, “Autonomous Un- derwater Vehicle Navigation”, Massachusetts Institute of Technology, Marine Robotics Laboratory Technical Memorandum, 1998 N. Kottege and U.R. Zimmer, “Relative Localization for AUV Swarms”, in Proceedings of International Symposium on Underwater Technology, vol. 17, no. 20, pp. 588-593, 2007 146 [31] [3‘2] [36] [37] [38] [39] [40] ht tp: / /www.l'1y dro-int ernat ional.com/ M. W'ikstrom, U. Ahnstrom, J. Falk and P. Handel, “Implementation of an Acoustic Location-finding System for TDOA hv'leasurements”, in Proceedings of Nordic Matlab Conference, 2003 F. Gustafsson and F. Gunnarsson, “Positioning Using Time-Difference of Arrival Measurements” in Proceedings of IEEE International Conference on Acoustics, Speech, and Signal Processing, vol. 6, pp. 553-556, 2003 D. Niculescu and B. Nath, “Ad Hoc Positioning System (APS)”, in Proceed- ings of IEEE Global Telecommunications Conference, vol. 5, pp. 2926-2931, 2001 S. Capkun, M. Hamdi and JP. Hubaux, “GPS-Free Positioning in Mobile Ad Hoc Networks”, in Proceedings of International Conference on System Sciences, vol. 9, pp. 9008-9023, 2001 R. Nagpal, H. Shrobe and J. Bachrach, “Organizing a Global Coordinate System from Local Information on an Ad Hoc Sensor Network”, in Proceedings of International Symposium on Information Processing in Sensor Networks, vol. 2634, pp. 333-348, 2003 N. Bulusu, J. Heidemann and D. Estrin, “GPS-less Low-Cost Outdoor Local- ization For Very Small Devices”, in IEEE Personal Communications, vol. 7, no. 5, pp. 28-34, 2000 M. Shahinpoor, Y. Bar-Cohen, T. Xue, J.O. Simpson and J. Smith, “Ionic Polymer-N’letal Composites (IPMC) As Biomimetic Sensors and Actuators”, in Proceedings of SPIE International Symposium on Smart Structures and Materials, 1998 Z. Chen, K.Y. Kwon and X. Tan, “Integrated IPMC/PVDF Sensory Actuator and Its Validation in Feedback Control” in Sensors and Actuators A: Physical, vol. 144, no. 2, pp. 231—241, 2008 Z. Chen. Y. Shen, N. Xi and X. Tan, “Integrated Sensing for Ionic Polymer- Metal Composite Actuators Using PVDF Thin Films”, in Smart Materials and Structures, vol. 16, pp. 262—271, 2007 147 [41] [43] [44] [45] [46] [47] [48] [491 M. Kruusmaa. A. Hunt. A. Punning, M. Anton and A. Aabloo, “A Linked Manipulator with Ion-Polymer Metal Composite (IPMC) Joints for Soft- and Micromanipulation”, in Proceedings of IEEE International Conference on Robotics and Automation, pp. 3588-3593, 2008 D. Zhang, L. Wang and J. Yu, “A Coordination Method for Multiple Biomimetic Robotic Fish in Underwater Transport Task”, in Proceedings of American Control Conference, pp. 1870—1875, 2007 J. Yu, L. Wang and I\=’I. Tan, “A Framework for Biomimetic Robot Fishs Design and Its Realization”, in Proceedings of American Control Conference, pp. 1593-1598, 2005 X. Ye, Y. Su, S. Guo and L. Wang, “Design and Realization of a Remote Control Centimeter—Scale Robotic Fish”, in Proceedings of IEEE/ASME International Conference on Advanced Intelligent Mechatronics, pp. 25-30, 2008 X. Ye, Y. Su and S. Guo, “A Centimeter-Scale Autonomous Robotic Fish Ac- tuated by IPMC Actuator”, in Proceedings of IEEE International Conference on Robotics and Biomimetics, pp. 262-267, 2007 B. Kim, D.H. Kim, J. Jung and J .0. Park, “A Biomimetic Undulatory Tadpole Robot Using Ionic PolymerMetal Composite Actuators”, in Smart Materials and Structures, vol. 14, no. 6, pp. 1579-1585, 2005 Z. W'ang, G. Hang, Y. Wang, J. Li and W. Du, “Embedded SMA Wire Actuated Biomimetic Fin: A Module for Biomimetic Underwater Propulsion”, in Smart Materials and Structures, vol. 17, no. 2, pp. 25—39, 2008 C. Zhou, NI. Tan, N. Gu, Z. Cao, S. Wang, L. W'ang, “The Design and Implementation of A Biomimetic Robot Fish”, in Journal of Advanced Robotic Systems, vol. 5, no. 2, pp. 185—192, 2008 N. Kato, “Control Performance in the Horizontal Plane of a Fish Robot with Mechanical Pectoral Fins”, in IEEE Journal of Oceanic Engineering, vol. 25, no. 1, pp. 121-129, 2000 G. Laiirent and E. Piat, “Efficiency of Swimming Microrobots using Ionic Polymer Metal Composite Actuators”, in Proceedings of IEEE International 148 Conference on Robotics and Automation, vol. 4, pp. 3914-3919, 2001 [51] N. Kamamichi, M. Yamakita, K. Asaka and Z.W. Luo, “A Snake-like Swimming Robot Using IPMC Actuator/Sensor”, in Proceedings of IEEE International Conference on Robotics and Automation, pp. 1812-1817, 2006 [52] http://dces.essex.ac.uk/st aff/hhu/HCR-Group.html [53] I. Vasilescu, C. Detweiler and D. Rus, “AquaNodes: An Underwater Sensor Network”, in Proceedings of ACM International Conference on Mobile Com- puting and Networking, 2nd Workshop on Underwater Networks, pp. 85—88, 2007 [54] R. Jurdak, C.V. Lopes and P. Baldi, “Software Acoustic Modems for Short Range Mote-based Underwater Sensor Networks”, in IEEE OCEANS, pp. 1-7, 2007 [55] http: // acomms.whoiedu/umodem/ [56] L. Freitag, M. Grund, S. Singh, J. Partan, P. Koski and K. Ball, “The WHOI Micro-Modem: An Acoustic Communications and Navigation System for Multiple Platforms”, in Proceedings of MTS/IEEE OCEANS, vol. 2, pp. 1086-1092, 2005 [57] TC. Austin, “The Application of Spread Spectrum Signaling Techniques to Un- derwater Acoustic Navigation”, in Proceedings of Symposium on Autonomous Underwater Vehicle Technology, pp. 443-449, 1994 [58] DJ. Creasey “Underwater Acoustics”, in Physics Education, vol. 16, no. 4, pp. 244-250, 1981 [59] http: //www.batteryspace.c0m/ [60] http: / / www.atp.nist.. gov / eao / wp05-01 / append-4.htm [61] K.H. Low, “Maneuvering and Buoyancy Control of Robotic Fish Integrating with Modular Undulating Fins”, in Proceedings of IEEE International Confer— ence on Robotics and Biomimetics, pp. 1012-1017, 2006 149 [62] L. Zhang, \V. Zhao, Y. Hu, D. Zhang, L. \Vang, “Development and Depth Con- trol of Biomimetic Robotic Fish”, in Proceedings of IEEE/RSJ International Conference on Intelligent Robots and Systems, pp. 3560—3565, 2007 [63] EB. Hogenaucr, “An Economical Class of Digital Filters for Decimation and Interpolation”, in IEEE Transactions on Acoustics, Speech, and Signal Processing, vol. 29, no. 2, pp. 155-162 [64] http: / /www.dsplog.com/2007/ 150 03062 6398 u H H" II] M I" R" E“ V“ N” U" 1 [Mini] 3 129