46
Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo 12/10/13 Rochester Institute of Technology 1 P14251 Underwater Acoustic Communication

Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Embed Size (px)

DESCRIPTION

P14251 Underwater Acoustic Communication. Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo. 12/10/13. Rochester Institute of Technology. 1. Underwater Acoustic Communication. Agenda Design Updates/Proof of Concept Software Components Drawings (EE) BOM (EE) - PowerPoint PPT Presentation

Citation preview

Page 1: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Greg DavisScott HambletonJon HoltonChris JohnsonChris Monfredo

12/10/13 Rochester Institute of Technology 1

P14251Underwater Acoustic Communication

Page 2: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 3: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 4: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 5: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 6: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 7: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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)

Page 8: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 9: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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);}

Page 10: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 11: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 12: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 13: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 14: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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)

Page 15: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

11/26/13 Rochester Institute of Technology 15

P14251Underwater Acoustic Communication

Control Unit Pseudo-Code

Page 16: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

11/26/13 Rochester Institute of Technology 16

P14251Underwater Acoustic Communication

Control Unit Pseudo-Code

Page 17: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

11/26/13 Rochester Institute of Technology 17

P14251Underwater Acoustic Communication

Control Unit Pseudo-Code

Page 18: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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)

Page 19: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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.

Page 20: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 21: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 22: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 23: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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)

Page 24: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 25: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

11/26/13 Rochester Institute of Technology 25

P14251Underwater Acoustic Communication

Page 26: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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-FFTW benchmarking info suggests very quick performance times-Error Encoding time is negligible-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.

Page 27: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 27

Page 28: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 28

Page 29: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 29

Page 30: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 30

Page 31: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 31

Page 32: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 32

Page 33: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 33

Mechanical DrawingsAssemblySheet Metal HousingMounting PlateFront and Back covers

Page 34: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 34

Assembly Drawing

Page 35: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 35

Sheet Metal Housing

Page 36: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 36

Mounting Plate

Page 37: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 37

Back Cover

Page 38: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 38

Front Cover

Page 39: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 40: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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.

Page 41: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 42: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 43: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 44: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 44

Mechanical Test Plans

Page 45: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

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

Page 46: Greg Davis Scott Hambleton Jon Holton Chris Johnson Chris Monfredo

Underwater Acoustic Communication

12/10/13 Rochester Institute of Technology 46

MSD 2 Schedule