View
219
Download
1
Category
Tags:
Preview:
Citation preview
Greg DavisScott HambletonJon HoltonChris JohnsonChris Monfredo
12/10/13 Rochester Institute of Technology 1
P14251Underwater Acoustic Communication
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 2
AgendaDesign Updates/Proof of ConceptSoftware ComponentsDrawings (EE)BOM (EE)Drawings (ME)BOM (ME)Final Cost AnalysisFinal Risk AnalysisTest PlansMSD II Schedules
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 3
Frequency Shift Keying: Produces four different frequencies corresponding to 00, 01, 10, 11 SD Simple modulation and demodulation schemes and circuitry Quick and efficient set up and delivery times Schedules
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 4
Frequency Shift Keying:
Modulation:Theory-produce four different frequencies that each represent a different two bit
symbol. These frequencies will be gray coded such that only a maximum of one bit error can occur per demodulation error.
• After compression and redundancy, we need to send 9768 kbps to meet our 15 kbps customer requirement. This indicates that the lowest possible frequency that can be used is 14.4 kHz.
29 kHz = 0034 kHz = 01 39 kHz = 1144 kHz = 10
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 5
Frequency Shift Keying:
Modulation:• To produce the four needed frequencies, properties of a square wave can be
exploited. The main property being used is that in frequency, a square wave, is sync function. A sync function has a large amplitude at the center frequency and multiple harmonics that theoretically occur every 3*fc
• Using a sharp band pass filter will allow us to keep the large portion of the signal that occurs at the center frequency while removing all of the other harmonics
• To generate the needed frequency response, an LC band pass filter will be used
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 6
Frequency Shift Keying:
Modulation:• The LC band pass filter has a center frequency at 1/sqrt(LC), and a bandwidth of
1/(C*RL). Since the output of our filter will be fed into an amplifier with theoretical infinite input resistance, our bandwidth will be very small; which is desirable.
• By adjusting the input resistance, we can also adjust the sharpness of each filter• Each filter will be fed by a clock pin coming from the RPi, that will provided the
square wave at each of the four desired frequencies• The output of the four band pass filters will be fed into a 4:1 mux whose output
will be controlled via an enable and two addressing pins
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 7
Frequency Shift Keying:
Modulation:
-80
-60
-40
-20
0
20
Mag
nitu
de (
dB)
104
105
106
-90
-45
0
45
90
Pha
se (
deg)
Bode Diagram
Frequency (rad/s)
-100
-80
-60
-40
-20
0
20
Mag
nitu
de (
dB)
104
105
106
107
-90
-45
0
45
90
Pha
se (
deg)
Bode Diagram
Frequency (rad/s)
-100
-80
-60
-40
-20
0
20
Mag
nitu
de (
dB)
104
105
106
107
-360
-270
-180
-90
0
Pha
se (
deg)
Bode Diagram
Frequency (rad/s)
-100
-80
-60
-40
-20
0
Mag
nitu
de (
dB)
104
105
106
107
-360
-270
-180
-90
0
Pha
se (
deg)
Bode Diagram
Frequency (rad/s)
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 8
Frequency Shift Keying:
Demodulation:• To demodulate we are looking to decipher the four different frequencies in order
to obtain the original binary message• This will be done by taking the incoming signal from the hydrophone, band
passing around our frequency range, and then passing the analog signal through an analog to digital converter. The output of the ADC will then be fed back to a pin on the RPi.
• The DFT will then be performed on the incoming signal in order to determine the largest frequency component. Based on the frequency and the amplitude at this frequency, the incoming message will be decoded.
• The DFT will be performed using the FFTW C programming package developed by MIT
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 9
Frequency Shift Keying:
Demodulation:• The FFTW package allows the user to do one or multiple dimension FFT’s with a
very simple to use library• This package is also optimized for multithreading and also gives the capability to
determine the most optimum way in which to take the FFT of the current signal.#include <fftw3.h>{fftw_complex *in, *out;fftw_plan p;...in = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N);out = (fftw_complex*) fftw_malloc(sizeof(fftw_complex) * N);p = fftw_plan_dft_1d(N, in, out, FFTW_FORWARD, FFTW_ESTIMATE);...fftw_execute(p); /* repeat as needed */...fftw_destroy_plan(p);fftw_free(in); fftw_free(out);}
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 10
Frequency Shift Keying:
Demodulation:periods: 3
FS: 2.25 MHz
-6 -4 -2 0 2 4 6 8 10 12
x 104
95
96
97
98
99
100
101
102
-4 -2 0 2 4 6 8 10 12
x 104
83
84
85
86
87
88
89
-4 -2 0 2 4 6 8 10 12
x 104
71
72
73
74
75
76
77
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 11
Dish Concept:
•Use parabolic collector around hydrophone.
•Center hydrophone at focal point.
•Increase gain from transmitter. Parabolic Antenna ConceptRadartutorial .eu
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 12
Initial Dish Design:
•Mounts on top of housing
•Made from plastic or metal
•12” Diameter to increase gain
11/26/13 Rochester Institute of Technology 13
P14251Underwater Acoustic Communication
CE Overview-Software Architecture-Control unit flowchart and pseudo-code-Error Detection/Correction-Framing Information-Data Rate Analysis
11/26/13 Rochester Institute of Technology 14
P14251Underwater Acoustic Communication
Software Architecture PC_Interface
+receiveMessage(): string+sendMessage(string msg)
Tx_PC
+transmit(string msg)
Rx_PC
- empty : boolean
+getMessage() : string
Rx_Signal
-channel_empty : boolean
+readFrame() : bit[]- dsp(bit[] bits)
Controller
-busy : boolean-waitingOn : string
+main() : int
Tx_Signal
+transmitFrame(bit[] frame)
Compressor
+compressMsg(string message) : bit[]+decompressMsg(bit[] data) : string
Encryptor
+encrypt(bit[]* data)+decrypt(bit[]* data)
DataPacker
+createFrame(bit[]* data) +getFrameType(bit[] frame) : string+isRepeatFrame(bit[] frame) : boolean+extractData(bit[] frame) : bit[]+createControlFrame(string type) : bit[]
ErrorHandler
+hasErrors(bit[] frame) : boolean+correctErrors(bit[]* frame)
11/26/13 Rochester Institute of Technology 15
P14251Underwater Acoustic Communication
Control Unit Pseudo-Code
11/26/13 Rochester Institute of Technology 16
P14251Underwater Acoustic Communication
Control Unit Pseudo-Code
11/26/13 Rochester Institute of Technology 17
P14251Underwater Acoustic Communication
Control Unit Pseudo-Code
11/26/13 Rochester Institute of Technology 18
P14251Underwater Acoustic Communication
Error Detection and Correction- Hybrid Scheme: ECC and ARQ- EEC Implementation: BCH vs. Reed Solomon- BCH is easier to implement, but requires a much larger
amount of redundancy- Reed-Solomon is more complex, but overall much
better and requires only 20% redundancy (to correct 10% of errors)
11/26/13 Rochester Institute of Technology 19
P14251Underwater Acoustic Communication
Error Detection and Correction- Reed Solomon encodes k symbols into n codewords- n – k = 2t - Errors are corrected at the symbol level. If a symbol
has 4 bits and all of them are wrong, it only counts as one error.
- Can vary the code word size with the number of bits per symbol
- RS(255, 212) with 4 bits/symbol, RS(1023, 853) with 1 bit/symbol, etc.
- For very small frames (i.e. control frames), RS(16, k)
11/26/13 Rochester Institute of Technology 20
P14251Underwater Acoustic Communication
Error Detection and Correction- Encoding: LFSR based implementation is extremely
simple and fast. Will translate well to C
11/26/13 Rochester Institute of Technology 21
P14251Underwater Acoustic Communication
Error Detection and Correction- Decoding is more complex, but efficient algorithms
exist that will help significantly
11/26/13 Rochester Institute of Technology 22
P14251Underwater Acoustic Communication
Frame Sentinels-Sentinels are a unique pattern of bits that signify the start and end of the framei.e. 01110 –data– 01110-When preparing the frame for transmission, if the pattern appears anywhere in the data, bit stuffing is used to eliminate it (i.e. 01110 -> 011010)-Commonly used sentinel which we’ll use is 01111110Frame Header-1 bit to signify the type of frame: control or message-1 bit that gets flipped each time a new frame is sent
11/26/13 Rochester Institute of Technology 23
P14251Underwater Acoustic Communication
Control frame formats-Since it’s especially important to interpret control frames correctly, 4 bits are used to display the unique patterns-0000 – Request to Send (RTS)-0110 – Clear to Send (CTS)-1001 – Acknowledgement (ACK)-1111 – Done (Signifies that all frames have been sent)
-These 4 bits + the 2 header bits can be encoded with an RS(7, 3) code (2 bits per symbol)
11/26/13 Rochester Institute of Technology 24
P14251Underwater Acoustic Communication
Frame Sizes- Control Frame: 16 (sentinels) + 14 (data) = 30 bits- Message Frame: 16(sentinels) + X+2 (message) = 18+X bits
Propagation delay (20ms for 30m distance) limits the number of frames that can be sent.
For 15kb/s, the maximum number of message frames =9 frames, each containing 1k encoded information bits
Increase X to ~1023 bits for Reed-Solomon Encoding
11/26/13 Rochester Institute of Technology 25
P14251Underwater Acoustic Communication
11/26/13 Rochester Institute of Technology 26
P14251Underwater Acoustic Communication
Data Rate Analysis – Code Overhead-From SSDR: Compression time is expected to be negligible-Encryption time is a non-factor-Error Encoding time is negligible-FFTW benchmarking info suggests very quick performance times-Error Decoding time may take a bit longer, but millions of clock cycles are available to work with.* We may be able to further lower the number of message frames to eliminate propagation delays. This adds slightly more complexity to error handling.
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 27
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 28
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 29
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 30
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 31
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 32
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 33
Mechanical DrawingsAssemblySheet Metal HousingMounting PlateFront and Back covers
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 34
Assembly Drawing
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 35
Sheet Metal Housing
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 36
Mounting Plate
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 37
Back Cover
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 38
Front Cover
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 39
Mechanical BOM
Total Mechanical cost: $113 + Housings and Dishes
Description Distributor D. Part Number QTY per housing Price Spares QTY Total Price ExtendedNylon Liquid-Tight Cord Grip .16" to 0.31" McMaster Carr 69915K51 2 $2.82 1 5 $14.108-32 CLS Self Clinching Nuts With Housing - 44 0 88 $0.0050x 8-32 Stainless Pan Head Machine Screws 7/32" long McMaster Carr 91735A193 2 $7.86 0 4 $31.4450x 8-32 Steel Hex Nuts McMaster Carr 90480A009 1 $1.49 0 2 $2.988-32 1 1/2" Long Hex Standoffs McMaster Carr 93620A945 4 $1.74 0 8 $13.92Internal Mounting Plates 6"x6" 1/8" thick McMaster Carr 88685K1 1 $6.20 0 2 $12.406061 Al 6"x36" 1/8" thick McMaster Carr 8975K923 1 $17.19 0 1 $17.19316 Stainless Sheet Metal Housing ? ? 1 0 2 $0.00Santoprene Rubber Gasket 12"x24" 1/32" thick McMaster Carr 86215K21 - $10.45 0 1 $10.455 ft Adhesive Backed Velcro 1" wide McMaster Carr 9273K11 - $5.78 0 1 $5.78100x M2.5 Steel Screws 10mm length McMaster Carr 92005A071 1 $4.13 0 1 $4.1350x M2.5 Plain Steel Nuts McMaster Carr 90592A006 1 $1.04 0 1 $1.04Speaker Dish 1 2 $0.00Hydrophone Dish 1 2 $0.00Speaker Mount 1 2 $0.00
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 40
B117-11 Spray Test Results:Test Material: Specimen # Initial Mass (grams): Final Mass (grams): Mass Change (grams):316SS 1 64.2 64.2 0316SS 2 70.3 70.3 0316SS 3 62.7 62.7 0316SS 4 66.8 66.8 0316SS 5 62.3 62.3 0ABS Plastic 1 8.8 8.8 0ABS Plastic 2 8.2 8.2 0ABS Plastic 3 8.5 8.5 0ABS Plastic 4 8.6 8.6 0ABS Plastic 5 8.4 8.4 0Naval Brass 1 70.3 70.3 0Naval Brass 2 71.5 71.5 0Naval Brass 3 68.9 68.9 0Naval Brass 4 73 73 0Naval Brass 5 66.8 66.8 0Alum 6061 1 22.1 22 0Alum 6061 2 20.4 20.4 0.1Alum 6061 3 22.6 22.6 0Alum6061 4 23.8 23.7 0.1Alum 6061 5 20.8 20.6 0.2
• 6061 Aluminum preformed worst.
• Naval Brass, ABS Plastic, and 316SS all had no noticeable effects of corrosion
• 316SS Best choice for cost and machinability.
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 41
Cost AnalysisMSD I Test Cost: $100Mechanical Component Cost: $113 + HousingsElectrical Component Cost: $1105 + PCBsTotal Budget: $1750$432 remainder for shipping and emergencies
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 42
Electrical Test PlansPower Converters
• <5% Ripple at 1A load for 5V• <1% Ripple at 1A load for 3.3V
Power Amplifier• Adjustable Gain• Find resistance for 10W
AGC• 1V Amplitude for any input
LC Filters• Adjust values
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 43
Software Test Plans-Unit test all code-Device testing : make sure code actually runs on the Raspberry Pi-Wired device testing : make sure both devices can communicate via wired connection before attempting wireless-Turn functionalities on and off to see that they make a difference
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 44
Mechanical Test Plans
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 45
Risk AnalysisID Problem Likelyhood Damage Importance Mitigation Owners
1 The housing isn't watertight 2 3 6 Test waterproofing and test the empty housing SH, GD2 Short circuit 1 3 3 CJ, CM3 Damage due to mis-handling parts 1 2 2 Team must be c areful with components All4 Loss of carrier frequency 1 3 3 Have a robust communication scheme in place CJ, CM5 Power loss 1 1 1 CM6 Power Surge 1 3 3 Surge Protection CM7 Data loss 2 3 6 Have tested error correction/detection JH8 Overheat microprocessor 1 3 3 Use effi cient code and have thermal management JH, GD9 Corrosion breach 1 3 3 Galvanize or use corrosion resistant materials SH, GD
10 Speaker doesn't work 1 1 1 Has been found to work, repeatably in a lab environment CJ, CM11 Ordered components do not match specs 2 3 6 Order from reputable sources with return policies All12 Demodulation Chip doesn't work 2 3 6 Do DSP on the R-Pi. CJ (JH)13 Bandpass Filter doesn't work 1 1 1 CJ14 Mode Choke doesn't work 1 1 1 CJ15 Sheet metal housing is too expensive 1 3 3 Highly unlikely given current financial status of the project GD, SH16 PCB is too expensive 1 2 2 Use a perf board and hand solder CM17 Speaker/Hydrophone dish doesn't work 2 2 4 We check functionality first, then prioritize the dish SH, GD18 Power Converteres can have too much ripple 1 2 2 Scale C and L components or use higher current capacity converter CM19 AGC doesn't work 2 1 2 There are plenty of AGC chips available CM20 Power amplifier doesn't work 2 2 4 TI has technical support for our power converter CM21 Noise on and/or electrically charged box 1 3 3 Ground the box CM22 Discharging the batteries too low 2 3 6 Implement a battery level indicator CM
Underwater Acoustic Communication
12/10/13 Rochester Institute of Technology 46
MSD 2 Schedule
Recommended