Download - Dtmf Detection

Transcript
Page 1: Dtmf Detection

Tomasz Marciniak 1

Detection of DTMF signals

Tomasz Marciniak Tomasz Marciniak

E-mail: Tomasz.MarciniakE-mail: [email protected]@put.poznan.pl

Page 2: Dtmf Detection

Tomasz Marciniak 2

OUTLINE

1. DTMF signaling

2. Calculation methods

3. Comparison of arithmetic operations

4. Improving of DTMF detection

Page 3: Dtmf Detection

Tomasz Marciniak 3

DTMF signaling

HMI module

DTMF detection software

Machine

DSP Module

Push-button keyboard

PC

Human site

Transmission line (DTMF

signal)

Steering signals

Page 4: Dtmf Detection

Tomasz Marciniak 4

DTMF signaling

1 2 3 A

4 5 6 B

7

*

8

0

9

#

C

D

697

770

852

941

1209 1336 1477 1633 [Hz]

high frequency group

low

freq

uenc

y gr

oup

Page 5: Dtmf Detection

Tomasz Marciniak 5

DTMF signalingExample of DTMF application

Page 6: Dtmf Detection

Tomasz Marciniak 6

DTMF generation

2cos(1)

Sygnał tonowy

T

T

Xx

Xx

+

+

-1

2cos(2)

T

T

Xx

Xx

+

+

-1

+

200 400 600 800 1000 1200 1400 1600 1800 2000 2200 2400

-1.5

-1

-0.5

0

0.5

1

1.5

Indeks probki

Am

plitu

da

Przykladowy sygnal DTMF

Recommendation Q24

Page 7: Dtmf Detection

Tomasz Marciniak 7

Calculation of DFTDirect method

1

0

ImjReN

n

knN

knN WnxWnxkX

Multiplications: 2N

Additions: 2(N-1)

N2

Page 8: Dtmf Detection

Tomasz Marciniak 8

Calculation of DFT FFT method

N2

kNXkX *

We can:• calculate two -point DFT’s for two real signals using one -point FFT algorithm,

or• calculate one -point DFT (for one real signal decimated into two real signals) using one -point FFT algorithm.

Page 9: Dtmf Detection

Tomasz Marciniak 9

Calculation of DFT FFT methods

N2

Calculation process - four stages:1. Pacing and bit-reversal of input2. N-point complex FFT3. Separation of odd and even parts4. Generation of final output

Page 10: Dtmf Detection

Tomasz Marciniak 10

Calculation of DFT FFT methods

N2

Disadvantages of FFT algorithms:1. compute all output samples of the DFT,2. the spectrum density depends on the

number of the input (output) samples, 3. the FFT needs an accumulation of the all

input samples, before beginning of the transformation,

4. they require memorizing many powers of the complex coefficient.

Page 11: Dtmf Detection

Tomasz Marciniak 11

Calculation of DFT Goertzel algorithm

N2

s

k

f

fπ2cos2

N

k2π2cos

kX

T

+

Xx

kN

2πj

e

Xx

nx

1- T

Xx

1-

Xx

+

Page 12: Dtmf Detection

Tomasz Marciniak 12

Goertzel algorithm

1 nwWnwny kk

Nkk

1ImjRe nwWWnwny kk

Nk

Nkk

222Im12Re11 k

Nkkk

Nkk WNwNwWNwNy

1

π2cos212211 22

s

kkkkkk f

fNwNwNwNwNy

Page 13: Dtmf Detection

Tomasz Marciniak 13

Comparison of real arithmetic operations

N2

2N

NN 2

22

2 NN

22 N

N

2log 2

NN

1

24

2log

2

32

NNN

Method Number of multiplications

Number of additions

DFT – (direct)

Goertzel algorithm

FFT – time division

Page 14: Dtmf Detection

Tomasz Marciniak 14

ComparisonWhen Goertzel is more effecitive?

1

2log

3 2

N

N

NK

1 NK KN

N

41

2log2

Goertzel FFT

Page 15: Dtmf Detection

Tomasz Marciniak 15

ComparisonWhen Goertzel is more effecitive?

Page 16: Dtmf Detection

Tomasz Marciniak 16

ComparisonWhen Goertzel is more effecitive?

Page 17: Dtmf Detection

Tomasz Marciniak 17

Improving of DTMF detection

Q: How we can reduce the number of DFT computations?

A: By reduction of the number N of the analyzed samples.

Page 18: Dtmf Detection

Tomasz Marciniak 18

Improving of DTMF detection

%100k

kkNk f

ff

Page 19: Dtmf Detection

Tomasz Marciniak 19

Improving of DTMF detection

Typical solution: N=205

Proposed solution:

• Calculation energy for 80 N 85

• and next correction

85

80NkNk

Page 20: Dtmf Detection

Tomasz Marciniak 20

Improving of DTMF detection

20 40 60 80 100 120 140 160 180 2000

50

100

205

10 20 30 40 50 60 70 800

20

40

80

10 20 30 40 50 60 70 800

20

40

81

10 20 30 40 50 60 70 800

20

40

82

10 20 30 40 50 60 70 800

50

83

10 20 30 40 50 60 70 800

50

84

10 20 30 40 50 60 70 800

50

85

Page 21: Dtmf Detection

Tomasz Marciniak 21

Improving of DTMF detectionTests

Page 22: Dtmf Detection

Tomasz Marciniak 22

Improving of DTMF detectionTests

Page 23: Dtmf Detection

Tomasz Marciniak 23

Improving of DTMF detectionTests

Type of calculation Difference between energy levels

[%]

Constant block N=1024 0.31

Constant block N=205 1.30

Constant block N=80 3.73

Varying block 80 N 85 13.62

Varying block 80 N 85 with correction

0.56