matlab code to convert continuous signal into its discrete form

답변 (3개)

Azzi Abdelmalek
Azzi Abdelmalek 2013년 2월 12일
If you want to plot a discrete signal
x=1:10
y=sin(x)
stem(x,y)

댓글 수: 4

i dont want to plot but i want to convert the continuous signal into discrete so that i can use the output for further calculation...
Azzi Abdelmalek
Azzi Abdelmalek 2013년 2월 12일
편집: Azzi Abdelmalek 2013년 2월 12일
What do you mean by continuous signal? give an example of a continuous signal. In your computer, both continuous and discrete signals are in a discrete form!
i know..all the signals that we process in matlab are somewhat discrete in form..but i want a discrete form of continuous signal(lets say)..In other words, i want a signal as output whose sample difference is 1 unit (integer)
Azzi Abdelmalek
Azzi Abdelmalek 2013년 2월 12일
편집: Azzi Abdelmalek 2013년 2월 12일
You said: "i want a signal as output whose sample difference is 1 unit"
My question is, you want an output from what? Give an example. Or do you want to create a discrete signal?

댓글을 달려면 로그인하십시오.

Azzi Abdelmalek
Azzi Abdelmalek 2013년 2월 12일
편집: Azzi Abdelmalek 2013년 2월 12일
Maybe you want quantizing
% your original signal
t=0:0.1:10
y=2*sin(t)
plot(y,'r')
% Quantizing
q=1 % quantization interval
yd=round(y/q)*q
hold on
plot(yd,'b')

댓글 수: 4

hi .. i have the same question i want to do sampling at 50 Hz .how can i do ??
num = xlsread('HASC24278-acc.csv');
timestamps = num(:,1);
signals = num(:,2:end);
first_time = timestamps(1);
last_time = timestamps(end);
Fs = 50;
period = datenum([0 0 0 0 0 1/Fs]);
probe_times = first_time : period : last_time;
resampled_data = interp1(timestamps, signals, probe_times);
1.3608 1.3608 1.3608 1.3608 1.3608 1.3608 1.3608
Columns 7367746 through 7367752
1.3608 1.3608 1.3608 1.3608 1.3608 1.3608 1.3608
Columns 7367753 through 7367759
1.3608 1.3608 1.3608 1.3608 1.3608 1.3608 1.3608
Columns 7367760 through 7367766
its stuck :(.. not working with me .
num = csvread('HASC24278-acc.csv');
timestamps = datetime( num(:,1), 'convertfrom', 'posixtime');
signals = num(:,2:end);
first_time = timestamps(1);
last_time = timestamps(end);
Fs = 50;
period = seconds(1/Fs);
probe_times = first_time : period : last_time;
resampled_data = interp1(timestamps, signals, probe_times);
However, this will fail because you have duplicate timestamps at line 1222 and 1223:
1360805282.336 -0.20259 -0.797522 0.41063
1360805282.336 -0.201619 -0.701036 0.350918

댓글을 달려면 로그인하십시오.

peter dalton
peter dalton 2016년 5월 18일

0 개 추천

i also have a same problem . actually i have a plot of (E,N_E), both are the matrices of of different dimensions, since i am developing a user interface so everytime these dimensions will get change. if i want to plot (dN_E/dE,E), how do i plot this?

카테고리

도움말 센터File Exchange에서 Time Series Objects에 대해 자세히 알아보기

질문:

2013년 2월 12일

댓글:

2021년 11월 30일

Community Treasure Hunt

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

Start Hunting!

Translated by