• Tidak ada hasil yang ditemukan

MODUL 2 SINYAL WAKTU DISKRIT DALAM KAWASAN WAKTU DAN FREKUENSI

N/A
N/A
Protected

Academic year: 2021

Membagikan "MODUL 2 SINYAL WAKTU DISKRIT DALAM KAWASAN WAKTU DAN FREKUENSI"

Copied!
9
0
0

Teks penuh

(1)

MODUL 2

SINYAL WAKTU DISKRIT DALAM KAWASAN WAKTU

DAN FREKUENSI

I.

Tugas Pendahuluan

Perintah atau fungsi pada MATLAB dapat dilihat dan dipelajari dengan online help pada Command window. Contoh ketiklah : help plot. Maka arti dari perintah plot akan ditampilkan di layar. Atau dapat dicari dari Help Menu kemudian pilih Function Browser dan ketik perintah yang ingin dicari.

Baca kembali perintah pada modul 1.

Carilah arti perintah MATLAB berikut ini sebelum mulai percobaan, dengan memahami arti tiap perintah maka percobaan dapat dimengerti dengan mudah:

1. Perintah Umum

a. disp artinya ………

2. Operator dan Karakter Khusus

a. < artinya ……… b. ‘ artinya ………..…

3. Konstruksi dan Debugging

a. break artinya ……….… b. end artinya ……….….… c. for artinya ……….…… d. if artinya ………..… e. input artinya ……… 4. Fungsi dasar a. abs artinya ………...…

5. Fungsi polinomial dan nterpolasi

a. Conv artinya ………

6. Fungsi Character string

a. num2string artinya ………..….

7. Toolbox Signal Processing

a. filter artinya ……….… b. impz artinya ……….…

(2)

II.

Teori Penunjang

Pada modul kedua akan dipelajari penggunaan MATLAB untuk membangkitkan sinyal acak, signal kompleks, melakukan penjumlahan konvolusi dan kestabilan sistem.

Membangkitkan sinyal acak

Suatu sinyal acak dengan panjang N terdistribusi merata pada interval (0,1) dibangkitkan dengan perintah MATLAB sbb:

x = rand(1,N);

Sedangkan sinyal acak x[n] dengan panjang N terdistribusi normal dengan mean nol dan variansi satu dibangkitkan dengan perintah MATLAB sbb:

x = randn(1,N); Operasi sederhana pada deretan

Tujuan pengolahan sinyal digital adalah membangkitkan sebuah sinyal dengan sifat-sifat yang diinginkan dari satu atau lebih sinyal waktu diskrit. Algoritma pengolahan ini dilakukan dengan kombinasi operasi-operasi dasar seperti penjumlahan, perkalian skalar, pembalikan waktu, penundaan, dan operasi perkalian.

Contoh umum aplikasi pengolahan sinyal digital adalah menghilangkan noise dari suatu sinyal yang tercampur oleh noise tambahan. Asumsikan s[n] adalah sinyal yang dikirim, d[n] adalah noise acak, x[n] = s[n] + d[n] adalah sinyal yang tercampur noise. Tujuan utama adalah mengoperasikan x[n] untuk memperoleh sinyal y[n] yang mendekati sinyal s[n]. Pendekatan sederhana di sini menggunakan rata-rata tiga titik sampel dengan algoritma sbb:

y[n] = 1

3(x[n-1]+x[n]+x[n+1]); implementasi program MATLAB pada percobaan 2-1.

Pembangkitan Sinyal Kompleks

Sinyal kompleks dapat dibangkitkan dengan menggunakan operasi dasar pada sinyal sederhana. Sebagai contoh sebuah sinyal termodulasi amplituda dapat dibangkitkan oleh modulasi sinyal sinus frekuensi tinggi xH[n]= cos(Hn) dengan sebuah modulasi sinyal sinus frekuensi rendah xL[n]= cos(Ln). Hasil sinyal adalah y[n] dengan bentuk sbb:

y[n] = A(1+m. xL[n]) xH[n] = A(1+m. cos(Ln)) cos(Hn); dengan m disebut indeks modulasi, adalah suatu bilangan yang dipilih untuk memastikan bahwa (1+m. xL[n]) adalah positif untuk semua n. Percobaan 2-2 dapat digunakan untuk membangkitkan sinyal termodulasi amplituda.

