數字訊號模擬實驗——實驗一離散時間訊號與系統的時域分析
1.實驗目的
(1)熟悉離散時間訊號的產生與基本運算
(2)熟悉離散時間系統的時域特性
(3)利用卷積方法觀察分析系統的時域特性
2.實驗原理
(1)典型離散時間訊號
(2)序列的基本運算
(3)線性卷積
(4)我們主要研究的線性時不變離散時間系統用形如
3.實驗內容
(1)利用Matlab產生典型離散時間訊號,並繪製其圖形。
(2)應用Matlab計算兩有限長序列的線性卷積。
(3)用差分方程描述的因果線性時不變離散時間系統為
(4)若輸入訊號為
(5)心電(脈搏、腦電)訊號的載入,並繪製其時域波形。
4.實驗報告要求
(1)在實驗報告中簡述實驗目的和實驗原理要點。
(2)在實驗報告中附上實驗過程記錄的各個訊號的時域波形,分析所得到的結果圖形,說明各個訊號的引數變化對其時域特性的影響。
(3)總結實驗中的主要結論。
Matlab程式1_a:
Problem1_a
clear
N=input('Type in the length of sequence=');%% 輸入一個N
n=-(N-1):1:N-1;
x1=[zeros(1,N-1),1,zeros(1,N-1)];%%zeros()零矩陣
stem(n,x1);%%繪製火柴梗,產生離散訊號
xlabel('Time index n');
ylabel('Amplitude');
title('unit sample sequence LEI');
執行結果1_a:
Matlab程式1_b:
Problem1_b
clear
N=input('Type in the length of sequence=');%% 輸入一個N
n=-(N-1):1:N-1;
x1=[ones(1,N-1),0,ones(1,N-1)];%%ones()全1矩陣
stem(n,x1);%%繪製火柴梗,產生離散訊號
xlabel('Time index n');
ylabel('Amplitude');
title('unit step sequence LEI');
執行結果1_b:
Matlab程式1_c:
Problem1_c
clear
N=input('Type in the length of sequence=');%% 輸入一個N
n=0:1:N-1;
x1=sin(pi/6*n);%%sin(pi/6)
stem(n,x1);%%繪製火柴梗,產生離散訊號
xlabel('Time index n');
ylabel('Amplitude');
title('sinusoidal sequence LEI');
執行結果1_c:
Matlab程式2:
Problem2
x=[0 1 2 3 4 5];%%任意有限序列
y=[5 4 3 2 1 0];
z=conv(x,y)%%計算線性卷積
stem(y)
執行結果2:
Matlab程式3:
Problem3
N=41;
a=[0.9,-0.45,0.35,0.002];
b=[1,0.71,-0.46,-0.62];
x1=[1 zeros(1,N-1)];%%ones()全1矩陣
x2=ones(1,N);%%ones()全1矩陣
k=0:1:N-1;
h=filter(a,b,x1);%%實現差分方程的模擬
y=filter(a,b,x2);
subplot(2,1,1);
stem(k,h,'.');%%繪製火柴梗,產生離散訊號
xlabel('n');
ylabel('unit sample sequence');
title('Made by LEI');
subplot(2,1,2);
stem(k,y,'.');%%繪製火柴梗,產生離散訊號
xlabel('n');ylabel('unit step sequence');grid on;
Problem4
n=40;
k=0:1:n-1;
num=[0.9 -0.45 0.35 0.002];
den=[1 0.71 -0.46 -0.62];
y1=impz(num,den,n);%%系統的衝激響應
x=[ones(1,n)];
y2=filter(num,den,x);%%實現差分方程的模擬
figure(1)
subplot(211)
stem(k,y1);%%繪製火柴梗,產生離散訊號
xlabel('Time index n');ylabel('Amplitude');
title('unit sample response LEI');
subplot(212)
stem(k,y2);%%繪製火柴梗,產生離散訊號
xlabel('Time index n');ylabel('Amplitude');
title('unit step response LEI');
x1=[1 2 0 -0.5];
y=conv(y1,x1) %%計算卷積
figure(2)
stem(y)%%繪製火柴梗,產生離散訊號
xlabel('Time index n');ylabel('y[n]');
title('time domain waveform LEI');
執行結果3:
本人能力有限,解釋尚不清楚明瞭,如遇任何問題,大家可留言或私信。後續將程式檔案打包上傳,供大家學習使用。
本文希望對大家有幫助,當然上文若有不妥之處,歡迎指正。
分享決定高度,學習拉開差距
相關文章
- 數字訊號處理實驗一(離散時間訊號的MATLAB實現)Matlab
- 實驗六 連續訊號的頻域分析
- 大牛講解訊號與系統以及數字訊號處理
- 作業系統實驗6之訊號量的實現與應用作業系統
- 數字訊號處理實驗(四):數字濾波器結構
- Python中使用共享變數+訊號量實現程序間的實時通訊Python變數
- 訊號課組(一) 訊號與系統 Part 0 MATLAB在訊號與系統中的使用Matlab
- GNU Radio 實數與複數訊號分析
- 訊號與系統
- linux系統程式設計之訊號(一):中斷與訊號Linux程式設計
- 訊號、系統與訊號處理邊角雜談
- 【實驗】Linux調整系統時間和時區的方法Linux
- Linux 未決訊號集與訊號遮蔽字Linux
- 手遊中實時音視訊的開發經驗與實現技巧
- 行業分析| OA系統中的實時通訊行業
- 二進位制基帶訊號的時域特性
- 訊號與系統(18)-連續時間系統的複頻域分析:拉普拉斯反變換之分部分式展開法
- 離散傅立葉變換的衍生,負頻率、fftshift、實訊號、共軛對稱FFT
- PyQT5訊號重新整理時間QT
- Semaphore-訊號量的實現分析
- 實驗八 程式間通訊
- 程式間通訊——POSIX 有名訊號量與無名訊號量
- 南郵離散實驗三(JAVA)Java
- 學號20145332 《資訊保安系統設計基礎》實驗三 實時系統的移植
- 程序間的通訊(訊號通訊)
- linux系統程式設計之訊號(五):訊號集操作函式,訊號阻塞與未決Linux程式設計函式
- Bold訊號與fNIRS訊號的區別
- 短視訊app製作,驗證碼輸入時間倒數計時APP
- Linux 下的程式間通訊:套接字和訊號Linux
- ReactiveCocoa 中 RACSignal 冷訊號和熱訊號底層實現分析React
- 細說 ReactiveCocoa 的冷訊號與熱訊號(三):怎麼處理冷訊號與熱訊號React
- 工業自動化控制系統中的PLC模擬量訊號資料採集如何實現?
- 分析外星訊號
- MATLAB數字訊號處理(2)LFM脈衝雷達回波處理模擬Matlab
- Oracle實驗(05):時間型別Oracle型別
- 繞過直接數值模擬或實驗,生成擴散模型用於湍流研究模型
- I2C匯流排訊號時序分析
- 【Linux入門教程】4 使用者管理、系統效能分析、系統日誌及日誌分析、訊號機制與訊號處理Linux