Re: some suggestions on my octave-band spectrogram analysis in fixed point DSP implementation



Well, i am aiming to design a 1/3 octave band spctrogram for vibration
analysis to find the perifodic fault of the mechanical gearbox. the
target frequency range is from 0.7HZ to 325HZ.


I use the digital 1/3 octave bandpass filter banks to achieve my goal.

First, I did it in MATLAB.
the algorithm goes like this way,

first, i use Tms320LF2407 DSP board to sampling the data, with the
sampling frequency is 775HZ. then

1) DC removal
2) respectively calculate the coefficients of the 4 order IIR bandpss
filter for
first three center frequency. let's say one center frequency
stands for one channel
we start from the biggest frequency that is 325 hz.
and the first three coefficients bank is [B_high,A_high],
[B_center,A_center], [B_low,A_low].
[B_high,A_high] =oct3design(Fc,Fs, 4);
y_output=filter(B_high,A_high,x_input);
P(45)=std(y_output);

[B_center,A_center] =oct3design(Fc,Fs, 4);
y_output=filter(B_center,A_center,x_input);
P(44)=std(y_output);

[B_low,A_low] =oct3design(Fc,Fs, 4);
y_output=filter(B_low,A_low,x_input);
P(43)=std(y_output);

thus ,calculate the first P(45), P(44),P(43) ,

3) decimate the input by the factor of 2,that is
first there is one 30 order FIR lowpass filter, then
resample the input at the interval of 2.
then, repeat the step 2), while the center frequency is decreasing ,
the sampling rate is decreasing by 2, (multirate filter, decimate), but
the coefficients [B_high,A_high], [B_center,A_center], [B_low,A_low]
is the same.


x_input=decimate(x_input,2);
y_output=filter(B_high,A_high,x_input)
;
p(i)=std(y_output);




4) repeat step 3) till calculate P(1),

thus, bar(P); we can get the spectrum.



The problem is :

I get the right result from MATLAB, the value from P(45) to
P(1) is right in MATLAB.


But after the implementation inside the fixed point dsp TMS320LF2407
,
I found P(45) to P(15), the result is almost the same as that from
MATLAB,but from
P(14) to P(1), I found that some of the result from DSP is bigger than
that from MATLAB.


So, I thought the calculation may lost the resolution for the low
frequency after serval downsamping by 2.

And I want to know how to resolve this problem. Should I change the
coefficients after P(14), since after serval times decimate by 2, the
value of the input is gradually decrease to near zero, i thought the
problem is because these value. In matlab, the resolution is enough,
but for the fixed point DSP, it is hard to calculate the IIR bandpass
filter , when the input is near zero.

hope you understand me. how to resolve this problem, i want to get the
same result of P, not the high frequency ,but the low frequency. thanks

.



Relevant Pages

  • Re: How to calculate a filter in excel
    ... currently have the specifications of the filter (cutoff frequency of 200 ... Unless Excel has a lot of DSP functionality implemented (which I ... SciLab is a good alternative to MatLab. ...
    (comp.dsp)
  • Re: signal processing
    ... command over DSP concepts.For this i recorded voice using mic in matlab,i ... a filter, then use ifft to convert back to time or space domain. ... You can also read some matlab tutorials on DSP, ...
    (comp.soft-sys.matlab)
  • Re: Future of DSP?
    ... DSP *coding* might stop being particularly interesting. ... Matlab doesn't think for you. ...  It can't tell you what filter you want, though, nor how to ... best solve your real problem. ...
    (comp.dsp)
  • Re: Future of DSP?
    ... Well, I won't guess at any time scales, but DSP will cease to exist as ... DSP *coding* might stop being particularly interesting. ... Matlab doesn't think for you. ... It can't tell you what filter you want, though, nor how to ...
    (comp.dsp)
  • Re: whats a STUPIDENT?
    ... I have seen only MATLAB and MathCad, ... I'd like to receice some advice about implementing an FM demodulator in a DSP proccessor. ... I'm a student of eletronics and I woul like implement a voice scrambler using the algorithm RSA on plataform DSP tms320c6711, I have watched that you done some algorithms to work in a DSP plataform, maybe you can help me with this,If dou you have any RSA algorithms for DSP, I'll be very gratefully. ... Do we have to start with a FD (frequency domain) weight vector that is all zeros. ...
    (comp.dsp)