Percobaan 2-3 ditujukan untuk mencoba mengamati frekuensi pada sinyal sinus sebagai turunan fasa terhadap waktu, untuk membangkitkan sinyal sinus dengan frekuensi tersapu dengan frekuensi meningkat secara linier terhadap waktu. Argumen sinyal sinus harus fungsi kuadrat terhadap waktu. Asumsikan argumen mempunyai bentuk 𝑎𝑛2+ 𝑏𝑛 (maka frekuensi sudut adalah 2𝑎𝑛 + 𝑏). Carilah solusi untuk 𝑎 dan 𝑏 dari kondisi yang diberikan (frekuensi sudut minimum dan frekuensi sudut maksimum).

Sistem Waktu Diskrit Linier

Suatu sistem mempunyai keluaran y1[n] dan y2[n] untuk masukan x1 [n]dan x2[n] sbb:

 

 

 

 

        n l n l l x n y l x n y 2 2 1 1

(3)

 

 

 

 

 

 

n y

 

n y l x l x l x l x n y n l n l n l 2 1 2 1 2 1            

        

Sistem Waktu Diskrit Tidak Berubah Terhadap Waktu (Time-Invariant) Suatu sistem time invariant, bila untuk semua x(n) dan no, dapat memenuhi

x[n no]

y[n no] T    dengan

 

