i have a signal now i want to calculate the DC values of it

36 views (last 30 days)
Suppose i have a signal which has AC and DC commponet.........
now i want to calculate the DC signal from it....
I have done low pass filterting as below
Fs = fs; % Sampling Frequency
Fpass = 0.8; % Passband Frequency
Fstop = 1; % Stopband Frequency
Apass = 1; % Passband Ripple (dB)
Astop = 80; % Stopband Attenuation (dB)
match = 'passband'; % Band to match exactly
% Construct an FDESIGN object and call its CHEBY1 method.
h2 = fdesign.lowpass(Fpass, Fstop, Apass, Astop, Fs);
Hd2 = design(h2, 'cheby1', 'MatchExactly', match);
s1_dc = filter (Hd2 , s1);
but still i could not get the required DC signal
what should i do ? do i need to use any other Low pass filter ??

Accepted Answer

Honglei Chen
Honglei Chen on 5 Feb 2013
Edited: Honglei Chen on 5 Feb 2013
Theoretically, the DC component is simply
mean(s1)
If this is not what you want, could you elaborate a little more what you mean by DC signal?
  2 Comments
Liaquat Ali
Liaquat Ali on 5 Feb 2013
I have a signal S1 which has low frequency values till 5 Hz.
Now i have a formula which is
R(i) = log10((s1_ac_dc(i))/s1_dc(i)) / log10((s3_ac_dc(i))/s3_dc(i));
Which means i have to divide the signal value with its DC value......
so for a signal S1 i need its DC value at that point.??
Honglei Chen
Honglei Chen on 5 Feb 2013
what is the meaning of index i? In general DC value is a constant across the signal

Sign in to comment.

More Answers (0)

Communities

More Answers in the  Power Electronics Control

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!