フィルターのクリア

Generate a discrete time signal from a given continous time signal

3 ビュー (過去 30 日間)
lian jiajie
lian jiajie 2020 年 11 月 12 日
編集済み: Yaowei Zhu 2020 年 11 月 12 日
Lets say I have a continout time signal, x(t) = sin (1000pi*t).
I wanted to generate a sequence of discrete time signal ,x[n] of length 4096, and only print the first 10 values of x[n].
How do I do that , I am super new to matlab.

採用された回答

Yaowei Zhu
Yaowei Zhu 2020 年 11 月 12 日
如果你要对一个连续信号采样从而得到离散的序列,那么首先你需要指定采样率是多少,或者说每个信号周期内你想采多少个点。假定每个周期内采点数量为N,现在你的信号频率为,那么对应的采样率,那么采样间隔为。因此采样代码如下:
N = 10;
f0 = 500;
fs = N*f0;
Ts = 1/fs;
k = 0:4095;
t = k*Ts;
x = sin(2*pi*f0*t);
x(1:10)
以上代码就能得到你想要的结果了。
  2 件のコメント
lian jiajie
lian jiajie 2020 年 11 月 12 日
編集済み: lian jiajie 2020 年 11 月 12 日
Ty, I have a fs = 2800Hz but if my signal is x = sin(1000*pi*t)+0.5*sin(1200*pi*t)+2*sin(1400*pi*t), how do I know my f0 ?
Yaowei Zhu
Yaowei Zhu 2020 年 11 月 12 日
編集済み: Yaowei Zhu 2020 年 11 月 12 日
我们用中文交流就行了。
是这样,我上面说的只是针对你的例子给的信号,比如说先选择一个周期希望采样多少个点,然后确定采样率,其本质目的是要选择一个采样率。
不知道你现在是什么学历,但是关于信号采样方面的东西,如果你有时间的话,还是推荐你找本“信号与系统”的教材看看。
现在来谈谈你新给的信号。
对一个连续信号采样,关键是要确定采样率是多少。对于低通信号采样率要大于或等于被采样信号中最高频率的两倍(Nyquist采样定理)。现在你给定了一个采样率,,挺好的,因为现在信号时最高的频率为。确定了采样率之后,就确定了采样间隔。采样间隔的意思是每次间隔这么长的时间从连续信号上取一个点。这样的话,我确定采第一个点的时间后,同时也确定了采其他点的时刻。比如我确定在0时刻开始采,那么当时间的时刻,都是要采样的时刻。也就是说
当然,此时,对于中的三个不同频率的信号来说,每个周期采的点数是不一样的,但是没有关系,采样率都是一样的,都是
还有什么问题,尽管问。
另外,建议你使用MATLAB输入框上部“工具条”-“Insert栏”中的LaTeX输入公式。代码的话,使用“工具栏”-“Code"输入。

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeMATLAB Report Generator についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by