[ ] ] [n T x n y

untuk 𝑛𝑜 bilangan integer positif atau negatif. Sistem di sini memenuhi hubungan masukan dan keluaran yang harus berlaku untuk sembarang deretan masukan dan hubungannya dengan keluaran.

Sistem Linier Tidak Berubah Terhadap Waktu harus memenuhi kedua sifat di atas, yaitu linier dan tidak berubah terhadap waktu.

Penjumlahan Konvolusi

Bila x(n) adalah deretan masukan, y(n) adalah deretan keluaran, dan h(n) adalah respons sistem terhadap impuls satuan maka terdapat hubungan:

] [ ] [ ] [ ] [ ] [n x k hn k hk x n k y k k    

     

Atau dengan variabel yang lebih sederhana penjumlahan konvolusi ditulis 𝑦[𝑛] = ℎ[𝑛] ⊛ 𝑥[𝑛]

Dengan notasi ⊛ menandai penjumlahan konvolusi. Simulasi Sistem Waktu Diskrit

Pada percobaan 2-1 telah dicoba sistem waktu diskrit dengan tambahan noise acak. Sekarang akan dicoba Untuk simulasi sistem waktu diskrit kausal, digunakan perintah filter. Jika dilambangkan konstanta pembilang sbb:

num = [p0 p1 … pM], dan konstanta penyebut sbb:

den = [d0 d1 … dM].

maka y = filter(num,den,x) membangkitkan vektor keluaran y dengan panjang yang sama dengan vektor masukan x pada kondisi awal, yaitu y[-1] = y[-2] = … = y[-N] = 0. Keluaran dihitung dengan menggunakan perintah y = filter(num,den,x, ic) dengan ic = [y[-1] = y[-2] = … = y[-N]] adalah vektor dari kondisi awal. Akses kondisi akhir diperoleh menggunakan [y, fc] = filter(num,den,x, ic).

III. Percobaan dan Pertanyaan

% Percobaan 2-1

% Menghilangkan noise dengan rata-rata tiga titik sampel clf

R= 51;

d = 0.8*(rand(R,1)- 0.5); % Membangkitkan noise acak m = 0:R-1;

s = 2*m.*(0.9 .^ m); % Membangkitkan sinyal awal

x = s + d'; % Membangkitkan sinyal yang tercampur noise subplot(2,1,1);

plot(m, d' ,'r-', m,s,'g--', m,x,'b-.');

xlabel('Indeks waktu n');ylabel('Amplituda'); legend('d[n] ','s[n] ','x[n] ');

(4)

Pertanyaan

1. Bagaimana bentuk sinyal s[n]? Bagaimana bentuk noise tambahan d[n]?

2. Dapatkah anda menggunakan perintah x = s + d untuk membangkitkan sinyal yang tercampur noise? Jika tidak, beri alasannya.

3. Apa hubungan sinyal x1, x2, dan x3, dan sinyal x? 4. Apa tujuan perintah legend?

% Percobaan 2-2

% Membangkitkan deretan termodulasi amplituda clf; n = 0:200; m = 0.4; fH = 0.1; fL=0.01; xH= sin(2*pi*fH*n); xL= sin(2*pi*fL*n); y = (1+m*xL).*xH; stem(n,y);grid;

xlabel('Indeks Waktu n');ylabel('Amplituda'); Pertanyaan:

5. Cobalah bangkitkan sinyal termodulasi amplituda y[n] dengan berbagai nilai frekuensi pembawa xH[n] dan sinyal termodulasi xL[n], dan berbagai nilai indeks modulasi m. Bagaimana kesimpulan anda?

6. Apa perbedaan operator aritmatika * dan .*? % Percobaan 2-3

% Membangkitkan deretan sinus dengan sapuan frekuensi n = 0:100; a = pi/2/100; b = 0; arg = a*n.*n + b*n; x = cos(arg); clf; plot(n, x); axis([0,100,-1.5,1.5]);

title('Sinyal Sinus dengan sapuan frekuensi'); xlabel('Indeks Waktu n');

ylabel('Amplituda'); grid;

axis; Pertanyaan:

7. Berapa frekuensi minimum dan maksimum sinyal di percobaan 2-3?

8. Modifikasi program di atas untuk membangkitkan sinyal sinus tersapu dengan frekuensi minimum 0.1 dam frekuensi maksimum 0.3.

Percobaan 2-4: Sistem Rata-rata

Pada percobaan 2-1 telah dicoba filter dengan tiga cuplikan yaitu sistem filter terbatas linier terhadap waktu. Jika y[n] tergantung pada sampel masukan berikutnya x[n+1], maka sistem tidak kausal. Suatu sistem kausal diperoleh dengan menunda keluaran dalam waktu kelipatan perioda sampling, yang dapat digambarkan sbb:

y[n] = 1

3(x[n]+x[n-1]+x[n-2]); Secara umum persamaan dirumuskan sbb:

𝑦[𝑛] = 1

𝑀 ∑ 𝑥[𝑛 − 𝑘] 𝑀−1

𝑘=0 Yang mewakili filter kausal M-titik.

% Percobaan 2-4

% Simulasi Filter Rata-rata M titik % Membangkitkan sinyal masukan

clf;

n = 1:200;

s1 = cos(2*pi*0.05*n); %Sebuah sinyal frekuensi rendah s2 = cos(2*pi*0.48*n); %Sebuah sinyal frekuensi tinggi

(5)

x = s1 + s2;

% Implementasi filter rata-rata

M = input('Panjang filter yang diinginkan = '); num = ones(1,M);

y = filter(num,1,x)/M;

% Menampilkan sinyal masukan dan keluaran subplot(2,2,1); plot(n, s1); axis([0, 100, -2, 2]); xlabel('Indeks Waktu n'); ylabel('Amplituda'); title('Sinyal # 1'); subplot(2,2,2); plot(n, s2); axis([0, 100, -2, 2]); xlabel('Indeks Waktu n'); ylabel('Amplituda'); title('Sinyal # 2'); subplot(2,2,3); plot(n, x); axis([0, 100, -2, 2]); xlabel('Indeks Waktu n'); ylabel('Amplituda'); title('Sinyal masukan'); subplot(2,2,4); plot(n, y); axis([0, 100, -2, 2]); xlabel('Indeks Waktu n'); ylabel('Amplituda'); title('Sinyal Keluaran'); axis; Pertanyaan:

9. Jalankan program di atas jika M=2 untuk memperoleh keluaran dengan masukan x = s1+ s2. Komponen masukan mana yang diredam oleh sistem waktu diskrit yang disimulasikan program ini?

10. Jika sistem LTW diubah menjadi y1[n] = 0.5(x[n] + x[n-1]) dan y2[n] = 0.5(x[n] - x[n-1]), apa yang dapat diperoleh pada keluaran y1[n] dan y2[n], tuliskan pendapat anda!

11. Jalankan Progam percobaan 2-4 untuk berbagai panjan filter M, dan berbagai nilai frekuensi sinus sinyal s1[n] dan s2[n]. Berikan pendapat anda.

12. Modifikasi program percobaan 2-4 gunakan sinyal frekuensi tersapu dengan panjang 101, frekuensi minimum 0 dan frekuensi maksimum 0.5 dan hitung sinyal keluaran. Jelaskan pertanyaan 9 dan 10 untuk respon sistem terhadap sinyal frekeunsi tersapu.

Percobaan 2-5: Sistem Linier dan Nonlinier

Di sini akan diamati sifat-sifat kelinieran suatu sistem kausal yang dirumuskan sbb: 𝑦[𝑛] − 0.4𝑦[𝑛 − 1] + 0.75𝑦[𝑛 − 2]

= 2.2403𝑥[𝑛] + 2.4908𝑥[𝑛 − 1] + 2.2403𝑥[𝑛 − 2]

Percobaan 2-5 digunakan untuk mensimulasikan sistem ini. Perlu dibangkitkan tiga deretan masukan yang berbeda yaitu x1[n], x2[n], dan x[n]=a.x1[n]+b.x2[n], kemudian menghitung dan plot deretan keluaran y1[n], y2[n] dan y[n].

% Percobaan 2-5

% Membangkitkan deretan masukan clf;

n = 0:40;

a = 2; b = -3;

x1 = cos(2*pi*0.1*n); %Sebuah sinyal frekuensi rendah x2 = cos(2*pi*0.4*n); %Sebuah sinyal frekuensi tinggi

(6)

y = filter(num, den, x, ic); %Hitung keluaran y[n] yt = a*y1 + b*y2;

d = y - yt; %Menghitung selisih keluaran d[n] % Plot semua keluaran dan selisih sinyal subplot(3,1,1)

stem(n,y);

ylabel('Amplituda');

title('Keluaran bobot masukan: a \cdot x_{1}[n] + b \cdot x_{2}[n]');

subplot(3,1,2) stem(n,yt);

ylabel('Amplituda');

title('Bobot keluaran: a \cdot y_{1}[n] + b \cdot y_{2}[n]'); subplot(3,1,3) stem(n,d); xlabel('Indeks Waktu n'); ylabel('Amplituda'); title('Selisih sinyal'); Pertanyaan:

13. Apakah y dan yt sama? Apakah sistem linier?

14. Ubahlah konstanta a dan b serta frekuensi masukan. . Apakah y dan yt sama? Apakah sistem linier?

15. Jika kondisi awal tidak nol apa yang terjadi?

Percobaan 2-6: Sistem Tidak Berubah Terhadap Waktu dan Berubah Terhadap Waktu Di sini akan diamati sifat-sifat tidak berubah terhadap waktu dari sistem kausal sinyal yang dibangkitkan x[n] dan x[n-D], dan menghitung dan plot deretan keluaran y1[n], y2[n], dan selisih y1[n] – y2[n+D].

% Percobaan 2-6

% Membangkitkan deretan masukan clf; n = 0:40; D = 10; a = 3; b = -2; x = a*cos(2*pi*0.1*n) + b*cos(2*pi*0.4*n); xd = [zeros(1,D) x]; num = [2.2403 2.4908 2.2403]; den = [1 -0.4 0.75];

ic = [0 0]; %Atur kondisi awal nol

y = filter(num, den, x, ic); %Hitung keluaran y[n] yd = filter(num, den, xd, ic); %Hitung keluaran y[n] d = y - yd(1+D:41+D); %Menghitung selisih keluaran d[n] % Plot semua keluaran dan selisih sinyal

subplot(3,1,1) stem(n,y);

ylabel('Amplituda');

title('Keluaran y[n]'); grid; subplot(3,1,2)

stem(n,yd(1:41)); ylabel('Amplituda');

title('Keluaran akibat delay 10 masukan x[n] ') grid;

subplot(3,1,3) stem(n,d);

xlabel('Indeks Waktu n'); ylabel('Amplituda');

title('Selisih sinyal'); grid; Pertanyaan:

16. Setelah program percobaan 2-6 dijalankan berapa keluaran y[n] dan yd[n-10]?. Apa hubungan kedua deretan ini? Apakah sistem tidak berubah terhadap waktu? 17. Cobalah program untuk nilai delay yang berbeda pada variabel D. Jawablah

pertanyaan 16 untuk delay yang berbeda tersebut.

18. Cobalah program untuk nilai frekuensi masukan yang berbeda. Jawablah pertanyaan 16 untuk frekuensi yang berbeda tersebut.

(7)

19. Jika kondisi awal tidak sama dengan nol. Apakah sistem ini tidak berubah terhadap waktu?

Percobaan 2-7: Sistem Waktu Diskrit Linier Tidak Berubah Terhadap Waktu

Perintah MATLAB y = impz(num, den, N) dapat digunakan untuk menghitung N buah sampel pertama dari respon impuls sistem waktu diskrit linier tidak berubah terhadap waktu.

Percobaan berikut akan dihitung dan diplot respon impuls dari sistem sbb: 𝑦[𝑛] − 0.4𝑦[𝑛 − 1] + 0.75𝑦[𝑛 − 2]

= 2.2403𝑥[𝑛] + 2.4908𝑥[𝑛 − 1] + 2.2403𝑥[𝑛 − 2] % Percobaan 2-7

% Menghitung respon impuls y clf;

N = 40;

num = [2.2403 2.4908 2.2403]; den = [1 -0.4 0.75];

y = impz(num, den, N); % Plot impuls respon stem(y);

xlabel('Indeks Waktu n'); ylabel('Amplituda');

title('Respon Impuls'); grid; Pertanyaan:

20. Ubahlah program di atas untuk 45 sampel pertama dengan sistem sbb: 𝑦[𝑛] + 0.71𝑦[𝑛 − 1] − 0.46𝑦[𝑛 − 2] − 0.62𝑦[𝑛 − 3]

= 0.9𝑥[𝑛] − 0.45𝑥[𝑛 − 1] + 0.35𝑥[𝑛 − 2] + 0.002𝑥[𝑛 − 3] Dengan perintah impz().

21. Buatlah program no 20 dengan perintah filter. Bandingkan hasilnya dengan jawaban no 20.

Percobaan 2-8: Penjumlahan Konvolusi

Operasi konvolusi diimplementasi perintah MATLAB dengan conv, diperlukan dua deretan masukan dengan panjang terbatas.

% Percobaan 2-8 clf; h = [3 2 1 -2 1 0 -4 0 3]; % Respon impuls x = [1 -2 3 -4 3 2 1]; % Deretan masukan y = conv(h,x); n = 0:14; subplot(2,1,1); stem(n, y); xlabel('Indeks Waktu n'); ylabel('Amplituda');

title('Keluaran hasil konvolusi'); grid; x1 = [x zeros(1,8)]; y1 = filter(h,1,x1); subplot(2,1,2); stem(n, y1); xlabel('Indeks Waktu n'); ylabel('Amplituda');

title('Keluaran hasil filtering'); grid; Pertanyaan:

22. Apakah ada perbedaan antara y dan y1? Apa alasan menggunakan x1[n] yang diperoleh dari penambahan nilai nol pada deretan x[n] sebagai masukan untuk memperoleh y1[n]?

(8)

% Percobaan 2-9 % Uji kestabilan clf; num = [1 -0.8]; den = [1 1.5 0.9]; N = 200; h = impz(num, den, N+1); parsum = 0; for k = 1:N+1;

parsum = parsum + abs(h(k));

if abs(h(k)) < 10^(-6), break, end end

% Plot respon impuls n = 0:N;

stem(n,h)

xlabel('Indeks Waktu n'); ylabel('Amplituda');

disp('Nilai = ');

disp(abs(h(k))); % Print nilai absolut abs(h(k)) Pertanyaan:

23. Apakah tujuan perintah for dan end? 24. Apakah tujuan perintah break? 25. Apakah sistem di atas stabil?

(9)

JAWAB PERTANYAAN

Referensi

Dokumen terkait

Kebutuhan nutrien pakan pada lutung kelabu dapat diketahui dengan menghitung konsumsi zat makanan per hari dari konsumsi bahan kering dan dinyatakan dalam

Pada penelitian ini pengujian ketahanan papan komposit polimer dilakukan di perairan areal PT (Persero) Pelabuhan Indonesia I Cabang Belawan,Medan dengan tujuan

Nilai rata-rata pengembangan tebal selama 2 jam yang rendah dihasilkan oleh perlakuan komposisi perekat MDI-UF 1 : 4, parafin 8% (A4B4) sebesar 1,65%, dan nilai yang

Dengandemikian industrialisasi yang ditopang dengan sektor jasa dipandang cukup berhasil diterapkan di provinsi Sumatera Utara selama periode tersebut.Namun

Jika Helaian Data Keselamatan kami telah diberikan kepada anda bersama bekalan Asal bukan HP yang diisi semula, dihasilkan semula, serasi atau lain, sila berhati-hati bahawa

Penelitian Zulkifi dkk (2009) mengenai fitoplankton pada perairan Sungai Musi bagian hilir menunjukkan dominasi genus Oscillatoria dan Diatoma (Bacillariophyceae)

PT Asuransi Takaful Keluarga juga merupakan reasuransi dari entitas asuransi Syariah.. 2) Peserta adalah peserta asuransi (pemegang polis) atau perusahaan asuransi dalam

Berdasarkan validasi instrumen asesmen KPS pada materi teori tumbukan yang telah dilakukan oleh validator terhadap aspek kesesuaian isi materi terhadap