Dual Tone Multi-Frequency System

advertisement
Dual Tone Multi-Frequency
System
Dial Pulse
DTMF
Project Participants:
Michael Odion Okosun
Farhan Mahmood
Benjamin Boateng
Outline for Presentation….
•
•
•
•
•
•
•
Introduction
Procedure
Filter approach - Band Pass filter
DFT approach - Goertzel algorithm
Noise
Implemetation and Tests
Conclusion
2
Introduction
• DTMF standard was developed by Bell Laboratories.
• Dual Tone Multifrequency System (DTMF), is a touch pad dialling tone.
• DTMF standard is used in touch tone telephones and voice mail
systems.
• Allow users and devices to dial at much higher rate because of the
uniformity of numbers.
• Each digit corresponds to a high frequency and a low frequency
– Both are transmitted simultaneously
•
Works by sending two sinusoids for each symbol pressed on the
telephone keypad.
• The tones are divided into two groups:
– Low group: 697 Hz, 770 Hz, 852 Hz, 941 Hz
– High group: 1209 Hz, 1336 Hz, 1477 Hz,
3
Fig. DTMF
Procedure for decoding DTMF Signal
• Dividing the signal into shorter equal time segments.
• Determining which two frequency component are present in
each time segment.
• Determining which button was pressed.
• A DTMF decoding system has two parts:
– a set of bandpass filters to isolate individual frequency components,
– a detector to determine whether or not a tone frequency is present
4
Fig. Filter with bandpass
Approaches
• Filtering approach
– Simple Bandpass filter
• DFT approach
– Goertzel Algorithm
5
Band Pass Filter
• A filter with a transmission that is high for a
particular band of frequencies, but that falls to
low values above and below this band.
6
Fig. DTMF detection using Bandpass filter
Band Pass Filter
7
DFT Approach
• A block of samples is taken, and its Discrete Fourier Transform is
found for a set of frequencies used in signalisation.
• The most efficient way to find DFT for small number of frequencies
is the use of Goertzel’s algorithm.
• The Goertzel algorithm is a special case of the Discrete Fourier
Transform (DFT).
8
Goertzel Algorithm
• The technique is to measure the signal energy before
and after the filter and to compare the two.
• The Goertzel algorithm is more efficient when only a
small number of points need to be calculated.
• The Goertzel filter is an IIR filter that uses the feedback
to generate a very high band pass filter where the
coefficients are easily generated from the required
centre frequency.
9
Goertzel Algorithm
• The Goertzel’s algorithm is based on the use of
second-order cell, which uses signal samples as
input and gives the DFT coefficients as its output.
• The operation of the Goertzel’s algorithm is
described by two difference equations:
 2k 
vk (i)  2 cos
vk (i  1)  vk (i  2)  x(i)
 N 
yk (i)  vk (i)  vk (i 1)WNk
10
Fig. Goertzel second order cell
Noise
• The noise is used to designate the unwanted waves
that tend to disturb the transmission and processing of
signal.
• White Noise
– is produced by combining sounds of all different frequencies
together.
– equal power density across the entire spectrum.
– constant energy at all frequencies.
• Gaussian Noise
– Synonym of White noise
11
Implementation
The whole system has been decomposed in seven parts i.e.
•
Global variable.m
provides the one entry point for all the variables used in this system. It provides the access to
set and modify the variables.
•
Encoder.m
deals with the generation of signal, which represent the dialled number. As the function starts all
the global variables are imported.
•
Decoder.m
provides the user to choose between two options for the detection.
–
–
Bandpass filter
Goertzel Algorithm
•
Bandpass.m
gets a vector z of dual tone and it convolves the z vector with the impulse response of the filters to
detect each digit dialled by the user.
•
Goertzel algorithm.m
receives a vector z of dual tone and by using DFT, which is implemented with algorithm, detects
each digit dialled. The algorithm analyse the input signal and output data is the frequency of each
component signal.
•
Graph
represents the results graphically which comes from the bandpass filter or goertzel algorithm 12
The Program
1. Start matlab and at the command line enter: encoda
This wills popup the following window.
2. Again at the command line enter: decoda
This will show the following:
‘SELECT THE METHOD YOU WANT TO USE FOR
THE DETECTION’
CHOOSE 1 FOR BANDPASS OR 2 FOR GOERTZEL
AND ENTER
13
Without Noise – Bandpass filter
Output displaying the
Bandpass filter without noise
14
Goertzel Algorithm
Output displaying the Goertzel
Algorithm without noise
15
The dialled digits in the encoder:
16*0#
Output of Bandpass filter with noise
Output of Goertzel algorithm with noise
16
Signal to noise ratio (SNR)
• Quantity used to describe the quality of signal.
• Ratio of magnitude of wanted signal to unwanted
signal expressed in dB.
• The transformation from dB to noise power is done
following way:
SNRdB  10log10 ( Px ) 10log10 ( Pw )
Where
Px = Signal Power
Pw = Noise Power
17
Test for the SNR
Output of DTMF tone
18
Test Results from Different
Dialled Numbers
Dialled no
Signal power
Noise power
SNR [dB]
1
1.0070
0.0148
18.3279
2
1.0037
0.0165
17.8322
20836099
1.0036
0.0148
18.3160
24830009
1.0036
0.0167
17.7809
0023324686043
1.0056
0.0162
17.9198
19
Formula for the SNR
Conclusion
• Seven different frequencies (697 Hz, 770 Hz, 852 Hz, 941 Hz, 1209 Hz,
1336 Hz, 1477 Hz) in DTMF system were tested.
• The DTMF signal was generated using an encoder and then transmitted
through a channel. As a result the transmitted signal were decoded at the
receiver by using two approaches i.e. Bandpass filter and the DFT i.e.
Goertzel algorithms.
•
Afterwards, Gaussian white noise was added in the transmission channel
and the same approach applied.
• The system has been tested for different signal to noise ratio and we have
found that Goertzel algorithm approach performs well as compared to band
pass filter since with bandpass filter it goes to the negative SNR region.20
Download