|
| |||
How to synthesize a mono-component non-stationary signalOne part of the Time-Frequency Toolbox is dedicated to the generation of non-stationary signals. In that part, three groups of M-files are available:
The first two groups of files can be combined to produce a large class of
non-stationary signals, multiplying an amplitude modulation and a frequency
modulation.
Examples
We can multiply the linear frequency modulation of Example 1 (see page
>> fm1=fmlin(256,0,0.5);
>> am1=amgauss(256);
>> sig1=am1.*fm1; plot(real(sig1));
>> fm2=fmconst(256,0.2);
>> am2=amexpo1s(256,100);
>> sig2=am2.*fm2; plot(real(sig2));
As a third example of mono-component non-stationary signal, we can consider the M-file doppler.m : this function generates a modelization of the signal received by a fixed observer from a moving target emitting a pure frequency (see fig. 2.8).
>> [fm3,am3]=doppler(256,200,4000/60,10,50);
>> sig3=am3.*fm3; plot(real(sig3));
This example corresponds to a target (a car for instance) moving straightly
at the speed of 50m/s, and passing at 10m from the observer (the
radar!). The rotating frequency of the engine is 4000revolutions per
minute, and the sampling frequency of the radar is 200Hz.
In order to have a more realistic modelization of physical signals, we may need to add some complex noise on these signals. To do so, two M-files (noisecg an noisecu) of the Time-Frequency Toolbox are proposed : noisecg.m generates a complex white or colored gaussian noise, and noisecu.m, a complex white uniform noise. For example, if we add complex colored gaussian noise on the signal sig1 with a signal to noise ratio of -10dB (see fig. 2.9)
>> noise=noisecg(256,.8);
>> sign=sigmerge(sig1,noise,-10); plot(real(sign));
the deterministic signal sig1 is now almost imperceptible from
the noise.
Eric Chassande-Mottin 2005-10-26 | |||